#include #include #include #include #include #include #define rep(i,n) for(int i = 0;i < n;i++) #define REP(i,n,k) for(int i = n;i < k;i++) #define P(p) cout << (p) << endl;//print using namespace std; int main(){ cin.tie(0); ios::sync_with_stdio(false); string s; int mozi[13]={}; cin >> s; rep(i,13){ char c = s[i]; cin >> c; if(c=='a'){ mozi[0]++; }else if(c=='b'){ mozi[1]++; }else if(c=='c'){ mozi[2]++; }else if(c=='d'){ mozi[3]++; }else if(c=='e'){ mozi[4]++; }else if(c=='f'){ mozi[5]++; }else if(c=='g'){ mozi[6]++; }else if(c=='h'){ mozi[7]++; }else if(c=='i'){ mozi[8]++; }else if(c=='j'){ mozi[9]++; }else if(c=='k'){ mozi[10]++; }else if(c=='l'){ mozi[11]++; }else if(c=='m'){ mozi[12]++; } } int a; bool isZero = false; bool isTwo = false; rep(i,13){ if(mozi[i]==0){ if(!isZero){ isZero=true; a=i; }else{ P("Impossible"); return 0; } }else if(mozi[i]==2){ if(!isTwo){ isTwo=true; }else{ P("Impossible"); return 0; } } } if(isTwo){ switch(a){ case 0:P('a');break; case 1:P('b');break; case 2:P('c');break; case 3:P('d');break; case 4:P('e');break; case 5:P('f');break; case 6:P('g');break; case 7:P('h');break; case 8:P('i');break; case 9:P('j');break; case 10:P('k');break; case 11:P('l');break; case 12:P('m');break; } }else{ P('a'); P('b'); P('c'); P('d'); P('e'); P('f'); P('g'); P('h'); P('i'); P('j'); P('k'); P('l'); P('m'); } }