Ë
    ¦[;j½I  ã                  ó  — d dl mZ ddlmZmZmZmZmZmZ ddl	m
Z
 ddlmZ ddlmZ ddlmZ d d	lmZ erdd
lmZmZmZmZmZmZ d dlmZ d dlZd dlZ G d„ de«      Z G d„ de«      Z G d„ de«      Z  G d„ de«      Z!ddœd=d„Z"ddœd>d„Z#d?d„Z$d dœd@d„Z%dAd„Z&d?d„Z'd?d „Z(dBd!„Z)dd"d#œdCd$„Z*dDd%„Z+dd&œdEd'„Z,d?d(„Z-dBd)„Z.dd&œdEd*„Z/d+d,œdFd-„Z0dGd.„Z1d/„ Z2dBd0„Z3d1d2œdHd3„Z4dId4„Z5dd5œdJd6„Z6d dd7œdKd8„Z7ddœd>d9„Z8dddd:œdLd;„Z9g d<¢Z:y)Mé    )Úannotationsé   )Ú_floating_dtypesÚ_numeric_dtypesÚfloat32Úfloat64Ú	complex64Ú
complex128)Úreshape)Úconj)ÚArrayé   )Únormalize_axis_tuple)ÚTYPE_CHECKING)ÚLiteralÚOptionalÚSequenceÚTupleÚUnionÚDtype)Ú
NamedTupleNc                  ó"   — e Zd ZU ded<   ded<   y)Ú
EighResultr   ÚeigenvaluesÚeigenvectorsN©Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© ó    ú_G:\00. PROJECTS\API\Inventory\templateJSON\kerjaOCR\Lib\site-packages\numpy/array_api/linalg.pyr   r      s   … ØÓØÔr"   r   c                  ó"   — e Zd ZU ded<   ded<   y)ÚQRResultr   ÚQÚRNr   r!   r"   r#   r%   r%      s   … ØƒHØ„Hr"   r%   c                  ó"   — e Zd ZU ded<   ded<   y)ÚSlogdetResultr   ÚsignÚ	logabsdetNr   r!   r"   r#   r)   r)   "   s   … Ø
ƒKØÔr"   r)   c                  ó,   — e Zd ZU ded<   ded<   ded<   y)Ú	SVDResultr   ÚUÚSÚVhNr   r!   r"   r#   r-   r-   &   s   … ØƒHØƒHØ„Ir"   r-   F)Úupperc              óD  — | j                   t        vrt        d«      ‚t        j                  j                  | j                  «      }|rDt        j                  |«      j                  }|j                   t        t        fv rt        |«      }|S t        j                  |«      S )zŽ
    Array API compatible wrapper for :py:func:`np.linalg.cholesky <numpy.linalg.cholesky>`.

    See its docstring for more information.
    z2Only floating-point dtypes are allowed in cholesky)Údtyper   Ú	TypeErrorÚnpÚlinalgÚcholeskyÚ_arrayr   Ú_newÚmTr	   r
   r   )Úxr1   ÚLr.   s       r#   r7   r7   -   sx   € ð 	‡w�wÔ&Ñ&ÜÐLÓMÐMÜ
