docs: def _GetTimelineStatEntriesLegacy(client_id, file_path, with_history=True):
    """Gets timeline entries from AFF4."""
  
    folder_urn = aff4.ROOT_URN.Add(str(client_id)).Add(file_path)
  
    child_urns = []
    for _, children in aff4.FACTORY.RecursiveMultiListChildren([folder_urn]):
      child_urns.extend(children)
  
    if with_history:
      timestamp = aff4.ALL_TIMES
    else:
      timestamp = aff4.NEWEST_TIME
  
    for fd in aff4.FACTORY.MultiOpen(child_urns, age=timestamp):
      file_path = "/".join(str(fd.urn).split("/")[2:])
  
      if not with_history:
        yield file_path, fd.Get(fd.Schema.STAT), fd.Get(fd.Schema.HASH)
        continue
  
      result = {}
  
      stats = fd.GetValuesForAttribute(fd.Schema.STAT)
      for s in stats:
        result[s.age] = [s, None]
  
      hashes = fd.GetValuesForAttribute(fd.Schema.HASH)
      for h in hashes:
        prev = result.setdefault(h.age, [None, None])
        prev[1] = h
  
      for ts in sorted(result):
        v = result[ts]
        yield file_path, v[0], v[1]