#include <bits/stdc++.h>
using namespace std;
int main(int argc, char const *argv[]) {
  long long r, x1, y1, x2, y2;
  cin >> r >> x1 >> y1 >> x2 >> y2;
  double dist = sqrt(1.0 * (x2 - x1) * (x2 - x1) + 1.0 * (y2 - y1) * (y2 - y1));
  if (dist >= r) {
    cout << x1 << " " << y1 << " " << r << endl;
  } else if (x2 == x1 && y2 == y1) {
    double x = x1 + (1.0 * r) / 2;
    double y = y1;
    double rad = (1.0 * r) / 2;
    cout << setprecision(15) << x << " " << y << " " << rad << endl;
  } else {
    double cos_theta = 1.0 * (x2 - x1) / (1.0 * dist);
    double sin_theta = 1.0 * (y2 - y1) / (1.0 * dist);
    double a_x = 1.0 * x1 + 1.0 * r * cos_theta;
    double a_y = 1.0 * y1 + 1.0 * r * sin_theta;
    double b_x = 1.0 * x1 - 1.0 * r * cos_theta;
    double b_y = 1.0 * y1 - 1.0 * r * sin_theta;
    double d_a =
        sqrt(1.0 * (a_x - x2) * (a_x - x2) + 1.0 * (a_y - y2) * (a_y - y2));
    double d_b =
        sqrt(1.0 * (b_x - x2) * (b_x - x2) + 1.0 * (b_y - y2) * (b_y - y2));
    if (d_a > d_b) {
      double x = (1.0 * a_x + x2) / 2;
      double y = (1.0 * a_y + y2) / 2;
      double rad = sqrt(1.0 * (x - x2) * (x - x2) + 1.0 * (y - y2) * (y - y2));
      cout << setprecision(15) << x << " " << y << " " << rad << endl;
    } else {
      double x = (1.0 * b_x + x2) / 2;
      double y = (1.0 * b_y + y2) / 2;
      double rad = sqrt(1.0 * (x - x2) * (x - x2) + 1.0 * (y - y2) * (y - y2));
      cout << setprecision(15) << x << " " << y << " " << rad << endl;
    }
  }
  return 0;
}
