code: def elide_all(self, line: str) -> str:
          
          marks = list(line.translate(self.remove_punct_map))
          all_vowels = self.constants.VOWELS + self.constants.ACCENTED_VOWELS
          tmp = "".join(marks)
          # Elision rules are compound but not cummulative: we place all elision edits into a list
          #  of candidates, and then merge, taking the least of each section of the line.
          candidates = [tmp, self.elide(tmp, r"[{}][{}]\s+[{}]".format(self.constants.CONSONANTS,
                                                                       all_vowels, all_vowels), 1, 1),
                        self.elide(tmp,
                                   r"[{}][{}]\s+[hH]".format(self.constants.CONSONANTS, all_vowels),
                                   1, 1), self.elide(tmp, r"[aāuū]m\s+[{}]".format(all_vowels), 2),
                        self.elide(tmp, r"ae\s+[{}]".format(all_vowels), 2),
                        self.elide(tmp, r"[{}]\s+[{}]".format(all_vowels, all_vowels), 1),
                        self.elide(tmp, r"[uū]m\s+h", 2)]
          results = string_utils.merge_elisions(candidates)
          return results
docs: Given a string of space separated syllables, erase with spaces the syllable portions
          that would disappear according to the rules of elision.
  
          :param line:
          :return: