import java.util.*; public class Main{ public static void print(String a){ System.out.println(a); } public static void print(int a){ System.out.println(a); } public static void print(long a){ System.out.println(a); } public static int pow(int a,int b){ int res=1; while (b>0){ if (b%2==1){ res*=a; } a*=a;b>>=1; } return res; } public static int pow(int a,int b,int mod){ int res=1; while (b>1){ if (b%2==1){ res=res*a%mod; } a=a*a%mod;b>>=1; } return res; } public static long pow(long a,long b){ long res=1; while (b>0){ if (b%2==1){ res*=a; } a*=a;b>>=1; } return res; } public static long pow(long a,long b,long mod){ long res=1; while (b>1){ if (b%2==1){ res=res*a%mod; } a=a*a%mod;b>>=1; } return res; } public static int abs(int a){ if (a<0){ return -a; } return a; } public static long abs(long a){ if (a<0){ return -a; } return a; } public static int gcd(int x,int y){ if (Math.min(x,y)==0){ return Math.max(x,y); } int z; while (x%y>0){ z=x%y; x=y;y=z; } return y; } public static long gcd(long x,long y){ if (Math.min(x,y)==0){ return Math.max(x,y); } long z; while (x%y>0){ z=x%y; x=y;y=z; } return y; } public static void main(String[] args){ Scanner sc=new Scanner(System.in); int n=sc.nextInt(); String [][] a=new String [n][n]; int b=0;int c=0;int d=0; while (d=0 && a[b][c]==null){ d++; String p=""+d; while (p.length()<3){ p="0"+p; } a[b][c]=p; c--; } c++;b--; while (b>=0 && a[b][c]==null){ d++; String p=""+d; while (p.length()<3){ p="0"+p; } a[b][c]=p;b--; } b++;c++; } for (int i=0;i