void findGCDandLCM(int *x, int *y, int *gcd, int *lcm){
    int a=*x, b=*y;
    while (b !=0){
        int temp=b;
        b=a % b;
        a= temp;
    }
    *gcd=a;
    *lcm=(*x**y) / *gcd;
}
int main(){
    int x,y,gcd,lcm;
    scanf ("%d",&x);
    scanf ("%d",&y);
    
    if(x<=0||y<=0){
        Printf ("invalid input");
    }else{
        findGCDandLCM(&x,&y,&gcd,&lcm);
        Printf ("%d %d",gcd,lcm);
    }
    return(0);
}