#include <iostream>
#include <math.h>
#include <bits/stdc++.h>
using namespace std;
#define ll long long
vector <ll> v;
int main()
{
ll l, r, x, y;
cin >> l >> r >> x >> y;
ll sqt = sqrt(y);
ll cnt = 0, mns = 0;
for(ll i = 1; i <= sqt; i++) {
if(y % i != 0)
continue;
ll d = y / i;
if(d < l || d > r || i < l || i > r)
continue;
//cout << i << " " << d << endl;
v.push_back(i);
if(d != i)
v.push_back(d);
}
for(ll i = 0; i < v.size(); i++) {
for(ll j = i; j < v.size(); j++) {
if(__gcd(v[i], v[j]) != x)
continue;
cnt++;
}
}
cout << cnt << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWF0aC5oPgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgbGwgbG9uZyBsb25nIAoKdmVjdG9yIDxsbD4gdjsKCmludCBtYWluKCkKCnsKCWxsIGwsIHIsIHgsIHk7CgljaW4gPj4gbCA+PiByID4+IHggPj4geTsKCWxsIHNxdCA9IHNxcnQoeSk7CgkKCWxsIGNudCA9IDAsIG1ucyA9IDA7Cglmb3IobGwgaSA9IDE7IGkgPD0gc3F0OyBpKyspIHsKCQlpZih5ICUgaSAhPSAwKQoJCSAgICAgY29udGludWU7CgkJbGwgZCA9IHkgLyBpOwoJCWlmKGQgPCBsIHx8IGQgPiByIHx8IGkgPCBsIHx8IGkgPiByKQoJCSAgICAgY29udGludWU7CiAgICAgICAgLy9jb3V0IDw8IGkgPDwgIiAgIiA8PCBkIDw8IGVuZGw7CgkJdi5wdXNoX2JhY2soaSk7CiAgICAgICAgaWYoZCAhPSBpKQogICAgICAgICAgICB2LnB1c2hfYmFjayhkKTsKCX0KCiAgICBmb3IobGwgaSA9IDA7IGkgPCB2LnNpemUoKTsgaSsrKSB7CiAgICAgICAgZm9yKGxsIGogPSBpOyBqIDwgdi5zaXplKCk7IGorKykgewogICAgICAgICAgICBpZihfX2djZCh2W2ldLCB2W2pdKSAhPSB4KQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBjbnQrKzsKICAgICAgICB9CiAgICB9CgkKCWNvdXQgPDwgY250IDw8IGVuZGw7CglyZXR1cm4gMDsKfQ==