�	‰	×Ñ˜1Ÿ8™8Ó$€AÙÜ�J‰J�q‹M×ÑˆØ�7‰7”y¤*Ð-Ñ-Ü�Q“ˆAØˆÜ�:‰:�a‹=Ðr"   éÿÿÿÿ©Úaxisc              ó”  — | j                   t        vs|j                   t        vrt        d«      ‚| j                  |j                  k7  rt	        d«      ‚| j
                  dk(  rt	        d«      ‚| j                  |   dk7  rt	        d«      ‚t        j                  t        j                  | j                  |j                  |¬«      «      S )zz
    Array API compatible wrapper for :py:func:`np.cross <numpy.cross>`.

    See its docstring for more information.
    z(Only numeric dtypes are allowed in crossz"x1 and x2 must have the same shaper   z/cross() requires arrays of dimension at least 1é   zcross() dimension must equal 3r>   )r3   r   r4   ÚshapeÚ
ValueErrorÚndimr   r9   r5   Úcrossr8   )Úx1Úx2r?   s      r#   rE   rE   @   sš   € ð 
‡x�x”Ñ&¨"¯(©(¼/Ñ*IÜÐBÓCÐCà	‡x�x�2—8‘8ÒÜÐ=Ó>Ð>Ø	‡w�w�!‚|ÜÐJÓKÐKà	‡x�x��~˜ÒÜÐ9Ó:Ð:Ü�:‰:”b—h‘h˜rŸy™y¨"¯)©)¸$Ô?Ó@Ð@r"   c               ó´   — | j                   t        vrt        d«      ‚t        j                  t
        j                  j                  | j                  «      «      S )z„
    Array API compatible wrapper for :py:func:`np.linalg.det <numpy.linalg.det>`.

    See its docstring for more information.
    z-Only floating-point dtypes are allowed in det)	r3   r   r4   r   r9   r5   r6   Údetr8   ©r;   s    r#   rI   rI   R   s=   € ð 	‡w�wÔ&Ñ&ÜÐGÓHÐHÜ�:‰:”b—i‘i—m‘m A§H¡HÓ-Ó.Ð.r"   )Úoffsetc              ón   — t        j                  t        j                  | j                  |dd¬«      «      S )z€
    Array API compatible wrapper for :py:func:`np.diagonal <numpy.diagonal>`.

    See its docstring for more information.
    éþÿÿÿr=   )rK   Úaxis1Úaxis2)r   r9   r5   Údiagonalr8   )r;   rK   s     r#   rP   rP   _   s&   € ô �:‰:”b—k‘k !§(¡(°6ÀÈ2ÔNÓOÐOr"   c               óÊ   — | j                   t        vrt        d«      ‚t        t	        t
        j                  t        j                  j                  | j                  «      «      Ž S )z†
    Array API compatible wrapper for :py:func:`np.linalg.eigh <numpy.linalg.eigh>`.

    See its docstring for more information.
    z.Only floating-point dtypes are allowed in eigh)r3   r   r4   r   Úmapr   r9   r5   r6   Úeighr8   rJ   s    r#   rS   rS   j   sF   € ð 	‡w�wÔ&Ñ&ÜÐHÓIÐIô ”sœ5Ÿ:™:¤r§y¡y§~¡~°a·h±hÓ'?Ó@ÐAÐAr"   c               ó´   — | j                   t        vrt        d«      ‚t        j                  t
        j                  j                  | j                  «      «      S )zŽ
    Array API compatible wrapper for :py:func:`np.linalg.eigvalsh <numpy.linalg.eigvalsh>`.

    See its docstring for more information.
    z2Only floating-point dtypes are allowed in eigvalsh)	r3   r   r4   r   r9   r5   r6   Úeigvalshr8   rJ   s    r#   rU   rU   z   s?   € ð 	‡w�wÔ&Ñ&ÜÐLÓMÐMä�:‰:”b—i‘i×(Ñ(¨¯©Ó2Ó3Ð3r"   c               ó´   — | j                   t        vrt        d«      ‚t        j                  t
        j                  j                  | j                  «      «      S )z„
    Array API compatible wrapper for :py:func:`np.linalg.inv <numpy.linalg.inv>`.

    See its docstring for more information.
    z-Only floating-point dtypes are allowed in inv)	r3   r   r4   r   r9   r5   r6   Úinvr8   rJ   s    r#   rW   rW   ‡   s=   € ð 	‡w�wÔ&Ñ&ÜÐGÓHÐHä�:‰:”b—i‘i—m‘m A§H¡HÓ-Ó.Ð.r"   c               óÚ   — | j                   t        vs|j                   t        vrt        d«      ‚t        j                  t        j                  | j                  |j                  «      «      S )z|
    Array API compatible wrapper for :py:func:`np.matmul <numpy.matmul>`.

    See its docstring for more information.
    z)Only numeric dtypes are allowed in matmul)r3   r   r4   r   r9   r5   Úmatmulr8   ©rF   rG   s     r#   rY   rY   –   sI   € ð 
