#include<stdio.h>
#define maxn 5
int ds();
int
main()
{
char A[maxn][maxn];
char B[10],t;
int a,b;
while(ds()) //获得含空格的矩阵
{
scanf("%s",B);
printf("\n");
for(int j=0;j<maxn;j++) //获得' '的元素是哪个
for(int k=0;k<maxn;k++)
if(A[j][k]==' ')
a=j,b=k;
for(int j=0;B[j]!='0';j++) //根据指令对空格与周边字母进行交换
{
switch(B[j])
{
case 'A':t=A[a-1][b],A[a][b]=t,A[--a][b]=' ';break;
case 'B':t=A[a+1][b],A[a][b]=t,A[++a][b]=' ';break;
case 'L':t=A[a][b-1],A[a][b]=t,A[a][--b]=' ';break;
case 'R':t=A[a][b+1],A[a][b]=t,A[a][++b]=' ';break;
}
}
for(int j=0;j<maxn;j++) //输出矩阵
{
for(int k=0;k<maxn;k++)
printf("%c",A[j][k]);
printf("\n");
}
}
}
int
ds()
{
for(int i=0;i<maxn;i++)
gets(A[i]);
return 1;
}