Ë
    õU.jåY  ã            	       óº  — d Z d„ Z e«        [ddlZddlZddlZddlmZmZ ddlm	Z	 ddl
mZ ddlmZ 	 e erej                  j!                  d
«       [[[yddl
mZ 	 ddlmZ ddl
mZ ddlmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_m`Z`maZambZbmcZcmdZdmeZemfZfmgZgmhZhmiZimjZjmkZkmlZlmmZmmnZnmoZompZpmqZqmrZrmsZsmtZtmuZumvZvmwZwmxZxmyZymzZzm{Z{m|Z|m}Z}m~Z~mZm€Z€mZm�Z�m‚Z‚mƒZƒm„Z„m…Z…m†Z†m‡Z‡mˆZˆm‰Z‰mŠZŠm‹Z‹mŒZŒm�Z�mŽZŽm�Z�m�Z�m‘Z‘m’Z’m“Z“m”Z”m•Z•m–Z–m—Z—m˜Z˜m™Z™mšZšm›Z›mœZœm�Z�mžZžmŸZŸm Z m¡Z¡m¢Z¢m£Z£m¤Z¤m¥Z¥m¦Z¦m§Z§m¨Z¨m©Z©mªZªm«Z«m¬Z¬m­Z­m®Z®m¯Z¯m°Z°m±Z±m²Z²m³Z³m´Z´mµZµm¶Z¶m·Z·m¸Z¸m¹Z¹mºZºm»Z»m¼Z¼m½Z½m¾Z¾m¿Z¿mÀZÀmÁZÁmÂZÂmÃZÃmÄZÄmÅZÅmÆZÆmÇZÇmÈZÈmÉZÉmÊZÊmËZËmÌZÌmÍZÍmÎZÎmÏZÏmÐZÐmÑZÑmÒZÒmÓZÓmÔZÔmÕZÕmÖZÖm×Z×mØZØmÙZÙmÚZÚmÛZÛmÜZÜmÝZÝmÞZÞmßZßmàZàmáZámâZâmãZãmäZämåZåmæZæmçZçmèZèméZémêZêmëZëmìZìmíZímîZîmïZïmðZðmñZñmòZòmóZómôZômõZõmöZöm÷Z÷møZømùZùmúZúmûZûmüZümýZýmþZþmÿZÿ�m �Z �m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m	�Z	�m
�Z
�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m�Z�m �Z �m!�Z!�m"�Z"�m#�Z#�m$�Z$�m%�Z%�m&�Z&�m'�Z'�m(�Z(�m)�Z)�m*�Z*�m+�Z+�m,�Z,�m-�Z-�m.�Z.�m/�Z/�m0�Z0�m1�Z1�m2�Z2�m3�Z3�m4�Z4�m5�Z5�m6�Z6�m7�Z7�m8�Z8�m9�Z9�m:�Z:�m;�Z;�m<�Z<�m=�Z=�m>�Z>�m?�Z?�m@�Z@�mA�ZA�mB�ZB�mC�ZC�mD�ZD�mE�ZE�mF�ZF�mG�ZG�mH�ZH�mI�ZI�mJ�ZJ�mK�ZK�mL�ZL�mM�ZM�mN�ZN�mO�ZO�mP�ZP�mQ�ZQ�mR�ZR�mS�ZS�mT�ZT�mU�ZU�mV�ZV�mW�ZW�mX�ZX dD ]  �ZY	  �eZe�eY«       �e[«       �eY<   Œ �[Yddl
�m]�Z] dd�l]�m^�Z_ dd�l`�ma�Za�mb�Zb�mc�Zc dd�ld�me�Ze�mf�Zf�mg�Zg�mh�Zh�mi�Zi�mj�Zj�mk�Zk�ml�Zl�mm�Zm�mn�Zn�mo�Zo�mp�Zp�mq�Zq�mr�Zr dd�ls�mt�Zt�mu�Zu�mv�Zv�mw�Zw�mx�Zx�my�Zy�mz�Zz�m{�Z{�m|�Z|�m}�Z}�m~�Z~�m�Z�m€�Z€�m��Z��m‚�Z‚�mƒ�Zƒ�m„�Z„�m…�Z…�m†�Z†�m‡�Z‡�mˆ�Zˆ�m‰�Z‰�mŠ�ZŠ�m‹�Z‹�mŒ�ZŒ�m��Z��mŽ�ZŽ�m��Z��m��Z��m‘�Z‘�m’�Z’�m“�Z“�m”�Z”�m•�Z•�m–�Z–�m—�Z—�m˜�Z˜�m™�Z™ dd�lš�m›�Z›�mœ�Zœ�m��Z��mž�Zž�mŸ�ZŸ�m �Z �m¡�Z¡�m¢�Z¢�m£�Z£�m¤�Z¤�m¥�Z¥�m¦�Z¦�m§�Z§�m¨�Z¨�m©�Z© dd�lª�m«�Z«�m¬�Z¬�m­�Z­�m®�Z®�m¯�Z¯�m°�Z°�m±�Z±�m²�Z²�m³�Z³�m´�Z´�mµ�Zµ�m¶�Z¶�m·�Z·�m¸�Z¸�m¹�Z¹ dd�lº�m»�Z»�m¼�Z¼�m½�Z½�m¾�Z¾�m¿�Z¿�mÀ�ZÀ�mÁ�ZÁ�mÂ�ZÂ�mÃ�ZÃ�mÄ�ZÄ�mÅ�ZÅ dd�lÆ�mÇ�ZÇ�mÈ�ZÈ�mÉ�ZÉ�mÊ�ZÊ�mË�ZË�mÌ�ZÌ�mÍ�ZÍ�mÎ�ZÎ�mÏ�ZÏ�mÐ�ZÐ�mÑ�ZÑ�mÒ�ZÒ dd�lÓ�mÔ�ZÔ�mÕ�ZÕ�mÖ�ZÖ dd�l×�mØ�ZØ dd�lÙ�mÚ�ZÚ�mÛ�ZÛ�mÜ�ZÜ dd�lÝ�mÞ�ZÞ�mß�Zß�mà�Zà dd�lá�mâ�Zâ�mã�Zã�mä�Zä�må�Zå�mæ�Zæ�mç�Zç�mè�Zè�mé�Zé�mê�Zê�më�Zë�mì�Zì dd�lí�mî�Zî�mï�Zï�mð�Zð�mñ�Zñ�mò�Zò�mó�Zó�mô�Zô�mõ�Zõ�mö�Zö�m÷�Z÷ dd �lø�mù�Zù�mú�Zú�mû�Zû�mü�Zü�mý�Zý�mþ�Zþ�mÿ�Zÿ�m �Z �m�Z�m�Z�m�Z�m�Z�m�Z�m�Z dd!l
�m�Z dd"�l�m	�Z	�m
�Z
�m�Z h d#£�Zd$�Zd%�Zd&�Zd'd(�e�j!                  d)«      fd*�e�j!                  d+«      fd,�e�j!                  d-«      fd.�e�j!                  d.«      fg�Z�eD � �ci c]  \  } }| �e�j!                  | |¬/«      “Œ c}} �Zh d0£�Zd1�Zdd2�l�m�Z e�j.                  �j1                  «         �e�e �ee�j6                  «      z   �e�e�j6                  «      z   �e�e]�j8                  �j6                  «      z   �e�e]�j:                  �j6                  «      z   �e�e]�j<                  �j6                  «      z   �e�e]�j>                  �j6                  «      z   �e�e]�j@                  �j6                  «      z   �e�e]�jB                  �j6                  «      z   �e�e]�jD                  �j6                  «      z   �e�e]�jF                  �j6                  «      z   �e�e]�jH                  �j6                  «      z   �e�e]�jJ                  �j6                  «      z   �e�e]�jL                  �j6                  «      z   �e�e]�jN                  �j6                  «      z   �e�e]�jP                  �j6                  «      z   �e�e]�jR                  �j6                  «      z  h d3£z  «      �Z e�jT                  d4d5¬6«        e�jT                  d4d7¬6«        e�jT                  d4d8¬6«       d9„ �Z+d:„ �Z,dd;�l-�m.�Z.  �e.�e/«      �Z0�[.d<„ �Z1 �e1«        �[1d=„ �Z2e�jf                  d>k(  r«dd?l
�m4�Z4  e�jj                  d@¬A«      5 �Z6 �e2«         �e7�e6«      dkD  rn�e6D ]f  �Z8�e8�jr                  �e4�jt                  u sŒ!�e8�jr                  �j^                  › dB�e8�jv                  › ��Z<dC�j!                  �e<«      Z �e=e«      ‚ �[8�[6ddd«       �[2dD„ �Z>e�j~                  �j�                   �e>«       «       �[>e�j~                  �j‚                  �j…                  «        e�j†                  �j‰                  dEdF«      dFk7  r e�jŠ                  dG�eFdH¬I«       dJ„ �ZG[[[y# e$ r d	ZY �
Œëw xY w# e$ rZdZ ee«      e‚dZ[ww xY w# �e\$ r Y �Œ w xY wc c}} w # 1 sw Y   ŒÔxY w)KaG
  
NumPy
=====

Provides
  1. An array object of arbitrary homogeneous items
  2. Fast mathematical operations over arrays
  3. Linear Algebra, Fourier Transforms, Random Number Generation

How to use the documentation
----------------------------
Documentation is available in two forms: docstrings provided
with the code, and a loose standing reference guide, available from
`the NumPy homepage <https://numpy.org>`_.

We recommend exploring the docstrings using
`IPython <https://ipython.org>`_, an advanced Python shell with
TAB-completion and introspection capabilities.  See below for further
instructions.

The docstring examples assume that `numpy` has been imported as ``np``::

  >>> import numpy as np

Code snippets are indicated by three greater-than signs::

  >>> x = 42
  >>> x = x + 1

Use the built-in ``help`` function to view a function's docstring::

  >>> help(np.sort)
  ... # doctest: +SKIP

For some objects, ``np.info(obj)`` may provide additional help.  This is
particularly true if you see the line "Help on ufunc object:" at the top
of the help() page.  Ufuncs are implemented in C, not Python, for speed.
The native Python help() does not know how to view their help, but our
np.info() function does.

Available subpackages
---------------------
lib
    Basic functions used by several sub-packages.
random
    Core Random Tools
linalg
    Core Linear Algebra Tools
fft
    Core FFT routines
polynomial
    Polynomial tools
testing
    NumPy testing tools
distutils
    Enhancements to distutils with support for
    Fortran compilers support and more (for Python <= 3.11)

Utilities
---------
test
    Run numpy unittests
show_config
    Show numpy build configuration
__version__
    NumPy version string

Viewing documentation using IPython
-----------------------------------

Start IPython and import `numpy` usually under the alias ``np``: `import
numpy as np`.  Then, directly past or use the ``%cpaste`` magic to paste
examples into the shell.  To see which functions are available in `numpy`,
type ``np.<TAB>`` (where ``<TAB>`` refers to the TAB key), or use
``np.*cos*?<ENTER>`` (where ``<ENTER>`` refers to the ENTER key) to narrow
down the list.  To view the docstring for a function, use
``np.cos?<ENTER>`` (to view the docstring) and ``np.cos??<ENTER>`` (to view
the source code).

Copies vs. in-place operation
-----------------------------
Most of the functions in `numpy` return a copy of the array argument
(e.g., `np.sort`).  In-place versions of these functions are often
available as array methods, i.e. ``x = np.array([1,2,3]); x.sort()``.
Exceptions to this rule are documented.

c            	      ó"  — dd l } | j                  j                  | j                  j                  | j                  j	                  | j                  j                  t        «      | j                  d«      «      x}«      r | j                  |«       y y )Né    z
numpy.libs)	ÚosÚpathÚisdirÚabspathÚjoinÚdirnameÚ__file__ÚpardirÚadd_dll_directory)r   Úlibs_dirs     úPC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\numpy/__init__.pyÚ_delvewheel_patch_1_9_0r   [   sc   € ÛØ	‡w�w‡}�} §¡§¡°·±·±¸b¿g¹g¿o¹oÌhÓ>WÐY[×YbÑYbÐdpÓ1qÓ!rÐr�XÔsØˆ×Ñ˜XÕ&ð tó    r   Né   )Ú_NoValueÚ	_CopyMode)Ú__expired_attributes__)Úversion)Ú__version__Fz%Running from numpy source directory.
)Ú_distributor_init)Úshow_configz¸Error importing numpy: you should not try to import numpy from
        its source directory; please exit the numpy source tree, and relaunch
        your python interpreter from there.)Ú_core(B  ÚFalse_Ú
ScalarTypeÚTrue_ÚabsÚabsoluteÚacosÚacoshÚaddÚallÚallcloseÚamaxÚaminÚanyÚarangeÚarccosÚarccoshÚarcsinÚarcsinhÚarctanÚarctan2ÚarctanhÚargmaxÚargminÚargpartitionÚargsortÚargwhereÚaroundÚarrayÚarray2stringÚarray_equalÚarray_equivÚ
array_reprÚ	array_strÚ
asanyarrayÚasarrayÚascontiguousarrayÚasfortranarrayÚasinÚasinhÚatanÚatanhÚatan2ÚastypeÚ
atleast_1dÚ
atleast_2dÚ
atleast_3dÚ	base_reprÚbinary_reprÚbitwise_andÚbitwise_countÚbitwise_invertÚbitwise_left_shiftÚbitwise_notÚ
bitwise_orÚbitwise_right_shiftÚbitwise_xorÚblockÚboolÚbool_Ú	broadcastÚbusday_countÚbusday_offsetÚbusdaycalendarÚbyteÚbytes_Úcan_castÚcbrtÚcdoubleÚceilÚ	characterÚchooseÚclipÚclongdoubleÚ
complex128Ú	complex64ÚcomplexfloatingÚcompressÚconcatÚconcatenateÚconjÚ	conjugateÚconvolveÚcopysignÚcopytoÚ	correlateÚcosÚcoshÚcount_nonzeroÚcrossÚcsingleÚcumprodÚcumsumÚcumulative_prodÚcumulative_sumÚ
datetime64Údatetime_as_stringÚdatetime_dataÚdeg2radÚdegreesÚdiagonalÚdivideÚdivmodÚdotÚdoubleÚdtypeÚeÚeinsumÚeinsum_pathÚemptyÚ
empty_likeÚequalÚerrstateÚeuler_gammaÚexpÚexp2Úexpm1ÚfabsÚfinfoÚflatiterÚflatnonzeroÚflexibleÚfloat16Úfloat32Úfloat64Úfloat_powerÚfloatingÚfloorÚfloor_divideÚfmaxÚfminÚfmodÚformat_float_positionalÚformat_float_scientificÚfrexpÚfrom_dlpackÚ
frombufferÚfromfileÚfromfunctionÚfromiterÚ
frompyfuncÚ
fromstringÚfullÚ	full_likeÚgcdÚgenericÚ	geomspaceÚget_printoptionsÚ
getbufsizeÚgeterrÚ
geterrcallÚgreaterÚgreater_equalÚhalfÚ	heavisideÚhstackÚhypotÚidentityÚiinfoÚindicesÚinexactÚinfÚinnerÚint16Úint32Úint64Úint8Úint_ÚintcÚintegerÚintpÚinvertÚ	is_busdayÚiscloseÚisdtypeÚisfiniteÚ	isfortranÚisinfÚisnanÚisnatÚisscalarÚ
issubdtypeÚlcmÚldexpÚ
left_shiftÚlessÚ
less_equalÚlexsortÚlinspaceÚlittle_endianÚlogÚlog10Úlog1pÚlog2Ú	logaddexpÚ
logaddexp2Úlogical_andÚlogical_notÚ
logical_orÚlogical_xorÚlogspaceÚlongÚ
longdoubleÚlonglongÚmatmulÚmatvecÚmatrix_transposeÚmaxÚmaximumÚmay_share_memoryÚmeanÚmemmapÚminÚmin_scalar_typeÚminimumÚmodÚmodfÚmoveaxisÚmultiplyÚnanÚndarrayÚndimÚnditerÚnegativeÚnested_itersÚnewaxisÚ	nextafterÚnonzeroÚ	not_equalÚnumberÚobject_ÚonesÚ	ones_likeÚouterÚ	partitionÚpermute_dimsÚpiÚpositiveÚpowÚpowerÚprintoptionsÚprodÚpromote_typesÚptpÚputÚputmaskÚrad2degÚradiansÚravelÚrecarrayÚ
reciprocalÚrecordÚ	remainderÚrepeatÚrequireÚreshapeÚresizeÚresult_typeÚright_shiftÚrintÚrollÚrollaxisÚroundÚ
sctypeDictÚsearchsortedÚset_printoptionsÚ
setbufsizeÚseterrÚ
seterrcallÚshapeÚshares_memoryÚshortÚsignÚsignbitÚsignedintegerÚsinÚsingleÚsinhÚsizeÚsortÚspacingÚsqrtÚsquareÚsqueezeÚstackÚstdÚstr_ÚsubtractÚsumÚswapaxesÚtakeÚtanÚtanhÚ	tensordotÚtimedelta64ÚtraceÚ	transposeÚtrue_divideÚtruncÚ	typecodesÚubyteÚufuncÚuintÚuint16Úuint32Úuint64Úuint8ÚuintcÚuintpÚulongÚ	ulonglongÚunsignedintegerÚunstackÚushortÚvarÚvdotÚvecdotÚvecmatÚvoidÚvstackÚwhereÚzerosÚ
zeros_like)Úfloat96Úfloat128Ú
complex192Ú
complex256)Úlib)Úscimath)Ú	histogramÚhistogram_bin_edgesÚhistogramdd)Ú	nanargmaxÚ	nanargminÚ
nancumprodÚ	nancumsumÚnanmaxÚnanmeanÚ	nanmedianÚnanminÚnanpercentileÚnanprodÚnanquantileÚnanstdÚnansumÚnanvar)&ÚselectÚ	piecewiseÚ
trim_zerosÚcopyÚiterableÚ
percentileÚdiffÚgradientÚangleÚunwrapÚsort_complexÚflipÚrot90ÚextractÚplaceÚ	vectorizeÚasarray_chkfiniteÚaverageÚbincountÚdigitizeÚcovÚcorrcoefÚmedianÚsincÚhammingÚhanningÚbartlettÚblackmanÚkaiserÚ	trapezoidÚtrapzÚi0ÚmeshgridÚdeleteÚinsertÚappendÚinterpÚquantile)ÚdiagÚdiagflatÚeyeÚfliplrÚflipudÚtriÚtriuÚtrilÚvanderÚhistogram2dÚmask_indicesÚtril_indicesÚtril_indices_fromÚtriu_indicesÚtriu_indices_from)Úapply_over_axesÚapply_along_axisÚarray_splitÚcolumn_stackÚdsplitÚdstackÚexpand_dimsÚhsplitÚkronÚput_along_axisÚ	row_stackÚsplitÚtake_along_axisÚtileÚvsplit)ÚiscomplexobjÚ	isrealobjÚimagÚ	iscomplexÚisrealÚ
nan_to_numÚrealÚreal_if_closeÚtypenameÚmintypecodeÚcommon_type)Úediff1dÚin1dÚintersect1dÚisinÚ	setdiff1dÚsetxor1dÚunion1dÚuniqueÚ
unique_allÚunique_countsÚunique_inverseÚunique_values)ÚfixÚisneginfÚisposinf)Úpad)Úshow_runtimeÚget_includeÚinfo)Úbroadcast_arraysÚbroadcast_shapesÚbroadcast_to)ÚpolyÚpolyintÚpolyderÚpolyaddÚpolysubÚpolymulÚpolydivÚpolyvalÚpolyfitÚpoly1dÚroots)
ÚsavetxtÚloadtxtÚ
genfromtxtÚloadÚsaveÚsavezÚpackbitsÚsavez_compressedÚ
unpackbitsÚ	fromregex)Údiag_indices_fromÚdiag_indicesÚfill_diagonalÚndindexÚndenumerateÚix_Úc_Úr_Ús_ÚogridÚmgridÚunravel_indexÚravel_multi_indexÚ	index_exp)Ú	matrixlib)ÚasmatrixÚbmatÚmatrix>   ÚmaÚfftr`  ÚrecÚcharÚcoreÚf2pyÚtestÚdtypesÚlinalgÚrandomÚtypingÚstringsÚtestingÚ	ctypeslibÚ
exceptionsÚ
polynomiala–  module 'numpy' has no attribute '{n}'.
`np.{n}` was a deprecated alias for the builtin `{n}`. To avoid this error in existing code, use `{n}` by itself. Doing this will not modify any behavior and is safe. {extended_msg}
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
    https://numpy.org/devdocs/release/1.20.0-notes.html#deprecationszCIf you specifically wanted the numpy scalar type, use `np.{}` here.zÃWhen replacing `np.{}`, you may wish to use e.g. `np.int64` or `np.int32` to specify the precision. If you wish to review your current use, check the release note link for additional information.)ÚobjectÚ Úfloatr•   Úcomplexrc   Ústrr7  Úint©ÚnÚextended_msg>   r  Úbytesr  z2023.12)Ú__array_namespace_info__>   Úemathr   r   r  Úignoreznumpy.dtype size changed)Úmessageznumpy.ufunc size changedznumpy.ndarray size changedc                 óv  — dd l }| dk(  rdd lm} |S | dk(  rdd lm} |S | dk(  rdd lm} |S | dk(  rdd lm} |S | dk(  rdd l	m
} |S | dk(  rdd lm} |S | dk(  rdd lm} |S | d	k(  rdd lm}	 |	S | d
k(  rdd lm}
 |
S | dk(  rdd lm} |S | dk(  rdd lm} |S | dk(  rdd lm} |S | dk(  rdd lm} |S | dk(  rdd lm} |S | dk(  rt;        dd ¬«      ‚| dk(  rdd lm} |S | dk(  rdd l m!} |S | dk(  rdtD        v rdd l#m$} |S t;        dd ¬«      ‚| tJ        v r |jL                  d| › d�tN        d¬«       | tP        v rt;        tP        |    d ¬«      ‚| tR        v rt;        d| › dtR        |    › �d ¬«      ‚| dk(  r+ |jL                  dtT        d¬«       dd lm} |jV                  S t;        djY                  tZ        | «      «      ‚) Nr   r  r   r  r  r  rÿ  r  r  r  Úmatlibr  r	  r  r  Ú	array_apiz9`numpy.array_api` is not available from numpy 2.0 onwards)Únamer  r
  Ú	distutilsz;`numpy.distutils` is not available from Python 3.12 onwardszIn the future `np.z4` will be defined as the corresponding NumPy scalar.é   ©Ú
stacklevelz`np.z(` was removed in the NumPy 2.0 release. Ú	chararrayzŠ`np.chararray` is deprecated and will be removed from the main namespace in the future. Use an array with a string or bytes dtype instead.z!module {!r} has no attribute {!r}).ÚwarningsÚnumpy.linalgr  Ú	numpy.fftr   Únumpy.dtypesr  Únumpy.randomr  Únumpy.polynomialr  Únumpy.marÿ  Únumpy.ctypeslibr  Únumpy.exceptionsr  Únumpy.testingr  Únumpy.matlibr  Ú
numpy.f2pyr  Únumpy.typingr	  Ú	numpy.recr  Ú
numpy.charr  ÚAttributeErrorÚ
numpy.corer  Únumpy.stringsr
  Ú__numpy_submodules__Únumpy.distutilsr!  Ú__future_scalars__ÚwarnÚFutureWarningÚ__former_attrs__r   ÚDeprecationWarningr%  ÚformatÚ__name__)Úattrr&  r  r   r  r  r  rÿ  r  r  r  r  r  r	  r  r  r  r
  r!  s                      r   Ú__getattr__rB  S  s%  € ãà�8ÒÝ)ØˆMØ�UŠ]Ý#ØˆJØ�XÒÝ)ØˆMØ�XÒÝ)ØˆMØ�\Ò!Ý1ØÐØ�TŠ\Ý!ØˆIØ�[Ò Ý/ØÐØ�\Ò!Ý1ØÐØ�YÒÝ+ØˆNØ�XÒÝ)ØˆMØ�VŠ^Ý%ØˆKØ�XÒÝ)ØˆMØ�UŠ]Ý#ØˆJØ�VŠ^Ý%ØˆKØ�[Ò Ü ð "5Ø;?ôAð Aà�VŠ^Ý%ØˆKØ�YÒÝ+ØˆNØ�[Ò ØÔ2Ñ2Ý3Ø Ð ä$ð &;ØAEôGð Gð Ô%Ñ%ð ˆH�M‰MØ$ T Fð +.ð .Ü/<ÈõLð Ô#Ñ#Ü Ô!1°$Ñ!7¸dÔCÐCàÔ)Ñ)Ü Ø�t�fÐDÜ)¨$Ñ/Ð0ð2àôð ð �;ÒØˆH�M‰Mð*ä+=È!õMõ &Ø—>‘>Ð!äð $ß$*¡F¬8°TÓ$:ó<ð 	<r   c                  ód   — t        «       j                  «       t        z  } | h d£z  } t        | «      S )N>   ÚtestsÚcompatr  r   Úconftestr  r!  rû  )ÚglobalsÚkeysr8  Úlist)Úpublic_symbolss    r   Ú__dir__rK  ®  s7   € ä‹I�N‰NÓÔ3Ñ3ð 	ð 	ò 
ñ 	
ˆô �NÓ#Ð#r   )ÚPytestTesterc                  óâ   — 	 t        dt        ¬«      } t        | j                  | «      t        d«      z
  «      dk  st        ‚y# t        $ r" d}t        |j                  t        «      «      d‚w xY w)aŽ  
        Quick sanity checks for common bugs caused by environment.
        There are some cases e.g. with wrong BLAS ABI that cause wrong
        results under specific runtime conditions that are not necessarily
        achieved during test suite runs, and it is useful to catch those early.

        See https://github.com/numpy/numpy/issues/8577 and other
        similar bug reports.

        r"  )r‚   ç       @gñhãˆµøä>zúThe current Numpy installation ({!r}) fails to pass simple sanity checks. This can be caused for example by incorrect BLAS library being linked in, or by mixing package managers (pip, conda, apt, ...). Search closed numpy issues for similar problems.N)r   r”   r   r€   ÚAssertionErrorÚRuntimeErrorr?  r
   )ÚxÚmsgs     r   Ú_sanity_checkrS  ½  sj   € ð
	?Ü�QœgÔ&ˆAÜ�q—u‘u˜Q“x¤'¨#£,Ñ.Ó/°$Ò6Ü$Ð$ð 7øäò 	?ð8ˆCô
 ˜sŸz™z¬(Ó3Ó4¸$Ð>ð	?ús   ‚A A Á+A.c                  óŽ   — 	 t        g d¢«      } t        ddd«      }t        | |«      }t        ||dd¬«      }y# t        $ r Y yw xY w)z‡
        Quick Sanity check for Mac OS look for accelerate build bugs.
        Testing numpy polyfit calls init_dgelsd(LAPACK)
        )g      @rN  g      ð?r   r"  é   T)r‡  N)r5   rÕ   rß  rà  Ú
ValueError)ÚcrQ  ÚyÚ_s       r   Ú_mac_os_checkrZ  ×  sL   € ð
	Ü’lÓ#ˆAÜ˜˜A˜qÓ!ˆAÜ˜˜1“ˆAÜ˜˜1˜a TÔ*‰AøÜò 	Ùð	ús   ‚58 ¸	AÁAÚdarwin)r  T)r  z: a  Polyfit sanity test emitted a warning, most likely due to using a buggy Accelerate backend.
If you compiled yourself, more information is available at:
https://numpy.org/devdocs/building/index.html
Otherwise report this to the vendor that provided NumPy.

{}
c                  óR  — t         j                  j                  dd«      } t        j                  dk(  rP| €N	 d} t        j
                  «       j                  j                  d«      dd }t        d„ |D «       «      }|dk  rd	} | S | €d} | S t        | «      } | S # t        $ r d	} Y | S w xY w)
a*  
        We usually use madvise hugepages support, but on some old kernels it
        is slow and thus better avoided. Specifically kernel version 4.6
        had a bug fix which probably fixed this:
        https://github.com/torvalds/linux/commit/7cf91a98e607c2f935dbcc177d70011e95b8faff
        ÚNUMPY_MADVISE_HUGEPAGENÚlinuxr   Ú.r"  c              3   ó2   K  — | ]  }t        |«      –— Œ y ­w)N)r  )Ú.0Úvs     r   Ú	<genexpr>z!hugepage_setup.<locals>.<genexpr>  s   è ø€ Ð&F±~°!¤s¨1§v±~ùs   ‚)é   é   r   )r   ÚenvironÚgetÚsysÚplatformÚunameÚreleaser³  ÚtuplerV  r  )Úuse_hugepageÚkernel_versions     r   Úhugepage_setupro  ü  sÁ   € ô —z‘z—~‘~Ð&>ÀÓEˆÜ�<‰<˜7Ò" |Ð';ð!Ø �Ü!#§¡£×!3Ñ!3×!9Ñ!9¸#Ó!>¸rÀÐ!B�Ü!&Ñ&F±~Ó&FÓ!F�Ø! FÒ*Ø#$�Lð Ðð Ð!àˆLð Ðô ˜|Ó,ˆLØÐøô ò !Ø ‘ð Ðð!ús   ·AB ÂB&Â%B&ÚNPY_PROMOTION_STATEÚweakzdNPY_PROMOTION_STATE was a temporary feature for NumPy 2.0 transition and is ignored after NumPy 2.2.r"  r#  c                  ót   — ddl m}  t         | t        «      j	                  d«      j                  «       «      gS )Nr   ©ÚPathÚ_pyinstaller)Úpathlibrt  r  r
   Ú	with_nameÚresolvers  s    r   Ú_pyinstaller_hooks_dirry  *  s+   € Ý Ü‘Dœ“N×,Ñ,¨^Ó<×DÑDÓFÓGÐHÐHr   (H  Ú__doc__r   r   rh  r&  Ú_globalsr   r   Ú_expired_attrs_2_0r   r  r   r   Ú__NUMPY_SETUP__Ú	NameErrorÚstderrÚwriter   Únumpy.__config__r   ÚImportErrorrƒ   rR  r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r€   r�   r‚   r„   r…   r†   r‡   rˆ   r‰   rŠ   r‹   rŒ   r�   rŽ   r�   r�   r‘   r’   r“   r”   r•   r–   r—   r˜   r™   rš   r›   rœ   r�   rž   rŸ   r    r¡   r¢   r£   r¤   r¥   r¦   r§   r¨   r©   rª   r«   r¬   r­   r®   r¯   r°   r±   r²   r³   r´   rµ   r¶   r·   r¸   r¹   rº   r»   r¼   r½   r¾   r¿   rÀ   rÁ   rÂ   rÃ   rÄ   rÅ   rÆ   rÇ   rÈ   rÉ   rÊ   rË   rÌ   rÍ   rÎ   rÏ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rØ   rÙ   rÚ   rÛ   rÜ   rÝ   rÞ   rß   rà   rá   râ   rã   rä   rå   ræ   rç   rè   ré   rê   rë   rì   rí   rî   rï   rð   rñ   rò   ró   rô   rõ   rö   r÷   rø   rù   rú   rû   rü   rý   rþ   rÿ   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r"  r#  r$  r%  r&  r'  r(  r)  r*  r+  r,  r-  r.  r/  r0  r1  r2  r3  r4  r5  r6  r7  r8  r9  r:  r;  r<  r=  r>  r?  r@  rA  rB  rC  rD  rE  rF  rG  rH  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  rR  rS  rT  rU  rV  rW  rX  rY  rZ  r[  ÚtaÚgetattrrG  r5  r`  ra  r  Úlib._histograms_implrb  rc  rd  Úlib._nanfunctions_implre  rf  rg  rh  ri  rj  rk  rl  rm  rn  ro  rp  rq  rr  Úlib._function_base_implrs  rt  ru  rv  rw  rx  ry  rz  r{  r|  r}  r~  r  r€  r�  r‚  rƒ  r„  r…  r†  r‡  rˆ  r‰  rŠ  r‹  rŒ  r�  rŽ  r�  r�  r‘  r’  r“  r”  r•  r–  r—  r˜  Úlib._twodim_base_implr™  rš  r›  rœ  r�  rž  rŸ  r   r¡  r¢  r£  r¤  r¥  r¦  r§  Úlib._shape_base_implr¨  r©  rª  r«  r¬  r­  r®  r¯  r°  r±  r²  r³  r´  rµ  r¶  Úlib._type_check_implr·  r¸  r¹  rº  r»  r¼  r½  r¾  r¿  rÀ  rÁ  Úlib._arraysetops_implrÂ  rÃ  rÄ  rÅ  rÆ  rÇ  rÈ  rÉ  rÊ  rË  rÌ  rÍ  Úlib._ufunclike_implrÎ  rÏ  rÐ  Úlib._arraypad_implrÑ  Úlib._utils_implrÒ  rÓ  rÔ  Úlib._stride_tricks_implrÕ  rÖ  r×  Úlib._polynomial_implrØ  rÙ  rÚ  rÛ  rÜ  rÝ  rÞ  rß  rà  rá  râ  Úlib._npyio_implrã  rä  rå  ræ  rç  rè  ré  rê  rë  rì  Úlib._index_tricks_implrí  rî  rï  rð  rñ  rò  ró  rô  rõ  rö  r÷  rø  rù  rú  rû  Ú_matrü  rý  rþ  r8  Ú_msgÚ_specific_msgÚ_int_extended_msgr?  Ú
_type_infor=  r:  Ú__array_api_version__Ú_array_api_infor  Ú	getlimitsÚ_register_known_typesrI  ÚsetÚ__all__Ú_histograms_implÚ_nanfunctions_implÚ_function_base_implÚ_twodim_base_implÚ_shape_base_implÚ_type_check_implÚ_arraysetops_implÚ_ufunclike_implÚ_arraypad_implÚ_utils_implÚ_stride_tricks_implÚ_polynomial_implÚ_npyio_implÚ_index_tricks_implÚfilterwarningsrB  rK  Únumpy._pytesttesterrL  r@  r  rS  rZ  ri  r  Úcatch_warningsÚwÚlenÚ_wnÚcategoryÚRankWarningr  Úerror_messagerP  ro  Ú
multiarrayÚ_set_madvise_hugepageÚ_multiarray_umathÚ_reload_guardrf  rg  r;  ÚUserWarningry  r  s   00r   Ú<module>rº     s	  ðñVòt'ñ Ô Øó 
Û 
Û ç )Ý 6õ Ý  ðÙñ Ø‡J�J×ÑÐ=Ô>ðn ˆ‰Xõi $ð&Ý0õ ÷0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0÷ 0ñ 0óh B‰ð	Ú# E©2Ó.ŠG‹I‘bŠMð Bñ
 	çß%Ð%÷÷ ð ÷÷ ÷ ÷ ÷ ÷ ÷ ô ÷
÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ô ÷÷ ÷ ÷ ÷ ÷ ÷ ÷ ð ÷
÷ ÷ ÷ ÷ ÷ ÷ ÷ ð ÷
÷ ÷ ÷ ÷ ÷ ð ÷÷ ÷ ÷ ÷ ÷ ô ÷ =×<Ð<ß'Ð'÷÷ ð ÷÷ ð ÷÷ ÷ ÷ ÷ ÷ ð ÷÷ ÷ ÷ ÷ ô ÷÷ ÷ ÷ ÷ ÷ ÷ ô ÷ $÷÷ ð òÑð	Oñ 	ð 	Nñ ð	"ñ ð 	Ø	‘-×&Ò& yÓ1Ð2Ø	‘M×(Ò(¨Ó6Ð7Ø	‘×$Ò$ VÓ,Ð-Ø	Ñ!×(Ò(¨Ó/Ð0ð2�Jò !+ôá *‰_ˆQ�ð 
‰D�KŠK˜!¨,ˆKÓ7Ñ	7Ø *òÑò 4Ñà%Ñç9Ð9ð 
‡O‚O×)Ò)Ô+âÙÚˆE�MŠMÓñ	â‰D�LŠLÓñ	ò 	‰C× Ò ×(Ò(Ó)ñ	*ò 	‰C×"Ò"×*Ò*Ó+ñ		,ò
 	‰C×#Ò#×+Ò+Ó,ñ	-ò 	‰C×!Ò!×)Ò)Ó*ñ	+ò 	‰C× Ò ×(Ò(Ó)ñ	*ò 	‰C× Ò ×(Ò(Ó)ñ	*ò 	‰C×!Ò!×)Ò)Ó*ñ		+ò 	‰C×Ò×'Ò'Ó(ñ
	)ò 	‰C×Ò×&Ò&Ó'ñ	(ò 	‰C�OŠO×#Ò#Ó$ñ	%ò 	‰C×#Ò#×+Ò+Ó,ñ	-ò 	‰C× Ò ×(Ò(Ó)ñ	*ò 	‰C�OŠO×#Ò#Ó$ñ	%ò  	‰C×"Ò"×*Ò*Ó+ñ!	,ò" 	Lñ#	Ló�Gð, €H×Ò˜HÐ.HÕIØ€H×Ò˜HÐ.HÕIØ€H×Ò˜HÐ.JÕKóY<óv$÷ 1Ð0Ú™Ó!�DÙó?ò. „OÙóð ‡|‚|�xÒß Ø$ˆX×$Ò$¨DÕ1±QÚŒOâ‘1‹v˜ŠzÜ‘CÙ—|’|¡z×'=Ò'=Ò=ñ  #Ÿ|š|×4Ò4Ð5°R¹¿º°}ÐEñ &ð;÷
 <Bº6Á-Ó;Pð ò +¨3Ó/Ð/ð ñ Ù÷' 2ñ( 	óð< 
×Ò×*Ò*ª>Ó+;Ô<Ùð
 
×Ò×&Ò&×4Ò4Ô6ð 	�
Š
�ŠÐ,¨fÓ5¸Ò?Øˆ�Šð9á Aõ	'óIð ˆ‰Xøðw ò ØƒOðûð ò &ð/ˆñ ˜#Ó AÐ%ûð	&ûñ| ò 	Úð	üóN÷B 2Ð1úsT   µl Ál& Î,l>Ü mç7:mè2Amìl#ì"l#ì&l;ì+l6ì6l;ì>mímím