#include <bits/stdc++.h>
using namespace std;
const int M = 200;
int ans[M];
int n, d, l;
int main() {
  cin >> n >> d >> l;
  if (n % 2 == 0) {
    int nn = n / 2;
    int mm = (l - 1) * nn;
    if (d > mm || d < -mm)
      printf("-1\n");
    else {
      if (d >= 0) {
        int tem = 1;
        for (int i = 1; i <= n; i += 2) ans[i] = l, ans[i + 1] = 1;
        while (mm != d) {
          ans[tem]--;
          mm--;
          if (ans[tem] == 1) tem += 2;
        }
      } else {
        mm = -mm;
        int tem = 1;
        for (int i = 1; i <= n; i += 2) ans[i] = 1, ans[i + 1] = l;
        while (mm != d) {
          ans[tem]++;
          mm++;
          if (ans[tem] == l) tem += 2;
        }
      }
      for (int i = 1; i < n; ++i) cout << ans[i] << " ";
      cout << ans[n] << "\n";
    }
  } else {
    int nn = n / 2;
    int mmm = (l - 1) * nn + l;
    int mmn = (1 - l) * nn + 1;
    if (d > mmm || d < mmn)
      printf("-1\n");
    else {
      if (d > 0) {
        int tem = 1;
        for (int i = 1; i <= n; i += 2) ans[i] = l, ans[i + 1] = 1;
        while (mmm != d) {
          ans[tem]--;
          mmm--;
          if (ans[tem] == 1) tem += 2;
        }
      } else {
        int tem = 1;
        for (int i = 1; i <= n; i += 2) ans[i] = 1, ans[i + 1] = l;
        while (mmn != d) {
          ans[tem]++;
          mmn++;
          if (ans[tem] == l) tem += 2;
        }
      }
      for (int i = 1; i < n; ++i) cout << ans[i] << " ";
      cout << ans[n] << endl;
    }
  }
  return 0;
}
