#include <bits/stdc++.h>
using namespace std;
int main() {
  int test, i, j, flag, k;
  cin >> test;
  string s;
  for (j = 1; j <= test; j++) {
    flag = 0;
    cin >> s;
    for (i = 0; i < s.size(); i++) {
      if (s[i] == '?') {
        if (i == 0) {
          if (s[i + 1] == 'a')
            s[i] = 'b';
          else {
            s[i] = 'a';
          }
        } else if (i == s.size() - 1) {
          if (s[i - 1] == 'a')
            s[i] = 'b';
          else {
            s[i] = 'a';
          }
        } else {
          if ((s[i - 1] == 'a' && s[i + 1] == 'a') ||
              (s[i - 1] == 'a' && s[i + 1] == '?') ||
              (s[i - 1] == 'a' && s[i + 1] == 'c')) {
            s[i] = 'b';
          } else if ((s[i - 1] == 'b' && s[i + 1] == 'b') ||
                     (s[i - 1] == 'b' && s[i + 1] == '?') ||
                     (s[i - 1] == 'b' && s[i + 1] == 'c') ||
                     (s[i - 1] == 'c' && s[i + 1] == 'b')) {
            s[i] = 'a';
          } else if ((s[i - 1] == 'c' && s[i + 1] == 'c') ||
                     (s[i - 1] == 'c' && s[i + 1] == '?') ||
                     (s[i - 1] == 'c' && s[i + 1] == 'a')) {
            s[i] = 'b';
          } else if ((s[i - 1] == 'a' && s[i + 1] == 'b') ||
                     (s[i - 1] == 'b' && s[i + 1] == 'a')) {
            s[i] = 'c';
          }
        }
      }
    }
    for (k = 0; k < s.size() - 1; k++) {
      if (s[k] == s[k + 1]) {
        cout << -1 << endl;
        flag = 1;
        break;
      }
    }
    if (flag == 0) {
      cout << s << endl;
    }
  }
}
