#include using namespace std; using ll = long long; const ll MOD = 167772161, N = 2e5; int n, k; ll d[401][401], dtemp[401][401]; ll w[400]; int main() { ios::sync_with_stdio(0); cin >> n >> k; for (int i = 0; i < n; i++) { cin >> w[i]; } d[0][0] = 1; for (int i = 0; i < n; i++) { for (int c = i + 1; c >= 0; c--) { for (int l = w[i]; l <= k; l++) { d[c][l] += d[c-1][l - w[i]]; if (d[c][l] >= MOD) d[c][l] -= MOD; } } } dtemp[0][0] = 1; for (int i = 0; i < n; i++) { for (int c = 1; c < n; c++) { for (int l = 0; l <= k; l++) { dtemp[c][l] = d[c][l]; if (l >= w[i]) dtemp[c][l] = (MOD + dtemp[c][l] - dtemp[c-1][l-w[i]]) % MOD; } ll sum = 0; for (int j = k - w[i] + 1; j <= k; j++) { sum += dtemp[c][j]; } sum %= MOD; cout << sum << ' '; } cout << '\n'; } return 0; }