如题, WA on pretest 1
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll T, n, m, k;
ll query(ll a, ll b) {
if(b > 2000000000) return 1073741824;
printf("? %lld %lld\n", a, b);
fflush(stdout);
ll res;
scanf("%lld", &res);
return res;
}
const int E = 1073741824;
void solve() {
ll res = query(0, E), a = 0, cnt = 1;
while(res != E && cnt <= 29) {
a += res;
res = query(a, a + E);
++cnt;
}
if(res != E) puts("! 1");
else printf("! %lld\n", E - a);
fflush(stdout);
}
int main() {
scanf("%lld", &T);
while(T--) {
solve();
}
return 0;
}