#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vi = std::vector<long long>;
using vc = std::vector<char>;
using vll = std::vector<long long>;
using vs = std::vector<string>;
using Mi = map<long long, long long>;
using Mll = map<ll, ll>;
using UMi = unordered_map<long long, long long>;
using UMll = unordered_map<ll, ll>;
using Pi = pair<long long, long long>;
using Pll = pair<ll, ll>;
using vPi = vector<Pi>;
using vPll = vector<Pll>;
using vvi = vector<vector<long long>>;
using vvll = vector<vector<ll>>;
using vvc = vector<vector<char>>;
using vvs = vector<vector<string>>;
using pqgi = priority_queue<long long, vector<long long>, greater<long long>>;
using pqsi = priority_queue<long long, vector<long long>, less<long long>>;
using pqgll = priority_queue<long long, vector<long long>, greater<long long>>;
using pssll = priority_queue<long long, vector<long long>, less<long long>>;
template <class T>
using vec = vector<T>;
signed main() {
  std::ios::sync_with_stdio(false);
  std::cin.tie(0);
  long long N, K, S;
  cin >> N >> K >> S;
  if (S == 1) {
    for (long long i = 0; i < K; i++) {
      cout << 1 << " ";
    }
    for (long long i = K; i < N; i++) {
      cout << S + 1 << " ";
    }
    cout << "\n";
    return 0;
  }
  if (N == K) {
    for (long long i = 0; i < N; i++) {
      cout << S << " ";
    }
    cout << "\n";
    return 0;
  } else {
    long long first = S / 2;
    long long second = S - first;
    long long pair = -1;
    for (; pair < K; pair++) {
      if (pair % 2 != 0) {
        cout << first << " ";
      } else {
        cout << second << " ";
      }
    }
    for (long long i = (pair + 1); i < N; i++) {
      cout << S + 1 << " ";
    }
    cout << "\n";
    return 0;
  }
  return 0;
}
