#include <bits/stdc++.h>
#define FOR(i, a, b) for (int i = a; i <= b; ++i)
#define FORD(i, a, b) for (int i = a; i >= b; --i)
#define ll long long
using namespace std;
const int N = 1e3 + 5;
const ll inf = 9e18;
int a[N][N], n;
ll dp[N][N][2];
void nhap() {
cin >> n;
FOR(i, 1, n) FOR(j, 1, n) cin >> a[i][j];
}
ll calc(ll x, ll y, bool type) {
if (x == n && y == n) return a[n][n];
if (dp[x][y][type] != -1) return dp[x][y][type];
ll res = -inf;
if (!type && x < n && y > 1) res = max(res, a[x][y] + calc(x + 1, y - 1, type));
if (type && x > 1 && y < n) res = max(res, a[x][y] + calc(x - 1, y + 1, type));
if (x < n) res = max(res, a[x][y] + max(calc(x + 1, y, 0), calc(x + 1, y, 1)));
if (y < n) res = max(res, a[x][y] + max(calc(x, y + 1, 0), calc(x, y + 1, 1)));
return dp[x][y][type] = res;
}
void giai() {
memset(dp, -1, sizeof dp);
cout << max(calc(1, 1, 0), calc(1, 1, 1));
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
#define name "test"
if (fopen(name".inp", "r")) {
freopen(name".inp", "r", stdin);
freopen(name".out", "w", stdout);
}
nhap();
giai();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CgojZGVmaW5lIEZPUihpLCBhLCBiKSBmb3IgKGludCBpID0gYTsgaSA8PSBiOyArK2kpCiNkZWZpbmUgRk9SRChpLCBhLCBiKSBmb3IgKGludCBpID0gYTsgaSA+PSBiOyAtLWkpCiNkZWZpbmUgbGwgbG9uZyBsb25nCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IE4gPSAxZTMgKyA1Owpjb25zdCBsbCBpbmYgPSA5ZTE4OwppbnQgYVtOXVtOXSwgbjsKbGwgZHBbTl1bTl1bMl07Cgp2b2lkIG5oYXAoKSB7CiAgICBjaW4gPj4gbjsKICAgIEZPUihpLCAxLCBuKSBGT1IoaiwgMSwgbikgY2luID4+IGFbaV1bal07Cn0KCmxsIGNhbGMobGwgeCwgbGwgeSwgYm9vbCB0eXBlKSB7CiAgICBpZiAoeCA9PSBuICYmIHkgPT0gbikgcmV0dXJuIGFbbl1bbl07CiAgICBpZiAoZHBbeF1beV1bdHlwZV0gIT0gLTEpIHJldHVybiBkcFt4XVt5XVt0eXBlXTsKCiAgICBsbCByZXMgPSAtaW5mOwogICAgaWYgKCF0eXBlICYmIHggPCBuICYmIHkgPiAxKSByZXMgPSBtYXgocmVzLCBhW3hdW3ldICsgY2FsYyh4ICsgMSwgeSAtIDEsIHR5cGUpKTsKICAgIGlmICh0eXBlICYmIHggPiAxICYmIHkgPCBuKSByZXMgPSBtYXgocmVzLCBhW3hdW3ldICsgY2FsYyh4IC0gMSwgeSArIDEsIHR5cGUpKTsKICAgIGlmICh4IDwgbikgcmVzID0gbWF4KHJlcywgYVt4XVt5XSArIG1heChjYWxjKHggKyAxLCB5LCAwKSwgY2FsYyh4ICsgMSwgeSwgMSkpKTsKICAgIGlmICh5IDwgbikgcmVzID0gbWF4KHJlcywgYVt4XVt5XSArIG1heChjYWxjKHgsIHkgKyAxLCAwKSwgY2FsYyh4LCB5ICsgMSwgMSkpKTsKCiAgICByZXR1cm4gZHBbeF1beV1bdHlwZV0gPSByZXM7Cn0KCnZvaWQgZ2lhaSgpIHsKICAgIG1lbXNldChkcCwgLTEsIHNpemVvZiBkcCk7CiAgICBjb3V0IDw8IG1heChjYWxjKDEsIDEsIDApLCBjYWxjKDEsIDEsIDEpKTsKfQoKaW50IG1haW4oKSB7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwogICAgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CgogICAgI2RlZmluZSBuYW1lICJ0ZXN0IgoKICAgIGlmIChmb3BlbihuYW1lIi5pbnAiLCAiciIpKSB7CiAgICAgICAgZnJlb3BlbihuYW1lIi5pbnAiLCAiciIsIHN0ZGluKTsKICAgICAgICBmcmVvcGVuKG5hbWUiLm91dCIsICJ3Iiwgc3Rkb3V0KTsKICAgIH0KCiAgICBuaGFwKCk7CiAgICBnaWFpKCk7CgogICAgcmV0dXJuIDA7Cn0K