#include<bits/stdc++.h>
using namespace std;
int a[200][200];
int n,c=1;
int main()
{
    cin>>n;
    for(int i=1;i<=n*2+1;i++){
        for(int j=1;j<=n*2+1;j++){
        	if(i<=n&&j<=n){
        		if(i<=j){
        			a[i][j]=n+1-i;
        			
				}
				else{
					a[i][j]=n+1-j;
				
				}
			}
			else if(i>=n&&j>=n){
        		if(i<=j){
        			a[i][j]=j-n-1;
        			a[i][n*2+1-j+1]=a[i][j];
        			a[n*2+1-i+1][j]=a[i][j];
				}
				else{
					a[i][j]=i-n-1;
					a[n*2+1-i+1][j]=a[i][j];
					a[i][n*2+1-j+1]=a[i][j];
				}
			}
        }
    }
    for(int i=1;i<=n*2+1;i++){
        for(int j=1;j<=n*2+1;j++){
				cout<<setw(2)<<a[i][j];
        }
        cout<<endl;
    }
    return 0;
}
/**************************************************************
	Problem: 1209
	User: xuanhua
	Language: C++
	Result: Accepted
	Time:12 ms
	Memory:2228 kb
****************************************************************/