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.*;
import java.math.BigInteger;
import java.lang.Math;

public class Tarun_19
{
	public static void main (String[] args)
	{
		Scanner sc=new Scanner(System.in);
		int t,n,x,y,z,l,r,p,q,f,flag,ans,k,m,tmp;
		String s;
		int i,j;// for array index
		t=1;
// 		t=sc.nextLong();//
		while(t-->0)
		{
		    f=0;flag=0;ans=0;
		    n=sc.nextInt();
		    
		    int N=(int)n;
		    int a[][]=new int[N][N];
		    
		    i=n/2;j=n-1;
		    k=1;
		    while(k<=n*n)
		    {
		        
		        if(i==-1&&j==n)
			    {
				    j=n-2;
				    i=0;
			    }
			    else
			    {
				    if(j==n)
					    j=0;
				    if(i<0)
					    i=n-1;
			    }
			    if(a[i][j]!=0)
			    {
				    j-=2;
				    i++;
				    continue;
			    }
			    else
				a[i][j]=k++;
			    j++;
		    	i--;
		    }
		    
		    for(i=0;i<n;i++)
		    {
		        for(j=0;j<n;j++)
		        {
		            System.out.print(a[i][j]+" ");
		        }
		        System.out.println();
		    }
		  //  System.out.println(ans);
		}
	}
}