ó
    {ñ:iÎ^  ã                   ó^  • S SK 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  S SKJr  S SKJrJr  \R"                  R%                  S5      /rS[S jrS\S jr\" S/SS	9S
 5       r\" S/SS	9S 5       r\" S/SS	9S 5       r\" S/SS	9S 5       r\" S/SS	9S 5       r\" S/SS	9S 5       rS rS r\" S/SS	9S 5       r\" S/SS	9S 5       r\" S/S\R@                  " 5       S:X  a  S OSS9S 5       r!\" S /SS	9S! 5       r"\" S"/SS	9S# 5       r#\" S$/SS	9S% 5       r$\" S&/SS	9S' 5       r%\" S(/SS	9S) 5       r&\" S*/SS	9S+ 5       r'\" S,/SS	9S- 5       r(\" S./SS	9S/ 5       r)S0 r*S1 r+S2 r,S3 r-S4 r.S5 r/\" S6/S7SS89S9 5       r0S: r1S; r2\" S</SS	9S= 5       r3\" S>/SS	9S? 5       r4S@ r5\" SA/S7SSBSC0SD9SE 5       r6\" SF/S7SSB\Rn                  " SGS /SHSI//5      0SD9SJ 5       r8SK r9SL r:SM r;SN r<SO r=SP r>SQ r?SR r@\R"                  Rƒ                  SSSTSU0 S74SVS0S74/5      SW 5       rBSX rCSY rDSZ rEg)]é    N)Úimage_comparison)ÚgridspecÚtickerÚtext_placeholdersc                 óü   • U R                  SS/5        U R                  SS9  U(       d1  U R                  SUS9  U R                  SUS9  U R	                  SUS9  g U R                  / 5        U R                  / 5        g )	Né   é   é   ©Únbinsúx-label©Úfontsizeúy-labelÚTitle)ÚplotÚlocator_paramsÚ
set_xlabelÚ
set_ylabelÚ	set_titleÚset_xticklabelsÚset_yticklabels)Úaxr   Únodecs      Új/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/matplotlib/tests/test_constrainedlayout.pyÚexample_plotr      sq   € Ø‡G�GˆQ�ˆF„OØ×Ñ˜AÐÑÞØ
�‰�i¨(ˆÑ3Ø
�‰�i¨(ˆÑ3Ø
�‰�W xˆÒ0à
×Ñ˜2ÔØ
×Ñ˜2Õó    c           
      óx  • Su  p#[         R                  [        SSU-   U5      [        SSU-   U5      4   u  pESUS-  -
  US-  -   US-  -   [         R                  " US-  * US-  -
  5      -  nU R	                  XTUS S2S S24   S	S
SSS9nU R                  SUS9  U R                  SUS9  U R                  SUS9  U$ )N)ç333333ã?r   éýÿÿÿr
   r   ç       @é   r	   éÿÿÿÿÚRdBu_rg      ð¿ç      ð?T)ÚcmapÚvminÚvmaxÚ
rasterizedr   r   r   r   )ÚnpÚmgridÚsliceÚexpÚ
pcolormeshr   r   r   )r   r   ÚdxÚdyÚyÚxÚzÚpcms           r   Úexample_pcolorr5      sÞ   € Ø�F€BÜ�8‰8”E˜"˜a "™f bÓ)Ü˜"˜a "™f bÓ)ð*ñ +�D€Aà	
ˆQ�‰V‰�a˜1‘fÑ	˜q A™vÑ	%¬¯ª°°a±°¸!¸q¹&Ñ0@Ó)AÑA€AØ
�-‰-˜˜a    S b S ™k°¸sÈØ#'ð ð )€Cà‡M�M�) h€MÑ/Ø‡M�M�) h€MÑ/Ø‡L�L� 8€LÑ,Ø€Jr   zconstrained_layout1.pngÚmpl20)Ústylec                  ó`   • [         R                  " SS9n U R                  5       n[        USS9  g)z,Test constrained_layout for a single subplotÚconstrained©Úlayouté   r   N)ÚpltÚfigureÚadd_subplotr   ©Úfigr   s     r   Útest_constrained_layout1rB   ,   s(   € ô �*Š*˜MÑ
*€CØ	�‰Ó	€BÜ�˜bÓ!r   zconstrained_layout2.pngc                  ón   • [         R                  " SSSS9u  pUR                   H  n[        USS9  M     g)z(Test constrained_layout for 2x2 subplotsr	   r9   r:   r<   r   N)r=   ÚsubplotsÚflatr   ©rA   Úaxsr   s      r   Útest_constrained_layout2rH   4   s0   € ô �|Š|˜A˜q¨Ñ7�H€CØ�hŒhˆÜ�R "Ô%ò r   zconstrained_layout3.pngc                  óº   • [         R                  " SSSS9u  p[        UR                  5       H*  u  p#[	        USS9nUS:X  a  SnOSnU R                  XCUS	9  M,     g
)z3Test constrained_layout for colorbars with subplotsr	   r9   r:   r<   r   r
   g{®Gáz´?ç{®Gáz”?)r   ÚpadN)r=   rD   Ú	enumeraterE   r5   Úcolorbar)rA   rG   Únnr   r4   rK   s         r   Útest_constrained_layout3rO   <   sZ   € ô �|Š|˜A˜q¨Ñ7�H€CÜ˜CŸH™HÖ%‰ˆÜ˜R¨"Ñ-ˆØ�‹7Ø‰CàˆCØ�‰�S SˆÓ)ò &r   zconstrained_layout4.pngc                  ó’   • [         R                  " SSSS9u  pUR                   H  n[        USS9nM     U R	                  WUSSS9  g	)
