#include #include #include #include #include #include #include #include #define ls (t<<1) #define rs ((t<<1)+1) #define mid ((l+r)>>1) #define fi first #define se second #define mk make_pair #define N 1005 #define M 200005 #define seed 23333 #define Mo 998244353 using namespace std; int i,j,m,n,p,k,x[N],y[N],sumx[N],sumy[N],T,q,a,A[N][N],sx,sy; int read() { int x; scanf("%d",&x); return x; } int main() { scanf("%d",&T); for (;T--;) { scanf("%d%d%d",&n,&m,&q); for (i=1;i<=n;++i) for (j=1;j<=m;++j) A[i][j]=read(); for (i=1;i<=n;++i) x[i]=i,sumx[i]=0; for (j=1;j<=m;++j) y[j]=j,sumy[j]=0; for (;q--;) { a=read(); sx=read(); sy=read(); if (a==1) swap(x[sx],x[sy]); if (a==2) swap(y[sx],y[sy]); if (a==3) sumx[x[sx]]+=sy; if (a==4) sumy[y[sx]]+=sy; } for (i=1;i<=n;++i) { for (j=1;j<=m;++j) { printf("%d",A[x[i]][y[j]]+sumx[x[i]]+sumy[y[j]]); if (j!=m) printf(" "); } puts(""); } } }