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