#include using namespace std; int main() { int n, q; cin >> n >> q; vector a(n, 0); vector b(q, 0); for (int i = 0; i < n; i++) { cin >> a[i]; } for (int i = 0; i < q; i++) { cin >> b[i]; } int mod = 998244353; vector dp(n + 1, 0); vector ndp(n + 1, 0); dp[0] = 1; for (int i = 0; i < n; i++) { for (int j = 0; j <= n; j++) { ndp[j] = 0; } for (int j = 0; j < n; j++) { ndp[j] = (ndp[j] + dp[j] * (a[i] - 1) % mod) % mod; ndp[j + 1] = (ndp[j + 1] + dp[j]) % mod; } swap(dp, ndp); } for (int i = 0; i < q; i++) { cout << dp[b[i]] << endl; } }