def pixel(n, x,y):
  ma = max(x,y)+1
  mi = min(x,y)
  o= min(n-ma,mi)
  l= max(n-2*(o+1),0)
  p= x+y - 2*o
  if x<y: p= 4*(l+1)-p
  return p+l*l


from sys import stdout as out

def print_grid(n):
  print '\nGenerating for N = %d\n' %n
  for y in xrange(n):
    for x in xrange(n):
      out.write(' %2d'%pixel(n,x,y))
    print

for n in [1,2,3,4,5,6,7,8,9]: print_grid(n)