#include using namespace std; typedef long long ll; const ll MAXN = 1e12+9; const ll MOD = 1e18; vector getFactorization(ll a){ vector 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 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 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 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; }