#include <iostream>
//#include <vector>//有点问题;只能通过五个例子
using namespace std;

struct ac
{
    char cz;
    int n,m;
};

int main ()
{
    int n,m,k;
    cin>>n>>m;
    char t;
    int arr[n][m];

    for(int i=0;i<n;i++)//shu输入矩阵
    {
        for (int j=0;j<m;j++)
        {cin>>arr[i][j];
        }
    }
    cin>>k;
    ac tem[k];//存放操作方法。
    for (int i=0;i<k;i++)
    {
        cin>>tem[i].cz>>tem[i].n>>tem[i].m;
    }

    for (int i=0;i<k;i++)
    {
        if (tem[i].cz=='r')//hangbianhuan
        {
            int r1=tem[i].n;
            int r2=tem[i].m;
            for (int j=0;j<m;j++)
            {
                int temp=arr[r1-1][j];
                arr[r1-1][j]=arr[r2-1][j];
                arr[r2-1][j]=temp;
            }

         if (tem[i].cz=='c')//liebianhuan
        {
            int r1=tem[i].n;
            int r2=tem[i].m;
            for (int j=0;j<n;j++)
            {
                int temp=arr[j][r1-1];
                arr[j][r1-1]=arr[j][r2-1];
                arr[j][r2-1]=temp;
            }
        }
    }
    }
      for(int i = 0;i < n;i++)
    {
        for(int j = 0;j < m;j++)
            cout<<arr[i][j]<<" ";//输入矩阵的每个元素
        cout<<endl;
    }
}