#include <bits/stdc++.h>
using namespace std;
const long long mod = 10007;
inline long long read() {
  long long s = 0, f = 0;
  char ch = getchar();
  while (!isdigit(ch)) f |= ch == '-', ch = getchar();
  while (isdigit(ch)) s = s * 10 + (ch ^ 48), ch = getchar();
  return f ? -s : s;
}
void print(long long x) {
  if (x < 0) putchar('-'), x = -x;
  if (x > 9) print(x / 10);
  putchar(x % 10 + 48);
}
long long t, n;
string afsdfasdfasdfasdfasdf, fasdfsdfasdfasdfasdfasdfasdf;
signed main() {
  scanf("%d", &t);
  fasdfsdfasdfasdfasdfasdfasdf = "abacaba";
  while (t--) {
    long long num = 0;
    scanf("%d", &n);
    cin >> afsdfasdfasdfasdfasdf;
    for (long long i = 0; i <= n - 7; ++i) {
      if (afsdfasdfasdfasdfasdf.substr(i, 7) == "abacaba") ++num;
    }
    if (num >= 2) {
      puts("No");
      continue;
    }
    if (num == 1) {
      puts("Yes");
      for (long long i = 0; i < n; ++i) {
        if (afsdfasdfasdfasdfasdf[i] == '?')
          printf("z");
        else
          printf("%c", afsdfasdfasdfasdfasdf[i]);
      }
      puts("");
      continue;
    }
    bool okay = 0;
    for (long long i = 0; i <= n - 7; ++i) {
      bool okay1 = 1;
      for (long long j = i; j < i + 7; ++j) {
        if (afsdfasdfasdfasdfasdf[j] != fasdfsdfasdfasdfasdfasdfasdf[j - i] &&
            afsdfasdfasdfasdfasdf[j] != '?') {
          okay1 = 0;
          break;
        }
      }
      if (okay1 == 1) {
        long long num2 = 0;
        string now = "";
        now += afsdfasdfasdfasdfasdf.substr(0, i);
        now += "abacaba";
        now += afsdfasdfasdfasdfasdf.substr(i + 7, n - i - 6);
        for (long long j = 0; j <= n - 7; ++j)
          if (now.substr(j, 7) == "abacaba") ++num2;
        if (num2 == 1) {
          okay = 1, puts("Yes");
          for (long long j = 0; j < n; ++j)
            if (now[j] == '?')
              printf("z");
            else
              printf("%c", now[j]);
          puts("");
          break;
        }
      }
    }
    if (!okay) puts("No");
  }
  return 0;
}
