import std; void main(){ auto n = readln.chomp.to!ulong; auto a = readln.chomp.split(" ").to!(ulong[]); ulong M = 10 ^^ 9 + 7; ulong x = 1; ulong c = 2 * powmod(3U, n - 1, M); ulong r = 0; for(auto i = 0; i < n - 1; i++){ x *= a[i]; x %= M; c *= powmod(3U, M - 2, M); c %= M; r += x * c; r %= M; } r += x * a[n - 1]; writeln(r % M); }