Permutation p is an ordered set of integers p1, p2, ..., pn, consisting of n distinct positive integers not larger than n. We'll denote as n the length of permutation p1, p2, ..., pn.

Your task is to find such permutation p of length n, that the group of numbers |p1 - p2|, |p2 - p3|, ..., |pn - 1 - pn| has exactly k distinct elements.

Input

The single line of the input contains two space-separated positive integers n, k (1 ≤ k < n ≤ 105).

Output

Print n integers forming the permutation. If there are multiple answers, print any of them.

Examples

Input

3 2


Output

1 3 2


Input

3 1


Output

1 2 3


Input

5 2


Output

1 3 2 4 5

Note

By |x| we denote the absolute value of number x. 
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 66, inf = 1234567891;
inline int read() {
  int s(0), w(1);
  char ch = getchar();
  while (ch < '0' || ch > '9') {
    if (ch == '-') w = -1;
    ch = getchar();
  }
  while (ch >= '0' && ch <= '9') s = s * 10 + ch - '0', ch = getchar();
  return s * w;
}
inline void put(int x) {
  if (!x) putchar('0');
  if (x < 0) putchar('-'), x = -x;
  int num(0);
  char c[66];
  while (x) c[++num] = x % 10 + 48, x /= 10;
  while (num) putchar(c[num--]);
  return (void)(putchar('\n'));
}
int n, k;
int a[N], p[N];
signed main() {
  n = read(), k = read();
  int i, l = 1, r = n;
  for (i = 1; i <= k; ++i) {
    if (i & 1)
      a[i] = l, ++l;
    else
      a[i] = r, --r;
  }
  for (i = k + 1; i <= n; ++i) {
    if (k & 1)
      a[i] = a[i - 1] + 1;
    else
      a[i] = a[i - 1] - 1;
  }
  for (i = 1; i <= n; ++i) cout << a[i] << ' ';
  return 0;
}
