#include "interactive.h"
#include<bits/stdc++.h>
using namespace std;
inline bool getbit(int num, int bit)
{
return (num >> bit)&1;
}
vector<int> dif(vector<int> a, vector<int> b)
{
map<int, int> f;
for(int i : b) f[i]++;
vector<int> c;
for(int i : a) if(--f[i] < 0) c.push_back(i);
sort(c.begin(), c.end());
return c;
}
vector<int> guess(int n) {
int last = ask(n);
map<int, int> f;
for(int j = 0; j < 7; j++){
vector<int> question;
for(int i = 1; i < n; i++) if(getbit(i, j) == 1) question.push_back(i);
if(question.size() == 0) continue;
vector<int> x = get_pairwise_xor(question);
question.push_back(n);
vector<int> y = get_pairwise_xor(question);
y = dif(y, x); y = dif(y, {0});
for(int i : y){
//cerr<<"A"<<j<<" "<<i<<endl;
i ^= last; f[i] += (1 << j);
}
}
vector<int> ans(n); ans[n-1] = last;
for(pair<int, int> i : f) ans[i.second/2-1] = i.first;
return ans;
}