#include <bits/stdc++.h>
using namespace std;
const double ep = 1e-8;
struct pnt {
  double x, y;
  pnt(double x = 0, double y = 0) : x(x), y(y) {}
  pnt operator+(const pnt &p) const { return pnt(x + p.x, y + p.y); }
  pnt operator-(const pnt &p) const { return pnt(x - p.x, y - p.y); }
  pnt operator*(const double &d) const { return pnt(x * d, y * d); }
  double dist() { return sqrt(x * x + y * y); }
  friend double dist(const pnt &a, const pnt &b) { return (a - b).dist(); }
  void in() { scanf("%lf %lf", &x, &y); }
} A, B, v, w;
double t, R;
int main() {
  A.in(), B.in();
  scanf("%lf %lf", &R, &t);
  v.in(), w.in();
  if (dist(B, A + v * t) < R * t + ep) {
    double l = 0, r = t;
    while (r - l > ep) {
      double m = (l + r) / 2;
      if (dist(B, A + v * m) < R * m + ep)
        r = m;
      else
        l = m;
    }
    printf("%.8lf\n", l);
  } else {
    double l = 0, r = 1e9;
    while (r - l > ep) {
      double m = (l + r) / 2;
      if (dist(B - w * m, A + v * t) < R * (t + m) + ep)
        r = m;
      else
        l = m;
    }
    printf("%.8lf\n", l + t);
  }
  return 0;
}
