code: def temporal_split_evaluator_extractor(
      result,
      time_col,
      base_extractor,
      time_format="%Y-%m",
      eval_name=None,
  ):
      if eval_name is None:
          eval_name = "split_evaluator__" + time_col
  
      split_keys = [key for key in result.keys() if eval_name in key]
      split_values = []
      for key in split_keys:
          date = key.split(eval_name)[1][1:]
          try:
              # just check time format
              datetime.strptime(date, time_format)
              split_values.append(date)
          except ValueError:
              # this might happen if result has temporal splitters using different data formats
              pass
  
      return split_evaluator_extractor(
          result, time_col, split_values, base_extractor
      )
  
imports: import collections.abc
  from datetime import datetime
  from itertools import chain, repeat
  import pandas
  from toolz import curry
  from numpy import nan
label_desc: Use image node_id 5 for calling a global function with example usage: temporal_split_evaluator_extractor(result, time_col, base_extractor, time_format, eval_name) and returns: split_evaluator_extractor