{"trustable":true,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cdiv class\u003d\"panel_content\"\u003e给定一个长度为$n$的整数序列$a$,有两种操作:\u003cbr\u003e\u003cli\u003e0 l r:从$a_l...a_r$中选择一些数字,使它们的异或和最大,并输出最大值。\u003c/li\u003e\u003cbr\u003e\u003cli\u003e1 x:将$x$追加到序列的末尾,并执行$n\u003dn+1$。\u003c/li\u003e\u003cbr\u003e\u003c/div\u003e"}},{"title":"输入","value":{"format":"HTML","content":"有多个测试用例。第一行包含一个整数$T(T\\le 10)$,表示测试用例的数量。\u003cbr\u003e对于每个测试用例:\u003cbr\u003e第一行包含两个整数$n, m(1\\le n\\le 5\\times 10^5, 1\\le m\\le 5\\times 10^5)$,表示序列初始整数的数量和操作的数量。\u003cbr\u003e第二行包含$n$个整数$a_1,a_2,...,a_n(0\\le a_i\u0026lt; 2^{30})$,表示初始序列。\u003cbr\u003e接下来的$m$行中,每行包含上述操作中的一种。\u003cbr\u003e保证$\\sum n\\le 10^6, \\sum m\\le 10^6 , 0\\le x\u0026lt; 2^{30}$。\u003cbr\u003e操作将被加密。需要按照以下方式解码操作,其中lastans表示上一个类型0操作的答案,初始值为零:\u003cbr\u003e对于每个类型0操作,令l\u003d(l xor lastans)mod n + 1,r\u003d(r xor lastans)mod n + 1,然后如果l\u003er,则交换(l, r)。\u003cbr\u003e对于每个类型1操作,令x\u003dx xor lastans。"}},{"title":"输出","value":{"format":"HTML","content":"对于每个类型0操作,请在一行中输出最大异或和。"}},{"title":"样例","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e1\r\n3 3\r\n0 1 2\r\n0 1 1\r\n1 3\r\n0 3 4\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e1\r\n3\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}