‡x�x”Ñ&¨"¯(©(¼/Ñ*IÜÐCÓDÐDä�:‰:”b—i‘i §	¡	¨2¯9©9Ó5Ó6Ð6r"   Úfro)ÚkeepdimsÚordc              ó¼   — | j                   t        vrt        d«      ‚t        j                  t
        j                  j                  | j                  d||¬«      «      S )ú†
    Array API compatible wrapper for :py:func:`np.linalg.norm <numpy.linalg.norm>`.

    See its docstring for more information.
    z5Only floating-point dtypes are allowed in matrix_norm)rM   r=   ©r?   r\   r]   )	r3   r   r4   r   r9   r5   r6   Únormr8   )r;   r\   r]   s      r#   Úmatrix_normrb   ª   sF   € ð 	‡w�wÔ&Ñ&ÜÐOÓPÐPä�:‰:”b—i‘i—n‘n Q§X¡X°HÀxÐUX�nÓYÓZÐZr"   c               ó¶   — | j                   t        vrt        d«      ‚t        j                  t
        j                  j                  | j                  |«      «      S )zˆ
    Array API compatible wrapper for :py:func:`np.matrix_power <numpy.matrix_power>`.

    See its docstring for more information.
    zMOnly floating-point dtypes are allowed for the first argument of matrix_power)	r3   r   r4   r   r9   r5   r6   Úmatrix_powerr8   )r;   Úns     r#   rd   rd   ¸   sC   € ð 	‡w�wÔ&Ñ&ÜÐgÓhÐhô �:‰:”b—i‘i×,Ñ,¨Q¯X©X°qÓ9Ó:Ð:r"   )Úrtolc              óp  — | j                   dk  rt        j                  j                  d«      ‚t        j                  j	                  | j
                  d¬«      }|€W|j                  dd¬«      t        | j                  d	d «      z  t        j                  |j                  «      j                  z  }nXt        |t        «      r|j
                  }|j                  dd¬«      t        j                  |«      d
t        j                  f   z  }t        j                  t        j                   ||kD  d¬«      «      S )z†
    Array API compatible wrapper for :py:func:`np.matrix_rank <numpy.matrix_rank>`.

    See its docstring for more information.
    r   zA1-dimensional array given. Array must be at least two-dimensionalF©Ú
compute_uvNr=   T)r?   r\   rM   .r>   )rD   r5   r6   ÚLinAlgErrorÚsvdr8   ÚmaxrB   Úfinfor3   ÚepsÚ
isinstancer   ÚasarrayÚnewaxisr9   Úcount_nonzero)r;   rf   r/   Útols       r#   Úmatrix_rankrt   Ç   sä   € ð 	‡v�v�‚zÜ�i‰i×#Ñ#Ð$gÓhÐhÜ
�	‰	�‰�a—h‘h¨5ˆÓ1€AØ€|Ø�e‰e˜ dˆeÓ+¬c°!·'±'¸"¸#°,Ó.?Ñ?Ä"Ç(Á(È1Ï7É7ÓBS×BWÑBWÑW‰ä�dœEÔ"Ø—;‘;ˆDð �e‰e˜ dˆeÓ+¬B¯J©J°tÓ,<¸SÄ"Ç*Á*¸_Ñ,MÑMˆÜ�:‰:”b×&Ñ& q¨3¡w°RÔ8Ó9Ð9r"   c               óž   — | j                   dk  rt        d«      ‚t        j                  t	        j
                  | j                  dd«      «      S )Nr   z5x must be at least 2-dimensional for matrix_transposer=   rM   )rD   rC   r   r9   r5   Úswapaxesr8   rJ   s    r#   Úmatrix_transposerw   ß   s9   € Ø‡v�v�‚zÜÐPÓQÐQÜ�:‰:”b—k‘k !§(¡(¨B°Ó3Ó4Ð4r"   c               ó,  — | j                   t        vs|j                   t        vrt        d«      ‚| j                  dk7  s|j                  dk7  rt	        d«      ‚t        j                  t        j                  | j                  |j                  «      «      S )zz
    Array API compatible wrapper for :py:func:`np.outer <numpy.outer>`.

    See its docstring for more information.
    z(Only numeric dtypes are allowed in outerr   z/The input arrays to outer must be 1-dimensional)
