#include<cstdio>
#include<cmath>
#include<ctime>
#include<algorithm>
#include<string>
#include<cstring>
#include<set>
#include<queue>
#include<cstdlib>
using namespace std;
char a[101],b[101],c[101],d[1],f[26],cs[1001];
int i,j,k,s,r;
int main()
{
cin>>a;
cin>>b;
cin>>c;
if (strlen(a)<26) {cout<<"Failed"<<endl; exit(0);}
for(i=0;i<26;i++)
f[i]=i+65;
for(i=0;i<26;i++)
{s=0;
for(j=0;j<strlen(a);j++)
if (a[j]==f[i])s++;
if (s==0){cout<<"Failed"<<endl; exit(0);}
}
for(i=0;i<26;i++)
{s=0;
for(j=0;j<strlen(a);j++)
if (b[j]==f[i])s++;
if (s==0){cout<<"Failed"<<endl; exit(0);}
}//判断长度
for(i=0;i<strlen(a);i++){
if ((a[i]>=65&&a[i]<=90)||(b[i]>=65&&b[i]<=90)) continue;
cout<<"Failed"<<endl; exit(0);}//判断非法字符
for(i=0;i<strlen(c);i++){
r=0;
for(j=0;j<strlen(a);j++){
if (a[j]==c[i]){
if (d[0]==b[j]) continue;
{r++;d[0]=b[j];}
}
}
if (r>1) {cout<<"Failed"<<endl; exit(0);}
cs[i]=d[0];
}//枚举
for(i=0;i<strlen(c);i++)
cout<<cs[i];
}