#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
using namespace std;
bool howToCompareOld(string i, string j) {
cout << "compare "<<i<<" and "<<j<<": ";
if(i.length() > j.length()) {
cout << (i>j)<<endl;
return i > j;
}
else if(i.length() < j.length()) {
cout << (i<j)<<endl;
return i < j;
}
else {
for(int k = 0; k < i.length(); k++) {
if(i[k] - '0' < j[k] - '0') {
cout << (i<j)<<endl;
return i < j;
}
else if (i[k] - '0' > j[k] - '0'){
cout << (i>j)<<endl;
return i > j;
}
}
}
cout << (i==j)<<endl;
return i == j;
}
bool howToCompare(string i, string j) {
if(i.length() > j.length()) {
return false;
}
else if(i.length() < j.length()) {
return true;
}
else {
for(int k = 0; k < i.length(); k++) {
if(i[k] < j[k] ) {
return true;
}
else if (i[k] > j[k] ){
return false;
}
}
}
return false;
}
int main() {
int n;
cin >> n;
string array[n];
for(int i = 0; i < n; i++) {
cin >> array[i];
}
sort(array, array + n, howToCompare);
for(int i = 0; i < n; i++) {
cout << array[i] << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8c3RyaW5nPiAKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmJvb2wgaG93VG9Db21wYXJlT2xkKHN0cmluZyBpLCBzdHJpbmcgaikgewoJY291dCA8PCAiY29tcGFyZSAiPDxpPDwiIGFuZCAiPDxqPDwiOiAiOwogICAgaWYoaS5sZW5ndGgoKSA+IGoubGVuZ3RoKCkpIHsKICAgIAljb3V0IDw8IChpPmopPDxlbmRsOwogICAgICAgIHJldHVybiBpID4gajsKICAgIH0KICAgIGVsc2UgaWYoaS5sZW5ndGgoKSA8IGoubGVuZ3RoKCkpIHsKICAgIAljb3V0IDw8IChpPGopPDxlbmRsOwogICAgICAgIHJldHVybiBpIDwgajsKICAgIH0KICAgIGVsc2UgewogICAgICAgIGZvcihpbnQgayA9IDA7IGsgPCBpLmxlbmd0aCgpOyBrKyspIHsKICAgICAgICAgICAgaWYoaVtrXSAtICcwJyA8IGpba10gLSAnMCcpIHsKICAgICAgICAgICAgCWNvdXQgPDwgKGk8aik8PGVuZGw7CiAgICAgICAgICAgICAgICByZXR1cm4gaSA8IGo7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBpZiAoaVtrXSAtICcwJyA+IGpba10gLSAnMCcpewogICAgICAJICAgICAgICBjb3V0IDw8IChpPmopPDxlbmRsOwogICAgICAgICAgICAgICAgcmV0dXJuIGkgPiBqOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgY291dCA8PCAoaT09aik8PGVuZGw7CiAgICByZXR1cm4gaSA9PSBqOwp9Cgpib29sIGhvd1RvQ29tcGFyZShzdHJpbmcgaSwgc3RyaW5nIGopIHsKICAgIGlmKGkubGVuZ3RoKCkgPiBqLmxlbmd0aCgpKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgZWxzZSBpZihpLmxlbmd0aCgpIDwgai5sZW5ndGgoKSkgewogICAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgZWxzZSB7CiAgICAgICAgZm9yKGludCBrID0gMDsgayA8IGkubGVuZ3RoKCk7IGsrKykgewogICAgICAgICAgICBpZihpW2tdICA8IGpba10gKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmIChpW2tdICA+IGpba10gKXsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBmYWxzZTsKfQoKCmludCBtYWluKCkgewogICAgaW50IG47CiAgICBjaW4gPj4gbjsKCiAgICBzdHJpbmcgYXJyYXlbbl07CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgY2luID4+IGFycmF5W2ldOwogICAgfQoKICAgIHNvcnQoYXJyYXksIGFycmF5ICsgbiwgaG93VG9Db21wYXJlKTsKCiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgY291dCA8PCBhcnJheVtpXSA8PCBlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0=