code: def inputs_to_ivy_arrays(fn: Callable) -> Callable:
      @functools.wraps(fn)
      def _inputs_to_ivy_arrays_np(*args, **kwargs):
          """Convert all `ndarray` instances in both the positional and keyword
          arguments into `ivy.Array` instances, and then call the function with
          the updated arguments.
  
          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 ivy arrays passed in the arguments.
          """
          # convert all arrays in the inputs to ivy.Array instances
          ivy_args = ivy.nested_map(
              _to_ivy_array, args, include_derived={"tuple": True}
          )
          ivy_kwargs = ivy.nested_map(
              _to_ivy_array, kwargs, include_derived={"tuple": True}
          )
          return fn(*ivy_args, **ivy_kwargs)
  
      _inputs_to_ivy_arrays_np.inputs_to_ivy_arrays_numpy = True
      return _inputs_to_ivy_arrays_np
  
imports: import functools
  from typing import Callable, Any
  import inspect
  import platform
  import ivy
  import ivy.functional.frontends.numpy
label_desc: Use image node_id 19 for calling a global function with example usage: inputs_to_ivy_arrays(fn) and returns: _inputs_to_ivy_arrays_np, fn