Chef, Artem and Eugene are the best of friends and teammates. Recently, they won a lot of money at the Are You Feeling Lucky Cup. Having put their fortune to test and emerging victorious, they are now busy enjoying their wealth. Eugene wanted to drink it all away. Chef and Artem had better plans. 

Chef and Artem decided to go to Las Vegas and put more of their fortune to test! Eugene stayed at home and continues drinking.

In Vegas, Chef and Artem found lots of interesting games. The most interesting one to them was the game of Lucky Tickets.

Lucky Tickets is played using three kinds of tickets

Type-1 called the winning ticket.
Type-2 called the losing ticket.
Type-3 called the try again ticket.
Lucky Tickets is played as follows

You know there are T1 tickets of Type-1, T2 tickets of Type 2 and T3 tickets of Type-3 before the game begins.

All the tickets are placed in a sealed box. You are allowed to take out only one ticket from the box. Of course, you cannot see inside the box while choosing the ticket.

If you choose a Type-1 ticket, you are declared winner of Lucky Tickets and double your money.
If you choose a Type-2 ticket, you are declared loser of Lucky Tickets and lose all your money.
If you choose a Type-3 ticket, you have to try your fortune again and pick another ticket from the box and the selection process starts all over again.
Chef was able to convince the organizers of Lucky Tickets to let him go first and discard T4 tickets. This means that Chef makes T4 turns to choose exactly one ticket every turn, and despite what ticket he chose, he simply discards it. Chef also convinced the organizers to let Artem go right after he is finished.

What is the probability that Artem will win?

------ Input ------ 

The first line of the input contains an integer T denoting the number of test cases. The description of T test cases follows. Each test case will consist of four space separeted integers T1, T2, T3 and T4, respectively.

------ Output ------ 

For each test case, output a single line containing the probability that Artem will win. Your answer will be considered correct if it has an absolute error less then 10^{-6}.

------ Constraints ------ 

1 ≤ T ≤ 10000
1 ≤ T1, T2, T3 ≤ 1000000000
0 ≤ T4 < T1 + T2

----- Sample Input 1 ------ 
2
2 2 1 2
2 3 4 1
----- Sample Output 1 ------ 
0.5
0.4
----- explanation 1 ------ 
In the first test case, the 5 possible outcomes after Chef discards 2 tickets is
(0,2,1) with probability (1/10). Probability of winning is 0 - since there are no winning tickets!
(2,0,1) with probability (1/10). Probability of winning is 1 - since there are no losing tickets!
(2,1,0) with probability (1/5). Probability of winning is (2/3) - there are no second chances!
(1,2,0) with probability (1/5). Probability of winning is (1/3) - there are no second chances!
(1,1,1) with probability (2/5). Probability of winning is (1/3) + (1/3)*(1/2) = (1/2). This is calculated by considering the two cases
The winning ticket is picked in the first turn - probability (1/3).
A Type-3 ticket is picked in first turn, followed by the winning ticket - probability (1/3)*(1/2).
        
The over-all probability of winning is (1/10) + (2/15) + (1/15) + (1/5) = (1/2).

Difficulty: MEDIUM_HARD
Tags: Probability

Starter code:

Solutions:
t = int(input())
for i in range(t):
	(a, b, c, d) = map(int, input().split())
	x = a + b
	print(a / x)


for _ in range(int(input())):
	(T1, T2, T3, T4) = map(int, input().split())
	print(T1 / (T1 + T2))


t = int(input())
while t:
	T = list(map(int, input().split()))
	print(T[0] / (T[0] + T[1]))
	t = t - 1


T = int(input())
for i in range(T):
	(t1, t2, t3, t4) = map(int, input().split())
	s = t1 + t2
	print(t1 / s)


t = int(input())
for _ in range(t):
	(a, b, c, d) = map(int, input().split())
	print(a / (a + b))


t = int(input())
while t > 0:
	(A, B, C, D) = map(int, input().split())
	print('%f' % (A / (A + B)))
	t = t - 1


t = int(input())
while t > 0:
	(t1, t2, t3, t4) = map(int, input().split())
	p = t1 / (t1 + t2)
	print(p)
	t -= 1


for i in range(int(input())):
	l = list(map(int, input().split()))
	print(l[0] / (l[0] + l[1]))


