#include <bits/stdc++.h>
using namespace std;
struct debugger {
  template <typename T>
  debugger& operator,(const T& v) {
    cerr << v << " ";
    return *this;
  }
} dbg;
char ibuf[4096];
int ipt = 4096;
int readUInt() {
  while (ipt < 4096 && ibuf[ipt] < '0') ipt++;
  if (ipt == 4096) {
    fread(ibuf, 1, 4096, stdin);
    ipt = 0;
    while (ipt < 4096 && ibuf[ipt] < '0') ipt++;
  }
  int n = 0;
  char neg = 0;
  if (ipt != 0 && ibuf[ipt - 1] == '-') neg = 1;
  while (ipt < 4096 && ibuf[ipt] >= '0') n = (n * 10) + (ibuf[ipt++] - '0');
  if (ipt == 4096) {
    fread(ibuf, 1, 4096, stdin);
    ipt = 0;
    while (ipt < 4096 && ibuf[ipt] >= '0') n = (n * 10) + (ibuf[ipt++] - '0');
  }
  return neg ? -n : n;
}
int testcase;
void solve() {
  int n;
  scanf("%d", &n);
  ;
  int d;
  scanf("%d", &d);
  ;
  int l;
  scanf("%d", &l);
  ;
  int v[n];
  int d1 = d;
  if (d > 0) {
    for (int i = 0; i < n; ++i) {
      if (i % 2 == 0) {
        if (d1 > 0) {
          v[i] = min(l, d1);
          d1 -= v[i];
        } else {
          v[i] = 1;
          d1 -= 1;
        }
      } else {
        v[i] = 1;
        d1 += 1;
      }
    }
  } else {
    for (int i = 0; i < n; ++i) {
      if (i % 2 == 0) {
        v[i] = 1;
        d1 -= 1;
      } else {
        if (d1 < 0) {
          v[i] = min(l, -d1);
          d1 += v[i];
        } else {
          d1 += 1;
        }
      }
    }
  }
  if (d1 == 1 && l > 1) {
    for (int i = 0; i < n; i++) {
      if (i % 2 == 0 && v[i] < l) {
        v[i]++;
        d1 = 0;
        break;
      } else if (i % 2 == 1 && v[i] > 1) {
        v[i]--;
        d1 = 0;
        break;
      }
    }
  }
  if (d1 == -1 && l > 1) {
    for (int i = 0; i < n; i++) {
      if (i % 2 == 0 && v[i] > 1) {
        v[i]--;
        d1 = 0;
        break;
      } else if (i % 2 == 1 && v[i] < l) {
        v[i]++;
        d1 = 0;
        break;
      }
    }
  }
  if (d1 != 0) {
    printf("-1\n");
  } else {
    for (int i = 0; i < n; ++i) {
      if (i) printf(" ");
      printf("%d", v[i]);
    }
    printf("\n");
  }
}
int main() {
  solve();
  return 0;
}
