program divide;
var result,r5,d1,d2,i,thingtoadd:longint;
begin;
read(d1);
read(d2);
{shift d2 left by 16}
for i:=1 to 16 do begin
  d2:=d2*2;
end;
{begin regular translation here}
result:=0;
thingtoadd:=$00010000;
for i:=0 to 17 do begin
      write('loop     ',i,'    ',d1,'    ',d2,'    ',thingtoadd,' ',result);writeln;
  r5:=d1-d2;
  if r5>=0 then begin
    result:=result+thingtoadd;
    d1:=r5;
  end;
  thingtoadd:=thingtoadd div 2;
  d2:=d2 div 2;
end;
write(result);writeln;
end.