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)

#!/usr/bin/ruby
=begin
(%o3) [[px = - (y2 (y3  - y1  + x3  - x1 ) + y1 (- y3  - x3  + x2 ) + y1  y3
     2        2        2
 - x2  y3 + x1  y3 + y2  (y1 - y3))/(2 x2 y3 - 2 x1 y3 + (2 x1 - 2 x3) y2
                                  2     2     2            2     2
 + (2 x3 - 2 x2) y1), py = (x2 (y3  + x3  - x1 ) + x1 (- y3  - x3 )
               2               2     2        2
 + (x1 - x3) y2  + (x3 - x2) y1  + x1  x3 + x2  (x1 - x3))
/(2 x2 y3 - 2 x1 y3 + (2 x1 - 2 x3) y2 + (2 x3 - 2 x2) y1)]]




=end
def solve(x1,y1,x2,y2,x3,y3)
  px = - ( y2*(y3-y1+x3- x1) + y1*(-y3-x3+x2) + y1*y3 \
            - x2**2*y3 + x1**2*y3 + y2**2* (y1 - y3)) \
  / (2*x2*y3-2*x1*y3 + (2*x1 - 2*x3)*y2 + (2*x3-2*x2)*y1)

  py = (x2*(y3**2+ x3**2 - x1**2) + x1*(- y3**2 - x3**2) \
 + (x1 - x3)*y2**2+ (x3 - x2)*y1**2  + x1**2*x3 + x2**2*(x1 - x3)) \
  / (2*x2*y3 - 2*x1*y3 + (2*x1 - 2*x3)*y2 + (2*x3-2*x2)*y1)

  r = Math.sqrt((px- x1)**2 + (py- y1)**2)

  return [px,py,r]
end

def rnd3(x)
  return (x*1000).round/1000.0
end

n = gets.to_i
0.upto(n-1){|i|
  x1,y1,x2,y2,x3,y3 = gets.chomp.split.map{|x| x.to_f}
  px,py,r = solve(x1,y1,x2,y2,x3,y3)
  #printf("%.3f %.3f %.3f\n", rnd3(px), rnd3(py), rnd3(r))
  printf("%.3f %.3f %.3f\n", px, py, r)
}