N,A,B,C=list(map(int,input().split()))

mod=10**9+7



#factorial,facotiralの逆数を事前計算.

#N=10**5あたりまで有効



FACT=[1,1]

FACT_INV=[1,1]

for i in range(2,2*10**5+1):

    FACT.append(FACT[-1]*i%mod)

    FACT_INV.append(FACT_INV[-1]*pow(i,mod-2,mod)%mod)

    

def Combi(N,K):

    return FACT[N]*FACT_INV[N-K]*FACT_INV[K]%mod





#Aが勝つ場合



ANS=0

SUM=A+B

A_n=pow(A,N,mod)*pow(pow(SUM,mod-2,mod),N,mod)%mod

B_n=pow(B,N,mod)*pow(pow(SUM,mod-2,mod),N,mod)%mod

SUMINV=pow(SUM,mod-2,mod)



for i in range(N):

    ANS=(ANS+(A_n*pow(B,i,mod)+B_n*pow(A,i,mod))*Combi(N-1+i,i)*pow(SUMINV,i,mod)*(N+i))%mod



print((ANS*100*pow(100-C,mod-2,mod)%mod))

N,A,B,C=list(map(int,input().split()))

mod=10**9+7



#factorial,facotiralの逆数を事前計算.

#N=10**5あたりまで有効



FACT=[1]

for i in range(1,2*10**5+1):

    FACT.append(FACT[-1]*i%mod)



FACT_INV=[pow(FACT[-1],mod-2,mod)]

for i in range(2*10**5,0,-1):

    FACT_INV.append(FACT_INV[-1]*i%mod)



FACT_INV=FACT_INV[::-1]

    

 

def Combi(N,K):

    return FACT[N]*FACT_INV[N-K]*FACT_INV[K]%mod





ANS=0

SUM=A+B

A_n=pow(A,N,mod)*pow(pow(SUM,mod-2,mod),N,mod)%mod

B_n=pow(B,N,mod)*pow(pow(SUM,mod-2,mod),N,mod)%mod

SUMINV=pow(SUM,mod-2,mod)



for i in range(N):

    ANS=(ANS+(A_n*pow(B,i,mod)+B_n*pow(A,i,mod))*Combi(N-1+i,i)*pow(SUMINV,i,mod)*(N+i))%mod



print((ANS*100*pow(100-C,mod-2,mod)%mod))

N, A, B, C = list(map(int, input().split()))
mod = 10**9 + 7
# factorial,facotiralの逆数を事前計算.
# N=10**5あたりまで有効
FACT = [1, 1]
FACT_INV = [1, 1]
for i in range(2, 2 * 10**5 + 1):
    FACT.append(FACT[-1] * i % mod)
    FACT_INV.append(FACT_INV[-1] * pow(i, mod - 2, mod) % mod)


def Combi(N, K):
    return FACT[N] * FACT_INV[N - K] * FACT_INV[K] % mod


# Aが勝つ場合
ANS = 0
SUM = A + B
A_n = pow(A, N, mod) * pow(pow(SUM, mod - 2, mod), N, mod) % mod
B_n = pow(B, N, mod) * pow(pow(SUM, mod - 2, mod), N, mod) % mod
SUMINV = pow(SUM, mod - 2, mod)
for i in range(N):
    ANS = (
        ANS
        + (A_n * pow(B, i, mod) + B_n * pow(A, i, mod))
        * Combi(N - 1 + i, i)
        * pow(SUMINV, i, mod)
        * (N + i)
    ) % mod
print((ANS * 100 * pow(100 - C, mod - 2, mod) % mod))

N, A, B, C = list(map(int, input().split()))
mod = 10**9 + 7
# factorial,facotiralの逆数を事前計算.
# N=10**5あたりまで有効
FACT = [1]
for i in range(1, 2 * 10**5 + 1):
    FACT.append(FACT[-1] * i % mod)
FACT_INV = [pow(FACT[-1], mod - 2, mod)]
for i in range(2 * 10**5, 0, -1):
    FACT_INV.append(FACT_INV[-1] * i % mod)
FACT_INV = FACT_INV[::-1]


def Combi(N, K):
    return FACT[N] * FACT_INV[N - K] * FACT_INV[K] % mod


ANS = 0
SUM = A + B
A_n = pow(A, N, mod) * pow(pow(SUM, mod - 2, mod), N, mod) % mod
B_n = pow(B, N, mod) * pow(pow(SUM, mod - 2, mod), N, mod) % mod
SUMINV = pow(SUM, mod - 2, mod)
for i in range(N):
    ANS = (
        ANS
        + (A_n * pow(B, i, mod) + B_n * pow(A, i, mod))
        * Combi(N - 1 + i, i)
        * pow(SUMINV, i, mod)
        * (N + i)
    ) % mod
print((ANS * 100 * pow(100 - C, mod - 2, mod) % mod))

-FACT = [1, 1] -FACT_INV = [1, 1] -for i in range(2, 2 * 10**5 + 1): +FACT = [1] +for i in range(1, 2 * 10**5 + 1): -    FACT_INV.append(FACT_INV[-1] * pow(i, mod - 2, mod) % mod) +FACT_INV = [pow(FACT[-1], mod - 2, mod)] +for i in range(2 * 10**5, 0, -1): +    FACT_INV.append(FACT_INV[-1] * i % mod) +FACT_INV = FACT_INV[::-1] -# Aが勝つ場合