#include typedef long long ll; ll dp[55]; ll count_one(ll N); int main() { ll A, B; scanf("%lld %lld",&A, &B); for(int i=1; i<55; i++) dp[i] = 2*dp[i-1] + (1LL << (i-1)); printf("%lld\n", count_one(B) - count_one(A-1)); return 0; } ll count_one(ll N) { ll res = 0; for(int i=54; i>0; i--) { ll MSB = N & (1LL <<(i-1)); if(MSB) { res += dp[i-1] + (N - MSB + 1); N -= MSB; } } return res; }