#include <stdio.h>
void computeGCDandLCM(int a, int b, int *gcd, int *lcm) {
    int x = a, y = b;
    while (y != 0) {
        int temp = y;
        y = x % y;
        x = temp;
    }
    *gcd = x;
    *lcm = (a * b) / (*gcd);
}
int main() {
    int x, y;
    scanf("%d %d", &x, &y);
    if(x <= 0 || y <= 0) {
        printf("Invalid input");
        return 0;
    }
    int gcd, lcm;
    ComputrGCDandLCM(x, y, &gcd, &lcm);
    printf("%d %d", gcd, lcm);
    return 0;
}