#include <bits/stdc++.h>
using namespace std;
template <class T>
using V = vector<T>;
template <class T>
using VV = V<V<T>>;
template <class T>
using VVV = V<VV<T>>;
template <class T1, class T2>
using P = pair<T1, T2>;
using I = int;
using D = double;
using B = bool;
using C = char;
using S = string;
using LL = long long;
using LD = long double;
using ULL = unsigned long long;
using PII = P<I, I>;
using VPII = V<PII>;
using PLL = P<LL, LL>;
using VPLL = V<PLL>;
using VI = V<I>;
using VVI = VV<I>;
using VLL = V<LL>;
using VVLL = VV<LL>;
using VC = V<C>;
using VVC = VV<C>;
using VS = V<S>;
using VVS = VV<S>;
using VB = V<B>;
using VVB = VV<B>;
const int INF = 2e9;
const LL MOD = 1e9 + 7;
template <class T>
using PRIORITY_QUEUE = priority_queue<T, V<T>, greater<T>>;
template <class T>
inline bool chmin(T &a, T b) {
  if (a > b) {
    a = b;
    return true;
  }
  return false;
}
template <class T>
inline bool chmax(T &a, T b) {
  if (a < b) {
    a = b;
    return true;
  }
  return false;
}
template <class T>
inline void debug1(V<T> A) {
  for (int i = 0; i < (int)(((int)(A).size())); ++i) {
    if (A[i] == INF)
      cout << "I ";
    else
      cout << A[i] << " ";
  }
  cout << endl;
}
template <class T>
inline void debug2(VV<T> A) {
  for (int i = 0; i < (int)(((int)(A).size())); ++i) {
    for (int j = 0; j < (int)(((int)(A[i]).size())); ++j) {
      if (A[i][j] == INF)
        cout << "I ";
      else
        cout << A[i][j] << " ";
    }
    cout << endl;
  }
}
int main() {
  cin.tie(0);
  ios::sync_with_stdio(false);
  int n, k, s, x;
  cin >> n >> k >> s;
  x = s + 1;
  for (int i = 2; i * i <= s; ++i) {
    if (n % i) {
      x = i;
      break;
    }
  }
  for (int i = 0; i < (int)(n); ++i) {
    if (i < k)
      cout << s << " ";
    else
      cout << x << " ";
  }
  cout << endl;
  return 0;
}
