import sys sys.setrecursionlimit(10**7) def I(): return int(sys.stdin.readline().rstrip()) def MI(): return map(int,sys.stdin.readline().rstrip().split()) def LI(): return list(map(int,sys.stdin.readline().rstrip().split())) def LI2(): return list(map(int,sys.stdin.readline().rstrip())) def S(): return sys.stdin.readline().rstrip() def LS(): return list(sys.stdin.readline().rstrip().split()) def LS2(): return list(sys.stdin.readline().rstrip()) N = I() M = N//2 ANS = [[0]*N for _ in range(N)] for i in range(M): ANS[2*i][2*i+1] = 1 ANS[2*i+1][2*i] = 2 ANS[2*i+1][2*i+1] = 2 for j in range(i): ANS[2*i][2*j] = 2 ANS[2*i+1][2*j] = 2 ANS[2*i][2*j+1] = 2 ANS[2*i+1][2*j+1] = 2 for i in range(N): ans = ''.join([str(a) for a in ANS[i]]) print(ans)