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:
import java.io.*;
import java.math.*;
import java.security.*;
import java.text.*;
import java.util.*;
import java.util.concurrent.*;
import java.util.regex.*;

public class Solution {

    static void generateSquare(int n) {
        int[][] magicSquare = new int[n][n];

        // Initialize position for 1
        int i = n / 2;
        int j = n - 1;

        // One by one put all values in magic square
        for (int num = 1; num <= n * n;) {
            if (i == -1 && j == n) //3rd condition
            {
                j = n - 2;

                i = 0;
            } else {
                //1st condition helper if next number 
                // goes to out of square's right side
                if (j == n) {
                    j = 0;
                }

                //1st condition helper if next number is 
                // goes to out of square's upper side
                if (i < 0) {
                    i = n - 1;
                }
            }

            //2nd condition
            if (magicSquare[i][j] != 0) {
                j -= 2;
                i++;
                continue;
            } else //set number
            {
                magicSquare[i][j] = num++;
            }

            //1st condition
            j++;
            i--;
        }

        // print magic square
       for (i = 0; i < n; i++) {
            for (j = 0; j < n; j++) {
                System.out.print(magicSquare[i][j] + " ");
            }
            System.out.println();
        }
    }

    // driver program
    public static void main(String[] args) {
        // Works only when n is odd
        Scanner scanner = new Scanner(System.in);
        int n = 0;
        n = scanner.nextInt();
        generateSquare(n);
    }
}