#include <cstring>
#include <iostream>
#include <algorithm>

using namespace std;

int N;
int A[52][52], S[52][52];
int result = -0x3f3f3f3f;

int sum(int i1, int j1, int i2, int j2)
{
	if (i1 > i2 || j1 > j2) return 0;
	return S[i2][j2] - S[i2][j1 - 1] - S[i1 - 1][j2] + S[i1 - 1][j1 - 1];
}

int main()
{
	cin.sync_with_stdio(false);
	
	cin >> N;
	for (int i = 1; i <= N; ++i)
		for (int j = 1; j <= N; ++j)
		{
			cin >> A[i][j];
			S[i][j] = A[i][j] + S[i - 1][j] + S[i][j - 1] - S[i - 1][j - 1];
		}
	
	for (int i = 1; i <= N; ++i)
		for (int j = 1; j <= N; ++j)
			for (int k = i; k <= N; ++k)
				for (int l = j; l <= N; ++l)
				{
					if (i == k)
					{
						result = max(result, sum(i, j, i, l));
						continue;
					}
					if (j == l)
					{
						result = max(result, sum(i, j, k, j));
						continue;
					}
					
					result = max(result, sum(i, j, i, l) + sum(k, j, k, l) + sum(i + 1, j, k - 1, j) + sum(i + 1, l, k - 1, l));
				}
	
	cout << result << '\n';
}