#include <bits/stdc++.h>
#pragma GCC optimize(3)
#pragma GCC optimize(2)
using namespace std;
inline long long read() {
  long long num = 0, flag = 1;
  char c = ' ';
  for (; c > '9' || c < '0'; c = getchar())
    if (c == '-') flag = -1;
  for (; c >= '0' && c <= '9';
       num = (num << 1) + (num << 3) + c - 48, c = getchar())
    ;
  return num * flag;
}
long long n, k;
string s1, s2;
inline bool check(string s) {
  if (s.find(s1) != -1 || s.find(s2) != -1)
    return 0;
  else
    return 1;
}
signed main() {
  long long n = read();
  cin >> s1 >> s2;
  printf("YES\n");
  string qwq = "abc";
  do {
    string a1 = "", a2 = "";
    for (register long long i = (1); i <= (n); i++) a1 += qwq;
    for (register long long i = (0); i <= (3 * n - 1); i++) a2 += qwq[i / n];
    if (check(a1)) return cout << a1 << endl, 0;
    if (check(a2)) return cout << a2 << endl, 0;
  } while (next_permutation(qwq.begin(), qwq.end()));
  return 0;
}
