import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        // 读取输入的两个整数
        Scanner scanner = new Scanner(System.in);
        long a = scanner.nextLong();
        long b = scanner.nextLong();

        // 计算最大公因数
        long gcd = gcd(a, b);
        // 计算最小公倍数,先除后乘避免溢出
        long lcm = (a / gcd) * b;

        // 输出结果
        System.out.println(gcd + " " + lcm);
    }

    // 欧几里得算法(辗转相除法)计算最大公因数
    private static long gcd(long a, long b) {
        if (b == 0) {
            return a;
        }
        return gcd(b, a % b);
    }
}