U503732 【模板】动态开点线段树 1

题目背景

数据有误欢迎私信 @[sLMxf](/user/752953)。 本题不接受 $l=0,r=0$ 的 hack 数据。 [本题弱化版](/problem/U504107)

题目描述

有一个长为 $n=1.2\times 10^9$ 的序列 $a$,初始都是 $0$。请你维护操作: 1. 为区间 $[l,r]$ 加上 $k$。 2. 求区间 $[l,r]$ 的和。

输入格式

第一行一个整数 $q$。 接下来 $q$ 行,每行三到四个整数。 本题强制在线,$l,r$ 需要异或上一次的答案,并对 $n$ 取模,如果 $l>r$,交换 $l,r$。

输出格式

对于操作二输出和。答案对 $(10^9+7)$ 取模。

说明/提示

### 数据范围 对于 $50\%$ 的数据,$l\le r\le 10^6$。 另外对于 $30\%$ 的数据,$q\le 10^4$。 对于 $100\%$ 的数据,$q\le 10^5$,$a_i,k\le 10^6$。 保证数据不会出现 $l=r=0$ 的情况。