#include <bits/stdc++.h>
using namespace std;
signed main() {
  int tt = 1;
  cin >> tt;
  while (tt--) {
    int n;
    cin >> n;
    string s;
    cin >> s;
    string ss = "abacaba";
    int f = 0, c = 0;
    vector<pair<int, int>> v;
    for (int i = 0; i < n - 6; i++) {
      string t = s.substr(i, 7);
      if (t == "abacaba")
        c++;
      else {
        int flag1 = 0;
        for (int j = 0; j < 7; j++) {
          if (t[j] != ss[j] && t[j] != '?') {
            flag1 = 1;
            break;
          }
        }
        if (!flag1) {
          f = 1;
          v.push_back({i, i + 6});
        }
      }
    }
    if (c > 1)
      cout << "No" << endl;
    else if (c == 1) {
      cout << "Yes" << endl;
      for (int i = 0; i < n; i++)
        if (s[i] == '?') s[i] = 'd';
      cout << s << endl;
    } else {
      if (f) {
        int flag = 0;
        string sss = s;
        for (int l = 0; l < v.size(); l++) {
          s = sss;
          for (int i = 0; i <= v[l].first - 1; i++) {
            if (s[i] == '?') s[i] = 'd';
          }
          int idx = 0;
          for (int i = v[l].first; i <= v[l].second; i++) {
            s[i] = ss[idx++];
          }
          for (int i = v[l].second + 1; i < n; i++) {
            if (s[i] == '?') s[i] = 'd';
          }
          c = 0;
          for (int i = 0; i < n - 6; i++) {
            string t = s.substr(i, 7);
            if (t == "abacaba") c++;
          }
          if (c == 1) {
            flag = 1;
            cout << "Yes" << endl;
            cout << s << endl;
            break;
          }
        }
        if (!flag) cout << "No" << endl;
      } else
        cout << "No" << endl;
    }
  }
  return 0;
}
