You are given an array $$$a$$$ of length $$$n$$$. You can perform the following two operations any number of times, in any order:
For example, given $$$a = [1,0,1,9,1]$$$, choosing $$$a_1, a_3, a_4$$$ for operation $$$2$$$ results in $$$a=[7,0,7,7,1]$$$. However, choosing $$$a_1, a_3, a_5$$$ for operation $$$2$$$ is invalid, as their values are the same.
You want to choose a sequence of operations that maximizes the total number of operations. Find the maximum number of operations possible. Since the answer can be large, output it modulo $$$998\,244\,353$$$.
The first line contains an integer $$$t$$$ ($$$1 \leq t \leq 10^4$$$) — the number of test cases.
For each test case, the first line contains an integer $$$n$$$ ($$$1 \leq n \leq 2 \cdot 10^5$$$) — the size of the array $$$a$$$.
The second line contains $$$n$$$ integers $$$a_1, a_2, \ldots, a_n$$$ ($$$0 \leq a_i \leq 10^6$$$).
It is guaranteed that the sum of $$$n$$$ over all test cases does not exceed $$$2 \cdot 10^5$$$.
For each test case, output a single integer in a new line — the maximum number of operations possible modulo $$$998\,244\,353$$$.
21520 2
5 3
In the first test case, you can only choose $$$a_1$$$ for operation $$$1$$$ five times.
In the second test case, the optimal strategy is the following:
After this, we can no longer perform any of the two operations on the array.