#include <stdio.h>
#include <string.h>
int main() {
    char b[33];
    int i, n, v = 0;

    scanf("%s", b);
    n = strlen(b);
    for (i = 0; i < n; i++) {
        if (b[i] != '0' && b[i] != '1') {
            printf("Invalid Input\n");
            return 0;
        }
    }
    if (b[0] == '0') {
        for (i = 0; i < n; i++) {
            v = v * 2 + (b[i] - '0');
        }
        printf("%d\n", v);
    }
    else {
        char r[33];
        for (i = 0; i < n; i++) {
            r[i] = (b[i] == '0') ? '1' : '0';
        }
        r[n] = '\0';
        int carry = 1;
        for (i = n - 1; i >= 0; i--) {
            if (r[i] == '1' && carry == 1) {
                r[i] = '0';
            } else if (r[i] == '0' && carry == 1) {
                r[i] = '1';
                carry = 0;
            }
        }
        v = 0;
        for (i = 0; i < n; i++) {
            v = v * 2 + (r[i] - '0');
        }

        printf("%d\n", -v);
    }

    return 0;
}