// Bcnn(a,b) = a*b / ucln(a,b)
// Uc(a,b) = U(Ucln(a,b))
uses crt;
var a,b:word;
t,i:longword;
begin
clrscr;
readln(a,b);
t:=a*b;
while a*b<>0 do
begin
a:=a mod b;
if a <> 0 then b:=b mod a;
end;
writeln('UCLN: ',a+b);
writeln('BCNN: ',t div (a+b));
write('Cac uoc chung: ');
t:=a+b;
for i:=1 to t do
if t mod i = 0 then write(i,' ');
readln;
end.