#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll n, q, a[1000006], jc[100005], ny[100005], mod = 998244353, ans, x, y;
ll quick(ll x, ll t){
ll now = 1;
while(t){
if(t&1) now = x * now % mod;
x = x * x % mod;
t >>= 1;
}
return now;
}
void init(){
jc[0] = jc[1] = ny[0] = ny[1] = 1;
for(int i=2;i<=2000;i++){
jc[i] = jc[i-1] * i % mod;
ny[i] = quick(jc[i], mod-2);
}
}
int main(){
init();
scanf("%lld", &n);
for(register int i=0;i<n;i++) scanf("%lld", &a[i]);
scanf("%lld", &q);
for(register int i=1;i<=q;i++){
scanf("%lld%lld", &x, &y); y--; ans = 0;
for(register int j=0;j<=x;j++){
ans = (ans + a[(y+j)%n] * (jc[x] * ny[j] % mod * ny[x-j] % mod) % mod) % mod;
}
printf("%lld\n", ans);
}
return 0;
}
不加register就TLE……