#include <bits/stdc++.h>
using namespace std;
int n, i, j, k, s, x, y, x2, y2;
int dx[] = {-1, 0, 1, 0};
int dy[] = {0, 1, 0, -1};
int A[5][101], C[5][101];
bool B[27];
int main() {
  scanf("%d", &n);
  if (n == 1) {
    for (i = 0; i < 2; i++) printf("a\n");
    for (i = 0; i < 2; i++) printf("b\n");
    return 0;
  }
  if (n & 1) {
    for (i = 0; i + 1 < n; i += 2) {
      A[0][i] = A[0][i + 1] = ++s;
      A[1][i] = A[1][i + 1] = ++s;
    }
    for (i = 1; i + 1 < n; i += 2) {
      A[2][i] = A[2][i + 1] = ++s;
      A[3][i] = A[3][i + 1] = ++s;
    }
    A[0][n - 1] = A[1][n - 1] = ++s;
    A[2][0] = A[3][0] = ++s;
  } else {
    for (i = 0; i + 1 < n; i += 2) {
      A[0][i] = A[0][i + 1] = ++s;
      A[3][i] = A[3][i + 1] = ++s;
    }
    for (i = 1; i + 1 < n; i += 2) {
      A[1][i] = A[1][i + 1] = ++s;
      A[2][i] = A[2][i + 1] = ++s;
    }
    A[1][0] = A[2][0] = ++s;
    A[1][n - 1] = A[2][n - 1] = ++s;
  }
  memset(C, -1, sizeof C);
  for (i = 0; i < 4; i++)
    for (j = 0; j < n; j++)
      if (C[i][j] == -1) {
        memset(B, 0, sizeof B);
        if (j + 1 < n && A[i][j + 1] == A[i][j]) {
          x = i;
          y = j + 1;
        } else {
          x = i + 1;
          y = j;
        }
        for (k = 0; k < 4; k++) {
          x2 = i + dx[k];
          y2 = j + dy[k];
          if ((x2 >= 0 && x2 < 4) && (y2 >= 0 && y2 < n) && C[x2][y2] != -1)
            B[C[x2][y2]] = 1;
        }
        for (k = 0; k < 4; k++) {
          x2 = x + dx[k];
          y2 = y + dy[k];
          if ((x2 >= 0 && x2 < 4) && (y2 >= 0 && y2 < n) && C[x2][y2] != -1)
            B[C[x2][y2]] = 1;
        }
        for (k = 0; B[k]; k++)
          ;
        C[i][j] = C[x][y] = k;
      }
  for (i = 0; i < 4; i++) {
    for (j = 0; j < n; j++) printf("%c", 'a' + C[i][j]);
    printf("\n");
  }
  return 0;
}
