Макс и расстояния

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

Макс нашел массив xx из nn целочисленных точек на прямой, упорядоченный по неубыванию. Также у Макса есть две перестановки чисел aa и bb от 11 до nn, которые ему подарили на день рождения.

Макс решил поиграть с ними: он сгенерировал матрицу расстояний dd, каждый элемент которой равен d_i,j=x_a_ix_b_jd\_{i,j} = |x\_{a\_i} - x\_{b\_j}|, то есть d_i,jd\_{i,j} элемент равен расстоянию между a_ia\_i и b_jb\_j точкой.

Макс еще не успел наиграться с массивами, как после очередной уборки Кэти они куда-то потерялись. Все до одного: и xx, и aa, и bb. Макс решил пойти на экстренные меры: у него сохранилась матрица расстояний dd, и он хочет восстановить какой-то неубывающий массив xx, а также две перестановки aa и bb, с помощью которых можно сгенерировать матрицу расстояний, равную dd. Однако, могло случиться так, что Макс ошибся при подсчете dd, и восстановить xx, aa и bb не получится.

Помогите Максу восстановить их.

입력

В первой строке находится натуральное число nn (1n10001 \le n \le 1000). В следующих nn строках находится матрица dd (0d_i,j1090 \le d\_{i,j} \le 10^9). Все числа в матрице --- целые числа.

출력

В первой строке выведите <<YES>>, если существуют такие xx, aa и bb, с помощью которых можно сгенерировать матрицу, равную dd,

во второй строке --- неубыващий массив целых чисел xx (x_i109(|x\_i| \le 10^9; x_ix_i+1x\_i \le x\_{i+1}),

в третьей строке --- перестановку чисел aa от 11 до nn,

в четвертой строке --- перестановку чисел bb от 11 до nn.

Если таких xx, aa и bb не существует --- выведите <<NO>>.

힌트

Обратите внимание, что входные данные могут иметь достаточно большой объем, поэтому рекомендуется использовать быстрые потоки ввода-вывода вашего языка.