#include <bits/stdc++.h>
using namespace std;
set <int> heap;
int main()
{ifstream fin("heapuri.in");
ofstream fout("heapuri.out");
int N, comanda, v[200001],j=0,x,i;
fin>>N;
for( i = 0; i < N; i++)
{
fin>>comanda;
if(comanda == 1) ///comanda inserare
{
fin>>x;
v[++j] = x; ///folosim vectorul v pentru a retine al catelea a fost inserat
heap.insert(x);
}
else
if(comanda == 2) ///comanda stergere al x lea element inserat
{
fin>>x;
heap.erase(v[x]);
}
else
if (comanda == 3) ///comanda afisare minim
fout<<*heap.begin()<<endl;
}
return 0;
}