#include <stdio.h>
#include <string.h>
#include<math.h>
int main() {
    char binary[32];
    scanf("%s", binary);
      int len = strlen(binary);
      for (int i = 0; i < len; i++){
          if(binary[i]!= '0' && binary[1]! = '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 1=0; i<len;i++)
          {
              result=result*result*2 +(binary[i]='0');
          }
          intsignedResult=result=(1U << len);
          printf("%d\n",signedResult);
      }
      return 0;
  
}