z;Test constrained_layout for a single colorbar with subplotsr	   r9   r:   r<   r   ç{®Gáz„?r   ©r   rK   ÚshrinkN©r=   rD   rE   r5   rM   ©rA   rG   r   r4   s       r   Útest_constrained_layout4rV   J   sF   € ô �|Š|˜A˜q¨Ñ7�H€CØ�hŒhˆÜ˜R¨"Ñ-Šñ à‡L�L�˜ $¨s€LÒ3r   zconstrained_layout5.pngc            	      ó–   • [         R                  " SSSS9u  pUR                   H  n[        USS9nM     U R	                  WUSSSS	S
9  g)zN
Test constrained_layout for a single colorbar with subplots,
colorbar bottom
r	   r9   r:   r<   r   FrQ   r   Úbottom)r   Úuse_gridspecrK   rS   ÚlocationNrT   rU   s       r   Útest_constrained_layout5r[   T   sQ   € ô �|Š|˜A˜q¨Ñ7�H€CØ�hŒhˆÜ˜R¨"Ñ-Šñ à‡L�L�˜Ø#¨°cØ"ð ò $r   zconstrained_layout6.pngc                  ó¼  • [         R                  " SS9n U R                  SSU S9nUS   R                  SS5      nUS   R                  SS5      n/ nU H#  nU R	                  U5      nXE/-  n[        USS9  M%     WR                  S	5        / nU H#  nU R	                  U5      nXe/-  n[        USS9nM%     U R                  WUS
SS[        R                  " SS9S9  g)z,Test constrained_layout for nested gridspecsr9   r:   r   r	   ©r>   r   é   r   zx-label
MultiLinerQ   g®Gáz®ï?rX   r"   r   )r   rK   rS   rZ   ÚticksN)r=   r>   Úadd_gridspecÚsubgridspecr?   r   r   r5   rM   r   ÚMaxNLocator)rA   ÚgsÚgslÚgsrÚaxslr   Úaxsrr4   s           r   Útest_constrained_layout6rh   c   sò   € ô �*Š*˜MÑ
*€CØ	×	Ñ	˜!˜Q sÐ	Ð	+€BØ
ˆQ‰%×
Ñ
˜A˜qÓ
!€CØ
ˆQ‰%×
Ñ
˜A˜qÓ
!€CØ€DÛˆØ�_‰_˜RÓ ˆØ�‰ˆÜ�R "Ô%ñ ð ‡M�MÐ&Ô'Ø€DÛˆØ�_‰_˜RÓ ˆØ�‰ˆÜ˜R¨"Ñ-Šñ ð
 ‡L�L�˜Ø $°Ü×)Ò)°Ñ2ð ò 4r   c                  óÄ  • [         R                  " SS9n U R                  SS5      nUS   R                  SS5      nUS   R                  SS5      n/ n/ n[	        S5       H/  nX@R                  X&   5      /-  nXPR                  X6   5      /-  nM1     U R                  5         US   R                  5       R                  US   R                  5       R                  :”  d   eg )NT©Úconstrained_layoutr	   r   r   r
   )
r=   r>   r`   ra   Úranger?   Údraw_without_renderingÚget_positionÚy0Úy1)rA   ÚGSÚGSAÚGSBÚaxaÚaxbÚis          r   Útest_identical_subgridspecrw   {   sÔ   € ä
�*Š*¨Ñ
-€Cà	×	Ñ	˜!˜QÓ	€Bà
ˆQ‰%×
Ñ
˜A˜qÓ
!€CØ
ˆQ‰%×
Ñ
˜A˜qÓ
!€Cà
€CØ
€CÜ�1ŽXˆØ—‘ ¡Ó'Ð(Ñ(ˆØ—‘ ¡Ó'Ð(Ñ(Šñ ð ×ÑÔ àˆq‰6×ÑÓ ×#Ñ# c¨!¡f×&9Ñ&9Ó&;×&>Ñ&>Ó>Ð>Ñ>r   c                  ó€  • [         R                  " [        SS9   [        R                  " SS9n [
        R                  " SS5      n[
        R                  " SSUS   5      n[
        R                  " SSUS   5      nU H  nU R                  U5        M     U R                  5         SSS5        g! , (       d  f       g= f)	z2Test for proper warning if fig not set in GridSpeczhThere are no gridspecs with layoutgrids. Possibly did not call parent GridSpec with the "figure" keyword©Úmatchr9   r:   r   r	   r   N)
ÚpytestÚwarnsÚUserWarningr=   r>   r   ÚGridSpecÚGridSpecFromSubplotSpecr?   rm   )rA   rc   rd   re   s       r   Útest_constrained_layout7r€   �   sœ   € ä	�ŠÜð 3ó
5ô �jŠj Ñ.ˆÜ×Ò˜q !Ó$ˆÜ×.Ò.¨q°!°R¸±UÓ;ˆÜ×.Ò.¨q°!°R¸±UÓ;ˆÛˆBØ�O‰O˜BÖñ ð 	×"Ñ"Ô$÷
5÷ 
5ö 
5ús   šBB/Â/
B=zconstrained_layout8.pngc                  óÔ  • [         R                  " SSS9n [        R                  " SSU S9n/ nS H}  nUS:X  a  S	/nOSS
/nU Hf  nU R	                  XU4   5      nX&/-  n[        USS9  US:”  a  UR                  S5        US	:  a  UR                  S5        UR                  S5        Mh     M     U R	                  USSS24   5      nX&/-  n[        USS9nU R                  XrSSS9  g)z/Test for gridspecs that are not completely full)é
   r"   r9   ©Úfigsizer;   r
   r"   r]   ©r   r   r   r   é   é	   r   Ú r	   NrQ   r   rR   )
r=   r>   r   r~   r?   r5   r   r   r   rM   )rA   rc   rG   ÚjÚilistrv   r   r4   s           r   Útest_constrained_layout8r‹   Ÿ   sð   € ô �*Š*˜W¨]Ñ
;€CÜ	×	Ò	˜1˜a¨Ñ	,€BØ
€CÛˆØ�‹6Ø�C‰Eà˜�FˆEÛˆAØ—‘  q D¡Ó*ˆBØ�4‰KˆCÜ˜2¨Ò*Ø�1‹uØ—‘˜bÔ!Ø�1‹uØ—‘˜bÔ!Ø�L‰L˜Öó ñ ð 
�‰˜˜Ašq˜D™Ó	"€BØˆ4�K€CÜ
˜ aÑ
(€Cà‡L�L� $¨s€LÒ3r   zconstrained_layout9.pngc                  ó  • [         R                  " SSSSSS9u  pUR                   H/  n[        USS9nUR	                  S5        UR                  S5        M1     WR                  S5        U R                  WUS	S
S9  U R                  SSS9  g)z4Test for handling suptitle and for sharex and shareyr	   r9   F©r;   ÚsharexÚshareyr<   r   rˆ   r!   rQ   r   rR   zTest Suptitleé   N)	r=   rD   rE   r5   r   r   Ú
set_aspectrM   ÚsuptitlerU   s       r   Útest_constrained_layout9r“   »   sƒ   € ô �|Š|˜A˜q¨Ø#(°ñ8�H€Cà�hŒhˆÜ˜R¨"Ñ-ˆØ
�‰�bÔØ
�‰�bÖñ ð ‡M�M�"ÔØ‡L�L�˜ $¨s€LÑ3Ø‡L�L�¨2€LÒ.r   zconstrained_layout10.pngÚx86_64gü©ñÒMb ?)r7   Útolc                  óÂ   • [         R                  " SSSS9u  pUR                   H'  nUR                  [        R
                  " S5      SS9  M)     WR                  SSS	9  g
)z%Test for handling legend outside axisr	   r9   r:   r^   zThis is a label)Úlabelzcenter left)gš™™™™™é?ç      à?)ÚlocÚbbox_to_anchorN)r=   rD   rE   r   r*   ÚarangeÚlegendrF   s      r   Útest_constrained_layout10r�   Ê   sO   € ô �|Š|˜A˜q¨Ñ7�H€CØ�hŒhˆØ
�‰”—	’	˜"“Ð%6ˆÓ7ñ à‡I�I�-°
€IÒ;r   zconstrained_layout11.pngc                  ó¸  • [         R                  " SSS9n [        R                  " SSU S9n[        R                  " SSUS   5      n[        R                  " SSUS   5      nU R                  US   5      n[        USS	9  / nU H#  nU R                  U5      nXT/-  n[        USS	9nM%     U R                  WUS
SS9  U R                  US   5      n[        USS	9  g)z"Test for multiple nested gridspecsr9   )é   r
   ©r;   r„   r   r	   r]   r   r‡   r   r   ç     €Q@©r   rS   ÚaspectN©	r=   r>   r   r~   r   r?   r   r5   rM   ©rA   Úgs0rd   Úgsl0r   rG   rc   r4   s           r   Útest_constrained_layout11r¨   Ô   sØ   € ô �*Š*˜M°7Ñ
;€CÜ
×
Ò
˜A˜q¨Ñ
-€CÜ
×
*Ò
*¨1¨a°°Q±Ó
8€CÜ×+Ò+¨A¨q°#°a±&Ó9€DØ	�‰˜˜Q™Ó	 €BÜ�˜aÒ Ø
€CÛˆØ�_‰_˜RÓ ˆØˆt‰ˆÜ˜R¨!Ñ,Šñ ð ‡L�L�˜ S°€LÑ5Ø	�‰˜˜Q™Ó	 €BÜ�˜aÓ r   zconstrained_layout11rat.pngc                  óÀ  • [         R                  " SSS9n [        R                  " SSU SS/S9n[        R                  " SSUS   5      n[        R                  " SSUS   SS/S	9nU R                  US   5      n[        US
S9  / nU H#  nU R                  U5      nXT/-  n[        US
S9nM%     U R                  WUSSS9  U R                  US   5      n[        US
S9  g)z4Test for multiple nested gridspecs with width_ratiosr9   )r‚   r
   r    r   r	   é   )r>   Úwidth_ratiosr   )Úheight_ratiosr‡   r   r   r¡   r¢   Nr¤   r¥   s           r   Útest_constrained_layout11ratr­   è   sä   € ô �*Š*˜M°7Ñ
;€CÜ
×
Ò
˜A˜q¨¸A¸q¸6Ñ
B€CÜ
×
*Ò
*¨1¨a°°Q±Ó
8€CÜ×+Ò+¨A¨q°#°a±&ÈÈAÈÑO€DØ	�‰˜˜Q™Ó	 €BÜ�˜aÒ Ø
€CÛˆØ�_‰_˜RÓ ˆØˆt‰ˆÜ˜R¨!Ñ,Šñ ð ‡L�L�˜ S°€LÑ5Ø	�‰˜˜Q™Ó	 €BÜ�˜aÓ r   zconstrained_layout12.pngc                  óÐ  • [         R                  " SSS9n [        R                  " SSU S9nU R	                  USS2S	4   5      nU R	                  USS2S	4   5      n[        US
S9  [        US
S9  U R	                  USS2S4   5      n[        USS9  U R	                  USS2S4   5      n[        USS9  U R	                  USS2S4   5      n[        USS9  UR                  S5        g)z/Test that very unbalanced labeling still works.r9   )rª   é   r    rª   r	   r]   Nr
   r   é   r   r   T)r   r†   r   )r=   r>   r   r~   r?   r   r   )rA   r¦   Úax1Úax2r   s        r   Útest_constrained_layout12r³   ü   sä   € ô �*Š*˜M°6Ñ
:€Cä
×
Ò
˜A˜q¨Ñ
-€Cà
�/‰/˜#˜b˜q˜b !˜e™*Ó
%€CØ
�/‰/˜#˜a™b !˜e™*Ó
%€Cä�˜rÒ"Ü�˜rÒ"à	�‰˜˜Q˜q˜S !˜V™Ó	%€BÜ�˜4Ò Ø	�‰˜˜Q˜q˜S !˜V™Ó	%€BÜ�˜4Ò Ø	�‰˜˜Q™R ˜U™Ó	$€BÜ�˜4Ò Ø‡M�M�)Õr   zconstrained_layout13.pngc            	      ór  • [         R                  " SSSS9u  pUR                   H  n[        USS9nU R	                  X2SSSS	9  M!     [
        R                  " [        5         U R                  5       R                  S
SS9  SSS5        U R                  5       R                  SSS9  g! , (       d  f       N-= f)úTest that padding works.r	   r9   r:   r^   r   r   ç      4@rJ   ©r   rS   r£   rK   r   )ÚwpadÚhpadNçUUUUUUÕ?©Úw_padÚh_pad)
r=   rD   rE   r5   rM   r{   ÚraisesÚ	TypeErrorÚget_layout_engineÚsetrU   s       r   Útest_constrained_layout13rÂ     sš   € ô �|Š|˜A˜q¨Ñ7�H€CØ�hŒhˆÜ˜R¨"Ñ-ˆØ�‰�S¨°C¸TˆÓBñ ô 
�Š”yÕ	!Ø×ÑÓ×#Ñ#¨°Ð#Ñ3÷ 
"à×ÑÓ×Ñ g°WÐÒ=÷ 
"Õ	!ús   Á"B(Â(
B6zconstrained_layout14.pngc            	      óÒ   • [         R                  " SSSS9u  pUR                   H  n[        USS9nU R	                  X2SSSS	9  M!     U R                  5       R                  S
S
SSS9  g)rµ   r	   r9   r:   r^   r   r   r¶   rJ   r·   gUUUUUU¥?çš™™™™™É?©r¼   r½   ÚhspaceÚwspaceN)r=   rD   rE   r5   rM   rÀ   rÁ   rU   s       r   Útest_constrained_layout14rÈ     sn   € ô �|Š|˜A˜q¨Ñ7�H€CØ�hŒhˆÜ˜R¨"Ñ-ˆØ�‰�S¨°C¸TˆÓBñ ð ×ÑÓ×ÑØ Ø˜sð  ò $r   zconstrained_layout15.pngc                  ó–   • S[         R                  S'   [        R                  " SS5      u  pUR                   H  n[        USS9  M     g)zTest that rcparams work.Tzfigure.constrained_layout.user	   r^   r   N)ÚmplÚrcParamsr=   rD   rE   r   rF   s      r   Útest_constrained_layout15rÌ   *  s=   € ð 59„C‡L�LÐ0Ñ1Ü�|Š|˜A˜qÓ!�H€CØ�hŒhˆÜ�R "Ô%ò r   zconstrained_layout16.pngc                  ój   • [         R                  " SS9u  p[        USS9  U R                  / SQ5      ng)zTest ax.set_position.r9   r:   r^   r   )rÄ   rÄ   çš™™™™™Ù?rÎ   N)r=   rD   r   Úadd_axes©rA   r   r²   s      r   Útest_constrained_layout16rÑ   3  s-   € ô �lŠl -Ñ0�G€CÜ�˜bÒ!Ø
�,‰,Ò+Ó
,�Cr   zconstrained_layout17.pngc                  ól  • [         R                  " SS9n [        R                  " SSU S9nU R	                  US   5      nU R	                  USSS24   5      nU R	                  USS2SS	24   5      nU R	                  USS2S
4   5      n[        U5        [        U5        [        U5        [        U5        g)zTest uneven gridspecsr9   r:   r
   r]   ©r   r   r   r   Nr	   r#   )r=   r>   r   r~   r?   r   )rA   rc   r±   r²   Úax3Úax4s         r   Útest_constrained_layout17rÖ   ;  s¤   € ô �*Š*˜MÑ
*€CÜ	×	Ò	˜1˜a¨Ñ	,€Bà
�/‰/˜"˜T™(Ó
#€CØ
�/‰/˜"˜Q ¡˜U™)Ó
$€CØ
�/‰/˜"˜Q™R  1 ˜W™+Ó
&€CØ
�/‰/˜"˜Q™R ˜V™*Ó
%€Cä�ÔÜ�ÔÜ�ÔÜ�Õr   c                  ó$  • [         R                  " SS9u  pUR                  5       n[        U5        [        USS9  U R	                  5         [        UR                  5       R                  UR                  5       R                  :H  5      (       d   eg)z
Test twinxr9   r:   r<   r   N)r=   rD   Útwinxr   rm   Úallrn   ÚextentsrÐ   s      r   Útest_constrained_layout18rÛ   L  sm   € ä�lŠl -Ñ0�G€CØ
�(‰(‹*€CÜ�ÔÜ�˜rÒ"Ø×ÑÔ Üˆr�‰Ó ×(Ñ(¨C×,<Ñ,<Ó,>×,FÑ,FÑF×GÑGÐGÑGr   c                  óh  • [         R                  " SS9u  pUR                  5       n[        U5        [        USS9  UR	                  S5        UR	                  S5        U R                  5         [        UR                  5       R                  UR                  5       R                  :H  5      (       d   eg)z
Test twinyr9   r:   r<   r   rˆ   N)	r=   rD   Útwinyr   r   rm   rÙ   rn   rÚ   rÐ   s      r   Útest_constrained_layout19rÞ   V  s…   € ä�lŠl -Ñ0�G€CØ
�(‰(‹*€CÜ�ÔÜ�˜rÒ"Ø‡M�M�"ÔØ‡L�L�ÔØ×ÑÔ Üˆr�‰Ó ×(Ñ(¨C×,<Ñ,<Ó,>×,FÑ,FÑF×GÑGÐGÑGr   c                  ó  • [         R                  " SSS5      n [         R                  " X SS2S4   5      n[        R                  " 5       nUR                  / SQ5      nUR                  X USS2SS24   5      nUR                  U5        g)z)Smoke test cl does not mess up added Axeséûÿÿÿr"   r†   N)r   r   r   r   r#   )r*   ÚlinspaceÚhypotr=   r>   rÏ   r.   rM   )ÚgxÚimgrA   r   Úmeshs        r   Útest_constrained_layout20ræ   b  so   € ä	�Š�R˜˜AÓ	€BÜ
�(Š(�2š!˜T˜'‘{Ó
#€Cä
�*Š*‹,€CØ	�‰’lÓ	#€BØ�=‰=˜  S b S¨#¨2¨# X¡Ó/€DØ‡L�L�Õr   c                  óª  • [         R                  " SS9u  pU R                  S5        U R                  5         [        R
                  " UR                  5       R                  5      nU R                  S5        U R                  5         [        R
                  " UR                  5       R                  5      n[        R                  R                  X#5        g)z>#11035: repeated calls to suptitle should not alter the layoutr9   r:   Ú	Suptitle0Ú	Suptitle1N)
r=   rD   r’   rm   r*   Úcopyrn   rÚ   ÚtestingÚassert_allclose©rA   r   Úextents0Úextents1s       r   Útest_constrained_layout21rð   m  sŠ   € ä�lŠl -Ñ0�G€Cà‡L�L�ÔØ×ÑÔ Ü�wŠw�r—‘Ó(×0Ñ0Ó1€Hà‡L�L�ÔØ×ÑÔ Ü�wŠw�r—‘Ó(×0Ñ0Ó1€Hä‡J�J×Ñ˜xÕ2r   c                  ó†  • [         R                  " SS9u  pU R                  5         [        R                  " UR                  5       R                  5      nU R                  SSS9  U R                  5         [        R                  " UR                  5       R                  5      n[        R                  R                  X#5        g)zC#11035: suptitle should not be include in CL if manually positionedr9   r:   ÚSuptitler˜   ©r1   N)
r=   rD   rm   r*   rê   rn   rÚ   r’   rë   rì   rí   s       r   Útest_constrained_layout22rô   |  s‚   € ä�lŠl -Ñ0�G€Cà×ÑÔ Ü�wŠw�r—‘Ó(×0Ñ0Ó1€Hà‡L�L�˜s€LÑ#Ø×ÑÔ Ü�wŠw�r—‘Ó(×0Ñ0Ó1€Hä‡J�J×Ñ˜xÕ2r   c                  óÊ   • [        S5       HT  n [        R                  " SSSS9nUR                  SS5      nUS   R	                  SS5      nUR                  SU  35        MV     g	)
zi
Comment in #11035: suptitle used to cause an exception when
reusing a figure w/ CL with ``clear=True``.
r	   r9   TÚ123)r;   ÚclearÚnumr   r   rò   N)rl   r=   r>   r`   ra   r’   )rv   rA   rc   Úsubs       r   Útest_constrained_layout23rú   Š  s^   € ô �1ŽXˆÜ�jŠj °T¸uÑEˆØ×Ñ˜a Ó#ˆØ�‰e×Ñ  1Ó%ˆØ�‰�x ˜s�^Ö$ò	 r   ztest_colorbar_location.pngT)Úremove_textr7   c                  óô  • S[         R                  S'   [         R                  " SSSS9u  pUR                   H0  n[	        U5      nUR                  S5        UR                  S5        M2     U R                  WUSS2S	4   S
S9  U R                  X1SSS24   SSS9  U R                  X1SSS24   SSSS9  U R                  X1SSS24   SSS9  U R                  X1S   SSS9  U R                  X1S	S2S4   SSS9  g)zM
Test that colorbar handling is as expected for various complicated
cases...
Fzpcolormesh.snapr†   r"   r9   r:   rˆ   Nr   rÎ   )r   rS   r#   r	   r˜   rX   )r   rS   rZ   r   gš™™™™™©?)r   rS   rZ   rK   éþÿÿÿr
   ÚtoprÓ   ÚleftÚright)r=   rË   rD   rE   r5   r   r   rM   rU   s       r   Útest_colorbar_locationr  —  sÿ   € ð ',„C‡L�LÐ"Ñ#ä�|Š|˜A˜q¨Ñ7�H€CØ�hŒhˆÜ˜RÓ ˆØ
