#include<bits/stdc++.h>
using namespace std;
int p1,p2,p3;
string s;
char to(char c){
if(p1==1){
if(c>='A'&&c<='Z')return 'a'+c-'A';
else return c;
}
if(p1==2){
if(c>='a'&&c<='z')return 'A'+c-'a';
else return c;
}
if(p1==3)return '*';
return 0;
}
string work(char a,char b,char c){
string res;
for(char i=a+1;i<c;i=i+1){
for(int j=1;j<=p2;j++){
res+=to(i);
}
}
if(p3==2)reverse(res.begin(),res.end());
return a+res+c;
}
int main(){
cin>>p1>>p2>>p3;
cin>>s;
for(int i=0;i<s.length();i++){
if(s[i+1]=='-'&&s[i+2]!='-'&&s[i]<s[i+2]&&((s[i]>='A'&&s[i+2]<='Z')||(s[i]>='a'&&s[i+2]<='z')||(s[i]>='0'&&s[i+2]<='9'))){
cout<<work(s[i],s[i+1],s[i+2]);
i+=2;
}else{
cout<<s[i];
}
}
return 0;
}