#include <bits/stdc++.h>
using namespace std;
struct stu{
string name;
int score;
int sequence;
};
bool cmp0(stu a,stu b){
if(a.score!=b.score)
return a.score>b.score;
else
return a.sequence<b.sequence;
}
bool cmp1(stu a,stu b){
if(a.score!=b.score)
return a.score<b.score;
else
return a.sequence<b.sequence;
}
int main() {
int n, cho;
while (cin >> n >> cho) { // 注意 while 处理多个 case
stu vec[n];
for(int i=0;i<n;i++){
cin>>vec[i].name>>vec[i].score;
vec[i].sequence=i;
}
if(cho==0)
sort(vec,vec+n,cmp0);
else
sort(vec,vec+n,cmp1);
for(int i=0;i<n;i++){
cout<<vec[i].name<<" "<<vec[i].score<<endl;
}
}
}
// 64 位输出请用 printf("%lld")