/*
#include <stdio.h>
void rec(int n)
{
if(n==0)
{
return ;
}
rec((n-1)/26);
printf("%c",(n-1)%26+'A');
}
main()
{
int n;
scanf("%d", &n );
rec(n);
return 0;
}
1 2 3 ....26 27 28 .,.. 52 53 ... 53+26
A B C ....Z AA AB .... AZ BA ... BZ
*/
/*
#include <stdio.h>
int main()
{
int i, n, j, z, b[10001];;
char a[10001];
for(i=1; i<=14; i++)
{
scanf("%c", &a[i]);
}
if(a[8]=='1'||a[8]=='2')
{
printf("19");
}
else
{
printf("20");
}
if(a[8]=='1'||a[8]=='3')
{
printf("%c%c/%c%c/%c%c M",a[1],a[2], a[3], a[4], a[5], a[6]);
}
else
{
printf("%c%c/%c%c/%c%c F", a[1],a[2], a[3], a[4], a[5], a[6]);
}
}
*/
#include <stdio.h>
int main()
{
int a, b, i, n, j;
scanf("%d %d", &a, &b);
for(i=1; i<=b; i++)
{
for(j=1; j<=b; j++)
{
if(a*i==b*j)
{
printf("%d ", a*i);
break;
}
}
}
for(i=b; b>=0; i--)
{
if(a%i==0&&b%i==0)
{
printf("%d ", i);
break;
}
}
}