For problem statement at 2000-2999/2000-2099/2030-2039/2036/problemF.txt this is a correct solution, but verifier at 2000-2999/2000-2099/2030-2039/2036/verifierF.go ends with All 202 tests passed can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
)
func g(n uint64) uint64 {
switch n % 4 {
case 0:
return n
case 1:
return 1
case 2:
return n + 1
default:
return 0
}
}
func calc(n, i, k uint64) uint64 {
res := g(n)
if n >= k {
m := (n - k) >> i
exc := g(m) << i
if m&1 == 0 {
exc ^= k
}
res ^= exc
}
return res
}
func main() {
in := bufio.NewReader(os.Stdin)
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
var t int
fmt.Fscan(in, &t)
for j := 0; j < t; j++ {
var l, r, i, k uint64
fmt.Fscan(in, &l, &r, &i, &k)
fmt.Fprintln(out, calc(r, i, k)^calc(l-1, i, k))
}
}
```