#include <bits/stdc++.h>
using namespace std;

int f(char c, int n)
{
    int tmp = c-'0';
    return tmp*(pow(2,n)-1);
}

int main() {
    string s;
    while (cin>>s&&s!="0") { // 注意 while 处理多个 case
        long long sum=0;
        for(int i=1;i<=s.size();i++){
            int tmp = f(s[i-1],s.size()-i+1);
            sum += tmp;
        }
        cout<<sum<<endl;
    }
}
// 64 位输出请用 printf("%lld")