�‰�bÔØ
�‰�bÖñ ð ‡L�L�˜šQ ˜T™¨3€LÑ/Ø‡L�L�˜R  ! ˜V™¨S¸8€LÑDØ‡L�L�˜Q ¡˜U™¨C¸(È€LÑMØ‡L�L�˜R ¡˜V™¨S¸5€LÑAØ‡L�L�˜T™¨3¸€LÑ@Ø‡L�L�˜Q˜q˜S !˜V™¨S¸7€LÒCr   c                  ó   • [         R                  " SSSS9u  pUS   R                  S5        U R                  5         [        R
                  " US   R                  5       R                  5      n[        R                  R                  U/ SQSS	9  g )
Nr	   r9   r:   r…   FrÓ   )gý/×¢¨?g<Ü‹Qá?gd:tzÞ�Þ?g©¼á´`ï?çñhãˆµøä>)Úrtol)
r=   rD   Úset_visiblerm   r*   rê   rn   rÚ   rë   rì   )rA   rG   rï   s      r   Útest_hidden_axesr  ®  sw   € ô �|Š|˜A˜q¨Ñ7�H€CØˆ�I×Ñ˜%Ô Ø×ÑÔ Ü�wŠw�s˜4‘y×-Ñ-Ó/×7Ñ7Ó8€Hä‡J�J×ÑØÒ:Àð ò Gr   c            
      óÈ  • S GHÛ  n [         R                  " SSSS9u  p/ n[        UR                  5       HÃ  u  pEUR	                  SS9  [        U5      nUR                  XeU SSS	9nX7/-  nUR                  R	                  SS9  US
:w  d  MW  UR                  R                  R                  / 5        UR                  R                  R                  / 5        UR                  / 5        UR                  / 5        MÅ     UR                  5       R                  SSSSS9  UR                  5         U S;   a×  [         R"                  R%                  US   R                  R'                  5       R(                  US   R                  R'                  5       R(                  5        [         R"                  R%                  US
   R                  R'                  5       R(                  US   R                  R'                  5       R(                  5        GM  [         R"                  R%                  US   R                  R'                  5       R*                  US
   R                  R'                  5       R*                  5        [         R"                  R%                  US   R                  R'                  5       R*                  US   R                  R'                  5       R*                  5        GMÞ     g )N)r   rÿ   rþ   rX   r	   r9   r:   Úin)Ú	directionr   g{®Gáz¤?)r   rZ   rS   rK   r   gÇqÇq¬?gš™™™™™¹?rÅ   )rÿ   r   r   r
   )r=   rD   rL   rE   Útick_paramsr5   rM   r   ÚxaxisÚ	set_ticksÚyaxisr   r   rÀ   rÁ   rm   r*   rë   rì   rn   Úx0ro   )rZ   rA   rG   ÚcbsrN   r   ÚpcÚcbs           r   Útest_colorbar_alignr  »  s3  € Ü6ˆÜ—<’<  1¨]Ñ;‰ˆØˆÜ §¡Ö)‰FˆBØ�N‰N TˆNÑ*Ü Ó#ˆBØ—‘˜b°(À3Ø"&ð ð (ˆBà�4‰KˆCØ�E‰E×Ñ¨ÐÑ-Ø�Q�wØ—‘—‘×%Ñ% bÔ)Ø—‘—‘×%Ñ% bÔ)Ø×"Ñ" 2Ô&Ø×"Ñ" 2Ö&ñ *ð 	×ÑÓ×#Ñ#¨&¸Ø+.°sð 	$ñ 	<ð 	×"Ñ"Ô$ØÐ(Ó(Ü�J‰J×&Ñ& s¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'BØ'*¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'BôDä�J‰J×&Ñ& s¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'BØ'*¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'B÷Dô �J‰J×&Ñ& s¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'BØ'*¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'BôDä�J‰J×&Ñ& s¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'BØ'*¨1¡v§y¡y×'=Ñ'=Ó'?×'BÑ'B÷Dò7 7r   ztest_colorbars_no_overlapV.pngc                  óP  • [         R                  " SSS9n U R                  SSSSS9nU Hh  nUR                  R	                  [
        R                  " 5       5        UR                  SS	S
9  UR                  SS/SS//5      nU R                  X2SS9  Mj     U R                  S5        g )N)r	   r†   r9   rƒ   r	   r   T©rŽ   r�   Úbothr  ©Úaxisr	  r
   r†   Úvertical©r   ÚorientationÚfoo)r=   r>   rD   r  Úset_major_formatterr   ÚNullFormatterr
  ÚimshowrM   r’   ©rA   rG   r   Úims       r   Útest_colorbars_no_overlapVr!  Û  s–   € ä
�*Š*˜V¨MÑ
:€CØ
�,‰,�q˜! D°ˆ,Ð
6€CÛˆØ
�‰×$Ñ$¤V×%9Ò%9Ó%;Ô<Ø
�‰˜F¨dˆÑ3Ø�Y‰Y˜˜A˜  A Ð'Ó(ˆØ�‰�R¨JˆÓ7ñ	 ð
 ‡L�L�Õr   ztest_colorbars_no_overlapH.pngc                  óP  • [         R                  " SSS9n U R                  S5        U R                  SSSSS9nU Hh  nUR                  R                  [        R                  " 5       5        UR                  S	S
S9  UR                  SS/SS//5      nU R                  X2SS9  Mj     g )N)r†   r	   r9   rƒ   r  r   r	   Tr  r  r  r  r
   r†   Ú
horizontalr  )r=   r>   r’   rD   r  r  r   r  r
  r  rM   r  s       r   Útest_colorbars_no_overlapHr$  ç  s”   € ä
�*Š*˜V¨MÑ
:€CØ‡L�L�ÔØ
�,‰,�q˜! D°ˆ,Ð
6€CÛˆØ
�‰×$Ñ$¤V×%9Ò%9Ó%;Ô<Ø
�‰˜F¨dˆÑ3Ø�Y‰Y˜˜A˜  A Ð'Ó(ˆØ�‰�R¨LˆÓ9ò	 r   c                  óh  • [         R                  " SSSS9u  pUS   R                  / SQ5        U R                  5         US   R	                  5       n[
        R                  R                  USS/SS//5        [         R                  " SSSS9u  pUS   R                  / SQ5        US   R                  [
        R                  R                  S	S	5      5      nU R                  X1S   S
9  U R                  5         US   R	                  5       n[
        R                  R                  USS/SS//5        g )Nr   r	   r9   r:   r   ©rÄ   rÄ   ç333333Ó?r'  rÄ   r˜   é   ©r   g)\�Âõ(Ü?)r=   rD   Úset_positionrm   rn   r*   rë   rì   r.   ÚrandomÚrandrM   )rA   rG   Úppr  s       r   Útest_manually_set_positionr.  ó  s  € Ü�|Š|˜A˜q¨Ñ7�H€CØˆ�F×ÑÒ,Ô-Ø×ÑÔ Ø	ˆQ‰×	Ñ	Ó	€BÜ‡J�J×Ñ˜r S¨# J°°c°
Ð#;Ô<ä�|Š|˜A˜q¨Ñ7�H€CØˆ�F×ÑÒ,Ô-Ø	ˆQ‰×	Ñ	œ2Ÿ9™9Ÿ>™>¨"¨bÓ1Ó	2€BØ‡L�L�˜A™€LÑØ×ÑÔ Ø	ˆQ‰×	Ñ	Ó	€BÜ‡J�J×Ñ˜r S¨# J°°s°Ð#<Õ=r   ztest_bboxtight.pngÚbbox_inchesÚtight)rû   r7   Úsavefig_kwargc                  óR   • [         R                  " SS9u  pUR                  S5        g ©Nr9   r:   r%   ©r=   rD   r‘   r@   s     r   Útest_bboxtightr5    s    € ô �lŠl -Ñ0�G€CØ‡M�M�"Õr   ztest_bbox.pngr˜   g      @r	   c                  óR   • [         R                  " SS9u  pUR                  S5        g r3  r4  r@   s     r   Ú	test_bboxr7    s    € ô
 �lŠl -Ñ0�G€CØ‡M�M�"Õr   c                  óê  • [         R                  " SSSSSS0S9u  n u  pnUR                  SS5        UR                  S	5        UR                  S
S5        UR                  S	5        UR                  SS5        UR                  S	5        U R	                  XU4S9  U R                  5         UR                  R                  R                  5       UR                  R                  R                  5       UR                  R                  R                  5       /n[        R                  R                  US   R                  US   R                  /US   R                  SSS9  US   R                  S:¼  d   eg)zÚ
Tests for a bug in which constrained layout and align_ylabels on
three unevenly sized subplots, one of whose y tick labels include
negative numbers, drives the non-negative subplots' y labels off
the edge of the plot
r
   r   r9   )gš™™™™™@r¯   r¬   )r   r   gffffffæ?)r;   r„   Úgridspec_kwr   ÚLabelg      ø¿g      ø?)rG   r	   r  )r  ÚatolN)r=   rD   Úset_ylimr   Úalign_ylabelsrm   r  r—   Úget_window_extentr*   rë   rì   r  )rA   rÔ   r±   r²   Úafter_aligns        r   Útest_align_labelsr@    sI  € ô Ÿ<š<¨¨1°]Ø08Ø5Dð GLð 5MñNÑ€C‰ˆ#�Cð
 ‡L�L��AÔØ‡N�N�7Ôà‡L�L��sÔØ‡N�N�7Ôà‡L�L��AÔØ‡N�N�7Ôà×Ñ˜3 S˜/ÐÑ*à×ÑÔ Ø—9‘9—?‘?×4Ñ4Ó6Ø—9‘9—?‘?×4Ñ4Ó6Ø—9‘9—?‘?×4Ñ4Ó6ð8€Kô ‡J�J×Ñ ¨A¡× 1Ñ 1°;¸q±>×3DÑ3DÐEØ*¨1™~×0Ñ0°q¸uð ñ Fð �q‰>×Ñ Ó!Ð!Ñ!r   c                  ó   • [         R                  " SS9u  pU R                  5         UR                  U R                  R                  5       5      nU R                  S5        U R                  S5        U R                  5         UR                  U R                  R                  5       5      nUR                  UR                  S-   :”  d   eUR                  UR                  S-   :”  d   e[         R                  " SS9u  pU R                  5         UR                  U R                  R                  5       5      nU R                  SSS9  U R                  SSS9  U R                  5         UR                  U R                  R                  5       5      nUR                  UR                  S-   :”  d   eUR                  UR                  S-   :”  d   eg )	Nr9   r:   ÚBooÚBooyg      $@r˜   )r2   ró   )
r=   rD   rm   Úget_tightbboxÚcanvasÚget_rendererÚ	supxlabelÚ	supylabelro   r  )rA   r   Úpos0Úposs       r   Útest_suplabelsrK  6  sf  € Ü�lŠl -Ñ0�G€CØ×ÑÔ Ø×Ñ˜CŸJ™J×3Ñ3Ó5Ó6€DØ‡M�M�%ÔØ‡M�M�&ÔØ×ÑÔ Ø
×
Ñ
˜3Ÿ:™:×2Ñ2Ó4Ó
5€CØ�6‰6�D—G‘G˜d‘NÓ"Ð"Ð"Ø�6‰6�D—G‘G˜d‘NÓ"Ð"Ð"ä�lŠl -Ñ0�G€CØ×ÑÔ Ø×Ñ˜CŸJ™J×3Ñ3Ó5Ó6€Dà‡M�M�%˜3€MÑØ‡M�M�%˜3€MÑØ×ÑÔ Ø
×
Ñ
˜3Ÿ:™:×2Ñ2Ó4Ó
5€CØ�6‰6�D—G‘G˜d‘NÓ"Ð"Ð"Ø�6‰6�D—G‘G˜d‘NÓ"Ð"Ñ"r   c                  ó¦   • [         R                  " 5       n U R                  SS5      nU R                  USS 2SS 24   5      nU R	                  5         g )Nr
   r   r   )r=   r>   r`   r?   rm   )rA   rc   Úsps      r   Útest_gridspec_addressingrN  M  sE   € Ü
