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.util.Scanner;

public class MagicOddSquare {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Scanner input = new Scanner(System.in);
		int counter=0;
		int n = input.nextInt();
		int val =1;
		int x1 = n/2;
		int x2 = n/2;
		int y = 0;
		int value=  1;
		int[][] arr = new int[n][n];
		
		for( y=0; y<=n/2;y++){
			for(int i=x1; i<=x2;i++){
				arr[i][y] = value;
				value+=2;
			}
			x1--;
			x2++;
			
		}
		
		x1+=2;
		x2-=2;
		//System.out.println(x1+" "+x2);
		for( y=n/2+1; y<n;y++){
			for(int i=x1; i<=x2;i++){
				arr[i][y] = value;
				value+=2;
			}
			x1++;
			x2--;
			
		}
		 val=2;
		for(int i=0; i<n;i++){
			for(int j=0; j<n;j++){
				if(arr[i][j]==0){arr[i][j] = val;val+=2;}
			}
		}
		for(int i=0; i<n;i++){
			for(int j=0;j<n;j++)System.out.print(arr[i][j]+" ");
		   System.out.println();
		}
		
		
				
	}

}