Takahashi and Aoki will play a game. They will repeatedly play it until one of them have N wins in total.

When they play the game once, Takahashi wins with probability A %, Aoki wins with probability B %, and the game ends in a draw (that is, nobody wins) with probability C %. Find the expected number of games that will be played, and print it as follows.

We can represent the expected value as P/Q with coprime integers P and Q. Print the integer R between 0 and 10^9+6 (inclusive) such that R \times Q \equiv P\pmod {10^9+7}. (Such an integer R always uniquely exists under the constraints of this problem.)

Constraints

* 1 \leq N \leq 100000
* 0 \leq A,B,C \leq 100
* 1 \leq A+B
* A+B+C=100
* All values in input are integers.

Input

Input is given from Standard Input in the following format:


N A B C


Output

Print the expected number of games that will be played, in the manner specified in the statement.

Examples

Input

1 25 25 50


Output

2


Input

4 50 50 0


Output

312500008


Input

1 100 0 0


Output

1


Input

100000 31 41 28


Output

104136146
#include <bits/stdc++.h>

#define REP(i, n) for (int i = 0; i < n; i++)
#define FOR(i, n, m) for (int i = n; i < m; i++)
#define ll long long int

using namespace std;

ll DIV = 1000000007;

ll modpow(ll a, ll n, ll mod)
{
  ll res = 1;
  while (n > 0)
  {
    if (n & 1)
      res = res * a % mod;
    a = a * a % mod;
    n >>= 1;
  }
  return res;
}

ll modinv(ll a, ll mod)
{
  return modpow(a, mod - 2, mod);
}

int main()
{
  ll n, a, b, c;
  cin >> n >> a >> b >> c;

  ll result = 0;
  ll ab = modpow(a, n, DIV);
  ll ba = modpow(b, n, DIV);
  ll apb = modpow(a + b, n, DIV);
  ll mcr = 1;

  FOR(m, n, 2 * n)
  {
    if (m != n)
    {
      ab = ab * b % DIV;
      ba = ba * a % DIV;
      mcr = (mcr * (m - 1)) % DIV;
      mcr = (mcr * modinv(m - n, DIV)) % DIV;
      apb = (apb * (a + b)) % DIV;
    }

    ll tmp = mcr * (ab + ba) % DIV;
    tmp = tmp * m % DIV;
    tmp = tmp * modinv(apb, DIV) % DIV;

    // 更新
    result = (result + tmp) % DIV;
  }
  result = (result * 100LL) % DIV;
  result = result * modinv(100LL - c, DIV) % DIV;

  cout << result << endl;
}
