#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-7;
double pi2;
double a, b, w, l;
double f(double x) { return b * cos(x) + a * sin(x) - l * cos(x) * sin(x); }
void tSearch() {
  if (l <= a)
    w = b;
  else if (l <= b)
    w = a;
  double r1 = 0, r2 = acos(0.0);
  for (int i = 0; i < 1000; i++) {
    double r11 = (2.0 / 3.0) * r1 + (1.0 / 3.0) * r2;
    double r22 = (1.0 / 3.0) * r1 + (2.0 / 3.0) * r2;
    if (f(r11) > f(r22))
      r1 = r11;
    else
      r2 = r22;
  }
  w = max(w, f((r1 + r2) / 2));
  w = min(w, l);
  if (w < eps)
    printf("My poor head =(\n");
  else
    printf("%.8llf\n", w);
}
int main() {
  cin >> a >> b >> l;
  tSearch();
  return 0;
}