r3   r   r4   rD   rC   r   r9   r5   Úouterr8   rZ   s     r#   ry   ry   å   sl   € ð 
‡x�x”Ñ&¨"¯(©(¼/Ñ*IÜÐBÓCÐCð 
‡w�w�!‚|�r—w‘w !’|ÜÐJÓKÐKä�:‰:”b—h‘h˜rŸy™y¨"¯)©)Ó4Ó5Ð5r"   c              ó@  — | j                   t        vrt        d«      ‚|€Bt        | j                  dd «      t        j                  | j                   «      j                  z  }t        j                  t
        j                  j                  | j                  |¬«      «      S )z†
    Array API compatible wrapper for :py:func:`np.linalg.pinv <numpy.linalg.pinv>`.

    See its docstring for more information.
    z.Only floating-point dtypes are allowed in pinvNrM   )Úrcond)r3   r   r4   rl   rB   r5   rm   rn   r   r9   r6   Úpinvr8   )r;   rf   s     r#   r|   r|   ÷   st   € ð 	‡w�wÔ&Ñ&ÜÐHÓIÐIð €|Ü�1—7‘7˜2˜3�<Ó ¤2§8¡8¨A¯G©GÓ#4×#8Ñ#8Ñ8ˆÜ�:‰:”b—i‘i—n‘n Q§X¡X°T�nÓ:Ó;Ð;r"   Úreduced©Úmodec         	     óÎ   — | j                   t        vrt        d«      ‚t        t	        t
        j                  t        j                  j                  | j                  |¬«      «      Ž S )z‚
    Array API compatible wrapper for :py:func:`np.linalg.qr <numpy.linalg.qr>`.

    See its docstring for more information.
    z,Only floating-point dtypes are allowed in qrr~   )r3   r   r4   r%   rR   r   r9   r5   r6   Úqrr8   )r;   r   s     r#   r�   r�     sJ   € ð 	‡w�wÔ&Ñ&ÜÐFÓGÐGô ”SœŸ™¤R§Y¡Y§\¡\°!·(±(À \Ó%FÓGÐHÐHr"   c               óÊ   — | j                   t        vrt        d«      ‚t        t	        t
        j                  t        j                  j                  | j                  «      «      Ž S )zŒ
    Array API compatible wrapper for :py:func:`np.linalg.slogdet <numpy.linalg.slogdet>`.

    See its docstring for more information.
    z1Only floating-point dtypes are allowed in slogdet)r3   r   r4   r)   rR   r   r9   r5   r6   Úslogdetr8   rJ   s    r#   rƒ   rƒ     sH   € ð 	‡w�wÔ&Ñ&ÜÐKÓLÐLô œ#œeŸj™j¬"¯)©)×*;Ñ*;¸A¿H¹HÓ*EÓFÐGÐGr"   c                ó¤  — ddl m}m}m}m}m}m}m} ddlm	}	  || «      \  } }
 || «        || «        ||«      \  }} || |«      \  }}|j                  dk(  r|	j                  }n|	j                  } ||«      rdnd}t        j                  |dddd¬	«      5   || ||¬
