#include <bits/stdc++.h>
using namespace std;
long long gcd(long long a, long long b) {
  if (a % b == 0)
    return b;
  else
    return gcd(b, a % b);
}
long long lcm(long long a, long long b) { return a * b / gcd(a, b); }
bool isPrime(long long x) {
  int i;
  if (x < 2)
    return false;
  else if (x == 2)
    return true;
  if (x % 2 == 0) return false;
  for (i = 3; i * i <= x; i += 2)
    if (x % i == 0) return false;
  return true;
}
int main() {
  string al[] = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j"};
  int n;
  cin >> n;
  long long num = pow(n, n - 1);
  for (long long i = 0; i < num; i++) {
    long long m = i;
    for (int j = n - 1; j >= 0; j--) {
      int k = m / pow(n, j);
      cout << al[k];
      m -= k * pow(n, j);
    }
    cout << endl;
  }
}
