给定长度为 $N$ 的序列 $A_1, A_2, \ldots, A_N$。请编写程序执行以下查询:
1 i j k:输出由 $A_i, A_{i+1}, \ldots, A_j$ 构成的子序列中大于 $k$ 的元素个数。2 i k:将 $A_i$ 改为 $k$。
序列的下标从 1 开始。
输入格式
第一行包含序列的长度 $N$ $(1 \le N \le 100{,}000)$。
第二行包含 $A_1, A_2, \ldots, A_N$ $(1 \le A_i \le 10^9)$。
第三行包含查询的个数 $M$ $(1 \le M \le 100{,}000)$。
接下来 $M$ 行,每行给出一个查询 $i, j, k$ $(1 \le i \le j \le n, 1 \le k \le 10^9)$。
输出格式
对于每个类型 1 的查询,在一行中输出答案。
样例
输入
5 5 1 2 3 4 5 1 2 4 1 2 4 5 1 4 4 4 2 3 3 1 1 5 2
输出
2 1 4