n = int(input()) A = list(map(int,input().split())) mod = 10**9+7 three = 1 dp = [A[0],0] ans = 0 for i,a in enumerate(A[1:],1): ndp = [0,0] ans += dp[0]*pow(3,n-1-i,mod)*2%mod ans -= dp[1]*pow(3,n-1-i,mod)*2%mod ans %= mod ndp[0] += dp[0]*a ndp[0] += three*a ndp[0] %= mod ndp[1] += dp[1]*a ndp[1] += three*a ndp[1] %= mod dp = ndp three *= 3 three %= mod print((ans+dp[0]-dp[1])%mod)