#include<iostream>
using namespace std;
int main(){
int n,i,j,s;
cin>>n;
int a[2*n+1][2*n+1];
for(i=0;i<n+1;i++){
s=n;
for(j=0;j<n+1;j++){
a[i][j]=s;
if(j<i) s--;
}
for(j=n+1;j<2*n+1;j++){
if(j>2*n-i) s++;
a[i][j]=s;
}
}
for(i=n+1;i<2*n+1;i++){
s=n;
for(j=0;j<n+1;j++){
a[i][j]=s;
if(j<2*n-i) s--;
}
for(j=n+1;j<2*n+1;j++){
if(j>i) s++;
a[i][j]=s;
}
}
for(i=0;i<2*n+1;i++){
for(j=0;j<2*n+1;j++) printf("%2d",a[i][j]);
cout<<endl;
}
return 0;
}
/**************************************************************
Problem: 1209
User: panjinyan
Language: C++
Result: Accepted
Time:10 ms
Memory:2076 kb
****************************************************************/