§
    fŠtj;j  ã                   óT   — d dl Zd dlmZ d dlmZ d dlmZ d dlZ G d„ d¦  «        Z	dS )é    N)Úassert_allclose)Úraises)Únnlsc                   óh   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestNNLSc                 óN   — t           j                             d¦  «        | _        d S )Nl   óF_fÐr/ )ÚnpÚrandomÚdefault_rngÚrng)Úselfs    ú\/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/optimize/tests/test_nnls.pyÚsetup_methodzTestNNLS.setup_method	   s   € Ý”9×(Ò(Ð)9Ñ:Ô:ˆŒˆˆó    c                 ó  — t          j        d¦  «                             dd¦  «        }t          j        d¦  «        }||z  }t          ||¦  «        \  }}|dk     sJ ‚t           j                             ||z  |z
  ¦  «        dk     sJ ‚d S )Ng      9@éÿÿÿÿé   g      @gH¯¼šò×z>)r	   ÚarangeÚreshaper   ÚlinalgÚnorm)r   ÚaÚxÚyÚress        r   Ú	test_nnlszTestNNLS.test_nnls   s€   € ÝŒI�d‰OŒO×#Ò# B¨Ñ*Ô*ˆÝŒI�c‰NŒNˆØ�‰EˆÝ�a˜‘”‰ˆˆ3Ø�TŠzˆzˆzˆzÝŒy�~Š~˜q 1™u¨™kÑ*Ô*¨TÒ1Ð1Ð1Ð1Ð1Ð1r   c                 ó  — | j                              ddddg¬¦  «        }t          j        | j                              dddg¬¦  «        ¦  «        }d|d d d…<   ||z  }t	          ||¦  «        \  }}t          ||dd	¬
¦  «         |dk     sJ ‚d S )Néöÿÿÿé
   é2   ©ÚlowÚhighÚsizeéþÿÿÿé   r   ç        ç»½×Ùß|Û=©ÚrtolÚatolçê-�™—q=©r   Úuniformr	   Úabsr   r   ©r   r   r   ÚbÚxactÚrnorms         r   Útest_nnls_tallzTestNNLS.test_nnls_tall   s›   € ØŒH×Ò ¨2°R¸°HÐÑ=Ô=ˆÝŒF�4”8×#Ò#¨°¸"¸Ð#Ñ>Ô>Ñ?Ô?ˆØˆˆ#ˆ#ˆAˆ#‰Ø�‰EˆÝ˜1˜a‘j”j‰ˆˆeÝ˜˜a b¨uÐ5Ñ5Ô5Ð5Ø�uŠ}ˆ}ˆ}ˆ}ˆ}ˆ}r   c                 ó  — | j                              ddddg¬¦  «        }t          j        | j                              dddg¬¦  «        ¦  «        }d|d d d…<   ||z  }t	          ||¦  «        \  }}t          ||d	d
¬¦  «         |dk     sJ ‚d S )Nr   r   éd   éx   r!   r%   r&   r   r'   r(   r)   r,   r-   r0   s         r   Útest_nnls_widezTestNNLS.test_nnls_wide   s�   € ð ŒH×Ò ¨2°S¸#°JÐÑ?Ô?ˆÝŒF�4”8×#Ò#¨°¸#¸Ð#Ñ?Ô?Ñ@Ô@ˆØˆˆ#ˆ#ˆAˆ#‰Ø�‰EˆÝ˜1˜a‘j”j‰ˆˆeÝ˜˜a b¨uÐ5Ñ5Ô5Ð5Ø�uŠ}ˆ}ˆ}ˆ}ˆ}ˆ}r   c                 óð   — | j                              d¬¦  «        }| j                              d¬¦  «        }t          t          ¦  «        5  t	          ||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r   r   )r$   r   é   )Úmaxiter)r   r.   Úassert_raisesÚRuntimeErrorr   ©r   r   r1   s      r   Útest_maxiterzTestNNLS.test_maxiter(   s¹   € àŒH×Ò 'ÐÑ*Ô*ˆØŒH×Ò !ÐÑ$Ô$ˆÝ�<Ñ(Ô(ð 	"ð 	"Ý��A˜qÐ!Ñ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð 	"ð 	"s   ÁA+Á+A/Á2A/c                 óJ  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          |¦  «        }t          j        |¦  «        t          j        t          j        ||f¦  «        ¦  «        z  }|dz  }|dk                         ¦   «         d         }d|||f<   d||t          j        |dz   |dz
  ¦  «        f<   d||<   d||<   t          j        |¦  «        }t          ||z  ||z  ¦  «        \  }	}
