n=gets.to_i a=(1..n).map{(1..n).map{0}} z=0 (n/2).times{|k| k.upto(n-k-2){|y|a[k][y]=z+=1} k.upto(n-k-2){|x|a[x][-1-k]=z+=1} (n-k-1).downto(k+1){|y|a[-1-k][y]=z+=1} (n-k-1).downto(k+1){|x|a[x][k]=z+=1} } n%2>0&&a[n/2][n/2]=z+1 a.map{|r|puts r.map{|t|[t/100,t/10%10,t%10].join}.join(' ')}