← Home
```go
package main

import (
	"fmt"
	"os"
)

func main() {
	var t int
	fmt.Scan(&t)
	for test := 0; test < t; test++ {
		low := 2
		high := 999
		for low < high {
			mid := (low + high) / 2
			fmt.Printf("? 1 %d\n", mid)
			os.Stdout.Sync()
			var resp int
			fmt.Scan(&resp)
			if resp == -1 {
				os.Exit(0)
			}
			if resp == mid {
				low = mid + 1
			} else {
				high = mid
			}
		}
		fmt.Printf("! %d\n", low)
		os.Stdout.Sync()
	}
}
```