Bob 正在参加一个电视节目。节目在一个有 $n$ 只老虎的大型平坦竞技场中进行。竞技场是一个半平面,我们引入坐标系,使得竞技场由所有满足 $y \ge 0$ 的点组成。Bob 被蒙住双眼,最初被放置在点 $(x, y)$。
Bob 的目标是在不被老虎抓住的情况下离开竞技场。竞技场的出口是一个连接点 $(0, 0)$ 和 $(a, 0)$ 的线段。Bob 知道自己的位置并可以选择任何方向,但他被蒙住了双眼,看不到老虎在哪里。Bob 可以以不超过 $v$ 的速度奔跑。
老虎可以看到 Bob,第 $i$ 只老虎位于点 $(x_i, y_i)$,最大移动速度为 $u_i$。节目开始后,Bob 和老虎同时被释放。
Bob 决定采用以下策略逃离竞技场:他选择一条连接其初始位置与出口上某一点的直线段,并以最大速度沿该线段奔跑。如果 Bob 沿从初始点到点 $P$ 的线段奔跑时不会被任何老虎抓住,Bob 就称出口上的点 $P$ 为“安全点”。令 $S$ 为所有安全点的集合。现在 Bob 想要评估他逃脱的机会,因此他想求出安全点集合的测度 $\mu(S)$。
在本题中,测度 $\mu(S)$ 等于集合 $A$ 的下确界,其中 $A$ 是所有满足以下条件的 $a$ 的集合:存在一组总长度为 $a$ 的线段,它们完全覆盖了 $S$。集合 $B$ 的下确界是指这样一个 $b$,使得对于任何 $t \in B$,都有 $t \ge b$,且对于任意 $b_0 > b$,都存在 $t \in B$ 使得 $t < b_0$。
请帮助 Bob 求出安全点集合的测度。
输入格式
输入文件包含多个测试用例。第一行包含一个整数 $t$ —— 测试用例的数量 ($1 \le t \le 100$)。
接下来的行描述各个测试用例。每个测试用例的第一行包含四个整数:$a, x, y$ 和 $v$ ($1 \le a \le 10^4, -10^4 \le x \le 10^4, 1 \le y \le 10^4, 1 \le v \le 100$)。
第二行包含一个整数 $n$ —— 老虎的数量 ($1 \le n \le 100$)。
接下来的 $n$ 行描述老虎。第 $i$ 行包含三个整数:$x_i, y_i, u_i$ ($-10^4 \le x_i \le 10^4, 0 \le y_i \le 10^4, 1 \le u_i \le 100$)。没有老虎位于点 $(x, y)$。
输出格式
对于每个测试用例,输出一个浮点数:安全点集合的测度。你的输出必须保证绝对误差或相对误差不超过 $10^{-7}$。
样例
样例输入 1
1 10 5 4 10 1 4 1 3
样例输出 1
7.173513477283126