    #include <bits/stdc++.h>
    using namespace std;
    
    bool mysort(const tuple<int, int, int>& a, const tuple<int, int, int>& b) {
        if (get<0>(a) < get<0>(b)) {
            if (get<1>(a) > get<1>(b)) return false;
            else return true;
        }
        else return false;
    }
    
    int main() {
        vector<tuple<int, int, int>> queries;
        int n;
        cin >> n;
        
        for(int i = 0; i<n; i++) {
            int l, r, c;
            cin >> l >> r;
            
            queries.push_back(make_tuple(l, r, i));
        }
        sort(queries.begin(), queries.end(), mysort);
        
        // print sorted queries
        
        for (int i = 0; i < queries.size(); i++) {
            cout << get<0>(queries[i]) << ", " << get<1>(queries[i]) << endl;
        }
        return 0;
    }