«      }d d d «        |j                  |d¬«      «      S # 1 sw Y   Œ"xY w)Nr   )Ú
_makearrayÚ_assert_stacked_2dÚ_assert_stacked_squareÚ_commonTypeÚisComplexTypeÚget_linalg_error_extobjÚ_raise_linalgerror_singular)Ú_umath_linalgr   zDD->Dzdd->dÚcallÚignore)r�   ÚinvalidÚoverÚdivideÚunder)Ú	signatureF)Úcopy)Úlinalg.linalgr…   r†   r‡   rˆ   r‰   rŠ   r‹   r6   rŒ   rD   Úsolve1Úsolver5   ÚerrstateÚastype)ÚaÚbr…   r†   r‡   rˆ   r‰   rŠ   r‹   rŒ   Ú_ÚwrapÚtÚresult_tÚgufuncr“   Úrs                    r#   Ú_solver¢   /  s×   € ÷>÷ >ñ >õ 'á�a‹=�D€A€qÙ�qÔÙ˜1ÔÙ˜‹m�G€A€tÙ˜a Ó#�K€A€xð 	‡v�v�‚{Ø×%Ñ%‰à×$Ñ$ˆñ )¨Ô+‘°€IÜ	�‰Ð5¸vØ"¨8¸8ö
Eá�1�a 9Ô-ˆ÷
Eñ �—‘˜¨�Ó.Ó/Ð/÷	
Eð 
Eús   ÂCÃCc               óÆ   — | j                   t        vs|j                   t        vrt        d«      ‚t        j                  t        | j                  |j                  «      «      S )zˆ
    Array API compatible wrapper for :py:func:`np.linalg.solve <numpy.linalg.solve>`.

    See its docstring for more information.
    z/Only floating-point dtypes are allowed in solve)r3   r   r4   r   r9   r¢   r8   rZ   s     r#   r—   r—   K  sG   € ð 
‡x�xÔ'Ñ'¨2¯8©8Ô;KÑ+KÜÐIÓJÐJä�:‰:”f˜RŸY™Y¨¯	©	Ó2Ó3Ð3r"   T©Úfull_matricesc         	     óÎ   — | j                   t        vrt        d«      ‚t        t	        t
        j                  t        j                  j                  | j                  |¬«      «      Ž S )z„
    Array API compatible wrapper for :py:func:`np.linalg.svd <numpy.linalg.svd>`.

    See its docstring for more information.
    z-Only floating-point dtypes are allowed in svdr¤   )r3   r   r4   r-   rR   r   r9   r5   r6   rk   r8   )r;   r¥   s     r#   rk   rk   X  sJ   € ð 	‡w�wÔ&Ñ&ÜÐGÓHÐHô ”cœ%Ÿ*™*¤b§i¡i§m¡m°A·H±HÈM mÓ&ZÓ[Ð\Ð\r"   c               ó¸   — | j                   t        vrt        d«      ‚t        j                  t
        j                  j                  | j                  d¬«      «      S )Nz1Only floating-point dtypes are allowed in svdvalsFrh   )	r3   r   r4   r   r9   r5   r6   rk   r8   rJ   s    r#   Úsvdvalsr¨   i  s?   € Ø‡w�wÔ&Ñ&ÜÐKÓLÐLÜ�:‰:”b—i‘i—m‘m A§H¡H¸�mÓ?Ó@Ð@r"   ©Úaxesc              óÞ   — | j                   t        vs|j                   t        vrt        d«      ‚t        j                  t        j                  | j                  |j                  |¬«      «      S )Nz,Only numeric dtypes are allowed in tensordotr©   )r3   r   r4   r   r9   r5   Ú	tensordotr8   )rF   rG   rª   s      r#   r¬   r¬   q  sK   € ð 
