#include <bits/stdc++.h>
using namespace std;
vector<string> str = {"a", "b", "c", "d", "e", "f", "g", "h",
                      "i", "j", "k", "l", "m", "n", "o", "p",
                      "q", "r", "s", "u", "v", "x", "y", "z"};
void dfs(int i, string result, int N) {
  if (result.size() >= N) {
    cout << result << endl;
    return;
  }
  for (int k = 0; k <= i; k++) {
    dfs(k + 1, result + str[k], N);
  }
  return;
}
int main() {
  int N;
  cin >> N;
  dfs(0, "", N);
  return 0;
}
