#include<iostream>
#include<map>
using namespace std;
class MyCmp
{
public:
    bool operator() (int a, int b) const
    {
        return a > b;
    }
};
template<typename T>
void PrintMap(T &container)
{
    for(auto it = container.begin(); it != container.end(); it++)
    {
        cout<<it->first<<" "<<it->second<<endl;
    }
}

void PrintOkPoint(map<int,int, MyCmp> &map0)
{
   map<int,int> map1;

   auto it = map0.begin();
   int maxX = it->second;
   map1[it->second] = it->first;

   for(it++; it != map0.end(); it++)
   {
       if(it->second > maxX)
       {
           maxX = it->second;
           map1[it->second] = it->first;
       }
   }

   PrintMap(map1);
}

int main()
{
    int n,x,y;
    map<int,int,MyCmp> map0;
    cin>>n;
    if(n == 0) return 0;

    while(n--)
    {
        cin>>x>>y;
        map0[y] = x;
    }

    PrintOkPoint(map0);
    return 0;
}