import java.math.BigInteger;
import java.util.Scanner;
public class Main{
public static long gcd(long a,long b)
{
if(b==0) return a;
return gcd(b,a%b);
}
public static long fmul(long a,long b,long p)
{
return (a*b-(long)((double)a*b/p)*p+p)%p;
}
public static long exgcd(long a,long b,long []x,long []y)
{
if(b==0)
{
x[0]=1;
y[0]=0;
return a;
}
long g=exgcd(b,a%b,y,x);
y[0]=y[0]-x[0]*(a/b);
return g;
}
public static int n;
public static long exchina(long []a,long []b)
{
long m=a[1];
long ans=b[1];
long aa,bb,c,g,bg;
for(int i=2;i<=n;i++)
{
long []x=new long[1];
long []y=new long[1];
aa=m;
bb=a[i];
c=(b[i]-ans%bb+bb)%bb;
g=gcd(aa,bb);
if(c%g!=0) return -1;
bg=bb/g;
exgcd(aa,bb,x,y);
x[0]=fmul(x[0],c/g,bg);
ans=ans+x[0]*m;
m=m*bg;
ans=(ans%m+m)%m;
}
return (ans%m+m)%m;
}
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
boolean flag=true;
int d;
int []a=new int[1005];
int []b=new int[1005];
BigInteger m,k;
BigInteger dd;
while(flag==true)
{
d=sc.nextInt();
if(d==-1) break;
for(int i=1;i<=d-1;i++)
a[i]=sc.nextInt();
for(int i=0;i<=d-1;i++)
b[i]=sc.nextInt();
m=sc.nextBigInteger();
k=sc.nextBigInteger();
//System.out.println(m);
dd=BigInteger.valueOf(d);
//System.out.println(dd);
int []pm=new int[3000];
int []pk=new int[3000];
BigInteger tt;
BigInteger zero;
zero=BigInteger.valueOf(0);
int cnt=0;
int tot=0;
while(m.compareTo(zero)>0)
{
tt=m.mod(dd);
pm[++cnt]=tt.intValue();
//System.out.println(pm[cnt]);
m=m.divide(dd);
//System.out.println()
}
//System.out.println(cnt);
while(k.compareTo(zero)>0)
{
tt=k.mod(dd);
pk[++tot]=tt.intValue();
k=k.divide(dd);
}
//System.out.println(tot);
if(cnt!=tot)
{
System.out.println("NO");
continue;
}
long []pa=new long [5000];
long []pb=new long[5000];
n=tot;
//System.out.println(n);
int jud=0;
// int []ip;
//ip=b;
//System.out.println(ip[1]);
for(int i=1;i<=n;i++)
{
long cir=1;
long mod=0;
int to=pm[i];
int []ip;
if(i==n)ip=a;
else ip=b;
//System.out.println(ip[i]);
while(ip[to]!=pm[i])
{
cir++;to=ip[to];
}
//System.out.println(cir+"*");
int j=0;
to=pm[i];
while(j<=cir&&to!=pk[i])
{
j++;
mod++;
to=ip[to];
}
if(to!=pk[i])
{
System.out.println("NO");
jud=1;
break;
}
pa[i]=cir;
pb[i]=mod;
//System.out.println(cir+" "+mod);
}
if(jud==1) continue;
long res;
res=exchina(pa,pb);
if(res==-1)
System.out.println("NO");
else System.out.println(res);
}
sc.close();
}
}
03-20
563