#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define mp make_pair
#define pb push_back
#define li(i,a,b) for(int (i) = (a); (i)<(b); i++)
#define all(v) v.begin(), v.end()
#define mem(name, val) memset(name, val, sizeof(name))
#define endl '\n'

int main()
{
    ios_base::sync_with_stdio(false); cin.tie(NULL);

    int n;
    cin>>n;
    vector<int> a(n);
    li(i,0,n) cin>>a[i];

    vector<int> bit(32);

    // precompute
    for(int i = 0; i<n; i++){
        int temp = a[i];
        for(int j = 0; j<32; j++){
            if(temp&1) bit[j]++;
            temp/=2;
        }
    }

    // for(int i = 0; i<32; i++){
    //     cout<<bit[i]<<" ";
    // }
    // return 0;

    int q;
    cin>>q;
    while(q--){
        int op;
        cin>>op;
        if(op == 0){
            int k;
            cin>>k;// k--;
            int res = 0;
            int temp = 1;
            for(int j = 0; j<32; j++){
                if(k<=bit[j]) res += temp;
                temp*=2;
            }
            cout<<res<<endl;
        }
        else{
            int k, x;
            cin>>k>>x;
            k--;
            int temp = a[k];
            int temp2 = x;
            for(int j = 0; j<32; j++){
                if(temp&1) bit[j]--;
                temp/=2;

                if(temp2&1) bit[j]++;
                temp2/=2;
            }

            a[k] = x;
        }
    }

    return 0;
}