#include <bits/stdc++.h>
using namespace std;
inline void prep() {
  cin.tie(0);
  cin.sync_with_stdio(0);
};
const double pi = acos(-1.);
long long mod = 1000000007;
long long mymod(long long num) {
  if (num < 0 && !(num % mod == 0)) {
    if (mod == 1) {
      return 0;
    }
    return mod - abs(num) % mod;
  } else {
    return num % mod;
  }
}
double eps = .000000001;
int main() {
  prep();
  double x1, y1, x2, y2;
  cin >> x1 >> y1 >> x2 >> y2;
  double v, t;
  cin >> v >> t;
  double vx, vy, wx, wy;
  cin >> vx >> vy >> wx >> wy;
  double a = v * v - vx * vx - vy * vy;
  double b = -(2 * (x1 - x2) * vx + 2 * (y1 - y2) * vy);
  double c = -((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
  vector<double> things = {(-b + sqrt(b * b - 4 * a * c)) / (2 * a),
                           (-b - sqrt(b * b - 4 * a * c)) / (2 * a)};
  sort(things.begin(), things.end());
  int cur = 0;
  while (things[cur] < 0) {
    cur++;
  }
  if (things[cur] > t) {
    double aa = x1 + vx * t - x2;
    double bb = y1 + vy * t - y2;
    a = v * v - wx * wx - wy * wy;
    b = -(2 * aa * wx + 2 * bb * wy) + v * v * t * 2;
    c = -(aa * aa + bb * bb) + v * v * t * t;
    vector<double> things2 = {(-b + sqrt(b * b - 4 * a * c)) / (2 * a),
                              (-b - sqrt(b * b - 4 * a * c)) / (2 * a)};
    sort(things2.begin(), things2.end());
    int curr = 0;
    while (things2[curr] < 0) {
      curr++;
    }
    printf("%.6lf", t + things2[curr]);
  } else {
    printf("%.6lf", things[cur]);
  }
  return 0;
}
