#include <bits/stdc++.h>
int yy, y2, yw, xb, yb, r;
double k, b, xw;
void readdata() {
  scanf("%d%d%d%d%d%d", &yy, &y2, &yw, &xb, &yb, &r);
  if (yy > y2) {
    int tem = yy;
    yy = y2;
    y2 = tem;
  }
}
void work() {
  if (y2 - yy <= 2 * r || yy >= yw || yw <= yb) {
    printf("-1\n");
    return;
  }
  k = double(2 * yw - yb - 3 * r - yy) / (double(xb));
  b = double(yy + r);
  if ((fabs(double(-y2 + b)) / sqrt(k * k + 1)) < r) {
    printf("-1\n");
    return;
  }
  b = b + r;
  xw = (yw - b) / k;
  printf("%.10lf\n", xw);
}
int main() {
  readdata();
  work();
  return 0;
}
