#include <bits/stdc++.h>
#define endl '\n';
using namespace std;
using ll = long long;
int n,q,b,x,y;
int a[100005];
int t[400005];
void build(int id, int l, int r){
if(l == r) t[id] = a[l];
else{
int m = (l + r) / 2;
build(id * 2, l, m);
build(id * 2 + 1, m + 1, r);
t[id] = max(t[id * 2], t[id * 2 + 1]);
}
}
void update(int id, int l, int r, int pos, int val){
if(l == r){
t[id] = val;
a[pos] = val;
return;
}
else{
int m = (l + r) / 2;
if(pos <= m){
update(id * 2, l, m, pos, val);
}
else{
update(id * 2 + 1, m + 1, r, pos, val);
}
t[id] = max(t[id * 2], t[id * 2 + 1]);
}
}
ll query(int id, int l, int r, int u, int v){
if(v < l || r < u) return LLONG_MIN;
if(u <= l && r <= v) return t[id];
int m = (l + r) / 2;
return max(query(id * 2, l , m, u, v), query(id * 2 + 1, m + 1, r, u , v));
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
//freopen("MaxiSubArr.inp","r",stdin);
//freopen("MaxiSubArr.out","w",stdout);
cin >> n;
for(int i = 1; i <= n; i++){
cin >> a[i];
}
build(1,1,n);
cin >> q;
for(int i = 1; i <= q; i++){
cin >> b >> x >> y;
if(b == 1){
update(1, 1, n, x, y);
}
else{
cout << query(1, 1, n, x, y) << endl;
}
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgZW5kbCAnXG4nOwp1c2luZyBuYW1lc3BhY2Ugc3RkOwp1c2luZyBsbCA9IGxvbmcgbG9uZzsKCmludCBuLHEsYix4LHk7CmludCBhWzEwMDAwNV07CmludCB0WzQwMDAwNV07Cgp2b2lkIGJ1aWxkKGludCBpZCwgaW50IGwsIGludCByKXsKICAgIGlmKGwgPT0gcikgdFtpZF0gPSBhW2xdOwogICAgZWxzZXsKICAgICAgICBpbnQgbSA9IChsICsgcikgLyAyOwogICAgICAgIGJ1aWxkKGlkICogMiwgbCwgbSk7CiAgICAgICAgYnVpbGQoaWQgKiAyICsgMSwgbSArIDEsIHIpOwogICAgICAgIHRbaWRdID0gbWF4KHRbaWQgKiAyXSwgdFtpZCAqIDIgKyAxXSk7CiAgICB9Cn0KCnZvaWQgdXBkYXRlKGludCBpZCwgaW50IGwsIGludCByLCBpbnQgcG9zLCBpbnQgdmFsKXsKICAgIGlmKGwgPT0gcil7CiAgICAgICAgdFtpZF0gPSB2YWw7CiAgICAgICAgYVtwb3NdID0gdmFsOwogICAgICAgIHJldHVybjsKICAgIH0KICAgIGVsc2V7CiAgICAgICAgaW50IG0gPSAobCArIHIpIC8gMjsKICAgICAgICBpZihwb3MgPD0gbSl7CiAgICAgICAgICAgIHVwZGF0ZShpZCAqIDIsIGwsIG0sIHBvcywgdmFsKTsKICAgICAgICB9CiAgICAgICAgZWxzZXsKICAgICAgICAgICAgdXBkYXRlKGlkICogMiArIDEsIG0gKyAxLCByLCBwb3MsIHZhbCk7CiAgICAgICAgfQogICAgICAgIHRbaWRdID0gbWF4KHRbaWQgKiAyXSwgdFtpZCAqIDIgKyAxXSk7CiAgICB9Cn0KCmxsIHF1ZXJ5KGludCBpZCwgaW50IGwsIGludCByLCBpbnQgdSwgaW50IHYpewogICAgaWYodiA8IGwgfHwgciA8IHUpIHJldHVybiBMTE9OR19NSU47CiAgICBpZih1IDw9IGwgJiYgciA8PSB2KSByZXR1cm4gdFtpZF07CiAgICBpbnQgbSA9IChsICsgcikgLyAyOwogICAgcmV0dXJuIG1heChxdWVyeShpZCAqIDIsIGwgLCBtLCB1LCB2KSwgcXVlcnkoaWQgKiAyICsgMSwgbSArIDEsIHIsIHUgLCB2KSk7Cn0KCmludCBtYWluKCl7CiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKE5VTEwpOwogICAgLy9mcmVvcGVuKCJNYXhpU3ViQXJyLmlucCIsInIiLHN0ZGluKTsKICAgIC8vZnJlb3BlbigiTWF4aVN1YkFyci5vdXQiLCJ3IixzdGRvdXQpOwogICAgY2luID4+IG47CiAgICBmb3IoaW50IGkgPSAxOyBpIDw9IG47IGkrKyl7CiAgICAgICAgY2luID4+IGFbaV07CiAgICB9CiAgICBidWlsZCgxLDEsbik7CiAgICBjaW4gPj4gcTsKICAgIGZvcihpbnQgaSA9IDE7IGkgPD0gcTsgaSsrKXsKICAgICAgICBjaW4gPj4gYiA+PiB4ID4+IHk7CiAgICAgICAgaWYoYiA9PSAxKXsKICAgICAgICAgICAgdXBkYXRlKDEsIDEsIG4sIHgsIHkpOwogICAgICAgIH0KICAgICAgICBlbHNlewogICAgICAgICAgICBjb3V0IDw8IHF1ZXJ5KDEsIDEsIG4sIHgsIHkpIDw8IGVuZGw7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIDA7Cn0K