#include <iostream>
using namespace std;
int matrix[5][5];
void rotate(int a,int b,int x,int y){
int jz[b][b];//保存要翻转的矩阵
x--;//案例中下标都是从1开始,这里图方便在存储时采用从0开始
y--;
for(int i=0;i<b;i++){
for(int j=0;j<b;j++){
jz[i][j]=matrix[i+x][j+y];
}
}
if(a==1){//顺时针
for(int i=0;i<b;i++){
for(int j=0;j<b;j++){
matrix[x+j][y+b-1-i]=jz[i][j];//翻转公式,可自行推导
}
}
}
if(a==2){//逆时针
for(int i=0;i<b;i++){
for(int j=0;j<b;j++){
matrix[x+b-1-j][i+y]=jz[i][j];
}
}
}
}
int main() {
int a0,a1,a2,a3,a4;
while (cin >> a0>>a1>>a2>>a3>>a4) { //说是有多个案例,其实都只有一个
matrix[0][0]=a0;
matrix[0][1]=a1;
matrix[0][2]=a2;
matrix[0][3]=a3;
matrix[0][4]=a4;
for(int i=1;i<5;i++){
for(int j=0;j<5;j++){
int t;
cin>>t;
matrix[i][j]=t;
}
}
int m,n,x,y;
cin>>m>>n>>x>>y;
rotate(m,n,x,y);
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
cout<<matrix[i][j]<<' ';
}
cout<<endl;
}
}
}