#include <iostream>
using namespace std;

unsigned long long int gcd(unsigned long long int a, unsigned long long int b)
{
	if(b == 0)
	{
		return(a);
	}
	return gcd(b, a % b);
}

void solve()
{
	unsigned long long int a;
	while(cin >> a)
	{
		unsigned long long int b;
		cin >> b;
		if(a < b)
		{
			unsigned long long int temp = a;
			a = b;
			b = temp;
		}
		unsigned long long int g = gcd(a, b);
		unsigned long long int lcm = a * b / g;
		cout << g << " " << lcm << endl;
	}
}

int main()
{
	solve();
	return(0);
}