20105 - Division

通过次数

1

提交次数

1

时间限制 : 1 秒
内存限制 : 128 MB

CF1444A Division

Oleg 最喜欢的科目是历史和数学,他最喜欢的数学分支是除法。

为了提升自己的除法能力,Oleg 想出了 t 对整数 p_iq_i,并且对于每一对,他决定找到最大的整数 x_i,使得:

  • p_i 能被 x_i 整除;
  • x_i 不能被 q_i 整除。

Oleg 非常擅长除法,很快就找到了所有答案,你能做到吗?

输入

第一行包含一个整数 t1 \le t \le 50),表示整数对的数量。

接下来的 t 行,每行包含两个整数 p_iq_i1 \le p_i \le 10^{18}2 \le q_i \le 10^{9}),表示第 i 对整数。

输出

输出 t 个整数,第 i 个整数表示最大的 x_i,满足 p_i 能被 x_i 整除,且 x_i 不能被 q_i 整除。

可以证明,在给定的约束条件下,总是存在至少一个满足条件的 x_i

样例

输入

3
10 4
12 6
179 822

输出

10
4
179

提示

对于第一对数,p_1 = 10q_1 = 4,答案是 x_1 = 10,因为 1010 的最大约数,且 10 不能被 4 整除。

对于第二对数,p_2 = 12q_2 = 6,注意:

  • 12 不是合法的 x_2,因为 12 能被 q_2 = 6 整除;
  • 6 也不是合法的 x_2,因为 6 也能被 q_2 = 6 整除。

12 的下一个约数是 4,它不能被 6 整除,因此答案是 4