#include<bits/stdc++.h>
using namespace std;
int mat[101][101], pre[101][101];
int n, m;
// pre[i][j] -- sum from (1, 1) to (i, j)
void get_sum(){
for(int i = 1; i <= n; i++){
for(int j = 1; j <= m; j++){
pre[i][j] = mat[i][j] + pre[i-1][j] + pre[i][j-1] - pre[i-1][j-1];
}
}
}
int query(int t, int l, int b, int r){
return pre[b][r] - pre[t-1][r] - pre[b][l-1] + pre[t-1][l-1];
}
int main(){
cin >> n; m = n;
for(int i=1; i<=n; i++){
for(int j=1; j<=m; j++){
cin >> mat[i][j];
}
}
get_sum();
int mx = 1e-9;
for(int top = 1; top <= n; top++){
for(int left = 1; left <= m; left++){
for(int bottom = top; bottom <= n; bottom++){
for(int right = left; right <= m; right++){
mx = max(mx, query(top, left, bottom, right));
}
}
}
}
cout << mx << endl;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IG1hdFsxMDFdWzEwMV0sIHByZVsxMDFdWzEwMV07CmludCBuLCBtOwoKLy8gcHJlW2ldW2pdIC0tIHN1bSBmcm9tICgxLCAxKSB0byAoaSwgaikKdm9pZCBnZXRfc3VtKCl7Cglmb3IoaW50IGkgPSAxOyBpIDw9IG47IGkrKyl7CgkJZm9yKGludCBqID0gMTsgaiA8PSBtOyBqKyspewoJCQlwcmVbaV1bal0gPSBtYXRbaV1bal0gKyBwcmVbaS0xXVtqXSArIHByZVtpXVtqLTFdIC0gcHJlW2ktMV1bai0xXTsgCgkJfQoJfQp9CgppbnQgcXVlcnkoaW50IHQsIGludCBsLCBpbnQgYiwgaW50IHIpewoJcmV0dXJuIHByZVtiXVtyXSAtIHByZVt0LTFdW3JdIC0gcHJlW2JdW2wtMV0gKyBwcmVbdC0xXVtsLTFdOwp9CgoKaW50IG1haW4oKXsKCWNpbiA+PiBuOyBtID0gbjsKCWZvcihpbnQgaT0xOyBpPD1uOyBpKyspewoJCWZvcihpbnQgaj0xOyBqPD1tOyBqKyspewoJCQljaW4gPj4gbWF0W2ldW2pdOwoJCX0KCX0KCWdldF9zdW0oKTsKCWludCBteCA9IDFlLTk7Cglmb3IoaW50IHRvcCA9IDE7IHRvcCA8PSBuOyB0b3ArKyl7CgkJZm9yKGludCBsZWZ0ID0gMTsgbGVmdCA8PSBtOyBsZWZ0KyspewoJCQlmb3IoaW50IGJvdHRvbSA9IHRvcDsgYm90dG9tIDw9IG47IGJvdHRvbSsrKXsKCQkJCWZvcihpbnQgcmlnaHQgPSBsZWZ0OyByaWdodCA8PSBtOyByaWdodCsrKXsKCQkJCQlteCA9IG1heChteCwgcXVlcnkodG9wLCBsZWZ0LCBib3R0b20sIHJpZ2h0KSk7CQkJCgkJCQl9CgkJCX0KCQl9Cgl9Cgljb3V0IDw8IG14IDw8IGVuZGw7Cn0=