def vslope(x, y)
  return 0 if x.zero?
  -Rational(x, y)
end

STDIN.gets.chomp.to_i.times do
  STDIN.read.split("\n").each do |data|
    x1, y1, x2, y2, x3, y3 = data.split.map { |i| i.chomp.to_f }
    a = { x: (x1 + x3) / 2, y: (y1 + y3) / 2 }
    begin
      am = vslope(x3 - x1, y3 - y1)
      a0 = a[:y] - (am * a[:x])
    rescue ZeroDivisionError
      am = 0
      a0 = a[:x]
      fix_a = true
    end

    b = { x: (x2 + x3) / 2, y: (y2 + y3) / 2 }
    begin
      bm = vslope(x3 - x2, y3 - y2)
      b0 = b[:y] - (bm * b[:x])
    rescue ZeroDivisionError
      bm = 0
      b0 = b[:x]
      fix_b = true
    end

    if fix_a
      x = a0
      y = bm * x + b0
    elsif fix_b
      x = b0
      y = am * x + a0
    else
      x = am - bm == 0 ? 0.000 : ((b0 - a0) / (am - bm)).to_f.round(3)
      y = (am * x + a0).round(3)
    end

    r = Math.sqrt((x - x1)**2 + (y - y1)**2).round(3)

    puts [format("%.3f", x), format("%.3f", y), format("%.3f", r)].join(' ')
  end
end