Чтобы хоть как-то занять Альфа, Вилли Таннер предложил ему любопытную задачу.
У Альфа есть $n$ неотрицательных чисел. Каждое число можно приписать в конец другому и получить новое число. Например, если есть числа $123$ и $456$, из них можно получить либо $123456$, либо $456123$. Задача состоит в том, чтобы, объединив все числа в одно, таким образом получить наибольшее возможное. Так, если у Альфа есть два числа $123$ и $456$, то ответ на задачу будет $456123$.
Вилли схитрил и дал Альфу очень много чисел, но телевизор сам себя не посмотрит, поэтому Альф просит вас написать программу, которая решит эту задачу.
В первой строке входного файла задано число $n$ ($1 \le n \le 10^5$) --- количество чисел данных Альфу. Во второй строке файла через пробел даны $n$ чисел $a_i$ ($0 \le a_i \le 10^9$) --- данные Альфу числа.
В выходной файл через пробел выведите $n$ чисел из входного файла в таком порядке, чтобы при их последовательном соединении получалось наибольшее из возможных чисел.