#include #include #include #include #include using namespace std; using ll = long long; const int NMAX = 3e5+5; vector> st; int main() { int N; ll R; ll A, B; cin >> N >> R >> A >> B; for(int i = 0; i < N; ++i) { ll pa, pb; cin >> pa >> pb; ll pap = A*pa + B*pb; ll pbp = A*pb - B*pa; if((A*A+B*B)*R*R - pbp*pbp >= 0) { pair iv; double l = sqrt((A*A+B*B)*(R+1e-3)*(R+1e-3)-pbp*pbp); st.emplace_back(pap - l, true); st.emplace_back(pap + l, false); } } sort(st.begin(), st.end()); int k = 0; int m = 0; for(auto p : st) { if(p.second) { k++; m = max(m, k); } else { k--; } } cout << m << "\n"; return 0; }