#include <bits/stdc++.h>
using namespace std;
int n, k;
vector<int> prod(const vector<int> a, const vector<int> b) {
  vector<int> ans(n);
  for (int i = 0; i < n; ++i)
    for (int j = 0; j <= i; ++j)
      ans[i] = (ans[i] + 1LL * a[j] * b[i - j]) % 1000000007;
  return ans;
}
vector<int> pown(const vector<int> a, int k) {
  if (k == 0) {
    vector<int> one(n);
    one[0] = 1;
    return one;
  }
  if (k == 1) return a;
  vector<int> ans = pown(a, k / 2);
  ans = prod(ans, ans);
  if (k % 2) ans = prod(ans, a);
  return ans;
}
bool solve() {
  if (scanf("%d%d", &n, &k) == EOF) return false;
  vector<int> a(n);
  for (int i = 0; i < n; ++i) scanf("%d", &a[i]);
  vector<int> ans = prod(a, pown(vector<int>(n, 1), k));
  for (int i = 0; i < n; ++i) printf("%d ", ans[i]);
  printf("\n");
  return true;
}
int main() {
  solve();
  return 0;
}
