ok=10 ng=10**9+10 for i in range(100): mid=(ok+ng)//2 print(f'? {max(mid-i,0)}',flush=True) t=int(input()) if t >= 0: ok = mid else: ng = mid print(f'! {max(ok,10)}')