code: def expand_glob(path: epath.PathLike) -> List[epath.Path]:
      """Returns all files that match the glob in the given path.
  
      Warning: If `path` does not contain any wildcards, we do not check whether
      `path` exists and always return `[path]`. In addition, we don't expand the
      `@*` pattern to specify shard wildcards.
  
      Arguments:
        path: a path that can contain a glob.
  
      Returns:
        all files that match the given glob.
      """
      path = epath.Path(path).expanduser()
      path_str = os.fspath(path)
      # We don't expand wildcards for number of shards, i.e. paths ending with @*.
      path_str_no_shard_wildcard = re.sub(r"@\*$", "", path_str)
      if not any(
          [char in path_str_no_shard_wildcard for char in _GLOB_CHARS]
      ):
          return [path]
      if not path_str.startswith("/"):
          logging.warning(
              "Can only expand globs for paths starting with a `/`. Got: %s",
              path,
          )
          return [path]
      return list(epath.Path("/").glob(path_str[1:]))
  
imports: import collections
  import functools
  import os
  import re
  import time
  from typing import Iterator, List, Optional
  from absl import logging
  from etils import epath
  from tensorflow_datasets.core import constants
  from tensorflow_datasets.core import naming
  from tensorflow_datasets.core.utils import docs
  from tensorflow_datasets.core.utils import py_utils
  from tensorflow_datasets.core.utils import read_config
  from tensorflow_datasets.core.utils import type_utils
  from tensorflow_datasets.core.utils import version
label_desc: Use image node_id 12 for calling a global function with example usage: expand_glob(path) and returns: list, list, list