# Enter your code here. Read input from STDIN. Print output to STDOUT import sys def maxt(A): n=len(A) B=[0 for x in range(n*(n+1)/2)] p=0 for k in range(n): for i in range(n-k): j=i+k B[p]=max(A[i:j+1]) p+=1 return B if __name__ == "__main__": n = int(raw_input().strip()) A = map(int, raw_input().strip().split(' ')) B=maxt(A) total=0 for m in B: total=(total+m)%(1000000007) temp=B[:] i=0 length=n*(n+1)//2 while length>1: if i>=length-1: length-=1 i=0 else: m=max(temp[i],temp[i+1]) total=(total+m)%(1000000007) temp[i]=m i+=1 print total print sum(maxt(maxt(A)))