code: def _noinline_abstract(dynamic_index, abstract_fn, transforms, args):
      del dynamic_index
      dynamic, static = hashable_partition(
          (abstract_fn, transforms, args), _is_shapedarray
      )
      flat_dynamic, treedef_dynamic = jtu.tree_flatten(dynamic)
      key = (
          tuple((x.shape, x.dtype) for x in flat_dynamic),
          treedef_dynamic,
          static,
      )
      out_struct = _cache_filter_eval_shape(key)
      return jtu.tree_map(_to_shapedarray, out_struct)
  
imports: import functools
  from collections.abc import Callable
  from typing import Any, Optional, Union
  import jax
  import jax._src.pretty_printer
  import jax._src.source_info_util
  import jax.core
  import jax.interpreters.ad
  import jax.interpreters.batching
  import jax.interpreters.mlir
  import jax.numpy
  import jax.tree_util
  import numpy
  from jaxtyping import Array, Int, PyTree
  from .._ad import filter_jvp
  from .._caches import internal_lru_caches
  from .._compile_utils import hashable_combine, hashable_partition
  from .._eval_shape import filter_eval_shape
  from .._filters import combine, is_array, partition
  from .._module import field, Module, module_update_wrapper
  from .._vmap_pmap import filter_vmap
  from .None import _primitive
  from ._primitive import filter_primitive_batching, filter_primitive_bind, filter_primitive_def, filter_primitive_jvp, filter_primitive_transpose, materialise_zeros
label_desc: Use image node_id 15 for calling a global function with example usage: _noinline_abstract(dynamic_index, abstract_fn, transforms, args) and returns: jtu