#include <iostream>
#include <vector>
#include <algorithm>
#include <utility>
using namespace std;
bool sortowanie(const pair<int,int> &p1,const pair<int,int> &p2)
{
if(p1.first != p2.first)
return p1.first > p2.first;
else
return p2.second > p1.second;
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int ilosc_towarow;
cin>>ilosc_towarow;
vector<pair<int,int>> towar(ilosc_towarow);
for(int i=0;i<ilosc_towarow;i++)
cin>>towar[i].second>>towar[i].first;
sort(towar.begin(),towar.end(),sortowanie);
for(int i=0;i<ilosc_towarow;i++)
cout<<towar[i].second<<' '<<towar[i].first<<endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8dXRpbGl0eT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKYm9vbCBzb3J0b3dhbmllKGNvbnN0IHBhaXI8aW50LGludD4gJnAxLGNvbnN0IHBhaXI8aW50LGludD4gJnAyKQoJewoJCWlmKHAxLmZpcnN0ICE9IHAyLmZpcnN0KQoJCXJldHVybiBwMS5maXJzdCA+IHAyLmZpcnN0OwoJCWVsc2UKCQlyZXR1cm4gcDIuc2Vjb25kID4gcDEuc2Vjb25kOwoJfQppbnQgbWFpbigpCnsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7IAogICAgY2luLnRpZSgwKTsKICAgIGNvdXQudGllKDApOwogICAgCiAgICBpbnQgaWxvc2NfdG93YXJvdzsKICAgIGNpbj4+aWxvc2NfdG93YXJvdzsKICAgIHZlY3RvcjxwYWlyPGludCxpbnQ+PiB0b3dhcihpbG9zY190b3dhcm93KTsKCQoJZm9yKGludCBpPTA7aTxpbG9zY190b3dhcm93O2krKykKCWNpbj4+dG93YXJbaV0uc2Vjb25kPj50b3dhcltpXS5maXJzdDsKCQoJc29ydCh0b3dhci5iZWdpbigpLHRvd2FyLmVuZCgpLHNvcnRvd2FuaWUpOwoJCglmb3IoaW50IGk9MDtpPGlsb3NjX3Rvd2Fyb3c7aSsrKQoJY291dDw8dG93YXJbaV0uc2Vjb25kPDwnICc8PHRvd2FyW2ldLmZpcnN0PDxlbmRsOwp9