output_description: Assume that there are K strings of length N that are in normal form: w_1,
  \ldots, w_K in lexicographical order. Output should be in the following
  format:
  
      
      
      w_1
      :
      w_K
      
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
attempt: # a,b,c = [int(x) for x in input().split()]
  n = int(input())
  l = [0] * n
  ans = ""
  al = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"]
  if n == 1:
      print("a")
  elif n == 2:
      for x in range(2):
          l[1] = x
          for i in range(n):
              for k in range(n):
                  if l[i] == k:
                      ans = ans + al[k]
          print(ans)
          ans = ""
  elif n == 3:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for i in range(n):
                  for k in range(n):
                      if l[i] == k:
                          ans = ans + al[k]
              print(ans)
              ans = ""
  elif n == 4:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for b in range(l[2] + 2):
                  l[3] = b
                  for i in range(n):
                      for k in range(n):
                          if l[i] == k:
                              ans = ans + al[k]
                  print(ans)
                  ans = ""
  elif n == 5:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for b in range(l[2] + 2):
                  l[3] = b
                  for c in range(l[3] + 2):
                      l[4] = c
                      for i in range(n):
                          for k in range(n):
                              if l[i] == k:
                                  ans = ans + al[k]
                      print(ans)
                      ans = ""
  elif n == 6:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for b in range(l[2] + 2):
                  l[3] = b
                  for c in range(l[3] + 2):
                      l[4] = c
                      for d in range(l[4] + 2):
                          l[5] = d
                          for i in range(n):
                              for k in range(n):
                                  if l[i] == k:
                                      ans = ans + al[k]
                          print(ans)
                          ans = ""
  
  elif n == 7:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for b in range(l[2] + 2):
                  l[3] = b
                  for c in range(l[3] + 2):
                      l[4] = c
                      for d in range(l[4] + 2):
                          l[5] = d
                          for e in range(l[5] + 2):
                              l[6] = e
                              for i in range(n):
                                  for k in range(n):
                                      if l[i] == k:
                                          ans = ans + al[k]
                              print(ans)
                              ans = ""
  elif n == 8:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for b in range(l[2] + 2):
                  l[3] = b
                  for c in range(l[3] + 2):
                      l[4] = c
                      for d in range(l[4] + 2):
                          l[5] = d
                          for e in range(l[5] + 2):
                              l[6] = e
                              for f in range(l[6] + 2):
                                  l[7] = f
                                  for i in range(n):
                                      for k in range(n):
                                          if l[i] == k:
                                              ans = ans + al[k]
                                  print(ans)
                                  ans = ""
  elif n == 9:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for b in range(l[2] + 2):
                  l[3] = b
                  for c in range(l[3] + 2):
                      l[4] = c
                      for d in range(l[4] + 2):
                          l[5] = d
                          for e in range(l[5] + 2):
                              l[6] = e
                              for f in range(l[6] + 2):
                                  l[7] = f
                                  for g in range(l[7] + 2):
                                      l[8] = g
                                      for i in range(n):
                                          for k in range(n):
                                              if l[i] == k:
                                                  ans = ans + al[k]
                                      print(ans)
                                      ans = ""
  elif n == 10:
      for x in range(2):
          l[1] = x
          for a in range(l[1] + 2):
              l[2] = a
              for b in range(l[2] + 2):
                  l[3] = b
                  for c in range(l[3] + 2):
                      l[4] = c
                      for d in range(l[4] + 2):
                          l[5] = d
                          for e in range(l[5] + 2):
                              l[6] = e
                              for f in range(l[6] + 2):
                                  l[7] = f
                                  for g in range(l[7] + 2):
                                      l[8] = g
                                      for h in range(l[8] + 2):
                                          l[9] = h
                                          for i in range(n):
                                              for k in range(n):
                                                  if l[i] == k:
                                                      ans = ans + al[k]
                                          print(ans)
                                          ans = ""
  
problem_description: Statement
  
  In this problem, we only consider strings consisting of lowercase English
  letters.
  
  Strings s and t are said to be **isomorphic** when the following conditions
  are satisfied:
  
    * |s| = |t| holds.
    * For every pair i, j, one of the following holds:
      * s_i = s_j and t_i = t_j.
      * s_i \neq s_j and t_i \neq t_j.
  
  For example, `abcac` and `zyxzx` are isomorphic, while `abcac` and `ppppp` are
  not.
  
  A string s is said to be in **normal form** when the following condition is
  satisfied:
  
    * For every string t that is isomorphic to s, s \leq t holds. Here \leq denotes lexicographic comparison.
  
  For example, `abcac` is in normal form, but `zyxzx` is not since it is
  isomorphic to `abcac`, which is lexicographically smaller than `zyxzx`.
  
  You are given an integer N. Print all strings of length N that are in normal
  form, in lexicographically ascending order.
samples: [{"input": "1", "output": "a\n    \n\n* * *"}, {"input": "2", "output": "aa\n    ab"}]