#include #include #include void Read(int &x){ char c; while(!isdigit(c=getchar())); x=(c&15); while(isdigit(c=getchar())) x=x*10+(c&15); } void Print(int x,char c){ int i; for(i=1;i*10LL<=x;i*=10); for(;i;i/=10) putchar(x/i%10|48); putchar(c); } int main(){ int T,a,b; Read(T); while(T--){ Read(a),Read(b); if(a>b) std::swap(a,b); if(b-a==1 || (a==1 && b==1)) puts("-1 -1"); else if(a==b) Print(2,32),Print(a,10); else{ int x,y=b-a; for(x=2;x*x<=y;++x) if(!(y%x)) break; if(y%x) x=y; Print(x,32),Print(y,10); } } return 0; }