#include <stdio.h>
#include <string.h>
char s[11];
_int64 f(int i,int j)
{
	_int64 sum=0,k,l,d;
	for(k=i;k<=j;k++)
	{
		d=1;
        for(l=1;l<=j-k;l++)
			d*=10;
		sum+=(s[k]-48)*d;
	}
	return sum;
}
_int64 ff(int x,int y,int d)
{
	int i;
	_int64 sum=0;
	if(d==0)
		return f(x,y);
	for(i=x;i<=y-d;i++)
	sum+=f(x,i)+ff(i+1,y,d-1);
    return sum;
}
int main()
{
	int l,i;
	_int64 sum=0;
	gets(s);
	l=strlen(s);
	for(i=0;i<=l-1;i++)
		sum+=ff(0,l-1,i);
    printf("%I64d\n",sum);
return 0;
}