#include <bits/stdc++.h>
using namespace std;
vector<long long int> lk;
long long int find(long long int x) {
  long long int ans = 0;
  int idx = lower_bound(lk.begin(), lk.end(), x) - lk.begin();
  for (int i = idx; i >= 1; i--) {
    long long int len = (x - lk[i - 1]);
    ans += (len * lk[i]);
    x = lk[i - 1];
  }
  return (ans);
}
void gen(long long int x) {
  if (x > 44444444444) return;
  if (x > 0) lk.push_back(x);
  gen(x * 10 + 4);
  gen(x * 10 + 7);
}
int main() {
  lk.push_back(0);
  gen(0);
  sort(lk.begin(), lk.end());
  long long int l, r;
  cin >> l >> r;
  long long int v = 0, u = 0, ans = 0;
  v = find(r);
  u = find(l - 1);
  ans = v - u;
  cout << ans << endl;
  return 0;
}
