int gys(int a, int b)
{
int t;
if (a < b)
{
t = a;
a = b;
b = t;
}
while (b != 0)
{
t = b;
b = a % t;
a = t;
}
return a;
}
int main()
{
int a, b, t;
while (scanf("%d%d", &a, &b) != EOF)
{
t = gys(a, b);
printf("%d %d\n", t, a / t * b);
}
return 0;
}