#include <bits/stdc++.h>
using namespace std;
int n, m, i, j, k, l, a[1000009], b[1000009], p[1000009], ans, cn, t, x, y, z,
    mx, mn, s;
char c[1000009], d[1000009], ch;
int main() {
  while (scanf("%d", &n) != EOF) {
    memset(a, 0, sizeof(a));
    memset(b, 0, sizeof(b));
    x = n / 2;
    cn = 0;
    b[cn++] = 0;
    for (i = n; i > 0; i--) {
      a[x] = 1;
      b[cn++] = x;
      if (a[(x + n) / 2] == 0) {
        x = (x + n) / 2;
      } else if (a[x / 2] == 0) {
        x = x / 2;
      } else {
        break;
      }
    }
    reverse(b, b + cn);
    if (cn != n + 1) {
      printf("-1\n");
    } else {
      for (i = 0; i < cn; i++) {
        if (i == 0) {
          printf("%d", b[i]);
        } else {
          printf(" %d", b[i]);
        }
      }
      printf("\n");
    }
  }
  return 0;
}
