Statement is not available in English language
A. Древняя игра
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

В Японии очень популярны старые настольные игры на логику. Одна из таких игр проводится на доске размером $$$n \times m$$$.

В каждой позиции $$$(i, j)$$$, то есть на пересечении $$$i$$$-й сверху строки и $$$j$$$-го слева столбца, может находиться произвольное число фишек, которое мы обозначим за $$$a_{i, j}$$$. Правила самой игры довольно сложные: сложнее, чем шахматы, Го и Сёги, поэтому мы их не будем тут описывать целиком. Однако даже к стартовой расстановке фишек есть требования, про которые и будет эта задача.

Первое правило звучит следующим образом: к началу игры для любых двух соседних по стороне клеток суммарное число фишек в них должно быть нечётным. Более формально, если выполняется $$$|i_1-i_1| + |j_1-j_2| = 1$$$, то должно выполняться условие, что $$$a_{i_1, j_1} + a_{i_2, j_2}$$$ — нечётное число.

Вам дано текущее состояние доски, описанное матрицей текущих значений $$$a_{i, j}$$$. Первый игрок за одно действие может добавить ровно одну фишку на любую клетку поля. Причем у первого игрока будет тем больше преимущество,

  • чем меньше суммарное число фишек на поле после его действий;
  • а при равенстве общего числа фишек — чем лексикографически меньше итоговая матрица $$$a_{i, j}$$$.

Напомним, что матрица $$$X$$$ лексикографически меньше матрицы $$$Y$$$, если после записи каждой из матриц в одну строку (по строкам, сначала выписав первую, затем вторую, и так далее), в первой позиции, где они различаются, в записи матрицы $$$X$$$ стоит меньшее число.

Требуется добиться выполнения требуемого правила, добившись наиболее выгодной для первого игрока стартовой позиции. После внесения изменений выведите итоговую таблицу значений $$$a_{i, j}$$$.

Входные данные

Первая строка содержит два целых числа $$$n$$$ и $$$m$$$ — размеры игровой доски ($$$1 \le n, m \le 100$$$).

В следующих $$$n$$$ строках содержится по $$$m$$$ целых чисел, $$$j$$$-е число в $$$i$$$-й строке равно $$$a_{i,j}$$$ — исходному числу фишек в клетке $$$(i, j)$$$ ($$$0 \le a_{i, j} \le 10^9$$$).

Выходные данные

Выведите $$$n$$$ строк по $$$m$$$ чисел — итоговую таблицу значений $$$a_{i, j}$$$.

Суммарное количество фишек должно быть минимально возможным, для любых соседних по стороне клеток должно выполняться условие, что сумма их значений нечётна, а среди всех таких вариантов итоговая матрица должна быть лексикографически минимальна.

Система оценки

Баллы за подзадачи начисляются только в случае, если все тесты соответствующей подзадачи и необходимых подзадач успешно пройдены.

ПодзадачаБаллы Дополнительные ограничения Необходимые подзадачи Информация о проверке
0–примеры из условияполная
110$$$n = 1$$$; $$$m = 3$$$первая ошибка
210$$$n = 1$$$1первая ошибка
320$$$n, m \le 10$$$0 – 2первая ошибка
420$$$n, m \le 50$$$0 – 3первая ошибка
530нет0 – 4первая ошибка
Пример
Входные данные
2 3
1 1 2
2 2 3
Выходные данные
2 1 2 
3 2 3