code: def parse_timing(self, nids=None):
          
          # Get the list of output files according to nids.
          paths = [task.output_file.path for task in self.iflat_tasks(nids=nids)]
  
          # Parse data.
          from .abitimer import AbinitTimerParser
          parser = AbinitTimerParser()
          read_ok = parser.parse(paths)
          if read_ok:
              return parser
          return None
docs: Parse the timer data in the main output file(s) of Abinit.
          Requires timopt /= 0 in the input file (usually timopt = -1)
  
          Args:
              nids: optional list of node identifiers used to filter the tasks.
  
          Return: :class:`AbinitTimerParser` instance, None if error.