‡x�x”Ñ&¨"¯(©(¼/Ñ*IÜÐFÓGÐGä�:‰:”b—l‘l 2§9¡9¨b¯i©i¸dÔCÓDÐDr"   )rK   r3   c              ó:  — | j                   t        vrt        d«      ‚|€3| j                   t        k(  rt        }n| j                   t
        k(  rt        }t        j                  t        j                  t        j                  | j                  |dd|¬«      «      «      S )zz
    Array API compatible wrapper for :py:func:`np.trace <numpy.trace>`.

    See its docstring for more information.
    z(Only numeric dtypes are allowed in tracerM   r=   )rK   rN   rO   r3   )r3   r   r4   r   r   r	   r
   r   r9   r5   rp   Útracer8   )r;   rK   r3   s      r#   r®   r®   z  sv   € ð 	‡w�w”oÑ%ÜÐBÓCÐCð €}Ø�7‰7”gÒÜ‰EØ�W‰Wœ	Ò!ÜˆEô �:‰:”b—j‘j¤§¡¨!¯(©(¸6ÈÐSUÐ]bÔ!cÓdÓeÐer"   c              ór  — | j                   t        vs|j                   t        vrt        d«      ‚t        | j                  |j                  «      }d|| j                  z
  z  t        | j                  «      z   }d||j                  z
  z  t        |j                  «      z   }||   ||   k7  rt        d«      ‚t        j                  | j                  |j                  «      \  }}t        j                  ||d«      }t        j                  ||d«      }|dd d d …f   |d   z  }t        j                  |d   «      S )Nz)Only numeric dtypes are allowed in vecdot)r   z6x1 and x2 must have the same size along the given axisr=   .).N).r   r   )r3   r   r4   rl   rD   ÚtuplerB   rC   r5   Úbroadcast_arraysr8   Úmoveaxisr   r9   )	rF   rG   r?   rD   Úx1_shapeÚx2_shapeÚx1_Úx2_Úress	            r#   Úvecdotr¸   �  s  € Ø	‡x�x”Ñ&¨"¯(©(¼/Ñ*IÜÐCÓDÐDÜˆr�w‰w˜Ÿ™Ó €DØ�T˜BŸG™G‘^Ñ$¤u¨R¯X©X£Ñ6€HØ�T˜BŸG™G‘^Ñ$¤u¨R¯X©X£Ñ6€HØ��~˜ $™Ò'ÜÐQÓRÐRä×"Ñ" 2§9¡9¨b¯i©iÓ8�H€CˆÜ
