#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define int long long
#define pb push_back
#define all(x) (x).begin(),(x).end()
#define fi first
#define se second
int const MAXN=1e5+10;
int const INF=1e18;
void open(){
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
// freopen(TASK".INP","r",stdin);
// freopen(TASK".OUT","w",stdout);
}
bool compareVal(string a,string b){
return a+b>b+a;
}
int n;
string a[MAXN];
signed main(){
open();
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+n+1,compareVal);
for(int i=1;i<=n;i++){
cout<<a[i];
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBpbnQgbG9uZyBsb25nCiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgYWxsKHgpICh4KS5iZWdpbigpLCh4KS5lbmQoKQojZGVmaW5lIGZpIGZpcnN0CiNkZWZpbmUgc2Ugc2Vjb25kCgppbnQgY29uc3QgTUFYTj0xZTUrMTA7CmludCBjb25zdCBJTkY9MWUxODsKCnZvaWQgb3BlbigpewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKE5VTEwpOyBjb3V0LnRpZShOVUxMKTsKLy8gICAgZnJlb3BlbihUQVNLIi5JTlAiLCJyIixzdGRpbik7Ci8vICAgIGZyZW9wZW4oVEFTSyIuT1VUIiwidyIsc3Rkb3V0KTsKfQoKYm9vbCBjb21wYXJlVmFsKHN0cmluZyBhLHN0cmluZyBiKXsKICAgIHJldHVybiBhK2I+YithOwp9CgppbnQgbjsKc3RyaW5nIGFbTUFYTl07CgpzaWduZWQgbWFpbigpewogICAgb3BlbigpOwogICAgY2luPj5uOwoKICAgIGZvcihpbnQgaT0xO2k8PW47aSsrKXsKICAgICAgICBjaW4+PmFbaV07CiAgICB9CiAgICBzb3J0KGErMSxhK24rMSxjb21wYXJlVmFsKTsKCiAgICBmb3IoaW50IGk9MTtpPD1uO2krKyl7CiAgICAgICAgY291dDw8YVtpXTsKICAgIH0KCiAgICByZXR1cm4gMDsKfQ==