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 JAVA):

Solution:
/**
 * Created by Ilshat on 18.08.2016.
 */

import java.io.*;
import java.util.*;


public class task {



    public static void main(String[] args) throws IOException {
        Scanner in = new Scanner(System.in);
        PrintWriter out = new PrintWriter(System.out);
        int n = in.nextInt();

        int a[][] = new int[n][n];

        int q = -1;

        int m  = n / 2;

        for (int i = 0; i <= m; i++) {
            int j = 1;
            a[i][m] = q += 2;
            while (j <= i) {
                a[i][m - j] = q += 2;
                a[i][m + j] = q += 2;
                j++;
            }
        }
        for (int i = m + 1; i < n; i++) {
            int j = 1;
            a[i][m] = q += 2;
            while (j <= (n - i - 1)) {
                a[i][m - j] = q += 2;
                a[i][m + j] = q += 2;
                j++;
            }
        }
        q = 0;
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                if (a[i][j] == 0) a[i][j] = q += 2;
                out.print(a[i][j] + " ");
            }
            out.println();
        }
        out.close(); //
    }

}