#include using namespace std; using ll = long long; using Vi = vector; using Pii = pair; #define mp make_pair #define pb push_back #define x first #define y second #define rep(i,b,e) for(int i = (b); i < (e); i++) #define each(a, x) for(auto& a : (x)) #define all(x) (x).begin(),(x).end() #define sz(x) int((x).size()) using dbl = double; using vec2 = pair; constexpr dbl EPS = 1e-7; vec2 rot(vec2 p, dbl a) { return {p.x*cos(a) - p.y*sin(a), p.x*sin(a) + p.y*cos(a)}; } int main() { cin.sync_with_stdio(0); cin.tie(0); cout << fixed << setprecision(12); int n; dbl r, a, b; cin >> n >> r >> a >> b; vector points(n); each(p, points) cin >> p.x >> p.y; dbl ang = atan2(b, a); each(p, points) p = rot(p, -ang); vector> events; each(p, points) { dbl kek = r*r - p.y*p.y; if (kek < 0) continue; dbl d = sqrt(kek); events.pb({p.x-d-EPS, 1}); events.pb({p.x+d+EPS, -1}); } int ans = 0, cur = 0; sort(all(events)); each(e, events) { cur += e.y; ans = max(ans, cur); } cout << ans << endl; return 0; }