#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:20000000")
using namespace std;
int ri() {
  int x;
  scanf("%d", &x);
  return x;
}
long long rll() {
  long long x;
  scanf("%lld", &x);
  return x;
}
double mas[1000][3];
double eps = 1e-7;
int n;
struct omg {
  double x;
  double y;
  double z;
};
omg koord;
double check2(double &x, double &y, double &z) {
  double res = 0.0;
  for (int i = (int)(1); i <= (int)(n); i++) {
    double t = (mas[i][0] - x) * (mas[i][0] - x) +
               (mas[i][1] - y) * (mas[i][1] - y) +
               (mas[i][2] - z) * (mas[i][2] - z);
    if (res < t) res = t;
  }
  return res;
}
double check1(double &x, double &y) {
  double first = -10000.0;
  double last = 10000.0;
  double res;
  while (abs(first - last) > eps) {
    double l1 = first + (last - first) / 3.0;
    double r1 = first + 2.0 * (last - first) / 3.0;
    double a, b;
    a = check2(x, y, l1);
    b = check2(x, y, r1);
    if (a < b) {
      res = a;
      koord.z = l1;
      last = r1;
    } else {
      res = b;
      koord.z = r1;
      first = l1;
    }
  }
  return res;
}
double check(double &x) {
  double first = -10000.0;
  double last = 10000.0;
  double res;
  while (abs(first - last) > eps) {
    double l1 = first + (last - first) / 3.0;
    double r1 = first + 2.0 * (last - first) / 3.0;
    double h1, h2;
    h1 = check1(x, l1);
    h2 = check1(x, r1);
    if (h1 < h2) {
      res = h1;
      koord.y = l1;
      last = r1;
    } else {
      res = h2;
      koord.y = r1;
      first = l1;
    }
  }
  return res;
}
void solve() {
  n = ri();
  for (int i = (int)(1); i <= (int)(n); i++)
    cin >> mas[i][0] >> mas[i][1] >> mas[i][2];
  double first = -10000.0;
  double last = 10000.0;
  while (abs(first - last) > eps) {
    double l1 = first + (last - first) / 3.0;
    double r1 = first + 2.0 * (last - first) / 3.0;
    double h1, h2;
    h1 = check(l1);
    h2 = check(r1);
    if (h1 < h2) {
      koord.x = l1;
      last = r1;
    } else {
      koord.x = r1;
      first = l1;
    }
  }
  printf("%.7lf %.7lf %.7lf", koord.x, koord.y, koord.z);
}
int main() {
  solve();
  return 0;
}
