#include <bits/stdc++.h> using namespace std; using ll = int64_t; int main() { ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; vector<string> ss(n); vector<int> ind(n); string t; set<int> ndone; for(int i = 0; i < n; ++i) { cin >> ss[i]; ndone.insert(i); } cin >> t; int ti = 0; string res; while(true) { if(ti == t.size()) { cout << "NO\n"; return 0; } if(ndone.empty()) break; char c = t[ti]; vector<int> del; for(int i : ndone) { while(ind[i] < ss[i].size() && ss[i][ind[i]] != c) { res += ss[i][ind[i]]; ++ind[i]; } if(ind[i] == ss[i].size()) del.push_back(i); } for(int d : del) { ndone.erase(d); } del.clear(); if(ndone.empty()) break; ++ti; res += c; for(int i = 0; i < n; ++i) { if(ind[i] < ss[i].size() && ss[i][ind[i]] == c) { ++ind[i]; } if(ind[i] == ss[i].size()) del.push_back(i); } for(int d : del) { ndone.erase(d); } } cout << "YES\n"; cout << res << '\n'; return 0; }