#include #define ll long long #define eps 1e-9 #define PI 2 * acos (0.0) using namespace std; const int mod=1000000000 + 7; int ar[502][502]; ll xxor[505][505]; ll yxor[505][505]; int n,m; void update(int x,int y,int val) { int a,b; for(b=y;b<=m;b++) { xxor[x][b]=(xxor[x][b]^val^ar[x][y]); } for(a=x;a<=n;a++) { yxor[a][y]=(yxor[a][y]^val^ar[x][y]); } ar[x][y]=val; } int main() { int a,b,c,d,e,x,y,z,t,k,q; scanf("%d",&t); while(t--) { scanf("%d %d %d",&n,&m,&q); for(a=1;a<=n;a++) { for(b=1;b<=m;b++) { scanf("%d",&ar[a][b]); xxor[a][b]=0; yxor[a][b]=0; } } for(a=1;a<=n;a++) { for(b=1;b<=m;b++) { xxor[a][b]=(xxor[a][b-1]^ar[a][b]); } } for(b=1;b<=m;b++) { for(a=1;a<=n;a++) { yxor[a][b]=(yxor[a-1][b]^ar[a][b]); } } while(q--) { scanf("%d",&e); if(e==2) { scanf("%d %d %d",&x,&y,&z); update(x,y,z); } else { scanf("%d %d %d %d",&c,&d,&x,&y); if(c>x) swap(c,x); if(d>y) swap(d,y); z=0; for(a=c;a<=x;a++) { z=(z^xxor[a][y]^xxor[a][d-1]); } if(!z) printf("No\n"); else printf("Yes\n"); } } } return 0; }