{
TASK: CANNIBAL
ID: k02
LANG: PASCAL
}


const ogr = 102;


var a, b : array[0..205] of longint;
    t0, t1, t2, t3, i, j, k, l, o, p, m, n, br0, br1, br2 : longint;


procedure input;
var f : text;
 begin
  assign(f, '');
  reset(f);
  for i := 1 to ogr - 1 do
    read(f, a[i]);
  readln(f, a[ogr]);
  for i := 1 to ogr - 1 do
    read(f, b[i]);
  readln(f, b[ogr]);
  close(f);
 end;


begin
 input;
 for i := 1 to ogr do
   begin
    if a[i] = 0 then inc(br0)
    else if a[i] = 1 then inc(br1)
    else if a[i] = 2 then inc(br2);
   end;
 if (br0 >= 51) or (br1 >= 51) or (br2 >= 51) then
   begin
    if br0 >= 51 then writeln(0)
    else if br1 >= 51 then writeln(1)
    else if br2 >= 51 then writeln(2)
    else writeln(0);
   end
 else
   begin

{    for i := 1 to ogr do
      if a[i] = -1 then
        begin
         p := i;
         break;
        end;}



    br0 := 0;
    br1 := 0;
    br2 := 0;
    k := 1; //a[p + 1];
//    if p = ogr then k := a[1];
    for i := 1 to ogr - 1do
      if a[i] = k then
        begin
         if a[i + 1] = 0 then inc(br0)
         else if a[i + 1] = 1 then inc(br1)
         else if a[i + 1] = 2 then inc(br2);
        end;
    if a[ogr] = k then
      begin
       if a[1] = 0 then inc(br0)
       else if a[1] = 1 then inc(br1)
       else if a[1] = 2 then inc(br2);
      end;

    if (br0 >= br1) and (br0 >= br2) then t1 := 0
    else if (br1 >= br0) and (br1 >= br2) then t1 := 1
    else if (br2 >= br0) and (br2 >= br1) then t1 := 2
    else t1 := 0;



    br0 := 0;
    br1 := 0;
    br2 := 0;
    k := 2; //a[p + 1];
//    if p = ogr then k := a[1];
    for i := 1 to ogr - 1do
      if a[i] = k then
        begin
         if a[i + 1] = 0 then inc(br0)
         else if a[i + 1] = 1 then inc(br1)
         else if a[i + 1] = 2 then inc(br2);
        end;
    if a[ogr] = k then
      begin
       if a[1] = 0 then inc(br0)
       else if a[1] = 1 then inc(br1)
       else if a[1] = 2 then inc(br2);
      end;

    if (br0 >= br1) and (br0 >= br2) then t2 := 0
    else if (br1 >= br0) and (br1 >= br2) then t2 := 1
    else if (br2 >= br0) and (br2 >= br1) then t2 := 2
    else t2 := 0;



    br0 := 0;
    br1 := 0;
    br2 := 0;
    k := 0; //a[p + 1];
//    if p = ogr then k := a[1];
    for i := 1 to ogr - 1do
      if a[i] = k then
        begin
         if a[i + 1] = 0 then inc(br0)
         else if a[i + 1] = 1 then inc(br1)
         else if a[i + 1] = 2 then inc(br2);
        end;
    if a[ogr] = k then
      begin
       if a[1] = 0 then inc(br0)
       else if a[1] = 1 then inc(br1)
       else if a[1] = 2 then inc(br2);
      end;

    if (br0 >= br1) and (br0 >= br2) then t0 := 0
    else if (br1 >= br0) and (br1 >= br2) then t0 := 1
    else if (br2 >= br0) and (br2 >= br1) then t0 := 2
    else t0 := 0;










    for i := 1 to ogr do
      if a[i] = -1 then
        begin
         p := i;
         break;
        end;

    k := p - 1;
    if k = 0 then k := ogr;

    if (b[k] <> -1) and ((b[k] = t1) or (b[k] = t2) or (b[k] = t0)) then
      begin
       if b[k] = t1 then writeln(1)
       else if b[k] = t2 then writeln(2)
       else if b[k] = t0 then writeln(0);
      end
    else
      begin
       br0 := 0;
       br1 := 0;
       br2 := 0;
       k := a[p + 1];
       if p = ogr then k := a[1];
       for i := 2 to ogr do
         if a[i] = k then
           begin
            if a[i - 1] = 0 then inc(br0)
            else if a[i - 1] = 1 then inc(br1)
            else if a[i - 1] = 2 then inc(br2);
           end;
       if a[1] = k then
         begin
          if a[ogr] = 0 then inc(br0)
          else if a[ogr] = 1 then inc(br1)
          else if a[ogr] = 2 then inc(br2);
         end;

       if (br0 >= br1) and (br0 >= br2) then writeln(0)
       else if (br1 >= br0) and (br1 >= br2) then writeln(1)
       else if (br2 >= br0) and (br2 >= br1) then writeln(2)
       else writeln(0);
      end;




   end;
end.
