화성에서 일식이 일어난다. 세계 곳곳의 과학자가 이 현상을 관측하고 연구하려고 화성으로 향하는 중이다. 당신은 관측에 가장 좋은 지점을 정확히 계산해 냈고, 그 자리에 비행접시를 착륙시키려 한다. 그런데 근처에는 이미 다른 우주선이 여러 대 내려앉아 있다.
위에서 내려다보면 당신의 기체를 포함한 모든 우주선은 반지름이 R로 같은 원이다. 당신은 남의 기체 위에 겹쳐 앉는 것을 싫어한다. 즉 당신의 원과 다른 원이 넓이가 양수인 부분을 공유해서는 안 되고, 경계끼리 닿기만 하는 것은 괜찮다. 반지름이 모두 같으므로 이 조건은 두 중심 사이 거리가 2R 이상이라는 뜻이다. 먼저 착륙한 우주선은 이 규칙을 지키지 않아서 서로 겹쳐 있을 수 있다.
규칙을 지키면서 당신의 기체 중심을 미리 계산해 둔 최적 지점에 최대한 가깝게 두려고 한다. 그때의 최소 거리를 구하여라.
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 이미 착륙한 우주선의 수 n과 실수 R이 주어진다. 착륙장은 충분히 좁아서 2차원 평면으로 나타낼 수 있고, 원점 (0,0)이 관측에 가장 좋은 지점이다. 이어지는 n개 줄에는 착륙한 우주선 한 대의 중심 좌표 x와 y가 실수로 주어진다.
n과 R이 모두 0인 테스트 케이스가 입력의 끝을 알린다. 이 케이스는 처리하지 않는다. 0≤n≤100이고 R>0이며, R과 모든 좌표의 절댓값은 1000 이하이다.
각 테스트 케이스마다 한 줄에 하나씩, 착륙한 기체의 중심과 원점 사이 거리의 최솟값을 소수점 아래 여섯째 자리까지 반올림해 출력한다. 여섯 자리는 항상 채워서 적으므로 거리가 0이면 0.000000으로 적는다.
모든 테스트 데이터는 정답이 반올림 경계에서 10−9 이상 떨어지도록 만들었다. 정확히 계산했다면 반올림 방향과 상관없이 같은 문자열이 나온다.