#include <bits/stdc++.h>
using namespace std;
const int maxn = 5000000 + 5;
int psz;
int key[maxn], pri[maxn];
int ch[maxn][2], siz[maxn];
int ver[maxn];
int newnode(int k) {
int u = ++psz;
key[u] = k, pri[u] = rand();
ch[u][0] = ch[u][1] = 0, siz[u] = 1;
return u;
}
void copy(int x, int y) {
key[x] = key[y], pri[x] = pri[y];
ch[x][0] = ch[y][0], ch[x][1] = ch[y][1], siz[x] = siz[y];
}
void maintain(int u) { siz[u] = siz[ch[u][0]] + siz[ch[u][1]] + 1; }
void split(int u, int k, int &l, int &r) {
if (u == 0) {
l = r = 0;
return;
}
int v = ++psz;
copy(v, u);
if (k <= key[v]) {
split(ch[v][0], k, l, ch[v][0]), r = v;
} else {
l = v, split(ch[v][1], k, ch[v][1], r);
}
maintain(v);
}
int merge(int u, int v) {
if (u == 0 || v == 0)
return u + v;
int w = ++psz;
if (pri[u] > pri[v]) {
copy(w, u);
ch[w][1] = merge(ch[w][1], v);
} else {
copy(w, v);
ch[w][0] = merge(u, ch[w][0]);
}
maintain(w);
return w;
}
int Insert(int root, int k) {
int l, r;
split(root, k, l, r);
return merge(merge(l, newnode(k)), r);
}
int Erase(int root, int k) {
int l, u, r;
split(root, k, l, r);
split(r, k + 1, u, r);
return merge(merge(l, merge(ch[u][0], ch[u][1])), r);
}
int Rank(int root, int k) {
int u = root, ret = 0;
while (u) {
if (key[u] < k)
ret += siz[ch[u][0]] + 1, u = ch[u][1];
else
u = ch[u][0];
}
return ret + 1;
}
int Select(int root, int k) {
int u = root;
while (u) {
if (siz[ch[u][0]] == k - 1)
break;
if (k <= siz[ch[u][0]])
u = ch[u][0];
else
k -= siz[ch[u][0]] + 1, u = ch[u][1];
}
return key[u];
}
int main() {
int n, root = 0;
cin >> n;
ver[0] = root;
for (int i = 1; i <= n; i++) {
int v, op, x;
cin >> v >> op >> x;
if (op == 1)
ver[i] = Insert(ver[v], x);
else if (op == 2)
ver[i] = Erase(ver[v], x);
else if (op == 3) {
cout << Rank(ver[v], x) << '\n';
ver[i] = ver[v];
} else if (op == 4) {
cout << Select(ver[v], x) << '\n';
ver[i] = ver[v];
} else if (op == 5) {
cout << Select(ver[v], Rank(ver[v], x) - 1) << '\n';
ver[i] = ver[v];
} else if (op == 6) {
cout << Select(ver[v], Rank(ver[v], x + 1)) << '\n';
ver[i] = ver[v];
}
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IG1heG4gPSA1MDAwMDAwICsgNTsKCmludCBwc3o7CmludCBrZXlbbWF4bl0sIHByaVttYXhuXTsKaW50IGNoW21heG5dWzJdLCBzaXpbbWF4bl07CmludCB2ZXJbbWF4bl07CgppbnQgbmV3bm9kZShpbnQgaykgewogICAgaW50IHUgPSArK3BzejsKICAgIGtleVt1XSA9IGssIHByaVt1XSA9IHJhbmQoKTsKICAgIGNoW3VdWzBdID0gY2hbdV1bMV0gPSAwLCBzaXpbdV0gPSAxOwogICAgcmV0dXJuIHU7Cn0KCnZvaWQgY29weShpbnQgeCwgaW50IHkpIHsKICAgIGtleVt4XSA9IGtleVt5XSwgcHJpW3hdID0gcHJpW3ldOwogICAgY2hbeF1bMF0gPSBjaFt5XVswXSwgY2hbeF1bMV0gPSBjaFt5XVsxXSwgc2l6W3hdID0gc2l6W3ldOwp9Cgp2b2lkIG1haW50YWluKGludCB1KSB7IHNpelt1XSA9IHNpeltjaFt1XVswXV0gKyBzaXpbY2hbdV1bMV1dICsgMTsgfQoKdm9pZCBzcGxpdChpbnQgdSwgaW50IGssIGludCAmbCwgaW50ICZyKSB7CiAgICBpZiAodSA9PSAwKSB7CiAgICAgICAgbCA9IHIgPSAwOwogICAgICAgIHJldHVybjsKICAgIH0KICAgIGludCB2ID0gKytwc3o7CiAgICBjb3B5KHYsIHUpOwogICAgaWYgKGsgPD0ga2V5W3ZdKSB7CiAgICAgICAgc3BsaXQoY2hbdl1bMF0sIGssIGwsIGNoW3ZdWzBdKSwgciA9IHY7CiAgICB9IGVsc2UgewogICAgICAgIGwgPSB2LCBzcGxpdChjaFt2XVsxXSwgaywgY2hbdl1bMV0sIHIpOwogICAgfQogICAgbWFpbnRhaW4odik7Cn0KCmludCBtZXJnZShpbnQgdSwgaW50IHYpIHsKICAgIGlmICh1ID09IDAgfHwgdiA9PSAwKQogICAgICAgIHJldHVybiB1ICsgdjsKICAgIGludCB3ID0gKytwc3o7CiAgICBpZiAocHJpW3VdID4gcHJpW3ZdKSB7CiAgICAgICAgY29weSh3LCB1KTsKICAgICAgICBjaFt3XVsxXSA9IG1lcmdlKGNoW3ddWzFdLCB2KTsKICAgIH0gZWxzZSB7CiAgICAgICAgY29weSh3LCB2KTsKICAgICAgICBjaFt3XVswXSA9IG1lcmdlKHUsIGNoW3ddWzBdKTsKICAgIH0KICAgIG1haW50YWluKHcpOwogICAgcmV0dXJuIHc7Cn0KCmludCBJbnNlcnQoaW50IHJvb3QsIGludCBrKSB7CiAgICBpbnQgbCwgcjsKICAgIHNwbGl0KHJvb3QsIGssIGwsIHIpOwogICAgcmV0dXJuIG1lcmdlKG1lcmdlKGwsIG5ld25vZGUoaykpLCByKTsKfQoKaW50IEVyYXNlKGludCByb290LCBpbnQgaykgewogICAgaW50IGwsIHUsIHI7CiAgICBzcGxpdChyb290LCBrLCBsLCByKTsKICAgIHNwbGl0KHIsIGsgKyAxLCB1LCByKTsKICAgIHJldHVybiBtZXJnZShtZXJnZShsLCBtZXJnZShjaFt1XVswXSwgY2hbdV1bMV0pKSwgcik7Cn0KCmludCBSYW5rKGludCByb290LCBpbnQgaykgewogICAgaW50IHUgPSByb290LCByZXQgPSAwOwogICAgd2hpbGUgKHUpIHsKICAgICAgICBpZiAoa2V5W3VdIDwgaykKICAgICAgICAgICAgcmV0ICs9IHNpeltjaFt1XVswXV0gKyAxLCB1ID0gY2hbdV1bMV07CiAgICAgICAgZWxzZQogICAgICAgICAgICB1ID0gY2hbdV1bMF07CiAgICB9CiAgICByZXR1cm4gcmV0ICsgMTsKfQoKaW50IFNlbGVjdChpbnQgcm9vdCwgaW50IGspIHsKICAgIGludCB1ID0gcm9vdDsKICAgIHdoaWxlICh1KSB7CiAgICAgICAgaWYgKHNpeltjaFt1XVswXV0gPT0gayAtIDEpCiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGlmIChrIDw9IHNpeltjaFt1XVswXV0pCiAgICAgICAgICAgIHUgPSBjaFt1XVswXTsKICAgICAgICBlbHNlCiAgICAgICAgICAgIGsgLT0gc2l6W2NoW3VdWzBdXSArIDEsIHUgPSBjaFt1XVsxXTsKICAgIH0KICAgIHJldHVybiBrZXlbdV07Cn0KCmludCBtYWluKCkgewogICAgaW50IG4sIHJvb3QgPSAwOwogICAgY2luID4+IG47CiAgICB2ZXJbMF0gPSByb290OwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CiAgICAgICAgaW50IHYsIG9wLCB4OwogICAgICAgIGNpbiA+PiB2ID4+IG9wID4+IHg7CiAgICAgICAgaWYgKG9wID09IDEpCiAgICAgICAgICAgIHZlcltpXSA9IEluc2VydCh2ZXJbdl0sIHgpOwogICAgICAgIGVsc2UgaWYgKG9wID09IDIpCiAgICAgICAgICAgIHZlcltpXSA9IEVyYXNlKHZlclt2XSwgeCk7CiAgICAgICAgZWxzZSBpZiAob3AgPT0gMykgewogICAgICAgICAgICBjb3V0IDw8IFJhbmsodmVyW3ZdLCB4KSA8PCAnXG4nOwogICAgICAgICAgICB2ZXJbaV0gPSB2ZXJbdl07CiAgICAgICAgfSBlbHNlIGlmIChvcCA9PSA0KSB7CiAgICAgICAgICAgIGNvdXQgPDwgU2VsZWN0KHZlclt2XSwgeCkgPDwgJ1xuJzsKICAgICAgICAgICAgdmVyW2ldID0gdmVyW3ZdOwogICAgICAgIH0gZWxzZSBpZiAob3AgPT0gNSkgewogICAgICAgICAgICBjb3V0IDw8IFNlbGVjdCh2ZXJbdl0sIFJhbmsodmVyW3ZdLCB4KSAtIDEpIDw8ICdcbic7CiAgICAgICAgICAgIHZlcltpXSA9IHZlclt2XTsKICAgICAgICB9IGVsc2UgaWYgKG9wID09IDYpIHsKICAgICAgICAgICAgY291dCA8PCBTZWxlY3QodmVyW3ZdLCBSYW5rKHZlclt2XSwgeCArIDEpKSA8PCAnXG4nOwogICAgICAgICAgICB2ZXJbaV0gPSB2ZXJbdl07CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIDA7Cn0=