#include <bits/stdc++.h>
 
using namespace std;
 
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define REP(i,n) FOR(i,0,n)
 
int n;
int a[100][100], sum[100][100];
 
bool check(int x, int y) {
    return x >= 0 && x < n && y >= 0 && y < n;
}
 
int main() {
    cin >> n;
     
    REP(i, n) {
        REP(j, n) {
            scanf("%d", &a[i][j]);
             
            sum[i][j] = a[i][j];
            if (i != 0 && j != 0)
                sum[i][j] += sum[i - 1][j] + sum[i][j - 1] - sum[i - 1][j - 1];
            else {
                if (i != 0)
                    sum[i][j] += sum[i - 1][j];
                if (j != 0)
                    sum[i][j] += sum[i][j - 1];
            }
        }
    }
     
    int ans = sum[0][0];
    REP(i, n) REP(j, n) {
        FOR(h, 1, n) FOR(w, 1, n) {
            int nx = j + w, ny = i + h;
            if (!check(nx, ny)) continue;
             
            int tmp;
            if (i != 0 && j != 0)
                tmp = sum[ny][nx] - sum[i - 1][nx] - sum[ny][j - 1] + sum[i - 1][j - 1];
            else {
                if (i == 0 && j == 0)
                    tmp = sum[ny][nx];
                else if (i == 0)
                    tmp = sum[ny][nx] - sum[ny][j - 1];
                else
                    tmp = sum[ny][nx] - sum[i - 1][nx];
            }
             
            ans = max(ans, tmp);
        }
    }
    cout << ans << endl;
    return 0;
}