#include <bits/stdc++.h>
using namespace std;
int main() {
  long double y1, y2, yw, xb, yb, r;
  cin >> y1 >> y2 >> yw >> xb >> yb >> r;
  long double L = 0, R = xb;
  while (R - L > 1e-10) {
    long double x = (R + L) * 0.5;
    long double y = yw - r;
    long double l = xb - x, xa = xb - 2 * l, ya = yb;
    long double a = xa - x, b = ya - y;
    long double Y = y - x * (b / a);
    if (Y > y2 - 1e-10) {
      L = x;
      continue;
    }
    if (Y < y1 + 1e-10) {
      R = x;
      continue;
    }
    long double A = b;
    long double B = -a;
    long double C = -b * x + a * y;
    long double d = sqrt(A * A + B * B);
    A /= d;
    B /= d;
    C /= d;
    long double L1 = fabsl(A * 0 + B * y2 + C);
    if (L1 < r + 1e-10) {
      L = x;
      continue;
    }
    long double L2 = Y - y1;
    if (L2 + 1.01e-8 < r) {
      R = x;
      continue;
    }
    printf("%.12f", double(x));
    return 0;
  }
  cout << -1;
  return 0;
}
