write a go solution for Description: You are given the sequence of integers a_1,a_2,ldots,a_n of length n. The sequence of indices i_1<i_2<ldots<i_k of length k denotes the subsequence a_i_1,a_i_2,ldots,a_i_k of length k of sequence a. The subsequence a_i_1,a_i_2,ldots,a_i_k of length k of sequence a is called increasing subsequence if a_i_j<a_i_j+1 for each 1<=j<k. The weight of the increasing subsequence a_i_1,a_i_2,ldots,a_i_k of length k of sequence a is the number of 1<=j<=k, such that exists index i_k<x<=n and a_x>a_i_j. For example, if a=[6,4,8,6,5], then the sequence of indices i=[2,4] denotes increasing subsequence [4,6] of sequence a. The weight of this increasing subsequence is 1, because for j=1 exists x=5 and a_5=5>a_i_1=4, but for j=2 such x doesn't exist. Find the sum of weights of all increasing subsequences of a modulo 10^9+7. Input Format: The first line contains a single integer t (1<=t<=1000) — the number of test cases. The first line of each test case contains the single integer n (1<=n<=2*10^5) — the length of the sequence a. The second line of each test case contains n integers a_1,a_2,ldots,a_n (1<=a_i<=10^9) — the sequence a. It is guaranteed that the sum of n over all test cases doesn't exceed 2*10^5. Output Format: For each test case, print the sum of weights of all increasing subsequences a modulo 10^9+7. Note: In the first test case the following increasing subsequences of a have not zero weight: - The weight of [a_1]=[6] is 1. - The weight of [a_2]=[4] is 1. - The weight of [a_2,a_3]=[4,8] is 1. - The weight of [a_2,a_4]=[4,6] is 1. In the second test case there are 7 increasing subsequences of a with not zero weight: 3 with weight 1, 3 with weight 2 and 1 with weight 3. The sum of weights is 12.. Output only the code with no comments, explanation, or additional text.