#include <bits/stdc++.h>

using namespace std;

string transf(int n) {
	stringstream ss;
	ss << n;
	string ret;
	ss >> ret;
	return ret;
}

long long brute (int a, int b) {
	long long ans = 0;
	for (int i = a; i <= b; i++) {
		if (i % 2 == 1) {
			string s = transf(i);
			for (int j = 0; j < (int) s.size(); j++) {
				ans += s[j] - '0';
			}
		}
	}
	return ans;
}

long long dp[15][2];
long long sum[15][2];

long long solve(int x) {
	string s = transf(x);
	int n = (int) s.size();

	for (int i = 0; i <= n; i++) {
		for (int t = 0; t < 2; t++) {
			dp[i][t] = 0;
			sum[i][t] = 0;
		}
	}

	dp[0][0] = 1;
	for (int i = 0; i < n; i++) {
		int c = s[i] - '0';
		for (int t = 0; t < 2; t++) {
			for (int d = 0; d <= 9; d++) {
				if (i == n - 1 && d % 2 != 1) continue;
				if (t == 0 && d > c) continue;

				int nt = t;
				if (d < c) {
					nt = 1;
				}
				
				dp[i + 1][nt] += dp[i][t];
				sum[i + 1][nt] += sum[i][t] + d * dp[i][t];
			}
		}
	}

	long long ret = sum[n][0] + sum[n][1];
	return ret;
}

int main() {
	// assert(freopen("odd.in", "r", stdin));
	// assert(freopen("odd.out", "w", stdout));
	cin.sync_with_stdio(false);

	int A, B;
	cin >> A >> B;

	long long ans = solve(B) - solve(A - 1);
	cout << ans << endl;

	return 0;
}