For problem statement at 1000-1999/1500-1599/1580-1589/1585/problemC.txt this is a correct solution, but verifier at 1000-1999/1500-1599/1580-1589/1585/verifierC.go ends with All tests passed can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
"sort"
)
func main() {
in := bufio.NewReaderSize(os.Stdin, 1<<20)
out := bufio.NewWriterSize(os.Stdout, 1<<20)
defer out.Flush()
var t int
fmt.Fscan(in, &t)
for ; t > 0; t-- {
var n, k int
fmt.Fscan(in, &n, &k)
pos := make([]int64, 0, n)
neg := make([]int64, 0, n)
for i := 0; i < n; i++ {
var x int64
fmt.Fscan(in, &x)
if x > 0 {
pos = append(pos, x)
} else if x < 0 {
neg = append(neg, -x)
}
}
sort.Slice(pos, func(i, j int) bool { return pos[i] < pos[j] })
sort.Slice(neg, func(i, j int) bool { return neg[i] < neg[j] })
var total int64
var maxDist int64
for i := len(pos) - 1; i >= 0; i -= k {
d := pos[i]
total += 2 * d
if d > maxDist {
maxDist = d
}
}
for i := len(neg) - 1; i >= 0; i -= k {
d := neg[i]
total += 2 * d
if d > maxDist {
maxDist = d
}
}
total -= maxDist
fmt.Fprintln(out, total)
}
}
```