#include<bits/stdc++.h>
using namespace std;
int n,a[32][32];
int tx[4]={1,-1,0,0};
int ty[4]={0,0,-1,1};
void dfs(int x,int y){
a[x][y]=3;
for(int i=0;i<=3;i++){
int fx=x+tx[i];
int fy=y+ty[i];
if(fx>-1&&fx<=n&&fx>=1&&fx<=n&&a[fx][fy]==0) dfs(x,y);
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if((i==1||i==n||i==1||i==n)&&a[i][j]==0) dfs[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[i][j]==3) cout<<"0 ";
else if(a[i][j]==1) cout<<"1 ";
else cout<<"2 ";
}
}
cout<<endl;
}
/**************************************************************
Problem: 1802
User: zhengyuxuan
Language: C++
Result: Wrong Answer
****************************************************************/