For problem statement at 0-999/500-599/520-529/526/problemB.txt this is a correct solution, but verifier at 0-999/500-599/520-529/526/verifierB.go ends with all tests passed can you fix the verifier? ```go
package main
import (
"fmt"
)
func main() {
var n int
fmt.Scan(&n)
totalNodes := (1 << (n + 1)) - 1
lights := make([]int, totalNodes+1)
for i := 2; i <= totalNodes; i++ {
fmt.Scan(&lights[i])
}
maxSum := make([]int, totalNodes+1)
result := 0
for i := (1 << n) - 1; i >= 1; i-- {
left := lights[2*i] + maxSum[2*i]
right := lights[2*i+1] + maxSum[2*i+1]
if left > right {
result += left - right
maxSum[i] = left
} else {
result += right - left
maxSum[i] = right
}
}
fmt.Println(result)
}
```