#include using namespace std; int main() { int q, k; cin >> q >> k; priority_queue pq; priority_queue, greater<>> s; for (int i = 0; i < q; i++) { int f; cin >> f; if (f == 1) { int64_t v; cin >> v; if (pq.size() == k && pq.top() < v) { s.emplace(v); } else { if (pq.size() == k) { s.emplace(pq.top()); pq.pop(); } pq.emplace(v); } } else { if (pq.size() + s.size() < k) { cout << -1 << endl; } else { while (pq.size() < k && !s.empty()) { pq.emplace(s.top()); s.pop(); } cout << pq.top() << endl; pq.pop(); } } while (!pq.empty() && !s.empty() && s.top() < pq.top()) { int64_t x = s.top(), y = pq.top(); s.pop(); pq.pop(); pq.emplace(x); s.emplace(y); } } }