import java.util.* ;
public class Main{
public static void main(String...args) {
Scanner sc = new Scanner(System.in) ;
while(sc.hasNextLine()) {
String key = sc.nextLine() ;
String target = sc.nextLine() ;
System.out.println(code(key,target)) ;
}
}
public static String code(String key , String target) {
char k[] = key.toCharArray() ;
char t[] = target.toCharArray() ;
LinkedHashSet<Character> set = new LinkedHashSet<>() ;
for(char ch : k) {
if(isBig(ch)) {
set.add(ch) ;
} else {
set.add((char)(ch-32)) ;
}
}
char alp[] = new char[26] ;
for(int i = 0 ; i < 26 ; i ++) {
alp[i] = (char)('A'+ i) ;
}
for(char ch : alp) {
set.add(ch) ;
}
char[] dic = new char[26] ;
int abc = 0 ;
for(char ch : set) {
dic[abc++] = ch ;
}
String aplStr = new String(alp) ;
StringBuilder mid = new StringBuilder() ;
for(char ch : t) {
if(isBig(ch)) {
int index = aplStr.indexOf(ch) ;
mid.append(dic[index]) ;
} else {
int index = aplStr.indexOf(ch-32) ;
mid.append((char)(dic[index]+32)) ;
}
}
return new String(mid) ;
}
public static boolean isBig(char ch) {
if(ch >= 'A' && ch <= 'Z') {
return true ;
}
return false ;
}
}