#include using namespace std; #define int long long signed main() { int n,Q; cin >> n >> Q; priority_queue,vector>,greater>> q; set e; int L = 0; while(Q--) { int t; cin >> t; if(t == 1) { string s; int r; cin >> s >> r; q.push({r,s}); L++; } else if(t == 2) { int x; cin >> x; n-=x; } else { string s; int x; cin >> s >> x; e.insert(s); n+=x; } vector> left; while(L > n) { string s; int r; tie(r,s) = q.top(); if(e.count(s)) { if(r < 1e9) { r+=1e9; q.pop(); q.push({r,s}); } else { q.pop(); left.push_back({r-1e9,s}); L--; } } else { L--; left.push_back({r,s}); q.pop(); } } int l = left.size(); sort(left.begin(),left.end()); for(int i = 0; i < l; i++) cout << left[i].second << endl; } }