#include<bits/stdc++.h>
using namespace std;
priority_queue<int>q;
priority_queue<int,vector<int>,greater<int> >q_;
int n,a[100010];
void balance(){
while(q.size()>q_.size()){
int t=q.top();
q.pop();
q_.push(t);
}
while(q_.size()>q.size()){
int t=q_.top();
q_.pop();
q.push(t);
}
}
int T;
int main(){
cin>>T;
while(T--){n=1;
while(!q.empty())q.pop();
while(!q_.empty())q_.pop();
while(1){cin>>n;
if(n==0)
break;
if(n>0){
q.push(n);
balance();
}else{
cout<<q.top()<<endl;
q.pop();
balance();
}
}
}
}