Nezzar has n balls, numbered with integers 1, 2, …, n. Numbers a_1, a_2, …, a_n are written on them, respectively. Numbers on those balls form a non-decreasing sequence, which means that a_i ≤ a_{i+1} for all 1 ≤ i < n.

Nezzar wants to color the balls using the minimum number of colors, such that the following holds.

  * For any color, numbers on balls will form a strictly increasing sequence if he keeps balls with this chosen color and discards all other balls. 



Note that a sequence with the length at most 1 is considered as a strictly increasing sequence.

Please help Nezzar determine the minimum number of colors.

Input

The first line contains a single integer t (1 ≤ t ≤ 100) — the number of testcases. 

The first line of each test case contains a single integer n (1 ≤ n ≤ 100).

The second line of each test case contains n integers a_1,a_2,…,a_n (1 ≤ a_i ≤ n). It is guaranteed that a_1 ≤ a_2 ≤ … ≤ a_n.

Output

For each test case, output the minimum number of colors Nezzar can use.

Example

Input


5
6
1 1 1 2 3 4
5
1 1 2 2 3
4
2 2 2 2
3
1 2 3
1
1


Output


3
2
4
1
1

Note

Let's match each color with some numbers. Then:

In the first test case, one optimal color assignment is [1,2,3,3,2,1].

In the second test case, one optimal color assignment is [1,2,1,2,1].
import java.util.ArrayList;
import java.util.Scanner;

public class colors {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int nT = Integer.parseInt(sc.next());
        ArrayList<ArrayList<Integer>> listOfLists = new ArrayList<ArrayList<Integer>>();
        for (int i = 0; i < nT; i++) {
            int n = Integer.parseInt(sc.next());
            ArrayList<Integer> listOfNs = new ArrayList<Integer>();
            for (int j = 0; j < n; j++) {
                int num = Integer.parseInt(sc.next());
                listOfNs.add(num);
            }
            listOfLists.add(listOfNs);
        }
        // System.out.println("Answers are here : ");
        for (int i = 0; i < listOfLists.size(); i++) {
            colors.getColors(listOfLists.get(i));
            // System.out.println(color);

        }

    }

    static void getColors(ArrayList<Integer> listOfNs) {
        ArrayList<Integer> colors = new ArrayList<Integer>();

        for (int i = 0; i < listOfNs.size(); i++) {
            if (colors.size() == 0) {
                colors.add(listOfNs.get(i));
            } else {
                int index = 0;
                int flag = 0;
                for (index = 0; index < colors.size(); index++) {
                    if (colors.get(index) < listOfNs.get(i)) {
                        colors.set(index, listOfNs.get(i));
                        flag = 1;
                        break;
                    }
                }
                if (flag == 0) {
                    colors.add(listOfNs.get(i));
                }

            }

        }

        System.out.println(colors.size());
    }
}