#include <bits/stdc++.h>
using namespace std;
const long long LINF = 0x3f3f3f3f3f3f3f3f;
const long long NLINF = 0xf7f7f7f7f7f7f7f7;
const int INF = 0x3f3f3f3f, NINF = 0xf7f7f7f7;
const int MOD1 = 1e9 + 7, MOD2 = 1e9 + 9;
vector<int> a, b, c;
int n;
int main() {
  scanf("%d", &n);
  if (n % 2 == 0) printf("-1\n"), exit(0);
  for (int i = 1; i < n; i++) a.emplace_back(i);
  a.emplace_back(0);
  for (int i = 2; i < n; i++) b.emplace_back(i);
  b.emplace_back(0);
  if (n > 1) b.emplace_back(1);
  for (int i = 0; i < n; i++) c.emplace_back((a[i] + b[i]) % n);
  for (auto &x : a) printf("%d ", x);
  printf("\n");
  for (auto &x : b) printf("%d ", x);
  printf("\n");
  for (auto &x : c) printf("%d ", x);
}
