#include <bits/stdc++.h>
const int p = 1000000007;
int f[1200][1200];
int i, j, n, s, x, y, z;
inline int power(int x, int y) {
  int s = 1;
  for (int i = 30; i >= 0; i--) {
    s = 1LL * s * s % p;
    if ((1 << i) & y) s = 1LL * s * x % p;
  }
  return s;
}
int main() {
  scanf("%d%d%d", &n, &x, &y);
  z = power(x + y, p - 2);
  x = 1LL * x * z % p, y = 1LL * y * z % p;
  z = power(p + 1 - x, p - 2);
  f[1][0] = 1;
  for (i = 1; i <= n; i++)
    for (j = 0; j < n; j++) {
      if (i + j >= n)
        s = (s + 1LL * f[i][j] * (i + j + z - 1)) % p;
      else {
        f[i + 1][j] = (f[i + 1][j] + 1LL * f[i][j] * x) % p;
        f[i][i + j] = (f[i][i + j] + 1LL * f[i][j] * y) % p;
      }
    }
  printf("%d", s);
  return 0;
}
