A solar eclipse is about to happen on Mars. Scientists from all over the world are travelling there to watch it and study it. You worked out the exact spot on the Martian ground that suits your own observations best, and you want to land your flying saucer there. Other spacecraft have already come down close to it.
Seen from above, every spacecraft including yours is a circle of the same radius R. You refuse to park on top of anyone else, so your circle and any other circle must not share a region of positive area, although the two boundaries may touch. All radii are equal, so the rule means the distance between two centers is at least 2R. The crews that landed before you ignored the rule, so their circles may overlap each other.
Land so that the distance between the center of your saucer and the spot you computed is as small as the rule allows, and report that distance.
The input holds several test cases. Each test case begins with a line holding the number of already landed spacecraft n and a real number R. The landing area is small enough to model as a two dimensional plane, and the origin (0,0) is the best spot. Each of the next n lines gives the center of one landed saucer as two real numbers x and y.
A test case with n and R both equal to 0 ends the input and is not processed. Here 0≤n≤100 and R>0, and the absolute value of R and of every coordinate is at most 1000.
For each test case print one line with the smallest possible distance between the center of your landed saucer and the origin, rounded to six digits after the decimal point. Always print all six digits, so a distance of 0 is written as 0.000000.
Every test file keeps the answer at least 10−9 away from a rounding boundary. An exact computation therefore prints the same string whichever way ties would be broken.