/*
code by purplecoder
*/
#include <fstream>
#include <vector>
#define MOD 666013
using namespace std;
ifstream fin ("hashuri.in");
ofstream fout ("hashuri.out");
vector <int> H[MOD];
int n;
void tip_1(int a)
{
int cod=a%MOD;
int lg=H[cod].size();
int ok=0;
for(int i=0; i<lg; i++)
if(a==H[cod][i])
ok=1;
if(ok==0)
H[cod].push_back(a);
}
void tip_2(int a)
{
int cod=a%MOD;
int lg=H[cod].size();
for(int i=0; i<lg; ++i)
{
if(H[cod][i]==a)
{
swap(H[cod][i], H[cod][lg-1]);
H[cod].pop_back();
break;
}
}
}
void tip_3(int a)
{
int cod=a%MOD, ok=0;
int lg=H[cod].size();
for(int i=0; i<lg; ++i)
{
if(H[cod][i]==a)
{
fout<<"1\n";
ok=1;
}
}
if(ok==0)
fout<<"0\n";
}
int main()
{
fin>>n;
for(int ni=1; ni<=n; ++ni)
{
int x, a;
fin>>x>>a;
if(x==1)
tip_1(a);
if(x==2)
tip_2(a);
if(x==3)
tip_3(a);
}
return 0;
}