#include<bits/stdc++.h>
#define for0(i, n) for(int i = 0; i < (n); i++)
#define for1(i, n) for(int i = 1; i <= (n);i++)
using namespace std;
int a[15];
vector<int>ans;
bool f() {
	int a1[15];
	for1(x, 9) {
		for1(i, 9)a1[i] = a[i];
		if (a1[x] < 2)continue;
		a1[x] -= 2;
		for1(i, 9) {
			if (a1[i] < 0)goto hell;
			a1[i] %= 3;
			if (a1[i] > 0 && i >= 8)goto hell;
			else {
				a1[i + 1] -= a1[i];
				a1[i + 2] -= a1[i];
				a1[i] = 0;
			}
		}
		return 1;
	hell:;
	}
	return 0;
}
signed main() {
	string s;
	while (cin >> s) {
		for1(i, 9)a[i] = 0;
		ans.clear();
		for (char c : s)a[c - '0']++;
		for1(i, 9) {
			if (a[i] > 4) {
				cout << "0\n";
				goto heaven;
			}
			a[i]++;
			if (a[i] <= 4)if (f())ans.push_back(i);
			a[i]--;
		}
		if (ans.size() == 0) {
			cout << "0\n";
			goto heaven;
		}
		for0(i, ans.size()) {
			if (i)cout << ' '; cout << ans[i];
		}cout << endl;
	heaven:;
	}
}
