Unfortunately, it turns out that a lot of the shows you've been watching this season haven't really lived up to their hype. To vent your frustration, you've decided to spend the weekend jumping in a tree instead.
The tree you're jumping in is rooted at node with nodes connected by edges, the -th edge connecting nodes and with a length of . Each node has values and .
You may jump from node to node if is a descendant of and , with a danger factor of where is the length of the shortest path from to .
For each node from to , find the minimum danger factor of a direct jump from some node to node or determine that it is impossible to jump to this node.
Constraints
Subtask 1 [30%]
and for all .
Subtask 2 [70%]
No additional constraints.
Input Specification
The first line contains an integer .
The second line contains integers .
The third line contains integers .
The next lines each contain integers , , and .
Output Specification
Output lines, the -th line containing the minimum danger factor of a direct jump from some node to node or Unreachable
if it is impossible to jump to this node. Your output will be considered correct if the absolute or relative error of each numerical value does not exceed .
Sample Input
7
11 8 7 2 6 3 9
2 1 1 5 4 3 13
2 4 3
1 2 3
7 1 4
3 6 6
2 3 2
5 3 1
Sample Output
0.300000000000
0.285714285714
1.000000000000
0.333333333333
1.375000000000
Unreachable
Explanation
For node , it is best to jump from node to node with a danger factor of .
For node , it is best to jump from node to node with a danger factor of .
For node , it is best to jump from node to node with a danger factor of .
For node , it is best to jump from node to node with a danger factor of .
For node , it is best to jump from node to node with a danger factor of .
For node , it is impossible to jump to this node.
Comments