N, M = map(int, input().split()) mod = 10 ** 9 + 7 for i in range(1, M + 1): big = N % i small = i - big ans = pow(N//i, small, mod) * pow(N//i + 1, big, mod) if small == 0: ans *= pow(N//i + 1, mod - 3, mod) ans *= N//i * (N//i + 2) elif small >= 2: ans *= pow(N//i, mod - 3, mod) ans *= (N//i - 1) * (N//i + 1) ans %= mod print(ans)