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>

int main(){
    using namespace std;
    constexpr unsigned long MOD = 1000000007;
    unsigned long N, A, B, C;
    cin >> N >> A >> B >> C;
    (A *= 570000004) %= MOD;
    (B *= 570000004) %= MOD;
    (C *= 570000004) %= MOD;
    C = (1 - C + MOD) % MOD;
    {
        auto n = MOD - 3, t = C;
        while(n){
            if(n & 1)(C *= t) %= MOD;
            (t *= t) %= MOD;
            n >>= 1;
        }
    }
    (A *= C) %= MOD;
    (B *= C) %= MOD;
    vector<unsigned long> ifr(N);
    ifr[0] = ifr[1] = 1;
    for(unsigned long i = 2; i < N; ++i)ifr[i] = (MOD - MOD / i) * ifr[MOD % i] % MOD;
    unsigned long ansA{0}, ansB{0}, Ap{1}, Bp{1};
    for(unsigned long i = 0, a = C * N, bin = 1; i < N; ++i){
        (ansA += a * bin % MOD * Ap) %= MOD;
        (ansB += a * bin % MOD * Bp) %= MOD;
        (a += C) %= MOD;
        (Ap *= A) %= MOD;
        (Bp *= B) %= MOD;
        (bin *= (N + i) * ifr[i + 1] % MOD) %= MOD;
    }
    cout << (ansA * Bp + ansB * Ap) % MOD << endl;
    return 0;
}