Var a,b,c,d,m:real;z:boolean;
Begin
read(a,b,c,d);
if (a<=b) and (b<=c) and (c<=d) then <br> begin
m:=max(max(a,b),max(c,d));
a:=m;
b:=m;
c:=m;
d:=m;
end
else if (a>b) and (b>c) and (c>d) then z:=true
else begin
a:=a*a;
b:=b*b;
c:=c*c;
d:=d*d;
end;
writeln(a,' ',b,' ',c,' ',d);
End.