It's year 2018 and it's Christmas time! Before going for vacations, students of Hogwarts School of Witchcraft and Wizardry had their end semester exams.
$N$ students attended the semester exam. Once the exam was over, their results were displayed as either "Pass" or "Fail" behind their magic jacket which they wore. A student cannot see his/her result but can see everyone else's results. Each of $N$ students count the number of passed students they can see.
Given the number of "Pass" verdicts that each of the $N$ students counted, we have to figure out conclusively, the number of students who failed, or report that there is some inconsistency or that we cannot be sure.
-----Input:-----
- First line will contain $T$, number of testcases. Then the testcases follow. 
- The first line of each test case will contain $N$, representing the number of students who attended the exam.
- Next line contains  $N$ spaced integers representing the number of "Pass" counted by each of the $N$ students.
-----Output:-----
- For each test case, output the answer in a single line. 
- If the counts reported by the students are not consistent with each other or if it's not possible to predict the number of failed students from the given input, then print -1.
-----Constraints-----
- $1 \leq T \leq 50$
- $1 \leq N \leq 10^{5}$
- $0 \leq$ Count given by each Student $\leq 10^{5}$
-----Sample Input:-----
1
4
3 2 2 2
-----Sample Output:-----
1
-----EXPLANATION:-----
There are 4 students, and they counted the number of passed students as 3,2,2,2. The first student can see that all others have passed, and all other students can see only 2 students who have passed. Hence, the first student must have failed, and others have all passed. Hence, the answer is 1.
# cook your dish here
for _ in range(int(input())):
 n=int(input());l=[int(i) for i in input().split()]
 if n==1:print(-1);continue
 if len(set(l))==1:
  if l[0]==0:print(n)
  elif l[0]==n-1:print(0)
  else:print(-1)
  continue
 if len(set(l))>2 or max(l)-min(l)>1:print(-1);continue
 a,b = l.count(min(l)),l.count(max(l))
 print(b) if max(l)==a else print(-1)
# cook your dish here
for _ in range(int(input())):
 n=int(input());l=[int(i) for i in input().split()]
 if n==1:print(-1);continue
 if len(set(l))==1:
  if l[0]==0:print(n)
  elif l[0]==n-1:print(0)
  else:print(-1)
  continue
 if len(set(l))>2 or max(l)-min(l)>1:print(-1);continue
 a,b = l.count(min(l)),l.count(max(l))
 print(b) if max(l)==a else print(-1)