#include <functional>
#include <iostream>
#include <queue>
#include <vector>
using namespace std;

int main() {
    int n, op, num;
    priority_queue<int, vector<int>, greater<int>> q;
    cin >> n;

    while (n--) {
        cin >> op;
        if (op == 1) {
            cin >> num;
            q.push(num);
        } else if (op == 2) {
            cout << q.top() << endl;
        } else if (op == 3) {
            q.pop();
        }
    }

    return 0;
}
// 64 位输出请用 printf("%lld")