#include int main () { int n = 0; int m = 0; int a = 0; int res = 0; long long ans[200001] = {}; long long mod_num = 998244353LL; int cnt[200001] = {}; int pow2[200001] = {}; res = scanf("%d", &n); res = scanf("%d", &m); for (int i = 0; i < n; i++) { res = scanf("%d", &a); cnt[a]++; } pow2[0] = 1LL; for (int i = 0; i < n; i++) { pow2[i+1] = (pow2[i]<<1LL)%mod_num; } for (int i = m; i > 0; i--) { int mcnt = 0; for (int p = 1; p*i <= m; p++) { mcnt += cnt[p*i]; } ans[i] = mod_num-1LL+pow2[mcnt]; for (int p = 2; p*i <= m; p++) { ans[i] += mod_num-ans[p*i]; } ans[i] %= mod_num; } for (int i = 0; i < m; i++) { printf("%lld\n", ans[i+1]); } return 0; }