eolymp
bolt
Try our new interface for solving problems
Problems

Рамка

Рамка

Time limit 1 second
Memory limit 64 MiB

Alpha-версия системы "Windows 0.9" работала в текстовом режиме. Единственное, что она умела делать — рисовать на экране окна (она не умела убирать нарисованные окна, переносить окна, изменять их размер). При этом у окна рисовалась рамка, состоящая из одного и того же символа (который у каждого окна был свой), внутренность же окна оставалась такой, какой она была до прорисовки окна.

Обои в "Windows 0.9" были по тем временам необычайно красивыми — весь экран заполнялся символом "." (точка). Таким образом, в процессе работы системы экран мог выглядеть например так, как это показано в примере входного файла.

Напишите программу, которая бы по виду экрана восстанавливала, в каком порядке происходило рисование окон.

Замечания. Вы можете считать, что у каждого окна видно (то есть не было перекрыто рамками других окон) как минимум по одному символу на каждой из сторон окна (левой, верхней, правой, нижней). Угловой символ считается принадлежащим сразу обоим сторонам.

Для рамок окон используются латинские буквы и цифры. Разные окна обрамляются разными символами. Большие и маленькие буквы считаются различными.

Решение всегда существует.

Input data

В первой строке входного файла записаны два числа N и M, задающие соответственно ширину и высоту экрана (1N, M100). В последующих строках изображен экран. В конце строк могут быть пробельные символы (первые Nсимволов строки — не пробелы).

Output data

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