CSES - Reversals and Sums
  • Time limit: 1.00 s
  • Memory limit: 512 MB
Given an array of $n$ integers, you have to process following operations:
  1. reverse a subarray
  2. calculate the sum of values in a subarray
Input

The first input line has two integers $n$ and $m$: the size of the array and the number of operations. The array elements are numbered $1,2,\dots,n$.

The next line as $n$ integers $x_1,x_2,\dots,x_n$: the contents of the array.

Finally, there are $m$ lines that describe the operations. Each line has three integers $t$, $a$ and $b$. If $t=1$, you should reverse a subarray from $a$ to $b$. If $t=2$, you should calculate the sum of values from $a$ to $b$.

Output

Print the answer to each operation where $t=2$.

Constraints
  • $1 \le n \le 2 \cdot 10^5$
  • $1 \le m \le 10^5$
  • $0 \le x_i \le 10^9$
  • $1 \le a \le b \le n$
Example

Input:
8 3
2 1 3 4 5 3 4 4
2 2 4
1 3 6
2 2 4


Output:
8
9