Задача №111282. И последние станут первыми
Командная олимпиада, о которой идёт речь в этой задаче, проходила по правилам, похожим на правила олимпиады, в которой вы сейчас участвуете. Отличие было только в одном: при ранжировании команд не учитывается штрафное время. При этом в случае равного количества решённых задач выше в таблице располагается та команда, чьё имя следует раньше в лексикографическом порядке.
Как и сегодня, за час до окончания олимпиады таблица результатов была «заморожена». Каково же было удивление участников, когда при подведении итогов выяснилось, что в окончательной таблице все команды расположились строго в обратном порядке, по отношению к порядку, зафиксированному «заморозкой». Так как в окончательной таблице результатов результаты сдачи каждой из задач участниками не отражены, то вам предлагается определить, могло ли такое быть в принципе, или это результат технического сбоя системы.
Первая строка содержит два натуральных числа: N — количество команд и K — количество задач (1 ≤ N, K ≤ 100).
Далее следуют N строк, описывающих саму таблицу на момент заморозки. i-я строка содержит название команды (строка из строчных латинских символов длины не более 50) и строку длины K из символов ‘ + ’ и ‘ - ’, показывающих успех команды по каждой из задач.
Команды упорядочены от первого места на момент заморозки к последнему.
Гарантируется, что никакие две команды не имеют одинаковое название.
Если порядок команд теоретически мог измениться за последний час соревнований на обратный, то сначала выведите строку «Possible», а затем таблицу окончательных результатов в формате, аналогичном таблице из входного файла (см. пример). Если соревнование так закончиться не могло, то выведите единственную строку «Impossible».
3 4
winner +-++
middle +--+
looser ----
Possible
looser ++++
middle ++-+
winner +-++
3 4
first +-++
second +--+
third ----
Impossible