# (1, 2, 3, 4) (1, ) from itertools import permutations n = int(input()) def pri(P): for i in range(n): print(*P[i * n : (i + 1) * n]) N = n * n a = [] for i in range(n): a += list(map(int, input().split())) from collections import defaultdict from random import sample d = defaultdict(lambda : None) p = tuple(range(N)) for _ in range(500): p = sample(p, N) s = 0 for i in range(N): s += p[i] * a[i] if d[s] == None: d[s] = p elif d[s] != p: P = d[s] Q = p print("Yes") pri(P) pri(Q) break else: print("No")