// editor2
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
int main()
{
    char binary_str[33];
    if(scanf("%s",binary_str) != 1)
    {
        return 1;
    }
    int len=strlen(binary_str);
    for(int i=0;i<len;i++)
    {
        if(binary_str[i] !='0' && binary_str[i] !='1')
        {
            printf("Invalid Input\n");
            return 0;
        }
    }
    long long decimal_val=0;
    if(binary_str[0]=='0')
    {
        for(int i=0;i<len;i++)
        {
            decimal_val=(decimal_val*2) + (binary_str[i]-'0');
        }
    }else{
        for(int i=0;i<len;i++)
        {
            decimal_val=(decimal_val*2)+(binary_str[i]-'0');
        }
            decimal_val=decimal_val-(1LL << len);
    }
    printf("%lld\n",decimal_val);
    return 0;
}
}