#include <bits/stdc++.h>
using namespace std;
const long long N = 2e5 + 5;
const long long MOD = (long long)1e9 + 7;
long long has[N];
long long sum(long long x) {
  long long pw = 1, c = 1;
  long long o = 0, e = 0;
  while (x > 0) {
    if (c & 1) {
      o += min(x, pw);
    } else {
      e += min(x, pw);
    }
    x -= pw;
    pw <<= 1;
    c++;
  }
  long long sum1 = ((o % MOD) * (o % MOD)) % MOD;
  long long sum2 = ((e % MOD) * (e % MOD)) % MOD;
  sum2 = ((sum2 % MOD) + (e % MOD)) % MOD;
  long long ans = ((sum1 % MOD) + (sum2 % MOD)) % MOD;
  return ans;
}
int32_t main() {
  long long l, r;
  cin >> l >> r;
  cout << (sum(r) - sum(l - 1) + MOD) % MOD;
}
