#include <bits/stdc++.h>
using namespace std;
const double pi = acos(-1);
int i, j, k, n, m, T;
double ax, ay, va, xu, yu, vu, r, R, adis, bdis, ao, bo, v, l, rr, mid, b, d,
    bx, by;
double check(double ti) {
  b = atan2(xu, yu) - ti * v;
  bx = sin(b) * R;
  by = cos(b) * R;
  d = atan2(ax, ay) - atan2(bx, by);
  if (d < 0) d = -d;
  if (d > pi) d = 2 * pi - d;
  if (ao + bo >= d)
    return (sqrt((ax - bx) * (ax - bx) + (ay - by) * (ay - by)));
  return (adis + bdis + r * (d - ao - bo));
}
int main() {
  scanf("%lf%lf%lf%lf%lf%lf%lf", &xu, &yu, &vu, &ax, &ay, &va, &r);
  R = sqrt(xu * xu + yu * yu);
  adis = sqrt(ax * ax + ay * ay - r * r);
  bdis = sqrt(R * R - r * r);
  ao = atan(adis / r);
  bo = pi / 2 - asin(r / R);
  v = vu / R;
  l = 0;
  rr = 1e10;
  while (l + 1e-8 <= rr) {
    mid = (l + rr) / 2;
    if (check(mid) / va <= mid)
      rr = mid;
    else
      l = mid;
  }
  printf("%.6lf\n", mid);
}
