デカルト平面上に2つの点 $A$ と $B$、および障害物となる円 $O$ があります。
円 $O$ の境界上の点 $C$ を選び、点 $A$ と点 $B$ の両方を点 $C$ まで移動させる必要があります。移動中、点 $A$ または点 $B$ の経路は、円 $O$ の外部を通るか、その境界に接することしかできません。
目標は、移動距離の合計、すなわち点 $A$ の移動距離と点 $B$ の移動距離の和を最小化することです。
入力
最初の行には、テストケースの数を示す整数 $t$ ($1 \le t \le 10^6$) が含まれます。
各テストケースは1行で与えられ、7つの整数 $x_1, y_1, x_2, y_2, x_3, y_3, r$ が含まれます。ここで $-10^3 \le x_1, y_1, x_2, y_2, x_3, y_3 \le 10^3$ かつ $1 \le r \le 10^3$ です。$A = (x_1, y_1)$、$B = (x_2, y_2)$ であり、$O$ は中心 $(x_3, y_3)$、半径 $r$ の円です。$A$ も $B$ も円 $O$ の内部(境界を含まない)には存在しないことが保証されています。
出力
各テストケースについて、答えを小数点以下第3位まで四捨五入した実数を1行で出力してください。
小数点以下第4位が 4 でも 5 でもないことが保証されています。
入出力例
入力 1
3 0 0 2 2 1 1 1 0 0 2 2 1 0 1 0 0 2 2 1 -1 1
出力 1
3.571 2.927 3.116