#define MD 998244353 Combc; ll@n,@m,@a[n],@b[n]; Mint e[m][601]; rep(k,m){ rep(j,601){ e[k][j]=1; } } rep(i,n){ rep(j,601){ e[i%m][j]*=c.C(a[i]+b[i],j-300+b[i]); } } Mint g[1<<16]; g[0]=1; fft(1<<16,g); rep(k,m){ Mint h[1<<16]; rep(i,601){ h[i]=e[k][i]; } fft(1<<16,h); rep(i,1<<16){ g[i]*=h[i]; } } fftinv(1<<16,g); wt(g[m*300]/(1<<16));