#include #include #include using namespace std; #define maxn 1111 long long ma[maxn][maxn],f1[maxn],f2[maxn],add1[maxn],add2[maxn]; int main() { int n, m, q; int t; scanf("%d",&t); while(t--) { scanf("%d %d %d",&n,&m,&q); memset(add1,0,sizeof(add1)); memset(add2,0,sizeof(add2)); int i, j; for(i=1;i<=n;i++) f1[i] = i; for(i=1;i<=m;i++) f2[i] = i; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { scanf("%I64d",&ma[i][j]); } } while(q--) { int a, x, y; scanf("%d %d %d",&a,&x,&y); if(a==1) { swap(f1[x],f1[y]); } else if(a==3) { add1[f1[x]]+=y; } else if(a==2) { swap(f2[x],f2[y]); } else { add2[f2[x]]+=y; } } for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { long long temp = ma[f1[i]][f2[j]]; printf("%I64d",ma[f1[i]][f2[j]]+add1[f1[i]]+add2[f2[j]]); // printf("%I64d %I64d %I64d %I64d %I64d\n",temp,f1[i],f2[j],add1[f1[i]],add2[f2[j]]); if(j==m) printf("\n"); else printf(" "); } } } return 0; }