#include<iostream>
#include<algorithm>
#include<math.h>
#include<vector>
#include<bits/stdc++.h>
#define ll long long int
#define sif(n) scanf("%d",&n)
#define slf(n) scanf("%lld",&n)
#define pif(n) printf("%d\n",n)
#define plf(n) printf("%lld\n",n)
using namespace std;
int main(){
int t; sif(t);
while(t--){
int a,b;
sif(a); sif(b);
ll arr[a][b];
for(int i=0;i<a;i++){
for(int j=0;j<b;j++){
slf(arr[i][j]);
}
}
// cout<<endl;
ll min[a][b];
for(int i=0;i<a;i++){
for(int j=0;j<b;j++){
min[i][j]=0;
}
}
min[0][0]= arr[0][0];
for(int i=1;i<a;i++){
min[i][0] = min[i-1][0];
arr[i][0] += arr[i-1][0];
if(min[i][0]>arr[i][0]) min[i][0]=arr[i][0];
}
for(int i=1;i<b;i++){
arr[0][i] +=arr[0][i-1];
min[0][i] = min[0][i-1];
if(min[0][i]>arr[0][i]) min[0][i]=arr[0][i];
}
for(int i=1;i<a;i++){
for(int j=1;j<b;j++){
ll temp = max(arr[i-1][j],arr[i][j-1]);
arr[i][j] += temp;
min[i][j] = max(min[i-1][j],min[i][j-1]);
if(arr[i][j]<min[i][j])
min[i][j] = arr[i][j];
}
}
// for(int i=0;i<a;i++)
// for(int j=0;j<b;j++)
// cout<<min[i][j]<<" ";
ll temp = min[a-1][b-1];
// cout<<temp;
if(temp<=0)
temp = 1 - temp;
else
temp =0;
plf(temp);
}
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGFsZ29yaXRobT4KI2luY2x1ZGU8bWF0aC5oPgojaW5jbHVkZTx2ZWN0b3I+CiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbGwgbG9uZyBsb25nIGludAojZGVmaW5lIHNpZihuKSBzY2FuZigiJWQiLCZuKQojZGVmaW5lIHNsZihuKSBzY2FuZigiJWxsZCIsJm4pCiNkZWZpbmUgcGlmKG4pIHByaW50ZigiJWRcbiIsbikKI2RlZmluZSBwbGYobikgcHJpbnRmKCIlbGxkXG4iLG4pCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKXsKCWludCB0OyBzaWYodCk7Cgl3aGlsZSh0LS0pewoJCWludCBhLGI7CgkJc2lmKGEpOyBzaWYoYik7CgkJbGwgYXJyW2FdW2JdOwoJCWZvcihpbnQgaT0wO2k8YTtpKyspewoJCQlmb3IoaW50IGo9MDtqPGI7aisrKXsKCQkJCXNsZihhcnJbaV1bal0pOwoJCQl9CgkJfQoJLy8JY291dDw8ZW5kbDsKCQlsbCBtaW5bYV1bYl07CgkJZm9yKGludCBpPTA7aTxhO2krKyl7CgkJCWZvcihpbnQgaj0wO2o8YjtqKyspewoJCQkJbWluW2ldW2pdPTA7CgkJCX0KCQl9CgkJbWluWzBdWzBdPSBhcnJbMF1bMF07CgkJZm9yKGludCBpPTE7aTxhO2krKyl7CgkJCW1pbltpXVswXSA9IG1pbltpLTFdWzBdOwoJCQlhcnJbaV1bMF0gKz0gYXJyW2ktMV1bMF07CgkJCWlmKG1pbltpXVswXT5hcnJbaV1bMF0pIG1pbltpXVswXT1hcnJbaV1bMF07CgkJfQoJCQkKCQlmb3IoaW50IGk9MTtpPGI7aSsrKXsKCQkJYXJyWzBdW2ldICs9YXJyWzBdW2ktMV07CgkJCW1pblswXVtpXSA9IG1pblswXVtpLTFdOwoJCQlpZihtaW5bMF1baV0+YXJyWzBdW2ldKSBtaW5bMF1baV09YXJyWzBdW2ldOwoJCX0KCQkKCQlmb3IoaW50IGk9MTtpPGE7aSsrKXsKCQkJZm9yKGludCBqPTE7ajxiO2orKyl7CgkJCQlsbCB0ZW1wID0gbWF4KGFycltpLTFdW2pdLGFycltpXVtqLTFdKTsKCQkJCQoJCQkJYXJyW2ldW2pdICs9IHRlbXA7CgkJCQltaW5baV1bal0gPSBtYXgobWluW2ktMV1bal0sbWluW2ldW2otMV0pOwoJCQkJaWYoYXJyW2ldW2pdPG1pbltpXVtqXSkKCQkJCW1pbltpXVtqXSA9IGFycltpXVtqXTsKCQkJCQoJCQl9CgkJfQoJCS8vCWZvcihpbnQgaT0wO2k8YTtpKyspCgkJLy8JZm9yKGludCBqPTA7ajxiO2orKykKCQkvLwljb3V0PDxtaW5baV1bal08PCIgIjsKCQlsbCB0ZW1wID0gbWluW2EtMV1bYi0xXTsKCS8vCWNvdXQ8PHRlbXA7CgkJaWYodGVtcDw9MCkKCQl0ZW1wICA9IDEgLSB0ZW1wOwoJCWVsc2UKCQl0ZW1wID0wOwoJCXBsZih0ZW1wKTsKCQkKCX0KfQ==