#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1);
double Y1, y2, yw, xb, yb, r;
double yt, y1p, y2p, m;
int main() {
  cin >> Y1 >> y2 >> yw >> xb >> yb >> r;
  complex<double> b(xb, yb), z1, z2;
  y1p = 2 * (yw - r) - Y1;
  y2p = 2 * (yw - r) - y2;
  yt = y1p - r;
  double theta = atan2(yb - yt, xb);
  z1 = b - polar(r, PI / 2 + theta);
  if (arg(z1 - complex<double>(0, y2p)) >= arg(b - complex<double>(0, yt)))
    printf("%.20f\n", ((yw - r) * xb - yt * xb) / (yb - yt));
  else
    puts("-1");
  return 0;
}
