#include <bits/stdc++.h>
using namespace std;
using i64 = long long;
using Pii = pair<int, int>;
constexpr double eps = 1e-8;
constexpr double INF = 1e15;
struct Point {
  double x, y;
  Point operator+(const Point& o) const { return {x + o.x, y + o.y}; }
  Point operator-(const Point& o) const { return {x - o.x, y - o.y}; }
  Point operator*(double k) const { return {x * k, y * k}; }
  double DotMul(const Point& o) const { return x * o.x + y * o.y; }
  double XMul(const Point& o) const { return x * o.y - y * o.x; }
};
struct Line {
  Point u, v;
};
inline bool Zero(double x) { return fabs(x) < eps; }
inline double Dis(const Point& a, const Point& b) {
  return sqrt((a.x - b.x) * (a.x - b.x) + (a.y - b.y) * (a.y - b.y));
}
inline bool Parallel(const Line& a, const Line& b) {
  return Zero((a.v - a.u).XMul(b.v - b.u));
}
inline Point Inter(const Line& a, const Line& b) {
  double s1 = (b.v - a.u).XMul(b.u - a.u);
  double s2 = (b.u - a.v).XMul(b.v - a.v);
  return {(a.u.x * s2 + a.v.x * s1) / (s1 + s2),
          (a.u.y * s2 + a.v.y * s1) / (s1 + s2)};
}
double Calc1(const Point& p, const Point& q, const Point& v, double w,
             double t) {
  double low = 0, high = t, ret = INF;
  while (high - low > eps) {
    double mid = (low + high) / 2.0;
    Point o = p + v * mid;
    double d = Dis(o, q) / w;
    if (d > mid) {
      low = mid;
    } else {
      ret = mid, high = mid;
    }
  }
  return ret;
}
double Calc2(const Point& p, const Point& q, const Point& v, double w,
             double t) {
  double low = t, high = INF, ret = INF;
  while (high - low > eps) {
    double mid = (low + high) / 2.0;
    Point o = p + v * (mid - t);
    double d = Dis(o, q) / w;
    if (d > mid) {
      low = mid;
    } else {
      ret = mid;
      high = mid;
    }
  }
  return ret;
}
double Solve(const Point& p, const Point& q, const Point& v1, const Point& v2,
             double w, double t) {
  double ret = Calc1(p, q, v1, w, t);
  if (ret < INF) return ret;
  ret = Calc2(p + v1 * t, q, v2, w, t);
  return ret;
}
int main() {
  Point p, q, v1, v2;
  double w, t;
  while (~scanf("%lf%lf%lf%lf", &p.x, &p.y, &q.x, &q.y)) {
    scanf("%lf%lf", &w, &t);
    scanf("%lf%lf%lf%lf", &v1.x, &v1.y, &v2.x, &v2.y);
    v1.x = -v1.x;
    v1.y = -v1.y;
    v2.x = -v2.x;
    v2.y = -v2.y;
    printf("%.10f\n", Solve(q, p, v1, v2, w, t));
  }
  return 0;
}
