#include <bits/stdc++.h>
const int _ = 1502, __ = 1e5 + 5, mod = 1e9 + 7;
int n, m, k, a, b, P, fac[__], ifc[__], p[__];
int dp[_][_], s[_][_], s1[_], s2[_];
int power(int x, int k) {
  int res = 1;
  for (; k; k >>= 1, x = 1ll * x * x % mod)
    if (k & 1) res = 1ll * res * x % mod;
  return res % mod;
}
int C(int N, int M) { return 1ll * fac[N] * ifc[M] % mod * ifc[N - M] % mod; }
int main() {
  scanf("%d%d%d%d%d", &n, &m, &a, &b, &k);
  P = 1ll * a * power(b, mod - 2) % mod;
  fac[0] = ifc[0] = 1;
  for (int i = 1; i <= k; ++i) fac[i] = 1ll * i * fac[i - 1] % mod;
  ifc[k] = power(fac[k], mod - 2);
  for (int i = k; i; --i) ifc[i - 1] = 1ll * i * ifc[i] % mod;
  for (int i = 0; i <= k; ++i)
    p[i] = 1ll * C(k, i) * power(P, i) % mod *
           power((1 - P + mod) % mod, k - i) % mod;
  dp[0][m] = s[0][m] = 1;
  for (int i = 1; i <= n; ++i) {
    for (int j = 1; j <= m; ++j) {
      s1[j] = (s1[j - 1] + 1ll * (s[i - 1][m] - s[i - 1][j - 1] + mod) % mod *
                               p[j - 1] % mod) %
              mod;
      s2[j] = (s2[j - 1] + p[j - 1]) % mod;
    }
    for (int j = 1; j <= m; ++j) {
      dp[i][j] = 1ll * (s1[j] - 1ll * s[i - 1][m - j] * s2[j] % mod + mod) %
                 mod * p[m - j] % mod;
      s[i][j] = (s[i][j - 1] + dp[i][j]) % mod;
    }
  }
  printf("%d\n", s[n][m]);
  return 0;
}
