#include<bits/stdc++.h>
using namespace std;
struct xs{
    int xh;
    string xm;
    int cj;
}a[200];
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i].xh>>a[i].xm>>a[i].cj;
    }
    for(int i=1;i<=n-1;i++){
        for(int j=1;j<=n-i;j++){
            if(a[j].cj<a[j+1].cj||(a[j].cj==a[j+1].cj&&a[j].xh>a[j+1].xh)){
                swap(a[j],a[j+1]);
            }
        }
    }
    for(int i=1;i<=n;i++){
        cout<<a[i].xh<<" "<<a[i].xm<<" "<<a[i].cj<<endl;
    }
    return 0;
}
 
/**************************************************************
	Problem: 1414
	User: chenlingxuan
	Language: C++
	Result: Accepted
	Time:18 ms
	Memory:2088 kb
****************************************************************/