#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n, q; cin >> n;
    vector<int> a(n);
    multiset<int> b;
    for(int i = 0; i < n; i++){
        cin >> a[i];
        b.insert(a[i]);
    }
    cin >> q;
    while(q--){
        int t; cin >> t;
        vector<int> u = a;
        if(t==0){
            int k; cin >> k;
            k--;
            for(int i = 0; i < n; i++){
                int mxi = i;
                for(int j = i+1; j < n; j++){
                    if(u[mxi]<u[j]){
                        mxi = j;
                    }
                }
                if(i==k){
                    cout << (u[i]|u[mxi]) << "\n";
                    break;
                }
                int res = u[i]|u[mxi];
                u[mxi]=u[i]&u[mxi];
                u[i]=res;
            }
        }else{
            int k, x; cin >> k >> x;
            a[k-1]=x;
        }
    }
    return 0;
}