#include<bits/stdc++.h>
using namespace std;
int n;
struct node{
string name;
int y,m,d;
}a[1000];
bool cmp(node xx,node yy){
if(xx.y<yy.y)return 1;
if(xx.y>yy.y)return 0;
if(xx.y==yy.y){
if(xx.m<yy.m)return 1;
if(xx.m>yy.m)return 0;
}
if(xx.y==yy.y&&xx.m==yy.m){
if(xx.d<yy.d)return 1;
if(xx.d>yy.d)return 0;
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i].name>>a[i].y>>a[i].m>>a[i].d;
}
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++){
cout<<a[i].name<<endl;
}
return 0;
}