def invmod(a,mod):#mod逆元 if a == 0: return 0 if a == 1: return 1 return (-invmod(mod % a, mod) * (mod // a)) % mod N = int(input()) lsA = list(map(int,input().split())) mod = 10**9+7 ans = 0 n1Ck = [1] for i in range(1,N): n1Ck.append((n1Ck[-1]*(N-i)*invmod(i,mod))%mod) for i in range(N): ans += n1Ck[i]*lsA[i] ans %= mod print(ans)