#include <bits/stdc++.h>
using namespace std;

#define rep(i, a, b) for(int i=a; i < (b); ++i)
#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()
#define fo(i, b) for(int i=0; i < (b); ++i)
#define F first
#define S second
#define MP make_pair
typedef long long ll;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;

int no() {
	cout << "NO" << endl;
	return 0;
}

signed main() {
	cin.tie(0)->sync_with_stdio(0);
	cin.exceptions(cin.failbit);

	int n; cin >> n;
	int nnow = n;
	vector<string> s(n);
	fo(i, n) cin >> s[i];
	string p;
	cin >> p;

	vector<string> parts(p.size());
	fo(i, n) {
		int pi = 0;
		fo (j, sz(s[i])) {
			if (s[i][j] == p[pi]) pi++;
			else parts[pi] += s[i][j];
			if (pi == sz(p)) return no();
		}
	}
	cout << "YES" << endl;
	fo(pi, sz(p)) {
		cout << parts[pi];
		if (pi != sz(p) - 1) cout << p[pi];
	}
	cout << endl;
}