C. Наименьшая конкатенация строк
ограничение по времени на тест
3 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вам задан набор из n строк a1, a2, ..., an. Вам нужно записать их друг за другом (конкатенировать) в некотором порядке так, чтобы получившаяся строка была лексикографически минимальной.

Выведите лексикографически минимальную конкатенацию заданного набора строк.

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

В первой строке находится целое число n — количество строк в наборе (1 ≤ n ≤ 5·104).

В следующих n строках находится по одной строке ai (1 ≤ |ai| ≤ 50), состоящей из строчных английских букв. Суммарная длина всех строк не превосходит 5·104.

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

Выведите единственную строку a — лексикографически минимальную конкатенацию заданного набора строк.

Примеры
Входные данные
4
abba
abacaba
bcd
er
Выходные данные
abacabaabbabcder
Входные данные
5
x
xx
xxa
xxaa
xxaaa
Выходные данные
xxaaaxxaaxxaxxx
Входные данные
3
c
cb
cba
Выходные данные
cbacbc