#include<iostream>
#include<queue>
using namespace std;
priority_queue<int> q1;
priority_queue<int,deque<int>,greater<int> > q2;
int main(){
int x;
int size=0;
int k;
cin>>k;
for(int i=1;i<=k;i++){
while(cin>>x&&x!=0){
if(x!=-1){
if(x<0){
continue;
}
size++;
if(size%2==1){
if(q1.empty()||x<=q1.top()){
q1.push(x);
}else{
q2.push(x);
q1.push(q2.top());
q2.pop();
}
cout<<q1.top()<<endl;
}else{
if(x>=q1.top()){
q2.push(x);
}else{
q1.push(x);
q2.push(q1.top());
q1.pop();
}
}
}else{
size--;
cout<<q1.top()<<endl;
q1.pop();
if(size%2==1){
q1.push(q2.top());q2.pop();
}
}
}
}
}