#include <bits/stdc++.h>
using namespace std;
ifstream f("hashuri.in");
ofstream g("hashuri.out");
const int MOD = 200'000;
vector <int> H[MOD + 1];
int n, op, x;
void Add(int val) {
int N = val % MOD, len = H[N].size(), i = 0;
for (i = 0; i < len && H[N][i] != val; ++i);
if(i == len) H[N].emplace_back(val);
}
void Remove(int val) {
int N = val % MOD, len = H[N].size(), i = 0;
for(i = 0; i < len && H[N][i] != val; ++i);
if(i < len) {
swap(H[N][i], H[N].back());
H[N].pop_back();
}
}
int IsinH(int val) {
int N = val % MOD, len = H[N].size(), i = 0;
for(i = 0; i < len && H[N][i] != val; ++i);
if(i < len) return 1;
return 0;
}
int main() {
f >> n;
while (n--) {
f >> op >> x;
if(op == 1) Add(x);
if(op == 2) Remove(x);
if(op == 3) g << IsinH(x) << "\n";
}
return 0;
}