#include <bits/stdc++.h>
#pragma comment(linker, "/stack:200000000")
#pragma GCC optimize("Ofast")
using namespace std;
const long long maxn = 500001;
const long long mod = 998244353;
long long fa[maxn];
void goo() {
  fa[0] = 1;
  for (long long i = 1; i < maxn; ++i) {
    fa[i] = (i * fa[i - 1]) % mod;
  }
}
long long binpow(long long a, long long n) {
  long long res = 1;
  while (n)
    if (n & 1) {
      res *= a;
      res %= mod;
      --n;
    } else {
      a *= a;
      a %= mod;
      n >>= 1;
    }
  return res % mod;
}
long long C(long long n, long long k) {
  return (fa[n] * binpow((fa[k] * fa[n - k]) % mod, mod - 2)) % mod;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  long long nnn, m;
  cin >> nnn >> m;
  if (nnn < m) {
    cout << 0;
    return 0;
  }
  if (1 == m) {
    cout << nnn;
    return 0;
  }
  goo();
  long long ans = 0, nn, kk;
  for (long long i = 1; i <= nnn / 2; ++i) {
    nn = (nnn / i) - 1;
    kk = m - 1;
    if (nn > 0 && kk > 0 && nn >= kk) {
      ans += C(nn, kk);
      ans %= mod;
    } else
      break;
  }
  cout << ans;
}
