def getList(m,n):
    '''
      m 行数
      n 列数
      返回的是m行n列的二维数组,默认值为0
    '''
    ma = [ [0 for i in range(n)] for i in range(m) ]
    return ma
def printList(arr):
    for i in arr:
        for j in i:
            print('%3d' %(j),end='')
        print();
n=int(input())
arr = getList(n,n)
for i in range(0,n):
    for j in range(0,n):
        if i+j==n-1:
            arr[i][j] = 1
        # else:
        #     arr[i][j] = 0  #可加可不加  默认值为0
       
printList(arr)
/**************************************************************
	Problem: 1191
	User: admin
	Language: Python
	Result: Accepted
	Time:99 ms
	Memory:34480 kb
****************************************************************/