#include<stdio.h>
#include<algorithm>
using namespace std;

#define NMAX 1005

int a[NMAX][NMAX],n,sol = -1000000000;
int d[NMAX],stanga[NMAX],dreapta[NMAX];

int main ()
{
    int i,j;

  //  freopen("a.in","r",stdin);
   // freopen("a.out","w",stdout);

    scanf("%d",&n);
    for(i = 1; i <= n; i++)
        for(j = 1; j <= n; j++)
            scanf("%d",&a[i][j]);

    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n; j++)
            d[j] = a[i][j] + max(d[j],0);
        for(j = 1; j <= n; j++)
            dreapta[j] = max(d[j],dreapta[j - 1] + a[i][j]);
        for(j = n; j >= 1; j--)
            stanga[j] = max(d[j], stanga[j + 1] + a[i][j]);
        for(j = 1; j <= n; j++)
        {
            d[j] = max(d[j], stanga[j]);
            d[j] = max(d[j], dreapta[j]);
            sol = max(sol, d[j]);
        }
    }
    printf("%d\n",sol);

    return 0;
}