Problem:
MathJax.Hub.Config({ tex2jax: { inlineMath: [["$","$"], ["\\(","\\)"]], processEscapes: true }});

Circumscribed Circle of A Triangle.

Write a program which prints the central coordinate $(p_x, p_y)$ and the radius $r$ of a circumscribed circle of a triangle which is constructed by three points $(x_1, y_1)$, $(x_2, y_2)$ and $(x_3, y_3)$ on the plane surface.

Input

Input consists of several datasets. In the first line, the number of datasets $n$ is given. Each dataset consists of:

$x_1$ $y_1$ $x_2$ $y_2$ $x_3$ $y_3$

in a line. All the input are real numbers.

Output

For each dataset, print $p_x$, $p_y$ and $r$ separated by a space in a line. Print the solution to three places of decimals. Round off the solution to three decimal places.

Constraints

$-100 \leq x_1, y_1, x_2, y_2, x_3, y_3 \leq 100$

$ n \leq 20$

Sample Input

1
0.0 0.0 2.0 0.0 2.0 2.0

Output for the Sample Input

1.000 1.000 1.414

Solution in Ruby (judge verdict: Wrong Answer)

def get_long(a,b)
	return Math.sqrt(a**2+b**2)
end
def get_rad(a,b,c)
	return Math.acos((b**2+c**2-a**2)/(2*b*c))
end
gets.to_i.times{
	x1,y1,x2,y2,x3,y3 = gets.split.map(&:to_f)
	puts a = get_long(x2-x3,y2-y3)
	puts b = get_long(x3-x1,y3-y1)
	puts c = get_long(x1-x2,y1-y2)
	ar = get_rad(a,b,c)
	br = get_rad(b,a,c)
	cr = get_rad(c,a,b)
	puts sin2a = Math.sin(2 * ar)
	puts sin2b = Math.sin(2 * br)
	puts sin2c = Math.sin(2 * cr)
	r = a / (2*Math.sin(ar))
	px = (x1*sin2a+x2*sin2b+x3*sin2c)/(sin2a+sin2b+sin2c)
	py = (y1*sin2a+y2*sin2b+y3*sin2c)/(sin2a+sin2b+sin2c)
	printf("%.3f %.3f %.3f\n",px,py,r)
}