ó
    “’¤j›  ã            	      ó–  • % S SK Jr  S SKrS SKrS SKrS SKrS SKJr  S SKJ	r	J
r
  S SKJrJrJr  S SKrS SKJrJrJr  S SKrS SKrS SKJrJr  S SKJr  S SKJrJr  S S	KJ r    " S
 S5      r! " S S5      r" " S S5      r# " S S5      r$ " S S5      r%S r&S r'\'S 5       r(S r)S r*\RV                  RY                  S/ SQ5      S 5       r-S r.S r/S r0SS S!.S"S#/04SS S!.S"S"S#/04/r1S$\2S%'   S0 0 4SS S!.SS S!.0 4S#S 0S"S 0S"S"S#/04/r3S&\2S''   \RV                  RY                  S(\15      S) 5       r4\RV                  RY                  S*\35      S+ 5       r5S, r6S- r7S. r8S/ r9S0 r:S1 r;S2 r<S3 r=\RV                  RY                  S4\R|                  " S55      R                  S6S75      S"4\R|                  " S55      S"4\R|                  " S55      \R|                  " S65      4/5      S8 5       r@S9 rAS: rBS; rCS< rDS= rES> rFS? rGS@ rHSA rISB rJSC rKSD rLSE rMSF rNSG rOSH rPSI rQ\RV                  RY                  SJ/ SKQ5      SL 5       rRSM rSSN rTSO rUSP rVg)Qé    )ÚannotationsN)ÚAny)ÚpatchÚMock)ÚdatetimeÚdateÚ	timedelta)Úassert_array_equalÚassert_approx_equalÚassert_array_almost_equal)Ú_apiÚcbook)Údelete_masked_pointsÚ
