#include <iostream>
#include <cstdio>
#include <cmath>
#include <string>
#include <algorithm>
using namespace std;
int arr[10][10];
int ddd[10][10], u;
int sum, maxx = -11, max;
int n, m;
int work[8][2]{ {0,1},{0,-1},{1,0},{-1,0},{1,1},{-1,1},{1,-1},{-1,-1} };
int check(int a, int b)
{
if (a<1 || b<1 || a>n || b>m)
{
return -1;
}
else
{
return 1;
}
}
void dfs(int a, int b)
{
if (b == m + 1)
{
dfs(a + 1, 1);
return;
}
if (a == n + 1)
{
if (sum > maxx)maxx = sum;
return;
}
if (ddd[a][b] == 0)
{
sum += arr[a][b];
for (int i = 0; i < 8; i++)
{
int k1 = a + work[i][0];
int k2 = b + work[i][1];
ddd[k1][k2] = 1;
}
}
dfs(a, b + 1);
for (int i = 0; i < 8; i++)
{
int k1 = a + work[i][0];
int k2 = b + work[i][1];
ddd[k1][k2] = 0;
}
sum -= arr[a][b];
}
int main()
{
int t;
cin >> t;
while (t--)
{
cin >> n >> m;
memset(ddd, 0, sizeof(ddd));
memset(arr, 0, sizeof(arr));
for (int i = 1; i <= n; i++)
{
for (int j = 01; j <= m; j++)
{
cin >> arr[i][j];
}
}
dfs(1, 1);
cout << maxx << endl;
}
return 0;
}