E. Обмены в строке
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Изначально была дана строка s длины n, состоящая из строчных латинских букв. Её скопировали ровно k раз, получив при этом k одинаковых строк s1, s2, ..., sk. После этого в каждой из них поменяли местами ровно одну пару символов (возможно, одинаковых, но находящихся на разных позициях).

Вам необходимо по заданным k строкам s1, s2, ..., sk восстановить любую подходящую строку s. Обратите внимание, что суммарная длина всех строк не превосходит 5000 (то есть k·n ≤ 5000).

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

В первой строке задано два целых числа k и n (1 ≤ k ≤ 2500, 2 ≤ n ≤ 5000, k · n ≤ 5000) — количество получившихся строк и длина каждой из них.

В следующих k строках заданы сами строки s1, s2, ..., sk, состоящие из строчных латинских букв. Гарантируется, что длина каждой из строк равна n.

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

В единственной строке выведите любую подходящую строку s, либо же «-1» (без кавычек), если такой строки не существует.

Примеры
Входные данные
3 4
abac
caab
acba
Выходные данные
acab
Входные данные
3 4
kbbu
kbub
ubkb
Выходные данные
kbub
Входные данные
5 4
abcd
dcba
acbd
dbca
zzzz
Выходные данные
-1
Примечание

В первом тестовом примере строка s1 получается из строки acab перестановкой местами 2 и 4 символов, строка s2 получается перестановкой 1 и 2 символов, а строка s3 — 3 и 4 символов.

Во втором тестовом примере s1 получается из строки kbub перестановкой 3 и 4 символов, s2 — перестановкой 2 и 4 символов, а s3 — перестановкой 1 и 3 символов.

В третьем тестовом примере невозможно получить никакую строку, удовлетворяющую условиям.