#include<stdio.h>
int arrange(a,b,c,d){
int A[4];
int i,u,o,k;
for(i=0;i<=3;i++){
A[i]=a;
for(u=1;u<=3;u++){
A[(i+u)%4]=b;
for(o=1;o<=3;o++){
if(o==u) continue;
else A[(i+o)%4]=c;
for(k=1;k<=3;k++){
if(k==o || k==u) continue;
else A[(i+k)%4]=d;
printf("%c%c%c%c\n",A[0]+'0',A[1]+'0',A[2]+'0',A[3]+'0');
}
}
}
}
return 0;
}
int main1(){
int a,b,c,d;
char a1,b1,c1,d1;
scanf("%c",&a1);
scanf("%c",&b1);
scanf("%c",&c1);
scanf("%c",&d1);
switch(a1){
case 'a':{
a=1;
break;
}
case 'j':{
a=11;
break;
}
case 'k':{
a=12;
break;
}
case 'q':{
a=13;
break;
}
default:{
a=a1-'0';
}
}
switch(b1){
case 'a':{
b=1;
break;
}
case 'j':{
b=11;
break;
}
case 'k':{
b=12;
break;
}
case 'q':{
b=13;
break;
}
default:{
b=b1-'0';
}
}
switch(c1){
case 'a':{
c=1;
break;
}
case 'j':{
c=11;
break;
}
case 'k':{
c=12;
break;
}
case 'q':{
c=13;
break;
}
default:{
c=c1-'0';
}
}
switch(d1){
case 'a':{
d=1;
break;
}
case 'j':{
d=11;
break;
}
case 'k':{
d=12;
break;
}
case 'q':{
d=13;
break;
}
default:{
d=d1-'0';
}
}
arrange(a,b,c,d);
return 0;
}