#include <bits/stdc++.h>
using namespace std;
int n, mn, sz, a[2][15][1005];
int main() {
  int i, j, k, t, cnt;
  cin >> n;
  cnt = 0;
  for (i = 1; i < n; i *= 2) {
    sz = 0;
    for (j = 0; j < n; j++) {
      if (j % (i * 2) < i) sz++;
    }
    printf("%d\n", sz);
    for (j = 0; j < n; j++) {
      if (j % (i * 2) < i) printf("%d ", j + 1);
    }
    printf("\n");
    fflush(stdout);
    for (j = 1; j <= n; j++) {
      scanf("%d", &a[1][cnt][j]);
    }
    cnt++;
  }
  cnt = 0;
  for (i = 1; i < n; i *= 2) {
    sz = 0;
    for (j = 0; j < n; j++) {
      if (j % (i * 2) >= i) sz++;
    }
    printf("%d\n", sz);
    for (j = 0; j < n; j++) {
      if (j % (i * 2) >= i) printf("%d ", j + 1);
    }
    printf("\n");
    fflush(stdout);
    for (j = 1; j <= n; j++) {
      scanf("%d", &a[0][cnt][j]);
    }
    cnt++;
  }
  printf("-1\n");
  for (i = 1; i <= n; i++) {
    mn = 9e9;
    k = i - 1;
    for (j = 0; j < cnt; j++) {
      t = k % 2;
      mn = min(mn, a[t][j][i]);
      k /= 2;
    }
    printf("%d ", mn);
  }
  fflush(stdout);
}
