#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
****************************************************************/