program prime;
var
k,p,q,n:int64;
i,j:longint;
f:boolean;
begin
assign(input,'prime.in');reset(input);
assign(output,'prime.out');rewrite(output);
readln(n);
k:=n;
for i:=2 to trunc(sqrt(n)) do
begin
if n mod i= 0 then
begin
n:=n div i;
for j:=2 to trunc(sqrt(i)) do
if i mod j =0 then f:=true;
if f=false then
writeln( k div i);
end; end;
close(input);close(output);
end.