#include <bits/stdc++.h>
int dx[4] = {0, -1, 0, 1};
int dy[4] = {1, 0, -1, 0};
using namespace std;
double add = 0.0;
inline bool check(double x1, double y1, double x2, double y2, double vx,
                  double vy, double v, double t) {
  double nx = t * vx + x1;
  double ny = t * vy + y1;
  double d = sqrt((x2 - nx) * (x2 - nx) + (y2 - ny) * (y2 - ny));
  return d / v < (t + add) + 1e-13;
}
double get(double x1, double y1, double x2, double y2, double vx, double vy,
           double v) {
  double dx = x2 - x1;
  double dy = y2 - y1;
  double start = 0.0;
  int mx = 1000000;
  if (dx * vx + dy * vy > 1e-13) {
    double tx = vx / sqrt(vx * vx + vy * vy);
    double ty = vy / sqrt(vx * vx + vy * vy);
    double t = (dx * tx + dy * ty) / sqrt(vx * vx + vy * vy);
    double l = 0.0, r = t;
    bool ok = false;
    int cnt = 0;
    while (r - l > 1e-13 && cnt++ < mx) {
      double mid = (l + r) / 2.0;
      if (check(x1, y1, x2, y2, vx, vy, v, mid)) {
        r = mid;
        ok = true;
      } else
        l = mid;
    }
    if (ok) return l;
    start = l;
  }
  double l = start, r = 1e15;
  int cnt = 0;
  while (r - l > 1e-13 && cnt++ < mx) {
    double mid = (l + r) / 2.0;
    if (check(x1, y1, x2, y2, vx, vy, v, mid))
      r = mid;
    else
      l = mid;
  }
  return l;
}
int Main() {
  ios_base::sync_with_stdio(0);
  double x1, y1, x2, y2;
  double v, t;
  double vx, vy, wx, wy;
  scanf("%lf%lf%lf%lf", &x1, &y1, &x2, &y2);
  scanf("%lf%lf", &v, &t);
  scanf("%lf%lf%lf%lf", &vx, &vy, &wx, &wy);
  double ans = get(x1, y1, x2, y2, vx, vy, v);
  if (ans > t + 1e-13) {
    x1 += vx * t;
    y1 += vy * t;
    add = t;
    ans = get(x1, y1, x2, y2, wx, wy, v) + t;
  }
  cout << fixed << setprecision(15) << ans << endl;
  return 0;
}
int main() { return Main(); }
