#include <bits/stdc++.h>
using namespace std;
const int maxn = 2 * 1000 + 10;
int dp[2][maxn];
const int M = 1000 * 1000 * 1000 + 7;
int main() {
  int n, k;
  cin >> n >> k;
  for (int i = 1; i <= n; i++) dp[1][i] = 1;
  for (int i = 2; i <= k; i++) {
    for (int j = 1; j <= n; j++) {
      dp[i % 2][j] = 0;
      for (int r = 1; r * r <= j; r++) {
        if (j % r == 0) {
          dp[i % 2][j] += (dp[(i - 1) % 2][r] % M);
          dp[i % 2][j] = dp[i % 2][j] % M;
          if (j / r != r) dp[i % 2][j] += (dp[(i - 1) % 2][j / r] % M);
          dp[i % 2][j] = dp[i % 2][j] % M;
        }
      }
    }
  }
  long long sum = 0;
  for (int i = 1; i <= n; i++) {
    sum += (long long)dp[k % 2][i];
    sum = sum % M;
  }
  cout << sum << endl;
  return 0;
}
