#include <iostream>
#include <unordered_map>
#include <vector>
using namespace std;

int main() {
    int n;
    cin >> n;
    unordered_map<char, int> cnt_word; // 统计26个字母出现的次数,如果某个字母=n,它即是公共子串
    for (int i = 0; i < n; i++) {
        vector<bool>visit(26,false); // 对每个字符串检查每个字母是否已经遍历过
        string s;
        cin >> s;
        for(char &x: s){
            if (!visit[x-97]) {// 如果没遍历过说明是新字符,
                visit[x-97] = true; // 就给它的visit标记为true
                cnt_word[x]++; // 然后哈希值加1
            }
            // 如果遍历过就不理会,我们的目标是统计这个字母是否在所有字符串里出现,
            // 而不是统计它在同一个字符串里出现了多少次
        }
    }
    for (auto &x: cnt_word) { // auto&的实际类型是pair<char, int>
        if (x.second == n) { // 如果某字母满足在所有字符串里都出现过
            cout << x.first;
            break;
        }
    }
    return 0;
}
// 64 位输出请用 printf("%lld")