#include<cstdio>
#include<vector>
#include<algorithm>

using namespace std;

bool pick2(const vector<int> &hand,vector<int> &xhand,int a)
{
	int cnt=count(hand.begin(),hand.end(),a);
	if(cnt<2)	return false;

	cnt-=2;
	for(int i=0,j=0;i<hand.size();i++){
		if(hand[i]!=a || cnt>0)	xhand[j++]=hand[i];
		if(hand[i]==a)	cnt--;
	}
	return true;
}

#define	num		first
#define	type	second
#define	SAME	0
#define	CONS	1
bool pick3x4(const vector<int> &xhand)
{
	int buc[10]={0};
	for(int i=0;i<12;i++)	buc[xhand[i]]++;

	vector< pair<int,int> > candi;
	for(int i=1;i<=9;i++){
		if(buc[i]>=3)						candi.push_back(make_pair(i,SAME));
		if(i<8&&buc[i]&&buc[i+1]&&buc[i+2])	candi.push_back(make_pair(i,CONS));
	}

	int n=candi.size();
	vector<int> test(12);
	for(int i=0;i<n;i++)for(int j=i;j<n;j++)for(int k=j;k<n;k++)for(int l=k;l<n;l++){
		test[0]=candi[i].num;
		test[1]=candi[i].num+(candi[i].type==SAME?0:1);
		test[2]=candi[i].num+(candi[i].type==SAME?0:2);
		test[3]=candi[j].num;
		test[4]=candi[j].num+(candi[j].type==SAME?0:1);
		test[5]=candi[j].num+(candi[j].type==SAME?0:2);
		test[6]=candi[k].num;
		test[7]=candi[k].num+(candi[k].type==SAME?0:1);
		test[8]=candi[k].num+(candi[k].type==SAME?0:2);
		test[9]=candi[l].num;
		test[10]=candi[l].num+(candi[l].type==SAME?0:1);
		test[11]=candi[l].num+(candi[l].type==SAME?0:2);
		sort(test.begin(),test.end());
		if(test==xhand)	return true;
	}
	return false;
}

bool isvalid(vector<int> hand)
{
	sort(hand.begin(),hand.end());

	// check consecutive 5 numbers
	bool ok=true;
	for(int i=0,bef=0,cnt=1;i<14;i++){
		if(hand[i]==bef){
			cnt++;
			if(cnt==5)	ok=false;
		}
		else	cnt=1,bef=hand[i];
	}
	if(!ok)	return false;

	for(int i=1;i<=9;i++){
		vector<int> xhand(12);
		if(pick2(hand,xhand,i) && pick3x4(xhand))
			return true;
	}
	return false;
}

int main()
{
	for(char s[32];~scanf("%s",s);){
		vector<int> hand(14);
		for(int i=0;i<13;i++)	hand[i]=s[i]-'0';

		vector<int> ans;
		for(int i=1;i<=9;i++){
			hand[13]=i;
			if(isvalid(hand))	ans.push_back(i);
		}

		if(ans.size()==0)	ans.push_back(0);
		for(int i=0;i<ans.size();i++)
			printf("%s%d",i?" ":"",ans[i]);
		puts("");
	}

	return 0;
}