경주 트랙 매끄럽게 만들기

시간 제한2초메모리 제한128 MB

문제

Bob은 정해진 길이의 경주 트랙을 설계해야 합니다. 그는 처음에 둘레가 정확히 필요한 길이와 같은 볼록 다각형을 만들면 되겠다고 생각했습니다. 그런데 경주용 자동차는 그의 설계처럼 급격한 코너를 돌 수 없다는 이야기를 들었습니다.

그래서 트랙의 모든 곡선에는 최소 반지름이 보장되어야 합니다. Bob은 자신의 트랙 모양을 매우 좋아해서 형태를 크게 바꾸고 싶어 하지 않습니다. 그의 계획은 트랙을 나타내는 다각형의 무게중심을 기준으로 트랙을 축소한 뒤, 축소된 트랙으로부터 일정한 거리를 유지하는 선으로 새 트랙을 그리는 것입니다. 이때 거리는 최소 반지름 조건을 만족하는 가장 작은 값으로 정합니다. 주어진 트랙과 최소 반지름에 대해, 완성된 트랙의 길이가 원래 계획의 트랙 길이와 같아지도록 하는 축소 비율(스케일 인수)을 계산하는 프로그램을 작성하세요.

Bob은 첫 번째 예제를 그림으로 그려 보았습니다:

그림 1 – 원래 트랙과 축소된 트랙그림 2 – 축소된 트랙과 완성된 트랙

입력

첫 줄에는 테스트 케이스의 개수 $t$가 주어집니다 ($0 < t \le 100$). 각 테스트 케이스는 두 정수, 즉 필요한 최소 반지름 $r$과 원래 트랙 다각형의 꼭짓점 개수 $n$이 적힌 줄로 시작합니다 ($0 \le r \le 1000$; $3 \le n \le 10000$). 이어서 $n$개의 줄이 주어지며, 각 줄에는 한 꼭짓점의 좌표인 두 정수 $x_i$와 $y_i$가 있습니다 ($-10000 \le x_i, y_i \le 10000$). $(0, 0)$은 좌측 하단 모서리입니다. 꼭짓점은 반시계 방향으로 주어지며, 다각형이 감싸는 영역의 넓이는 0이 아님이 보장됩니다.

출력

각 테스트 케이스마다 한 줄을 출력합니다. 위 설명대로 유효한 트랙을 만들 수 있으면 축소 비율을 소수점 아래 여섯 자리로 반올림하여 출력하고(예: 0.730494), 그렇지 않으면 Not possible을 출력합니다.