import sys import numpy as np read = sys.stdin.buffer.read readline = sys.stdin.buffer.readline readlines = sys.stdin.buffer.readlines MOD = 10**9 + 7 U = 10**5 N, M = map(int, readline().split()) V = np.array(readline().split(), np.int64) R = np.array(readline().split(), np.int64) A, B = map(int, read().split()) def compute_sums(A): dp = np.zeros(U + 1, np.int64) dp[0] = 1 for x in A: dp[x:] += dp[:-x] dp %= MOD dp[0] = 0 return dp V = compute_sums(V) R = compute_sums(R) Vcum = np.cumsum(V) % MOD i = np.arange(U + 1, dtype=np.int64) ind1 = np.minimum(U, i * B) ind2 = np.minimum(U, i * A - 1) x = (Vcum[ind1] - Vcum[ind2]) * R % MOD print(x.sum() % MOD)