Есть прямоугольная таблица размером N строк на M столбиков. В каждой клетке записано целое число. По ней можно пройти сверху вниз, начиная из любой клетки верхней строки, дальше каждый раз переходя в одну из "нижних соседних" клеток (иными словами, из клетки с номером (i, j) можно перейти или на (i+1, j-1), или на (i+1, j), или на (i+1, j+1); в случае j=M последний из трёх описанных вариантов становится невозможным, а в случае j=1 - первый) и закончить маршрут в какой-нибудь клетке нижней строки.
Напишите программу, которая будет находить максимально возможную нечётную сумму значений пройденных клеток среди всех допустимых путей. Обратите внимание, что нечётной должна быть именно сумма; никаких ограничений на чётность/нечётность отдельных слагаемых нет.
В первой строке записаны N и M - количество строчек и количество столбиков (1 ≤ N, M ≤ 200), дальше в каждой из следующих N строк записано ровно M разделённых пробелами целых чисел (каждое не превышает по модулю 10^6) - значения клеток таблицы.
Вывести единственное число (найденную максимальную среди нечётных сумм), либо строку "impossible" (без кавычек, маленькими латинскими буквами). Строка "impossible" должна выводиться только в том случае, когда абсолютно все маршруты указанного вида имеют чётные суммы.
Примечание: Вообще-то максимально возможная сумма - 42 = 15+9+9+9, но число 42 чётное. Поэтому ответом будет максимальная среди нечётных сумма 39 = 15+9+9+6, которая достигается по маршруту a[1][2], a[2][1], a[3][1], a[4][1].