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('%3s' %(chr(j + 64)) ,end='')
        print();

n = int( input() );
arr = getList(n,n)
for i in range(0,n):
    k = i
    for j in range(0,n):
        arr[i][j] = k + 1
        k += 1
        if i + j == n - 1:
          k = 0
        
printList(arr)
'''
1 2 3 4 5
2 3 4 5 1
3 4 5 1 2

'''
/**************************************************************
	Problem: 1194
	User: admin
	Language: Python
	Result: Accepted
	Time:97 ms
	Memory:34480 kb
****************************************************************/