#HJ1094. 开方

开方

Description

小图有一个长度长度为 nn 的数组 aa,和 mm 次操作,每次操作形如 op,x,yop ,x, y

op=1:op = 1:axa_xaya_y 内每个元素开方后下取整。即 ai=ai,xiya_i = \lfloor \sqrt{a_i} \rfloor,x \le i \le yop=2:op = 2: 查询 axa_xaya_y 内元素的和。

Format

Input

第一行两个正整数 n,m(1n,q3×105)n,m(1 \leq n,q \leq 3\times10^5)。 第二行 nn 个整数 a1,a2,,an(1ai109)a_1,a_2,\dots, a_n(1 \le a_i \le 10^9)。 接下来 mm 行,每行形如 opxy(op{1,2},1xyn)op \quad x \quad y(op \in \{1,2\}, 1 \le x \le y \le n)

Output

对每个操作 22,输出一行一个整数。

Samples

5 5
1 2 3 4 5
1 1 2
2 1 3
1 3 5
1 2 4
2 1 5
5 
6