MOD = 10 ** 9 + 7 n, k, m = map(int, input().split()) if n == 1: print(1) exit() fact = [1] * (n + 1) for i in range(n): fact[i + 1] = (i + 1) * fact[i] % MOD ifact = [pow(fact[n], MOD - 2, MOD)] * (n + 1) for i in range(n, 0, -1): ifact[i - 1] = i * ifact[i] % MOD t = 0 for d in range(1, n + 1): if k % d == 0: t += fact[n-1] * ifact[n-d] * pow(n, n - d, MOD) t %= MOD if m == 1: print(t) exit() ans = (pow(n, n, MOD) - t) * pow(n - 1, MOD - 2, MOD) % MOD print(ans)