#include <bits/stdc++.h>
using namespace std;
signed solve() {
  long long n;
  cin >> n;
  long long d;
  cin >> d;
  long long l;
  cin >> l;
  long long mx = ((n + 1) / 2) * (l - 1) + ((n % 2) ? 1 : 0);
  long long mn = (n / 2) * (1 - l) + ((n % 2) ? 1 : 0);
  bool neg = (d < 0) ? true : false;
  if (d > mx || d < mn || (n % 2 && d == 0 && l == 1)) {
    cout << -1;
    return 0;
  }
  if (d == 0 && n % 2) {
    cout << 1 << " ";
    cout << 2 << " ";
    for (long long i = 0; i < n - 2; i++) cout << 1 << " ";
    return 0;
  }
  d = fabs(d);
  long long a[n];
  for (auto &x : a) x = 1;
  if (n % 2) d -= 1;
  long long q = (l != 1) ? (long long)fabs(d) / (l - 1) : 0;
  long long rem = (l != 1) ? (long long)fabs(d) % (l - 1) : 0;
  long long i;
  for (i = 0; i < 2 * q; i += 2) {
    a[i] = l;
  }
  if (rem > 0)
    a[i] += rem;
  else
    a[n - 2] += -rem;
  a[n - 3] += (neg && n % 2) ? 2 : 0;
  if (neg && !(n % 2))
    for (long long i = n - 1; i > -1; i--) cout << a[i] << " ";
  else if (neg) {
    for (long long i = 0; i < n - 1; i += 2) {
      cout << a[i + 1] << " " << a[i] << " ";
    }
    cout << 1;
  } else
    for (auto &x : a) cout << x << " ";
  return 0;
}
signed main() {
  ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  long long t = 1;
  while (t--) solve();
  return 0;
}
