#include<stdio.h>
#include<string.h>
#include<math.h>
#include<vector>
using namespace std;
long long gcd(long long a,long long b)
{
    if(b==0)
		return a;
    else return gcd(b,a%b);
}
long long lcm(long long a,long long b)
{
	return a*b/gcd(a,b);
}
int main()
{
    long long a,b;
    while(scanf("%I64d%I64d",&a,&b)!=EOF)
	{
		printf("%I64d %I64d",gcd(a,b),lcm(a,b));
	}
    return 0;
}