For problem statement at 1000-1999/1300-1399/1300-1309/1305/problemB.txt this is a correct solution, but verifier at 1000-1999/1300-1399/1300-1309/1305/verifierB.go ends with case 2 failed: expected "1\n12\n5 6 7 9 10 12 16 17 18 20 23 28" got "1\n12\n5 28 6 23 7 20 9 18 10 17 12 16"
input:
))))((()(()(((()))()(()(((()(
exit status 1 can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
in := bufio.NewReader(os.Stdin)
var s string
fmt.Fscan(in, &s)
b := []byte(s)
var ops [][]int
for {
l, r := 0, len(b)-1
var chosen []int
for l < r {
for l < len(b) && b[l] != '(' {
l++
}
for r >= 0 && b[r] != ')' {
r--
}
if l < r {
chosen = append(chosen, l+1, r+1)
l++
r--
}
}
if len(chosen) == 0 {
break
}
marked := make([]bool, len(b))
for _, idx := range chosen {
marked[idx-1] = true
}
var nb []byte
for i := 0; i < len(b); i++ {
if !marked[i] {
nb = append(nb, b[i])
}
}
b = nb
ops = append(ops, chosen)
}
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
fmt.Fprintln(out, len(ops))
for _, op := range ops {
fmt.Fprintln(out, len(op))
for i, v := range op {
if i > 0 {
fmt.Fprint(out, " ")
}
fmt.Fprint(out, v)
}
fmt.Fprintln(out)
}
}
```