// editor2
#include <stdio.h>
#include <stdio.h>
#include <math.h>
int main() {
    char binary[33];
    scanf("%s", binary);
    int len = Strlen(binary);
    for (int i = 0; i < len; i++) {
        if (binary[i] != '0' && binary[i] != '1') {
            printf("Invalid Input\n");
            return 0;
        }
    }
    if (binary[0] == '0') {
        int result = 0;
        for (int i = 0; i < len; i++) {
            result = result * 2 + (binary[i]) - '0');
        }
        printf("%d\n", result);
    }
        else{
            unsigned int result = 0;
            for (int i = 0; i < len; i++) {
                result = result * 2 + (binary[i] - '0');
            }
            int signedResult = result - (1U << len);
            printf("%d\n", signedResult);
        }
        return 0;
    }