Vasiliy lives at point (*a*, *b*) of the coordinate plane. He is hurrying up to work so he wants to get out of his house as soon as possible. New app suggested *n* available Beru-taxi nearby. The *i*-th taxi is located at point (*x*_{i}, *y*_{i}) and moves with a speed *v*_{i}.

Consider that each of *n* drivers will move directly to Vasiliy and with a maximum possible speed. Compute the minimum time when Vasiliy will get in any of Beru-taxi cars.

The first line of the input contains two integers *a* and *b* ( - 100 ≤ *a*, *b* ≤ 100) — coordinates of Vasiliy's home.

The second line contains a single integer *n* (1 ≤ *n* ≤ 1000) — the number of available Beru-taxi cars nearby.

The *i*-th of the following *n* lines contains three integers *x*_{i}, *y*_{i} and *v*_{i} ( - 100 ≤ *x*_{i}, *y*_{i} ≤ 100, 1 ≤ *v*_{i} ≤ 100) — the coordinates of the *i*-th car and its speed.

It's allowed that several cars are located at the same point. Also, cars may be located at exactly the same point where Vasiliy lives.

Print a single real value — the minimum time Vasiliy needs to get in any of the Beru-taxi cars. You answer will be considered correct if its absolute or relative error does not exceed 10^{ - 6}.

Namely: let's assume that your answer is *a*, and the answer of the jury is *b*. The checker program will consider your answer correct, if .

Input0 0

2

2 0 1

0 2 2Output1.00000000000000000000Input1 3

3

3 3 2

-2 3 6

-2 7 10Output0.50000000000000000000

提交代码