t          |	|dd	¬
¦  «         d S )N)Cé   r&   r   r:   r:   r:   rA   é   é   é   é   é   é)   é/   é5   é9   éC   éL   ég   éY   éa   é^   éU   é_   éN   rS   rS   éM   éI   r    r    é8   éD   éb   rR   ép   é†   é‘   éž   é¬   éÕ   éê   éÞ   é×   éØ   rb   éÎ   é·   é‡   éœ   én   é\   é?   é<   é4   rE   é   rD   é   r   r   r   r:   r&   rA   r   r&   )Cr'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   ç¥ oN ç?r'   g¥ oN ÷?rn   ç¥ oN @ç¥ oN @rp   g¯šVSð(@gÙ‚òf°C.@g�¬¡D -4@gÄŽ$]Ða;@g-ÜR´#H@gªãPxÇG@g:Ù6:"Q@g¯šVSðX@gAÐê[”[@gùù™9ï`@g^¿;m�a@g¥ oN g@gYÇëHòoe@çØERW³«i@gºÑÝgÝˆn@g_�ÿZgÀj@gì9 a“�l@gh¨bÞ m@rq   g›¦ˆIže@gëüQ–õg@g1ðD/Dd@g©àBA{/c@gGM^^¾[@gxµ WÂÂY@g›¦ˆIžU@gÙ‚òf°CN@g›¦ˆIžE@gªãPxÇ7@g¯šVSð8@g|¸Ó:@K1@g¥ oN '@rp   g�¬¡D -@gÎˆbÀÒ@r'   ro   r'   r'   r'   )Cr'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   g]<ôTÜo?r'   gTT®À'?r'   gª#ÛIš?g‚'ø|ë¢?r'   g¿…—Îµ?g’ï	kÑ­¨?güõ<h:É?g4 &¥frÂ?gûwÕpèÅ?r'   r'   g£ù™Äc@Ñ?r'   r'   r'   gÛqå2O†?r'   r'   r'   r'   r'   r'   r'   r'   gËšHZ©¨?gæ«ØT‡?r'   r'   gjµœÓE>¬?r'   r'   r'   r'   güö_kœ?r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   ç      à?r   r:   r   r'   r(   r)   )
r	   ÚarrayÚlenÚdiagÚtrilÚonesÚnonzeroÚminimumr   r   )r   ÚnÚkÚdÚNÚAÚwÚnzÚWÚdactÚ_s              r   Útest_nnls_inner_loop_case1z#TestNNLS.test_nnls_inner_loop_case1/   sG  € åŒHðð ð ñô ˆõ ŒHð,ð ,ð ,ñ-ô -ˆõ" ŒHðð ð ñ	ô 	ˆõ  �‰FŒFˆÝŒG�A‰JŒJ�œ¥¤¨!¨Q¨¡¤Ñ1Ô1Ñ1ˆØ�‰Hˆà�1Šf×ÒÑÔ Ô"ˆØˆˆ"ˆbˆ&‰	Ø+-ˆˆ"�bŒj˜˜a™  Q¡Ñ'Ô'Ð
'Ñ(Øˆˆ"‰Øˆˆ"‰ÝŒG�A‰JŒJˆõ
 �q˜1‘u˜a !™eÑ$Ô$‰ˆˆaÝ˜˜a b¨uÐ5Ñ5Ô5Ð5Ð5Ð5r   c                 ó  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          |¦  «        }t          j        |¦  «        t          j        t          j        ||f¦  «        ¦  «        z  }|dz  }|dk                         ¦   «         d         }d|||f<   d||t          j        |dz   |dz
  ¦  «        f<   d||<   d||<   t          j        |¦  «        }t          ||z  ||z  ¦  «        \  }	}
t          j	        |	¦  «        }t          j
        |	dk    ¦  «        sJ ‚t           j                             |||z  z
  t           j        ¬¦  «        d	k     sJ ‚t          |	|d
