#include<iostream>
#include<cstring>
using namespace std;
char a[6][6];
int main(){
int i,j,p,q;
for(i=0;i<5;i++){
scanf("%s",a[i]);
a[i][5] = '\0';
}
for(i=0;i<5;i++)
for(j=0;j<5;j++)
if(a[i][j]=='*'){
p = i;
q = j;
}
char s[80];
scanf("%s",s);
int len = strlen(s);
bool flag = false;
for(i=0;i<len-1;i++){
if(s[i]=='A'){
if(p==0){
flag = true;
break;
}
a[p][q] = a[p-1][q];
a[p-1][q] = '*';
p--;
}
if(s[i]=='B'){
if(p==4){
flag = true;
break;
}
a[p][q] = a[p+1][q];
a[p+1][q] = '*';
p++;
}
if(s[i]=='L'){
if(q==0){
flag = true;
break;
}
a[p][q] = a[p][q-1];
a[p][q-1] = '*';
q--;
}
if(s[i]=='R'){
if(q==4){
flag = true;
break;
}
a[p][q] = a[p][q+1];
a[p][q+1] = '*';
q++;
}
}
if(flag){
printf("This puzzle has no final configuration.\n");
}
else{
for(i=0;i<5;i++)
printf("%s\n",a[i]);
}
return 0;
}