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))