def modPow(a,n,mod):#繰り返し二乗法 a**n % mod if n==0: return 1 if n==1: return a%mod if n & 1: return (a*modPow(a,n-1,mod)) % mod t = modPow(a,n>>1,mod) return (t*t)%mod def invmod(a,mod):#mod逆元 if a == 0: return 0 if a == 1: return 1 return (-invmod(mod % a, mod) * (mod // a)) % mod N,M,K,p,q = map(int,input().split()) lsb = [int(input()) for i in range(N)] mod = 10**9+7 A0 = sum(lsb[:M]) B0 = sum(lsb[M:]) #2An = (1-2*p/q)**n*(A0-B0)+A0+B0 ans = ((modPow(q-2*p,K,mod)*modPow(invmod(q,mod),K,mod)*(A0-B0)+A0+B0)*invmod(2,mod)) % mod print(ans)