#include <bits/stdc++.h>
using namespace std;
const int maxn = 1005;
bool isprime[maxn];
int prime[maxn];
int n, k;
int cnt = 0;
void init() {
  memset(isprime, -1, sizeof(isprime));
  isprime[1] = false;
  isprime[0] = false;
  for (int i = 2; i <= n; i++) {
    if (isprime[i]) {
      prime[cnt++] = i;
      for (int j = 2 * i; j <= n; j += i) isprime[j] = false;
    }
  }
}
bool ok(int x) {
  for (int i = 1; i < cnt; i++) {
    if (prime[i] >= x) break;
    if (prime[i] + prime[i - 1] + 1 == x) return true;
  }
  return false;
}
int main() {
  cin >> n >> k;
  init();
  int cnt = 0;
  for (int i = 2; i <= n; i++) {
    if (isprime[i] && ok(i)) cnt++;
  }
  printf(cnt >= k ? "YES" : "NO");
  return 0;
}
