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:
n = int(input())
from collections import deque
odd = deque([i for i in range(1, n * n + 1) if i % 2 == 1])
even = deque([i for i in range(1, n * n + 1) if i % 2 == 0])

ans = [[] for _ in range(n)]

def populate(r, o):
    k = (n - o) // 2
    for _ in range(k):
        ans[r].append(even.popleft())
    for _ in range(o):
        ans[r].append(odd.popleft())
    for _ in range(k):
        ans[r].append(even.popleft())

for i in range(n // 2):
    o = 2 * i + 1
    populate(i, o)
    populate(n - 1 - i, o)

populate(n // 2, n)

for row in ans:
    print(*row)