#include<fstream>
#include<vector>
#include<algorithm>
#define devil 666666
using namespace std;
ifstream in("hashuri.in");
ofstream out("hashuri.out");
int n,a,b;
vector<int>has[1000001];
int add(int x)
{
int r=x%devil;
for(int i=0;i<has[r].size();++i)
if(has[r][i]==x)
return 0;
has[r].push_back(x);
}
vector <int>::iterator hash_find(int x){
int r=x%devil;
vector <int>::iterator it;
for(it=has[r].begin();it!=has[r].end();++it)
{
if(*it==x)
return it;
}
return has[r].end();
}
void del(int x)
{
int r=x%devil;
vector <int>::iterator it=hash_find(x);
if(it != has[r].end())
{
swap(has[r][has[r].size()-1],*it);
has[r].pop_back();
}
}
int show(int x)
{
int r=x%devil;
for(int i=0;i<has[r].size();++i)
if(has[r][i]==x)
return 1;
return 0;
}
int main(){
in>>n;
for(int i=0;i<n;++i)
{
in>>a>>b;
if(a==1)
add(b);
if(a==2)
del(b);
if(a==3)
out<<show(b)<<'\n';
}
return 0;
}