#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int N = 3*1e5+5;
ll n,m,k;
ll a[N];
deque<ll> q;
ll cnt;
ll tot;
int main(){
cin >> n >> m >> k;
for(ll i = 1;i <= n;i++){
cin >> a[i];
}
sort(a+1,a+n+1);
for(ll i = 1;i <= n;i++){
q.push_back(a[i]);
}
ll m,x;
for(ll i = 1;i <= m;i++){
cin >> m;
if(m == 1){
cin >> x;
tot+= x;
while(!q.empty()){
ll v = q.back();
if(v+tot > k){
q.pop_back();
}else{
break;
}
}
} else if(m == 2){
cin >> x;
tot-= x;
while(!q.empty()){
ll v = q.front();
if(v+tot > -k){
q.pop_front();
}else{
break;
}
}
}else if(m == 3){
cout << q.size() << endl;
}
}
return 0;
}