#include <bits/stdc++.h>
using namespace std;
struct Circle {
  double x, y, r;
};
const int dy[4] = {-1, 0, 0, 1};
const int dx[4] = {0, -1, 1, 0};
double ang[3];
Circle c[3];
double K(double x) { return x * x; }
double Dis(double x, double y, double xx, double yy) {
  return sqrt(K(x - xx) + K(y - yy));
}
double Val(double x, double y) {
  for (int i = 0; i < 3; ++i) {
    ang[i] = Dis(x, y, c[i].x, c[i].y) / c[i].r;
  }
  double val = 0;
  for (int i = 0; i < 3; ++i) {
    val += K(ang[i] - ang[(i + 1) % 3]);
  }
  return val;
}
int main() {
  double x = 0, y = 0;
  for (int i = 0; i < 3; ++i) {
    scanf("%lf%lf%lf", &c[i].x, &c[i].y, &c[i].r);
    x += c[i].x / 3;
    y += c[i].y / 3;
  }
  double err = Val(x, y);
  double step = 1;
  for (int tim = 1; tim < 1e5; ++tim) {
    bool flag = false;
    double X, Y;
    for (int i = 0; i < 4; ++i) {
      double xx = x + dx[i] * step;
      double yy = y + dy[i] * step;
      double val = Val(xx, yy);
      if (val < err) {
        err = val;
        flag = true;
        X = xx;
        Y = yy;
      }
    }
    if (flag) {
      x = X;
      y = Y;
    } else {
      step /= 2;
    }
  }
  if (err < 1e-6) {
    printf("%.5f %.5f\n", x, y);
  }
  return 0;
}
