package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
writer := bufio.NewWriter(os.Stdout)
defer writer.Flush()
var t int
fmt.Fscan(reader, &t)
for tc := 0; tc < t; tc++ {
var n int
fmt.Fscan(reader, &n)
f := make([]int, n+1)
for i := 0; i < n; i++ {
var x int
fmt.Fscan(reader, &x)
if x <= n {
f[x]++
}
}
c1_found := false
ans := -1
for i := 0; i <= n; i++ {
if f[i] == 0 {
ans = i
break
}
if f[i] == 1 {
if !c1_found {
c1_found = true
} else {
ans = i
break
}
}
}
fmt.Fprintln(writer, ans)
}
}