#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 = 0, 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 = k;
  int i = 0;
  if (n % 2 == 0) {
    if (k % 2 == 0) {
      while (k > 0) {
        y = m - x;
        map<int, int> MP;
        [i] = x;
        map<int, int> MP;
        [i + 1] = y;
        i += 2;
        x++;
        k--;
      }
    } else {
      while (k > 0) {
        if (z == k) {
          y = m - x;
          map<int, int> MP;
          [i] = x;
          map<int, int> MP;
          [i + 1] = y;
          map<int, int> MP;
          [i + 2] = x;
          i += 3;
          x++;
          k -= 2;
        }
        y = m - x;
        map<int, int> MP;
        [i] = x;
        map<int, int> MP;
        [i + 1] = y;
        i += 2;
        x++;
        k--;
      }
    }
  } else {
    if (k % 2 == 0) {
      while (k > 0) {
        y = m - x;
        map<int, int> MP;
        [i] = x;
        map<int, int> MP;
        [i + 1] = y;
        i += 2;
        x++;
        k--;
      }
    } else {
      while (k > 0) {
        if (z == k) {
          y = m - x;
          map<int, int> MP;
          [i] = x;
          map<int, int> MP;
          [i + 1] = y;
          map<int, int> MP;
          [i + 2] = x;
          i += 3;
          x++;
          k -= 2;
        }
        y = m - x;
        map<int, int> MP;
        [i] = x;
        map<int, int> MP;
        [i + 1] = y;
        i += 2;
        x++;
        k--;
      }
    }
  }
  for (int i = 0; i < n; i++) {
    cout << map<int, int> MP;
    [i] << " ";
  }
  return 0;
}
