The only way to enter the Hall of Round Tables is to pass through the Columned Corridor. The corridor walls are shown as straight lines on the map, parallel to the OY axis of the coordinate system. The entrance to the corridor is at the bottom, and the exit to the Hall is at the top. Inside the corridor, there are cylindrical (circular on the map) columns, all with the same radius .
Write a program that, given the dimensions of the corridor and the positions of the columns, determines the maximum diameter of a round table that can be carried through the corridor while keeping the table surface horizontal.

The first line contains two numbers X_L and X_R — the -coordinates of the left and the right walls of the corridor. The second line contains an integer (1 \leq R \leq 1000000) — the radius of each column. The third line contains an integer (1 \leq N \leq 200) — the number of columns. Next, lines follow, each containing two numbers — the - and -coordinates of the center of each column. All input coordinates are integers not exceeding by absolute value.
Print one number — the required maximum diameter of the table. The diameter should be printed with exactly digits after the decimal point (even if it is an integer). If it is not possible to carry any table, print: 0.000
The precision of digits after the decimal point and normal rounding rules means that the printed answer must differ from the exact value by no more than 5 \times 10^{-4} (that is, ). For example, if the exact answer is , then the output should be . If the exact answer is , you should round up: the output should be .
Example 1