#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
long long dp[2018][2018];
long long K, pa, pb;
long long mpow(long long a, long long p, long long m) {
  long long x = 1;
  a %= m;
  while (p) {
    if (p % 2) x = (a * x) % m;
    a = (a * a) % m;
    p >>= 1;
  }
  return x;
}
long long solve(long long a, long long k) {
  if (a + k >= K) {
    return ((a + k) + (pa * mpow(pb, mod - 2, mod)) % mod) % mod;
  } else {
    if (dp[a][k] == -1) {
      dp[a][k] =
          (((pa * solve(a + 1, k)) % mod + (pb * solve(a, k + a)) % mod) %
           mod) *
          mpow(pa + pb, mod - 2, mod);
      dp[a][k] %= mod;
    }
    return dp[a][k];
  }
}
int main() {
  memset(dp, -1, sizeof dp);
  cin >> K >> pa >> pb;
  cout << solve(1, 0) << endl;
}
