bzoj#P3853. GCD Array

GCD Array

Description

Teacher Mai finds that many problems about arithmetic function can be reduced to the following problem:

Maintain an array a with index from 11 to ll. There are two kinds of operations:

  • Add vv to axax for every xx that gcd(x,n)=dgcd(x,n)=d.
  • Query Sigma (XiX_i) (i1X)(i \le 1 \le X)

Input

There are multiple test cases, terminated by a line "0 0".

For each test case, the first line contains two integers ll , QQ (1l,Q5104)(1 \le l,Q \le 5*10^4), indicating the length of the array and the number of the operations.

In following Q lines, each line indicates an operation, and the format is "11 nn dd vv" or "22 xx" (1n,d,v2105,1xl)(1 \le n,d,v \le 2*10^5,1 \le x \le l).

Output

For each case, output "Case #k:" first, where kk is the case number counting from 11.

Then output the answer to each query.

6 4
1 4 1 2
2 5
1 3 3 3
2 3
0 0
Case #1:
6
7