 
 #include<iostream>
 #include<stdio.h>
 #include<string>
 #include<math.h>
 #include<iomanip>
 #include<algorithm>
 #include<string.h>
 #include<cctype>
 #include<map>
 #include<set>
 #include<vector>
 #include<sstream>
 #include<stack>
 #include<queue>
 
 using namespace std;
 
 int main()
 {
   string str;
   int arr[14];
   while(cin>>str)
   {
     int digit[10]={0};
     for(int i=0;i<13;i++)
     {
       int num=(str[i]-'0');
       arr[i]=num;
       digit[num]++;        
     }             
     for(int i=1;i<=9;i++)
     {
       arr[13]=i;
       digit[i]++;
       //sort(arr,arr+14);
       bool flag=false;
       for(int j=1;j<=9;j++)
       {
         flag=true;
         if(digit[j]>=2)
         {
           int arr_2[12];
           int count=0;
           int count_2=2;
           bool flag_exit=false;
           for(int k=0;k<14;k++)
           {
             if(arr[k]==j&&(count_2--)&&(!flag_exit)) 
             {
               if(count_2==0) flag_exit=true;  
               continue;                         
             }
             else arr_2[count++]=arr[k];          
           }           
           sort(arr_2,arr_2+12);
           for(int k=0;k<12;k=k+3)
           {
             if(((arr_2[k]==arr_2[k+1])&&(arr_2[k+1]==arr_2[k+2]))||((arr_2[k+1]==arr_2[k]+1)&&(arr_2[k+2]==arr_2[k+1]+1))) continue;
             else 
             {
               flag=false;
               //break;     
             }                                                                                                        
           }
         }
         if(flag) break;        
       }        
       if(flag) cout<<i<<" ";
       digit[i]--;
     }
     cout<<endl;
   }
   //while(1);
   return 0;
 }

 
 
 