#include<iostream>
using namespace std;
bool agari(int num[]){
    for(int head=1;head<10;head++){
        if(num[head]>=2){
            int hands[12]={0};
            for(int i=1;i<10;i++)hands[i]=num[i];
            hands[head]-=2;
            bool agari=true;
            for(int i=0;i<10;i++)
                while(hands[i]%3)
                    for(int j=0;j<3;j++){
                        hands[i+j]--;
                        if(hands[i+j]<0)agari=false;
                    }
            if(agari)return true;
        }
    }
    return false;
}
int main(){
    long long hand;
    while(cin>>hand){
        int num[10]={0};
        for(;hand>0;hand/=10)num[hand%10]++;
        bool tenpai=false;
        for(int i=1;i<10;i++)
            if (num[i]<4){
                num[i]++;
                if(agari(num)){
                    if(tenpai)cout<<" ";
                    cout<<i;tenpai=true;
                }
                num[i]--;
            }
        if(!tenpai)cout<<0;
        cout<<endl;
    }
}