#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-8;
const int NINF = 0xc0c0c0c0;
const int INF = 0x3f3f3f3f;
const long long mod = 1e9 + 7;
const long long maxn = 1e6 + 5;
int n, a[100];
void dfs(int p, int lim) {
  if (p == n + 1) {
    for (int i = 1; i <= n; i++) {
      cout << char(a[i] + 'a' - 1);
    }
    cout << endl;
  }
  for (int i = 1; i <= lim; i++) {
    a[p] = i;
    dfs(p + 1, lim + (i == lim));
  }
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cin >> n;
  dfs(1, 1);
  return 0;
}
