U456135 [SPN D-Struct 05] Dyadic
题目背景

题目描述
请维护一个整数序列 $a$,支持如下操作:
1. 插入一个数 $x$。
2. 删除一个数 $x$。保证 $x$ 存在。
3. 全局加 $1$。
4. 求 $a$ 中所有数的异或和。
输入格式
第一行三个正整数 $n, q$,代表序列长度和操作个数。
第二行 $n$ 个整数 $x$,代表输入序列的初始值。
接下来 $q$ 行,每行开始一个正整数 $opt$,保证 $1 \le opt \le 4$。
如果 $opt=1$ 或 $opt=2$,接下来一个正整数 $x$。
如果 $opt=3$,令 $\forall x \in a, x \gets x + 1$。
如果 $opt=4$,输出 $\bigoplus a$。$\bigoplus a$ 表示 $a$ 中所有数的异或和。
输出格式
对于每个 $4$ 操作,输出一行答案。
说明/提示
**样例解释**
下面展示了每次操作**前**序列 $a$ 的值。
```cpp
1 1 4 5 1 4 2 0 2 4
1 1 4 5 1 4 2 0 2 4 2
2 2 5 6 2 5 3 1 3 5 3
2 2 5 6 2 5 3 1 3 5 3
2 2 6 2 5 3 1 3 5 3
2 2 6 2 5 3 1 3 5 3 9
```
**数据范围与约定**
对于 $100\%$ 的数据,$1 \le n,q \le 10^5$,$-10^{18} \le x \le 10^{18}$。
保证操作过程中,数列 $a$ 中的数在 $[-2^{63},2^{63}]$ 范围内。