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 JavaScript (judge verdict: Accepted)

(function(input) {
    var p = input.replace(/\n$/, '').split('\n');
    var n = Number(p.shift());
    for (var i = 0; i < n; i++) {
        var args = p[i].split(' ').map(Number);
        //console.log(args);
        var x1 = args.shift();
        var y1 = args.shift();
        var x2 = args.shift();
        var y2 = args.shift();
        var x3 = args.shift();
        var y3 = args.shift();
        var x = ((Math.pow(x3, 2) - Math.pow(x2, 2) + Math.pow(y3, 2) - Math.pow(y2, 2)) * (y2 - y1)
            - (Math.pow(x2, 2) - Math.pow(x1, 2) + Math.pow(y2, 2) - Math.pow(y1, 2)) * (y3 - y2))
            / 2 / ((y2 - y1) * (x3 - x2) - (x2 - x1) * (y3 - y2));
        var y = ((Math.pow(y3, 2) - Math.pow(y2, 2) + Math.pow(x3, 2) - Math.pow(x2, 2)) * (x2 - x1)
            - (Math.pow(y2, 2) - Math.pow(y1, 2) + Math.pow(x2, 2) - Math.pow(x1, 2)) * (x3 - x2))
            / 2 / ((x2 - x1) * (y3 - y2) - (y2 - y1) * (x3 - x2));

        console.log(x.toFixed(3), y.toFixed(3), Math.sqrt(Math.pow(x1 - x, 2) + Math.pow(y1 - y, 2)).toFixed(3));
    }
})(require('fs').readFileSync('/dev/stdin', 'utf8'));