import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int grade = Integer.parseInt(br.readLine()); System.out.println(grade - 1); long max = 1000000000; long next = 500000000; long min = 0; for (int i = 0; i < 100; i++) { System.out.println(next + " ?"); if (Integer.parseInt(br.readLine()) == 1) { min = next; next = next + (int) Math.ceil((max - next) / 2); if (max == next) { System.out.println(next + " !"); } } else { max = next - 1; next = next - (int) ((next - min) / 2); if (min == next) { System.out.println(next + " !"); } } } } }