There are several test cases.
In each test case:
The first line contains two integers $N,M(1\leq N,M\leq 50000)$.
The second line contains $N$ integers $A_{1},A_{2},A_{3},...A_{N}(1\leq A_{i}\leq {10}^{9},1\leq i\leq N)$
Each of the next $M$ lines begin with a number $type(1\leq type\leq 3)$.
If $type=1$, there will be two integers more in the line: $l,r(1\leq l\leq r\leq N)$, which correspond the operation 1.
If $type=2$, there will be one integer more in the line: $x(1\leq x\leq N)$, which correspond the operation 2.
If $type=3$, there will be three integers more in the line: $l,r,x(1\leq l\leq r\leq N,1\leq x\leq {10}^{9})$, which correspond the operation 3.