class_docstr: List of data files (absolute local paths or URLs).
  It has two construction methods given the user's data files patterns :
  - ``from_hf_repo``: resolve patterns inside a dataset repository
  - ``from_local_or_remote``: resolve patterns from a local path
  
  Moreover DataFilesList has an additional attribute ``origin_metadata``.
  It can store:
  - the last modified time of local files
  - ETag of remote files
  - commit sha of a dataset repository
  
  Thanks to this additional attribute, it is possible to hash the list
  and get a different hash if and only if at least one file changed.
  This is useful for caching Dataset objects that are obtained from a list of data files.
class_docstr_tok: ["List","of","data","files","(","absolute","local","paths","or","URLs",")",".","It","has","two","construction","methods","given","the","user","'s","data","files","patterns",":","-","``","from_hf_repo","``",":","resolve","patterns","inside","a","dataset","repository","-","``","from_local_or_remote","``",":","resolve","patterns","from","a","local","path","Moreover","DataFilesList","has","an","additional","attribute","``","origin_metadata","``",".","It","can","store",":","-","the","last","modified","time","of","local","files","-","ETag","of","remote","files","-","commit","sha","of","a","dataset","repository","Thanks","to","this","additional","attribute",",","it","is","possible","to","hash","the","list","and","get","a","different","hash","if","and","only","if","at","least","one","file","changed",".","This","is","useful","for","caching","Dataset","objects","that","are","obtained","from","a","list","of","data","files","."]
code: def __init__(
      self, data_files: List[str], origin_metadata: List[Tuple[str]]
  ):
      super().__init__(data_files)
      self.origin_metadata = origin_metadata
  
imports: import os
  import re
  from functools import partial
  from glob import has_magic
  from pathlib import Path, PurePath
  from typing import Callable, Dict, List, Optional, Set, Tuple, Union
  import huggingface_hub
  from fsspec import get_fs_token_paths
  from fsspec.implementations.http import HTTPFileSystem
  from huggingface_hub import HfFileSystem
  from packaging import version
  from tqdm.contrib.concurrent import thread_map
  from .None import config
  from .download import DownloadConfig
  from .download.streaming_download_manager import _prepare_path_and_storage_options, xbasename, xjoin
  from .splits import Split
  from .utils import logging
  from .utils import tqdm
  from .utils.file_utils import is_local_path, is_relative_path
  from .utils.py_utils import glob_pattern_to_regex, string_to_dict
label_desc: Use image node_id 1 to create a new DataFilesList object from inherited base classes: List with example: obj = DataFilesList(data_files, origin_metadata)