import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner s=new Scanner(System.in);
		int a,b,k=1,t=1,x,y;
		int i=1,j=1;
		while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		}
	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		Scanner s=new Scanner(System.in);
		int a,b,k=1,t=1,x,y;
		int i=1,j=1;
		while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		}
	}
} Main public static void main(String[] args) {
		Scanner s=new Scanner(System.in);
		int a,b,k=1,t=1,x,y;
		int i=1,j=1;
		while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		}
	} main {
		Scanner s=new Scanner(System.in);
		int a,b,k=1,t=1,x,y;
		int i=1,j=1;
		while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		}
	} Scanner s=new Scanner(System.in); s new Scanner(System.in) int a a b b k=1 k 1 t=1 t 1 x x y; y int i=1 i 1 j=1; j 1 while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		} s.hasNext() s.hasNext s {
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		} a=s.nextInt() a s.nextInt() s.nextInt s b=s.nextInt() b s.nextInt() s.nextInt s k=a k a t=b t b while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			} true {
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			} if(k==t)
					break; k==t k t break; if(k<t){
					k=a*i;
					i++;
				} k<t k t {
					k=a*i;
					i++;
				} k=a*i k a*i a i i++ i if(t<k){
					t=b*j;
					j++;
				} t<k t k {
					t=b*j;
					j++;
				} t=b*j t b*j b j j++ j x=k x k i=1 i 1 j=1 j 1 k=a k a t=b t b while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			} true {
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			} if(k==t)
					break; k==t k t break; if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				} t<k t k {
					i++;
					if(a%i==0){
					k=a/i;
					}
				} i++ i if(a%i==0){
					k=a/i;
					} a%i==0 a%i a i 0 {
					k=a/i;
					} k=a/i k a/i a i if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				} k<t k t {
					j++;
					if(b%j==0){
					t=b/j;
					}
				} j++ j if(b%j==0){
					t=b/j;
					} b%j==0 b%j b j 0 {
					t=b/j;
					} t=b/j t b/j b j y=k y k System.out.println(y+" "+x) System.out.println System.out System System.out y+" "+x y+" "+x y " " x i=1 i 1 j=1 j 1 k=1 k 1 t=1 t 1 String[] args args public class Main {
	public static void main(String[] args) {
		Scanner s=new Scanner(System.in);
		int a,b,k=1,t=1,x,y;
		int i=1,j=1;
		while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		}
	}
} public class Main {
	public static void main(String[] args) {
		Scanner s=new Scanner(System.in);
		int a,b,k=1,t=1,x,y;
		int i=1,j=1;
		while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		}
	}
} Main
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner s=new Scanner(System.in);
		int a,b,k=1,t=1,x,y;
		int i=1,j=1;
		while(s.hasNext()){
			a=s.nextInt();
			b=s.nextInt();
			//
			k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(k<t){
					k=a*i;
					i++;
				}
				if(t<k){
					t=b*j;
					j++;
				}
			}
			x=k;
			//
			i=1;j=1;k=a;t=b;
			while(true){
				if(k==t)
					break;
				if(t<k){
					i++;
					if(a%i==0){
					k=a/i;
					}
				}
				if(k<t){
					j++;
					if(b%j==0){
					t=b/j;
					}
				}
			}
			y=k;
			System.out.println(y+" "+x);
			i=1;j=1;k=1;t=1;
		}
	}
}