n = int(input()) matrix = [list(map(int,input().strip().split())) for _ in range(n)] def is_upper_triangular(m,matrix): for i in range(1,n): for j in range(i): if matrix[i][j] != 0: return "NO" return "YES" print(is_upper_triangular(n,matrix))