#include <bits/stdc++.h>
using namespace std;
int mod = 1000 * 1000 * 1000 + 7;
const int N = 1003;
long long prob[N][N];
long long pot(int a, int k) {
  if (k == 0) return 1;
  if (k == 1) return a % mod;
  long long b = pot(a, k / 2);
  b = (b * b) % mod;
  if (k % 2) b = (b * a) % mod;
  return b;
}
long long odw(int x) { return pot(x, mod - 2); }
int main() {
  int k, pa, pb;
  scanf("%d%d%d", &k, &pa, &pb);
  long long PA = (pa * odw(pa + pb)) % mod;
  long long PB = (pb * odw(pa + pb)) % mod;
  long long oPB = odw(PB);
  prob[1][0] = 1;
  long long E = 0;
  for (int i = 1; i <= k; i++) {
    for (int j = 0; j < k; j++) {
      prob[i][j] %= mod;
      if (i + j >= k) {
        E += (((PA * oPB) % mod) * prob[i][j]) % mod;
        E += ((i + j) * prob[i][j]) % mod;
        E %= mod;
      } else {
        prob[i + 1][j] += (prob[i][j] * PA) % mod;
        prob[i][i + j] += (prob[i][j] * PB) % mod;
      }
    }
  }
  printf("%lld\n", E);
}
