#include <bits/stdc++.h>
using namespace std;
template <class T>
bool chmax(T& a, const T& b) {
  if (a < b) {
    a = b;
    return 1;
  }
  return 0;
}
template <class T>
bool chmin(T& a, const T& b) {
  if (b < a) {
    a = b;
    return 1;
  }
  return 0;
}
const long long int mod = 1e9 + 7, INF = 1e18;
long long int dx[8] = {0, -1, 1, 0, 1, -1, 1, -1},
              dy[8] = {1, 0, 0, -1, -1, -1, 1, 1};
struct edge {
  long long int cost;
  long long int u, v;
};
long long int N;
string s, t;
int main() {
  cin >> N;
  cin >> s >> t;
  cout << "YES" << '\n';
  string str = "abc";
  bool flag = true;
  do {
    flag = true;
    for (long long int i = (0), i_end_ = (3); i < i_end_; i++) {
      if (str[i] == s[0] && str[(i + 1) % 3] == s[1]) flag = false;
      if (str[i] == t[0] && str[(i + 1) % 3] == t[1]) flag = false;
    }
    if (flag) break;
  } while (next_permutation((str).begin(), (str).end()));
  if (flag) {
    for (long long int i = (0), i_end_ = (N); i < i_end_; i++) {
      cout << str;
    }
  } else {
    if (s[0] == t[1] && s[1] == t[0] && s[1] != s[0]) {
      if (s[0] == 'a' || s[1] == 'a') {
        if (s[0] == 'b' || s[1] == 'b') {
          for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
            cout << 'a';
          for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
            cout << 'c';
          for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
            cout << 'b';
        } else {
          for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
            cout << 'a';
          for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
            cout << 'b';
          for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
            cout << 'c';
        }
      } else {
        for (long long int i = (0), i_end_ = (N); i < i_end_; i++) cout << 'b';
        for (long long int i = (0), i_end_ = (N); i < i_end_; i++) cout << 'a';
        for (long long int i = (0), i_end_ = (N); i < i_end_; i++) cout << 'c';
      }
    } else if (s[0] == t[0]) {
      for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
        cout << s[1] << t[1];
      for (long long int i = (0), i_end_ = (N); i < i_end_; i++) cout << s[0];
    } else {
      for (long long int i = (0), i_end_ = (N); i < i_end_; i++) cout << s[1];
      for (long long int i = (0), i_end_ = (N); i < i_end_; i++)
        cout << s[0] << t[0];
    }
  }
  cout << '\n';
}
