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())

odds = [[False] * n for _ in range(n)]
numbers = [[None] * n for _ in range(n)]


for i in range(n//2):
	for j in range(n):
		mid = n // 2
		if mid-i <= j <= mid+i:
			odds[i][j] = True

odds[n//2] = [True] * n

for i in range(n//2+1, n):
	for j in range(n):
		mid = n // 2
		dist = n - i - 1
		if mid-dist <= j <= mid+dist:
			odds[i][j] = True



# Fill the table
odd, even = 1, 2
for i in range(n):
	for j in range(n):
		if odds[i][j]:
			numbers[i][j] = odd
			odd += 2
		else:
			numbers[i][j] = even
			even += 2

print('\n'.join(' '.join(map(str, row)) for row in numbers))