Type
     loseta= record
           d,l: longint;
           end;

Var
   d,i,j,l,m,n,p,q,t,x,ini,fin: longint;
   vis: array [1..5000] of boolean;
   cola: array [1..5*5000] of loseta;
   list: array [1..5000, 0..10] of longint;

Begin
     readln(input, n, p, x);
     readln(input, q);
     for i:= 1 to q do
         begin
         read(input, l);
         read(input, m);
         for j:= 1 to m do
             begin
             read(input, t);
             if (l+t <= n) then
                begin
                Inc(list[l, 0]);
                list[l, list[l, 0]]:= l+t;
                end;
             if (0 < l-t) then
                begin
                Inc(list[l, 0]);
                list[l, list[l, 0]]:= l-t;
                end;
             end;
         readln(input);
         end;
     d:= 0;
     ini:= 1; fin:= 1;
     while (p <> x) and (ini <= fin) do
           begin
           if (not vis[p]) then
              begin
              vis[p]:= true;
              for i:= 1 to list[p, 0] do
                  begin
                  cola[fin].l:= list[p, i];
                  cola[fin].d:= d + 1;
                  Inc(fin);
                  end;
              end;
           p:= cola[ini].l;
           d:= cola[ini].d;
           Inc(ini);
           end;
     if (p = x) then writeln(output, d)
                else writeln(output, 'Falta el postre');
End.

