def solve(q, qu): s = set() X = [] bit = [0] * 30 for v in qu: t = v[0] if t == 1: x = v[1] if x not in s: s.add(x) elif t == 2: x = v[1] if x in s: s.discard(x) else: ans = (1 << 30) - 1 if not s: ans &= 0 for v in s: ans &= v X.append(ans) return X q = int(input()) qu = [list(map(int,input().split())) for _ in range(q)] for v in solve(q, qu): print(v)