import sys import math def f(x, Q, R, remain, p): if p == 1.0: b = Q * remain else: b = Q * ((1.0 - pow(p, x)) / (1.0 - p)) a = (remain - x) * (Q - (1.0 - p) * R) return a + b def main(): N = int(sys.stdin.readline()) X, Y = map(int, sys.stdin.readline().split()) P, Q, R = map(float, sys.stdin.readline().split()) ans = -1.0 for t in range(N + 1): skill = X + t * Y remain = N - t if skill == 1: if remain == 1: ans = max(ans, P * t + Q) else: ans = max(ans, P * t + (Q - R) * (remain - 1) + Q) continue p = 1.0 - 1.0 / skill left = 0 right = remain while right - left >= 3: cl = (left * 2 + right) // 3 cr = (left + right * 2) // 3 fcl = f(cl, Q, R, remain, p) fcr = f(cr, Q, R, remain, p) if fcl < fcr: left = cl else: right = cr for i in range(left, right + 1): ans = max(ans, P * t + f(i, Q, R, remain, p)) print(f"{ans:.10f}") if __name__ == "__main__": main()