#include <bits/stdc++.h>

using namespace std;
typedef long long ll;
const ll MAXN = 1e12+9;
const ll MOD = 1e18;
vector <ll> getFactorization(ll a){
    vector <ll> ret;
    for(int i = 2; i <= sqrt(a); i++){
        while(a%i == 0){
            ret.push_back(i);
            a /= i;
        }
    }
    if(a > 1)ret.push_back(a);
    sort(ret.begin(),ret.end());
    return ret;
}

ll longestSequence(vector <ll> a) {
    //  Return the length of the longest possible sequence of moves.
    ll ans = 0;
    for(auto it = a.begin(); it != a.end(); it++){
        ans = (ans + *it)%MOD;
        ll nans = 0;
        vector <ll> fact = getFactorization(*it);
        for(auto lit = fact.begin(); lit != fact.end(); lit++){
            nans = ((nans * (*lit)) + 1)%MOD;
        }
        ans = (ans + nans)%MOD;
    }
    return ans;
}

int main() {
    int n;
    cin >> n;
    vector<ll> a(n);
    for(int a_i = 0; a_i < n; a_i++){
       cin >> a[a_i];
    }
    ll result = longestSequence(a);
    cout << result << endl;
    return 0;
}