#include <iostream>
#include <cstdio>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
struct MyString{
int order;
int length;
string s;
MyString(int o,int l,string str):order(o),length(l),s(str){}
bool operator<(const MyString &m)const{
if(length==m.length){
return order<m.order;
}
return length<m.length;
}
};
int main() {
int n;
string s;
while(scanf("%d",&n)!=EOF){
vector <MyString> m;
vector <MyString>::iterator it;
for(int i=0;i<n;i++){
getline(cin,s);
if(s=="stop" || s==""){
break;
}
m.push_back(MyString(i,s.size(),s));
}
sort(m.begin(),m.end());
for(it=m.begin();it!=m.end();it++){
cout<<it->s<<endl;
}
}
return 0;
}
// 64 位输出请用 printf("%lld")