#include <iostream>
#include <cstring>
using namespace std;
int t,n,m,a[10][10],dx[9]={0,1,-1,0,0,1,1,-1,-1},dy[9]={0,0,0,-1,1,-1,1,-1,1},cnt[10][10];
inline int max(int a,int b){
return a>b?a:b;
}
inline int dfs(){
int ans=0;
for(int i=0;i<n;++i){
for(int j=0;j<m;++j){
if(cnt[i][j]){
continue;
}
for(int k=0;k<9;++k){
int xx=i+dx[k],yy=j+dy[k];
if(xx<0||yy<0||xx>=n||yy>=m){
continue;
}
cnt[xx][yy]++;
}
ans=max(ans,a[i][j]+dfs());
for(int k=0;k<9;++k){
int xx=i+dx[k],yy=j+dy[k];
if(xx<0||yy<0||xx>=n||yy>=m){
continue;
}
cnt[xx][yy]--;
}
}
}
return ans;
}
inline int read(){
char c=getchar();
int x=0;
while(c<'0'||c>'9'){
c=getchar();
}
while(c>='0'&&c<='9'){
x*=10;
x+=c-'0';
c=getchar();
}
return x;
}
int main(void){
freopen("data.txt","r",stdin);
t=read();
while(t--){
n=read();
m=read();
for(int i=0;i<n;++i){
for(int j=0;j<m;++j){
a[i][j]=read();
}
}
printf("%d\n",dfs());
}
}