�+‰+�c˜4 Ó
$€CÜ
�+‰+�c˜4 Ó
$€Cà
ˆc�4šˆlÑ
˜c )™nÑ
,€CÜ�:‰:�c˜)‘nÓ%Ð%r"   r`   c         	     ój  ‡— | j                   t        vrt        d«      ‚| j                  }|€|j	                  «       }d}nÏt        |t        «      r½t        || j                  «      Št        ˆfd„t        |j                  «      D «       «      }||z   }t        j                  ||«      j                  t        j                  |D �cg c]  }|j                  |   ‘Œ c}t        ¬«      g|D �cg c]  }|j                  |   ‘Œ c}¢­«      }d}n|}t!        j"                  t        j$                  j'                  |||¬«      «      }	|rct)        | j                  «      }
t        |€t        | j                  «      n|| j                  «      }|D ]  }d|
|<   Œ	 t        |	t        |
«      «      }	|	S c c}w c c}w )r_   z.Only floating-point dtypes are allowed in normr   c              3  ó,   •K  — | ]  }|‰vsŒ|–— Œ y ­w)Nr!   )Ú.0ÚiÚnormalized_axiss     €r#   Ú	<genexpr>zvector_norm.<locals>.<genexpr>½  s   øè ø€ ÐJ¡˜1°¸/Ò1I”Q¡ùs   ƒ	�)r3   )r?   r]   r   )r3   r   r4   r8   Úravelro   r°   r   rD   Úranger5   Ú	transposer   ÚprodrB   Úintr   r9   r6   ra   Úlist)r;   r?   r\   r]   rš   Ú_axisÚrestÚnewshaper¼   r·   rB   r½   s              @r#   Úvector_normrÈ   ¥  si  ø€ ð 	‡w�wÔ&Ñ&ÜÐHÓIÐIð 	
�‰€AØ€|à�G‰G‹IˆØ‰Ü	�Dœ%Ô	 ô /¨t°Q·V±VÓ<ˆÜÓJ¤ a§f¡f¤ÓJÓJˆØ˜$‘;ˆÜ�L‰L˜˜HÓ%×-Ñ-Ü�W‰W©$Ó/©$ Q�a—g‘g˜a“j¨$Ñ/´sÔ;ÐYÑSWÓ>XÑSWÈa¸q¿w¹wÀq»zÐSWÑ>XÑYó[ˆà‰àˆä
�*‰*”R—Y‘Y—^‘^ A¨E°s�^Ó;Ó
<€Cáô �Q—W‘W“ˆÜ$°d°l¤U¨1¯6©6¤]ÈÈaÏfÉfÓUˆÛˆAØˆE�!ŠHð ä�cœ5 ›<Ó(ˆà€Jùò! 0ùÒ>Xs   ÃF+Ã+F0
)r7   rE   rI   rP   rS   rU   rW   rY   rb   rd   rt   rw   ry   r|   r�   rƒ   r—   rk   r¨   r¬   r®   r¸   rÈ   )r;   r   r1   ÚboolÚreturnr   )rF   r   rG   r   r?   rÃ   rÊ   r   )r;   r   rÊ   r   )r;   r   rK   rÃ   rÊ   r   )r;   r   rÊ   r   )rF   r   rG   r   rÊ   r   )r;   r   r\   rÉ   r]   z2Optional[Union[int, float, Literal['fro', 'nuc']]]rÊ   r   )r;   r   re   rÃ   rÊ   r   )r;   r   rf   zOptional[Union[float, Array]]rÊ   r   )r;   r   r   zLiteral['reduced', 'complete']rÊ   r%   )r;   r   rÊ   r)   )r;   r   r¥   rÉ   rÊ   r-   )r;   r   rÊ   zUnion[Array, Tuple[Array, ...]])rF   r   rG   r   rª   z/Union[int, Tuple[Sequence[int], Sequence[int]]]rÊ   r   )r;   r   rK   rÃ   r3   zOptional[Dtype]rÊ   r   )
r;   r   r?   z%Optional[Union[int, Tuple[int, ...]]]r\   rÉ   r]   zOptional[Union[int, float]]rÊ   r   );Ú
__future__r   Ú_dtypesr   r   r   r   r	   r
   Ú_manipulation_functionsr   Ú_elementwise_functionsr   Ú_array_objectr   Úcore.numericr   Útypingr   Ú_typingr   r   r   r   r   r   r   Únumpy.linalgÚnumpyr5   r   r%   r)   r-   r7   rE   rI   rP   rS   rU   rW   rY   rb   rd   rt   rw   ry   r|   r�   rƒ   r¢   r—   rk   r¨   r¬   r®   r¸   rÈ   Ú__all__r!   r"   r#   Ú<module>rÖ      sD  ðÝ "÷÷ õ -Ý (Ý  å /å  ÙßI×Iå ã Û ô�ô ôˆzô ô�Jô ô�
ô ð ,1õ ð& 35õ Aó$
/ð ,-õ PóBó 4ó/ó7ð( 27Ðrwõ [ó;ð GKõ :ó05ó6ð$ @Dõ <ð" ?Hõ IóHò00ó84ð /3õ ]ó"Að cdõ Eð )*ÀDõ fð* 46õ &ð, OSÐejð  PQõ +òZ F�r"   