program daug_skaiciu;
  { 77 u‘davinys }
  const prad = 'daug.dat';
        rez = 'daug.rez';
        max = 1000;
  type didele_aibe = array [0..max] of set of 0..255;
       { didel‚s aib‚s modelis masyvu }

  var m : didele_aibe;
      f : text;
      i, sk, ind, elem, trukstamas : longint;
begin
  assign (f, prad);
  reset (f);
  { inicializuojamas masyvas m }
  for i := 1 to max do
    m[i] := [];
  m[0] := [0]; { nulis - ma‘iausias skai‡ius, kurŤ galime Ťtraukti Ť aibŠ }
  { neŤtraukus nulio, jis bus pateikiamas kaip rezultatas }
  { suformuojama aib‚ iž duot— skai‡i— }
  readln (f, sk);
  while (sk <> 0) do
    begin
      if sk <= 200000 { didesnius skai‡ius ignoruojame }
         then begin
                ind := sk div 256;
                elem := sk mod 256;
                m[ind] := m[ind] + [elem];
              end;
      readln (f, sk);
    end;
  { iežkosime tr–kstamo skai‡iaus }
  ind := 0;
  while m[ind] = [0..255] do
    ind := ind + 1;
  elem := 0;
  while elem in m[ind] do
    elem := elem + 1;
  trukstamas := ind * 256 + elem;
  { spausdinamas rezultatas }
  assign (f, rez);
  rewrite (f);
  writeln (f, trukstamas);
  close (f);
end.
