For problem statement at 1000-1999/1500-1599/1550-1559/1552/problemC.txt this is a correct solution, but verifier at 1000-1999/1500-1599/1550-1559/1552/verifierC.go ends with All 100 tests passed can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
var t int
fmt.Fscan(reader, &t)
for tc := 0; tc < t; tc++ {
var n, k int
fmt.Fscan(reader, &n, &k)
used := make([]bool, 2*n+1)
type chord struct{ a, b int }
old := make([]chord, k)
for i := 0; i < k; i++ {
var x, y int
fmt.Fscan(reader, &x, &y)
if x > y {
x, y = y, x
}
old[i] = chord{x, y}
used[x] = true
used[y] = true
}
free := []int{}
for i := 1; i <= 2*n; i++ {
if !used[i] {
free = append(free, i)
}
}
m := n - k
newChords := make([]chord, m)
for i := 0; i < m; i++ {
newChords[i] = chord{free[i], free[i+m]}
}
ans := 0
for i := 0; i < k; i++ {
for j := i + 1; j < k; j++ {
a, b := old[i].a, old[i].b
c, d := old[j].a, old[j].b
if (a < c && c < b && b < d) || (c < a && a < d && d < b) {
ans++
}
}
}
ans += m * (m - 1) / 2
for i := 0; i < k; i++ {
for j := 0; j < m; j++ {
a, b := old[i].a, old[i].b
c, d := newChords[j].a, newChords[j].b
if (a < c && c < b && b < d) || (c < a && a < d && d < b) {
ans++
}
}
}
fmt.Println(ans)
}
}
```