�*Š*‹,€CØ	×	Ñ	˜!˜QÓ	€BØ	�‰˜˜A™B ¡˜F™Ó	$€BØ×ÑÕ r   c                  ó  • [         R                  " SS9u  pU R                  5         [        R                  " [
        SS9   [         R                  " 5       u  pU R                  S5        U R                  5         S S S 5        [        R                  " [
        SS9   [         R                  " 5       u  pU R                  SSS.5        U R                  5         S S S 5        g ! , (       d  f       Nl= f! , (       d  f       g = f)NTrj   zwill be deprecatedry   rJ   r»   )r=   rD   rm   r{   r|   ÚPendingDeprecationWarningÚset_constrained_layoutr@   s     r   Útest_discouraged_apirR  T  s¼   € Ü�lŠl¨dÑ3�G€CØ×ÑÔ ä	�ŠÔ/Ø0ó
2ä—,’,“.‰ˆØ×"Ñ" 4Ô(Ø×"Ñ"Ô$÷	
2ô 
�ŠÔ/Ø0ó
2ä—,’,“.‰ˆØ×"Ñ"¨T¸DÑ#AÔBØ×"Ñ"Ô$÷	
2ð 
2÷
2õ 
2ú÷
2õ 
2ús   Á 9CÂ<C0Ã
C-Ã0
C>c                  óT   • [         R                  " SS0S9u  pU R                  5         g )Nr½   rJ   rj   )r=   rD   rm   r@   s     r   Útest_kwargsrT  e  s"   € Ü�lŠl¨w¸¨oÑ>�G€CØ×ÑÕ r   c                  ó0  • [         R                  " SS9u  pU R                  5       R                  / SQS9  U R	                  5         UR                  5       nUR                  S:  d   eUR                  S:  d   e[         R                  " SS9u  pU R                  5       R                  / SQS9  U R	                  5         UR                  5       nUR                  S:  d   eUR                  S:  d   eUR                  S:”  d   eUR                  S:”  d   eg )Nr9   r:   )r   r   r˜   r˜   )Úrectr˜   r&  rÄ   )
r=   rD   rÀ   rÁ   rm   rn   Úx1rp   r  ro   )rA   r   Úpposs      r   Ú	test_rectrY  j  sè   € Ü�lŠl -Ñ0�G€CØ×ÑÓ×ÑÒ%5ÐÑ6Ø×ÑÔ Ø�?‰?Ó€DØ�7‰7�S‹=Ðˆ=Ø�7‰7�S‹=Ðˆ=ä�lŠl -Ñ0�G€CØ×ÑÓ×ÑÒ%9ÐÑ:Ø×ÑÔ Ø�?‰?Ó€DØ�7‰7�S‹=Ðˆ=Ø�7‰7�S‹=Ðˆ=Ø�7‰7�S‹=Ðˆ=Ø�7‰7�S‹=Ð‰=r   c            	      óx  • [         R                  " SSSSSS9u  pUR                   H2  nUR                  [        R
                  R                  SS5      5      nM4     U R                  WUS9  U R                  5         US   R                  5       n[        R                  R                  UR                  S	S
S9  US   R                  5       n[        R                  R                  UR                  SSS9  [         R                  " SSSSSSS9u  pUR                   H2  nUR                  [        R
                  R                  SS5      5      nM4     U R                  X1S9  U R                  5         US   R                  5       n[        R                  R                  UR                  SSS9  [        R                  R                  UR                  SS
S9  US   R                  5       n[        R                  R                  UR                  SSS9  [        R                  R                  UR                  SS
S9  g )Nr
   r	   Ú
compressedTr�   r(  r)  rÓ   g™»–�zÎ?rQ   ©r;  r…   g™»–�zæ?çü©ñÒMbP?)r"   r†   )r;   rŽ   r�   r„   gÄZ|
€ñ¬?g+ö—Ý“‡ë?)r   r	   g’\þCúíë?gMóŽSt$Ç?)r=   rD   rE   r  r*   r+  ÚrandnrM   rm   rn   rë   rì   r  rW  rp   ro   )rA   rG   r   r  rJ  s        r   Útest_compressed1r_  |  sÃ  € Ü�|Š|˜A˜q¨Ø#'°ñ6�H€Cà�hŒhˆØ�Y‰Y”r—y‘y—‘ r¨2Ó.Ó/Šñ ð ‡L�L�˜€LÑØ×ÑÔ à
ˆd‰)×
 Ñ
 Ó
"€CÜ‡J�J×Ñ˜sŸv™v v°DÐÑ9Ø
ˆd‰)×
 Ñ
 Ó
"€CÜ‡J�J×Ñ˜sŸv™v v°DÐÑ9ô �|Š|˜A˜q¨Ø#'°¸fñF�H€Cà�hŒhˆØ�Y‰Y”r—y‘y—‘ r¨2Ó.Ó/Šñ ð ‡L�L�€LÑØ×ÑÔ à
ˆd‰)×
 Ñ
 Ó
"€CÜ‡J�J×Ñ˜sŸv™v w°TÐÑ:Ü‡J�J×Ñ˜sŸv™v v°DÐÑ9Ø
ˆd‰)×
 Ñ
 Ó
"€CÜ‡J�J×Ñ˜sŸv™v v°DÐÑ9Ü‡J�J×Ñ˜sŸv™v v°DÐÒ9r   c                  óH  • [         R                  " SSSSSS.S9u  n u  pUR                  S5        UR                  S	5        UR                  S5        UR                  S
5        U R	                  S5      nU R                  5         UR                  5       S
   [        R                  " SSS9:X  d   eU R	                  SSS9nU R                  5         UR                  5       S
   S:X  d   eU R	                  SSS9nU R                  5         UR                  5       S
   S:X  d   eg )Nr	   )r†   r‚   r[  )g      Ð?g      è?r   )r¬   rÆ   )Únrowsr„   r;   r9  Úequalrº   r   r   gà-� øç?r]  )Úabsg\�Âõ(\ï?ró   F)Ú	in_layout)	r=   rD   r  Úset_box_aspectr’   rm   rn   r{   Úapprox)rA   Úax0r±   Útitles       r   Útest_compressed_suptitleri  ›  s  € Ü—l’lØ˜¨Ø&4ÀÑBñD�O€C‰ˆ#ð ‡H�HˆWÔØ×Ñ�sÔà‡H�HˆWÔØ×Ñ�qÔà�L‰L˜Ó!€EØ×ÑÔ Ø×ÑÓ Ñ"¤f§m¢m°FÀÑ&EÓEÐEÐEà�L‰L˜ DˆLÐ)€EØ×ÑÔ Ø×ÑÓ Ñ" dÓ*Ð*Ð*à�L‰L˜¨EˆLÐ2€EØ×ÑÔ Ø×ÑÓ Ñ" dÓ*Ð*Ñ*r   z