d¬¦  «         d S )N)Dr:   r   r:   r&   r&   r&   rA   rA   r   é   rC   rC   é   é   é$   é*   r‰   é@   r‹   r‹   éQ   rQ   rQ   rR   rR   rR   éK   rL   éE   rŒ   é>   é;   rW   r‹   éG   rK   éJ   rS   év   re   é™   éŸ   éÒ   éÃ   éÚ   éó   éì   ra   éÄ   é¯   é¹   é•   é�   rM   éh   r�   rV   é(   é    rˆ   é   é	   rm   rB   r&   r:   r:   r:   )Dr'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   ç„±£¢›æ?r'   r'   g#ÅúùVô @r¥   r'   gå�LKæA@gå�LKæA@g„±£¢›&@ç#ÅúùVô0@çàXdÃ“|4@r§   g�¯^u¸B@gÂÐyçK@gðó	‘„šS@g{¶‚ñîÈY@gÔ—æÇ}Z@gÜ¢+š¶o_@gPë@Ú¡b@g[ÛÓê{f@gwf@c£h@gÔ—æÇ}j@go=´¸›i@g†¦Iœ�:m@g
$Út¨£k@gû%Øuh@g(
ã�©¹h@gëH+n5îg@gsþÔ-}g@guqšiœb@gúî*B´l`@gÔ§}õ#]@gÏ¸—÷OW@g¾"(²@V@gÍb"a4ØJ@g„±£¢›F@g¡J?@g(
ã�©¹8@r¦   çT;OÎºÇ#@r¨   ç„±£¢›@r©   ç„±£¢›ö?r¥   rª   )Dr'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   g�"í%&ôa?r'   r'   gY¾ÍM­‡?r'   r'   gR.�†S£?g“Çh¾¤q¢?gwLB›íW¸?gÓQåº?gðò´F
}Œ?g�ÑÇ™H“?gšL'%²†Ê?gô…*òO�Ó?gÞ°acªÁ?r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   g ÏK’u¦?g bb,M‡n?r'   r'   r'   r'   r'   gðêwÕ¬D¸?r'   r'   r'   r'   r'   r'   r'   r'   gL›gÎ?r'   r'   g '¶²²?rr   r   r:   r   )Úordé   r'   r(   r)   )r	   rs   rt   ru   rv   rw   rx   ry   r   ÚcumsumÚallr   r   Úinfr   )r   rz   r{   r|   r}   r~   r   r€   r�   r‚   rƒ   Úps               r   Útest_nnls_inner_loop_case2z#TestNNLS.test_nnls_inner_loop_case2i   sž  € åŒHðð ð ñô ˆõ ŒHð5ð 5ð 5ñ6ô 6ˆõ" ŒHðCð Cð Cñ	Dô 	Dˆõ  �‰FŒFˆÝŒG�A‰JŒJ�œ¥¤¨!¨Q¨¡¤Ñ1Ô1Ñ1ˆØ�‰Hˆà�1Šf×ÒÑÔ Ô"ˆØˆˆ"ˆbˆ&‰	Ø+-ˆˆ"�bŒj˜˜a™  Q¡Ñ'Ô'Ð
'Ñ(Øˆˆ"‰Øˆˆ"‰ÝŒG�A‰JŒJˆå�q˜1‘u˜a !™eÑ$Ô$‰ˆˆaåŒI�d‰OŒOˆÝŒv�d˜a’iÑ Ô Ð Ð Ð ÝŒy�~Š~˜a ! a¡%™i­R¬Vˆ~Ñ4Ô4°rÒ9Ð9Ð9Ð9Ý˜˜a b¨uÐ5Ñ5Ô5Ð5Ð5Ð5r   c                 ó(  — t          j        g d¢¦  «                             dd¦  «        }t          j        dt           j        ¬¦  «        }t          ||¦  «        \  }}t          |t          j        g d¢¦  «        ¦  «         t          |d¦  «         d S )N(½  gÄ\˜ó¨aÕ?g°{ š6‚¼?g'Ý¯�û(©?gÊ§¼y£?g°{ š6‚¬?gîÂz„MÅ?g=YZM[g¼?g×<NÒG¹?gÓ�‘3’ïÂ?g=YZM[gÜ?çèo½‰+j¼?r³   gê|\˜ÒÎÂ?gîN§ OÕ?glÖ7¼”ù÷?gâx7Oµ?g.¡TŸei¼?gÿy�ÊÉ?gsk8jîðâ?g.¡TŸei@gÍ›ÎJÛ±?g YX'i¼?g�ý†„WÏ?g²¦Ó#˜í?gêFl–¡¾@gZIÝÑ\g¬?gZIÝÑ\g¼?gÄ9ãÞöÌÒ?g÷e�…Mõ?gåµQ6÷'@gùÒ¥¸R¨?gÍmÊ‚`¼?g‘1øÔéÕ?gm¥î!Ú÷ü?g�œD&§3@g5åÆs@¥?gGÜ³»îU¼?g,Õ&.çÙ?gÚ’"}ôã@gGÜ³»îU<@g³E¨&.Û¢?g�hü9ÅH¼?g›7ó Ü?g7øìhfÝ@goñ‡hÎ"D@g"Xz”(ô ?gä’v÷˜A¼?g»…”ò+ß?g­ƒWÿn@grË©a˜K@go“síÍž?g{œTD<¼?gê|•!á?gò§º(Ë@g2}èE�YR@gá°œ7š?gô?|2>¼?güŠÙÃ†@ä?gq†pÜ@gÚ+‰è8L^@g7€ã^œ–?gâD`œvC¼?gŽØÕÂ€bç?g\h ‡� @gÂ’y‹ÖIg@g Ö‘^ˆ6•?gVmÓµH¼?g¤i%Û;öè?g9¾Hâ#Û"@gVmÓµHl@gÌ¢'úÈß’?g2t;w­O¼?gZ�:>îì?g*š\:ã'@gy">¹'t@gQ“S7:1�?gÎAÒà%V¼?g€z¦_ið?gÉ»ÀwE0@gÚXáa€@gyÖ™rõ‘�?g3~8‹V¼?g»‡ÓlÁùñ?g«Ú>åñ„3@gÁÃ'ËT…@gŸZ­¢Q"Š?g×Ì;pØO¼?gY)o.Mô?g÷¢t-�ë8@g�&f�'_Ž@gÕÅ‹°Tg‡?g�SU†G¼?g]¢‹‚3žö?gO€¨÷>@g6¾AT•@gÌÐØÊZŒ„?gêÖü@¼?gE”mæ¶ù?gý^BD@goïªÊ}üž@gŽÂeëhT‚?gFá<À!B¼?gC"1¶þÕü?gsí€¿›/I@géÍI×¥@g:H¤Ü‘‡€?g¦˜ƒî<¼?gŸ�®+îÿ?g»9Z²YçN@gz³b1P²­@gœlÊ½Wt}?gÀR7k):¼?g‚ <‡Àç@gU/2eqS@gxÉAö´@g¸8”Ú°z?gÇ’ B*B¼?gtN$_C@g1Š‡’ßX@gt10•zP¾@gˆ@Žv	w?g¸tÙ÷P¼?g1‰~¶	@g,t´ù	`@g¤ˆKËC/Æ@gúÎ( t?gÃ—Ø	\¼?g¯…Ï	@g™E¸ú@d@g¨Õƒ(Ï@g"‡aì]nr?gªÁ!&j¼?g}ó{Ôþ@gá3ÀQFSi@gý¬äú6öÕ@g2šl{p?g’Ëáq¼?g§J�ŠýN@g6±v¥ôo@g]rð0dß@g¢Î‚m?g¶Ü7©·–¼?gTeM—ìT@g©keUt@gÏž‡&îå@g¶h+â	:j?gˆz_Ïz¯¼?gƒ„ÄcÄ@g?úî±¼y@gëkh.«ï@gKòÌßÈtg?g|”“áÔ¼?gÉfoù	u@gëµMÇU€@g�u™�–ö@gÈÑÐ;ûe?gs ?ryð¼?gÁ»VK�V@g�Á~„„@gTŸýó¼ÿ@g¹êÍŽöÕb?g4(Ü	½?g÷M(Î¡@g%mŸá‰@g¦.¯ä§qAg9ÀÍÔ¨À`?g¸ë…{$½?g]§ÛÍ'Ç @g°pS©‰�@gÅ%0œ'.AgN}>%ì ^?gµÜðþå8½?gíÅ•GµÖ"@g›‡–AÊ”@g�oÝœÇAgGG�GÏZ?g÷ÍIB¶R½?gJH�;�:%@gú—™æ%Oš@g_Ñ±/ Agö–ÜëW?g94ÉOf½?gYÞ>\ë'@gÁZ‘É,¨ @gÿºî�'Ag\O¨‡gFU?gGƒFŠy½?gßœ¶Âb+@gcC!>7¥@gìjìbˆ0AgÙ¼“Á’S?gÇ÷Çq‰½?g5ÄØ-ÄW.@gSg.Id®ª@g5ä�@K7AgFÍÂkôP?g~ã¯By”½?gÔ”_¯1@gKY“iâ°@g8*Ý6’@AgbðÚ?1AN?g´`†ŽÕŸ½?gÚ.áb633@g´ çzYMµ@gšb‘4wGAgÁK×ÆàöJ?gr)	›ó³½?gð¢›?H¨5@g‹OY44»@gêÖïXõ¿PAg"4H?gÒ'6ÀÍ½?g5“pëøf8@gå‹¦ÕçÁ@g-ßLÌWAgDáÒÚÌ¢E?gBAMàd¾?g·pMÇ±;@gAF�k±ÑÅ@g4ßWGaAg6
+JsC?gD#ÿÜV¾?gÎ;y�TS?@g×ÏÅ¯Ë@gŠÔð;‚JhAg*$JüfA?g¶ð
Ó¾?g	YÒWÆ°A@gõbÉ¥À�Ñ@gîhpëQqAg{<˜cŒõ>?g‰Û	2¶y¾?gäæ…QÛC@gø�åÜ%Ö@gn)$9í†xAgêòÔqÃi;?g.ZüOW¾?gºx¯û9F@gmk “¤ßÛ@gâN[Z�AgÂwE¼‚u8?gìar‘j¾?g±‡¥«ŽI@g}Oq\È¢á@gTRŠØ«ˆAgtrl�º5?gmºàfeT¾?g�ÿ/��L@gàÆ_–é(æ@g&3gf‘Agúâ[èM3?g!‰‘‘çI¾?gì.5ÍºtO@gyÐ)G1öë@gmw¾˜­˜Agâ@s›¸<1?gNÜ9ù]¾?gk)†)—´Q@gWÕw]ò«ñ@g:°ÿ¼ƒ¡AgËW;×!õ.?gà¨'”¢¾?g¾U½‘ûT@gÂ“50€ö@g¥«‰©Ag¨$¥„¾+?g<‡ixÄÔ¾?gpµø¦â­V@g`²ùŽü@g�8'@Ú±Ag"í/†–(?gÆ-�£]³¾?gãúþ—ï_Y@g:‚óAgoá¡³7¹AgK3êPÔ%?gím¯2¼œ¾?gX9n˜8j\@g)f\M“Ag¦¾&ÖÑÎÁAg²S-fZJ#?gÝiûlzd¾?gkÛˆÛ±_@g9)i¶tJAgir(/|ÉAgú›lóÝ ?gÅÖf�Û½?g9¶@™ö}a@gÿá;åŠAgÙ(QµwÑAgñ«ÛmXm?goâ6i4A½?g/^Ð@c@gâß÷E¯Ag¥£Ôï–@ØAg›T#æ?g¢òªêªê¼?gª¹Õçã^e@g‚]el	Ag£AˆãûàAgxéÖ?gF'Ö;I§¼?gÅ¹8Ëg@gtN6�jé Ag™õ}!pÞçAg6óÔð?gÒy ¼P¼?gš§¹=:ij@gÐW“7ë%Ag±Î»¶ðAg"dÑ §?gÁ7nÏñ»?g¢t´ÕÉGm@g˜‡ãÐ�B*AgÚL÷b÷Agcrý¿�?gðº­®²–»?gº¯0sí;p@gò
ì	SZ0AgRZ„ÜÕZ Bg7xõ40?gc&9,
'»?gqÊ5óòq@g<™U_¶O4AgJŒÜFÒBgwÔñÏcœ?g?–%?}º?g“6pè½«s@gbHÛŒ9AgP Ùå¯�BgÝ8	Îx?g*'¨¾Ì¹?g2ÐÏí{…u@g~«Ž|p»>Ag>;¬Û+ÉBg
gîk+?g·B«5¸¹?g(�x@g„M VSCAgñ8ëyÆBgÏ9W×,‚ ?g-ôÂxU@º?g0Á4r¡{@g`³1|äHAgõe„†ÿC&Bg*Éä”å<ÿ>gì–6"iæ»?g‚d¯_t~€@gÉÐù1±PAgîmQ«Å0BgÍ	©À˜+þ>gª–I½D¾?g¨Eax£„@g¼ò€sÙVAgîjÌÊ9Bg“ãª¢9Oý>g„|‚b2„À?g‚ºW|f¤ˆ@gÕ
Àx_AgŸ€o,óCBg{¹Á™ü%ü>g!D)�ÑÁ?g]ÿâ€	Ý�@gà<ª‚keAg ³$‚NBgºs£¥n5ú>gba7UÎ¢Â?gÑþÏŠ‘@gàËY¶pDlAgøºÎ�»œVBg‘Wòí_‚ø>gæ!?ê¢“Ã?g4hØcC³”@g›­1Ò¼rAgê×îW¼Õ`Bgs‹—Õtõ>g,Lð™ äÂ?g±9u:ôp–@g «¾ÐvAgkÍÛ5»gBg/Ë¦]˜ò>gÒû%#¾Â?gUÝ=™@guX3]ß�|AgìÞ"�1pBgåÉèæð>gÃÒ0›#+Â?gÛ;~;›@g:PsŸúw�AgŒ–vI@vBgUŒ“ë>g¤�kW‰Á?gƒOM†�@g\#õ=F…Ag_Ÿ‚xlp~Bg	N˜nžè>gÞîß@-–Á?gg�ÁÕ–¡ @gX!òÐnìŠAg„V³^£…BgÏc¨5–å>góÁ�RÁ?gXÏæ¾f¢@g£�%ñ;»�Ag‡£Ö«m5ŽBgCŒ?'Lä>g›#*¸KÂ?gà3ÀKÕ¥@ga2G}‰L–Agâýpïœ–Bg*ÌºôSŸè¾g¾á9 0LÂ?gøu�ö†¨@g‰-ª $œAg²økMÃ†—Âg¬?�®7ö¾gÖ&>0èÂ?gNç:x¬@g+s?É¨X¢Ag%˜p�‘Âg»Õ"ê•¿g‹X„	‡Ä?gØV–ùb\±@g`Ëo‚"©Agîf�ü!´yÂgµýQ¼û
?g¤	Û~bŒÄ?g~­ÂéŽ…³@g zó@ª¿¯AgÍ…}s ŒBgué£fó>gò"~(#ÆÃ?gëºÀ4Jµ@g`Æ%T¯F³AgÑºDbì¦Bg$€•›uœ¿gz#â(g Â?gY ¢”µ@g ®ýqÖ$¶Ag6a¤ãJŽÂgI]qÛ7iý>gw»–8ñßÀ?gŠSfv¹¶@g6v_Ôn1ºAg~†j3è BrN   r   )Údtype)gÀídËM�ã?gÆmÑUüq @r'   r'   r'   g|³%íãð?)r	   rs   r   rw   Úfloat64r   r   )r   r~   r1   Úsolr3   s        r   Útest_nnls_gh20302zTestNNLS.test_nnls_gh20302¤   s�   € åŒHðTð Tð TñU ô U ÷j !(¢¨¨A¡¤ðk 	
õl ŒG�B�bœjÐ)Ñ)Ô)ˆÝ˜!˜Q‘Z”Z‰
ˆˆUÝ˜�RœXÐ&JÐ&JÐ&JÑKÔKÑLÔLÐLÝ˜Ð1Ñ2Ô2Ð2Ð2Ð2r   c                 ó"  — g d¢g d¢g d¢g d¢g d¢g}g d¢}t          j        g d¢¦  «        }t          ||¦  «        \  }}t          ||¦  «         t          j        t           j                             ||z  |z
  ¦  «        |z
  ¦  «        dk     sJ ‚d S )	N)góíç*ds?g&²ñ—¼¸¿g’%òUš¦¿gÅÇÙFÚÙ?g‚õ,îXÁÑ¿g[˜§'J¥Ê¿g…uš;Æ¿gs¯ˆ¦ãª?)g·‘_bhýž¿g@Ä68›mÓ¿gFW=o–$Ç?gÞœ½ùä¤±¿gŠ.*€ŸÆÚ¿gIy
f[Ó?g>ú¿kÜTÈ¿gÂÿ½o²J„¿)gmäœÑ*eÐ¿g»Íœh¦¿gý“È�MMÜ?gVjŽ�Á¿g‘‚œz|¿g�a˜{T®¿gÂnCÁãY�?gCý9gTá?)gõ2u51àÒ?g^:Â°,ÂÕ?g.Âî.BšØ?gç£€ˆ•Ó¿g×²_®Ð1Ç?g–ÌO†ùw×¿gˆ.I’–¿g§7Ï·ÑÑ¿)gúúàQoà?g§%T¨¬ÎÉ¿g•û:ûƒµ?g‚0ÉÙ”!Ð?gß?â™õÂ?g´—^=ê†Ð¿gõáU_¡pÄ¿gÄ>dJŒã?)gøò]j	2@gêsQd 2Àg&Åû@+@g{!™­ËRÀg¡á^H'U"@)r'   gÕ«#�]@g¼A²<Ž™F@g´¾°Ç§Y@r'   gœÐ©aôíK@r'   g6"Ú=ž»=@ç‚vIhÂ%,=©r	   rs   r   r   r/   r   r   )r   r~   r1   Údes_solr¶   r   s         r   Útest_nnls_gh21021_ex1zTestNNLS.test_nnls_gh21021_ex1A  sé   € ð5ð 5ð 5ð:ð :ð :ð8ð 8ð 8ð:ð :ð :ð7ð 7ð 7ðˆð 5ð 5ð 5ˆõ ”(ð Hð Hð Hñ Iô Iˆå˜˜1‘:”:‰ˆˆSÝ˜˜WÑ%Ô%Ð%ÝŒv•b”i—n’n Q s¡U¨Q¡YÑ/Ô/°#Ñ5Ñ6Ô6¸Ò>Ð>Ð>Ð>Ð>Ð>r   c                 ó`  — t          j        ddgddgddgddgg¦  «        }t          j        g d	¢¦  «        }t          ||¦  «        \  }}t          |t          j        d
dg¦  «        ¦  «         t          j        t           j                             ||z  |z
  ¦  «        |z
  ¦  «        dk     sJ ‚d S )NgÈ±ô}ˆÐ?g’“ÂÎ¿gû°rò9Wà?g ÞºcÒ?g¦ë {:ê?g¤˜mŒ¢¿gRnP>zŸ?ggÕþADã³¿)g/¸Åt8@gFžá”<@gfèòky�D@gÊÔa¼CSó¿g´,vˆ'K@r'   r¹   rº   ©r   r~   r1   r¶   r   s        r   Útest_nnls_gh21021_ex2zTestNNLS.test_nnls_gh21021_ex2]  sÍ   € ÝŒHØÐ!5Ð6ØÐ 2Ð3ØÐ!5Ð6Ø!Ð#7Ð8ð	:ñ ;ô ;ˆõ
 ŒHð +ð +ð +ñ ,ô ,ˆõ
 ˜˜1‘:”:‰ˆˆSÝ˜�RœXÐ'7¸Ð&=Ñ>Ô>Ñ?Ô?Ð?ÝŒv•b”i—n’n Q s¡U¨Q¡YÑ/Ô/°#Ñ5Ñ6Ô6¸Ò>Ð>Ð>Ð>Ð>Ð>r   c                 óâ  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          j        g d¢¦  «        }t          ||¦  «        \  }}t          |t          j        g d¢¦  «        d¬¦  «         t          j        t           j                             ||z  |z
  ¦  «        |z
  ¦  «        dk     sJ ‚d S )N)gyÚS$µ?geòÓ_æ­?gÔUjHhº¿g+²Áë) ?geJùu66ž¿)g�:Œå1yË?gŽÍ<²´Ë¿g§uÙ€ë°»¿gKK©¿?gjî¢9e;Ã¿)gº“îúš�²?gÌ5
