code: def _result(self) -> ResultLazyType:
          
          config = cast(IntervalsCollectionBasedReplacerConfig, self.config)
  
          diff_acc = 0
          for interval, aggregated_mark in self.continuous_intervals():
              start, end = interval
              processed_start = start + diff_acc
              processed_end = end + diff_acc
  
              segment = self.input_sequence[start:end]
  
              if aggregated_mark is not None:
                  processed_segment = config.labeler2repl[cast(Type[workflow.IntervalLabeler],
                                                               aggregated_mark)](segment)
  
                  if not processed_segment:
                      # segment is removed.
                      processed_end = processed_start
                  else:
                      processed_end = processed_start + len(processed_segment)
  
                  diff_acc += len(processed_segment) - len(segment)
                  segment = processed_segment
  
              yield segment, (interval, (processed_start, processed_end), aggregated_mark is not None)
docs: ``self.config.replacer_function``(``Callable[[str], str]``) must exists.