AT_aalc001_f 連

Description

長さ $ N $ の非負整数列 $ A=(A_1,A_2,\ldots,A_N) $ が与えられます。 クエリを $ Q $ 個処理してください。クエリは以下の $ 2 $ 種類のいずれかです。 - `1 i x`: $ A_i $ を $ x $ に変更する。 - `2 l r`:正の整数 $ k $ であって、次の条件を満たすものの最大値を出力する。 - ある整数 $ p $ が存在し、 $ l \leq p \leq p+k-1 \leq r $ かつ $ A_p=A_{p+1}=\cdots=A_{p+k-1} $ である。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ Q $ $ A_1 $ $ A_2 $ $ \ldots $ $ A_N $ $ \mathrm{query}_1 $ $ \mathrm{query}_2 $ $ \vdots $ $ \mathrm{query}_Q $ 各クエリは以下のいずれかの形式で与えられる。 > $ 1 $ $ i $ $ x $ > $ 2 $ $ l $ $ r $

Output Format

$ 2 $ 種類目のクエリの個数を $ q $ として、 $ q $ 行出力せよ。 $ j $ 行目には、 $ j $ 番目の $ 2 $ 種類目のクエリに対する答えを出力せよ。

Explanation/Hint

### Sample Explanation 1 はじめの $ 2 $ つのクエリに対する答えは、それぞれ $ 3,2 $ です。 $ 3 $ 番目のクエリを処理した後、 $ A=(1,1,2,2,2,2,2,2) $ となるため、続くクエリに対する答えは $ 6 $ です。 ### Constraints - $ 1 \leq N \leq 2 \times 10^5 $ - $ 1 \leq Q \leq 2 \times 10^5 $ - $ 0 \leq A_i \leq 10^9 $ - $ 1 $ 種類目のクエリについて、 $ 1 \leq i \leq N $ , $ 0 \leq x \leq 10^9 $ - $ 2 $ 種類目のクエリについて、 $ 1 \leq l \leq r \leq N $ - 入力される数値はすべて整数