#include <bits/stdc++.h>
#include <bits/extc++.h> /** keep-include */
using namespace __gnu_pbds;
using namespace std;
#define int long long
template<class T>
using Tree = tree<T, null_type, less<T>, rb_tree_tag,
tree_order_statistics_node_update>;
using vi = vector<int>;
int query(int a, int b) {
cout<<"? "<<a<<" "<<b<<endl;
cout.flush();
int x;
cin>>x;
return x;
}
void solve() {
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
int n;
cin>>n;
Tree<int> t;
for(int i=1;i<=(1<<n);i++) {
t.insert(i);
}
int qr = (1 << (n + 1))/3;
int candidate = 1;
t.erase(candidate);
while(t.size() > 0 && qr--) {
int sz = t.size();
int kth = rng()%sz;
int maybe = *t.find_by_order(kth);
t.erase(maybe);
if(!query(candidate, maybe)) {
candidate = maybe;
}
}
cout<<"! "<<candidate<<endl;
}
int32_t main() {
int t = 1;
cin>>t;
while(t--) solve();
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlIDxiaXRzL2V4dGMrKy5oPiAvKioga2VlcC1pbmNsdWRlICovCnVzaW5nIG5hbWVzcGFjZSBfX2dudV9wYmRzOwoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBpbnQgbG9uZyBsb25nCgp0ZW1wbGF0ZTxjbGFzcyBUPgp1c2luZyBUcmVlID0gdHJlZTxULCBudWxsX3R5cGUsIGxlc3M8VD4sIHJiX3RyZWVfdGFnLAogICAgdHJlZV9vcmRlcl9zdGF0aXN0aWNzX25vZGVfdXBkYXRlPjsKCnVzaW5nIHZpID0gdmVjdG9yPGludD47CgoKaW50IHF1ZXJ5KGludCBhLCBpbnQgYikgewoJY291dDw8Ij8gIjw8YTw8IiAiPDxiPDxlbmRsOwoJY291dC5mbHVzaCgpOwoJaW50IHg7CgljaW4+Png7CglyZXR1cm4geDsKfQoKdm9pZCBzb2x2ZSgpIHsKCW10MTk5Mzcgcm5nKGNocm9ubzo6c3RlYWR5X2Nsb2NrOjpub3coKS50aW1lX3NpbmNlX2Vwb2NoKCkuY291bnQoKSk7CglpbnQgbjsKCWNpbj4+bjsKCVRyZWU8aW50PiB0OwoJZm9yKGludCBpPTE7aTw9KDE8PG4pO2krKykgewoJCXQuaW5zZXJ0KGkpOwoJfQoJaW50IHFyID0gKDEgPDwgKG4gKyAxKSkvMzsKCWludCBjYW5kaWRhdGUgPSAxOwoJdC5lcmFzZShjYW5kaWRhdGUpOwoJd2hpbGUodC5zaXplKCkgPiAwICYmIHFyLS0pIHsKCQlpbnQgc3ogPSB0LnNpemUoKTsKCQlpbnQga3RoID0gcm5nKCklc3o7CgkJaW50IG1heWJlID0gKnQuZmluZF9ieV9vcmRlcihrdGgpOwoJCXQuZXJhc2UobWF5YmUpOwoJCWlmKCFxdWVyeShjYW5kaWRhdGUsIG1heWJlKSkgewoJCQljYW5kaWRhdGUgPSBtYXliZTsKCQl9Cgl9Cgljb3V0PDwiISAiPDxjYW5kaWRhdGU8PGVuZGw7CgkKfQoKaW50MzJfdCBtYWluKCkgewoJaW50IHQgPSAxOwoJY2luPj50OwoJd2hpbGUodC0tKSBzb2x2ZSgpOwp9Cg==