#!/bin/python3 import sys n = int(input().strip()) # your code goes here A=[] for a in range(1,n): B=[] for b in range(1,n): P={(0,0)} c=0 f=True V=set() while f: c+=1 Q=set() V=V|P for p in P: if (p[0]==n-1)&(p[1]==n-1): f=False break if (0<=p[0]+a<n)&(0<=p[1]+b<n): Q.add((p[0]+a,p[1]+b)) if (0<=p[0]-a<n)&(0<=p[1]-b<n): Q.add((p[0]-a,p[1]-b)) if (0<=p[0]-a<n)&(0<=p[1]+b<n): Q.add((p[0]-a,p[1]+b)) if (0<=p[0]+a<n)&(0<=p[1]-b<n): Q.add((p[0]+a,p[1]-b)) if (0<=p[0]+b<n)&(0<=p[1]+a<n): Q.add((p[0]+b,p[1]+a)) if (0<=p[0]-b<n)&(0<=p[1]-a<n): Q.add((p[0]-b,p[1]-a)) if (0<=p[0]-b<n)&(0<=p[1]+a<n): Q.add((p[0]-b,p[1]+a)) if (0<=p[0]+b<n)&(0<=p[1]-a<n): Q.add((p[0]+b,p[1]-a)) P=set() P=P|Q P=P-V if len(P)==0: break if not f: B.append(c-1) else: B.append(-1) A.append(B) for a in A: for b in a: print(b,end= " ") print("")