#include<bits/stdc++.h>
using namespace std;
int n;
struct cj {
    int xh;
    string mz;
    double fs; 
}a[10100];


int main(){
    cin>>n; 
    for(int i=1;i<=n;i++){
        cin>>a[i].xh>>a[i].mz>>a[i].fs;
    }
    
    
    
    
    for(int i=1 ;i<=n-1;i++){
        for(int j=1;j<=n-i;j++){
            if(a[j].fs<a[j+1].fs||(a[j].fs==a[j+1].fs&&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].mz<<" "<<a[i].fs<<endl;
    }
    
    
    
    
    
    return 0;
}
 
/**************************************************************
	Problem: 1414
	User: wuzhijing
	Language: C++
	Result: Accepted
	Time:21 ms
	Memory:2552 kb
****************************************************************/