这是一道交互题。
Petya 和 Vasya 正在玩一个游戏。游戏由若干轮组成。在每轮开始时,Petya 秘密选择一个介于 $1$ 到 $n$ 之间的整数 $x$($n$ 与轮数无关)。然后 Vasya 可以说出一个介于 $1$ 到 $n$ 之间的数字 $y$,Petya 会告诉他 $y$ 是否小于 $x$。在每轮中,Vasya 可以询问任意多个数字。之后,Vasya 必须猜出数字 $x$。Vasya 的目标是在尽可能减少询问次数的同时正确猜出该数字。
请帮助 Vasya 编写一个程序来玩这个游戏。
保证 Petya 在一轮游戏中不会改变已选择的数字。然而,在新一轮开始时,他可以根据 Vasya 在之前轮次中的表现来选择数字。
输入格式
第一行包含两个整数:Petya 可以选择的最大数字 $n$ 和轮数 $k$($1 \le n \le 10^9$,$k = 10^4$)。
在此之后,每次询问后都会有 Petya 的回答。如果 Petya 选择的数字小于询问中的数字,则回答为 <,否则为 >=。
在尝试猜出数字(即使用 = 询问)后,不会有任何回应。
输出格式
你需要处理所有 $k$ 轮游戏。每行输出应包含恰好一个格式如下的询问:
c x
其中:
c— 一个字符,表示询问类型:?表示提问,=表示尝试猜出数字。x— 一个介于 $1$ 到 $n$ 之间的整数。
? 询问的总次数不应超过 $k(\log_2(n + 1) + 0.1)$。
样例
输入样例 1
4 2 < >= >= >=
输出样例 1
? 3 ? 2 = 2 ? 3 ? 4 = 4
说明
请注意,样例测试点是无效的,因为 $k \ne 10^4$。在实际测试中,第一个测试点将是:4 10000