For problem statement at 0-999/0-99/90-99/98/problemB.txt this is a correct solution, but verifier at 0-999/0-99/90-99/98/verifierB.go ends with case 1 failed: expected 3340/321 got 104272585170824068/9007199254740993
input:1284
exit status 1 can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"math/big"
"os"
)
func main() {
in := bufio.NewReader(os.Stdin)
var n int
fmt.Fscan(in, &n)
if n == 1 {
fmt.Print("0/1")
return
}
a := 0
m := n
for m%2 == 0 {
a++
m /= 2
}
if m == 1 {
fmt.Printf("%d/1", a)
return
}
var b big.Int
var tmp big.Int
r := 1
l := 0
for {
b.Lsh(&b, 1)
tmp.SetInt64(int64(r))
b.Add(&b, &tmp)
r = (r * 2) % m
l++
if r == 1 {
break
}
}
one := big.NewInt(1)
var den big.Int
den.SetInt64(1)
den.Lsh(&den, uint(l))
den.Sub(&den, one)
var num big.Int
num.Lsh(&b, 1)
if a > 0 {
var add big.Int
add.SetInt64(int64(a))
add.Mul(&add, &den)
num.Add(&num, &add)
}
var g big.Int
g.GCD(nil, nil, &num, &den)
num.Quo(&num, &g)
den.Quo(&den, &g)
out := bufio.NewWriter(os.Stdout)
fmt.Fprintf(out, "%s/%s", num.String(), den.String())
out.Flush()
}
```