#include<bits/stdc++.h>
#define MOD 1000000007
#define MAX 10000005
#define ll long long
#define slld(t) scanf("%lld",&t)
#define sd(t) scanf("%d",&t)
#define pd(t) printf("%d\n",t)
#define plld(t) printf("%lld\n",t)
#define pcc pair<char,char>
#define pii pair<int,int>
#define pll pair<ll,ll>
#define tr(container,it) for(typeof(container.begin()) it=container.begin();it!=container.end();it++)
#define mp(a,b) make_pair(a,b)
#define F first
#define S second
#define pb(x) push_back(x)
#define vi vector<int>
using namespace std;
int score[501][501],inc[501][501];
void solve(int i,int m){
inc[i][0]=0;
for(int j=1;j<=m;j++){
inc[i][j]=100-score[i][j]-inc[i][j-1];
}
}
int main(){
int t;
sd(t);
while(t--){
int n,m;
sd(n);sd(m);
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
sd(score[i][j]);
}
solve(i,m);
}
for(int i=2;i<=n;i++){
inc[i][m]=inc[i][m]-inc[i-1][m];
}
if(!inc[n][m]) cout<<"YES\n";
else cout<<"NO\n";
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KIAojZGVmaW5lIE1PRCAxMDAwMDAwMDA3CiNkZWZpbmUgTUFYIDEwMDAwMDA1CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgc2xsZCh0KSBzY2FuZigiJWxsZCIsJnQpCiNkZWZpbmUgc2QodCkgc2NhbmYoIiVkIiwmdCkKI2RlZmluZSBwZCh0KSBwcmludGYoIiVkXG4iLHQpCiNkZWZpbmUgcGxsZCh0KSBwcmludGYoIiVsbGRcbiIsdCkKI2RlZmluZSBwY2MgcGFpcjxjaGFyLGNoYXI+CiNkZWZpbmUgcGlpIHBhaXI8aW50LGludD4KI2RlZmluZSBwbGwgcGFpcjxsbCxsbD4KI2RlZmluZSB0cihjb250YWluZXIsaXQpIGZvcih0eXBlb2YoY29udGFpbmVyLmJlZ2luKCkpIGl0PWNvbnRhaW5lci5iZWdpbigpO2l0IT1jb250YWluZXIuZW5kKCk7aXQrKykKI2RlZmluZSBtcChhLGIpIG1ha2VfcGFpcihhLGIpCiNkZWZpbmUgRiBmaXJzdAojZGVmaW5lIFMgc2Vjb25kCiNkZWZpbmUgcGIoeCkgcHVzaF9iYWNrKHgpCiNkZWZpbmUgdmkgdmVjdG9yPGludD4KIAp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCmludCBzY29yZVs1MDFdWzUwMV0saW5jWzUwMV1bNTAxXTsKIAp2b2lkIHNvbHZlKGludCBpLGludCBtKXsKCWluY1tpXVswXT0wOwoJZm9yKGludCBqPTE7ajw9bTtqKyspewoJCWluY1tpXVtqXT0xMDAtc2NvcmVbaV1bal0taW5jW2ldW2otMV07Cgl9Cn0KIAppbnQgbWFpbigpewogCglpbnQgdDsKCXNkKHQpOwoJd2hpbGUodC0tKXsKCQlpbnQgbixtOwoJCXNkKG4pO3NkKG0pOwogCgkJZm9yKGludCBpPTE7aTw9bjtpKyspewoJCQlmb3IoaW50IGo9MTtqPD1tO2orKyl7CgkJCQlzZChzY29yZVtpXVtqXSk7CgkJCX0KCQkJc29sdmUoaSxtKTsKCQl9CiAKCQlmb3IoaW50IGk9MjtpPD1uO2krKyl7CgkJCWluY1tpXVttXT1pbmNbaV1bbV0taW5jW2ktMV1bbV07CgkJfQogCgkJaWYoIWluY1tuXVttXSkgCWNvdXQ8PCJZRVNcbiI7CgkJZWxzZSBjb3V0PDwiTk9cbiI7Cgl9Cn0=