#include <iostream>
#include <string>
using namespace std;
const int N(512);
char code[N]={0};
char code2[N]={0};
int main()
{
string ci,cl,nci;
cin>>ci>>cl>>nci;
int l(ci.size());bool failed=false;
for(int i=0;i<l;i++)
{
char x(ci[i]),y(cl[i]);
if((!code[x])&&(!code2[y]))
code[x]=y,code2[y]=x;
else if(code[x]!=y||code2[y]!=x)
{
failed=true;
break;
}
}
for(int i='A';i<='Z';i++)
if(code[i]==0)
{
failed=true;
break;
}
if(!failed)
for(int i=0;i<nci.size();i++)
cout<<code[nci[i]];
else
cout<<"Failed";
cout<<endl;
return 0;
}
/**************************************************************
Problem: 2288
User: admin
Language: C++
Result: Accepted
Time:49 ms
Memory:2076 kb
****************************************************************/