#include<bits/stdc++.h>
using namespace std;
int t,n,m;
int a[10][10];
bool vis[10][10];
int dx[]={0,1,-1,0,1,1,-1,-1};
int dy[]={-1,0,0,1,-1,1,1,-1};
int mx;
void dfs(int x,int y,int sum){
if(y>m){
dfs(x+1,1,sum);
return ;
}
if(x>n){
mx=max(mx,sum);
return ;
}
dfs(x,y+1,sum);
if(!vis[x][y]){
for(int i=0;i<8;i++) vis[x+dx[i]][y+dy[i]]=1;
dfs(x,y+1,sum+a[x][y]);
for(int i=0;i<8;i++) vis[x+dx[i]][y+dy[i]]=0;
}
}
int main(){
scanf("%d",&t);
while(t--){
mx=0;
memset(a,0,sizeof a);
memset(vis,0,sizeof vis);
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
scanf("%d",&a[i][j]);
dfs(1,1,0);
printf("%d\n",mx);
}
return 0;
}