#include <algorithm>
#include <iostream>
using namespace std;

int n,s[100+10][100+10];

int biggest(int n){
    int M=-10000-10;
    for(int p=0;p<n;p++){
        for(int q=0;q<n;q++){
            if(s[p][q]>M) M=s[p][q];
            
            for(int r=0;r<=p;r++) if(s[p][q]-s[r][q]>M) M=s[p][q]-s[r][q];
            for(int t=0;t<=q;t++) if(s[p][q]-s[p][t]>M) M=s[p][q]-s[p][t];
            
            for(int r=0;r<p;r++){
                for(int t=0;t<q;t++){
                    if(s[p][q]-s[r][q]-s[p][t]+s[r][t]>M) M=s[p][q]-s[r][q]-s[p][t]+s[r][t];
                }
            }
        }
    }
    return M;
}

int main(){
    cin >> n;
    int a[100+10][100+10];
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++) cin >> a[i][j];
    }
    
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            cout << a[i][j] << " ";
        }
        cout << endl;
    }

    
    s[0][0]=a[0][0];
    for(int i=1;i<n;i++) s[i][0]=s[i-1][0]+a[i][0];
    for(int j=1;j<n;j++) s[0][j]=s[0][j-1]+a[0][j];
    
    for(int i=1;i<n;i++){
        for(int j=1;j<n;j++) s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a[i][j];
    }
    
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            cout << s[i][j] << " ";
        }
        cout << endl;
    }

    
    cout << biggest(n) << endl;
}