docs: def determine_polychords(chord, shorthand=False):
      """Determine the polychords in chord.
      
      This function can handle anything from polychords based on two triads to
      6 note extended chords.
      """
      polychords = []
      function_list = [determine_triad, determine_seventh,
                       determine_extended_chord5, determine_extended_chord6,
                       determine_extended_chord7]
  
      # Range tracking.
      if len(chord) <= 3:
          return []
      elif len(chord) > 14:
          return []
      elif len(chord) - 3 <= 5:
          function_nr = range(0, len(chord) - 3)
      else:
          function_nr = range(0, 5)
      for f in function_nr:
          for f2 in function_nr:
              # The clever part: Try the function_list[f] on the len(chord) - (3 +
              # f) last notes of the chord. Then try the function_list[f2] on the
              # f2 + 3 first notes of the chord. Thus, trying all possible
              # combinations.
              for chord1 in function_list[f](chord[len(chord) - (3 + f):], True,
                      True, True):
                  for chord2 in function_list[f2](chord[:f2 + 3], True, True,
                          True):
                      polychords.append('%s|%s' % (chord1, chord2))
      if shorthand:
          for p in polychords:
              p = p + ' polychord'
      return polychords