Problem: Find an n × n matrix with different numbers from 1 to n2, so the sum in each row, column and both main diagonals are odd.

Input

The only line contains odd integer n (1 ≤ n ≤ 49).

Output

Print n lines with n integers. All the integers should be different and from 1 to n2. The sum in each row, column and both main diagonals should be odd.

Examples

Input

1


Output

1


Input

3


Output

2 1 4
3 5 7
6 9 8

Solution (in PYTHON3):

Solution:
#import sys
#sys.stdin = open('in', 'r')
n = int(input())
#a = [int(x) for x in input().split()]
#n,m = map(int, input().split())

r = [[0]*n for i in range(n)]
c = n // 2
cur = 1
for i in range(n):
    r[c][i] = cur
    cur += 2
for i in range(n):
    if i != c:
        r[i][c] = cur
        cur += 2

if cur < n*n:
    for i in range(1, c + 1):
        for j in range(1, c + 1):
            r[c-i][c+j] = cur
            cur += 2
            r[c-i][c-j] = cur
            cur += 2
            r[c+i][c+j] = cur
            cur += 2
            r[c+i][c-j] = cur
            cur += 2
            if cur >= n*n:
                break
        if cur >= n*n:
            break

cur = 2
for i in range(n):
    for j in range(n):
        if r[i][j] == 0:
            r[i][j] = cur
            cur += 2

for i in range(n):
    print(str.join(' ', map(str,r[i])))