#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,m;
int dp[9][2];
int a[10];
int dfs(int pos,bool sta,bool limit){
if(pos==0)return 1;
if(!limit&&dp[pos][sta]!=-1)return dp[pos][sta];
int len=limit?a[pos]:9;
int ans=0;
for(int i=0;i<=len;i++){
if(sta&&i==2)continue;
if(i==4)continue;//保证枚举合法性
ans+=dfs(pos-1,i==6,limit&&i==len);
}
if(!limit)dp[pos][sta]=ans;
return ans;
}
int solve(int x){
int pos=0;
while(x){
a[++pos]=x%10;
x/=10;
}
return dfs(pos,0,1);
}
signed main(){
ios::sync_with_stdio(false);cin.tie(0);
int n,m;
while(cin>>n>>m,n+m){
memset(dp,-1,sizeof(dp));
cout<<solve(m)-solve(n-1)<<endl;
}
}