#include<bits/stdc++.h>
#define ll long long
#define nl "\n"
#define baraa ios_base::sync_with_stdio(false);cin.tie(NULL);
using namespace std;
const ll mod = 1e9 + 7;
ll fp(ll a,ll b) {
ll ans = 1, push = a;
while (b > 0) {
if (b & 1) { ans = (ans * push) % mod; }
push = (push * push) % mod;
b >>= 1;
}
return ans;
}
int main() {
baraa
ll t;
cin >> t;
while (t--) {
ll n;
cin >> n;
vector<vector<ll> > a(n, vector<ll>(n, 0));
for (ll i = 0; i < n; i++)
for (ll j = 0; j < n; j++)
cin >> a[i][j];
ll mxi = -1e16;
for (ll black = 0; black <= n; black++) {
ll white = n - black;
vector<vector<ll> > dp(n + 2, vector<ll>(n + 2, -1e17));
function<ll(ll, ll, ll)> solve = [&](ll i, ll j, ll k)-> ll {
if (i == n)return (j == black ? 0 : (ll) -1e16);
if (dp[i][j] != (ll) -1e17)return dp[i][j];
ll op1 = -1e16, op2 = -1e16;
if (j != black)op1 = solve(i + 1, j + 1, k) + a[i][j];
if (k != white)op2 = solve(i + 1, j, k + 1) + a[i][black + k];
return dp[i][j] = max(op1, op2);
};
mxi = max(mxi, solve(0, 0, 0));
}
cout << mxi << nl;
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBubCAiXG4iCiNkZWZpbmUgYmFyYWEgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7Y2luLnRpZShOVUxMKTsKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKY29uc3QgbGwgbW9kID0gMWU5ICsgNzsKbGwgZnAobGwgYSxsbCBiKSB7CiAgICBsbCBhbnMgPSAxLCBwdXNoID0gYTsKICAgIHdoaWxlIChiID4gMCkgewogICAgICAgIGlmIChiICYgMSkgeyBhbnMgPSAoYW5zICogcHVzaCkgJSBtb2Q7IH0KICAgICAgICBwdXNoID0gKHB1c2ggKiBwdXNoKSAlIG1vZDsKICAgICAgICBiID4+PSAxOwogICAgfQogICAgcmV0dXJuIGFuczsKfQppbnQgbWFpbigpIHsKICAgIGJhcmFhCiAgICBsbCB0OwogICAgY2luID4+IHQ7CiAgICB3aGlsZSAodC0tKSB7CiAgICAgICAgbGwgbjsKICAgICAgICBjaW4gPj4gbjsKICAgICAgICB2ZWN0b3I8dmVjdG9yPGxsPiA+IGEobiwgdmVjdG9yPGxsPihuLCAwKSk7CiAgICAgICAgZm9yIChsbCBpID0gMDsgaSA8IG47IGkrKykKICAgICAgICAgICAgZm9yIChsbCBqID0gMDsgaiA8IG47IGorKykKICAgICAgICAgICAgICAgIGNpbiA+PiBhW2ldW2pdOwogICAgICAgIGxsIG14aSA9IC0xZTE2OwogICAgICAgIGZvciAobGwgYmxhY2sgPSAwOyBibGFjayA8PSBuOyBibGFjaysrKSB7CiAgICAgICAgICAgIGxsIHdoaXRlID0gbiAtIGJsYWNrOwogICAgICAgICAgICB2ZWN0b3I8dmVjdG9yPGxsPiA+IGRwKG4gKyAyLCB2ZWN0b3I8bGw+KG4gKyAyLCAtMWUxNykpOwogICAgICAgICAgICBmdW5jdGlvbjxsbChsbCwgbGwsIGxsKT4gc29sdmUgPSBbJl0obGwgaSwgbGwgaiwgbGwgayktPiBsbCB7CiAgICAgICAgICAgICAgICBpZiAoaSA9PSBuKXJldHVybiAoaiA9PSBibGFjayA/IDAgOiAobGwpIC0xZTE2KTsKICAgICAgICAgICAgICAgIGlmIChkcFtpXVtqXSAhPSAobGwpIC0xZTE3KXJldHVybiBkcFtpXVtqXTsKICAgICAgICAgICAgICAgIGxsIG9wMSA9IC0xZTE2LCBvcDIgPSAtMWUxNjsKICAgICAgICAgICAgICAgIGlmIChqICE9IGJsYWNrKW9wMSA9IHNvbHZlKGkgKyAxLCBqICsgMSwgaykgKyBhW2ldW2pdOwogICAgICAgICAgICAgICAgaWYgKGsgIT0gd2hpdGUpb3AyID0gc29sdmUoaSArIDEsIGosIGsgKyAxKSArIGFbaV1bYmxhY2sgKyBrXTsKICAgICAgICAgICAgICAgIHJldHVybiBkcFtpXVtqXSA9IG1heChvcDEsIG9wMik7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIG14aSA9IG1heChteGksIHNvbHZlKDAsIDAsIDApKTsKICAgICAgICB9CiAgICAgICAgY291dCA8PCBteGkgPDwgbmw7CiAgICB9CiAgICByZXR1cm4gMDsKfQ==