問題
整数 N と長さが N の数列 A が与えられます。
どのような A においても、ある数列 B であって、
Ai=∑d∣iBd を満たす B がただ1つに定まるので、以下のクエリを順に処理してください。
ただし、d∣i とは d が i の約数であることを指します。
クエリ
- Ti=1 の場合
- ∑k=xiyiBk を出力してください。
- Ti=2 の場合
- Axi を yi に置き換えてください。
ただし、この問題では x,y は直接は与えられず、前から順にクエリを処理することで得ることができる形式として与えられます。
具体的には、 Hx,Hy が与えられます。
- Z1=0 を満たす数列 Z を考え、 xk=Hkx⊕Zk,yk=Hky⊕Zk の形で x,y を与えます。
- Tk=1 の場合、クエリ k の答えを u として Zk+1=Zk⊕u とします。
- u が負の場合、64bit 整数における2の補数表現 に従ってください。
- Tk=2 の場合、 Zk+1=Zk とします。
制約
- 1≤N≤5×105
- 1≤Q≤2×105
- Ti∈{0,1}(1≤i≤Q)
- −109≤Ai≤109
小課題
- 小課題1 (160点)
- Q=1,T1=1
- 小課題2 (190点)
- Ti=1 (1≤i≤Q)
- 小課題3 (300点)
入力
N
A1 A2 ⋯ AN−1 AN
Q
T1 H1x H1y
T2 H2x H2y
⋮
TQ−1 HQ−1x HQ−1y
TQ HQx HQy
出力
1 行で、すべてを改行区切りで出力してください。
入力例1
6
-1 7 -6 1 -8 3
1
1 2 2
この入力はすべての小課題の制約を満たします。
出力例1
入力例2
6
-8 -6 7 -3 -5 -7
8
1 1 3
1 13 15
1 -3 -7
1 -5 -5
1 -10 -11
1 12 11
1 -15 -9
1 -26 -28
この入力は小課題 2, 3 の制約を満たします。
入力例3
6
5 9 1 0 2 -4
8
1 2 5
1 -9 -14
1 17 22
1 -27 -28
1 -28 -29
2 16 -18
1 16 17
2 -2 -5
この入力は小課題 3 の制約を満たします。
出力例3
-12
-25
-12
0
-13
-18
これらの入力例の実行結果はジャッジ結果として表示されません。