docs: def bifurcated_extend(self, corpus, max_size):
          """Replaces the results with those n-grams that contain any of the
          original n-grams, and that represent points at which an n-gram
          is a constituent of multiple larger n-grams with a lower label
          count.
  
          :param corpus: corpus of works to which results belong
          :type corpus: `Corpus`
          :param max_size: maximum size of n-gram results to include
          :type max_size: `int`
  
          """
          temp_fd, temp_path = tempfile.mkstemp(text=True)
          try:
              self._prepare_bifurcated_extend_data(corpus, max_size, temp_path,
                                                   temp_fd)
          finally:
              try:
                  os.remove(temp_path)
              except OSError as e:
                  msg = ('Failed to remove temporary file containing unreduced '
                         'results: {}')
                  self._logger.error(msg.format(e))
          self._bifurcated_extend()