strip_math)Ú
ModuleTypec                  ó,   • \ rS rSrS rS rS rS rSrg)ÚTest_delete_masked_pointsé   c                ó®   • [         R                  " [        5         [        S[        R
                  " SS5      5        S S S 5        g ! , (       d  f       g = f)Nza stringg      ð?g      @)ÚpytestÚraisesÚ
ValueErrorr   ÚnpÚarange©Úselfs    Ú©C:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\matplotlib/tests/test_cbook.pyÚtest_bad_first_argÚ,Test_delete_masked_points.test_bad_first_arg   s/   € Ü�]Š]œ:Õ&Ü  ¬R¯YªY°s¸CÓ-@ÔA÷ '×&Ö&ús   ›"AÁ
Ac                ó  • / SQnSSS[         R                  [         R                  S/n[        X5      u  p4/ SQn[        U[         R                  " U5      U   5        [        U[         R                  " U5      U   5        g )N)ÚaÚbÚcÚdÚeÚfé   é   é   é   )r   r'   r(   é   )r   Únanr   r
   Úarray)r   Úa1Úa2Úresult1Úresult2Úinds         r   Útest_string_seqÚ)Test_delete_masked_points.test_string_seq   sa   € Ú+ˆØ��A”r—v‘vœrŸv™v qÐ)ˆÜ/°Ó7ÑˆÚˆÜ˜7¤B§H¢H¨R£L°Ñ$5Ô6Ü˜7¤B§H¢H¨R£L°Ñ$5Õ6ó    c           
     óÄ  • [        SSS5      [        SSS5      [        SSS5      [        SSS5      [        SSS5      [        SSS5      /n[        R                  R                  SSS[        R                  [        R                  S// SQS	9n[        X5      n/ S
Qn[        US   [        R                  " U5      U   5        [        US   X$   R                  5       5        g )NiØ  r'   r(   r)   é   r+   r*   ©FFTTFF©Úmask©r   r'   r+   r   )r   r   Úmar-   r,   r   r
   Ú
compressed)r   ÚdatesÚa_maskedÚactualr2   s        r   Útest_datetimeÚ'Test_delete_masked_points.test_datetime&   sÅ   € Ü˜$  1Ó%¤x°°a¸Ó';Ü˜$  1Ó%¤x°°a¸Ó';Ü˜$  1Ó%¤x°°a¸Ó';ð=ˆô —5‘5—;‘;  1 a¬¯©´·±¸Ð;Ú$Lð ð Nˆä% eÓ6ˆÚˆÜ˜6 !™9¤b§h¢h¨u£o°cÑ&:Ô;Ü˜6 !™9 h¡m×&>Ñ&>Ó&@ÕAr5   c                ó6  • [         R                  R                  SSS[         R                  [         R                  S// SQS9n[        R
                  " / SQ5      n[        X5      n/ SQn[        US	   X   R                  5       5        [        US   X$   5        g )
Nr'   r(   r)   r*   r8   r9   )ÚrÚgr"   r#   ÚmÚyr;   r   )	r   r<   r-   r,   ÚmcolorsÚto_rgba_arrayr   r
   r=   )r   r?   Úa_rgbar@   r2   s        r   Ú	test_rgbaÚ#Test_delete_masked_points.test_rgba1   s}   € Ü—5‘5—;‘;  1 a¬¯©´·±¸Ð;Ú$Lð ð Nˆä×&Ò&Ò'EÓFˆÜ% hÓ7ˆÚˆÜ˜6 !™9 h¡m×&>Ñ&>Ó&@ÔAÜ˜6 !™9 f¡kÕ2r5   © N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r3   rA   rK   Ú__static_attributes__rM   r5   r   r   r      s   † òBò7ò	Bõ3r5   r   c                  ób   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rSrg)ÚTest_boxplot_statsé;   c                ó  • [         R                  R                  S5        SU l        SU l        [         R                  R                  U R                  U R                  4SSS9U l        [        / SQ5      U l        [        R                  " U R                  5      U l        SS	S
SS[         R                  " / SQ5      SSSSS.
U l        SSS.U l        SS[         R                  " SS/5      S.U l        SSS.U l        SSS.U l        g )Ni©  é%   r7   ç      ø?g      ü?)ÚsizeÚmeanÚsigma)rZ   ÚmedÚq1Úq3ÚiqrÚciloÚcihiÚwhisloÚwhishiÚfliersÚlabelgP¬Ý$·C@g@÷®ÓÃ¿g>zÔzDü*@gjtÀxJ*@g–Dm‡(«
@)çÓ¾¹#W@ç7ˆ9µqÂU@g¶®EÉ³E@g—q×ž¥C@g¥å]YŒÁõ?gó6 v´-@gIÿ÷Qæ;@g äinÞ“¥?)
ra   r`   r_   rZ   r\   rd   r]   r^   rc   rb   gÑÁNá!@gûˆèý?)ra   r`   g =É³E@rf   rg   )rc   rb   rd   gÖeLMÀÈ?)rb   rc   g¯,Á¹#W@)r   ÚrandomÚseedÚnrowsÚncolsÚ	lognormalÚdataÚsortedÚ
known_keysr   Úboxplot_statsÚstd_resultsr-   Úknown_nonbootstrapped_resÚknown_bootstrapped_ciÚknown_whis3_resÚknown_res_percentilesÚknown_res_ranger   s    r   Úsetup_methodÚTest_boxplot_stats.setup_method<   s  € Ü
�	‰	�‰�sÔØˆŒ
ØˆŒ
Ü—I‘I×'Ñ'¨d¯j©j¸$¿*¹*Ð-EØ-0¸ð (ð >ˆŒ	ä ò "
ó ˆŒô
 !×.Ò.¨t¯y©yÓ9ˆÔð 'Ø'Ø%Ø%Ø%Ü—h’hò  ó ð %Ø#Ø(Ø*ñ*
ˆÔ&ð  &Ø&ñ&
ˆÔ"ð )Ø*Ü—h’h ¨[Ð9Ó:ñ 
ˆÔð +Ø)ñ&
ˆÔ"ð +Ø(ñ 
ˆÕr5   c                óF   • [        U R                  [        5      (       d   eg ©N)Ú
isinstancerq   Úlistr   s    r   Útest_form_main_listÚ&Test_boxplot_stats.test_form_main_listn   s   € Ü˜$×*Ñ*¬D×1Ñ1Ð1Ñ1r5   c                óX   • U R                    H  n[        U[        5      (       a  M   e   g rz   )rq   r{   Údict©r   Úress     r   Útest_form_each_dictÚ&Test_boxplot_stats.test_form_each_dictq   s%   € Ø×#Ô#ˆCÜ˜c¤4×(Ó(Ð(Ð(ò $r5   c                ór   • U R                    H'  n[        U5      [        U R                  5      ::  a  M'   e   g rz   )rq   Úsetro   r�   s     r   Útest_form_dict_keysÚ&Test_boxplot_stats.test_form_dict_keysu   s-   € Ø×#Ô#ˆCÜ�s“8œs 4§?¡?Ó3Õ3Ð3Ð3ò $r5   c                ó„   • U R                   S   nU R                  R                  5        H  u  p#[        X   U5        M     g )Nr   )rq   rr   Úitemsr   )r   r‚   ÚkeyÚvalues       r   Útest_results_baselineÚ(Test_boxplot_stats.test_results_baseliney   s:   € Ø×Ñ˜qÑ!ˆØ×8Ñ8×>Ñ>Ö@‰JˆCÜ% c¡h°Ö6ò Ar5   c                ó®   • [         R                  " U R                  SS9nUS   nU R                  R	                  5        H  u  p4[        X#   U5        M     g )Ni'  )Ú	bootstrapr   )r   rp   rm   rs   rŠ   r   ©r   Úresultsr‚   r‹   rŒ   s        r   Útest_results_bootstrappedÚ,Test_boxplot_stats.test_results_bootstrapped~   sH   € Ü×%Ò% d§i¡i¸5ÑAˆØ�a‰jˆØ×4Ñ4×:Ñ:Ö<‰JˆCÜ ¡¨%Ö0ò =r5   c                ó®   • [         R                  " U R                  SS9nUS   nU R                  R	                  5        H  u  p4[        X#   U5        M     g )Nr)   ©Úwhisr   )r   rp   rm   rt   rŠ   r   r‘   s        r   Útest_results_whiskers_floatÚ.Test_boxplot_stats.test_results_whiskers_float„   sH   € Ü×%Ò% d§i¡i°aÑ8ˆØ�a‰jˆØ×.Ñ.×4Ñ4Ö6‰JˆCÜ% c¡h°Ö6ò 7r5   c                ó²   • [         R                  " U R                  SS/S9nUS   nU R                  R	                  5        H  u  p4[        X#   U5        M     g )Nr   éd   r–   )r   rp   rm   rv   rŠ   r   r‘   s        r   Útest_results_whiskers_rangeÚ.Test_boxplot_stats.test_results_whiskers_rangeŠ   sL   € Ü×%Ò% d§i¡i°q¸#°hÑ?ˆØ�a‰jˆØ×.Ñ.×4Ñ4Ö6‰JˆCÜ% c¡h°Ö6ò 7r5   c                ó²   • [         R                  " U R                  SS/S9nUS   nU R                  R	                  5        H  u  p4[        X#   U5        M     g )Nr+   é_   r–   r   )r   rp   rm   ru   rŠ   r   r‘   s        r   Ú!test_results_whiskers_percentilesÚ4Test_boxplot_stats.test_results_whiskers_percentiles�   sL   € Ü×%Ò% d§i¡i°q¸"°gÑ>ˆØ�a‰jˆØ×4Ñ4×:Ñ:Ö<‰JˆCÜ% c¡h°Ö6ò =r5   c                óê   • / SQn[         R                  " U R                  US9n[        X5       H  u  p4US   U:X  a  M   e   [         R                  " U R                  5      nU H  nSU;  a  M   e   g )N)ÚTest1r(   ÚAardvarkr7   ©Úlabelsre   )r   rp   rm   Úzip)r   r¦   r’   Úlabr‚   s        r   Útest_results_withlabelsÚ*Test_boxplot_stats.test_results_withlabels–   sn   € Ú,ˆÜ×%Ò% d§i¡i¸Ñ?ˆÜ˜FÖ,‰HˆCØ�w‘< 3Õ&Ð&Ð&ñ -ô ×%Ò% d§i¡iÓ0ˆÛˆCØ #Õ%Ð%Ð%ò r5   c                ó²   • SS/n[         R                  " [        5         [        R                  " U R
                  US9  S S S 5        g ! , (       d  f       g = f)Nr'   r(   r¥   )r   r   r   r   rp   rm   )r   r¦   s     r   Útest_label_errorÚ#Test_boxplot_stats.test_label_error    s7   € Ø�Q�ˆÜ�]Š]œ:Õ&Ü×Ò §	¡	°&Ò9÷ '×&Ö&ús   Ÿ AÁ
Ac                óÒ   • [         R                  R                  SS9n[        R                  " [
        5         [        R                  " U5        S S S 5        g ! , (       d  f       g = f)N)é"   r¯   r¯   )rY   )r   rh   Únormalr   r   r   r   rp   ©r   rm   s     r   Útest_bad_dimsÚ Test_boxplot_stats.test_bad_dims¥   s?   € Ü�y‰y×Ñ \ÐÐ2ˆÜ�]Š]œ:Õ&Ü×Ò Ô%÷ '×&Ö&ús   ¸AÁ
A&c                ón  • [         R                  " SS9n[         R                  " SUS/5      n[        R                  " USS9n[        R                  " USS9nUS   S	   S:X  d   eUS   S
   S:X  d   e[        US   S   SS/5        US   S	   S:X  d   eUS   S
   S:X  d   e[        US   S   / 5        g )NéŒ   )Úshapeiçÿÿÿr   F)Ú	autorangeTr   rb   rc   rd   )r   ÚzerosÚhstackr   rp   r   )r   ÚxÚbstats_falseÚbstats_trues       r   Ú"test_boxplot_stats_autorange_falseÚ5Test_boxplot_stats.test_boxplot_stats_autorange_falseª   sÎ   € Ü�HŠH˜3ÑˆÜ�IŠI�s˜A˜r�lÓ#ˆÜ×*Ò*¨1¸Ñ>ˆÜ×)Ò)¨!°tÑ<ˆà˜A‰˜xÑ(¨AÓ-Ð-Ð-Ø˜A‰˜xÑ(¨AÓ-Ð-Ð-Ü! ,¨q¡/°(Ñ";¸cÀ2¸YÔGà˜1‰~˜hÑ'¨3Ó.Ð.Ð.Ø˜1‰~˜hÑ'¨2Ó-Ð-Ð-Ü! +¨a¡.°Ñ":¸BÕ?r5   )
rm   rs   ro   rr   ru   rv   rt   rk   rj   rq   N)rN   rO   rP   rQ   rw   r}   rƒ   r‡   r�   r“   r˜   rœ   r    r©   r¬   r²   r½   rR   rM   r5   r   rT   rT   ;   sE   † ò0
òd2ò)ò4ò7ò
1ò7ò7ò7ò&ò:ò
&õ
@r5   rT   c                  ó   • \ rS rSrS rSrg)ÚHashableé¹   c                ó   • g rz   rM   r   s    r   ÚdummyÚHashable.dummyº   ó   € �Tr5   rM   N)rN   rO   rP   rQ   rÃ   rR   rM   r5   r   rÀ   rÀ   ¹   s   † Ýr5   rÀ   c                  ó   • \ rS rSrSrS rSrg)Ú
Unhashableé½   Nc                ó   • g rz   rM   r   s    r   rÃ   ÚUnhashable.dummy¿   rÅ   r5   rM   )rN   rO   rP   rQ   Ú__hash__rÃ   rR   rM   r5   r   rÇ   rÇ   ½   s
   † Ø€HÝr5   rÇ   c                  ó   • \ rS rSrS rS rS rS rS rS r	S r
\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       r\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       r\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       r\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       r\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       rS r\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       rS r\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       r\R                  R                  S	S
S/5      \R                  R                  S\\/5      S 5       5       rS rSrg)ÚTest_callback_registryéÂ   c                óF   • SU l         [        R                  " 5       U l        g )NÚtest)Úsignalr   ÚCallbackRegistryÚ	callbacksr   s    r   rw   Ú#Test_callback_registry.setup_methodÃ   s   € ØˆŒÜ×/Ò/Ó1ˆ�r5   c                ó|   • U(       a  U R                   R                  X5      $ U R                   R                  X5      $ rz   )rÓ   ÚconnectÚ_connect_picklable)r   ÚsÚfuncÚpickles       r   rÖ   ÚTest_callback_registry.connectÇ   s/   € ÞØ—>‘>×)Ñ)¨!Ó2Ð2à—>‘>×4Ñ4°QÓ=Ð=r5   c                ó8   • U R                   R                  U5      $ rz   )rÓ   Ú
disconnect©r   Úcids     r   rÝ   Ú!Test_callback_registry.disconnectÍ   s   € Ø�~‰~×(Ñ(¨Ó-Ð-r5   c                óØ   ^ • [        U 4S jT R                  R                   5       5      n[        T R                  R                  R	                  T R
                  5      5      nX:X  d   eU$ )Nc              3  óF   >#   • U  H  u  pUTR                   :H  v •  M     g 7frz   ©rÑ   )Ú.0rØ   Úpr   s      €r   Ú	<genexpr>Ú/Test_callback_registry.count.<locals>.<genexpr>Ñ   s   øé € ÐOÒ2N©$¨!�Q˜$Ÿ+™+Ö%Ò2Nùs   ƒ!)ÚsumrÓ   Ú_func_cid_mapÚlenÚgetrÑ   )r   Úcount1Úcount2s   `  r   ÚcountÚTest_callback_registry.countÐ   sQ   ø€ ÜÔO°$·.±.×2NÒ2NÓOÓOˆÜ�T—^‘^×-Ñ-×1Ñ1°$·+±+Ó>Ó?ˆØÓÐÐØˆr5   c                óü   • [         R                  R                  5         / U R                  R                  Q/ :X  d   eU R                  R                  0 :X  d   eU R                  R
                  [        5       :X  d   eg rz   )r   ÚtestingÚbreak_cyclesrÓ   ré   Ú_pickled_cidsr†   r   s    r   Úis_emptyÚTest_callback_registry.is_emptyÖ   sa   € Ü
�
‰
×ÑÔ!Ø.�—‘×-Ñ-Ð.°"Ó4Ð4Ð4Ø�~‰~×'Ñ'¨2Ó-Ð-Ð-Ø�~‰~×+Ñ+¬s«uÓ4Ð4Ñ4r5   c                ó´   • [         R                  R                  5         / U R                  R                  Q/ :w  d   eU R                  R                  0 :w  d   eg rz   )r   rñ   rò   rÓ   ré   r   s    r   Úis_not_emptyÚ#Test_callback_registry.is_not_emptyÜ   sG   € Ü
�
‰
×ÑÔ!Ø.�—‘×-Ñ-Ð.°"Ó4Ð4Ð4Ø�~‰~×'Ñ'¨2Ó-Ð-Ñ-r5   c                óÞ   • [         R                  " 5       nUR                  SS 5        [        R                  " [        R
                  " U5      5      nUR                  SS 5      nUS:X  d   eg )Nr!   c                 ó   • g rz   rM   rM   r5   r   Ú<lambda>Ú9Test_callback_registry.test_cid_restore.<locals>.<lambda>ã   ó   €  r5   r#   c                 ó   • g rz   rM   rM   r5   r   rû   rü   å   s   €  tr5   r'   )r   rÒ   rÖ   rÚ   ÚloadsÚdumps)r   ÚcbÚcb2rß   s       r   Útest_cid_restoreÚ'Test_callback_registry.test_cid_restoreá   sP   € Ü×#Ò#Ó%ˆØ
�
‰
�3™Ô%Ü�lŠlœ6Ÿ<š<¨Ó+Ó,ˆØ�k‰k˜#™|Ó,ˆØ�a‹xˆ‰xr5   rÚ   TFÚclsc                óþ  • U R                  5         U" 5       nU R                  U R                  UR                  U5      n[	        U5      [
        L d   eU R                  5         U R                  U R                  UR                  U5      nXE:X  d   eU R                  5         [        / U R                  R                  Q5      S:X  d   e[        U R                  R                  5      S:X  d   eAU R                  5         g )Nr'   )
rô   rÖ   rÑ   rÃ   ÚtypeÚintr÷   rê   rÓ   ré   )r   rÚ   r  Úmini_meÚcid1Úcid2s         r   Útest_callback_completeÚ-Test_callback_registry.test_callback_completeè   sÐ   € ð 	�‰Œñ “%ˆð �|‰|˜DŸK™K¨¯©¸Ó?ˆÜ�D‹zœSÒ Ð Ð Ø×ÑÔð �|‰|˜DŸK™K¨¯©¸Ó?ˆØ‹|Ðˆ|Ø×ÑÔÜÐ2�T—^‘^×1Ñ1Ð2Ó3°qÓ8Ð8Ð8Ü�4—>‘>×+Ñ+Ó,°Ó1Ð1Ð1àð 	�‰�r5   c                ó
  • U R                  5         U" 5       nU R                  U R                  UR                  U5      n[	        U5      [
        L d   eU R                  5         U R                  U5        U R                  5         g rz   ©rô   rÖ   rÑ   rÃ   r  r  r÷   rÝ   ©r   rÚ   r  r	  r
  s        r   Útest_callback_disconnectÚ/Test_callback_registry.test_callback_disconnect  sg   € ð 	�‰Œñ “%ˆð �|‰|˜DŸK™K¨¯©¸Ó?ˆÜ�D‹zœSÒ Ð Ð Ø×ÑÔà�‰˜Ôð 	�‰�r5   c                ó
  • U R                  5         U" 5       nU R                  U R                  UR                  U5      n[	        U5      [
        L d   eU R                  5         U R                  S5        U R                  5         g )NÚfoor  r  s        r   Útest_callback_wrong_disconnectÚ5Test_callback_registry.test_callback_wrong_disconnect  sj   € ð 	�‰Œñ “%ˆð �|‰|˜DŸK™K¨¯©¸Ó?ˆÜ�D‹zœSÒ Ð Ð Ø×ÑÔà�‰˜Ôð 	×ÑÕr5   c                ó  • U R                  5         U" 5       nU R                  U R                  UR                  U5        U R	                  5         U R
                  R                  UR                  U R                  S9  U R                  5         g )Nrã   ©rô   rÖ   rÑ   rÃ   r÷   rÓ   rÝ   ©r   rÚ   r  r	  s       r   Útest_callback_disconnect_funcÚ4Test_callback_registry.test_callback_disconnect_func(  sh   € ð 	�‰Œñ “%ˆð 	�‰�T—[‘[ '§-¡-°Ô8Ø×ÑÔð 	�‰×!Ñ! '§-¡-¸¿¹Ð!ÑDð 	�‰�r5   c                ó’  • U R                  5         U" 5       nU R                  U R                  UR                  U5        U R	                  5         U R
                  R                  UR                  SS9  U R	                  5         U" 5       nU R
                  R                  UR                  U R                  S9  U R	                  5         g )NÚwrong_signalrã   r  ©r   rÚ   r  r	  Úmini_me2s        r   Ú#test_callback_disconnect_func_wrongÚ:Test_callback_registry.test_callback_disconnect_func_wrong;  s�   € ð 	�‰Œñ “%ˆð 	�‰�T—[‘[ '§-¡-°Ô8Ø×ÑÔð 	�‰×!Ñ! '§-¡-¸Ð!ÑGð 	×ÑÔñ “5ˆØ�‰×!Ñ! (§.¡.¸¿¹Ð!ÑEð 	×ÑÕr5   c                ó  • U R                  5         S nU R                  R                  U R                  U5        U R	                  5         S nU R                  R                  XR                  S9  U R	                  5         g )Nc                 ó   • g rz   rM   rM   r5   r   rÙ   ÚLTest_callback_registry.test_callback_disconnect_func_redefined.<locals>.func[  ó   € Ør5   c                 ó   • g rz   rM   rM   r5   r   rÙ   r$  b  r%  r5   rã   )rô   rÓ   rÖ   rÑ   r÷   rÝ   )r   rÙ   s     r   Ú'test_callback_disconnect_func_redefinedÚ>Test_callback_registry.test_callback_disconnect_func_redefinedU  sf   € ð 	�‰Œò	ð 	�‰×Ñ˜tŸ{™{¨DÔ1Ø×ÑÔò	ð 	�‰×!Ñ! $¯{©{Ð!Ñ;ð 	×ÑÕr5   c                ó�  • U R                  5         U" 5       nU R                  R                  SUR                  5        U R                  R                  SUR                  5        [	        [        U R                  R                  5      5      S:X  d   eU R                  R                  UR                  5        U R                  5         g )NÚsignal1Úsignal2r(   ©rô   rÓ   rÖ   rÃ   rê   r|   ré   rÝ   r  s       r   Ú)test_callback_disconnect_func_all_signalsÚ@Test_callback_registry.test_callback_disconnect_func_all_signalsk  s‹   € ð 	�‰Œá“%ˆð 	�‰×Ñ˜y¨'¯-©-Ô8Ø�‰×Ñ˜y¨'¯-©-Ô8Ü”4˜Ÿ™×4Ñ4Ó5Ó6¸!Ó;Ð;Ð;ð 	�‰×!Ñ! '§-¡-Ô0ð 	�‰�r5   c                ó  • U R                  5         U R                  R                  U R                  S 5      n[        R
                  " [        SS9   U R                  R                  XR                  S9  S S S 5        g ! , (       d  f       g = f)Nc                 ó   • g rz   rM   rM   r5   r   rû   ÚOTest_callback_registry.test_disconnect_cid_with_signal_raises.<locals>.<lambda>�  s   € ¸$r5   zsignal cannot be specified©Úmatchrã   )rô   rÓ   rÖ   rÑ   r   r   r   rÝ   rÞ   s     r   Ú&test_disconnect_cid_with_signal_raisesÚ=Test_callback_registry.test_disconnect_cid_with_signal_raises~  sZ   € à�‰ŒØ�n‰n×$Ñ$ T§[¡[±,Ó?ˆÜ�]Š]œ:Ð-IÓJØ�N‰N×%Ñ% c·+±+Ð%Ñ>÷ K×JÖJús   Á$A>Á>
Bc                ó¢  • U R                  5         U" 5       nU R                  R                  SUR                  5        U R                  R                  SUR                  5        [	        [        U R                  R                  5      5      S:X  d   eU R                  R                  UR                  SS9  [	        [        U R                  R                  5      5      S:X  d   eSU R                  R                  ;   d   eSU R                  R                  ;  d   eU R                  R                  UR                  SS9  U R                  5         g )Nr*  r+  r(   rã   r'   r,  r  s       r   Ú'test_callback_disconnect_func_selectiveÚ>Test_callback_registry.test_callback_disconnect_func_selective…  s  € ð
 	�‰Œá“%ˆð 	�‰×Ñ˜y¨'¯-©-Ô8Ø�‰×Ñ˜y¨'¯-©-Ô8Ü”4˜Ÿ™×4Ñ4Ó5Ó6¸!Ó;Ð;Ð;ð 	�‰×!Ñ! '§-¡-¸	Ð!ÑBô ”4˜Ÿ™×4Ñ4Ó5Ó6¸!Ó;Ð;Ð;Ø˜DŸN™N×4Ñ4Ó4Ð4Ð4Ø §¡× 8Ñ 8Ó8Ð8Ð8ð 	�‰×!Ñ! '§-¡-¸	Ð!ÑBð 	�‰�r5   c                ó¬  • U R                  5         U" 5       nU R                  U R                  UR                  U5        U" 5       nU R                  U R                  UR                  U5        U" 5       nU R                  U R                  UR                  U5        U R	                  5         U R                  5       S:X  d   eS nS nU R                  5         g ©Nr(   )rô   rÖ   rÑ   rÃ   r÷   rî   r  s        r   Ú'test_registration_on_non_empty_registryÚ>Test_callback_registry.test_registration_on_non_empty_registry¡  s§   € ð 	�‰Œñ “%ˆØ�‰�T—[‘[ '§-¡-°Ô8ñ “5ˆØ�‰�T—[‘[ (§.¡.°&Ô9ñ “5ˆØ�‰�T—[‘[ (§.¡.°&Ô9ð 	×ÑÔØ�z‰z‹|˜qÓ Ð Ð ð ˆØˆØ�‰�r5   c                ó    • [        [        R                  " [        R                  " [        R
                  " 5       5      5      S5      (       d   eg )NrÓ   )ÚhasattrrÚ   rÿ   r   r   rÒ   r   s    r   Útest_picklingÚ$Test_callback_registry.test_pickling¼  s9   € Ü”v—|’|¤F§L¢L´×1GÒ1GÓ1IÓ$JÓKØ"÷$ñ $ð 	$ñ $r5   )rÓ   rÑ   N)rN   rO   rP   rQ   rw   rÖ   rÝ   rî   rô   r÷   r  r   ÚmarkÚparametrizerÀ   rÇ   r  r  r  r  r   r'  r-  r4  r7  r;  r?  rR   rM   r5   r   rÍ   rÍ   Â   sl  † ò2ò>ò.òò5ò.ò
ð ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðð0 ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðð" ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðð" ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðð" ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðò0ð, ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðò"?ð ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðð4 ‡[�[×Ñ˜X¨¨e }Ó5Ø‡[�[×Ñ˜U X¨zÐ$:Ó;ñó <ó 6ðõ2$r5   rÍ   c                ó8  • [         R                  " 5       nUR                  SS 5        UR                  [         SS 5        [        R
                  " [        5         UR                  SS5        S S S 5        U R                  5       nUR                  UR                  s=:X  a  S:X  d   e   eUR                  [         SS 5        UR                  SS5        U R                  5       nUR                  S:X  d   eSUR                  ;   d   eg ! , (       d  f       N£= f)	Nr  c                 ó   • g rz   rM   rM   r5   r   rû   ÚAtest_callbackregistry_default_exception_handler.<locals>.<lambda>Ã  s   € ˜dr5   Ú"_get_running_interactive_frameworkc                 ó   • g rz   rM   rM   r5   r   rû   rE  Æ  ó   € ¸Tr5   zargument mismatchÚ c                 ó   • g)Nznot-nonerM   rM   r5   r   rû   rE  Í  s   € ¸Zr5   z,takes 0 positional arguments but 1 was given)r   rÒ   rÖ   Úsetattrr   r   Ú	TypeErrorÚprocessÚ
readouterrÚoutÚerr)ÚcapsysÚmonkeypatchr  Úouterrs       r   Ú/test_callbackregistry_default_exception_handlerrT  Á  sæ   € Ü	×	Ò	Ó	!€BØ‡J�Jˆu‘lÔ#à×ÑÜÐ3±\ôCä	�Š”yÕ	!Ø
�
‰
�5Ð-Ô.÷ 
"à×ÑÓ €FØ�:‰:˜Ÿ™Õ) rÓ)Ð)Ñ)Ð)Ð)à×ÑÜÐ3Ñ5GôIà‡J�JˆuÐ)Ô*Ø×ÑÓ €FØ�:‰:˜ÓÐÐØ9¸V¿Z¹ZÓGÐGÑG÷ 
"Õ	!ús   ÁDÄ
Dc                óŒ  ^•  " S S[         5      mS nS nU4S jn[        R                  " S S9nUR                  SU5        [        R                  " US9nUR                  SU5        [        R                  " US9nUR                  SU5        [        R
                  R                  SU[        /UT/U[        //5      " U 5      $ )	Nc                  ó   • \ rS rSrSrg)Ú%raising_cb_reg.<locals>.TestExceptioniÕ  rM   N©rN   rO   rP   rQ   rR   rM   r5   r   ÚTestExceptionrW  Õ  ó   † Úr5   rY  c                 ó   • [         erz   )ÚRuntimeErrorrM   r5   r   Úraise_runtime_errorÚ+raising_cb_reg.<locals>.raise_runtime_errorØ  s   € ÜÐr5   c                 ó   • [         erz   ©r   rM   r5   r   Úraise_value_errorÚ)raising_cb_reg.<locals>.raise_value_errorÛ  s   € ÜÐr5   c                ó6   >• [        U [        5      (       a  TeU erz   )r{   r\  )ÚexcprY  s    €r   ÚtransformerÚ#raising_cb_reg.<locals>.transformerÞ  s   ø€ Ü�dœL×)Ñ)ØÐØˆ
r5   ©Úexception_handlerr  zcb, excp)	Ú	Exceptionr   rÒ   rÖ   r   rA  rB  r\  r   )rÙ   r]  ra  re  Úcb_oldÚcb_filtÚcb_filt_passrY  s          @r   Úraising_cb_regrm  Ô  sÉ   ø€ ôœ	ô òòõô ×#Ò#°dÑ;€FØ
‡N�N�5Ð-Ô.ô ×$Ò$°{ÑC€GØ‡O�O�EÐ.Ô/ô ×)Ò)¸KÑH€LØ×Ñ˜Ð 1Ô2ä�;‰;×"Ñ" :Ø%+¬\Ð$:Ø%,¨mÐ$<Ø%1´:Ð$>ð$@ôAð BFóGð Gr5   c                ó¶   • U R                  [        SS 5        [        R                  " U5         UR	                  S5        S S S 5        g ! , (       d  f       g = f)NrF  c                 ó   • g rz   rM   rM   r5   r   rû   Ú@test_callbackregistry_custom_exception_handler.<locals>.<lambda>ø  rH  r5   r  )rK  r   r   r   rM  )rR  r  rd  s      r   Ú.test_callbackregistry_custom_exception_handlerrq  õ  s=   € à×ÑÜÐ3±\ôCä	�Š�tÕ	Ø
�
‰
�5Ô÷ 
×	Ö	ús   ¯A
Á

Ac                 ó²  ^• [         R                  " S/S9n / mU4S jnU R                  SU5        [        R                  " [
        5         U R                  SU5        S S S 5        U R                  SS5        [        R                  " [
        5         U R                  SS5        S S S 5        TS/:X  d   eg ! , (       d  f       N_= f! , (       d  f       N)= f)Nr  )Úsignalsc                ó(   >• TR                  U 5        g rz   )Úappend)rº   r’   s    €r   r  Ú)test_callbackregistry_signals.<locals>.cb   s   ø€ ˆw�~‰~˜aÕ r5   Úbarr'   )r   rÒ   rÖ   r   r   r   rM  )Úcrr  r’   s     @r   Útest_callbackregistry_signalsry  ý  s—   ø€ Ü	×	Ò	¨¨Ñ	0€BØ€GÝ Ø‡J�Jˆu�bÔÜ	�Š”zÕ	"Ø
�
‰
�5˜"Ô÷ 
#à‡J�Jˆu�aÔÜ	�Š”zÕ	"Ø
�
‰
�5˜!Ô÷ 
#à�q�c‹>Ð‰>÷ 
#Õ	"ú÷ 
#Õ	"ús   ÁB7ÂCÂ7
CÃ
Cc                 ó*  • S n [         R                  " U S9nS nS nUR                  SU5        UR                  SU5        UR                  5          UR	                  S5        UR	                  S5        S S S 5        UR                  SS9   UR	                  S5        [
        R                  " [        SS	9   UR	                  S5        S S S 5        S S S 5        [
        R                  " [        S
S	9   UR	                  S5        S S S 5        [
        R                  " [        SS	9   UR	                  S5        S S S 5        g ! , (       d  f       NÑ= f! , (       d  f       NŽ= f! , (       d  f       N—= f! , (       d  f       Nu= f! , (       d  f       g = f)Nc                ó   • U erz   rM   )rd  s    r   Úraise_handlerÚ5test_callbackregistry_blocking.<locals>.raise_handler  s   € Øˆ
r5   rg  c                 ó   • [        S5      e)Nú1 should be blockedr`  rM   r5   r   Ú
test_func1Ú2test_callbackregistry_blocking.<locals>.test_func1  ó   € ÜÐ.Ó/Ð/r5   c                 ó   • [        S5      e)Nú2 should be blockedr`  rM   r5   r   Ú
test_func2Ú2test_callbackregistry_blocking.<locals>.test_func2  r‚  r5   Útest1Útest2rã   r„  r2  r  )r   rÒ   rÖ   ÚblockedrM  r   r   r   )r|  r  r€  r…  s       r   Útest_callbackregistry_blockingrŠ  
  s  € òä	×	Ò	°-Ñ	@€Bò0ò0à‡J�Jˆw˜
Ô#Ø‡J�Jˆw˜
Ô#ð 
�‰�Ø
�
‰
�7ÔØ
�
‰
�7Ô÷ 
ð
 
�‰˜7ˆÒ	#à
�
‰
�7Ôä�]Š]œ:Ð-BÓCØ�J‰J�wÔ÷ D÷	 
$ô 
�Š”zÐ)>Ó	?Ø
�
‰
�7Ô÷ 
@ä	�Š”zÐ)>Ó	?Ø
�
‰
�7Ô÷ 
@Ð	?÷ 
�ú÷ DÕCú÷	 
$Õ	#ú÷ 
@Õ	?úç	?Õ	?úsH   Á#E Â+E"Â7EÃ	E"Ã2E3Ä%FÅ 
EÅ
E	ÅE"Å"
E0Å3
FÆ
Fzline, result)	)úa : no_commentr‹  )úa : "quoted str"rŒ  )za : "quoted str" # commentrŒ  )úa : "#000000"r�  )za : "#000000" # commentr�  )úa : ["#000000", "#FFFFFF"]rŽ  )z$a : ["#000000", "#FFFFFF"] # commentrŽ  )z"a : val  # a comment "with quotes"za : val)z# only comment "with quotes" xxrI  c                ó<   • [         R                  " U 5      U:X  d   eg)z+Strip everything from the first unquoted #.N)r   Ú_strip_comment)ÚlineÚresults     r   Útest_strip_commentr“  +  s   € ô ×Ò Ó%¨Ó/Ð/Ñ/r5   c                 ó–   • [         R                  " [        SS9   [        R                  " S5        S S S 5        g ! , (       d  f       g = f)NzMissing closing quoter2  zgrid.color: "aa)r   r   r   r   r�  rM   r5   r   Útest_strip_comment_invalidr•  ;  s-   € Ü	�Š”zÐ)@Ó	AÜ×ÒÐ.Ô/÷ 
B×	AÖ	Aús	   š:º
Ac                 óÊ  • SSSS.n / SQn/ SQn/ SQnU[        [        R                  " U R                  5       5      5      :X  d   eU[        [        R                  " U R	                  5       5      5      :X  d   eU[        [        R                  " U R                  5       5      5      :X  d   eU[        R                  " U5      :X  d   eU[        R                  " U5      :X  d   eg )Nr'   r(   r)   ©r!   r"   r#   ©r'   r(   r)   ))r!   r'   )r"   r(   )r#   r)   )rn   r   Úsanitize_sequenceÚkeysÚvaluesrŠ   )r$   ÚkÚvÚis       r   Útest_sanitize_sequencerŸ  @  s»   € Ø�a˜aÑ €AÚ€AÚ€AÚ&€AØ””u×.Ò.¨q¯v©v«xÓ8Ó9Ó9Ð9Ð9Ø””u×.Ò.¨q¯x©x«zÓ:Ó;Ó;Ð;Ð;Ø””u×.Ò.¨q¯w©w«yÓ9Ó:Ó:Ð:Ð:Ø”×'Ò'¨Ó*Ó*Ð*Ð*Ø”×'Ò'¨Ó*Ó*Ð*Ñ*r5   c                 ó´  • / SQn [         R                  " / SQ5      n[        R                  " U S5      U L d   e[        R                  " US5      UL d   e[        R                  " U S5      SS/:X  d   e[	        [        R                  " US5      SS/5        [        R                  " U S5      / SQ:X  d   e[	        [        R                  " US5      / SQ5        g )Nr˜  r)   r(   r'   r+   )r'   r(   r)   r'   r(   )r   r-   r   Ú_resize_sequencer
   )Úa_listÚarrs     r   Útest_resize_sequencer¤  L  s½   € Ú€FÜ
�(Š(’9Ó
€Cô ×!Ò! &¨!Ó,°Ò6Ð6Ð6Ü×!Ò! # qÓ)¨SÒ0Ð0Ð0ô ×!Ò! &¨!Ó,°°A°Ó6Ð6Ð6Ü”u×-Ò-¨c°1Ó5¸¸1°vÔ>ô ×!Ò! &¨!Ó,²Ó?Ð?Ð?Ü”u×-Ò-¨c°1Ó5²ÕGr5   r'   r(   )r!   r"   r!   r"   zlist[tuple[dict, dict]]Úfail_mappingzlist[tuple[Any, dict, dict]]Úpass_mappingzinp, alias_defc                ó  • [         R                  " U5       " S S[        R                  R                  5      5       n[
        R                  " [        5         [        R                  " X5        S S S 5        g ! , (       d  f       g = f)Nc                  ó   • \ rS rSrS rSrg)Ú(test_normalize_kwargs_fail.<locals>.Typeil  c                ó   • g rz   rM   r   s    r   Úget_aÚ.test_normalize_kwargs_fail.<locals>.Type.get_an  rý   r5   rM   N©rN   rO   rP   rQ   r«  rR   rM   r5   r   ÚTyper©  l  ó   † å$r5   r®  )
r   Údefine_aliasesÚmplÚartistÚArtistr   r   rL  r   Únormalize_kwargs)ÚinpÚ	alias_defr®  s      r   Útest_normalize_kwargs_failr·  i  sZ   € ô 
×Ò˜Ó#ô%Œs�z‰z× Ñ ó %ó $ð%ô 
�Š”yÕ	!Ü×Ò˜sÔ)÷ 
"×	!Ö	!ús   ÁA7Á7
Bzinp, expected, alias_defc                óö  • [         R                  " U5       " S S[        R                  R                  5      5       nU[
        R                  " X5      :X  d   e0 nUR                  R                  5        H&  u  pVUR                  U/ 5      R                  U5        M(     [        R                  " [        R                  5         U[
        R                  " X5      :X  d   e S S S 5        g ! , (       d  f       g = f)Nc                  ó   • \ rS rSrS rSrg)Ú(test_normalize_kwargs_pass.<locals>.Typeiw  c                ó   • g rz   rM   r   s    r   r«  Ú.test_normalize_kwargs_pass.<locals>.Type.get_ay  rý   r5   rM   Nr­  rM   r5   r   r®  rº  w  r¯  r5   r®  )r   r°  r±  r²  r³  r   r´  Ú_alias_to_proprŠ   Ú
setdefaultru  r   ÚwarnsÚMatplotlibDeprecationWarning)rµ  Úexpectedr¶  r®  Úold_alias_mapÚaliasÚprops          r   Útest_normalize_kwargs_passrÅ  t  s¿   € ô 
×Ò˜Ó#ô%Œs�z‰z× Ñ ó %ó $ð%ð ”u×-Ò-¨cÓ8Ó8Ð8Ð8Ø€MØ×*Ñ*×0Ñ0Ö2‰ˆØ× Ñ   rÓ*×1Ñ1°%Ö8ñ 3ä	�Š”c×6Ñ6Õ	7Øœ5×1Ò1°#ÓEÓEÐEÑE÷ 
8×	7Ö	7ús   ÃC*Ã*
C8c                ó€  • [         R                  " S5        [        U 5      S:X  d   e[        R                  S S S:¼  ag  [
        R                  " [        5      R                  S   nU S   R                  R                  [        US-  5      [        US-  5      45      (       a   eg U S   R                  [        :X  d   eg )NÚoopsr'   r(   )r)   é   r   Ú
matplotlibÚmpl_toolkits)r   Úwarn_externalrê   ÚsysÚversion_infoÚpathlibÚPathÚ__file__ÚparentsÚfilenameÚ
startswithÚstr)ÚrecwarnÚbasedirs     r   Útest_warn_externalr×  ƒ  s¼   € Ü×Ò�vÔÜˆw‹<˜1ÓÐÐÜ
×Ñ˜˜Ð˜wÓ&ô —,’,œxÓ(×0Ñ0°Ñ3ˆØ˜1‘:×&Ñ&×1Ñ1´3°wÀÑ7MÓ3NÜ36°wÀÑ7OÓ3Pð3R÷ Sñ Sð 	Sð Sð Sð
 �q‰z×"Ñ"¤hÓ.Ð.Ñ.r5   c                 ó  • [         R                  " [        S5       n [        S S9U l        [
        R                  " [        SS9   [        R                  " S5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)NrÌ  )Úreturn_valuez	\Adummy\Zr2  rÃ   )
r   Úobjectr   r   Ú	_getframer   r¿  ÚUserWarningr   rË  )Úmock_syss    r   Ú(test_warn_external_frame_embedded_pythonrÞ  “  sX   € Ü	�Š”e˜UÔ	# xÜ!¨tÑ4ˆÔÜ�\Š\œ+¨\Ó:Ü×Ò˜wÔ'÷ ;÷ 
$Ð	#ç:Õ:ú÷ 
$Õ	#ús#   œ(A=ÁA,ÁA=Á,
A:	Á6A=Á=
Bc                 ó  • [         R                  " S5      n [         R                  " S5      n[         R                  " S5      S S S2   n[        R                  " XU5      u  p4n[         R                  " / SQ[
        S9n[         R                  " / SQ[
        S9n[         R                  " / SQ[
        S9n[        Xc5        [        Xt5        [        X…5        [        R                  " X5      u  p4[        Xc5        [        Xt5        g )Nr7   éÿÿÿÿ©r   r   r'   r'   r(   r(   r)   ©Údtype©r   r'   r'   r(   r(   r)   r)   )r)   r(   r(   r'   r'   r   r   )r   r   r   Úpts_to_prestepÚasarrayÚfloatr
   ©	rº   Úy1Úy2ÚxsÚy1sÚy2sÚx_targetÚ	y1_targetÚ	y2_targets	            r   Útest_to_presteprñ  š  sµ   € Ü
�	Š	�!‹€AÜ	�Š�1‹€BÜ	�Š�1‹‘d˜�dÑ	€Bä×'Ò'¨¨rÓ2�L€BˆSä�zŠzÒ/´uÑ=€HÜ—
’
Ò0¼Ñ>€IÜ—
’
Ò0¼Ñ>€Iä�xÔ$Ü�yÔ&Ü�yÔ&ä×"Ò" 1Ó)�G€BÜ�xÔ$Ü�yÕ&r5   c                 óV   • [         R                  " / / 5      n U R                  S:X  d   eg ©N)r(   r   )r   rå  r¶   ©Ústepss    r   Útest_to_prestep_emptyrö  ®  ó&   € Ü× Ò   RÓ(€EØ�;‰;˜&Ó Ð Ñ r5   c                 ó  • [         R                  " S5      n [         R                  " S5      n[         R                  " S5      S S S2   n[        R                  " XU5      u  p4n[         R                  " / SQ[
        S9n[         R                  " / SQ[
        S9n[         R                  " / SQ[
        S9n[        Xc5        [        Xt5        [        X…5        [        R                  " X5      u  p4[        Xc5        [        Xt5        g )Nr7   rà  rä  râ  rá  )r)   r)   r(   r(   r'   r'   r   )r   r   r   Úpts_to_poststepræ  rç  r
   rè  s	            r   Útest_to_poststeprú  ³  sµ   € Ü
�	Š	�!‹€AÜ	�Š�1‹€BÜ	�Š�1‹‘d˜�dÑ	€Bä×(Ò(¨°Ó3�L€BˆSä�zŠzÒ/´uÑ=€HÜ—
’
Ò0¼Ñ>€IÜ—
’
Ò0¼Ñ>€Iä�xÔ$Ü�yÔ&Ü�yÔ&ä×#Ò# AÓ*�G€BÜ�xÔ$Ü�yÕ&r5   c                 óV   • [         R                  " / / 5      n U R                  S:X  d   eg ró  )r   rù  r¶   rô  s    r   Útest_to_poststep_emptyrü  Ç  s&   € Ü×!Ò! " bÓ)€EØ�;‰;˜&Ó Ð Ñ r5   c                 ó  • [         R                  " S5      n [         R                  " S5      n[         R                  " S5      S S S2   n[        R                  " XU5      u  p4n[         R                  " / SQ[
        S9n[         R                  " / SQ[
        S9n[         R                  " / SQ[
        S9n[        Xc5        [        Xt5        [        X…5        [        R                  " X5      u  p4[        Xc5        [        Xt5        g )Nr7   rà  )r   ç      à?rþ  rX   rX   ç      @rÿ  r)   râ  )r   r   r'   r'   r(   r(   r)   r)   )r)   r)   r(   r(   r'   r'   r   r   )r   r   r   Úpts_to_midstepræ  rç  r
   rè  s	            r   Útest_to_midstepr  Ì  sµ   € Ü
�	Š	�!‹€AÜ	�Š�1‹€BÜ	�Š�1‹‘d˜�dÑ	€Bä×'Ò'¨¨rÓ2�L€BˆSä�zŠzÒ<ÄEÑJ€HÜ—
’
Ò3¼5ÑA€IÜ—
’
Ò3¼5ÑA€Iä�xÔ$Ü�yÔ&Ü�yÔ&ä×"Ò" 1Ó)�G€BÜ�xÔ$Ü�yÕ&r5   c                 óV   • [         R                  " / / 5      n U R                  S:X  d   eg ró  )r   r   r¶   rô  s    r   Útest_to_midstep_emptyr  à  r÷  r5   ÚargsrÈ  r)   r7   c                ó’   • [         R                  " [        5         [        R                  " U 6   S S S 5        g ! , (       d  f       g = frz   )r   r   r   r   rå  )r  s    r   Útest_step_failsr  å  s*   € ô 
�Š”zÕ	"Ü×Ò˜dÑ#÷ 
#×	"Ö	"ús	   ›8¸
Ac                 óª  •  " S S5      n [        S5       Vs/ s H	  o" 5       PM     sn=u  p#pEpg[        R                  " 5       nUR                  " U6   [	        [        U5      S   5      [	        U5      :X  d   e[	        UR                  U5      5      [	        U5      :X  d   eX(R                  USS9;  d   eUSS   H  n	UR                  X)5      (       a  M   e   UR                  U5        USS   H  n	UR                  X)5      (       d  M   e   [        R                  " USS  USS  5       H  u  p«UR                  X«5      (       a  M   e   g s  snf )Nc                  ó   • \ rS rSrSrg)Útest_grouper.<locals>.Dummyið  rM   NrX  rM   r5   r   ÚDummyr	  ð  rZ  r5   r
  r+   r   F)Úinclude_selfr'   )Úranger   ÚGrouperÚjoinr†   r|   Úget_siblingsÚjoinedÚremoveÚ	itertoolsÚproduct)r
  Ú_r!   r"   r#   r$   r%   ÚobjsrE   ÚotherÚAÚBs               r   Útest_grouperr  ï  s1  € ÷ñ ä-2°1¬XÓ6ªX¨˜EžG©XÑ6Ð6�M€Aˆ!�Ü�Š‹€AØ‡F‚FˆD�MÜŒt�A‹w�q‰z‹?œc $›iÓ'Ð'Ð'Üˆq�~‰~˜aÓ Ó!¤S¨£YÓ.Ð.Ð.Ø—N‘N 1°5�NÐ9Ó9Ð9Ð9à�a�b“ˆØ�x‰x˜×!Ó!Ð!Ð!ñ ð ‡H�HˆQ„KØ�a�b“ˆØ—8‘8˜A×%Ó%Ð%Ð%ñ ô ×!Ò! $ q r (¨D°°¨HÖ5‰ˆØ�x‰x˜�~‹~Ðˆ~ò 6ùò 7s   ˜Ec                 ó  •  " S S5      n [        S5       Vs/ s H	  o" 5       PM     nn[        R                  " 5       nUR                  " U6   UR                  nU H
  nXT;   a  M
   e   XBS      nUSS   H  nXE   UL a  M   e   g s  snf )Nc                  ó   • \ rS rSrSrg)Ú#test_grouper_private.<locals>.Dummyi  rM   NrX  rM   r5   r   r
  r    rZ  r5   r
  r+   r   r'   )r  r   r  r  Ú_mapping)r
  r  r  rE   ÚmappingÚoÚbase_sets          r   Útest_grouper_privater!    sŒ   € ÷ñ ä" 1œXÓ&šX˜ˆEŽG™X€DÐ&Ü�Š‹€AØ‡F‚FˆD�Mà�j‰j€GãˆØ�|Ðˆ|ñ ð ˜A‘wÑ€HØ�!�"‹XˆØ‰z˜XÔ%Ð%Ð%ò ùò 's   ˜Bc                 ó  • [         R                  " S5      n U R                  nS[        U5      :X  d   eS[        U5      :X  d   e[        R
                  " U5      nUS:X  d   eS[        U5      :X  d   eS[        U5      :X  d   eg )Nr+   r   r'   )r   r   ÚflatÚnextr   Ú_safe_first_finite)rº   ÚitÚrets      r   Útest_flatiterr(    ss   € Ü
�	Š	�!‹€AØ	
�‰€BØ”�R“‹=Ðˆ=Ø”�R“‹=Ðˆ=Ü
×
"Ò
" 2Ó
&€CØ�!‹8€Oˆ8à”�R“‹=Ðˆ=Ø”�R“‹=Ð‰=r5   c                 ó´   • [         R                  " S[         R                  5      n [        R                  " U 5      n[         R
                  " U5      (       d   eg r:  )r   Úfullr,   r   r%  Úisnan©r£  r'  s     r   Útest__safe_first_finite_all_nanr-  !  ó8   € Ü
�'Š'�!”R—V‘VÓ
€CÜ
×
"Ò
" 3Ó
'€CÜ�8Š8�C�=‰=Ð‰=r5   c                 ó´   • [         R                  " S[         R                  5      n [        R                  " U 5      n[         R
                  " U5      (       d   eg r:  )r   r*  Úinfr   r%  Úisinfr,  s     r   Útest__safe_first_finite_all_infr2  '  r.  r5   c                 óò	  •  " S S5      n [         R                  " / S5      n[        R                  " U5      S:X  d   e[	        S5       Vs/ s H	  o " 5       PM     nn[         R                  " US5      n[        R                  " U5      S:X  d   e[        R
                  " S5      n[         R                  " US5      n[        R                  " U5      S:X  d   e[	        S5       Vs/ s H#  n[	        S5       Vs/ s H	  o " 5       PM     snPM%     nn[         R                  " US5      n[        R                  " U5      S:X  d   e[        R                  R                  SS5      n[         R                  " US5      n[        R                  " U5      S	:X  d   eS
/S/S//n[         R                  " US5      n[        U[        5      (       d   e[        US   [        R                  5      (       a  US   R                  S:X  d   e[        US
   [        R                  5      (       a  US
   R                  S:X  d   e[        US   [        R                  5      (       a  US   R                  S:X  d   e[        R                  " S5      [        R                  " S
5      [        R                  " S5      /n[         R                  " US5      n[        U[        5      (       d   e[        U5      S
:X  d   e[        US   [        R                  5      (       a  US   R                  S:X  d   e/ SQSS/S//n[         R                  " US5      n[        U[        5      (       d   e[        US   [        R                  5      (       a  US   R                  S:X  d   e[        US
   [        R                  5      (       a  US
   R                  S:X  d   e[        US   [        R                  5      (       a  US   R                  S:X  d   e " S S[        R                  5      n[        R
                  " S[        S9nU" S[        UR                  S9n[         R                  " US5      n[        U5      S
:X  d   e[        US   U5      (       d   e/ SQn[         R                  " US5      n[        US   5      [        U5      :X  d   e[        US   [        R                  5      (       d   eg s  snf s  snf s  snf )Nc                  ó   • \ rS rSrSrg)Útest_reshape2d.<locals>.Dummyi/  rM   NrX  rM   r5   r   r
  r5  /  rZ  r5   r
  rº   )r'   r   r+   )r'   r+   r)   )r)   r+   )r+   r)   r'   r(   r   )r'   )r)   r˜  r7   )r(   c                  ó4   ^ • \ rS rSrU 4S jrU 4S jrSrU =r$ )Ú%test_reshape2d.<locals>.ArraySubclassif  c              3  óh   >#   • [         TU ]  5        H  n[        R                  " U5      v •  M     g 7frz   )ÚsuperÚ__iter__r   r-   )r   rŒ   Ú	__class__s     €r   r:  Ú.test_reshape2d.<locals>.ArraySubclass.__iter__h  s&   øé € Ü™Ñ)Ö+�Ü—h’h˜u“oÔ%ò ,ùs   ƒ/2c                óJ   >• [         R                  " [        TU ]  U5      5      $ rz   )r   r-   r9  Ú__getitem__)r   Úitemr;  s     €r   r>  Ú1test_reshape2d.<locals>.ArraySubclass.__getitem__l  s   ø€ Ü—8’8œE™GÑ/°Ó5Ó6Ð6r5   rM   )rN   rO   rP   rQ   r:  r>  rR   Ú__classcell__)r;  s   @r   ÚArraySubclassr7  f  s   ø† õ	&÷	7ó 	7r5   rB  é
   râ  )rC  )rã  Úbuffer)	r!   r"   r#   r#   Úddr%   r&   Úffr&   )r   Ú_reshape_2Dr   r¶   r  r   rh   Úrandr{   r|   Úndarrayr-   rê   rç  rm   )r
  Úxnewr  rº   rB  r�  s         r   Útest_reshape2drK  -  sý  € ÷ñ ô ×Ò˜R Ó%€DÜ�8Š8�D‹>˜VÓ#Ð#Ð#ä œ(Ó#š(�QˆŽ™(€AÐ#ä×Ò˜Q Ó$€DÜ�8Š8�D‹>˜VÓ#Ð#Ð#ä
�	Š	�!‹€AÜ×Ò˜Q Ó$€DÜ�8Š8�D‹>˜VÓ#Ð#Ð#ä.3°A¬hÓ7ªh¨œ5 œ8Ó	$š8�aˆ%Ž'™8Ô	$©h€AÐ7Ü×Ò˜Q Ó$€DÜ�8Š8�D‹>˜VÓ#Ð#Ð#ô 	�	‰	�‰�q˜!Ó€AÜ×Ò˜Q Ó$€DÜ�8Š8�D‹>˜VÓ#Ð#Ð#ð ˆˆqˆc�A�3ˆ€AÜ×Ò˜Q Ó$€DÜ�dœD×!Ñ!Ð!Ð!Ü�d˜1‘gœrŸz™z×*Ñ*¨t°A©w¯}©}ÀÓ/DÐDÐDÜ�d˜1‘gœrŸz™z×*Ñ*¨t°A©w¯}©}ÀÓ/DÐDÐDÜ�d˜1‘gœrŸz™z×*Ñ*¨t°A©w¯}©}ÀÓ/DÐDÐDô 
�Š�!‹”b—h’h˜q“k¤2§8¢8¨A£;Ð/€AÜ×Ò˜Q Ó$€DÜ�dœD×!Ñ!Ð!Ð!Üˆt‹9˜‹>Ðˆ>Ü�d˜1‘gœrŸz™z×*Ñ*¨t°A©w¯}©}ÀÓ/DÐDÐDò 
�Q˜�F˜Q˜CÐ €AÜ×Ò˜Q Ó$€DÜ�dœD×!Ñ!Ð!Ð!Ü�d˜1‘gœrŸz™z×*Ñ*¨t°A©w¯}©}ÀÓ/DÐDÐDÜ�d˜1‘gœrŸz™z×*Ñ*¨t°A©w¯}©}ÀÓ/DÐDÐDÜ�d˜1‘gœrŸz™z×*Ñ*¨t°A©w¯}©}ÀÓ/DÐDÐDô7œŸ
™
ô 7ô 	�	Š	�"œEÑ"€AÙ�e¤5°·±Ñ8€Aä×Ò˜Q Ó$€Dô ˆt‹9˜‹>Ðˆ>Ü�d˜1‘g˜}×-Ñ-Ð-Ð-ò 	8€AÜ×Ò˜Q Ó$€DÜˆt�A‰w‹<œ3˜q›6Ó!Ð!Ð!Ü�d˜1‘gœrŸz™z×*Ñ*Ð*Ñ*ùòQ 	$ùò 
%ùÒ7s   ÁS*Ã&S4Ã9S/
Ä	S4Ó/S4c                ó  • [         R                  " S5      R                  SS5      nU R                  U/ SQS9n[        R
                  " US5      n[        UR                  U5       H$  u  p$[         R                  R                  X$5        M&     g )Né   rC  r)   r—  ©Úcolumnsrº   )
r   r   ÚreshapeÚ	DataFramer   rG  r§   ÚTrñ   r
   )ÚpdÚXrº   ÚXnewrJ  s        r   Útest_reshape2d_pandasrV  €  sh   € ä
�	Š	�"‹×Ñ˜b !Ó$€AØ
�‰�Q¢ˆÐ0€AÜ×Ò˜Q Ó$€Dä�q—s‘s˜D–>‰ˆÜ
�
‰
×%Ñ% aÖ.ò "r5   c                ó  • [         R                  " S5      R                  SS5      nU R                  USS/S9n[        R
                  " US5      n[        UR                  U5       H$  u  p$[         R                  R                  X$5        M&     g ©NrM  rC  r)   rº   rG   )Údims)
r   r   rP  Ú	DataArrayr   rG  r§   rR  rñ   r
   )ÚxrrT  rº   rU  rJ  s        r   Útest_reshape2d_xarrayr\  Š  sl   € ä
�	Š	�"‹×Ñ˜b !Ó$€AØ
�‰�Q˜c 3˜ZˆÐ(€AÜ×Ò˜Q Ó$€Dä�q—s‘s˜D–>‰ˆÜ
�
‰
×%Ñ% aÖ.ò "r5   c                óL  • [         R                  " S5      R                  SS5      nU R                  U/ SQS9n[        R
                  " U5      u  p4[         R                  R                  X5        [         R                  " S5      n[         R                  R                  X55        g )NrM  rC  r)   r—  rN  )r   r   rP  rQ  r   Úindex_ofrñ   r
   )rS  rT  rº   ÚIdxrU  ÚIdxRefs         r   Útest_index_of_pandasra  ”  so   € ä
�	Š	�"‹×Ñ˜b !Ó$€AØ
�‰�Q¢ˆÐ0€AÜ—’˜qÓ!�I€CÜ‡J�J×!Ñ! !Ô*Ü�YŠY�r‹]€FÜ‡J�J×!Ñ! #Õ.r5   c                óL  • [         R                  " S5      R                  SS5      nU R                  USS/S9n[        R
                  " U5      u  p4[         R                  R                  X5        [         R                  " S5      n[         R                  R                  X55        g rX  )r   r   rP  rZ  r   r^  rñ   r
   )r[  rT  rº   r_  rU  r`  s         r   Útest_index_of_xarrayrc  ž  ss   € ä
�	Š	�"‹×Ñ˜b !Ó$€AØ
�‰�Q˜c 3˜ZˆÐ(€AÜ—’˜qÓ!�I€CÜ‡J�J×!Ñ! !Ô*Ü�YŠY�r‹]€FÜ‡J�J×!Ñ! #Õ.r5   c                 ó   • Su  pnS/U -  S/U-  -   S/U-  -   nSU 4X-   X-   U-   4/n[         R                  " U5      U:X  d   eSu  pVUS/U-  -   n[         R                  " U5      U:X  d   eS/U-  US U*  -   nXUU -   4XP-   U-   XP-   U-   U-   4/n[         R                  " U5      U:X  d   eUS/U-  -   n[         R                  " U5      U:X  d   e[         R                  " S/S-  5      / :X  d   e[         R                  " / 5      / :X  d   eg )N)r)   r7   r+   TFr   )r*   é   r+   )r   Úcontiguous_regions)r!   r"   r#   r:   rÁ  r$   r%   s          r   Útest_contiguous_regionsrg  ¨  sF  € Ø�G€Aˆ!àˆ6�!‰8�u�g˜a‘iÑ 4 &¨¡(Ñ*€DØ�A�˜™˜a™c !™e˜Ð%€HÜ×#Ò# DÓ)¨XÓ5Ð5Ð5Ø�D€Aà�5�'˜!‘)Ñ€DÜ×#Ò# DÓ)¨XÓ5Ð5Ð5àˆ7�1‰9�t˜C˜a˜R�yÑ €DØ�a‘C�˜1™3˜q™5 !¡# a¡%¨¡'Ð*Ð+€HÜ×#Ò# DÓ)¨XÓ5Ð5Ð5à�5�'˜!‘)Ñ€DÜ×#Ò# DÓ)¨XÓ5Ð5Ð5ä×#Ò# U G¨A¡IÓ.°"Ó4Ð4Ð4ä×#Ò# BÓ'¨2Ó-Ð-Ñ-r5   c                ó†   • U R                  [        S5      [        SS5      S9n[        R                  " U5      nUS:X  d   eg )Nr+   rC  é   )Úindexr   )ÚSeriesr  r   r%  )rS  rØ   r@   s      r   Ú%test_safe_first_element_pandas_seriesrl  ¿  s:   € à
�	‰	”%˜“(¤%¨¨B£-ˆ	Ð0€AÜ×%Ò% aÓ(€FØ�Q‹;Ð‰;r5   c                 óæ   • S n S nS He  u  p#[         R                  " X#-  5      R                  X#5      n[        R                  " U" US-
  5      U" US-
  5      5       H  u  pVU " XEUS9  M     Mg     g )Nc           	     ó  • U R                   u  p4/ [        SUS-
  U5      QUS-
  Pn/ [        SUS-
  U5      QUS-
  Pn/ n[        R                  " U5       Hb  u  p‰[        R                  " U5       HC  u  p«[        R
                  " XU	S-   2X«S-   24   5      R                  nUR                  U5        ME     Md     [        R                  " U5      n[        R                  " U[        R                  " XUS95      (       d   eg )Nr   r'   ©ÚrstrideÚcstride)r¶   r  r  Úpairwiser   Ú_array_perimeterrR  ru  r   ræ  Úarray_equalÚ_array_patch_perimeters)rº   rp  rq  ÚrowsÚcolsÚrow_indsÚcol_indsÚpolysÚrsÚrs_nextÚcsÚcs_nextÚpss                r   ÚcheckÚ*test_array_patch_perimeters.<locals>.checkÉ  sý   € Ø—W‘W‰
ˆØ7”U˜1˜d 1™f gÓ.Ð7°°Q±Ð7ˆØ7”U˜1˜d 1™f gÓ.Ð7°°Q±Ð7ˆØˆÜ$×-Ò-¨hÖ7‰KˆBÜ(×1Ò1°(Ö;‘�ä×+Ò+¨A°¸±¨l¸BÀq¹y¸LÐ.HÑ,IÓJ×LÑL�Ø—‘˜RÖ ó  <ñ 8ô
 —
’
˜5Ó!ˆÜ�~Š~˜eÜ#×;Ò;Ø"#¸gñG÷Hñ Hð 	Hñ Hr5   c                ó`   • [        SU S-   5       Vs/ s H  oU-  S:X  d  M  UPM     sn$ s  snf )Nr'   r   )r  )Únrž  s     r   ÚdivisorsÚ-test_array_patch_perimeters.<locals>.divisorsØ  s,   € Ü   A¨¡Eœ?Ó9š?�a°!©e°q©j—™?Ñ9Ð9ùÒ9s   ’+¢+))r+   r+   )re  é   )é   é	   r'   ro  )r   r   rP  r  r  )r€  r„  rv  rw  rº   rp  rq  s          r   Útest_array_patch_perimetersr‰  Æ  sq   € òHò:ó 1‰
ˆÜ�IŠI�d‘kÓ"×*Ñ*¨4Ó6ˆÜ )× 1Ò 1±(¸4À!¹8Ó2DÙ2:¸4À!¹8Ó2Dö!FÑˆGá�!¨gÔ6ó!Fò 1r5   c                 ó¶  ^^^•  " S S5      m " S ST5      n T" 5       mUUU4S jnU " 5       mTR                   Tl        U" T5        [        R                  " TSSS S	S
S SSSS9
   TR                   TR                   L d   eTR                  TR                  L d   eTR                  S:X  d   eTR
                  S	:X  d   eTR                  S
:X  d   eTR                  S:X  d   eTR                  TR                   :w  d   eTR                  S:X  d   eTR                  S:X  d   eTR                  S:X  d   e S S S 5        U" T5        g ! , (       d  f       N= f)Nc                  ó�   • \ rS rSr\" 5       r\" 5       rS rS r\	S 5       r
\S 5       r\S 5       r\R                  S 5       rSrg	)
Útest_setattr_cm.<locals>.Aiã  c                ó.   • SU l         SU l        SU l        g )NÚaardvarkÚoverriderå   )rŽ  r�  Ú_pr   s    r   Ú__init__Ú#test_setattr_cm.<locals>.A.__init__ç  s   € Ø&ˆDŒMØ&ˆDŒMØˆD�Gr5   c                ó   • g rz   rM   r   s    r   ÚmethÚtest_setattr_cm.<locals>.A.methì  s   € Ør5   c                ó   • g rz   rM   )r  s    r   ÚclassyÚ!test_setattr_cm.<locals>.A.classyï  ó   € àr5   c                 ó   • g rz   rM   rM   r5   r   ÚstaticÚ!test_setattr_cm.<locals>.A.staticó  r™  r5   c                ó   • U R                   $ rz   ©r�  r   s    r   rÄ  Útest_setattr_cm.<locals>.A.prop÷  s   € à—7‘7ˆNr5   c                ó   • Xl         g rz   rž  )r   Úvals     r   rÄ  rŸ  û  s   € à�Gr5   )r�  rŽ  r�  N)rN   rO   rP   rQ   rÚ  Ú	cls_levelr�  r‘  r”  Úclassmethodr—  Ústaticmethodr›  ÚpropertyrÄ  ÚsetterrR   rM   r5   r   r  rŒ  ã  sn   † Ù“Hˆ	Ù“8ˆò	ò
	ð 
ñ	ó 
ð	ð 
ñ	ó 
ð	ð 
ñ	ó 
ð	ð 
�‰ñ	ó 
ó	r5   r  c                  ó   • \ rS rSrSrg)Útest_setattr_cm.<locals>.Biÿ  rM   NrX  rM   r5   r   r  r¨  ÿ  s   † Úr5   r  c                óJ  >• U R                   U R                   Ld   eU R                  U R                  L d   eTR                  S:X  d   eU R                  U R                  L d   eU R                  TR                  L d   eU R                  S:X  d   e[        U S5      (       a   eU R                  S:X  d   eU R                  TR                   :X  d   eU R                  TR                  L d   eSU R                  ;  d   eSU R                  ;  d   eSU R                  ;  d   eg )NrŽ  r�  Úextrarå   r¢  r—  r›  )r”  rŽ  rÄ  r¢  r�  r>  ÚmonkeyÚ__dict__)Úobjr  r!   r  s    €€€r   Úverify_pre_post_stateÚ.test_setattr_cm.<locals>.verify_pre_post_state  s  ø€ ð �x‰x˜sŸx™xÒ'Ð'Ð'à�|‰|˜sŸ|™|Ò+Ð+Ð+Ø�z‰z˜ZÓ'Ð'Ð'à�x‰x˜3Ÿ8™8Ò#Ð#Ð#Ø�}‰} §¡Ò+Ð+Ð+Ø�|‰|˜zÓ)Ð)Ð)Ü˜3 ×(Ñ(Ð(Ð(Ø�x‰x˜3‹ÐˆØ�z‰z˜UŸZ™ZÓ'Ð'Ð'Ø�}‰} §¡Ò+Ð+Ð+Ø #§,¡,Ó.Ð.Ð.Ø˜sŸ|™|Ó+Ð+Ð+Ø˜sŸ|™|Ó+Ð+Ñ+r5   ÚsquirrelÚmoosec                 ó   • g rz   rM   rM   r5   r   rû   Ú!test_setattr_cm.<locals>.<lambda>   s   € ¨4r5   Úboorª  c                 ó   • g rz   rM   rM   r5   r   rû   r³  "  s   € ˜4r5   Úbobr—  r›  )	rÄ  rŽ  r”  r�  rª  r«  r¢  r—  r›  )r”  r«  r   Ú_setattr_cmrŽ  r�  rª  rÄ  r¢  r—  r›  )r  r®  r  r!   r  s     @@@r   Útest_setattr_cmr¸  â  sF  ú€ ÷ñ ô8ˆAô ñ ‹C€E÷,ñ, 	
‹€Aà�z‰z€A„HÙ˜!ÔÜ	×	Ò	Ø�JØ¡<Ø 'Ù¨5Ø Hó
.ð �v‰v˜Ÿ™ÒÐÐØ�z‰z˜QŸZ™ZÒ'Ð'Ð'Ø�z‰z˜WÓ$Ð$Ð$Ø�z‰z˜UÓ"Ð"Ð"Ø�w‰w˜'Ó!Ð!Ð!Ø�v‰v˜Ó#Ð#Ð#Ø�x‰x˜5Ÿ:™:Ó%Ð%Ð%Ø�{‰{˜eÓ#Ð#Ð#Ø�x‰x˜8Ó#Ð#Ð#Ø�x‰x˜8Ó#Ð#Ñ#÷#
.ñ& ˜!Õ÷'
.õ 
.ús   Á'CE
Å

Ec                 ó6  • [         R                  n U " SS5      S:X  d   eU " SS5      S:X  d   eU " SS5      S:X  d   eU " SS5      S:X  d   eU " SS	5      S:X  d   eU " S
S	5      S:X  d   eU " SS	5      S:X  d   eU " S
S5      U " S
S5      s=:X  a  S:X  d   e   eg )Nr   r'   Ú0r(   r)   g�(í¾0‰¿z-0gH¯¼šò×z>r+   g…Ó´:T?z0.00123g…Ó´:T¿z-0.00123é   rC  z
0.00123456)r   Ú_format_approx)r&   s    r   Útest_format_approxr½  4  s½   € Ü×Ñ€AÙˆQ�‹7�c‹>Ðˆ>ÙˆQ�‹7�c‹>Ðˆ>ÙˆQ�‹7�c‹>Ðˆ>ÙˆW�a‹=˜DÓ Ð Ð ÙˆT�1‹:˜ÓÐÐÙˆ_˜aÓ  IÓ-Ð-Ð-ÙÐ˜qÓ! ZÓ/Ð/Ð/Ùˆ_˜aÓ ¡A o°rÓ$:ÕJ¸lÓJÐJÑJÐJÑJr5   c                 óÎ   • [        S5       V s/ s H"  n [        R                  " 5       [        U S9-   PM$     nn S US'   [        R
                  " U5      nUb  X!S   :X  d   eg s  sn f )NrC  )Údaysr   r'   )r  r   Útodayr	   r   r%  )rž  Údatetime_lstr@   s      r   Ú!test_safe_first_element_with_nonerÂ  @  sa   € Ü>CÀB¼iÓHºi¸”D—J’J“L¤9°!Ñ#4Ô4¹i€LÐHØ€L��OÜ×%Ò% lÓ3€FØÑ &¸©OÓ";Ð;Ð;Ð";ùò Is   Ž)A"c                 ój   • [        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   eg )Nz
1 \times 2z$1 \times 2$z1 x 2z	$\rm{hi}$Úhi)r   rM   r5   r   Útest_strip_mathrÅ  G  s;   € Ü�mÓ$¨Ó5Ð5Ð5Ü�oÓ&¨'Ó1Ð1Ð1Ü�lÓ# tÓ+Ð+Ñ+r5   zfmt, value, result))z%.2f mçš™™™™™É?ú0.20 m)z{:.2f} mrÆ  rÇ  )z{} mrÆ  z0.2 m)ÚconstrÆ  rÈ  )z%d or {}rÆ  z0 or {})z{{{:,.0f}}}g     jAz	{200,000})z{:.2%}gUUUUUUå?z66.67%)z$%ggR¸…ëQ@z$2.54c                óž   • [         R                  " X5      U:X  d   e[         R                  " U [        R                  " U5      5      U:X  d   eg)z)Apply *value* to the format string *fmt*.N)r   Ú_auto_format_strr   Úfloat64)ÚfmtrŒ   r’  s      r   Útest_auto_format_strrÍ  M  sA   € ô ×!Ò! #Ó-°Ó7Ð7Ð7Ü×!Ò! #¤r§z¢z°%Ó'8Ó9¸VÓCÐCÑCr5   c                 ó2  •  " S S5      n [        S5      nXl        U[        R                  S'   [        R
                  " S5      nUR                  U5      n[        R                  " U5      n[        U[        R                  5      (       d   e[        XB5        g)z‰
Test that torch tensors are converted to NumPy arrays.

We don't want to create a dependency on torch in the test suite, so we mock it.
c                  ó    • \ rS rSrS rS rSrg)Ú/test_unpack_to_numpy_from_torch.<locals>.Tensoric  c                ó   • Xl         g rz   ©rm   r±   s     r   r‘  Ú8test_unpack_to_numpy_from_torch.<locals>.Tensor.__init__d  ó   € Ø�Ir5   c                ó   • U R                   $ rz   rÒ  r   s    r   Ú	__array__Ú9test_unpack_to_numpy_from_torch.<locals>.Tensor.__array__g  ó   € Ø—9‘9Ðr5   rÒ  N©rN   rO   rP   rQ   r‘  rÖ  rR   rM   r5   r   ÚTensorrÐ  c  ó   † ò	õ	r5   rÚ  ÚtorchrC  N)r   rÚ  rÌ  Úmodulesr   r   r   Ú_unpack_to_numpyr{   rI  r
   )rÚ  rÜ  rm   Útorch_tensorr’  s        r   Útest_unpack_to_numpy_from_torchrà  ]  sw   € ÷ñ ô �wÓ€EØ„LØ „C‡K�K�Ñä�9Š9�R‹=€DØ—<‘< Ó%€Lä×#Ò# LÓ1€FÜ�fœbŸj™j×)Ñ)Ð)Ð)ô �vÕ$r5   c                 ó2  •  " S S5      n [        S5      nXl        U[        R                  S'   [        R
                  " S5      nUR                  U5      n[        R                  " U5      n[        U[        R                  5      (       d   e[        XB5        g)z„
Test that jax arrays are converted to NumPy arrays.

We don't want to create a dependency on jax in the test suite, so we mock it.
c                  ó    • \ rS rSrS rS rSrg)Ú,test_unpack_to_numpy_from_jax.<locals>.Arrayi  c                ó   • Xl         g rz   rÒ  r±   s     r   r‘  Ú5test_unpack_to_numpy_from_jax.<locals>.Array.__init__€  rÔ  r5   c                ó   • U R                   $ rz   rÒ  r   s    r   rÖ  Ú6test_unpack_to_numpy_from_jax.<locals>.Array.__array__ƒ  rØ  r5   rÒ  NrÙ  rM   r5   r   ÚArrayrã    rÛ  r5   rè  ÚjaxrC  N)r   rè  rÌ  rÝ  r   r   r   rÞ  r{   rI  r
   )rè  ré  rm   Ú	jax_arrayr’  s        r   Útest_unpack_to_numpy_from_jaxrë  y  sv   € ÷ñ ô �UÓ
€CØ„Ià„C‡K�K�Ñä�9Š9�R‹=€DØ—	‘	˜$“€Iä×#Ò# IÓ.€FÜ�fœbŸj™j×)Ñ)Ð)Ð)ô �vÕ$r5   c                 óL  ^•  " S S5      m[        S5      n U4S jU l        TU l        U [        R                  S'   [
        R                  " S5      nU R                  U5      n[        R                  " U5      n[        U[
        R                  5      (       d   e[        X15        g)z’
Test that tensorflow arrays are converted to NumPy arrays.

We don't want to create a dependency on tensorflow in the test suite, so we mock it.
c                  ó    • \ rS rSrS rS rSrg)Ú4test_unpack_to_numpy_from_tensorflow.<locals>.Tensoriœ  c                ó   • Xl         g rz   rÒ  r±   s     r   r‘  Ú=test_unpack_to_numpy_from_tensorflow.<locals>.Tensor.__init__�  rÔ  r5   c                ó   • U R                   $ rz   rÒ  r   s    r   rÖ  Ú>test_unpack_to_numpy_from_tensorflow.<locals>.Tensor.__array__   rØ  r5   rÒ  NrÙ  rM   r5   r   rÚ  rî  œ  rÛ  r5   rÚ  Ú
tensorflowc                ó   >• [        U T5      $ rz   )r{   )rº   rÚ  s    €r   rû   Ú6test_unpack_to_numpy_from_tensorflow.<locals>.<lambda>¤  s   ø€ ¤Z°°6Ô%:r5   rC  N)r   Ú	is_tensorrÚ  rÌ  rÝ  r   r   r   rÞ  r{   rI  r
   )ró  rm   Ú	tf_tensorr’  rÚ  s       @r   Ú$test_unpack_to_numpy_from_tensorflowrø  –  s…   ø€ ÷ñ ô ˜LÓ)€JÜ:€JÔØ€JÔà *„C‡K�K�Ñä�9Š9�R‹=€DØ×!Ñ! $Ó'€Iä×#Ò# IÓ.€FÜ�fœbŸj™j×)Ñ)Ð)Ð)ô �vÕ$r5   c                 ó2  •  " S S5      n [        S5      nXl        U[        R                  S'   [        R
                  " S5      nUR                  U5      n[        R                  " U5      n[        U[        R                  5      (       d   e[        XB5        g)z„
Test that mlx arrays are converted to NumPy arrays.

We don't want to create a dependency on mlx in the test suite, so we mock it.
c                  ó    • \ rS rSrS rS rSrg)Ú,test_unpack_to_numpy_from_mlx.<locals>.Arrayiº  c                ó   • Xl         g rz   rÒ  r±   s     r   r‘  Ú5test_unpack_to_numpy_from_mlx.<locals>.Array.__init__»  rÔ  r5   c                ó   • U R                   $ rz   rÒ  r   s    r   rÖ  Ú6test_unpack_to_numpy_from_mlx.<locals>.Array.__array__¾  rØ  r5   rÒ  NrÙ  rM   r5   r   rè  rû  º  rÛ  r5   rè  zmlx.corerC  N)r   r-   rÌ  rÝ  r   r   r   rÞ  r{   rI  r
   )rè  Úmlx_corerm   Ú	mlx_arrayr’  s        r   Útest_unpack_to_numpy_from_mlxr  ´  sw   € ÷ñ ô ˜*Ó%€HØ„Nà&„C‡K�K�
Ñä�9Š9�R‹=€DØ—‘˜tÓ$€Iä×#Ò# IÓ.€FÜ�fœbŸj™j×)Ñ)Ð)Ð)ô �vÕ$r5   )WÚ
__future__r   r  rÎ  rÚ   rÌ  Útypingr   Úunittest.mockr   r   r   r   r	   Únumpyr   Únumpy.testingr
   r   r   r   rÉ  r±  r   r   Úmatplotlib.colorsÚcolorsrH   Úmatplotlib.cbookr   r   Útypesr   r   rT   rÀ   rÇ   rÍ   rT  rm  rq  ry  rŠ  rA  rB  r“  r•  rŸ  r¤  r¥  Ú__annotations__r¦  r·  rÅ  r×  rÞ  rñ  rö  rú  rü  r  r  r   rP  r  r  r!  r(  r-  r2  rK  rV  r\  ra  rc  rg  rl  r‰  r¸  r½  rÂ  rÅ  rÍ  rà  rë  rø  r  rM   r5   r   Ú<module>r     så  ðÞ "ã Û Û Û 
å ß %ç .Ñ .ã ÷6ñ 6ã ã ß "Ý #ß =Ý ÷3ñ 3÷D{@ñ {@÷|ñ ÷ñ ÷
|$ñ |$ò~Hò&GðB ñó ðò
òðB ‡�×Ñ˜ò 
*ó 
ñ0ó
ð0ò
0ò
	+òHð$ �1Ñ˜˜c˜U�|Ð$Ø�1Ñ˜˜c 3˜ZÐ(Ð)ð)€Ð%ó ð 
ˆ2ˆr€NØ�1Ñ˜Q QÑ'¨Ð,Ø	ˆ1€X��Qˆx˜#  S˜zÐ*Ð+ð.€Ð*ó ð ‡�×ÑÐ)¨<Ó8ñ*ó 9ð*ð ‡�×ÑÐ3°\ÓBñFó CðFò/ò (ò'ò(!ò
'ò(!ò
'ò(!ð
 ‡�×ÑØ
Ø‡i‚i�ƒm×Ñ˜A˜qÓ! 3Ð'Ø‡i‚i�ƒm�SÐØ‡i‚i�ƒm�R—Y’Y˜q“\Ð"ð$ó%ñ
$ó%ð
$ò
ò*&ò"	òòòP+òf/ò/ò/ò/ò.ò.ò7ò8Oòd	Kò<ò,ð ‡�×ÑÐ-ò 	0ó 	ñDó	ðDò%ò8%ò:%ó<%r5   