#include <bits/stdc++.h>
#include<string.h>
using namespace std;
int main(){
int n;
cin >> n;
vector<string> unsorted(n);
for(int unsorted_i = 0; unsorted_i < n; unsorted_i++)
cin >> unsorted[unsorted_i];
int i=0;
int flag=0;
while(i<n)
{
if(flag==1)
i=0;
flag=0;
if(unsorted[i].length()>unsorted[i+1].length())
{
swap(unsorted[i],unsorted[i+1]);
flag=1;
}
else if(unsorted[i].length()==unsorted[i+1].length())
{
int k=unsorted[i].compare(unsorted[i+1]);
if(k>0)
{
swap(unsorted[i], unsorted[i+1]);
flag=1;
}
}
i++;
}
for(int j=0;j<n;j++)
cout<<unsorted[j]<<endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlPHN0cmluZy5oPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCl7CiAgICBpbnQgbjsKICAgIGNpbiA+PiBuOwogICAgdmVjdG9yPHN0cmluZz4gdW5zb3J0ZWQobik7CiAgICAgICAgZm9yKGludCB1bnNvcnRlZF9pID0gMDsgdW5zb3J0ZWRfaSA8IG47IHVuc29ydGVkX2krKykKICAgICAgIGNpbiA+PiB1bnNvcnRlZFt1bnNvcnRlZF9pXTsKICAgICBpbnQgaT0wOwogIGludCBmbGFnPTA7CiAgICAgICAgd2hpbGUoaTxuKQogICAgICAgIHsKICAgICAgICAgICAgaWYoZmxhZz09MSkKICAgICAgICAgICAgICAgIGk9MDsKICAgICAgICAgICAgZmxhZz0wOwogICAgICAgICAgICBpZih1bnNvcnRlZFtpXS5sZW5ndGgoKT51bnNvcnRlZFtpKzFdLmxlbmd0aCgpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICBzd2FwKHVuc29ydGVkW2ldLHVuc29ydGVkW2krMV0pOwogICAgICAgICAgICAgICAgZmxhZz0xOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHVuc29ydGVkW2ldLmxlbmd0aCgpPT11bnNvcnRlZFtpKzFdLmxlbmd0aCgpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaW50IGs9dW5zb3J0ZWRbaV0uY29tcGFyZSh1bnNvcnRlZFtpKzFdKTsKICAgICAgICAgICAgICAgIGlmKGs+MCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgc3dhcCh1bnNvcnRlZFtpXSwgdW5zb3J0ZWRbaSsxXSk7CiAgICAgICAgICAgICAgICAgICAgZmxhZz0xOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgaSsrOwogICAgICAgfQogICAgZm9yKGludCBqPTA7ajxuO2orKykKICAgICAgICAgICAgY291dDw8dW5zb3J0ZWRbal08PGVuZGw7CiAgICByZXR1cm4gMDsKfQoK