import sys def input(): return sys.stdin.readline().rstrip() def main(): N, P = map(int, input().split()) mod = 10**9+7 p = 1 q = 1 ans = 0 for i in range(1, N+1): p *= i p %= mod q *= i q %= (mod-1) a = i while not a%P: a //= P ans += 1 p = pow(p, q, mod) print(p*ans%mod) if __name__ == "__main__": main()