rt
#include <bits/stdc++.h>
#define l long long
l a,b,x[64],sum[64]={0,1},ans=0,maxn=-1;
using namespace std;
inline int read()
{
char ch = getchar();
int x = 0, f = 1;
while (ch > '9' || ch < '0') {
if (ch == '-') f = -1;
ch = getchar();
}
while (ch >= '0' && ch <= '9') {
x = x * 10 + ch - '0';
ch = getchar();
}
return x * f;
}
int main()
{
cin>>a>>b;
for(l i=2;i<=63;i++)
{
sum[i]=sum[i-1]*2;
}
for(l u=a;u<=b;u++)
{
l k=u;
ans=0;
for(l i=63;i>=1;i--)
{
if(k>=sum[i])
{
ans++;
k-=sum[i];
}
}
maxn=max(ans,maxn);
}
printf("%lld",maxn);
return 0;
}