問題文

長さ NN の数列 A=(A1,A2,...,AN)A = (A_1,A_2,...,A_N) が与えられます。

QQ 個のクエリが与えられます。各クエリは以下の 22 種類です。

  • 1 p x: ApA_p の値を xx に変更する。
  • 2 l r x: (Al,Al+1,...,Ar)(A_l,A_{l+1},...,A_r)xx 以上の値のうち最小のものとその数を出力する。ただし、存在しない場合は 0 0 を出力する。

制約

  • 1N1.5×1051 \leq N \leq 1.5 \times 10^5
  • 1Ai1091 \leq A_i \leq 10^9
  • 1Q7×1041 \leq Q \leq 7 \times 10^4
  • 1x1091 \leq x \leq 10^9
  • 1pN1 \leq p \leq N
  • 1lrN1 \leq l \leq r \leq N

入力

入力は以下の形式で標準入力から与えられる。

NN
A1A2...ANA_1 A_2 ... A_N
QQ
query11
query22
\vdots
queryQQ

ii 番目のクエリ queryii は以下のいずれかの形式で与えられる。

11 pp xx

22 ll rr xx

出力

2 l r x のクエリ個数を qq として、qq 行出力せよ。ii 行目には ii 個目 2 l r x のクエリに対する答えを出力せよ。

入力例 1

5
1 5 2 4 7
4
2 1 3 4
1 4 2
2 2 5 2
2 1 2 10

出力例 1

5 1
2 2
0 0

提出


Go (1.21)