#include #define MOD 1000000007 using namespace std; long long put2[50]; long long ans; int nrq, x, y, cnt = 0; long long minim(long long a, long long b) { if (a < b) return a; return b; } int main() { put2[0] = 1; for (int i = 1; put2[i - 1] < MOD; ++ i) put2[i] = put2[i - 1] * 2; cin >> nrq; while (nrq) { nrq --; cin >> x >> y; ans = 0; int st = 0; while (x > put2[st]) st ++; while (x <= y) { long long nr; if (put2[st] > y) nr = y - x + 1; else nr = put2[st] - x; ans += nr * (nr + 1) / 2; ans %= MOD; x = put2[st]; st ++; } cout << ans << '\n'; } return 0; }