#include<bits/stdc++.h>
using namespace std;
vector<long long> v;
int mid_find(long long a){
int l = 0, r = v.size() - 1, mid;
while(l < r){
mid = (l + r) / 2;
if (a <= v[mid])
r = mid;
else
l = mid + 1;
}
return l;
}
int main(){
int n, func, pos;
long long x;
cin >> n;
for (int i = 0; i < n; i++){
cin >> func >> x;
pos = mid_find(x);
switch(func){
case 1:
if (v.empty() == 1){
v.push_back(x);
}
else if (v[pos] != x){
v[pos] > x ? v.insert(v.begin() + pos, x) : v.insert(v.begin() + pos + 1, x);
}
else
cout << "Already Exist" << endl;
break;
case 2:
if (v.empty() == 0){
if (abs(v[pos-1] - x) <= abs(v[pos] - x)){
cout << v[pos-1] << endl;
v.erase(v.begin() + pos -1);
}
else{
cout << v[pos] << endl;
v.erase(v.begin() + pos);
}
}
else
cout << "Empty" << endl;
break;
}
}
return 0;
}