#include<bits/stdc++.h>
using namespace std;
struct Node{
char name[10];
int id;
int score;
};
bool cmp1(Node a,Node b){
if(a.id!=b.id) return a.id<b.id;
}
bool cmp2(Node a,Node b){
if(strcmp(a.name,b.name)!=0) return strcmp(a.name,b.name)<=0;
else if(a.id!=b.id) return a.id<b.id;
}
bool cmp3(Node a,Node b){
if(a.score!=b.score) return a.score<=b.score;
else if(a.id!=b.id) return a.id<b.id;
}
int main()
{
//freopen("in.txt","r",stdin);
int n,tag;
//cin>>n>>tag;
scanf("%d%d",&n,&tag);
vector<Node> ppp;ppp.resize(n);
for(int i=0;i<n;i++){
//cin>>ppp[i].id>>ppp[i].name>>ppp[i].score;
scanf("%d %s %d",&ppp[i].id,&ppp[i].name,&ppp[i].score);
}
if(tag==1){
sort(ppp.begin(),ppp.end(),cmp1);
}else if(tag==2){
sort(ppp.begin(),ppp.end(),cmp2);
}else if(tag==3){
sort(ppp.begin(),ppp.end(),cmp3);
}
for(int i=0;i<n;i++){
printf("%06d %s %d\n",ppp[i].id,ppp[i].name,ppp[i].score);
//cout<<ppp[i].name<<' '<<ppp[i].score<<endl;
}
return 0;
}