code: def arange(
      start: float,
      /,
      stop: Optional[float] = None,
      step: float = 1,
      *,
      dtype: Optional[np.dtype] = None,
      device: Optional[str] = None,
      out: Optional[np.ndarray] = None,
  ) -> np.ndarray:
      if dtype:
          dtype = as_native_dtype(dtype)
      res = np.arange(start, stop, step, dtype=dtype)
      if not dtype:
          if res.dtype == np.float64:
              return res.astype(np.float32)
          elif res.dtype == np.int64:
              return res.astype(np.int32)
      return res
  
imports: from numbers import Number
  from typing import Union, Optional, List, Sequence, Tuple
  import numpy
  import ivy
  from ivy.functional.ivy.creation import _asarray_to_native_arrays_and_back, _asarray_infer_device, _asarray_infer_dtype, _asarray_handle_nestable, NestedSequence, SupportsBufferProtocol, _asarray_inputs_to_native_shapes
  from .data_type import as_native_dtype
label_desc: Use image node_id 1 for calling a global function with example usage: arange(stop, step) and returns: res, res, res