#include<cstdio>
#include<algorithm>
using namespace std;
int mg[1005][1005],l1=0,l2=0,f[1005],a[1005][1005];
int c1,c2,g1,g2,g3,g4,g5,g6,g7,g8;
int x1,y1,x2,y2,x3,y3,x4,y4;
int main()
{
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
scanf("%d",&mg[i][j]);
}
}
for(int i=1;i<=n;i++)
{
l1+=mg[i][i];
l2+=mg[i][n+1-i];
}
f[1]=l1;
f[n]=l2;
for(int k=2;k<n;k++)
{
for(int i=1;i<=n;i++)
{
f[k]+=mg[i][k+1-i];
}
for(int i=1;i<=n+1-k;i++)
{
f[k]+=mg[k-1+i][i];
}
for(int i=1;i<=k;i++)
{
f[k]+=mg[n-k+i][n+1-i];
}
for(int i=1;i<=n+1-k;i++)
{
f[k]+=mg[i][k-1+i];
}
f[k]=f[k]-mg[1][k]-mg[k][1]-mg[n+1-k][n]-mg[n][n+1-k];
}
int maxn=0;
for(int k=1;k<n;k++)
{
for(int c=k+1;c<=n;c++)
{
int sum=f[k]+f[c];
int t;
if((k+c)%2==0&&(c-k)%2==0)
{
x1=(c-k)/2+1;
y1=(k+c)/2;
x2=(k+c)/2;
y2=(c-k)/2+1;
x3=n-(k+c)/2+1;
y3=n-(c-k)/2;
x4=n-(c-k)/2;
y4=n-(k+c)/2+1;
if(k!=1&&c!=n)
{
if(sum-mg[x1][y1]-mg[x2][y2]-mg[x3][y3]-mg[x4][y4]>maxn)
{
maxn=sum-mg[x1][y1]-mg[x2][y2]-mg[x3][y3]-mg[x4][y4];
}
}
else if(k==1&&c==n)
{
if(sum-mg[x1][y1]>maxn)
{
maxn=sum-mg[x1][y1];
}
}
else
{
if(x1==x2)
{
if(sum-mg[x1][y1]-mg[x3][y3]>maxn)
{
maxn=sum-mg[x1][y1]-mg[x3][y3];
}
}
else
{
if(sum-mg[x2][y2]-mg[x3][y3]>maxn)
{
maxn=sum-mg[x2][y2]-mg[x3][y3];
}
}
}
}
else
{
if(sum>maxn)
{
maxn=sum;
}
}
}
}
printf("%d",maxn);
return 0;
}