# Enter your code here. Read input from STDIN. Print output to STDOUT#!/bin/python3 import sys def rwh_primes(n): # https://stackoverflow.com/questions/2068372/fastest-way-to-list-all-primes-below-n-in-python/3035188#3035188 """ Returns a list of primes < n """ sieve = [True] * n for i in range(3,int(n**0.5)+1,2): if sieve[i]: sieve[i*i::2*i]=[False]*int((n-i*i-1)/(2*i)+1) return [2] + [i for i in range(3,n,2) if sieve[i]] primes=rwh_primes(10**6+1) def prime_factorize(a,primes): factors=[] for x in primes: while(a%x==0): factors.insert(0,x) a/=x if a==1: break if a==1: return factors else: return factors+[a] def longestSequence(arr): ans=[] for x in arr: tempans=1 tempfac=1 if x==1: factors=[] else: factors=prime_factorize(x,primes) factors.sort() factors=factors[::-1] for y in factors: tempfac*=y tempans+=tempfac ans.append(tempans) return int(sum(ans)) # Return the length of the longest possible sequence of moves. if __name__ == "__main__": n = int(input().strip()) arr = list(map(int, input().strip().split(' '))) result = longestSequence(arr) print(result)