#include <bits/stdc++.h>
long long gcd(long long a, long long b) { return b ? gcd(b, a % b) : a; }
using namespace std;
inline int toInt(string s) {
  int v;
  istringstream sin(s);
  sin >> v;
  return v;
}
template <class T>
inline string toString(T x) {
  ostringstream sout;
  sout << x;
  return sout.str();
}
template <class T>
T maxt(T x, T y) {
  if (x > y)
    return x;
  else
    return y;
}
template <class T>
T mint(T x, T y) {
  if (x > y)
    return y;
  else
    return x;
}
long long m = 1e9 + 7, mod = 1e9 + 7;
long long modinv(long long a, long long m = 1e9 + 7) {
  long long b = m, u = 1, v = 0;
  while (b) {
    long long t = a / b;
    a -= t * b;
    swap(a, b);
    u -= t * v;
    swap(u, v);
  }
  u %= m;
  if (u < 0) u += m;
  return u;
}
int main() {
  long long N, K, S;
  cin >> N >> K >> S;
  if (K == N) {
    for (int i = 0; i < N; i++) {
      cout << S << ' ';
    }
    cout << endl;
    return 0;
  }
  vector<long long> v(N, 1);
  K++;
  for (int i = 0; i < N; i++) {
    if (i % 2 == 0) v[i] = S - 1;
    if (K == 0) {
      if (S < 1e9)
        v[i] = 1e9;
      else
        v[i] = 1e9 - 5;
    } else
      K--;
  }
  for (auto i : v) cout << i << ' ';
  cout << endl;
}
