def is_upper_triangular_matrix(ls: list[int]): """判断二维列表是否满足上三角矩阵的判定""" for row in range(len(ls)): for column in range(len(ls[0])): if column < row and ls[row][column] != 0: return False return True n = int(input()) nums = [] for i in range(n): nums.append(list(map(int, input().split()))) print('YES' if is_upper_triangular_matrix(nums) else 'NO')