#include <bits/stdc++.h>
using namespace std;
const int maxn = 100 + 5;
int n, d, l;
int a[maxn];
int getint() {
  char ch;
  int res = 0, p;
  while (!isdigit(ch = getchar()) && (ch ^ '-'))
    ;
  p = ch == '-' ? ch = getchar(), -1 : 1;
  while (isdigit(ch)) res = (res << 3) + (res << 1) + (ch ^ 48), ch = getchar();
  return res * p;
}
int main() {
  n = getint();
  d = getint();
  l = getint();
  int mi, mx;
  mi = (n + 1) / 2 - n / 2 * l, mx = (n + 1) / 2 * l - n / 2;
  if (l == 1) {
    if (mi != d) {
      printf("-1\n");
      return 0;
    }
    for (int i = (1); i <= (n - 1); ++i) printf("1 ");
    printf("1\n");
    return 0;
  }
  if (d < mi || d > mx) {
    printf("-1\n");
    return 0;
  }
  if (d > 0) {
    int s = mx;
    for (int i = (1); i <= (n); ++i) a[i] = (i & 1) ? l : 1;
    for (int i = (1); i <= (n); ++i)
      if (a[i] > 1) {
        int del = min(l - 1, s - d);
        s -= del;
        a[i] -= del;
        if (s == d) break;
      }
    if (s != d) {
      printf("-1\n");
      return 0;
    }
    for (int i = (1); i <= (n - 1); ++i) printf("%d ", a[i]);
    printf("%d\n", a[n]);
    return 0;
  }
  int s = mi;
  for (int i = (1); i <= (n); ++i) a[i] = (i & 1) ? 1 : l;
  for (int i = (1); i <= (n); ++i)
    if (a[i] > 1) {
      int del = min(l - 1, d - s);
      s += del;
      a[i] -= del;
      if (s == d) break;
    }
  if (s != d) {
    printf("-1\n");
    return 0;
  }
  for (int i = (1); i <= (n - 1); ++i) printf("%d ", a[i]);
  printf("%d\n", a[n]);
  return 0;
}
