#include <bits/stdc++.h>
using namespace std;
const int N = 5e5 + 10;
const int INF = 1e9 + 10;
const int MOD = 998244353;
long long fact[N];
long long bpow(long long x, long long y) {
  if (y == 1) return x % MOD;
  if (y == 0) return 1;
  if (y < 0) return 1;
  if (y % 2 == 0) {
    long long u = bpow(x, y / 2);
    return (u * u) % MOD;
  } else {
    return (x * bpow(x, y - 1)) % MOD;
  }
}
long long inv(long long x) { return bpow(x, (long long)MOD - 2); }
long long add(long long x, long long y) { return (x + y) % MOD; }
long long mul(long long x, long long y) { return (x * y) % MOD; }
void f(long long x) {
  for (long long i = 1; i <= x; i++) fact[i] = (fact[i - 1] * i) % MOD;
}
long long C(long long n, long long k) {
  return mul(fact[n], inv(mul(fact[n - k], fact[k])));
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int n, k;
  cin >> n >> k;
  fact[0] = 1;
  f(n);
  int arr = 0;
  for (int i = 1; i <= n; i++) {
    int how = (n / i - 1);
    if (k - 1 <= how) arr = (arr + C(how, k - 1)) % MOD;
  }
  cout << arr;
}
