#include <bits/stdc++.h>
using namespace std;
char ar[1001];
int main() {
  int n, p;
  cin >> n >> p;
  for (int i = 0; i < n; i++) cin >> ar[i];
  string ans = "NO";
  int pos = n - 1;
  char c = ar[pos];
  int k;
  while (true) {
    k = c - 'a' + 1;
    if (k < p) {
      c++;
    } else {
      ar[pos] = '?';
      pos--;
      if (pos < 0) break;
      c = ar[pos];
      continue;
    }
    if (pos - 1 < 0) {
      ar[pos] = c;
      ans = "YES";
      break;
    } else if (pos - 2 < 0) {
      if (c != ar[pos - 1]) {
        ar[pos] = c;
        ans = "YES";
        break;
      }
    } else {
      if (c != ar[pos - 1] && c != ar[pos - 2]) {
        ar[pos] = c;
        ans = "YES";
        break;
      }
    }
  }
  if (ans == "NO") cout << ans << endl;
  if (ans == "YES") {
    c = 'a';
    for (int i = 0; i < n; i++) {
      if (ar[i] != '?')
        cout << ar[i];
      else {
        if (i == 0) {
          cout << c;
          ar[0] = c;
        } else if (i == 1) {
          if (ar[0] == ar[1]) {
            c++;
            if (c - 'a' + 1 > p) c = 'a';
          }
          cout << c;
          ar[1] = c;
        } else {
          while (c == ar[i - 1] || c == ar[i - 2]) {
            c++;
            if (c - 'a' + 1 > p) c = 'a';
          }
          cout << c;
          ar[i] = c;
        }
        c = 'a';
      }
    }
  }
}
