#include <bits/stdc++.h>
template <class C>
inline void log_c(const C& c) {}
template <class C>
inline int sz(const C& c) {
  return static_cast<int>(c.size());
}
using namespace std;
using pii = pair<int, int>;
using num = int64_t;
using pll = pair<num, num>;
const std::string eol = "\n";
int main() {
  std::ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  int n, c;
  cin >> n >> c;
  vector<int> a(n - 1), b(n - 1);
  for (int k = 0; k < (n - 1); ++k) cin >> a[k];
  for (int k = 0; k < (n - 1); ++k) cin >> b[k];
  vector<int> dpe(n), dpf(n);
  dpe[0] = c;
  for (int k = 1; k < n; ++k) {
    dpe[k] = min(dpe[k - 1], dpf[k - 1] + c) + b[k - 1];
    dpf[k] = min(dpe[k - 1], dpf[k - 1]) + a[k - 1];
  }
  for (int k = 0; k < (n); ++k) {
    cout << min(dpf[k], dpe[k]) << ' ';
  }
  cout << eol;
  return 0;
}
