#include<iostream>
#include<cstring>
using namespace std;
struct be{
string s;
int b,c,d;
int y;
int x;
}k[100];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>k[i].s>>k[i].b>>k[i].c>>k[i].d;
if(i>1){
if(k[i].b<k[i+1].b){
be MAX=k[i];
k[i]=k[i+1];
k[i+1]=MAX;
}
if(k[i].b==k[i].b) if(k[i].c<k[i+1].c){
be MAX=k[i];
k[i]=k[i+1];
k[i+1]=MAX;
}
}
}
for(int i=n;i>0;i--) cout<<k[i].s<<endl;
}