def query_ask(y): print(f"? {y}", flush=True) if DEBUG: return y <= X else: return int(input()) def query_ans(x): print(f"! {x}", flush=True) DEBUG = 0 if DEBUG: print("DEBUG MODE!") X = 10 from bisect import bisect_left def reverse_result(y): return ~query_ask(y) ans = bisect_left(range(10**9+1),1,key=reverse_result) query_ans(ans)