func_code_string: #include <bits/stdc++.h>   using namespace std;   int n, p, flag;   char s[1111];   int a[1111];   void dfs(int x) {     if (!x) {       flag = 0;       return;     }     while (1) {       a[x]++;       if (a[x] > p) {         dfs(x - 1);         a[x] = 0;         continue;       }       if (!(x > 1 && a[x] == a[x - 1] || x > 2 && a[x] == a[x - 2])) break;     }     if (x == n)       for (int i = 0; i < n; i++) s[i] = a[i + 1] - 1 +  a ;   }   int main() {     cin >> n >> p;     gets(s);     gets(s);     for (int i = 0; i < n; i++) a[i + 1] = s[i] -  a  + 1;     flag = 1;     dfs(n);     if (flag)       puts(s);     else       puts( NO );   }   