Question: Code in C++ please: You're given a list of n strings a 1 , a 2 ,..., a n . You'd like to concatenate them

Code in C++ please:

You're given a list of n strings a1,a2,...,an. You'd like to concatenate them together in some order such that the resulting string would be lexicographically smallest.

Given the list of strings, output the lexicographically smallest concatenation.

Input

The first line contains integer n the number of strings (1n5104).

Each of the next n lines contains one string ai (1|ai|50) consisting of only lowercase English letters. The sum of string lengths will not exceed 5104.

Output

Print the only string a the lexicographically smallest string concatenation.

Examples

Input

4 abba abacaba bcd er 

Output

abacabaabbabcder 

Input

5 x xx xxa xxaa xxaaa 

Output

xxaaaxxaaxxaxxx 

Input

3 c cb cba 

Output

cbacbc

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!