#include <bits/stdc++.h>
using namespace std;
const double PI =
    3.141592653589793238462643383279502884197169399375105820974944;
long long power(long long a, long long b, long long m = 1000000007) {
  if (b == 0) return 1;
  if (b == 1) return a;
  long long x = power(a, b / 2, m) % m;
  x = (x * x) % m;
  if (b % 2) return (x * a) % m;
  return x;
}
long long k, a, b, dp[1005][1005];
long long inv(long long x) { return power(x, 1000000007 - 2) % 1000000007; }
long long solve(long long i, long long j) {
  if (i + j >= k) return (i + j + a * inv(b)) % 1000000007;
  if (dp[i][j] != -1) return dp[i][j];
  return dp[i][j] = (((a * solve(i + 1, j)) % 1000000007) +
                     ((b * solve(i, i + j)) % 1000000007)) %
                    1000000007;
}
signed main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  cin >> k >> a >> b;
  for (long long i = 0; i < 1005; i++)
    for (long long j = 0; j < 1005; j++) dp[i][j] = -1;
  long long lol = inv(a + b);
  a = (a * lol) % 1000000007;
  b = (b * lol) % 1000000007;
  cout << solve(1, 0) << endl;
}
