var i,n,a,b, uc,bcnn:integer ;
c:array[1..100] of integer;
function ucln(a,b:integer):integer;
var r:integer;
begin
r:=a mod b;
while r<>0 do begin a:=b; b:=r; r:= a mod b; end;
ucln:=b;
end;
begin
assign(input,'f1.inp'); reset(input);
assign(output,'f2.out'); close(output);
readln(n);
for i:=1 to n do
begin readln(c[i]); end;
for i:= 1 to n do Write(c[i]:3);writeln;
uc:=ucln(c[1], c[2]);
bcnn:=(c[1]*c[2])div uc;
for i:=3 to n do
begin
uc:=ucln(uc,c[i]);
bcnn:= bcnn*c[i] div uc;
end;
Writeln(uc);
Write(bcnn);
close(input); close(output);
end.