#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int n;
  cin >> n;
  vector<int> ans(2 * n, n);
  for (int i = 1; i < n; ++i) {
    int x = (i & 1) ? (i >> 1) : (n - 1 + (i >> 1));
    int y = x + (n - i);
    ans[x] = ans[y] = i;
  }
  for (int i = 0; i < 2 * n; ++i) {
    cout << ans[i] << ' ';
  }
  cout << '\n';
  return 0;
}

### Prompt

Your task is to create a cpp solution to the following problem:

You have array a that contains all integers from 1 to n twice. You can arbitrary permute any numbers in a.

Let number i be in positions xi, yi (xi < yi) in the permuted array a. Let's define the value di = yi - xi — the distance between the positions of the number i. Permute the numbers in array a to minimize the value of the sum <image>.

Input

The only line contains integer n (1 ≤ n ≤ 5·105).

Output

Print 2n integers — the permuted array a that minimizes the value of the sum s.

Examples

Input

2


Output

1 1 2 2


Input

1


Output

1 1

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int n;
  cin >> n;
  vector<int> ans(2 * n, n);
  for (int i = 1; i < n; ++i) {
    int x = (i & 1) ? (i >> 1) : (n - 1 + (i >> 1));
    int y = x + (n - i);
    ans[x] = ans[y] = i;
  }
  for (int i = 0; i < 2 * n; ++i) {
    cout << ans[i] << ' ';
  }
  cout << '\n';
  return 0;
}

```