#include <bits/stdc++.h>
char find(int a, int g, int c, int t) {
  int min = a;
  if (g < min) min = g;
  if (c < min) min = c;
  if (t < min) min = t;
  if (min == a)
    return 'A';
  else if (min == g)
    return 'G';
  else if (min == c)
    return 'C';
  else
    return 'T';
}
int main() {
  int n, a = 0, g = 0, c = 0, t = 0, i = 0;
  char str[260];
  scanf("%d%s", &n, str);
  while (str[i] != '\0') {
    if (str[i] == 'A')
      a++;
    else if (str[i] == 'C')
      c++;
    else if (str[i] == 'G')
      g++;
    else if (str[i] == 'T')
      t++;
    i++;
  }
  i = 0;
  if ((a + g + c + t) != n) {
    while (str[i] != '\0') {
      if (str[i] == '?') {
        char s = find(a, g, c, t);
        str[i] = s;
        if (s == 'A')
          a++;
        else if (s == 'G')
          g++;
        else if (s == 'C')
          c++;
        else
          t++;
      }
      i++;
    }
  }
  if (a == g && a == c && a == t)
    printf("%s\n", str);
  else
    printf("===\n");
  return 0;
}
