#include <bits/stdc++.h>
#define int long long
using namespace std;
const int MOD = 1e9 + 7;
int f(int n, int x) {
int l = n / x;
int last = x + (l - 1) * x;
last %= MOD;
int cur = (x + last) * l;
if (cur % 2 == 0) return (cur / 2) % MOD;
else return ((cur + MOD) / 2) % MOD;
}
int lcm(int a, int b) {
return a / __gcd(a, b) * b;
}
int calc(int n, int a, int b, int c) {
return (f(n, a) + f(n, b) + f(n, c) - f(n, lcm(a, b)) - f(n, lcm(b, c)) - f(n, lcm(c, a)) + f(n, lcm(a, lcm(b, c)))) % MOD;
}
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int a, b, c;
cin >> a >> b >> c;
int q;
cin >> q;
while (q--) {
int l, r;
cin >> l >> r;
cout << ((calc(r, a, b, c) - calc(l - 1, a, b, c)) % MOD + MOD) % MOD << '\n';
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgaW50IGxvbmcgbG9uZwp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjb25zdCBpbnQgTU9EID0gMWU5ICsgNzsKCmludCBmKGludCBuLCBpbnQgeCkgewoJaW50IGwgPSBuIC8geDsKCWludCBsYXN0ID0geCArIChsIC0gMSkgKiB4OwoJbGFzdCAlPSBNT0Q7CglpbnQgY3VyID0gKHggKyBsYXN0KSAqIGw7CglpZiAoY3VyICUgMiA9PSAwKSByZXR1cm4gKGN1ciAvIDIpICUgTU9EOwoJZWxzZSByZXR1cm4gKChjdXIgKyBNT0QpIC8gMikgJSBNT0Q7Cn0KCmludCBsY20oaW50IGEsIGludCBiKSB7CglyZXR1cm4gYSAvIF9fZ2NkKGEsIGIpICogYjsKfQoKaW50IGNhbGMoaW50IG4sIGludCBhLCBpbnQgYiwgaW50IGMpIHsKCXJldHVybiAoZihuLCBhKSArIGYobiwgYikgKyBmKG4sIGMpIC0gZihuLCBsY20oYSwgYikpIC0gZihuLCBsY20oYiwgYykpIC0gZihuLCBsY20oYywgYSkpICsgZihuLCBsY20oYSwgbGNtKGIsIGMpKSkpICUgTU9EOwp9CgpzaWduZWQgbWFpbigpIHsKCWlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7CgljaW4udGllKDApOwoJaW50IGEsIGIsIGM7CgljaW4gPj4gYSA+PiBiID4+IGM7CglpbnQgcTsKCWNpbiA+PiBxOwoJd2hpbGUgKHEtLSkgewoJCWludCBsLCByOwoJCWNpbiA+PiBsID4+IHI7CgkJY291dCA8PCAoKGNhbGMociwgYSwgYiwgYykgLSBjYWxjKGwgLSAxLCBhLCBiLCBjKSkgJSBNT0QgKyBNT0QpICUgTU9EIDw8ICdcbic7Cgl9CglyZXR1cm4gMDsKfQ==