#include <bits/stdc++.h>
int b[50 + 1], c[50 + 1], n, m, k, x, i, nk, mk, a1, a2, b1, b2, t1, t2;
long long a[50 + 1];
char s1[100 + 2], s2[100 + 2];
int main() {
  scanf("%d%d%d%d", &k, &x, &n, &m);
  for (i = 0; i < n; i++) s1[i] = 'B';
  for (i = 0; i < m; i++) s2[i] = 'B';
  for (nk = n / 2; nk >= 0; --nk)
    for (mk = m / 2; mk >= 0; --mk)
      for (a1 = 1; a1 <= 3; a1++)
        for (a2 = 1; a2 <= 3; a2++)
          for (b1 = 1; b1 <= 3; b1++)
            for (b2 = 1; b2 <= 3; b2++) {
              t1 = nk * 2;
              if (a1 != 1) ++t1;
              if (n > 1 && a2 != 3) ++t1;
              t2 = mk * 2;
              if (b1 != 1) ++t2;
              if (m > 1 && b2 != 3) ++t2;
              if (t1 <= n && t2 <= m && (n > 1 || a1 == a2) &&
                  (m > 1 || b1 == b2)) {
                a[1] = nk, a[2] = mk, b[1] = a1, c[1] = a2, b[2] = b1,
                c[2] = b2;
                for (i = 3; i <= k; i++) {
                  a[i] = (long long)a[i - 1] + a[i - 2] +
                         (c[i - 2] == 1 && b[i - 1] == 3);
                  b[i] = b[i - 2];
                  c[i] = c[i - 1];
                }
                if (a[k] == x) {
                  s1[0] = a1 + 64, s1[n - 1] = a2 + 64, s2[0] = b1 + 64,
                  s2[m - 1] = b2 + 64;
                  t1 = 1 - (a1 == 1);
                  t2 = 1 - (b1 == 1);
                  for (i = 0; i < nk; i++)
                    s1[i * 2 + t1] = 'A', s1[i * 2 + t1 + 1] = 'C';
                  for (i = 0; i < mk; i++)
                    s2[i * 2 + t2] = 'A', s2[i * 2 + t2 + 1] = 'C';
                  printf("%s\n%s\n", s1, s2);
                  return 0;
                }
              }
            }
  printf("Happy new year!\n");
  return 0;
}
