#include <bits/stdc++.h>
using namespace std;
long long int k, pa, pb, inv, dp[1005][1005], hell = pow(10, 9) + 7;
long long int exp(long long int x, long long int y) {
  long long int res = 1;
  x %= hell;
  while (y > 0) {
    if (y & 1) res = (res * x) % hell;
    y >>= 1;
    x = (x * x) % hell;
  }
  return res;
}
long long int func(long long int x, long long int y) {
  if (dp[x][y] != (-1)) return dp[x][y];
  if (x + y >= k) return (x + y + inv) % hell;
  long long int val1 = (pa * func(x + 1, y)) % hell,
                val2 = (pb * func(x, x + y)) % hell;
  return dp[x][y] = (val1 + val2) % hell;
}
void solve() {
  cin >> k >> pa >> pb;
  inv = (pa * exp(pb, hell - 2)) % hell;
  long long int sum = exp(pa + pb, hell - 2);
  pa = (pa * sum) % hell;
  pb = (pb * sum) % hell;
  for (long long int i = 0; i < 1005; i++)
    for (long long int j = 0; j < 1005; j++) dp[i][j] = (-1);
  cout << func(1, 0);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long int qc = 1;
  for (long long int i = 1; i <= qc; i++) solve();
}
