#include <bits/stdc++.h>
using namespace std;
char up = 'A';
char low = 'a';
int ans[60];
char res[60][60];
int main() {
  int n, k;
  while (~scanf("%d%d", &n, &k)) {
    char up = 'A';
    char low = 'a';
    memset(ans, 0, sizeof(ans));
    for (int i = 0; i < n - k + 1; i++) {
      char op[5];
      cin >> op;
      if (op[0] == 'N') ans[i] = 1;
    }
    for (int i = 0; i < n - k + 1; i++) {
      if (i == 0) {
        printf("%c%c", up, low);
        res[0][0] = up;
        res[0][1] = low;
        for (int j = 1; j < k - 1; j++) {
          if (low >= 'z') {
            low = 'a';
            up++;
          }
          printf(" %c%c", up, ++low);
          res[j][0] = up;
          res[j][1] = low;
        }
        if (ans[0]) {
          res[k - 1][0] = res[0][0];
          res[k - 1][1] = res[0][1];
          printf(" %s", res[0]);
        } else {
          if (low >= 'z') {
            low = 'a';
            up++;
          }
          printf(" %c%c", up, ++low);
          res[k - 1][0] = up;
          res[k - 1][1] = low;
        }
      } else {
        if (ans[i]) {
          res[i + k - 1][0] = res[i][0];
          res[i + k - 1][1] = res[i][1];
          printf(" %s", res[i]);
        } else {
          if (low >= 'z') {
            low = 'a';
            up++;
          }
          printf(" %c%c", up, ++low);
          res[i + k - 1][0] = up;
          res[i + k - 1][1] = low;
        }
      }
    }
    printf("\n");
  }
  return 0;
}
