← Home
For problem statement at 1000-1999/1700-1799/1710-1719/1717/problemE.txt this is a correct solution, but verifier at 1000-1999/1700-1799/1710-1719/1717/verifierE.go ends with All tests passed can you fix the verifier? ```go
package main

import (
	"fmt"
)

func gcd(a, b int) int {
	for b != 0 {
		a, b = b, a%b
	}
	return a
}

func main() {
	var n int
	if _, err := fmt.Scan(&n); err != nil {
		return
	}

	phi := make([]int, n+1)
	for i := 0; i <= n; i++ {
		phi[i] = i
	}
	for i := 2; i <= n; i++ {
		if phi[i] == i {
			for j := i; j <= n; j += i {
				phi[j] -= phi[j] / i
			}
		}
	}

	ans := int64(0)
	mod := int64(1000000007)

	for g := 1; g <= (n-1)/2; g++ {
		for k := 2; k <= (n-1)/g; k++ {
			s := k * g
			c := n - s
			gcdVal := gcd(c, g)
			lcmVal := (int64(c) / int64(gcdVal)) * int64(g)
			lcmVal %= mod
			term := (lcmVal * int64(phi[k])) % mod
			ans = (ans + term) % mod
		}
	}

	fmt.Println(ans)
}
```