MOD=10**9+7 MAX=10**6 fac=[0]*MAX ifac=[0]*MAX inv=[0]*MAX fac[0]=fac[1]=ifac[0]=ifac[1]=inv[0]=inv[1]=1 for i in range(2,MAX): fac[i]=i*fac[i-1]%MOD inv[i]=MOD-(MOD//i)*inv[MOD%i]%MOD ifac[i]=inv[i]*ifac[i-1]%MOD def C(n,k): if n<0 or k<0 or n-k<0: return 0 return fac[n]*ifac[n-k]*ifac[k]%MOD a,b=map(int,input().split()) n,k=map(int,input().split()) # 0<=k<=n def f(n,k): return (C(n,k)*a+C(n,n+1-k)*b)%MOD ans=0 for i in range(1,n+2): ans+=f(n-1,i-1)**2 ans%=MOD print(f(n-1,k-1)) print(ans)