program f;
const Cn = 100;
var A,B:array[0..100] of longint;
    Pos,Base:longint;
    K:longint;
    i:longint;
    Ctr:longint;
begin
   read(k);
   while (k<>0) do begin
      for Pos:=0 to k-1 do 
         read(A[Pos]);
      for Pos:=1 to k do
         read(B[Pos]);
      readln(i);
      if (i<k) then
         writeln(A[i])
      else begin
         i:=(i-k)+1;
	 Base:=0;
	 while (i>0) do begin
	    Ctr:=0;
	    for Pos:=1 to k do begin
	       Ctr:=Ctr+(B[Pos]*A[(Base+k-Pos) mod Cn]);
	    end;
	    A[(Base+k) mod Cn]:=Ctr mod 10000;
	    Base:=(Base +1) mod Cn;
	    dec(i);
	 end;
	 writeln(A[(Base+k-1) mod Cn]);
      end;	 
      read(k);
   end;
end.