#include <bits/stdc++.h>
#pragma GCC optimize(2)
using namespace std;
const long long INF = 1000000000000005;
const long long maxn = 5e5 + 5;
const int mod = 1e9 + 7;
long long n, m, p;
struct node {
  long long s, e;
  bool friend operator<(node a, node b) { return a.e < b.e; }
} num[maxn];
inline bool read(long long &num) {
  char in;
  bool IsN = false;
  in = getchar();
  if (in == EOF) return false;
  while (in != '-' && (in < '0' || in > '9')) in = getchar();
  if (in == '-') {
    IsN = true;
    num = 0;
  } else
    num = in - '0';
  while (in = getchar(), in >= '0' && in <= '9') {
    num *= 10, num += in - '0';
  }
  if (IsN) num = -num;
  return true;
}
int main() {
  scanf("%lld%lld%lld", &n, &m, &p);
  if (n == m) {
    for (int i = 1; i <= n; i++) printf("%lld ", p);
  } else {
    for (int i = 1; i <= m + 1; i++) {
      if (i % 2 == 1)
        printf("%lld ", p - 1);
      else
        printf("%lld ", 1ll);
    }
    for (int i = m + 2; i <= n; i++)
      printf("%lld ", p + 1 > 1000000000ll ? p - 1234567ll : p + 1ll);
  }
  return 0;
}
