111111
 100009
 10011
 1000000
 8
 10201
 102030
 908172
 123456
 415
 900000
 21
 909090
 314159
 999999
 909823
 987654
 1453
 1435
 98
 10
 2
 1

1
111111
 9
100001 1 1 1 1 1 1 1 1
 1
10011
 1
1000000
 8
1 1 1 1 1 1 1 1
 2
10101 100
 3
101010 1010 10
 9
101111 101011 101010 101010 101010 101010 101010 101000 100000
 6
111111 11111 1111 111 11 1
 5
111 101 101 101 1
 9
100000 100000 100000 100000 100000 100000 100000 100000 100000
 2
11 10
 9
101010 101010 101010 101010 101010 101010 101010 101010 101010
 9
111111 101011 101011 1011 11 1 1 1 1
 9
111111 111111 111111 111111 111111 111111 111111 111111 111111
 9
101111 101111 101101 101100 101100 101100 101100 101100 101000
 9
111111 111111 111111 111111 111110 111100 111000 110000 100000
 5
1111 111 111 110 10
 5
1111 111 111 101 1
 9
11 11 11 11 11 11 11 11 10
 1
10
 2
1 1
 1
1

from collections import Counter
r=raw_input()
d=Counter()
n=len(r)
for i in range(n):
    c=0
    for j in d.keys():
        if d[j] and c<int(r[i]):
            
            s='1'+j
            if d[j]+c>int(r[i]):
                d[s]=int(r[i])-c
                d['0'+j]=d[j]-d[s]
                c=int(r[i])
            else:
                d[s]=d[j]
                c+=d[j]
                
            d[j]=0
            
        elif d[j] and not c<int(r[i]):
            
            s='0'+j
            d[s]=d[j]
            d[j]=0
            
    if c<int(r[i]):
        for j in range(int(r[i])-c):
            x='1'+'0'*i
        
            d[x]+=1
l=[]
ans=0
for i in d.keys():
    if d[i]:
        l+=[i]*d[i]
        ans+=d[i]
print ans
for i in l:
    print int(''.join(reversed(i))),
print

    
        
    
