#include <bits/stdc++.h>
using namespace std;
void calc_odd(int n) {
  assert(n % 2 == 1);
  int tab[4][110] = {};
  tab[2][0] = 0;
  tab[3][0] = 0;
  int p = 1;
  int col = 0;
  int rest = 4 * n - 2;
  while (rest > 2) {
    tab[0][col] = p;
    tab[0][col + 1] = p;
    p = (p + 1) % 26;
    tab[1][col] = p;
    tab[1][col + 1] = p;
    p = (p + 1) % 26;
    tab[2][col + 1] = p;
    tab[2][col + 2] = p;
    p = (p + 1) % 26;
    tab[3][col + 1] = p;
    tab[3][col + 2] = p;
    p = (p + 1) % 26;
    col += 2;
    rest -= 2 * 4;
  }
  assert(rest == 2);
  tab[0][n - 1] = p;
  tab[1][n - 1] = p;
  for (int i = 0; i < 4; i++) {
    for (int j = 0; j < n; j++) {
      putchar((tab[i][j] + 'a'));
    }
    puts("");
  }
}
void calc(int n) {
  if (n == 1) {
    puts("a");
    puts("a");
    puts("b");
    puts("b");
    return;
  }
  if (n % 2 == 1) {
    calc_odd(n);
    return;
  }
  int tab[4][110] = {};
  tab[0][0] = 1;
  tab[0][1] = 1;
  tab[1][0] = 2;
  tab[2][0] = 2;
  tab[3][0] = 3;
  tab[3][1] = 3;
  int p = 4;
  int col = 2;
  int rest = 4 * n - 2 * 3;
  while (rest > 2) {
    tab[0][col] = p;
    tab[0][col + 1] = p;
    p = (p + 1) % 26;
    tab[1][col - 1] = p;
    tab[1][col] = p;
    p = (p + 1) % 26;
    tab[2][col - 1] = p;
    tab[2][col] = p;
    p = (p + 1) % 26;
    tab[3][col] = p;
    tab[3][col + 1] = p;
    p = (p + 1) % 26;
    col += 2;
    rest -= 2 * 4;
  }
  assert(rest == 2);
  tab[1][col - 1] = p;
  tab[2][col - 1] = p;
  for (int i = 0; i < 4; i++) {
    for (int j = 0; j < n; j++) {
      putchar((tab[i][j] + 'a'));
    }
    puts("");
  }
}
int main() {
  int n;
  scanf("%d", &n);
  calc(n);
}
