#P1102. 欧拉降幂

欧拉降幂

B. 欧拉降幂

题目描述

最近,lhylhy学到了一个新算法,快速幂的升级版--欧拉降幂,该算法可以在Θ(logb)\Theta(logb)的时间复杂度下计算出ab%pa^b\%p的值,这使得lhylhy对于幂运算充满信心。

于是他就找到了这样的函数来练手h(x,y)=xyxh(x,y)=xy^x,不过,最后为了美观性,lhylhy将它改为了更加对称的式子f(x,y)=xyx+yxyf(x,y)=xy^x+yx^y.

现在,lhylhy想要搜索f(x,y)=nf(x,y)=n是否有解,其中nn是一个给定的正整数。可以证明,如果该方程有正整数解(x0,y0)(x_0,y_0),那么必然有1x0,y0n1 \le x_0, y_0 \le n.

但是通过枚举(x,y)(x,y)的方式找解的效率不高,所以lhylhy决定把它作为checkerchecker,而你的任务就是找到任意的一组正整数解(x,y)(x,y),使得f(x,y)=nf(x,y)=n.如果方程无解,请输出-11.

输入格式

第一行,一个正整数TT,表示测试用例的个数。

每个测试用例一行,一个正整数nn.

输出格式

每个测试用例一行,若有解,请输出任意一组解,若无解,输出-1.

样例输入

5
3
7
42
31250
20732790

样例输出

-1
-1
2 3
5 5
3 13

数据范围及约定

对于20%20\%的数据,1T10,1n1041 \le T \le 10, 1 \le n \le 10^4.

对于50%50\%的数据,1T103,1n1091 \le T \le 10^3, 1 \le n \le 10^9.

对于100%100\%的数据,1T104,1n10181 \le T \le 10^4, 1 \le n \le 10^{18}.