小H学物理
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

小H今天在学校里学习了物理,物理老师给了小H一把能量枪,这把枪能发射波长为 的能量波,小H在一个长度为 的设备上进行发射,一束能量值为 能量波 在 位置发射,在 处释放一次能量,该处能量值增加 ,能量波衰减能量绝对值减少一。当能量不为 0 时继续向右传递  距离进行一次能量释放衰减过程,直到能量衰减为 0。
物理老师对小H发出了两种任务,任务一即发射能量波;任务二计算出设备上给定区间 内的能量总和,请你帮他完成。

输入描述:

第一行输入两个整数 K,L,\lambda,分别表示任务总数和设备总长度以及波长。
接下来 K 行,每行首先输入一个 op 表示任务类型,
op=0,继续输入 x_i,e_i,表示能量波发射位置,能量波能量;
op=1,继续输入 l_i, r_i,表示每次查询的区间。
1\leq K\leq 10^5
1\leq L\leq 10^5
1\leq \lambda \leq 10
1\leq x,l,r\leq L
1\leq |e|\leq L

输出描述:

对于每次查询,请输出对应区间内的能量总和。
示例1

输入

复制
5 10 3
0 1 4
0 5 2
1 3 6
0 6 -2
1 1 9

输出

复制
5
9

说明

第一次操作后设备上的能量为:
[4,0,0,3,0,0,2,0,0,1]
第二次操作后设备上的能量为:
[4,0,0,3,2,0,2,1,0,1]
第二次操作后设备上的能量为:
[4,0,0,3,2,-2,2,1,-1,1]

备注: