#include <bits/stdc++.h>
using namespace std;
const int N = 50 + 5;
int k, x, n, m;
long long head[N], tail[N], body[N];
bool calc(int i, int j, int n1, int n2, int m1, int m2) {
  body[1] = i;
  body[2] = j;
  head[1] = n1;
  head[2] = m1;
  tail[1] = n2;
  tail[2] = m2;
  for (int kk = 3; kk <= k; kk++) {
    body[kk] = body[kk - 1] + body[kk - 2];
    if (head[kk - 1] && tail[kk - 2]) body[kk]++;
    head[kk] = head[kk - 2];
    tail[kk] = tail[kk - 1];
  }
  if (body[k] == x) return true;
  return false;
}
void print(int nk, int mk, int n1, int n2, int m1, int m2) {
  if (n1) putchar('C');
  for (int i = 0; i < (nk); i++) printf("AC");
  for (int i = nk << 1; i < n - n1 - n2; i++) putchar('B');
  if (n2) putchar('A');
  puts("");
  if (m1) putchar('C');
  for (int i = 0; i < (mk); i++) printf("AC");
  for (int i = mk << 1; i < m - m1 - m2; i++) putchar('B');
  if (m2) putchar('A');
  exit(0);
}
int main() {
  scanf("%d%d%d%d", &k, &x, &n, &m);
  if (!x) {
    for (int i = 0; i < (n); i++) putchar('A');
    puts("");
    for (int i = 0; i < (m); i++) putchar('A');
    return 0;
  }
  for (int n1 = 0; n1 < (2); n1++)
    for (int n2 = 0; n2 < (2); n2++)
      for (int m1 = 0; m1 < (2); m1++)
        for (int m2 = 0; m2 < (2); m2++) {
          for (int i = 0; i * 2 <= n - n1 - n2; i++)
            for (int j = 0; j * 2 <= m - m1 - m2; j++)
              if (calc(i, j, n1, n2, m1, m2)) print(i, j, n1, n2, m1, m2);
        }
  puts("Happy new year!");
  return 0;
}
