#include <bits/stdc++.h>
using namespace std;
char vet[1010];
int n, p;
int main() {
  scanf("%d %d", &n, &p);
  scanf("%s", vet);
  char lim = 'a' + p - 1;
  int i;
  char x;
  for (i = n - 1; i >= 0; i--) {
    for (x = vet[i] + 1; x <= lim; x++) {
      if (i >= 1 && x == vet[i - 1]) {
        continue;
      }
      if (i >= 2 && x == vet[i - 2]) {
        continue;
      }
      break;
    }
    if (x <= lim) {
      break;
    }
  }
  if (i < 0) {
    printf("NO\n");
  } else {
    vet[i] = x;
    for (i = i + 1; i < n; i++) {
      for (x = 'a'; x <= lim; x++) {
        if (i >= 1 && vet[i - 1] == x) {
          continue;
        }
        if (i >= 2 && vet[i - 2] == x) {
          continue;
        }
        break;
      }
      if (x > lim) {
        break;
      } else {
        vet[i] = x;
      }
    }
    if (i < n) {
      printf("NO\n");
    } else {
      printf("%s\n", vet);
    }
  }
  return 0;
}
