For problem statement at 0-999/400-499/480-489/487/problemC.txt this is a correct solution, but verifier at 0-999/400-499/480-489/487/verifierC.go ends with All tests passed can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"math"
"os"
)
func isPrime(n int) bool {
if n < 2 {
return false
}
if n == 2 {
return true
}
if n%2 == 0 {
return false
}
for i := 3; i <= int(math.Sqrt(float64(n))); i += 2 {
if n%i == 0 {
return false
}
}
return true
}
func modPow(a, b, mod int) int {
var res int64 = 1
var base int64 = int64(a % mod)
var m int64 = int64(mod)
for b > 0 {
if b&1 == 1 {
res = (res * base) % m
}
base = (base * base) % m
b >>= 1
}
return int(res)
}
func main() {
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
var n int
fmt.Sscanf(scanner.Text(), "%d", &n)
valid := false
if n == 1 || n == 4 {
valid = true
} else if isPrime(n) {
valid = true
}
if !valid {
fmt.Println("NO")
return
}
fmt.Println("YES")
if n == 1 {
fmt.Println(1)
} else if n == 4 {
fmt.Println(1)
fmt.Println(3)
fmt.Println(2)
fmt.Println(4)
} else {
fmt.Println(1)
for i := 2; i <= n-1; i++ {
inv := modPow(i-1, n-2, n)
val := (i * inv) % n
fmt.Println(val)
}
fmt.Println(n)
}
}
```