#include <bits/stdc++.h>
using std::abs;
using std::cerr;
using std::cin;
using std::cout;
using std::endl;
using std::make_pair;
using std::max;
using std::min;
using std::pair;
using std::string;
using std::vector;
template <typename T>
inline T input() {
  T ans;
  cin >> ans;
  return ans;
}
template <typename FloatT>
struct vec2 {
 public:
  vec2() {}
  template <typename OtherT>
  vec2(vec2<OtherT> other) : x(other.x), y(other.y) {}
  vec2(FloatT x, FloatT y) : x(x), y(y) {}
  vec2<FloatT> operator-(vec2<FloatT> other) {
    return vec2<FloatT>(x - other.x, y - other.y);
  }
  vec2<FloatT> operator+(vec2<FloatT> other) {
    return vec2<FloatT>(x + other.x, y + other.y);
  }
  vec2<FloatT> operator*(FloatT num) { return vec2<FloatT>(num * x, num * y); }
  FloatT len() { return std::sqrt(x * x + y * y); }
  FloatT x;
  FloatT y;
};
const uint32_t num_iterations = 100000;
int main() {
  vec2<int32_t> src;
  vec2<int32_t> dest;
  int32_t v, t;
  vec2<int32_t> wind_before;
  vec2<int32_t> wind_after;
  cin >> src.x >> src.y >> dest.x >> dest.y;
  cin >> v >> t;
  cin >> wind_before.x >> wind_before.y >> wind_after.x >> wind_after.y;
  if ((vec2<long double>(src - dest) + vec2<long double>(wind_before) * t)
          .len() <= v * t) {
    float left = 0;
    float right = t;
    for (uint32_t i = 0; i != num_iterations; ++i) {
      float mid = left + (right - left) / 2;
      if ((vec2<long double>(src - dest) + vec2<long double>(wind_before) * mid)
              .len() <= v * mid)
        right = mid;
      else
        left = mid;
    }
    cout.precision(20);
    cout << std::fixed << right << endl;
  } else {
    vec2<long double> new_src =
        vec2<long double>(src) + vec2<long double>(wind_before) * t;
    float left = 0;
    float right = 1000000000;
    for (uint32_t i = 0; i != num_iterations; ++i) {
      float mid = left + (right - left) / 2;
      if ((new_src - vec2<long double>(dest) +
           vec2<long double>(wind_after) * mid)
              .len() <= v * (t + mid))
        right = mid;
      else
        left = mid;
    }
    cout.precision(20);
    cout << std::fixed << t + right << endl;
  }
  return 0;
}
