code: def _roots_no_zeros(p: Array) -> Array:
      # build companion matrix and find its eigenvalues (the roots)
      if p.size < 2:
          return array([], dtype=dtypes.to_complex_dtype(p.dtype))
      A = diag(ones((p.size - 2,), p.dtype), -1)
      A = A.at[0, :].set(-p[1:] / p[0])
      return linalg.eigvals(A)
  
imports: from __future__ import annotations
  from functools import partial
  import operator
  import numpy
  from jax import jit
  from jax import lax
  from jax._src import dtypes
  from jax._src import core
  from jax._src.numpy.lax_numpy import arange, argmin, array, asarray, atleast_1d, concatenate, convolve, diag, dot, finfo, full, ones, outer, roll, trim_zeros, trim_zeros_tol, vander, zeros
  from jax._src.numpy.ufuncs import maximum, true_divide, sqrt
  from jax._src.numpy.reductions import all
  from jax._src.numpy import linalg
  from jax._src.numpy.util import check_arraylike, promote_dtypes, promote_dtypes_inexact, _where, _wraps
  from jax._src.typing import Array, ArrayLike
label_desc: Use image node_id 1 for calling a global function with example usage: _roots_no_zeros(p) and returns: linalg, array