#include<bits/stdc++.h>
using namespace std;
struct Node{
string name;
int nian,yue,ri,level;
}a[11451];
bool cmp(Node x,Node y){
if(x.nian!=y.nian){
return x.nian<y.nian;
}
else{
if(x.yue!=y.yue){
return x.yue<y.yue;
}
else if(x.ri==y.ri&&x.yue==y.yue){
return x.level<y.level;
}
}
}
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i].name>>a[i].nian>>a[i].yue>>a[i].ri;
a[i].level=i;
}
stable_sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++){
cout<<a[i].name<<endl;
}
}