N = int(input()) A = list(map(int,input().split())) MOD = 10**9+7 p2 = [1] p3 = [1] for _ in range(N+10): p2.append(p2[-1]*2%MOD) p3.append(p3[-1]*3%MOD) for _ in range(10): p3.append(1) ans = 0 t = 1 for i in range(N): t *= A[i] t %= MOD tmp = t*p3[N-i-2]%MOD if i != N-1: tmp*=2 ans += tmp ans %= MOD print(ans)