#include <bits/stdc++.h>
using namespace std;
char c[2049];
int cnt = 0;
void tree(int n) {
  int i = 1;
  while (i <= pow(2, n) - 1) {
    c[2 * i] = c[i];
    c[2 * i + 1] = c[i] + 1;
    i++;
  }
}
void PreOrder(int n) {
  if (n == 1)
    cout << c[n];
  else {
    PreOrder(n / 2);
    cout << c[n];
  }
}
int main() {
  c[1] = 'a';
  int n;
  cin >> n;
  tree(n);
  for (int i = 0; i < pow(2, n - 1); i++) {
    PreOrder(i + pow(2, n - 1));
    cout << endl;
  }
  return 0;
}
