#include #include #include #define NMAX (1000000000 + 5) #define MOD (1000000000 + 7) #define LL long long using namespace std; LL q, x, y, check, prim, sum; LL comb(LL a) { return ((1LL* a * (a+1))/2)%MOD; } int main() { scanf("%lld", &q); for( ; q; --q) { sum = 0; check = 0; prim = 0; scanf("%lld %lld", &x, &y); //printf("%d %d\n", x, y); for(LL i = 1; i<= y; i <<= 1) { if(i < x) continue; //printf("check %d\n", i); check = 1; if(prim == 0) { prim = 1; sum = (sum + comb(i-x))%MOD; } //printf("sum = %d\n", sum); if((i<<1) > y) { sum = (sum + comb(y-i+1))%MOD; } else sum = (sum + comb(i))%MOD; } if(check == 0) sum = comb(y-x+1); printf("%lld\n", sum); } return 0; }