#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")