#include <iostream>
#include <algorithm>
#include <vector>
#include <string>

using namespace std;

bool simenzu(int h[])
{
    int hist[10];
    for(int i=0; i<9; ++i){
        hist[i] = h[i];
    }

    for(int i=0; i<9; ++i){
        if(hist[i] >= 3){
            hist[i] -= 3;
        }
        while(i < 7 && hist[i] > 0){
            hist[i]--;
            hist[i+1]--;
            hist[i+2]--;
            if(hist[i+1] < 0 || hist[i+2] < 0){
                return false;
            }
        }
    }

    for(int i=0; i<9; ++i){
        if(hist[i] > 0){
            return false;
        }
    }

    return true;
}


bool ok(int hist[])
{
    for(int i=0; i<9; ++i){
        if(hist[i] >= 2){
            hist[i] -= 2;
            if(simenzu(hist)){
                hist[i] += 2;
                return true;
            }
            hist[i] += 2;
        }
    }

    return false;
}


vector<int> calc(char str[])
{
    vector<int> result;

    int hist[10] = {};
    for(int i=0; i<13; ++i){
        hist[str[i] - '1']++;
    }

    for(int i=0; i<9; ++i){
        if(hist[i] >= 4){
            continue;
        }

        hist[i]++;
        if(ok(hist)){
            result.push_back(i+1);
        }
        hist[i]--;
    }

    return result;
}


int main()
{
    char str[15];

    while(cin >> str){
        vector<int> result = calc(str);
        if(result.empty()){
            cout << 0;
        }
        else{
            for(int i=0; i<result.size(); ++i){
                cout << (i==0 ? "" : " ") << result[i];
            }
        }
        cout << endl;
    }
}