Прогрессивный квадрат размера \(n\) — это матрица размера \(n \times n\). Максим выбирает три натуральных числа \(a_{1,1}\), \(c\) и \(d\) и строит прогрессивный квадрат по следующим правилам:
\(\)a_{i+1,j} = a_{i,j} + c\(\)
\(\)a_{i,j+1} = a_{i,j} + d\(\)
Например, если \(n = 3\), \(a_{1,1} = 1\), \(c=2\) и \(d=3\), то прогрессивный квадрат выглядит следующим образом:
\(\) \begin{pmatrix} 1 & 4 & 7 \\ 3 & 6 & 9 \\ 5 & 8 & 11 \end{pmatrix} \(\)
В прошлом месяце Максим построил прогрессивный квадрат и запомнил значения \(n\), \(c\) и \(d\). Недавно он нашёл массив \(b\) из \(n^2\) целых чисел, идущих в случайном порядке и хочет убедиться, что эти элементы являются элементами того самого квадрата.
Можно показать, что при любых значениях \(n\), \(a_{1,1}\), \(c\) и \(d\) существует ровно один прогрессивный квадрат, удовлетворяющий всем правилам.
Выходные данные
Для каждого набора входных данных в отдельной строке выведите «YES», если прогрессивный квадрат для данных \(n\), \(c\) и \(d\) может быть составлен из элементов массива \(a\), в противном случае выведите «NO».
Вы можете выводить каждую букву в любом регистре (строчную или заглавную). Например, строки «yEs», «yes», «Yes» и «YES» будут приняты как положительный ответ.