#include <bits/stdc++.h>
using namespace std;
int n, k, cnt;
bitset<1005> prime;
vector<int> primo(1005);
void sieve() {
  prime.set();
  prime[0] = prime[1] = 0;
  for (int i = 2; i <= 1005; i++) {
    if (prime[i]) {
      primo[cnt++] = i;
      for (int j = i * i; j <= 1005; j += i) prime[j] = 0;
    }
  }
}
int main() {
  sieve();
  scanf("%d%d", &n, &k);
  int cnt2 = 0;
  for (int i = 0; i < cnt - 1; i++) {
    int x = primo[i] + primo[i + 1] + 1;
    if (prime[x] && x <= n) {
      cnt2++;
    }
  }
  if (cnt2 >= k)
    puts("YES");
  else
    puts("NO");
}
