def primes(n):
    is_prime = [True] * (n + 1)
    is_prime[0] = False
    is_prime[1] = False
    for i in range(2, int(n**0.5) + 1):
        if not is_prime[i]:
            continue
        for j in range(i * 2, n + 1, i):
            is_prime[j] = False
    return [i for i in range(n + 1) if is_prime[i]]

x=primes(5000000)[100::4000+1][::-1]
n=int(input())
c=0
grid=[[0]*n for i in range(n)]
for i in range(n):
    for j in range(i+1,n):
        grid[i][j]=x[c+j]
        grid[j][i]=x[c+j]
    c+=n-i
for i in grid:
    print(*i)
