== include(page="template/taskheader" task_id="hashuri") ==
Fie o multime de numere naturale initial vida. Asupra acestei multimi se efectueaza operatii de urmatoarele tipuri:
Fie o multime initial vida. Asupra acestei multimi se efectueaza operatii de urmatoarele tipuri:
* _operatia de tipul 1_: se adauga elementul $x$ la multime (unde $x$ este un parametru al operatiei). Daca $x$ este deja in multime, atunci aceasta ramane neschimbata.
* _operatia de tipul 2_: se sterge elementul $x$, daca acesta este deja in multime. In caz contrar, multimea ramane neschimbata.
* _operatia de tipul 3_: returneaza $1$ daca si numai daca $x$ este in multime, in caz contrar returnand $0$.
* _operatia de tipul 1_: se adauga elementul $x$ la multime (unde $x$ este un parametru al operatiei)
* _operatia de tipul 2_: se sterge elementul $x$ (unde $x$ este un parametru al operatiei), daca acesta este deja in multime. In caz contrar, nu se face nimic.
* _operatia de tipul 3_: returneaza $1$ daca si numai daca $x$ este in multime
h2. Date de intrare
Fişierul de intrare $hashuri.in$ contine pe prima linie numarul $N$ de operatii efectuate. Fiecare din urmatoarele $N$ linii contine o pereche de numere naturale $(op x)$, unde $op$ este numarul operatiei care se efectueaza (de la $1$ la $3$), iar $x$ este parametrul operatiei.
Fişierul de intrare $hashuri.in$ ...
h2. Date de ieşire
Fişierul de ieşire $hashuri.out$ va contine un numar de linii egal cu numarul de operatii de tipul $3$ din fisierul de intrare. Pe fiecare linie se va afla raspunsul returnat de operatia corespunzatoare.
În fişierul de ieşire $hashuri.out$ ...
h2. Restricţii
* $3 ≤ N ≤ 1 000 000$
* $... ≤ ... ≤ ...$
h2. Exemplu