import java.util.Arrays;
import java.util.Scanner;
public class Main{
private static Scanner s = new Scanner(System.in) ;
public static void main(String[] args) {
while(s.hasNext()){
int t = s.nextInt() ;
A a[] = new A[t] ;
for (int i = 0; i < t; i++) {
int num = s.nextInt() ;
int score = s.nextInt() ;
a[i] = new A(num, score) ;
}
Arrays.sort(a) ;
for (int i = 0; i < a.length; i++) {
System.out.println(a[i].num+" "+a[i].score);
}
}
}
}
class A implements Comparable{
int num ;
int score ;
public A(int num, int score) {
super();
this.num = num;
this.score = score;
}
@Override
public int compareTo(Object o) {
A a = (A) o;
if(this.score<a.score){
return -1 ;
}else if(this.score==a.score)
return 0;
else return 1 ;
}
}
/**************************************************************
Problem: 2212
User: admin
Language: Java
Result: Accepted
Time:1008 ms
Memory:42224 kb
****************************************************************/