#include #include #include #include #include #include #include #include #include // std::cout, std::fixed #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; unordered_map mp; ll f(ll x) { if(mp[x]!=0) return mp[x]; if(x==1) { mp[x]=1; return 1; } ll maxi=x; for(ll i=2;i*i<=x;i++) { if(x%i==0) maxi=max(maxi,max((i)*f(x/i),(x/i)*f(i))); } mp[x]=1+maxi; return 1+maxi; return -1; } int main () { ios_base::sync_with_stdio(false); int n; cin>>n; vector nums(n); ll ans=0; for(int i=0;i>nums[i]; ans+=f(nums[i]); } cout<