#include <bits/stdc++.h>
using namespace std;
const int N=1005;
int n,m,a[N][N],dp1[N][N],dp2[N][N];
void solve(){
cin >>n >>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin >>a[i][j];
dp1[i][j]=-1e9;
dp2[i][j]=1e9;
}
}
for(int i=1;i<=n;i++)dp2[i][1]=dp1[i][1]=dp2[i-1][1]+a[i][1];
for(int i=1;i<=m;i++)dp2[1][i]=dp1[1][i]=dp2[i][i-1]+a[1][i];
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
dp2[i][j]=max(dp2[i-1][j],dp2[i][j-1])+a[i][j];
dp1[i][j]=min(dp1[i-1][j],dp1[i][j-1])+a[i][j];
}
}
cout <<((dp2[n][m]%2==1||dp1[n][m]>0||dp2[n][m]<0)?"NO\n":"YES\n");
}
int main(){
int t;
cin >>t;
while(t--){
solve();
}
return 0;
}