#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int max_tabeli(int x, int y, int t[]) {
int maksik = t[x];
for (int i = x + 1; i <= y; i++) {
maksik = max(maksik, t[i]);
}
return maksik;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n, m;
cin >> n >> m;
int podatki[200005];
for (int i = 0; i < n; i++) {
cin >> podatki[i];
}
for (int i = 0; i < m; i++) {
string mode;
cin >> mode;
int a, b;
cin >> a >> b;
if (mode == "MAX") {
cout << max_tabeli(a - 1, b - 1, podatki) << "\n";
}
else{
podatki[a - 1] = b;
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8c3RyaW5nPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1heF90YWJlbGkoaW50IHgsIGludCB5LCBpbnQgdFtdKSB7CiAgICBpbnQgbWFrc2lrID0gdFt4XTsKICAgIGZvciAoaW50IGkgPSB4ICsgMTsgaSA8PSB5OyBpKyspIHsKICAgICAgICBtYWtzaWsgPSBtYXgobWFrc2lrLCB0W2ldKTsKICAgIH0KICAgIHJldHVybiBtYWtzaWs7Cn0KCmludCBtYWluKCkgewogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKTsKICAgIAogICAgaW50IG4sIG07CiAgICBjaW4gPj4gbiA+PiBtOwogICAgaW50IHBvZGF0a2lbMjAwMDA1XTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgY2luID4+IHBvZGF0a2lbaV07CiAgICB9CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG07IGkrKykgewogICAgICAgIHN0cmluZyBtb2RlOwogICAgICAgIGNpbiA+PiBtb2RlOwogICAgICAgIGludCBhLCBiOwogICAgICAgIGNpbiA+PiBhID4+IGI7CiAgICAgICAgaWYgKG1vZGUgPT0gIk1BWCIpIHsKICAgICAgICAgICAgY291dCA8PCBtYXhfdGFiZWxpKGEgLSAxLCBiIC0gMSwgcG9kYXRraSkgPDwgIlxuIjsKICAgICAgICB9CiAgICAgICAgZWxzZXsKICAgICAgICAgICAgcG9kYXRraVthIC0gMV0gPSBiOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiAwOwp9Cg==