l=lambda:map(int,raw_input().split()) n=input() c=input() v=input() s=l() t=l() y=l() m=l() r=[(0,0,[1])] g=[] while len(r)>0: a=r.pop(0) for i in [i for i in range(v)if s[i]==a[2][-1]]: b=(a[0]+y[i],a[1]+m[i],a[2]+[t[i]]) if b[0]<=c: if b[2][-1]==n: g+=[b] else: r+=[b] if len(g)>0: a=min(g,key=lambda x:x[1]) print a[1] else: print -1