给定一个长度为 $N$ 的数列 $A_1, A_2, \ldots, A_N$。请编写一个程序处理以下查询:
1 L R X:对所有满足 $L \le i \le R$ 的 $i$,执行 $A_i = A_i + X$。2 L R:对所有满足 $L \le i \le R$ 的 $i$,执行 $A_i = \lfloor \sqrt{A_i} \rfloor$。3 L R:输出 $A_L + A_{L+1} + \ldots + A_R$。
输入格式
第一行给出数列的大小 $N$。($1 \le N \le 100{,}000$)
第二行给出 $A_1, A_2, \ldots, A_N$。($1 \le A_i \le 100{,}000$)
第三行给出查询的个数 $M$。($1 \le M \le 100{,}000$)
接下来 $M$ 行,每行给出一个查询。($1 \le L \le R \le N$,$1 \le X \le 100{,}000$)其中,3 号查询至少出现一次。
输出格式
依次输出每个 3 号查询的结果,每个结果占一行。
样例
输入格式 1
5 1 2 3 4 5 5 1 3 5 2 2 1 4 3 2 4 2 3 5 3 1 5
输出格式 1
5 6