Beauty of Sequence

Accepts: 64
Submissions: 166
Time Limit: 6000/3000 MS (Java/Others)
Memory Limit: 65536/65536 K (Java/Others)
问题描述
给出一个整数序列, 去除序列中连续相邻的重复元素(只保留一个), 剩下来的数的和称之为序列的beauty.

现在给你一个长度为$n$的整数序列$A$.  问序列$A$的所有子序列的beauty的和是多少. 由于答案可能很大, 你只要输出答案对$10^9+7$取模的结果.

Note: 在数学中,某个序列的子序列是从最初序列通过去除某些元素但不破坏余下元素的相对位置(在前或在后)而形成的新序列。 例如$\{1,3,2\}$ 是$\{1, 4, 3, 5, 2, 1\}$的一个子序列.
输入描述
输入有多组数据. 第一行包含一个整数$T$表示测试数据的组数. 对于每组数据:

第一行有一个整数$n (1 \le n \le 10^5)$, 表示序列的大小. 接下来一行包含$n$个整数$a_1,a_2,...,a_n$, 表示序列$A$, $(1 \le a_i \le 10^9)$.
输出描述
对于每组数据, 输出答案对$10^9+7$取模的结果.
输入样例
3
5
1 2 3 4 5
4
1 2 1 3
5
3 3 2 1 2
输出样例
240
54
144