#include <bits/stdc++.h>
#define speed ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl '\n'
#define all(x) (x).rbegin(),(x).rend()
#define fi first
#define si second
#define pii pair<int,int>

using namespace std;

const int maxn=1e5+10;

int n;
vector<int> niz(maxn),res(maxn);

void resi(){
    int l=0,r=1;
    res=niz;
    while(r<n){
        if((res[l]|res[r])>res[l]){
            int a=res[l],b=res[r];
            res[l]=a|b;
            res[r]=a&b;
            r++;
        }
        else {l++;r++;}
    }
    sort(all(res));
}

int main()
{
    speed;
    bool promena=true;
    cin>>n;
    for(int i=0;i<n;i++)cin>>niz[i];
    int q;
    cin>>q;
    while(q--){
        int c;
        cin>>c;
        if(c){
            int k,x;
            cin>>k>>x;
            niz[k-1]=x;
            promena=true;
        }
        else{
            if(promena){
                sort(all(niz));
                resi();
                promena=false;
            }
            int k;
            cin>>k;
            cout<<res[k-1]<<endl;
        }
    }
    return 0;
}