除了对古老盔甲情有独钟外,布伦希尔德(Brunhilda)是一个普通的七岁女孩。因此,她正在筹划一场完美的生日派对,为此她发明了以下游戏:所有孩子都在周围跑动,直到宣布某个数字 $k$。然后,所有孩子都尝试组成恰好 $k$ 人的小组。只要还剩下至少 $k$ 个孩子,就会继续组成 $k$ 人的小组。最后,剩下不足 $k$ 个孩子,他们将被淘汰(当然不是真的淘汰)出游戏。游戏随着宣布更多的数字而继续,如果所有孩子都出局,游戏结束。
布伦希尔德让她的父亲沃坦(Wotan)在游戏中宣布数字。沃坦不喜欢这个游戏,在他们第一次尝试时宣布了 $\infty$。布伦希尔德认为这在派对上会相当令人尴尬,于是她给了他一个包含 $m$ 个质数的列表,他每次宣布数字时都可以从中选择;他可以多次使用同一个数字。
沃坦希望尽快结束游戏,因为他买了他最喜欢的足球俱乐部阿斯加德 FC(FC Asgard)比赛的门票。不幸的是,布伦希尔德还不知道会有多少个孩子来参加她的派对。现在,对于 $Q$ 个不同的孩子人数 $n_1, \dots, n_Q$,沃坦想提前知道他最少需要宣布多少次数字才能结束游戏。
输入格式
第一行包含上述的整数 $m$ 和 $Q$。
第二行包含 $m$ 个不同的质数 $p_i$($1 \le i \le m$),按升序排列:这是沃坦可以使用的质数列表。
接下来的 $Q$ 行,每行包含一个整数 $n_j$($1 \le j \le Q$):可能参加游戏的孩子人数。
输出格式
输出应包含 $Q$ 行。第 $j$ 行应包含针对 $n_j$ 的答案:如果沃坦可以结束游戏,则应包含他所需的最少宣布次数(一个整数);否则,该行应包含字符串 oo(两个小写字母 o,表示 $\infty$)。
数据范围
- $1 \le m \le 100\,000$
- $1 \le Q \le 100\,000$
- $2 \le p_i \le 10\,000\,000$
- $1 \le n_j \le 10\,000\,000$
对于部分测试数据,满足以下条件:
- 在价值 20 分的测试用例中:$m, n_j, Q \le 10\,000$
- 在额外价值 20 分的测试用例中:$Q = 1$
样例
输入样例 1
2 2 2 3 5 6
输出样例 1
3 oo