code: def _asarray_handle_nestable(fn: Callable) -> Callable:
      fn_name = fn.__name__
  
      @functools.wraps(fn)
      def _asarray_handle_nestable_wrapper(*args, **kwargs):
          """Call `fn` with the *nestable* property of the function correctly
          handled. This means mapping the function to the container leaves if any
          containers are passed in the input.
  
          Parameters
          ----------
          args
              The arguments to be passed to the function.
  
          kwargs
              The keyword arguments to be passed to the function.
  
          Returns
          -------
              The return of the function, with the nestable property handled correctly.
          """
          # This decorator should only be applied to ivy.asarray, so we know where
          # the container must be if there is one.
          cont_fn = getattr(ivy.Container, f"static_{fn_name}")
          if isinstance(args[0], ivy.Container):
              return cont_fn(*args, **kwargs)
  
          # if the passed arguments does not contain a container, the function using
          # the passed arguments, returning an ivy or a native array.
          return fn(*args, **kwargs)
  
      _asarray_handle_nestable_wrapper.handle_nestable = True
      return _asarray_handle_nestable_wrapper
  
imports: from __future__ import annotations
  import functools
  from numbers import Number
  from typing import Union, Tuple, Optional, List, Sequence, Callable, Protocol, TypeVar, Iterable
  import numpy
  import ivy
  from ivy import to_ivy
  from ivy.utils.exceptions import handle_exceptions
  from ivy.utils.backend import current_backend
  from ivy.func_wrapper import handle_array_function, infer_dtype, handle_out_argument, outputs_to_ivy_arrays, inputs_to_native_arrays, inputs_to_native_shapes, to_native_arrays_and_back, handle_nestable, handle_array_like_without_promotion, handle_device, handle_backend_invalid, temp_asarray_wrapper
label_desc: Use image node_id 1 for calling a global function with example usage: _asarray_handle_nestable(fn) and returns: _asarray_handle_nestable_wrapper, fn, cont_fn