상태가 아주 나쁜 도로에서 작은 무선 조종 자동차를 몰고 있다. 도로에는 구멍이 가득하다. 구멍에 빠지면 자동차가 고칠 수 없을 만큼 망가지므로 구멍 위를 지나갈 수 없다. 도로 밖으로 나가는 것도 안 된다. 도로를 둘러싼 긴 풀숲에 들어가면 자동차를 영영 찾을 수 없다.
자동차는 아주 작아서 크기가 없는 점으로 본다. 도로는 폭이 W미터, 길이가 L미터이고 y축과 나란히 놓여 있다. 자동차는 (W/2,0)에서 출발해 (W/2,L)까지 가야 한다. 구멍은 모두 완전한 원 모양이고, 서로 겹치거나 닿지 않으며 도로의 가장자리와도 닿지 않는다. 구멍의 경계를 스치듯 지나가는 것은 허용한다.
구멍을 피해 도착점까지 가는 가장 짧은 경로의 길이를 구하라.
첫 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스의 첫 줄에는 구멍의 개수 N, 도로의 폭 W, 도로의 길이 L이 정수로 주어진다. 이어지는 N개의 줄에는 구멍 하나를 나타내는 세 정수 xi, yi, ri가 주어진다. 중심이 (xi,yi)이고 반지름이 ri인 원이라는 뜻이다.
각 테스트 케이스마다 구멍을 피해 출발점에서 도착점까지 가는 가장 짧은 경로의 길이를 한 줄에 출력한다. 소수점 아래 여섯째 자리까지 반올림해 출력한다.