#include <bits/stdc++.h>
using namespace std;

#define mt make_tuple
#define mkp make_pair
#define pb push_back
#define pii pair<ll,ll>
#define pss pair<int,int>
#define pdd pair<double,double>
#define pldd pair<ld,ld>
#define pff pair<float,float>
#define piii pair<ll, pair<ll,ll> >
#define pddd pair<ld, pair<ld,ld> >
#define ff first
#define ss second
typedef long long int ll;
typedef unsigned long long int ull;
typedef long double ld;




const int N = (1 << 16);

int getBits(int s) {
    int ans = 0;
    for(int i = 0; i < 16; i++)
        if((s & (1 << i)) != 0)
            ans++;
    return ans;
}

int main() {
    int ms[N];
    int osob[N];

    int q;
    cin >> q;
    while(q--) {
        string c;
        int s;
        cin >> c >> s;

        int bits = getBits(s);

        if(c == "add" || c == "del") {
            int d = 1;
            if(c == "del") d = -1;
            ms[s] += d;
            if(bits <= 16) {
                osob[N - 1] += d;
            }
        } else {
            int ans = 0;
            if(bits >= 16) {
                ans = osob[s];
            } else {
                for(int ss = s; ; ss = (ss - 1) & s) {
                    ans += ms[ss];
                    if(ss == 0) break;
                }
            }
            cout << ans << endl;
        }
    }
}


