For problem statement at 1000-1999/1600-1699/1680-1689/1687/problemA.txt this is a correct solution, but verifier at 1000-1999/1600-1699/1680-1689/1687/verifierA.go ends with All tests passed can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
)
type FastScanner struct {
r *bufio.Reader
}
func NewFastScanner() *FastScanner {
return &FastScanner{r: bufio.NewReader(os.Stdin)}
}
func (fs *FastScanner) nextInt64() int64 {
sign := int64(1)
val := int64(0)
c, _ := fs.r.ReadByte()
for (c < '0' || c > '9') && c != '-' {
c, _ = fs.r.ReadByte()
}
if c == '-' {
sign = -1
c, _ = fs.r.ReadByte()
}
for c >= '0' && c <= '9' {
val = val*10 + int64(c-'0')
c, _ = fs.r.ReadByte()
}
return val * sign
}
func main() {
in := NewFastScanner()
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
t := int(in.nextInt64())
for ; t > 0; t-- {
n64 := in.nextInt64()
k := in.nextInt64()
n := int(n64)
a := make([]int64, n)
for i := 0; i < n; i++ {
a[i] = in.nextInt64()
}
pref := make([]int64, n+1)
for i := 0; i < n; i++ {
pref[i+1] = pref[i] + a[i]
}
sumAll := pref[n]
if k <= int64(n) {
L := int(k)
var maxWin int64 = 0
for i := 0; i+L <= n; i++ {
s := pref[i+L] - pref[i]
if s > maxWin {
maxWin = s
}
}
add := int64(L*(L-1)) / 2
fmt.Fprintln(out, maxWin+add)
} else {
base := int64(n*(n-1)) / 2
extra := (k - int64(n)) * int64(n)
fmt.Fprintln(out, sumAll+base+extra)
}
}
}
```