#include <cstring>
#include <algorithm>
#include <iostream>
#include <cstdio>
using namespace std;
const int maxn=1000;
int a[maxn];
int b[maxn];
int aa[maxn][maxn];
int bb[maxn][maxn];
int maxse(int n)
{
int c=-100;
for (int i=0;i<n;i++)
{
if (i==0) {b[i]=a[0];}
else
{
b[i]=max(b[i-1]+a[i],a[i]);
}
c=max(c,b[i]);
}
return c;
}
int income(int n)
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
scanf("%d",&aa[i][j]);
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(i==0){bb[i][j]=aa[0][j];}
else
{
bb[i][j]=bb[i-1][j]+aa[i][j];
}
}
}
}
int maxsese(int n)
{
int d=-100;
for(int i=0;i<n;i++)
{
for(int j=i;j<n;j++)
{
for(int k=0;k<n;k++)
{
if(i==0){a[k]=bb[0][k];}
else
{
a[k]=bb[j][k]-bb[i-1][k];
}
}
d=max(maxse(n),d);
}
}
return d;
}
int main()
{
int n,e;
scanf("%d",&n);
income(n);
e=maxsese(n);
printf("%d",e);
return 0;
}