arg, state)TT)FFrV  c                 óZ   • [         R                  " U S9u  p#UR                  5       UL d   eg )Nrj   )r=   rD   Úget_constrained_layout)ÚargÚstaterA   r   s       r   Útest_set_constrained_layoutrn  ³  s+   € ô �lŠl¨cÑ2�G€CØ×%Ñ%Ó'¨5Ò0Ð0Ñ0r   c                  óŒ  • [         R                  " 5       u  p[        R                  " [        5         U R                  S5        U R                  5       (       d   eU R                  S5        U R                  5       (       a   eU R                  S5        U R                  5       (       d   e S S S 5        g ! , (       d  f       g = f)NTF)r=   rD   r{   r|   rP  rQ  rk  r@   s     r   Útest_constrained_togglerp  ¾  s‘   € Ü�lŠl‹n�G€CÜ	�ŠÔ/Õ	0Ø×"Ñ" 4Ô(Ø×)Ñ)×+Ñ+Ð+Ð+Ø×"Ñ" 5Ô)Ø×-Ñ-×/Ñ/Ð/Ð/Ø×"Ñ" 4Ô(Ø×)Ñ)×+Ñ+Ð+Ñ+÷ 
1×	0Ö	0ús   ²A9B5Â5
Cc                  ó  • [         R                  " SSS9n U R                  5         U R                  5         [         R                  " S5        A [
        R                  " 5         [        S [
        R                  " 5        5       5      (       a   eg )NT)r‚   r‚   )rk   r„   rÙ   c              3   ój   #   • U  H)  n[        U[        R                  R                  5      v •  M+     g 7f)N)Ú
isinstancerÊ   Ú_layoutgridÚ
LayoutGrid)Ú.0Úobjs     r   Ú	<genexpr>Ú#test_layout_leak.<locals>.<genexpr>Ò  s+   é € ð 0Ú.�sô ˜c¤3§?¡?×#=Ñ#=×>Ð>Ú.ùs   ‚13)	r=   r>   r?   rm   ÚcloseÚgcÚcollectÚanyÚget_objects)rA   s    r   Útest_layout_leakr  É  sr   € ô �*Š*¨°hÑ
?€CØ‡O�OÔØ×ÑÔ Ü‡I‚IˆeÔØÜ‡J‚J„LÜñ 0Ü ŸnšnÔ.ó0÷ 0ñ 0ð 0ð 0ð 0r   c                  óR  • [         R                  " SSS9n U R                  SS5      n/ nUR                  5        Hx  nUR	                  SS5      n[        S5       H.  nX#R                  XES4   5      /-  nUS   R                  5         M0     UR                  US	S	2S4   5      R                  5         Mz     U R                  5         USS	  HY  n[        R                  " UR                  5       R                  S   US   R                  5       R                  S   S
S9(       a  MY   e   g	)zv
Test that the submerged margin logic does not get called multiple times
on same axes if it is already in a subfigure
)r†   r"   r9   rƒ   r
   r   r	   r   r#   Ng�íµ ÷Æ°>r\  )r=   r>   Ú
subfiguresÚflattenr`   rl   r?   r   rm   r*   Úallclosern   Úbounds)rA   ÚfiguresrG   Úfrc   rv   r   s          r   Útest_submerged_subfigr‡  Ö  s  € ô
 �*Š*˜V¨MÑ
:€CØ�n‰n˜Q Ó"€GØ
€CØ�_‰_ÖˆØ�^‰^˜A˜qÓ!ˆÜ�q–ˆAØ—M‘M "¨ T¡(Ó+Ð,Ñ,ˆCØ�‰G�L‰LŽNñ ð 	
�‰�bš˜A˜‘hÓ×$Ñ$Ö&ñ ð ×ÑÔ Ø�!�"‹gˆÜ�{Š{˜2Ÿ?™?Ó,×3Ñ3°BÑ7Ø˜q™6×.Ñ.Ó0×7Ñ7¸Ñ;À$÷Hñ Hð 	Hð Hò r   )r^   F)r^   )Fr{  ÚplatformÚnumpyr*   r{   Ú
matplotlibrÊ   Úmatplotlib.testing.decoratorsr   Úmatplotlib.pyplotÚpyplotr=   Úmatplotlib.transformsÚ
transformsÚmtransformsr   r   ÚmarkÚusefixturesÚ
pytestmarkr   r5   rB   rH   rO   rV   r[   rh   rw   r€   r‹   r“   Úmachiner�   r¨   r­   r³   rÂ   rÈ   rÌ   rÑ   rÖ   rÛ   rÞ   ræ   rð   rô   rú   r  r  r  r!  r$  r.  r5  ÚBboxr7  r@  rK  rN  rR  rT  rY  r_  ri  Úparametrizern  rp  r  r‡  © r   r   Ú<module>r˜     s  ðÛ 	Û ã Û ã Ý :Ý Ý +ß 'ð ‡K�K×ÑÐ/Ó0ð€
ô
	ô
ñ Ð,Ð-°WÑ=ñ"ó >ð"ñ Ð,Ð-°WÑ=ñ&ó >ð&ñ Ð,Ð-°WÑ=ñ
*ó >ð
*ñ Ð,Ð-°WÑ=ñ4ó >ð4ñ Ð,Ð-°WÑ=ñ$ó >ð$ñ Ð,Ð-°WÑ=ñ4ó >ð4ò.?ò(%ñ  Ð,Ð-°WÑ=ñ4ó >ð4ñ6 Ð,Ð-°WÑ=ñ/ó >ð/ñ Ð-Ð.°gØ#×+Ò+Ó-°Ó9‘a¸uñFñ<óFð<ñ Ð-Ð.°gÑ>ñ!ó ?ð!ñ& Ð0Ð1¸ÑAñ!ó Bð!ñ& Ð-Ð.°gÑ>ñó ?ðñ* Ð-Ð.°gÑ>ñ>ó ?ð>ñ Ð-Ð.°gÑ>ñ$ó ?ð$ñ Ð-Ð.°gÑ>ñ&ó ?ð&ñ Ð-Ð.°gÑ>ñ-ó ?ð-ñ Ð-Ð.°gÑ>ñó ?ðò Hò	Hòò3ò3ò
%ñ Ð/Ð0Ø"¨'ñ3ñDó3ðDò*
GòDñ@ Ð3Ð4¸GÑDñó Eðñ Ð3Ð4¸GÑDñ:ó Eð:ò>ñ  Ð'Ð(Ø"¨'Ø!.°Ð 8ñ:ñó:ðñ
 �?Ð#Ø"¨'Ø!.Ø!,×!1Ò!1°C¸°8¸cÀ1¸XÐ2FÓ!Gð!IñJñó	Jðò
"òD#ò.!ò%ò"!ò
ò$:ò>+ð0 ‡�×Ñ˜ØØØˆ€JØˆd€^�TÐð	(ó ñ1óð1ò
,ò
0óHr   