#include<cstdio>
#include<string>
#include<queue>
using namespace std;
#define MAX 100000
int main(){
char com[20];
priority_queue<int>PQ;
//最小堆可以这样子实现:
// priority_queue<int,vector<int>,greater<int> >PQ;
while(true)
{
cin>>com;
if(com[0]=='i')//insert
{
int key;
cin>>key;
PQ.push(key);
}
else if(com[0]=='i')//extractMax 删除并返回最大键值
{
cout<<PQ.top();
PQ.pop();
}
else if(com[0]=='e')//结束
{
break;
}
}
return 0;
}