#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;
        }
    }
}