#include <bits/stdc++.h>   using namespace std;   const int INF = (int)2E9;   const long long LINF = (long long)9E18;   const long double PI = acos(-1.0);   const long double EPS = 1E-11;   template <typename T>   inline T sqr(const T x) {     return x * x;   }   template <typename T>   T gcd(T a, T b) {     return (b == 0) ? a : gcd(b, a % b);   }   template <typename T>   T lcm(T a, T b) {     return a / gcd(a, b) * b;   }   template <typename T>   T mod(T a, T b) {     a %= b;     if (a < 0) a += b;     return a;   }   template <typename T>   inline T rad(const T x) {     return x * PI / 180;   }   template <typename T>   inline string toString(T x) {     ostringstream oss;     oss << x;     return oss.str();   }   inline long long toInt(const string& st) {     istringstream istringstream(st);     long long x;     istringstream >> x;     return x;   }   inline long double toDouble(const string& st) {     istringstream istringstream(st);     long double x;     istringstream >> x;     return x;   }   inline string toLower(string st) {     for (int i = 0; i < (((int)(st).size())); ++i) st[i] = tolower(st[i]);     return st;   }   inline string toUpper(string st) {     for (int i = 0; i < (((int)(st).size())); ++i) st[i] = toupper(st[i]);     return st;   }   const int dx[] = {-1, 0, 0, 1};   const int dy[] = {0, -1, 1, 0};   int DEBUG = false;   const char DEBUG_PARAM[] =  __LOCAL_TESTING ;   const int MAXCLOCK = 100;   int aClock[MAXCLOCK], mClock[MAXCLOCK], nClock = 0, iClock = 0;   inline void tick(int maxTime = 10000) {     if (DEBUG) {       mClock[nClock] = maxTime;       aClock[nClock++] = clock();     }   }   inline void untick(string name =  Execution Time ) {     if (DEBUG) {       int numClock = clock() - aClock[--nClock];       cout <<  @   << name <<  : [             << (int)((double)(numClock) / CLOCKS_PER_SEC * 1000) <<   ms] ;       if (numClock > (int)(mClock[nClock]))         cout <<   [TLE] ;       else if (numClock > (int)(mClock[nClock] * 0.9))         cout <<   [almost TLE] ;       cout << endl;     }   }   const char IN[] =  _.in ;   const char OUT[] =  _.out ;   int ntest = 1, test = 1;   int N;   inline void run() {     for (test = 1; test <= ntest; ++test) {       tick((int)2E3);       cin >> N;       if (N == 1) {         cout <<  a  << endl <<  a  << endl <<  b  << endl <<  b  << endl;       } else {         if (N & 1) {           int N2 = N / 2;           for (int i = (1); i <= (N2); ++i) {             if (i & 1) {               cout <<  aa ;             } else {               cout <<  bb ;             }           }           cout <<  c  << endl;           for (int i = (1); i <= (N2); ++i) {             if (i & 1) {               cout <<  bb ;             } else {               cout <<  aa ;             }           }           cout <<  c  << endl <<  d ;           for (int i = (1); i <= (N2); ++i) {             if (i & 1) {               cout <<  ee ;             } else {               cout <<  ff ;             }           }           cout << endl <<  d ;           for (int i = (1); i <= (N2); ++i) {             if (i & 1) {               cout <<  ff ;             } else {               cout <<  ee ;             }           }           cout << endl;         } else {           int N2 = N / 2;           for (int i = (1); i <= (N2); ++i) {             if (i & 1) {               cout <<  aa ;             } else {               cout <<  bb ;             }           }           cout << endl <<  c ;           for (int i = (1); i <= (N2 - 1); ++i) {             if (i & 1) {               cout <<  dd ;             } else {               cout <<  ee ;             }           }           cout <<  f  << endl <<  c ;           for (int i = (1); i <= (N2 - 1); ++i) {             if (i & 1) {               cout <<  gg ;             } else {               cout <<  hh ;             }           }           cout <<  f  << endl;           for (int i = (1); i <= (N2); ++i) {             if (i & 1) {               cout <<  ii ;             } else {               cout <<  kk ;             }           }           cout << endl;         }       }       untick( #  + toString(test));     }   }   int main(int argc, char* argv[]) {     if (argc > 1 && strcmp(argv[1], DEBUG_PARAM) == 0) {       DEBUG = true;     }     if (DEBUG) {       tick((int)1E4);       freopen(IN,  r , stdin);     }     run();     if (DEBUG) {       untick( TOTAL );     }     return 0;   }