编程题
### 问题描述
小齐有一个包含 $N$ 个整数的数组 $A$。考虑将 $A$ 分割成所有可能的子数组(总共有 $2^{N-1}$ 种分割方式)。
我们定义子数组 $[i, j]$ 的代价 $F$ 为 $\min(A_i, A_{i+1}, ..., A_j) \times \max(A_i, A_{i+1}, ..., A_j)$。一个分割的总代价 $G$ 是所有子数组代价 $F$ 的和。
请输出所有 $2^{N-1}$ 种分割的总代价 $G$ 的和。
### 输入格式
第一行包含一个整数 $N$。
第二行包含数组 $A$ 的 $N$ 个元素。
### 输出格式
输出答案对 $10^9 + 7$ 取模的结果。
### 样例输入
```
5
2 4 1 3 5
```
### 样例输出
```
478
```
### 评测数据规模
$1 \leq N \leq 10^5$,$1 \leq A_i \leq 10^9$。