#include <bits/stdc++.h>
using namespace std;
const long long INF = 1LL << 61;
long long gcd(long long x, long long y) { return y ? gcd(y, x % y) : x; }
long long lcm(long long x, long long y) { return x / gcd(x, y) * y; }
long long jou(long long N, long long P) {
  if (P == 0) return 1;
  if (P % 2 == 0) {
    long long t = jou(N, P / 2);
    return t * t % 1000000007;
  }
  return (N * jou(N, P - 1)) % 1000000007;
}
int main() {
  int n;
  cin >> n;
  queue<string> que;
  que.push("a");
  while (1) {
    string x = que.front();
    que.pop();
    if (x.size() == n) cout << x << endl;
    if (x.size() > n) break;
    char y = x[x.size() - 1];
    for (char z = 'a'; z <= y + 1; z++) {
      string s = x + z;
      que.push(s);
    }
  }
}
