var v:array[1..4] of integer;



 procedure citire;
 var max:integer;
 begin

  max:=0;

  readln(v[1],v[2],v[3],v[4]);

  if v[1]*v[2]+v[3]*v[4]>max then max:=v[1]*v[2]+v[3]*v[4]
  else if v[1]*v[3]+v[2]*v[4]>max then max:=v[1]*v[2]+v[4]*v[3]
  else if v[1]*v[4]+v[2]*v[3]>max then max:=v[1]*v[3]+v[2]*v[4]
  else if v[2]*v[4]+v[3]*v[1]>max then max:=v[1]*v[3]+v[4]*v[2]
  else if v[2]*v[3]+v[4]*v[1]>max then max:=v[1]*v[4]+v[3]*v[2]
  else if v[3]*v[4]+v[2]*v[1]>max then max:=v[1]*v[4]+v[2]*v[3];

  writeln(max);
 end;

begin
 citire;
 end.