ull s[1<<24];
ll@q,a[30]{},n=0;
rep(q){
	ll@t;
	if(t==1){
		ull@x;
		if(!(s[x>>6]&1ull<<x)){
			s[x>>6]|=1ull<<x;
			rep(i,30){
				a[i]+=!(x&1);
				x>>=1;
			}
			++n;
		}
	}
	if(t==2){
		ull@x;
		if(s[x>>6]&1ull<<x){
			s[x>>6]^=1ull<<x;
			rep(i,30){
				a[i]-=!(x&1);
				x>>=1;
			}
			--n;
		}
	}
	if(t==3){
		ll z=-1;
		if(n){
			z=0;
			rrep(i,30){
				z=z*2+!a[i];
			}
		}
		wt(z);
	}
}