#include <bits/stdc++.h>
using namespace std;
double eps = 1e-6;
int main(int argc, char const *argv[]) {
  double R, x1, y1, x2, y2;
  cin >> R >> x1 >> y1 >> x2 >> y2;
  if ((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) >= R * R) {
    printf("%.20Lf %.20Lf %.20Lf\n", x1, y1, R);
    return 0;
  }
  double m;
  if (x2 == x1)
    m = 1e15;
  else
    m = (y2 - y1) / (x2 - x1);
  double sx1 = R / sqrt(1 + m * m) + x1;
  double sy1 = m * R / (sqrt(1 + m * m)) + y1;
  double sx2 = -R / sqrt(1 + m * m) + x1;
  double sy2 = -m * R / (sqrt(1 + m * m)) + y1;
  double dist1 = (x2 - sx1) * (x2 - sx1) + (y2 - sy1) * (y2 - sy1);
  double dist2 = (x2 - sx2) * (x2 - sx2) + (y2 - sy2) * (y2 - sy2);
  double ax, ay, rad;
  if (dist1 - dist2 >= eps) {
    ax = (x2 + sx1) / 2.0;
    ay = (y2 + sy1) / 2.0;
    rad = sqrt(dist1) / 2;
  } else {
    ax = (x2 + sx2) / 2.0;
    ay = (y2 + sy2) / 2.0;
    rad = sqrt(dist2) / 2;
  }
  printf("%.20Lf %.20Lf %.20Lf\n", ax, ay, rad);
  return 0;
}
