#include <bits/stdc++.h>
double X1, Y1, X2, Y2, v, t, vx, vy, wx, wy;
double dis(double x1, double y1, double x2, double y2) {
  return (double)((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
}
int check(double x) {
  double x3, y3;
  if (x > t) {
    x3 = X1 + t * vx + (x - t) * wx;
    y3 = Y1 + t * vy + (x - t) * wy;
  } else {
    x3 = X1 + x * vx;
    y3 = Y1 + x * vy;
  }
  double d = dis(X2, Y2, x3, y3);
  if (d < v * v * x * x) return true;
  return false;
}
int main() {
  while (~scanf("%lf%lf%lf%lf", &X1, &Y1, &X2, &Y2)) {
    scanf("%lf%lf%lf%lf%lf%lf", &v, &t, &vx, &vy, &wx, &wy);
    double l = 0, r = 1e10;
    int res = 1e6;
    while (res--) {
      double mid = (l + r) / 2;
      if (check(mid))
        r = mid;
      else
        l = mid;
    }
    printf("%.18lf\n", l);
  }
  return 0;
}
