code: def signbit(x: ArrayLike, /) -> Array:
      (x,) = promote_args("signbit", x)
      dtype = dtypes.dtype(x)
      if dtypes.issubdtype(dtype, np.integer):
          return lax.lt(x, _constant_like(x, 0))
      elif dtypes.issubdtype(dtype, np.bool_):
          return lax.full_like(x, False, dtype=np.bool_)
      elif not dtypes.issubdtype(dtype, np.floating):
          raise ValueError(
              "jax.numpy.signbit is not well defined for %s" % dtype
          )
  
      info = dtypes.finfo(dtype)
      if info.bits not in _INT_DTYPES:
          raise NotImplementedError(
              "jax.numpy.signbit only supports 16, 32, and 64-bit types."
          )
      int_type = _INT_DTYPES[info.bits]
      x = lax.bitcast_convert_type(x, int_type)
      return lax.convert_element_type(
          x >> (info.nexp + info.nmant), np.bool_
      )
  
imports: from __future__ import annotations
  from functools import partial
  import operator
  from textwrap import dedent
  from typing import Any, Callable, overload
  import numpy
  from jax._src import core
  from jax._src import dtypes
  from jax._src.api import jit
  from jax._src.custom_derivatives import custom_jvp
  from jax._src.lax import lax
  from jax._src.typing import Array, ArrayLike
  from jax._src.numpy.util import check_arraylike, promote_args, promote_args_inexact, promote_args_numeric, promote_dtypes_inexact, promote_dtypes_numeric, promote_shapes, _where, _wraps, check_no_float0s
label_desc: Use image node_id 34 for calling a global function with example usage: signbit() and returns: lax, lax, lax