code: def data_find_all(data, path, dyn_cls=False):
      
      path_parts = path.split("/")
      try:
          sub_elms = tuple(
              el
              for el in data
              if isinstance(el, (tuple, list)) and el[0] == path_parts[0]
          )
      except IndexError:
          return None
      if len(path_parts) > 1:
          ret = []
          for sub_elm in sub_elms:
              for x in data_find_all(sub_elm, "/".join(path_parts[1:])):
                  ret.append(x)
          ret = tuple(ret)
      else:
          ret = sub_elms
      if ret and dyn_cls:
          cls = generate_element_class(ret[0])
          return tuple(cls(data=tuple_) for tuple_ in ret)
      return ret
docs: Find and return all element-as-tuples in tuple ``data`` using simplified
      XPath ``path``.