docstr: Gather slices from all container params into a arrays with shape
  specified by indices.
  
  Parameters
  ----------
  params
      The container from which to gather values.
  indices
      Index array.
  batch_dims
      optional int, lets you gather different items from each element of a batch.
  key_chains
      The key-chains to apply or not apply the method to. Default is ``None``.
  to_apply
      If True, the method will be applied to key_chains, otherwise key_chains will
      be skipped. Default is ``True``.
  prune_unapplied
      Whether to prune key_chains for which the function was not applied. Default
      is False.
  map_sequences
      Whether to also map method to sequences (lists, tuples).
      Default is ``False``.
  out
      optional array, for writing the result to. It must have a shape
      that the inputs broadcast to.
  
  Returns
  -------
      Container object with all sub-array dimensions gathered.
  
  Examples
  --------
  >>> x = ivy.Container(a=ivy.array([[0., 10., 20.],[30.,40.,50.]]),
  ...                   b=ivy.array([[0., 100., 200.],[300.,400.,500.]]))
  >>> y = ivy.Container(a=ivy.array([1,0]),
  ...                   b=ivy.array([0]))
  >>> print(ivy.Container.static_gather_nd(x, y))
  {
      a: ivy.array(30.),
      b: ivy.array([0., 100., 200.])
  }
docstr_tok: ["Gather","slices","from","all","container","params","into","a","arrays","with","shape","specified","by","indices",".","Parameters","--","--","--","--","--","params","The","container","from","which","to","gather","values",".","indices","Index","array",".","batch_dims","optional","int",",","lets","you","gather","different","items","from","each","element","of","a","batch",".","key_chains","The","key-chains","to","apply","or","not","apply","the","method","to",".","Default","is","``","None","``",".","to_apply","If","True",",","the","method","will","be","applied","to","key_chains",",","otherwise","key_chains","will","be","skipped",".","Default","is","``","True","``",".","prune_unapplied","Whether","to","prune","key_chains","for","which","the","function","was","not","applied",".","Default","is","False",".","map_sequences","Whether","to","also","map","method","to","sequences","(","lists",",","tuples",")",".","Default","is","``","False","``",".","out","optional","array",",","for","writing","the","result","to",".","It","must","have","a","shape","that","the","inputs","broadcast","to",".","Returns","--","--","--","-","Container","object","with","all","sub-array","dimensions","gathered",".","Examples","--","--","--","--",">",">",">","x","=","ivy.Container","(","a=ivy.array","(","[","[","0.",",","10.",",","20.","]",",","[","30.,40.,50",".","]","]",")",",","...","b=ivy.array","(","[","[","0.",",","100.",",","200.","]",",","[","300.,400.,500",".","]","]",")",")",">",">",">","y","=","ivy.Container","(","a=ivy.array","(","[","1,0","]",")",",","...","b=ivy.array","(","[","0","]",")",")",">",">",">","print","(","ivy.Container.static_gather_nd","(","x",",","y",")",")","{","a",":","ivy.array","(","30",".",")",",","b",":","ivy.array","(","[","0.",",","100.",",","200",".","]",")","}"]
code: def _static_gather_nd(
      params: Union[ivy.Container, ivy.Array, ivy.NativeArray],
      indices: Union[ivy.Container, ivy.Array, ivy.NativeArray],
      /,
      *,
      batch_dims: Union[int, ivy.Container] = 0,
      key_chains: Optional[
          Union[List[str], Dict[str, str], ivy.Container]
      ] = None,
      to_apply: Union[bool, ivy.Container] = True,
      prune_unapplied: Union[bool, ivy.Container] = False,
      map_sequences: Union[bool, ivy.Container] = False,
      out: Optional[ivy.Container] = None,
  ) -> ivy.Container:
      """Gather slices from all container params into a arrays with shape
      specified by indices.
  
      Parameters
      ----------
      params
          The container from which to gather values.
      indices
          Index array.
      batch_dims
          optional int, lets you gather different items from each element of a batch.
      key_chains
          The key-chains to apply or not apply the method to. Default is ``None``.
      to_apply
          If True, the method will be applied to key_chains, otherwise key_chains will
          be skipped. Default is ``True``.
      prune_unapplied
          Whether to prune key_chains for which the function was not applied. Default
          is False.
      map_sequences
          Whether to also map method to sequences (lists, tuples).
          Default is ``False``.
      out
          optional array, for writing the result to. It must have a shape
          that the inputs broadcast to.
  
      Returns
      -------
          Container object with all sub-array dimensions gathered.
  
      Examples
      --------
      >>> x = ivy.Container(a=ivy.array([[0., 10., 20.],[30.,40.,50.]]),
      ...                   b=ivy.array([[0., 100., 200.],[300.,400.,500.]]))
      >>> y = ivy.Container(a=ivy.array([1,0]),
      ...                   b=ivy.array([0]))
      >>> print(ivy.Container.static_gather_nd(x, y))
      {
          a: ivy.array(30.),
          b: ivy.array([0., 100., 200.])
      }
      """
      return ContainerBase.cont_multi_map_in_function(
          "gather_nd",
          params,
          indices,
          batch_dims=batch_dims,
          key_chains=key_chains,
          to_apply=to_apply,
          prune_unapplied=prune_unapplied,
          map_sequences=map_sequences,
          out=out,
      )
  
imports: from numbers import Number
  from typing import Any, Union, List, Dict, Iterable, Optional, Callable
  from ivy.data_classes.container.base import ContainerBase
  import ivy
label_desc: Use image node_id 29 for calling the _ContainerWithGeneral obj's underlying member method code with example usage: obj._static_gather_nd() and returns: ContainerBase