line1 = gets.to_s
line2 = gets.to_s
line_arr1 = line1.split(' ').map(&:to_i)
line_arr2 = line2.split(' ').map(&:to_i)
puts line_arr1[0].gcd(line_arr1[1]).to_s + ' ' + line_arr1[0].lcm(line_arr1[1]).to_s
puts line_arr2[0].gcd(line_arr2[1]).to_s + ' ' + line_arr2[0].lcm(line_arr2[1]).to_s