n=int(input()) a=list(map(int,input().split(' '))) def maxtrans(x): t=[] for k in range(len(x)): for i in range(len(x)-k): j=i+k t.append(max(x[i:j+1])) return t def conv(x): return x%(10**9+7) print(sum(list(map(conv,maxtrans(maxtrans(a))))))