#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main(){
    char binary[33];
    scanf("%s",binary);
    int len=strlen(binary);
    if(len==0||len>32){
        printf("Invalid Input");
        return 0;
    }
    for(int i=0;i<len;i++){
        if(binary[i]!='0' && binary[i]!='1'){
            printf("Invalid Input")
            return 0;
        }
    }
    unsigned long value=strtoul(binary,NULL,2);
    if(binary[0]=='1'){
        long signedvalue=value-(1L<<len);
        printf("%ld",signedvalue);
    }else{
        printf("%lu",value);
    }
    return 0;
    
}