//#include <iostream>
#include<bits/stdc++.h>
using namespace std;
bool comparator(string first,string second)
{
string one = first+second;
string two = second+first;
int i=0;
while(one[i] && two[i])
{
if(one[i]>two[i])
return true;
else if(one[i]<two[i])
return false;
i++;
}
return false;
}
int main() {
//code
int tc;
cin>>tc;
while(tc--)
{
int len;
vector<string> arr;
//Take Array inputs
int i;
string temp;
cin>>len;
for(i=0;i<len;++i)
{
cin>>temp;
arr.push_back(temp);
}
sort(arr.begin(),arr.end(),comparator);
for(i=0;i<len;++i)
cout<<arr[i]<<" ";
cout<<"\n";
}
return 0;
}
Ly8jaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpib29sIGNvbXBhcmF0b3Ioc3RyaW5nIGZpcnN0LHN0cmluZyBzZWNvbmQpCnsKICAgIHN0cmluZyBvbmUgPSBmaXJzdCtzZWNvbmQ7CiAgICBzdHJpbmcgdHdvID0gc2Vjb25kK2ZpcnN0OwogICAgCiAgICBpbnQgaT0wOwogICAgd2hpbGUob25lW2ldICYmIHR3b1tpXSkKICAgIHsKICAgICAgICBpZihvbmVbaV0+dHdvW2ldKQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICBlbHNlIGlmKG9uZVtpXTx0d29baV0pCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBpKys7CiAgICB9CiAgICAKICAgIHJldHVybiBmYWxzZTsKfQoKaW50IG1haW4oKSB7CgkvL2NvZGUKCWludCB0YzsKCWNpbj4+dGM7Cgl3aGlsZSh0Yy0tKQoJewoJICAgaW50IGxlbjsKCSAgIHZlY3RvcjxzdHJpbmc+IGFycjsKCSAgIAoJICAgLy9UYWtlIEFycmF5IGlucHV0cwoJICAgaW50IGk7CgkgICBzdHJpbmcgdGVtcDsKCSAgIGNpbj4+bGVuOwoJICAgZm9yKGk9MDtpPGxlbjsrK2kpCgkgICB7CgkgICAgICAgY2luPj50ZW1wOwoJICAgICAgIGFyci5wdXNoX2JhY2sodGVtcCk7CgkgICB9CgkgICAKCSAgIHNvcnQoYXJyLmJlZ2luKCksYXJyLmVuZCgpLGNvbXBhcmF0b3IpOwoJICAgIAoJICAgZm9yKGk9MDtpPGxlbjsrK2kpCgkgICAgICAgY291dDw8YXJyW2ldPDwiICI7CgkgICBjb3V0PDwiXG4iOwoJfQoJcmV0dXJuIDA7Cn0=