#include<stdio.h>
#include<string.h>
int binary_to_decimal(char*binary)
{
    int length=strlen(binary);
    for(int i=0; i< length; i++)
    {
        if(binary[i]!='0' && binary[i] !='1')
        {
            printf("Invalid input");
            return -1;
        }
    }
    int decimal=0;
    int is_negative=(binary[0]=='1');{
    for(int i=0; i<length; i++)
    {
        decimal=decimal*2+(binary[i]-'0');
    }
    if (is_negative)
    {
        decimal -=(1<< length);
    }
    return decimal;}
    else{
        printf("Invalid input");
    }

int main()
{
    char binary[33];
    scanf("%32s",binary);
    printf("%d",binary_to_decimal(binary));
}