#include <bits/stdc++.h>
using namespace std;
int qtot[100001];
int atot[100001][27];
int main() {
  int n, i, j, l;
  char str[100003];
  memset(atot, 0, sizeof atot);
  while (~scanf("%d", &n)) {
    for (i = 0; i < n; ++i) {
      scanf("%s", str);
      l = strlen(str);
      for (j = 0; j < l; ++j)
        if (str[j] == '?')
          qtot[j]++;
        else
          atot[j][str[j] - 'a']++;
    }
    for (i = 0; i < l; ++i) {
      if (qtot[i] == n)
        printf("a");
      else {
        int t = 0;
        char ch;
        for (j = 0; j < 26; ++j) {
          if (atot[i][j] > 0) {
            t++;
            ch = j + 'a';
          }
        }
        if (t == 1)
          printf("%c", ch);
        else
          printf("?");
      }
    }
    printf("\n");
  }
  return 0;
}
