小白逛公园

题目背景

小新经常陪小白去公园玩,也就是所谓的遛狗啦…

题目描述

在小新家附近有一条“公园路”,路的一边从南到北依次排着$n$个公园,小白早就看花了眼,自己也不清楚该去哪些公园玩了。 一开始,小白就根据公园的风景给每个公园打了分-.-。小新为了省事,每次遛狗的时候都会事先规定一个范围,小白只可以选择第$a$个和第$b$个公园之间(包括$a$、$b$两个公园)选择连续的一些公园玩。小白当然希望选出的公园的分数总和尽量高咯。同时,由于一些公园的景观会有所改变,所以,小白的打分也可能会有一些变化。 那么,就请你来帮小白选择公园吧。

输入输出格式

输入格式


第一行,两个整数$N$和$M$,分别表示表示公园的数量和操作(遛狗或者改变打分)总数。 接下来$N$行,每行一个整数,依次给出小白 开始时对公园的打分。 接下来$M$行,每行三个整数。第一个整数$K$,$1$或$2$。 - $K=1$表示,小新要带小白出去玩,接下来的两个整数$a$和$b$给出了选择公园的范围($1≤a,b≤N$)。测试数据可能会出现$a>b$的情况,需要进行交换; - $K=2$表示,小白改变了对某个公园的打分,接下来的两个整数$p$和$s$,表示小白对第$p$个公园的打分变成了$s$($1≤p≤N$)。 其中,$1≤N≤500 000$,$1≤M≤100 000$,所有打分都是绝对值不超过$1000$的整数。

输出格式


小白每出去玩一次,都对应输出一行,只包含一个整数,表示小白可以选出的公园得分和的最大值。

输入输出样例

输入样例 #1

5 3
1 2 -3 4 5
1 2 3
2 2 -1
1 2 3

输出样例 #1

2
-1