#include<iostream>
#include<stdio.h>
#pragma warning(disable : 4996)
using namespace std;
typedef long long ll;
ll N, M;
ll GCD(ll a, ll b) {
	if (b == 0) {
		return a;
	}
	else {
		return GCD(b, a%b);
	}
}
int main() {
	while (scanf("%d%d",&N,&M)!=EOF)
	{
		int ans =GCD(N, M);
		cout << ans << " " << N * M / ans<<endl;
	}
	
	return 0;
}
