Для $n \times m$ матрицы $A$ из 0 и 1 и $m \times p$ матрицы $B$ из 0 и 1 их произведение определяется как $n \times p$ матрица $C$, где $C_{i,j} = \bigoplus_{k=1}^{m} A_{i,k} \& B_{k,j}$ $^\dagger$.
Теперь Link хочет выполнить обратную операцию умножения — деление. Даны $n \times m$ матрица $A$ и $n \times p$ матрица $C$. Вам необходимо найти $m \times p$ матрицу $B$, такую что произведение $A$ и $B$ в точности равно $C$.
$^\dagger$ $\oplus$ обозначает операцию побитового исключающего ИЛИ (XOR), а $\&$ обозначает операцию побитового И (AND). Например: $(0011)_2 \oplus (0101)_2 = (0110)_2$, $(0011)_2 \& (0101)_2 = (0001)_2$.
Входные данные
Каждый файл теста содержит только один набор входных данных.
Первая строка содержит три целых числа $n, m, p$ ($1 \le n, m, p \le 1000$).
Далее следуют $n$ строк, $i$-я из которых содержит $m$ целых чисел $A_{i,1}, A_{i,2}, \dots, A_{i,m}$ ($A_{i,j} \in \{0, 1\}$), представляющих элементы матрицы $A$.
Далее следуют $n$ строк, $i$-я из которых содержит $p$ целых чисел $C_{i,1}, C_{i,2}, \dots, C_{i,p}$ ($C_{i,j} \in \{0, 1\}$), представляющих элементы матрицы $C$.
Выходные данные
Если матрицы $B$, удовлетворяющей условиям, не существует, выведите «No».
Если такая матрица $B$ существует, выведите в первой строке «Yes», а затем выведите $m$ строк, каждая из которых содержит $p$ целых чисел $B_{i,1}, B_{i,2}, \dots, B_{i,p}$ ($B_{i,j} \in \{0, 1\}$), представляющих найденную вами матрицу $B$.
Если существует несколько подходящих матриц $B$, вы можете вывести любую из них.
Примеры
Пример 1
3 2 3 1 0 1 1 1 0 0 0 0 0 1 0 0 0 0
Yes 0 0 0 0 1 0
Пример 2
3 2 3 1 0 1 1 1 0 1 0 0 0 1 0 0 0 1
No