#include <bits/stdc++.h>
using namespace std;
long long MOD = 1e9 + 7;
long long MAX = 1e17;
int main() {
  ios_base::sync_with_stdio(0);
  ;
  int n;
  cin >> n;
  vector<int> ans(n);
  for (size_t i = 0; i < ans.size(); i++) ans[i] = INT_MAX;
  for (int j = 0; (1 << j) <= n; j++) {
    vector<int> a, b;
    for (int i = 0; i < n; i++) {
      if (i & (1 << j))
        a.push_back(i);
      else
        b.push_back(i);
    }
    vector<int> c(n, INT_MAX), d(n, INT_MAX);
    if (a.size()) {
      cout << a.size() << endl;
      for (size_t i = 0; i < a.size(); i++) {
        cout << 1 + a[i] << " ";
      }
      cout << endl;
      fflush(stdout);
      for (int i = 0; i < n; i++) cin >> c[i];
    }
    if (b.size()) {
      cout << b.size() << endl;
      for (size_t i = 0; i < b.size(); i++) {
        cout << 1 + b[i] << " ";
      }
      cout << endl;
      fflush(stdout);
      for (int i = 0; i < n; i++) cin >> d[i];
    }
    for (int i = 0; i < n; i++) {
      if (i & (1 << j))
        ans[i] = min(ans[i], d[i]);
      else
        ans[i] = min(ans[i], c[i]);
    }
  }
  cout << -1 << endl;
  for (size_t i = 0; i < ans.size(); i++) cout << ans[i] << " ";
  cout << endl;
  fflush(stdout);
}
