import sys sys.setrecursionlimit(1000000) S = list(input()) S = [int(i) for i in S] C = {i:0 for i in range(1,9+1)} for i in S: C[i] += 1 ans = [] def dfs(j,flag): global S if flag==0: if C[j]>=2: flag = 1 S.remove(j) S.remove(j) C[j] -= 2 if len(S)==0: C[j] += 2 S.append(j) S.append(j) return True if dfs(min(S),1): C[j] += 2 S.append(j) S.append(j) flag = 0 return True C[j] += 2 S.append(j) S.append(j) flag = 0 if C[j]>=3: S.remove(j) S.remove(j) S.remove(j) C[j] -= 3 if len(S)==0: C[j] += 3 S += [j,j,j] return True if dfs(min(S),flag): C[j] += 3 S += [j,j,j] return True C[j] += 3 S += [j,j,j] if j+2<=9 and C[j]>0 and C[j+1]>0 and C[j+2]>0: S.remove(j) S.remove(j+1) S.remove(j+2) C[j] -= 1 C[j+1] -= 1 C[j+2] -= 1 if len(S)==0: C[j] += 1 C[j+1] += 1 C[j+2] += 1 S += [j,j+1,j+2] return True if dfs(min(S),flag): C[j] += 1 C[j+1] += 1 C[j+2] += 1 S += [j,j+1,j+2] return True C[j] += 1 C[j+1] += 1 C[j+2] += 1 S += [j,j+1,j+2] return False for i in range(1,9+1): if C[i]==4:continue S.append(i) C[i] += 1 cnt = 0 for j in range(1,9+1): if C[j]==2: cnt += 1 if cnt==7: ans.append(i) S.remove(i) continue if dfs(min(S),0): ans.append(i) C[i] -= 1 S.remove(i) for a in ans: print(a)