#include <bits/stdc++.h>
using namespace std;
int n, d, l;
vector<int> a;
int main() {
  cin >> n >> d >> l;
  if (((n + 1) / 2) > ((l * (n / 2)) + d) ||
      (l * ((n + 1) / 2)) < ((n / 2) + d)) {
    cout << "-1\n";
    return 0;
  }
  a.resize(n, 0);
  int lower = ((n + 1) / 2) - d;
  for (int i = 1; i < n; i++) {
    if (i % 2 == 0) continue;
    a[i]++;
  }
  int cur = n / 2;
  while (cur < lower) {
    for (int i = 1; i < n; i += 2) {
      a[i]++;
      cur++;
      if (cur >= lower) break;
    }
  }
  for (int i = 0; i < n; i++) {
    if (i % 2 == 1) continue;
    a[i]++;
  }
  int cur_even = (n + 1) / 2;
  while ((cur_even - d) < cur) {
    for (int i = 0; i < n; i += 2) {
      a[i]++;
      cur_even++;
      if ((cur_even - d) == cur) break;
    }
  }
  for (int i = 0; i < n; i++) {
    cout << a[i] << ' ';
  }
  cout << '\n';
  return 0;
}
