code: def _ParseTriggerStartTime(self, parser_mediator, trigger):
      
      time_elements_tuple = (
          trigger.start_date.year, trigger.start_date.month,
          trigger.start_date.day_of_month, trigger.start_time.hours,
          trigger.start_time.minutes, 0)
  
      date_time = None
      if time_elements_tuple != (0, 0, 0, 0, 0, 0):
        try:
          date_time = dfdatetime_time_elements.TimeElements(
              time_elements_tuple=time_elements_tuple)
          date_time.is_local_time = True
          # TODO: add functionality to dfdatetime to control precision.
          date_time._precision = dfdatetime_definitions.PRECISION_1_MINUTE  # pylint: disable=protected-access
        except ValueError:
          parser_mediator.ProduceExtractionWarning(
              'invalid trigger start time: {0!s}'.format(time_elements_tuple))
  
      return date_time
docs: Parses the start time from a trigger.
  
      Args:
        parser_mediator (ParserMediator): mediates interactions between parsers
            and other components, such as storage and dfvfs.
        trigger (job_trigger): a trigger.
  
      Returns:
        dfdatetime.DateTimeValues: last run date and time or None if not
            available.