#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
typedef long long ll;
typedef vector<int> VI;
typedef vector<VI> VII;
template <class T, class U>
bool chmax(T& map<int, int> MP;, U b) {
  if (map<int, int> MP; < b) {
    map<int, int> MP;
    = b;
    return 1;
  }
  return 0;
}
template <class T, class U>
bool chmin(T& map<int, int> MP;, U b) {
  if (map<int, int> MP; > b) {
    map<int, int> MP;
    = b;
    return 1;
  }
  return 0;
}
template <typename T>
ostream& operator<<(ostream& os, vector<T>& v) {
  os << "{";
  for (int i = 0; i < (int)v.size(); i++) {
    os << v[i] << (i < v.size() - 1 ? ", " : "");
  }
  os << "}";
  return os;
}
int main() {
  ll x = 1, y = 0, z = 0, n, m = 0, k, h, ans = 0, w, sum = 1, Max = -1e9 - 1,
     cnt = 0, Min = 1e9 + 1;
  string s, t, u;
  bool ok = true;
  cin >> n >> k >> m;
  vector<long long> map<int, int> MP;
  (n);
  z = n;
  for (int i = 0; i < n; i++) {
    map<int, int> MP;
    [i] = m;
  }
  if (n == k) {
    for (int i = 0; i < n; i++) {
      if (i == n - 1) {
        cout << map<int, int> MP;
        [i] << endl;
      } else
        cout << map<int, int> MP;
      [i] << " ";
    }
    return 0;
  }
  if (k == 1) {
    for (int i = 0; i < n - 1; i++) {
      map<int, int> MP;
      [i + 1]++;
    }
    for (int i = 0; i < n; i++) {
      if (i == n - 1) {
        cout << map<int, int> MP;
        [i] << endl;
      } else
        cout << map<int, int> MP;
      [i] << " ";
    }
    return 0;
  }
  x = 1;
  int i = 1;
  cnt++;
  sum++;
  while (cnt != k) {
    map<int, int> MP;
    [i] = x;
    map<int, int> MP;
    [i + 1] = m - x;
    cnt++;
    if (cnt < k) {
      map<int, int> MP;
      [i + 2] = x;
      cnt++;
      i++;
    }
    x++;
    i += 2;
  }
  for (int i = n - 1; i > 0; i--) {
    if (map<int, int> MP;[i] == m) map<int, int> MP;
    [i]++;
    else {
      break;
    }
  }
  for (int i = 0; i < n; i++) {
    if (i == n - 1) {
      cout << map<int, int> MP;
      [i] << endl;
    } else
      cout << map<int, int> MP;
    [i] << " ";
  }
  return 0;
}
