#include<bits/stdc++.h>
#define N 200010
typedef long long LL;
using namespace std;
int n,q;
int a[N];
int t,l,r;
LL max(int a,LL b){
if(a>b) return a;
else return b;
}
LL min(int a,LL b){
if(a<b) return a;
else return b;
}
void maxProduct(int l,int r) {
LL iMax = 1, iMin = 1,ans=1;
for(int i = l; i <= r; i++) {
if(a[i] < 0) swap(iMax, iMin);
iMax = max(a[i], iMax*a[i]);
iMin = min(a[i], iMin*a[i]);
ans = max(iMax, ans);
if(ans>(1<<30)) {
printf("Too large\n");return;
}
}
printf("%d\n",ans);
}
int main(){
scanf("%d%d",&n,&q);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
while(q--){
scanf("%d%d%d",&t,&l,&r);
if(t==1) a[l]=r;
else maxProduct(l,r);
}
return 0;
}
75分求调