#2402. 最小公倍数的区间

最小公倍数的区间

Background

Special for beginners, ^_^

Description

小明最近学会了求区间的最小公倍数,非常兴奋,觉得自己挺能干,到处得瑟。徐老师为了打击一下他的嚣张气焰,给他出了一个逆问题,已知区间的最小公倍数,反求原来的区间左右端点。小明瞬间傻眼,只好求助你这个报名参加过石老师信奥数学班的高手帮他解决,你能帮帮他吗?

Format

Input

第一行一个整数 TT1T10000001 \le T \le 1000000) 代表询问个数。

接下来 TT 行每行一个整数 nn1n10191 \le n \le 10^{19})代表一个询问。

Output

TT 行,每行两个整数 L,RL, R 代表一个询问的区间的左右端点。

如果有多组解:

  • 输出最左区间。
  • 如果还有多组解,输出最小区间。

如果无解,则输出 NO

Samples

2
6
3
1 3
NO

Limitation

1s, 1024KiB for each test case.