#include<stdio.h>
#include<string.h>
#define maxsize 1000
int main() {
int n, a, b;
char string[maxsize][maxsize];
char str[maxsize];
scanf("%d", &n);
for (int i = 0; i < n; i++)
scanf("%s", string[i]);
for (int j = 0; j < n - 1; j++) { //冒泡排序
for (int i = 0; i < n - 1 - j; i++) {
a = strlen(string[i]);
b = strlen(string[i + 1]);
if (a > b) {
strcpy(str, string[i]);
strcpy(string[i], string[i + 1]);
strcpy(string[i + 1], str);
} else if (a == b && strcmp(string[i + 1], string[i]) < 0) {
strcpy(str, string[i]);
strcpy(string[i], string[i + 1]);
strcpy(string[i + 1], str);
}
}
}
for (int i = 0; i < n; i++) {
printf("%s \n", string[i]);
}
return 0;
}