n=int(input()) m=[None]*n for i in range(n): m[i] = [None]*n d=0 v,x,y=1,0,0 while v <= n*n: if 0 <= x < n and 0 <= y < n and m[y][x] is None: m[y][x] = str(v).rjust(3, '0') if d % 4 == 0: x += 1 elif d % 4 == 1: y += 1 elif d % 4 == 2: x -= 1 else: y -= 1 v += 1 else: if d % 4 == 0: x -= 1 elif d % 4 == 1: y -= 1 elif d % 4 == 2: x += 1 else: y += 1 d += 1 if d % 4 == 0: x += 1 elif d % 4 == 1: y += 1 elif d % 4 == 2: x -= 1 else: y -= 1 for i in range(n): print(' '.join(m[i]))