#include <bits/stdc++.h>
using namespace std;
int main() {
  long long r, a, x2, b, y2;
  cin >> r >> a >> b >> x2 >> y2;
  if (pow(x2 - a, 2) + pow(y2 - b, 2) > r * r) {
    cout << a << " " << b << " " << r << endl;
    return 0;
  }
  if (x2 == a) {
    double delta = (double)r;
    double ansx = (double)a;
    double y12 = b + delta;
    double y22 = b - delta;
    double ansy;
    if (pow(y12 - y2, 2) + pow(ansx - x2, 2) >
        pow(y22 - y2, 2) + pow(ansx - x2, 2)) {
      ansy = y12;
    } else {
      ansy = y22;
    }
    double ansr = pow(pow(ansx - x2, 2) + pow(ansy - y2, 2), 0.5) / 2.0;
    cout << setprecision(16) << (ansx + x2) / 2.0 << " " << (ansy + y2) / 2.0
         << " " << ansr << endl;
    return 0;
  }
  double m = (double)(y2 - b) / (x2 - a);
  double d = (double)y2 - m * x2;
  double delta = r * r * (1.0 + m * m) - pow(((double)b - (m * a) - d), 2);
  delta = pow(delta, 0.5);
  double xx = (double)a + (double)b * m - d * m;
  double yy = d + (double)a * m + (double)b * pow(m, 2);
  double x12, x22, y12, y22;
  x12 = xx + delta;
  x12 = x12 / (1 + pow(m, 2));
  x22 = xx - delta;
  x22 /= (1 + pow(m, 2));
  y12 = yy + m * delta;
  y12 /= (1 + pow(m, 2));
  y22 = yy - m * delta;
  y22 /= (1 + pow(m, 2));
  double ansx, ansy;
  if (pow(y12 - y2, 2) + pow(x12 - x2, 2) >
      pow(y22 - y2, 2) + pow(x22 - x2, 2)) {
    ansx = x12;
    ansy = y12;
  } else {
    ansx = x22;
    ansy = y22;
  }
  double ansr = pow(pow(ansx - x2, 2) + pow(ansy - y2, 2), 0.5) / 2.0;
  cout << setprecision(16) << (ansx + x2) / 2.0 << " " << (ansy + y2) / 2.0
       << " " << ansr << endl;
  return 0;
}
