code: def dtype_from_number(number):
      """Get the data type from the given int or float number"""
      assert isinstance(
          number, numeric_types
      ), "The input number should be either int for float types"
      import numpy as _np
  
      if isinstance(number, (int, long)):
          if number > _MAX_VALUE_64_BIT_UNSIGNED_:
              raise OverflowError("Integer out of bounds")
          if number > _MAX_VALUE_64_BIT_SIGNED_:
              return _np.uint64
          elif calcsize("P") == 8:
              return _np.int64
          else:
              return _np.int32
      elif isinstance(number, float):
          if abs(number) > _MAX_VALUE_FLOAT32_REPRESENT_ or (
              (not _np.isnan(number))
              and (_np.float32(number) == int(number))
              and (number != int(number))
          ):
              return _np.float64
          else:
              return (
                  _np.float64 if is_np_default_dtype() else _np.float32
              )
      elif isinstance(number, _np.generic):
          return number.dtype
      raise TypeError("type {} not supported".format(str(type(number))))
  
imports: import ctypes
  import functools
  import inspect
  import threading
  import tempfile
  import platform
  from contextlib import contextmanager
  from struct import calcsize
  from .base import _LIB, check_call, c_str, py_str, numeric_types, integer_types, long, _MAX_VALUE_64_BIT_UNSIGNED_, _MAX_VALUE_64_BIT_SIGNED_, _MAX_VALUE_FLOAT32_REPRESENT_
label_desc: Use image node_id 35 for calling a global function with example usage: dtype_from_number(number) and returns: _np, _np, _np, _np, unknown, number