/*
2022年4月12日18点00分
程序作用:求两个数的最大公因数和最小公倍数
*/

#include <iostream>
using namespace std;

int max(int n, int m)
{
    int a;
    if (n < m) a = m;
    else a = n;
    return a;
}

int main()
{
    int a, b;
    int n, m;
    cin >> n >> m;
    bool flag = true;
    for (int i = max(n,m); i >= 1; i--)
    {
        if (n % i == 0 && m % i == 0)
        {
            a = i;
            break;
        }
    }
    for (int i = max(n,m); ;i++)
    {
        if (i % n == 0 && i % m == 0)
        {
            b = i;
            break;
        }
    }
    cout << a << endl;
    cout << b << endl;
    return 0;
}