#include <bits/stdc++.h>
using namespace std;

set<string>s;

void func() {
  set<string>t;
  char c;
  string S;
  for (auto ite = s.begin(); ite != s.end(); ite++) {
    S = *ite;
    c = S[0];
    for (int i = 1; i < S.length(); i++) {
      if (S[i] > c) {
        c = S[i];
      }
    }
    t.insert(*ite+c);
    t.insert(c+*ite);
    t.insert(*ite+(char)((int)c+1));
    t.insert((char)((int)c+1)+*ite);
  }
  s = t;
}

int main() {
  int N;
  cin >> N;
  s.insert("a");
  for (int i = 0; i < N-1; i++) {
    func();
  }
  sort(s.begin(), s.end());
  for (auto ite = s.begin(); ite != s.end(); ite++) {
    cout << *ite << endl;
  }
}