o
    Td`                     @   sR   d Z ddlZddlmZ ddlmZ ddlmZ ddl	m
Z eejdd ZdS )	z5
Implementation of operations involving polynomials.
    N)jit)types)overload)numpy_supportc                    s:   t | d| }t|tjrtj nt|  fdd}|S )Ndtypec                    s   t | jdkrtdt| d }t |dkrtjd dS t | |d  d }| t|d t|d d  } t | }|dkrgtt|d f dj	}| dd   | d  |dd d f< tj
|}ntjd d}|dkr~t|tj| dfS |S )N   zInput must be a 1d array.r   )r      )lenshape
ValueErrornpnonzerozerosintdiagonesTlinalgeigvalshstack)pnon_zerotznArootscast_t f/home/ncw/WWW/www-new/content/articles/pi-bbp/venv/lib/python3.10/site-packages/numba/np/polynomial.py
roots_impl   s     "zroots_impl.<locals>.roots_impl)getattr
isinstancer   Integerr   float64
np_supportas_dtype)r   tyr!   r   r   r    r!      s   
"r!   )__doc__numpyr   numbar   
numba.corer   numba.core.extendingr   numba.npr   r&   r   r!   r   r   r   r    <module>   s    