#include <bits/stdc++.h>
#define MAX 50
using namespace std;
//上下反转
void Topfilp(int (&data)[6][6],int x,int y,int size){
for(int i = 0; i < size /2; i++){ //翻转次数控制
for(int j = y; j <= y + size -1; j++){ //控制列
swap(data[x + i][j] , data[x + size -1 - i][j]);
}
}
}
//左右反转
void Leftfilp(int (&data)[6][6],int x,int y,int size){
for(int i = 0; i < size / 2; i++){ //翻转次数控制
for(int j = x; j <= x + size -1; j++){ //控制行
swap(data[j][y + i],data[j][y + size -1 -i]);
}
}
}
//对称反转
void DuiCheng(int (&data)[6][6],int x,int y,int size){
for(int i = 0; i <= size - 1; i++){
for(int j = i + 1; j <= size - 1; j++){
swap(data[x + i][y + j],data[x + j][y + i]);
}
}
}
void Print(int data[6][6]){
for(int i = 1; i <= 5; i++){
for(int j = 1;j <= 5; j++){
cout<<data[i][j]<<" ";
}
cout<<endl;
}
}
int main(){
int data[6][6],i,j;
for(i = 1; i <= 5; i++){
for(j = 1;j <= 5; j++){
cin>>data[i][j];
}
}
int a,b,x,y;
cin>>a>>b>>x>>y;
if(a == 1 && b == 2){
Topfilp(data,x,y,2);
DuiCheng(data,x,y,2);
}else if(a == 1 && b == 3){
Topfilp(data,x,y,3);
DuiCheng(data,x,y,3);
}else if(a == 2 && b == 2){
Leftfilp(data,x,y,2);
DuiCheng(data,x,y,2);
}else if(a == 2 && b == 3){
Leftfilp(data,x,y,3);
DuiCheng(data,x,y,3);
}
Print(data);
}