#include <bits/stdc++.h>
using namespace std;
const int maxn = 2000 + 10, mod = 1e9 + 7;
int f[maxn][maxn];
int n, k;
vector<int> d[maxn];
void init() {
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= i; j++)
      if (i % j == 0) d[i].push_back(j);
}
int main() {
  scanf("%d%d", &n, &k);
  init();
  for (int i = 1; i <= n; i++) f[1][i] = 1;
  for (int i = 1; i <= k; i++)
    for (int j = 1; j <= n; j++)
      for (int x = 0; x < d[j].size(); x++) {
        int s = d[j][x];
        f[i][j] = (f[i][j] + f[i - 1][s]) % mod;
      }
  int ans = 0;
  for (int i = 1; i <= n; i++) ans = (ans + f[k][i]) % mod;
  printf("%d\n", ans);
}
