/* Author haleyk10198 */
/* 作者: haleyk10198 */
#include <iostream>
#include <fstream>
#include <sstream>
#include <cstdlib>
#include <cstdio>
#include <vector>
#include <map>
#include <queue>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <iomanip>
#include <ctime>
#include <string>
#include <set>
#include <stack>
#define MOD 1000000007
#define INF 2147483647
#define PI 3.1415926535897932384626433
#define ll long long
#define pii pair<int,int>
#define mp(x,y) make_pair((x),(y))
using namespace std;
struct edge{
double a,b,c,m;
pii u,v;
edge(pii e,pii f):u(e),v(f){
if(e.first==f.first){
a=1;b=0;c=e.second;
m=-2e9;
}
else{
m=1.0*(e.second-f.second)/(e.first-f.first);
b=-1;a=m;c=e.second-m*e.first;
}
}
};
int n,w,v,u;
vector<edge> a;
vector<pii> list;
bool check(void){
double mid=1.0*w/u;
edge now=edge(mp(0,0),mp(mid*v,w));
bool f=true;
for(auto x:a){/*
double x1,y1;
if(x.a==now.a||x.b==0)
continue;
if(x.m==2e9){
x1=x.u.first;
y1=(x1*now.a+now.c)/(-now.b);
}
else{
x1=1.0*(x.c-now.c)/(now.a-x.a);
y1=-1.0*(x.a*x1+x.c)/x.b;
}
if((x1<x.u.first)^(x1<x.v.first)&&(y1<x.u.second)^(y1<x.v.second))
f=false;
*/
double x1=x.u.first,y1=x.u.second;
if(x1/v<y1/u)
f=false;
}
return f;
}
/*
double bins(double l,double r,int cnt){
double mid=(l+r)/2;
if(cnt==100)
return mid;
if(!check(mid))
return bins(mid,r,cnt+1);
else
return bins(l,mid,cnt+1);
}
*/
int main(){
//freopen("input.txt","r",stdin);
//freopen("output.txt","w",stdout);
//ios_base::sync_with_stdio(false);
cin>>n>>w>>v>>u;
int low,lowv=INF;
for(int i=0;i<n;i++){
int x,y;
cin>>x>>y;
list.push_back(mp(x,y));
}
for(int i=0;i<n;i++){
a.push_back(edge(list[i],list[(i+1)%n]));
if(lowv>a[i].u.second){
low=i;
lowv=a[i].u.second;
}
}
if(check()||lowv>w)
cout<<fixed<<setprecision(12)<<1.0*w/u;
else{
int nowy=0,i=low;
double t=0.0;
t=max(1.0*a[i].u.second/u,1.0*a[i].u.first/v);
nowy=a[i].u.second;
for(;a[i].m>0;(++i)%=n){
t=max(1.0*(a[i].v.second-nowy)/u+t,1.0*a[i].v.first/v);
nowy=a[i].v.second;
}
t+=1.0*(w-nowy)/u;
cout<<fixed<<setprecision(12)<<t<<endl;
}
return 0;
}
LyogQXV0aG9yIGhhbGV5azEwMTk4ICovCi8qIOS9nOiAhTogIGhhbGV5azEwMTk4ICovCiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPGZzdHJlYW0+CiNpbmNsdWRlIDxzc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KI2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPHF1ZXVlPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDxhbGdvcml0aG0+CiNpbmNsdWRlIDxjc3RyaW5nPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGN0aW1lPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8c3RhY2s+CgojZGVmaW5lIE1PRCAxMDAwMDAwMDA3CiNkZWZpbmUgSU5GIDIxNDc0ODM2NDcKI2RlZmluZSBQSSAzLjE0MTU5MjY1MzU4OTc5MzIzODQ2MjY0MzMKI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBwaWkgcGFpcjxpbnQsaW50PgojZGVmaW5lIG1wKHgseSkgbWFrZV9wYWlyKCh4KSwoeSkpCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IGVkZ2V7Cglkb3VibGUgYSxiLGMsbTsKCXBpaSB1LHY7CgllZGdlKHBpaSBlLHBpaSBmKTp1KGUpLHYoZil7CgkJaWYoZS5maXJzdD09Zi5maXJzdCl7CgkJCWE9MTtiPTA7Yz1lLnNlY29uZDsKCQkJbT0tMmU5OwoJCX0KCQllbHNlewoJCQltPTEuMCooZS5zZWNvbmQtZi5zZWNvbmQpLyhlLmZpcnN0LWYuZmlyc3QpOwoJCQliPS0xO2E9bTtjPWUuc2Vjb25kLW0qZS5maXJzdDsKCQl9Cgl9Cn07CgppbnQgbix3LHYsdTsKdmVjdG9yPGVkZ2U+IGE7CnZlY3RvcjxwaWk+IGxpc3Q7Cgpib29sIGNoZWNrKHZvaWQpewoJZG91YmxlIG1pZD0xLjAqdy91OwoJZWRnZSBub3c9ZWRnZShtcCgwLDApLG1wKG1pZCp2LHcpKTsKCWJvb2wgZj10cnVlOwoJZm9yKGF1dG8geDphKXsvKgoJCWRvdWJsZSB4MSx5MTsKCQlpZih4LmE9PW5vdy5hfHx4LmI9PTApCgkJCWNvbnRpbnVlOwoJCWlmKHgubT09MmU5KXsKCQkJeDE9eC51LmZpcnN0OwoJCQl5MT0oeDEqbm93LmErbm93LmMpLygtbm93LmIpOwoJCX0KCQllbHNlewoJCQl4MT0xLjAqKHguYy1ub3cuYykvKG5vdy5hLXguYSk7CgkJCXkxPS0xLjAqKHguYSp4MSt4LmMpL3guYjsKCQl9CgkJaWYoKHgxPHgudS5maXJzdCleKHgxPHgudi5maXJzdCkmJih5MTx4LnUuc2Vjb25kKV4oeTE8eC52LnNlY29uZCkpCgkJCWY9ZmFsc2U7CgkJKi8KCQlkb3VibGUgeDE9eC51LmZpcnN0LHkxPXgudS5zZWNvbmQ7CgkJaWYoeDEvdjx5MS91KQoJCQlmPWZhbHNlOwoJfQoJcmV0dXJuIGY7Cn0KCi8qCmRvdWJsZSBiaW5zKGRvdWJsZSBsLGRvdWJsZSByLGludCBjbnQpewoJZG91YmxlIG1pZD0obCtyKS8yOwoJaWYoY250PT0xMDApCgkJcmV0dXJuIG1pZDsKCWlmKCFjaGVjayhtaWQpKQoJCXJldHVybiBiaW5zKG1pZCxyLGNudCsxKTsKCWVsc2UKCQlyZXR1cm4gYmlucyhsLG1pZCxjbnQrMSk7Cn0KKi8KCmludCBtYWluKCl7CgkvL2ZyZW9wZW4oImlucHV0LnR4dCIsInIiLHN0ZGluKTsKCS8vZnJlb3Blbigib3V0cHV0LnR4dCIsInciLHN0ZG91dCk7CgkvL2lvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwoJY2luPj5uPj53Pj52Pj51OwoJaW50IGxvdyxsb3d2PUlORjsKCWZvcihpbnQgaT0wO2k8bjtpKyspewoJCWludCB4LHk7CgkJY2luPj54Pj55OwoJCWxpc3QucHVzaF9iYWNrKG1wKHgseSkpOwoJfQoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJYS5wdXNoX2JhY2soZWRnZShsaXN0W2ldLGxpc3RbKGkrMSklbl0pKTsKCQlpZihsb3d2PmFbaV0udS5zZWNvbmQpewoJCQlsb3c9aTsKCQkJbG93dj1hW2ldLnUuc2Vjb25kOwoJCX0KCX0KCWlmKGNoZWNrKCl8fGxvd3Y+dykKCQljb3V0PDxmaXhlZDw8c2V0cHJlY2lzaW9uKDEyKTw8MS4wKncvdTsKCWVsc2V7CgkJaW50IG5vd3k9MCxpPWxvdzsKCQlkb3VibGUgdD0wLjA7CgkJdD1tYXgoMS4wKmFbaV0udS5zZWNvbmQvdSwxLjAqYVtpXS51LmZpcnN0L3YpOwoJCW5vd3k9YVtpXS51LnNlY29uZDsKCQlmb3IoO2FbaV0ubT4wOygrK2kpJT1uKXsKCQkJdD1tYXgoMS4wKihhW2ldLnYuc2Vjb25kLW5vd3kpL3UrdCwxLjAqYVtpXS52LmZpcnN0L3YpOwoJCQlub3d5PWFbaV0udi5zZWNvbmQ7CgkJfQoJCXQrPTEuMCoody1ub3d5KS91OwoJCWNvdXQ8PGZpeGVkPDxzZXRwcmVjaXNpb24oMTIpPDx0PDxlbmRsOwoJfQoJcmV0dXJuIDA7Cn0K