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

num = input()
res = 0
arr = []
for i in num:
    res = max(res, int(i))
    arr.append(int(i))
#print(res, arr)
s = ''
"""if num == '1':
    print(1)
    print('1')
else:"""
print(res)
for i in range(res):
    numCur = 0
    cur = ''
    for j in range(len(arr)):
        if arr[j] != 0:
            cur += '1'
            #print(arr[j])
            arr[j] -= 1
        else:
            if cur != '':
                cur += '0'
    s += cur + ' '
print(s)
"""else:
        #num = str(int(num)-1)
        cnt = 0
        for i in range(len(num)):
            if num[i] == '1':
                cnt += 1
            if cnt == 2:
                num1 = num[i:]
                #num[i] = '0'
                num2 = num[:i]
                for k in range(len(num)-i):
                    num2 += '0'
                break
        #print(cnt)
        if cnt == 2:
            #print(num1+' '+num2)
            arr1 = []
            res1 = 0
            for i in num1:
                res1 = max(res1, int(i))
                arr1.append(int(i))
            arr2 = []
            res2 = 0
            s1 = ''
            s2 = ''
            for i in num2:
                res2 = max(res2, int(i))
                arr2.append(int(i))
            print(res1+res2)
            for i in range(res1):
                numCur = 0
                cur = ''
                for j in range(len(arr1)):
                    if arr1[j] != 0:
                        cur += '1'
                        #print(arr[j])
                        arr1[j] -= 1
                    else:
                        if cur != '':
                            cur += '0'
                s1 += cur + ' '
            for i in range(res2):
                numCur = 0
                cur = ''
                for j in range(len(arr2)):
                    if arr2[j] != 0:
                        cur += '1'
                        #print(arr[j])
                        arr2[j] -= 1
                    else:
                        if cur != '':
                            cur += '0'
                s2 += cur + ' '
            print(s1+s2)
        else:
            num = str(int(num)-1)
            arr = []
            res = 0
            for i in num:
                res = max(res, int(i))
                arr.append(int(i))
            print(res+1)
            #print(arr)
            #print(cnt)
            for i in range(res):
                numCur = 0
                cur = ''
                #print(len(arr))
                for j in range(len(arr)):
                    if arr[j] != 0:
                        cur += '1'
                        #print(arr[j])
                        arr[j] -= 1
                    else:
                        if cur != '':
                            cur += '0'
                s += cur + ' '
                #print(cur)
            print(s+'1')"""