#include <bits/stdc++.h>
using namespace std;
int n, x[305 + 305][305], d[305][305], b[305][305];
int main() {
  scanf("%d", &n);
  for (int i = (1); i <= (n); i++)
    for (int j = (1); j <= (n); j++) scanf("%d", &x[i + j - 1][j]);
  d[1][1] = b[1][1] = x[1][1];
  for (int i = (2); i <= (n + n - 1); i++) {
    int l = max(0, i - n) + 1, h = min(n, i);
    int L = max(0, i - 1 - n) + 1, H = min(n, i - 1);
    for (int j = (l); j <= (h); j++)
      for (int k = (j); k <= (h); k++) {
        d[j][k] = 1 << 31;
        for (int y = (0); y <= (1); y++)
          for (int z = (0); z <= (1); z++) {
            if (j - y < L || k - z > H || j - y > k - z) continue;
            d[j][k] = max(d[j][k], b[j - y][k - z]);
          }
        d[j][k] += x[i][j] + x[i][k] * (j != k);
      }
    for (int j = (l); j <= (h); j++)
      for (int k = (j); k <= (h); k++) b[j][k] = d[j][k];
  }
  printf("%d\n", d[n][n]);
}
