For problem statement at 0-999/200-299/250-259/250/problemB.txt this is a correct solution, but verifier at 0-999/200-299/250-259/250/verifierB.go ends with All 150 tests passed. can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
n := 0
fmt.Sscanf(scanner.Text(), "%d", &n)
for i := 0; i < n; i++ {
scanner.Scan()
ip := scanner.Text()
fmt.Println(restore(ip))
}
}
func restore(ip string) string {
var blocks []string
if strings.Contains(ip, "::") {
parts := strings.SplitN(ip, "::", 2)
left := parts[0]
right := parts[1]
var leftBlocks []string
if left != "" {
leftBlocks = strings.Split(left, ":")
} else {
leftBlocks = []string{}
}
var rightBlocks []string
if right != "" {
rightBlocks = strings.Split(right, ":")
} else {
rightBlocks = []string{}
}
missing := 8 - len(leftBlocks) - len(rightBlocks)
blocks = append(blocks, leftBlocks...)
for i := 0; i < missing; i++ {
blocks = append(blocks, "0")
}
blocks = append(blocks, rightBlocks...)
} else {
blocks = strings.Split(ip, ":")
}
for i := range blocks {
for len(blocks[i]) < 4 {
blocks[i] = "0" + blocks[i]
}
}
return strings.Join(blocks, ":")
}
```