#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int gcd(long long a,long long b){
    int c;
    if(a%b==0)
        return b;
    else
        c=a%b;
    if(a>c)
        return gcd(a,c);
    else
        return gcd(c,a);
}
int main()
{
    long long m,n;
    long long x,y;
    while(scanf("%I64d%I64d",&x,&y),x!=EOF,y!=EOF){
        if(x>y)
        m=gcd(x,y);
        else
        m=gcd(y,x);
    n=x*(y/m);
    printf("%I64d %I64d\n",m,n);
}
    return 0;
}