Tk 有一个长度为 n 的数组 a,Tk 定义 g(x)=∑i=1n−x+1∑j=ii+x−1aj,即所有区间长度为 x 的区间和,Tk 会向你询问 m 次,每一次给你个区间 [l,r],你需要求出区间内所有素数 y 对应 g(y) 的和,由于所求值可能比较大,你只需要告诉他答案对 998244353 的取模结果即可。
第一行输入两个正整数 n,m(1≤n≤104,1≤m≤2∗105) 表示数组大小和 Tk 的询问次数。
第二行输入 n 个正整数 ai(1≤ai≤109) 表示数组第 i 个位置的值。
接下来 m 行每一行给出两个整数 li,ri(1≤li≤ri≤n) 表示 Tk 第 i 次询问的区间。
输出分 m 行,每一行对 Tk 的询问作出回答。
输入
5 3
1 4 2 7 4
4 4
2 3
1 5
输出
0
64
82
说明
我们可以得到 g(1)=18,g(2)=31,g(3)=33,g(4)=31,g(5)=18
区间 [4,4] 中,没有素数,所以 g(4)=0
区间 [2,3] 中,2 和 3 都是素数,g(2)+g(3)=31+33=64
区间 [1,5] 中,2,3,5 是素数,g(2)+g(3)+g(5)=31+33+18=82