#include using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; using vi = vector; using vl = vector; #define pb push_back #define eb emplace_back #define fi first #define se second #define all(x) begin(x), end(x) #define sz(x) (int)(x).size() #define rep(i, a, b) for (int i = (a); i < (b); i++) mt19937 rng(random_device{}()); int main() { ios::sync_with_stdio(false); cin.tie(0); int q; cin >> q; unordered_set S; rep(i, 0, q){ int num; int query; cin >> query; if(query != 3) cin >> num; if(query == 1){ S.insert(num); } else if(query == 2){ S.erase(num); } else{ if(S.empty()){ cout << "-1\n"; continue; } auto it = S.begin(); int result = *it; it++; while(it != S.end()){ result &= *it; it++; } cout << result << "\n"; } } return 0; }