#include #include #include #include using namespace std; #define MOD (int)(1e9+7) bool is_prime(int x) { for (int i = 2; i*i <= x; i++) { if (x%i == 0)return false; } return true; } int solve(int N,int M) { long long cnt = N / M; long long ans = cnt*(cnt - 1); for (int i = 2; i <= cnt; i++) { if(is_prime(i))ans -= (cnt / i) * (cnt / i - 1); } ans %= MOD; for (int i = N - 2; i >= 1; i--) { ans *= i; ans %= MOD; } return ans; } int main() { int N, M; cin >> N >> M; cout << solve(N, M) << endl; return 0; }