#include #include #include #include #include #include using namespace atcoder; using namespace std; using ll = long long; using ull = unsigned long long; template using max_heap = priority_queue; template using min_heap = priority_queue, greater<>>; ll ll_min = numeric_limits::min(); ll ll_max = numeric_limits::max(); ll ALPHABET_N = 26; // using mint = modint998244353; // using mint = modint1000000007; #define rep(i, n) for (ll i = (ll)0; i < (ll)n; i++) #define rep_(i, k, n) for (ll i = (ll)k; i < (ll)n; i++) #define all(a) a.begin(), a.end() int main() { ll a, b; cin >> a >> b; auto isPrime = [](ll x) { if (x == 1) return false; for (ll i = 2; i * i <= x; i++) { if (x % i == 0) return false; } return true; }; auto f = [](ll x) { return x * x * x - x * x + x + 1; }; ll ans = 0; for (ll i = a; i <= b; i++) if (isPrime(i)) ans += f(i); cout << ans << endl; return 0; }