#include"stdio.h"
void gcd(int a,int b,int *gys,int *gbs);
main()
{
int gys,gbs;
int a,b;
int k;
scanf("%d",&k);
for(int i=1;i<=k;i++)
{
scanf("%d %d",&a,&b);
gcd(a,b,&gys,&gbs);
printf("%d %d\n",gys,gbs);
}
}
void gcd(int a,int b,int *gys,int *gbs)
{
int m=a,n=b,r,t;
if(b>a)
{
t=a;
a=b;
b=t;
}
r=a%b;
while(r!=0)
{
a=b;
b=r;//gongyueshu
r=a%b;
}
*gys=b;
*gbs=m*n/(*gys);
}