题目描述

读书人的事怎么能算偷呢? ——孔乙己

魔理沙又来偷书了,帕秋莉非常头痛。为了图书馆的安全,红魔馆决定全面升级安保系统。
黑白老鼠没完了是吧 —— 帕秋莉

设书的编号为$1$~$n$,则安保系统的作用可以描述为:

1. 空间魔法:对部分书施加屏障(初始所有书上都有屏障),魔法书会被偷走当且仅当屏障被破坏

2. 时间魔法:咲夜时停带回部分被偷的魔法书(书带回来后不恢复屏障)

3. 时空魔法:咲夜时停带回部分被偷的魔法书并恢复它们的屏障

更加形式化地说,每次的操作分为五类:

Ⅰ、 $0$ $l$ $r$,对将$[l, r]$的魔法书恢复为初始状态(含屏障)

Ⅱ、 $1$ $l$ $r$,破坏$[l, r]$中魔法书的屏障

Ⅲ、 $2$ $l$ $r$,偷走$[l, r]$中没有屏障的魔法书

Ⅳ、 $3$ $l$ $r$,将$[l, r]$中被偷走的魔法书放回原处

Ⅴ、 $4$ $l$ $r$,询问$[l, r]$中被偷走魔法书的数量

身为图书馆管理员,小恶魔需要不定期统计魔法书被魔理沙偷走了多少本,但是魔法书实在是太多了,她实在忙不过来,你能帮助她吗?


输入格式

第一行有两个整数$n、m$,分别代表书的数量与操作的数量

接下来$m$行有三个整数$k、l'、r'$,表示一次操作,$l'、r'$是加密的,解密方法如下:

令历史回答的结果总和为$sum$(若还未回答,则$sum=0$),设$l=((l'+sum$%$n-1) $ % $ n)$ $+ 1$, $r$同$l$理,若$l>r$,则交换$l、r$。最终的操作即为$k$ $l$ $r$

$1\le n \le 10^9$ , $1\le m \le 3 \times 10^5 $ , $ 0\le k \le 4$ , $1\le l \le r \le n$


输出格式

对于每次询问(即$k=4$),输出一行一个整数代表答案


样例数据

输入

5 7  
1 1 4
2 2 4
4 3 5
3 2 3
4 1 3
2 -1 0
4 -2 2

输出

2
1
2

备注


操作

评测记录

优秀代码

信息

时间限制: 4s
内存限制: 1024MB
评测模式: Normal

题解