#include<stdio.h>
#include<stdlib.h>
typedef struct node *btlink;
struct node
{
int data;
btlink left;
btlink right;
int t;
};
btlink BT;
void insert(btlink q, int x)
{
btlink p = (btlink)malloc(sizeof(node));
p->data = x;
p->left = NULL;
p->right = NULL;
p->t=;
if(q == NULL)
{
BT = p;
//printf("BT=%d\n",BT->t);
return ;
}
while(q->left!=p&&q->right!=p)
{
if(x<q->data)
{
if(q->left)
{
q->t++;
q = q->left;
}
else
{
q->t++;
q->left = p;
}
}
else
{
if(q->right)
{
q = q->right;
}
else
{
q->right = p;
}
}
}
return;
}
void InOrder(btlink root,int k)
{
while(k!=root->t+)
{
//printf("k=%d t=%d\n",k,root->t);
if(k>root->t+)
{
k=k-root->t-;
root=root->right;
}
else
{
root=root->left;
}
}
printf("%d\n",root->data);
}
int main()
{
int n,i,index=,x;
char a[];
scanf("%d",&n);
BT=(btlink)malloc(sizeof(node));
BT=NULL;
for(i=;i<n;i++)
{
scanf("%s",a);
if(a[]=='a')
{
scanf("%d",&x);
insert(BT,x);
}
else if(a[]=='p')
{
index++;
InOrder(BT,index);
}
}
return ;
}