For problem statement at 2000-2999/2000-2099/2060-2069/2066/problemB.txt this is a correct solution, but verifier at 2000-2999/2000-2099/2060-2069/2066/verifierB.go ends with All 204 tests passed. can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
writer := bufio.NewWriter(os.Stdout)
defer writer.Flush()
var t int
if _, err := fmt.Fscan(reader, &t); err != nil {
return
}
for tc := 0; tc < t; tc++ {
var n int
fmt.Fscan(reader, &n)
a := make([]int, n)
c := 0
firstZero := int(1e9)
for i := 0; i < n; i++ {
fmt.Fscan(reader, &a[i])
if a[i] != 0 {
c++
} else if firstZero == int(1e9) {
firstZero = i
}
}
firstBad := int(1e9)
mex := 1
seen := make([]bool, n+3)
for i := n - 1; i >= 0; i-- {
if a[i] > 0 {
if a[i] < mex {
firstBad = i
}
if a[i] <= n+1 {
seen[a[i]] = true
for seen[mex] {
mex++
}
}
}
}
if firstZero < firstBad {
fmt.Fprintln(writer, c+1)
} else {
fmt.Fprintln(writer, c)
}
}
}
```