#!/bin/python3 import sys def maxTransform(A): B = [] for k in range(0, len(A)): for i in range(0, len(A) - k): j = i + k B.append(max(A[i:j + 1])) return B def solve(A): return sum(maxTransform(maxTransform(A))) % ((10 ** 9) + 7) # Return the sum of S(S(A)) modulo 10^9+7. if __name__ == "__main__": n = int(input().strip()) a = list(map(int, input().strip().split(' '))) result = solve(a) print(result)