n,m=map(int,input().split()) v=list(map(int,input().split())) r=list(map(int,input().split())) a,b=map(int,input().split()) mod=10**9+7 import collections V=collections.defaultdict(int) R=collections.defaultdict(int) V[0]=1 R[0]=1 for i in v: for j,k in list(V.items()): V[j+i]+=k V[j+i]%=mod for i in r: for j,k in list(R.items()): R[j+i]+=k R[j+i]%=mod Vkumi=[0 for i in range(100001)] del V[0] del R[0] for i,j in V.items(): Vkumi[i]=j for i in range(1,100001): Vkumi[i]+=Vkumi[i-1] Vkumi[i]%=mod ans=0 for i,j in R.items(): if i*a>10**5: continue elif i*b>10**5: ans+=(Vkumi[-1]-Vkumi[i*a-1])*j%mod ans%=mod else: ans+=(Vkumi[i*b]-Vkumi[i*a-1])*j%mod ans%=mod print(ans)