#include <bits/stdc++.h>
using namespace std;
const long long MOD = 1000000007;
const long long INF = 1000000000;
template <class T>
inline void read(T &x) {
  char c;
  int flag = 1;
  while ((c = getchar()) < '0' || c > '9')
    if (c == '-') flag *= -1;
  x = c - '0';
  while ((c = getchar()) >= '0' && c <= '9') x = x * 10 + c - '0';
  x *= flag;
  return;
}
bool dp[105][105];
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int n, k;
  cin >> n >> k;
  string x;
  cin >> x;
  x = "#" + x;
  dp[0][0] = 1;
  int cnt = 0;
  int mx = 0;
  for (int i = 1; i <= n; ++i) {
    if (x[i] == 'Y' || x[i] == '?')
      cnt = 0;
    else if (x[i] == 'N')
      cnt++;
    mx = max(mx, cnt);
  }
  if (mx > k) return cout << "NO" << endl, 0;
  for (int i = 1; i <= n; ++i) {
    if (x[i] == 'Y' || x[i] == '?') {
      if (dp[i - 1][k]) return cout << "YES" << endl, 0;
      dp[i][0] = 1;
    }
    if (x[i] == 'N' || x[i] == '?') {
      for (int j = 0; j < n; ++j) dp[i][j + 1] |= dp[i - 1][j];
    }
  }
  cout << (dp[n][k] ? "YES" : "NO") << endl;
}