for item in range(int(input())):
	(t1, t2, t3, t4) = map(int, input().split())
	print(1 - t2 / (t1 + t2))


def main():
	t = int(input())
	i = 1
	while t >= i:
		(a, b, c, d) = map(int, input().split())
		print(a / (a + b))
		i = i + 1
main()


t = int(input())
while t:
	(x, y, z, b) = map(int, input().split())
	print(x / (x + y))
	t -= 1


for j in range(int(input())):
	(t1, t2, t3, t4) = map(int, input().split())
	print(t1 / (t1 + t2))


for t in range(int(input())):
	(win, lose, retry, drop) = map(int, input().split())
	w = float(win)
	l = float(lose)
	print(w / (w + l))


T = int(input())
while T:
	(a, b, c, d) = map(int, input().split())
	print(float(a) / (a + b))
	T -= 1


i = int(input())
output = []
for j in range(i):
	(a, b, c, d) = map(int, input().split())
	output.append(a / (a + b))
	print(output[j])


for _ in range(int(input())):
	(t1, t2, t3, t4) = map(int, input().split())
	print(float(1 - t2 / (t1 + t2)))


for test in range(int(input())):
	t = [int(x) for x in input().split()]
	print(t[0] / (t[0] + t[1]))


for _ in range(int(input())):
	a = [int(x) for x in input().split()]
	answer = a[0] / (a[0] + a[1])
	print(answer)


t = int(input())
while t > 0:
	(a, b, c, d) = map(int, input().split())
	print('%f' % (a / (a + b)))
	t -= 1


t = int(input())
for i in range(t):
	(t1, t2, t3, t4) = map(int, input().split())
	print(t1 / (t1 + t2))


for _ in range(int(input())):
	(t1, t2, t3, t4) = list(map(int, input().split()))
	p = t1 / (t1 + t2)
	print(p)


for _ in range(int(input())):
	(t1, t2, t3, t4) = [int(i) for i in input().split()]
	print(t1 / (t1 + t2))


try:
	t = int(input())
	for _ in range(t):
		arr = input().split()
		arr = [int(i) for i in arr]
		T1 = arr[0]
		T2 = arr[1]
		print(T1 / (T1 + T2))
except:
	pass


t = int(input())
while t:
	t -= 1
	(t1, t2, t3, t4) = map(int, input().split())
	answer = t1 / (t1 + t2)
	print(answer)


n = int(input())
while n:
	(a, b, c, d) = input().split(' ')
	print(int(a) / (int(a) + int(b)))
	n = n - 1


for _ in range(int(input())):
	t = list(map(int, input().split()))
	print(t[0] / (t[0] + t[1]))


for i in range(int(input())):
	(item1, item2, item3, item4) = map(int, input().split())
	print(item1 / (item1 + item2))


t = int(input())
while t > 0:
	t14 = input()
	t14 = list(map(int, t14.split()))
	print(float(t14[0] / (t14[0] + t14[1])))
	t = t - 1


t = int(input())
while t > 0:
	(t1, t2, t3, t4) = [int(x) for x in input().split(' ')]
	print(t1 / (t1 + t2))
	t -= 1


repeat = int(input())
i = 0
a = 0
prob = 0
while i < repeat:
	a = input().split()
	T_1 = int(a[0])
	T_2 = int(a[1])
	T_3 = int(a[2])
	T_4 = int(a[3])
	prob = T_1 / (T_1 + T_2)
	print(prob)
	i = i + 1


for i in range(int(input())):
	(w, l, t, f) = map(int, input().split())
	print(w / (w + l))


t = int(input())
out = []
for i in range(t):
	(a, b, c, d) = map(int, input().split(' '))
	out.append(a / (a + b))
for i in range(t):
	print(out[i])


try:
	t = int(input())
	for _ in range(t):
		(a, b, c, d) = map(int, input().split())
		r = a / (a + b)
		print(r)
except:
	pass


for i in range(int(input())):
	(T1, T2) = list(map(int, input().split()))[:-2]
	print(T1 / (T1 + T2))


for n in range(int(input())):
	(ticket1, ticket2, ticket3, ticket4) = map(int, input().split())
	print(ticket1 / (ticket1 + ticket2))


testCase = int(input())
for _ in range(testCase):
	ticketsData = list(map(int, input().split()))
	print(ticketsData[0] / (ticketsData[0] + ticketsData[1]))