Vçðh¿g8~¶…Ú¥?gc}œèâ—’¿gùQß=™½?)gÔßHÏÍ?gÊO‰<T·¿g¹g	F^SË?gºzÇÌhr?g-Mû¹|DÅ¿)g¸	ÀŽþ˜¿gÆiƒªÄÉ¿gµ�'V� Ÿ?goÏ‡ãæY§¿gSfË¸-¼?)g£}‚cà½Ò¿gòô
ü(Ê¿ggq¸Ò½d•¿gÀ¾ÃÐÃº¿g_nP ©S«?)gÊsI�6Ì?gîðTÎ5�?g³y•Ø.µ?g:'W‚WôÆ¿gORB™;¾¿)gþ¤€>ºº?gŒí–[šz·?grKóbP/¤?g7EþýåT½?gAžÑ÷±F³?)gJ}ä9«ª¿gÎ¸\´Q5Ä¿g�4Ìeµ¿gÖ~Ó¸‰[ ¿g�¹N.ÿ«¿)gg·y„F…¿gteRÆê�?gØKðd¨?gÇBµÌÆ¿g�Åî)º?)gajOÁ ?gäð×o ¦Ñ¿g)´¿~™?g¥¢>¦#Â¿g„îd¢ ¡¿)gõOBisù¿¿gp=ÅWÉ×ž¿gdLªU–]ª¿gòÔXê‰¸ˆ?gOËV¥Ê¢¨?)g�Éµéµ†Ã?gyì7ãÛ�ª¿g`ØaÞ³­?gFK	ß³2±¿g�+gæ*”Â¿)gÌ:±¾ú\¿?g²NZÆ¿gq®VÚXñ™¿gÐsÃ·?½?gU!¨ßa©¯?)g3›õAs¿È?gXRyü³Ë?gµGkFàU“¿gP!ñbDZ´?g:¬;lÌ¿)g&Ù‹Í¨’¿gÕž‹„¾*À?g~7Q#äíŸ¿g3ßû4gœ?g4Œ‘l°?)g,V§™Á?gHÆÑRßTª¿gºÎäY"«Õ?gHÙ1Z†…Ð¿gVÄâ§T%Ñ?)gøÞ#wÇÃÀ?gÞ{¡”³ó¾?gR20ÀÝÁ¿gð¨‡¨ŽÒÅ?g„nFá}òÎ¿)gÎ,.}øOÒ?g~knŸŸ-Þ¿gžŽÊ?g–‚2ç/¡¸¿g¹î¤ÊI¸³¿)g_UnÝRÌ?g¬¹;Oš?gPÔù@M–¿gÇJmš§?g}No»éÉ¿)g}r9­¡!¦¿g|sÖbúÍÆ?gáyÓ	ÍŽ¿g‘æÉ€‘ç±?gt@/W ·¿)gØ©™„Š·Æ?gN1	òUÞÊ¿gœºvrM
°?g^FÂe¨±?gçÈ¡ÅË™?)gºòBC›Ë½¿gWÅ<Â}1Ó?gŠžŒŠ¡?g0™$ôßX�?g»³¦·À¯W¿)gGöX±×õ˜?g£È,4a«?gÍ‹HÙ‚Ž›?gL¤íyõª?gÐ¼àX åÃ?)g†ç{÷Wÿ’¿g¨¾%°r¼©¿g]{1¤DoÐ?gÄ=\_®Ð¿gk7W˜É6Ð?)gË#üª�ÀgˆGÕá… Àg±Ó|2
@gÈPu<M0@g[ëEºÁ~@gëì°ˆ†ù¿gH>�:F@gœÂW@go?Ž`%ÀgLí0@g"Šè®Wkþ?gÃ<ës8uÀgbÞ@¸@gÅàôþ¿g‹1«ˆè÷¿g¥]B$OÀg][€À…Ú9@g‚K#Q%ÀgBÛCù/@gÔ:Ô�½bú¿g9¿(­£øñ¿gZÕ^�g#@gP2«¦0n@gêè0ä„p @gzðFß›3@)r'   r'   g Ó—ÃS@r'   r'   r¹   ©r+   rº   r¾   s        r   Útest_nnls_gh21021_ex3zTestNNLS.test_nnls_gh21021_ex3l  s1  € ÝŒHð9ð 9ð 9ð8ð 8ð 8ð9ð 9ð 9ð8ð 8ð 8ð8ð 8ð 8ð8ð 8ð 8ð9ð 9ð 9ð7ð 7ð 7ð8ð 8ð 8ð7ð 7ð 7ð8ð 8ð 8ð8ð 8ð 8ð9ð 9ð 9ð7ð 7ð 7ð7ð 7ð 7ð7ð 7ð 7ð7ð 7ð 7ð6ð 6ð 6ð8ð 8ð 8ð7ð 7ð 7ð8ð 8ð 8ð7ð 7ð 7ð8ð 8ð 8ð7ð 7ð 7ð7ð 7ð 7ðc28ñ 29ô 29ˆõh ŒHð )ð )ð )ñ *ô *ˆõ ˜˜1‘:”:‰ˆˆSÝ˜�RœXÐ&LÐ&LÐ&LÑMÔMØ"ð	$ñ 	$ô 	$ð 	$åŒv•b”i—n’n Q s¡U¨Q¡YÑ/Ô/°#Ñ5Ñ6Ô6¸Ò>Ð>Ð>Ð>Ð>Ð>r   c                 óø   — t          j        ddgddgddgg¦  «        }t          j        g d¢¦  «        }t          j        t          d¬¦  «        5  t          ||d¬¦  «         ddd¦  «         dS # 1 swxY w Y   dS )	z;Test that using atol parameter triggers deprecation warningr:   r   )r&   r:   r:   z{'atol'}©Úmatchg:Œ0âŽyE>rÁ   N)r	   rs   ÚpytestÚwarnsÚDeprecationWarningr   r>   s      r   Útest_atol_deprecation_warningz&TestNNLS.test_atol_deprecation_warning°  sÆ   € åŒH�q˜!�f˜q !˜f q¨! fÐ-Ñ.Ô.ˆÝŒH�Y�Y�YÑÔˆåŒ\Õ,°JÐ?Ñ?Ô?ð 	"ð 	"Ý��A˜DÐ!Ñ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð 	"ð 	"s   ÁA/Á/A3Á6A3c                 ó  — t          j        g d¢g d¢g d¢g¦  «        }t          j        g d¢g¦  «        j        }t          ||¦  «        \  }}t	          |t          j        g d¢¦  «        ¦  «         t	          |d¦  «         d S )N©ç      ð?rr   ç      ð¿©rÌ   rr   r'   )rÍ   r'   rÌ   )rÍ   ç       @rÏ   )rÌ   rÏ   g      @r'   )r	   rs   ÚTr   r   )r   r~   r1   r   Úrs        r   Útest_2D_singleton_RHS_inputz$TestNNLS.test_2D_singleton_RHS_input¸  s�   € åŒH�o�o�oØ%�o�oØ%�o�oð'ñ (ô (ˆõ ŒHÐ&Ð&Ð&Ð'Ñ(Ô(Ô*ˆÝ�A�q‰zŒz‰ˆˆ1Ý˜�2œ8 O O OÑ4Ô4Ñ5Ô5Ð5Ý˜˜3ÑÔÐÐÐr   c                 ó  — t          j        g d¢g d¢g d¢g d¢g¦  «        }t          j        ddgt           j        ¬¦  «        }t	          j        t          d¬¦  «        5  t          ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	NrË   rÎ   )r'   r'   rÌ   r†   r&   )Úshaper´   zExpected a 1D arrayrÄ   )r	   rs   rw   rµ   rÆ   r   Ú
ValueErrorr   )r   r~   r1   s      r   Ú!test_2D_not_singleton_RHS_input_2z*TestNNLS.test_2D_not_singleton_RHS_input_2Â  sÖ   € åŒH�o�o�oØ%�o�oØ%�o�oØ%�o�oð'ñ (ô (ˆõ ŒG˜1˜a˜&­¬
Ð3Ñ3Ô3ˆÝŒ]�:Ð-BÐCÑCÔCð 	ð 	Ý��A‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁA<Á<B ÂB c                 ó  — g d¢}t           j                             d¦  «        }d\  }}|                     ||¦  «        }d|d d…d d …f<   |                     |¦  «        }t	          ||¦  «        \  }}t          ||¦  «         d S )N)r   r   gÅš€æð?r   r   r   r   gç¸Úõ˜Í?r   r   r   g¦€Õë¸Ð?rŠ   )r   rm   r   r&   )r	   r
   ÚRandomStateÚrandnr   r   )	r   Údesiredr   Ú	n_samplesÚ
n_featuresÚXr   Úcoefrƒ   s	            r   Útest_gh_22791_32bitzTestNNLS.test_gh_22791_32bitÌ  sŒ   € àQÐQÐQˆÝŒi×#Ò# BÑ'Ô'ˆØ %Ñˆ	�:Ø�IŠI�i Ñ,Ô,ˆØˆˆ"ˆ1ˆ"ˆaˆaˆaˆ%‰Ø�IŠI�iÑ Ô ˆÝ�q˜!‘*”*‰ˆˆaÝ˜˜gÑ&Ô&Ð&Ð&Ð&r   N)Ú__name__Ú
__module__Ú__qualname__r   r   r4   r8   r?   r„   r±   r·   r¼   r¿   rÂ   rÉ   rÒ   rÖ   rß   © r   r   r   r      sÿ   € € € € € ð;ð ;ð ;ð2ð 2ð 2ðð ð ð	ð 	ð 	ð"ð "ð "ð86ð 86ð 86ðt96ð 96ð 96ðv[3ð [3ð [3ðz?ð ?ð ?ð8?ð ?ð ?ðB?ð B?ð B?ðH"ð "ð "ð ð  ð  ðð ð ð	'ð 	'ð 	'ð 	'ð 	'r   r   )
Únumpyr	   Únumpy.testingr   rÆ   r   r<   Úscipy.optimizer   r   rã   r   r   ú<module>rç      sŒ   ðØ Ð Ð Ð Ø )Ð )Ð )Ð )Ð )Ð )Ø *Ð *Ð *Ð *Ð *Ð *Ø Ð Ð Ð Ð Ð Ø €€€ðM'ð M'ð M'ð M'ð M'ñ M'ô M'ð M'ð M'ð M'r   