Ë
    íÍ:jTj  ã                   ó‚  — d dl Z d dlZd dlZd dlZd dlmZ d dlmZmZ d dlm	Z
 d dlZd dlZd dlmZmZ d dlmZ d dlmZ d dlZd dlmZ d dlmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z) d dl*m+Z+ d	„ Z,d
„ Z-d„ Z.d„ Z/d„ Z0d„ Z1dddi ejd                  d«      fddddœ ejd                  d«      fddddœ ejd                  d«      fdddi ejd                  d«      fddddœ ejd                  d«      fddddœ ejd                  d«      fgZ3g d¢Z4ejj                  jm                  de3e4¬«      d„ «       Z7d„ Z8d„ Z9d„ Z:d„ Z;d„ Z<d „ Z=ejj                  jm                  d! e=d"«      «      d#„ «       Z>ejj                  jm                  d$ e=d%«      «      d&„ «       Z?d'„ Z@ejj                  jm                  d(d)d*eAfd+d, ej„                  d-«      d-fd.d/eAfd-geAfg«      d0„ «       ZCejj                  jm                  d1d2d3eAfd+d, ej„                  d-«      d-fd.d/eAfd-geAfg«      d4„ «       ZDd5„ ZEd6„ ZFd7„ ZGejj                  j‘                  ej’                  d8k7  d9¬:«      d;„ «       ZJejj                  j‘                  ej’                  d8k7  d9¬:«      d<„ «       ZKejj                  j‘                  ej’                  d8k(  xr  ej˜                  «        d=¬:«      d>„ «       ZMd?„ ZNejj                  jm                  d@g dA¢«      dB„ «       ZOejj                  jm                  d@g dC¢«      dD„ «       ZPejj                  jm                  d@g dE¢«      dF„ «       ZQejj                  jm                  d@g dG¢«      dH„ «       ZRejj                  jm                  d@dIdJg«      dK„ «       ZSejj                  jm                  dLdMdNdOdPdQdRdSdTdUdVdWgfg«      dX„ «       ZTdY„ ZUdZ„ ZVd[„ ZWy)\é    N)Úmock)ÚcyclerÚCycler)Úparse)Ú_apiÚ_c_internal_utils)Úrcsetup)Úvalidate_boolÚvalidate_colorÚvalidate_colorlistÚ_validate_color_or_linecolorÚvalidate_cyclerÚvalidate_floatÚvalidate_fontstretchÚvalidate_fontweightÚvalidate_hatchÚvalidate_hist_binsÚvalidate_intÚvalidate_markeveryÚvalidate_stringlistÚvalidate_sketchÚ_validate_linestyleÚ_listify_validator)Úsubprocess_run_for_testingc                 óÄ  — t        j                  dd¬«       t        j                  dd¬«       t         j                  d   }t         j                  d   }| d	z  }|j                  d
d¬«       t        j                  d| i¬«      5  t         j                  d   | k(  sJ ‚	 d d d «       t         j                  d   |k(  sJ ‚t        j                  |¬«      5  t         j                  d   dk(  sJ ‚	 d d d «       t         j                  d   |k(  sJ ‚t        j                  |ddi¬«      5  t         j                  d   dk(  sJ ‚	 d d d «       t         j                  d   |k(  sJ ‚t        j                  ddi«      d„ «       } |«         |«        t        j
                  |«       t         j                  d   dk(  sJ ‚y # 1 sw Y   �ŒxY w# 1 sw Y   ŒÚxY w# 1 sw Y   Œ“xY w)NÚtextF)ÚusetexÚlinesé   )Ú	linewidthútext.usetexúlines.linewidthútest_rcparams.rczlines.linewidth: 33úutf-8©Úencoding©Úrc©Úfnameé!   é,   )r*   r(   c                  ó4   — t         j                  d   dk(  sJ ‚y )Nr"   r,   ©ÚmplÚrcParams© ó    ús/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/matplotlib/tests/test_rcparams.pyÚfuncztest_rcparams.<locals>.func?   s   € ä�|‰|Ð-Ñ.°"Ò4Ð4Ñ4r2   )r/   r(   r0   Ú
write_textÚ
rc_contextÚrc_file)Útmp_pathr   r    Úrcpathr4   s        r3   Útest_rcparamsr:   %   s·  € Ü‡F�Fˆ6˜%Õ Ü‡F�Fˆ7˜bÕ!ä�\‰\˜-Ñ(€FÜ—‘Ð.Ñ/€IàÐ*Ñ*€FØ
×ÑÐ+°gÐÔ>ô 
�‰˜M¨v¨:Ð6Ô	7ñ ;Ü�|‰|˜MÑ*°6¨zÒ:Ð:Ñ:÷;ä�<‰<˜Ñ&¨&Ò0Ð0Ð0ô 
�‰˜fÔ	%ñ 5Ü�|‰|Ð-Ñ.°"Ò4Ð4Ñ4÷5ä�<‰<Ð)Ñ*¨iÒ7Ð7Ð7ô 
�‰˜fÐ*;¸RÐ)@Ô	Añ 5Ü�|‰|Ð-Ñ.°"Ò4Ð4Ñ4÷5ä�<‰<Ð)Ñ*¨iÒ7Ð7Ð7ô 	‡^�^Ð&¨Ð+Ó,ñ5ó -ð5ñ 	„FÙ„Fô ‡K�K�ÔÜ�<‰<Ð)Ñ*¨bÒ0Ð0Ñ0÷1;ñ ;ú÷
5ð 5ú÷
5ð 5ús$   ÂF=ÃG
Ä*GÆ=GÇ
GÇGc                  óB  — t        j                  ddgddddœ«      } dj                  «       }t        | «      }||k(  sJ ‚dj                  «       }t	        | «      |k(  sJ ‚d	d
gt        | j                  d«      «      k(  sJ ‚dgt        | j                  d«      «      k(  sJ ‚y )NzZapf ChanceryÚcursiveú
sans-serifÚnormalé   )úfont.cursiveúfont.familyzfont.weightú	font.sizez¢
RcParams({'font.cursive': ['Zapf Chancery', 'cursive'],
          'font.family': ['sans-serif'],
          'font.size': 12.0,
          'font.weight': 'normal'})zk
font.cursive: ['Zapf Chancery', 'cursive']
font.family: ['sans-serif']
font.size: 12.0
font.weight: normalr@   rB   zi[vz]rA   Úfamily)r/   ÚRcParamsÚlstripÚreprÚstrÚsortedÚfind_allÚlist)r(   Úexpected_reprÚactual_reprÚexpected_strs       r3   Útest_RcParams_classrN   K   s¹   € Ü	�‰¨¸Ð'CØ&2Ø&.Ø$&ñ(ó 
)€Bð
'÷ (.¡v£xð	 ô �r“(€KØ˜-Ò'Ð'Ð'ð÷ ‘v“xð	 ô ˆr‹7�lÒ"Ð"Ð"ð ˜KÐ(¬F°2·;±;¸wÓ3GÓ,HÒHÐHÐHØˆ?œd 2§;¡;¨xÓ#8Ó9Ò9Ð9Ñ9r2   c                  ó¸   — t        j                  ddi«      } ddi}t        j                  t        «      5  | j                  |«       d d d «       y # 1 sw Y   y xY w)Núfigure.figsize)ç      @é*   ©rQ   rR   é   )r/   rD   ÚpytestÚraisesÚ
ValueErrorÚupdate)r(   Úbad_dicts     r3   Útest_rcparams_updaterZ   g   sM   € Ü	�‰Ð'¨Ð3Ó	4€BØ  ,Ð/€Hä	�‰”zÓ	"ñ Ø
�	‰	�(Ô÷÷ ñ ús   µAÁAc                  óŽ   — t        j                  t        «      5  t        j                  ddi«       d d d «       y # 1 sw Y   y xY w)NrP   rS   )rU   rV   rW   r/   rD   r1   r2   r3   Útest_rcparams_initr\   o   s5   € Ü	�‰”zÓ	"ñ 7Ü�‰Ð&¨Ð5Ô6÷7÷ 7ñ 7ús	   š;»Ac                  ó¤   — ddl m}  t        j                  t        d¬«      5   |  | t        d«      ¬«      dd«       d d d «       y # 1 sw Y   y xY w)	Nr   )r   z3 were given©ÚmatchÚrgb)Úcoloré   é   )Úmatplotlib.rcsetupr   rU   rV   Ú	TypeErrorrJ   )Úccls    r3   Útest_nargs_cyclerrg   t   s=   € Ý0Ü	�‰”y¨Ô	7ñ *á‰C”d˜5“kÔ" A qÔ)÷*÷ *ñ *ús   ¢AÁAc                  óþ  — t        j                  «       5  t        j                  «       5  t        j                  j                  «       } | D ]  }| |   t        j                  |<   Œ 	 d d d «       t        j                  «       5  t        j                  t        j                  «       d d d «       d d d «       t        j                  t        «      5  t        d «       d d d «       t        j                  t        «      5  t        j                  «       5  dt        j                  d<   d d d «       d d d «       y # 1 sw Y   ŒÑxY w# 1 sw Y   Œ�xY w# 1 sw Y   Œ¡xY w# 1 sw Y   Œ€xY w# 1 sw Y   ŒBxY w# 1 sw Y   y xY w)NTzsvg.fonttype)r   Ú'suppress_matplotlib_deprecation_warningr/   r6   r0   ÚcopyÚdeepcopyrU   rV   rW   r
   )Ú_copyÚkeys     r3   Útest_Bug_2543rn   {   s&  € ô 
×	5Ñ	5Ó	7ñ (Ü�^‰^Óñ 	/Ü—L‘L×%Ñ%Ó'ˆEØò /�Ø$)¨#¡J”—‘˜SÒ!ñ/÷	/ô �^‰^Óñ 	(Ü�M‰Mœ#Ÿ,™,Ô'÷	(÷(ô 
�‰”zÓ	"ñ Ü�dÔ÷ä	�‰”zÓ	"ñ 0Ü�^‰^Óñ 	0Ø+/ŒC�L‰L˜Ñ(÷	0÷0ð 0÷	/ð 	/ú÷	(ð 	(ú÷(ð (ú÷ð ú÷	0ð 	0ú÷0ð 0úsj   •Eª<D7Á'EÂ$EÂ'EÃEÃ=E3ÄE'Ä&E3Ä7E 	Ä<EÅE	ÅEÅEÅE$Å'E0	Å,E3Å3E<Úfacera   ÚrÚinherit)ra   zaxes.facecolorÚgÚedge)ra   zaxes.edgecolor)zsame facecolorzinherited facecolorúdifferent facecolorzsame edgecolorzinherited edgecolorrt   zcolor_type, param_dict, target)Úidsc                 ó\  — |j                  d«      |d| › d�<   d| › d�}t        j                  |«      5  t        j                  «       \  }}|j                  t        d«      d¬«       |j                  «       } t        |j                  |«      «       |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nra   zlegend.Úget_rc   Útest)Úlabel)
Úpopr/   r6   ÚpltÚsubplotsÚplotÚrangeÚlegendÚgetattrÚlegendPatch)Ú
color_typeÚ
param_dictÚtargetÚget_funcÚ_ÚaxÚlegs          r3   Útest_legend_colorsr‰   £   s›   € ð /9¯n©n¸WÓ.E€J�˜˜ EÐ*Ñ+Ø�j�\ Ð'€Hä	�‰˜
Ó	#ñ >Ü—‘“‰ˆˆ2Ø
�‰”�a“ ˆÔ'Ø�i‰i‹kˆØ1Œw�s—‘¨Ó1Ó3°vÒ=Ð=Ñ=÷	>÷ >ñ >ús   ´A$B"Â"B+c                  óœ   — dt         j                  d<   t         j                  j                  ddgddg«      } | j	                  «       dk(  sJ ‚y )Nrp   zlines.markerfacecolorrT   rb   )r/   r0   r   ÚLine2DÚget_markerfacecolor©Úlns    r3   Útest_mfc_rcparamsr�   °   óF   € Ø,/„C‡L�LÐ(Ñ)Ü	�‰×	Ñ	˜1˜a˜& 1 a &Ó	)€BØ×!Ñ!Ó# sÒ*Ð*Ñ*r2   c                  óœ   — dt         j                  d<   t         j                  j                  ddgddg«      } | j	                  «       dk(  sJ ‚y )Nrp   zlines.markeredgecolorrT   rb   )r/   r0   r   r‹   Úget_markeredgecolorr�   s    r3   Útest_mec_rcparamsr“   ¶   r�   r2   c                  ó¤   — dt         j                  d<   t        j                  «       \  } }|j	                  d«      }|j                  «       dk(  sJ ‚y )Nrp   zaxes.titlecolorÚTitle)r/   r0   r{   r|   Ú	set_titleÚ	get_color)r†   r‡   Útitles      r3   Útest_axes_titlecolor_rcparamsr™   ¼   sC   € Ø&)„C‡L�LÐ"Ñ#Ü�L‰L‹N�E€A€rØ�L‰L˜Ó!€EØ�?‰?Ó Ò#Ð#Ñ#r2   c                 óæ   — | dz  }|j                  dd¬«       t        j                  dd¬«      5  t        j                  |dd	«      }d d d «       j                  d
«      dk(  sJ ‚y # 1 sw Y   Œ xY w)Nr#   ztimezone: UTCr$   r%   zlocale.getpreferredencodingz	UTF-32-BE)Úreturn_valueTFÚtimezoneÚUTC)r5   r   Úpatchr/   Úrc_params_from_fileÚget)r8   r9   r(   s      r3   Útest_Issue_1713r¡   Ã   so   € ØÐ*Ñ*€FØ
×Ñ�o°ÐÔ8Ü	�‰Ð1ÀÔ	Lñ :Ü×$Ñ$ V¨T°5Ó9ˆ÷:à�6‰6�*Ó Ò&Ð&Ñ&÷:ð :ús   °A'Á'A0c                  ó8   — dD ]  } | t         j                  d<   Œ y )N)
ÚpngÚjpegÚtiffÚrawÚrgbaÚppmÚsgiÚbmpÚpbmÚsvgzanimation.frame_formatr.   )Úfmts    r3   Útest_animation_frame_formatsr®   Ë   s"   € ð,ò 5ˆà14Œ�‰Ð-Ò.ñ5r2   c           !   #   ó
  K  — t         g d„ dD «       ¢d„ dD «       ¢­d„ dddg fD «       d	œt        d
g fdddgfddgfddgfddgfddgddgfdddgft        ddg«      ddgft        j                  ddg«      ddgff	t        «       t        fdt        ffd	œt        t        d¬«      d„ dddgddgdt        j                  d«      fD «       d„ dD «       d	œt        t        d¬«      d„ dddgddgdt        j                  d«      fD «       d„ dD «       d	œt        dt        d d!«      fd"t        d t        j                  d#   «      ft        d$d%d&g«      t        d$d%d&g«      fd't        d d!«      t        d(g d)¢«      z   fd*t        d d!«      t        d+g d,¢«      z   fd-t        d d!«      t        d$d%d&g«      z  ft        d.d%d&g«      t        d$d%d&g«      ft        dd/g¬0«      t        d(dd/g«      fd1dt        d d!«      z  fd2dt        d d!«      z  fd3t        d d!«      t        d+g d,¢«      z   fd4t        d d!«      dz  fd5t        d t        d6«      «      fd7t        d t        d!«      «      fd8t        d t        d9«      «      ffd:t        fd;t        fd<t        fd=t        fd>t        fd?t        fd@t        fdAt        fdBt        fdCt        fdDt        fdEt        fdFt        fdGt        fdHt        fdIt        fdJt        ft        dKg dL¢«      t        ft        d g dM¢«      t        ffd	œt        dNdOt        fdPt        fdQt        ffd	œt         dRg dS¢fg dS¢g dS¢fdTdUgfg dV¢dWdXgft        j                  g dY¢«      t        j                  g dZ¢«      gt        j                  g dY¢g dZ¢g«      ft        j                  g dY¢g dZ¢g«      t        j                  g dY¢g dZ¢g«      ffd[t        ffd	œt"        d\d]t        fd^t        fd_t        fd`t        fdat        ffd	œt$        dbdct        fddt        ffd	œt&        dedfdgdhg d,¢fg d,¢g d,¢ft        j(                  di«      t        j(                  di«      ffdt        ffd	œt*        djdkdldmdng d,¢g d,¢ft-        d«      t-        d dd «      ft-        dddo«      t-        dddo«      ffd,t.        fg dp¢t.        fg dq¢t.        fg dr¢t.        fdst.        fdtt.        fdut.        fdvt.        fdwt.        fdxt.        fdyt.        fdzt.        fd{t.        fd|t.        fdxt.        fdt.        ft1        «       t.        ffd	œt2        d}d~dd€d�d‚dƒd„d…d†d‡dˆd‰dŠd‹dŒgd�d‹dŽgffg d�¢d�g d�¢ffd�ddgfd�ddgffdddgfdddgfffdt        fd‘t        fd’j5                  d“«      t        fg d,¢t        fd‹t        fdddgft        fd ddgft        fdg d,¢ft        fddgdft        ff	d	œf}|D ]2  }|d”   }| r|d•   D ]  \  }}|||f–— Œ Œ|d–   D ]  \  }}|||f–— Œ Œ4 y ­w)—Nc              3   ó$   K  — | ]  }|d f–— Œ
 y­w)TNr1   ©Ú.0r†   s     r3   ú	<genexpr>z/generate_validator_testcases.<locals>.<genexpr>×   s   è ø€ ò F Q˜˜4”yñ Fùó   ‚)ÚtÚyÚyesÚonÚtrueÚ1rT   Tc              3   ó$   K  — | ]  }|d f–— Œ
 y­w)FNr1   r±   s     r3   r³   z/generate_validator_testcases.<locals>.<genexpr>Ù   s   è ø€ ò H a˜˜5”zñ Hùr´   )ÚfÚnÚnoÚoffÚfalseÚ0r   Fc              3   ó,   K  — | ]  }|t         f–— Œ y ­w©N©rW   r±   s     r3   r³   z/generate_validator_testcases.<locals>.<genexpr>Û   s   è ø€ ò 6Øð ”j”/ñ 6ùó   ‚Úaardvarkrb   éÿÿÿÿ)Ú	validatorÚsuccessÚfailÚ za,bÚaÚbz
aardvark, zaardvark, ,)rÌ   rÍ   rT   )r½   c              3   ó(   K  — | ]
  }|d dgf–— Œ y­w)rT   rb   Nr1   r±   s     r3   r³   z/generate_validator_testcases.<locals>.<genexpr>î   s    è ø€ ò :Øð ˜!˜Q˜”[ñ :ùó   ‚z1, 2ç      ø?ç      @)rT   rb   c              3   ó,   K  — | ]  }|t         f–— Œ y ­wrÃ   rÄ   r±   s     r3   r³   z/generate_validator_testcases.<locals>.<genexpr>ñ   s   è ø€ ò Øð ”j”/ñ ùrÅ   )rÆ   ©rÌ   rT   ©rT   rb   rc   c              3   ó(   K  — | ]
  }|d dgf–— Œ y­w)rÐ   rÑ   Nr1   r±   s     r3   r³   z/generate_validator_testcases.<locals>.<genexpr>÷   s"   è ø€ ò BØð ˜#˜s˜”_ñ BùrÏ   z1.5, 2.5)rÐ   rÑ   c              3   ó,   K  — | ]  }|t         f–— Œ y ­wrÃ   rÄ   r±   s     r3   r³   z/generate_validator_testcases.<locals>.<genexpr>ú   s   è ø€ ò NØð ”j”/ñ NùrÅ   )rÆ   rÓ   rÔ   rÃ   Nzcycler("color", "rgb")ra   r`   zcycler("color", "Dark2")ÚDark2Ú	linestyleú-ú--zW(cycler("color", ["r", "g", "b"]) +
                          cycler("mew", [2, 3, 5]))Úmarkeredgewidth)rb   rc   é   zcycler(c='rgb', lw=[1, 2, 3])r    rÔ   z5cycler('c', 'rgb') * cycler('linestyle', ['-', '--'])ÚlsrÜ   )Úmewz2 * cycler('color', 'rgb')z2 * cycler('color', 'r' + 'gb')z"cycler(c='r' + 'gb', lw=[1, 2, 3])zcycler('color', 'rgb') * 2z6concat(cycler('color', 'rgb'), cycler('color', 'cmk'))Úrgbcmkzcycler('color', 'rgbcmk')[:3]zcycler('color', 'rgb')[::-1]Úbgré   zcycler("bleh, [])z1cycler('color', 'rgb') * * cycler('color', 'rgb')zCycler("linewidth", [1, 2, 3])z1cycler('c', [j.__class__(j) for j in ['r', 'b']])z2cycler('c', [j. __class__(j) for j in ['r', 'b']])z2cycler('c', [j.	__class__(j) for j in ['r', 'b']])z2cycler('c', [j.__class__(j) for j in ['r', 'b']])z9cycler('c', [j.__class__(j).lower() for j in ['r', 'b']])z-cycler('color', [x for x in ['r', 'g', 'b']])z1 + 2zos.system("echo Gotcha")z	import osz9def badjuju(a): return a; badjuju(cycler("color", "rgb"))zcycler("waka", [1, 2, 3])zcycler(c=[1, 2, 3])zcycler(lw=['a', 'b', 'c'])Úwaka)rT   rc   rÜ   )ÚC1rp   rr   ))ú--|rä   )ú\oOrå   )ú/+*/.xræ   ©rË   rË   z--_é   ÚXzr,g,b)rp   rr   rÍ   zr, ,rp   )rË   rr   Úbluerr   rê   )rT   r   r   ©r   rT   r   Úfish)
©ÚNoneÚnone©rï   rï   )ÚAABBCCz#AABBCC)ÚAABBCC00z	#AABBCC00)útab:blueró   )ÚC12rô   )z	(0, 1, 0))ç        ç      ð?rõ   )rë   rë   )z(0, 1, 0, 1))rõ   rö   rõ   rö   )©r   rT   r   rT   r÷   ztab:verybluez(0, 1)z(0, 1, 0, 1, 0)z(0, 1, none)z(0, 1, "0.5")))Ú	linecolorrø   )Úmarkerfacecolorrù   )Úmfcrù   )Úmarkeredgecolorrû   )Úmecrû   ÚlineÚmarker)Úautorÿ   )Úfdr   )Ú10é
   ú1, 2, 3é   )NN©rT   rT   ©çš™™™™™¹?r  )r  r  )r  r  rc   )rT   rb   ç333333Ó?)rÌ   rb   rc   )rT   rb   rÌ   )r  çš™™™™™É?r  )r  rb   rc   )rT   r	  r  )rT   r  )r  rT   Úabc)rT   rÌ   )r  rÍ   rÓ   )rÌ   r  )rÙ   rÙ   )Úsolidr  )rÚ   rÚ   )Údashedr  )ú-.r  )Údashdotr  )ú:r  )Údottedr  rç   )ú r  rí   rð   )ÚDoTtEdr  )z1, 3)r   )rT   rc   g®Gáz®ó?iÈ  r   g     €|@)rT   rb   rc   rá   )rö   g       @g      @g      @s   dottedr  zutf-16rÈ   rÉ   rÊ   )r
   r   ÚiterÚnpÚarrayÚsetrW   r   r   r   r   r   r/   Úcolor_sequencesrJ   r   r   r   r   r   Úaranger   Úslicere   Úobjectr   Úencode)ÚvalidÚvalidation_testsÚvalidator_dictrÈ   Úargr„   Ú
error_types          r3   Úgenerate_validator_testcasesr!  Ô   sÙ  è ø€ ä#ðIñ FØDôFð IñHØFôHñIñ6Ø&¨¨2¨rÐ4ô6ñ	ô *Ø˜"�XØ˜c 3˜ZÐ(Ø  : ,Ð/Ø" Z LÐ1Ø# j \Ð2Ø˜C�j 3¨ *Ð-Ø  3¨ *Ð-Ü˜C ˜:Ó&¨¨c¨
Ð3Ü—h‘h  S˜zÓ*¨S°#¨JÐ7ð	ô “5œ*Ð%Ø”j�/ðñ	ô )¬¸Ô;ñ:Ø%¨¨S z°A°q°6Ø%¤r§x¡x°Ó'7ð9ô:ñðôñ		ô )¬¸1Ô=ñBØ)¨C°¨:¸¸S°zØ)¬2¯8©8°JÓ+?ðAôBñNØLôNñ		ô &Ø.Ü˜W eÓ,ð.à0Ü˜W¤c×&9Ñ&9¸'Ñ&BÓCðEä˜[¨3°¨+Ó6Ü˜[¨3°¨+Ó6ð8ð7ä˜g uÓ-ÜÐ/²Ó;ñ<ð>ð 6Ü˜W eÓ,¬v°kÂ9Ó/MÑMðOàMÜ˜g uÓ-Ü˜k¨C°¨;Ó7ñ8ð:ô ˜T C¨ ;Ó/Ü˜[¨3°¨+Ó6ð8ä ! Q Ô(ÜÐ.°°A°Ó7ð9à2°A¼¸wÈÓ8NÑ4NÐOØ7¸¼VÀGÈUÓ=SÑ9SÐTØ:Ü˜W eÓ,¬v°kÂ9Ó/MÑMðOà2´F¸7ÀEÓ4JÈQÑ4NÐOØNÜ˜W¤d¨8£nÓ5ð7à5´v¸gÄtÈEÃ{Ó7SÐTØ4´f¸WÄdÈ5ÃkÓ6RÐSð7ð@ ”j�/Ø&¬
Ð3ØFÜðà3Üðð GÜðàGÜðàHÜðàLÜðàNÜðð CÜðàœJÐ'Ø-¬zÐ:Ø¤
Ð+ØNÜðð /´
Ð;Ø(¬*Ð5Ø/´Ð<Ü˜&¢)Ó,¬jÐ9Ü˜'Ò#3Ó4´jÐAð=ñCA	ôD %ð5àœ*Ð%Ø”j�/Øœ
Ð#ð%ñ	ô )ØšÐ/Ú%¢Ð7Ø˜s˜e�_Ú'¨#¨v¨Ð7Ü—x‘x¢	Ó*¬B¯H©H²YÓ,?Ð@Ü—X‘Xšyª)Ð4Ó5ð7ä—h‘h¢	ª9Ð5Ó6Ü—X‘Xšyª)Ð4Ó5ð7ðð œ:Ð&ð ñ	ô %ð
ð "¤:Ð.ØœZÐ(Ø$¤jÐ1Ø!¤:Ð.Ø"¤JÐ/ð	ñ	ô& 3ðð œ:Ð&ØœZÐ(ðñ
	ô )Ø%Ø!ØØ¢Ð+Ú¢Ð+Ü—i‘i “m¤R§Y¡Y¨r£]Ð3ðð œzÐ*ð ñ
	ô )Ø!ØØØ%Ø-Ú¢Ð+Ü˜A“h¤ d¨A¨tÓ 4Ð5Ü˜A˜q !“n¤e¨A¨q°!£nÐ5ðð œiÐ(Ú¤	Ð*Ú¤	Ð*Ú¤	Ð*Ø"¤IÐ.Ø¤	Ð*Ø ¤)Ð,ØœYÐ'ØœYÐ'ØœIÐ&ØœYÐ'ØœyÐ)ØœYÐ'ØœyÐ)Øœ)Ð$Øœ	Ð"Ü“8œYÐ'ð!ñ	ô: *ØÐ!3Ø!Ð#7Ø!Ð#9ØÐ!5Ø˜zØ%Ð'7Ø)Ø*Ø˜S�k A¨¨e }Ð#5Ð6Ú" QÒ(<Ð$=Ð>Ø˜1˜a˜&�k A¨¨1 v ;Ð/Ø˜A˜q˜6�l R¨!¨Q¨ LÐ1ðð œzÐ*ØœjÐ)Ø—?‘? 8Ó,¬jÐ9ÚœjÐ)ØœÐ$Ø˜!˜Q˜�=¤*Ð-Ø˜1˜a˜&�>¤:Ð.Ø’y�>¤:Ð.Ø˜�F˜A�;¤
Ð+ð	ñ	ðI]Ðð~ +ò 1ˆØ" ;Ñ/ˆ	ÙØ-¨iÑ8ò -‘��VØ  fÐ,Ó,ñ-ð $2°&Ñ#9ò 1‘��ZØ  jÐ0Ó0ñ1ñ1ùs   ‚XXzvalidator, arg, targetTc                 óì   —  | |«      }t        |t        j                  «      r!t        j                  j	                  ||«       y t        |t
        «      s||k(  sJ ‚y t        |«      t        |«      k(  sJ ‚y rÃ   )Ú
isinstancer  ÚndarrayÚtestingÚassert_equalr   rJ   )rÈ   r  r„   Úress       r3   Útest_validator_validr(  ¾  s]   € ñ �C‹.€CÜ�&œ"Ÿ*™*Ô%Ü
�
‰
×Ñ  VÕ,Ü˜¤Ô'Ø�fŠ}Ð‰}ô �C‹yœD ›LÒ(Ð(Ñ(r2   zvalidator, arg, exception_typeFc                 óh   — t        j                  |«      5   | |«       d d d «       y # 1 sw Y   y xY wrÃ   )rU   rV   )rÈ   r  Úexception_types      r3   Útest_validator_invalidr+  Ë  s,   € ô 
�‰�~Ó	&ñ Ù�#Œ÷÷ ñ ús   –	(¨1c                  ó~   — d} t        j                  t        | ¬«      5  t        d«       d d d «       y # 1 sw Y   y xY w)NzJ'foo' is neither a color sequence name nor can it be interpreted as a listr^   zcycler('color', 'foo'))rU   rV   rW   r   )Úmsgs    r3   Ú%test_validate_cycler_bad_color_stringr.  Ò  s3   € Ø
V€CÜ	�‰”z¨Ô	-ñ 2ÜÐ0Ô1÷2÷ 2ñ 2ús   ž3³<zweight, parsed_weight)Úboldr/  ÚBOLD)éd   r1  )Ú100r1  r1  )gš™™™™™4@é   z20.6c                 ó¨   — |t         u r.t        j                  t         «      5  t        | «       d d d «       y t        | «      |k(  sJ ‚y # 1 sw Y   y xY wrÃ   )rW   rU   rV   r   )ÚweightÚparsed_weights     r3   Útest_validate_fontweightr7  Ø  sO   € ð œ
Ñ"Ü�]‰]œ:Ó&ñ 	(Ü Ô'÷	(ð 	(ô # 6Ó*¨mÒ;Ð;Ñ;÷	(ð 	(úó   ¢AÁAzstretch, parsed_stretch)Úexpandedr9  ÚEXPANDEDc                 ó¨   — |t         u r.t        j                  t         «      5  t        | «       d d d «       y t        | «      |k(  sJ ‚y # 1 sw Y   y xY wrÃ   )rW   rU   rV   r   )ÚstretchÚparsed_stretchs     r3   Útest_validate_fontstretchr>  ì  sO   € ð œÑ#Ü�]‰]œ:Ó&ñ 	*Ü  Ô)÷	*ð 	*ô $ GÓ,°Ò>Ð>Ñ>÷	*ð 	*úr8  c                  ó¦   — t         j                  D � cg c]	  } d| v sŒ| ‘Œ }} |D ]%  } t        t         j                  |    t        «      rŒ%J ‚ y c c} w )NÚkeymap)r/   r0   r#  rJ   )ÚkÚkey_lists     r3   Útest_keymapsrC     sK   € ÜŸ<™<Ö9�a¨8°qª=’Ð9€HÐ9Øò 1ˆÜœ#Ÿ,™, q™/¬4Õ0Ð0Ð0ñ1ùò :s
   “	A�Ac                  óÜ   — t         j                  d   dk7  sJ ‚t        j                  «       5  dt         j                  d<   d d d «       t         j                  d   dk(  sJ ‚y # 1 sw Y   Œ"xY w)NÚbackendzmodule://aardvark)r/   r0   r6   r1   r2   r3   Útest_no_backend_reset_rccontextrF    s_   € Ü�<‰<˜	Ñ"Ð&9Ò9Ð9Ð9Ü	�‰Ó	ñ 6Ø"5Œ�‰�YÑ÷6ä�<‰<˜	Ñ"Ð&9Ò9Ð9Ñ9÷6ð 6ús   ­A"Á"A+c                  óv  — t        j                  ddi¬«      5  t         j                  d   du sJ ‚t        j                  t
        «      5  t        j                  dddœ¬«      5  	 d d d «       d d d «       t         j                  d   du sJ ‚	 d d d «       y # 1 sw Y   Œ2xY w# 1 sw Y   Œ6xY w# 1 sw Y   y xY w)Nr!   Fr'   T)r!   z	test.blah)r/   r6   r0   rU   rV   ÚKeyErrorr1   r2   r3   Útest_rcparams_reset_after_failrI    s©   € ô 
�‰˜M¨5Ð1Ô	2ñ 4Ü�|‰|˜MÑ*¨eÑ3Ð3Ð3Ü�]‰]œ8Ó$ñ 	Ü—‘°4ÀdÑ#KÔLñ Ø÷÷	ô �|‰|˜MÑ*¨eÑ3Ð3Ñ3÷4ð 4÷ð ú÷	ð 	ú÷4ð 4ús;   ™1B/Á
B#Á$BÁ&B#Á.B/ÂB ÂB#Â#B,	Â(B/Â/B8Úlinuxz
Linux only)Úreasonc                 ó  — i t         j                  ¥dddt        | «      dœ¥}t        j                  t
        j                  «      5  t        t        j                  ddg|dt
        j                  ¬«       d d d «       y # 1 sw Y   y xY w)NrË   ©ÚDISPLAYÚWAYLAND_DISPLAYÚ
MPLBACKENDÚMPLCONFIGDIRú-cz^import matplotlib;matplotlib.use('tkagg');import matplotlib.pyplot;matplotlib.pyplot.plot(42);T)ÚenvÚcheckÚstderr)ÚosÚenvironrG   rU   rV   Ú
subprocessÚCalledProcessErrorr   ÚsysÚ
executableÚDEVNULL)r8   rS  s     r3   Ú.test_backend_fallback_headless_invalid_backendr]    sz   € ð<ŒR�Z‰Zð <Ø¨RØ¬S°«]ò<€Cô 
�‰”z×4Ñ4Ó	5ñ <Ü"Ü�^‰^˜Tð+ðð ˜4¬
×(:Ñ(:õ	<÷<÷ <ñ <ús   Á/A>Á>Bc                 ó  — i t         j                  ¥dddt        | «      dœ¥}| dz  }|j                  d«       t	        t
        j                  ddg|ddd¬	«      j                  }|j                  «       j                  «       d
k(  sJ ‚y )NrË   ÚTkAggrM  Úmatplotlibrczbackend_fallback: truerR  zTimport matplotlib.pyplot;matplotlib.pyplot.plot(42);print(matplotlib.get_backend());T©rS  r   rT  Úcapture_outputÚagg)
rV  rW  rG   r5   r   rZ  r[  ÚstdoutÚstripÚlower)r8   rS  Úrc_pathrE  s       r3   Ú+test_backend_fallback_headless_auto_backendrh  *  s™   € ðAŒR�Z‰Zð AØ¨RØ ´#°h³-òA€Cð
 ˜Ñ'€GØ×ÑÐ/Ô0ô )Ü	�‰˜ð
,ð	ð
 �d $°tô=÷ >D¹Vð ð �=‰=‹?× Ñ Ó" eÒ+Ð+Ñ+r2   Úheadlessc                 óz  — t        t        j                  «      t        d«      k\  rt        t        ¬«      }ni }t        j
                  d
i |¤Ž i t        j                  ¥dt        | «      dœ¥}t        t        j                  ddg|ddd¬«      j                  }|j                  «       j                  «       d	k7  sJ ‚y )Nz8.2.0)Úexc_typerË   )rP  rQ  rR  a)  import matplotlib as mpl; sentinel = mpl.rcsetup._auto_backend_sentinel; assert mpl.RcParams({'backend': sentinel})['backend'] == sentinel; assert mpl.rcParams._get('backend') == sentinel; assert mpl.get_backend(auto_select=False) is None; import matplotlib.pyplot; print(matplotlib.get_backend())Tra  rc  )Útkinter)Úparse_versionrU   Ú__version__ÚdictÚImportErrorÚimportorskiprV  rW  rG   r   rZ  r[  rd  re  rf  )r8   Úpytest_kwargsrS  rE  s       r3   Útest_backend_fallback_headfulrs  @  s§   € ô ”V×'Ñ'Ó(¬M¸'Ó,BÒBÜ¤kÔ2‰àˆä
×ÑÑ3 ]Ò3Ø
IŒR�Z‰ZÐ
I r¼3¸x»=Ò
I€CÜ(Ü	�‰˜ð
+ð	,ð �d $°tô
=÷ >D¹Vð ð �=‰=‹?× Ñ Ó" eÒ+Ð+Ñ+r2   c                 óz   — t         j                  j                  t         j                  j                  «       «       y rÃ   )r/   r0   rX   rj   )Úmonkeypatchs    r3   Útest_deprecationrv  [  s!   € Ü‡L�L×ÑœŸ™×)Ñ)Ó+Õ,r2   Úvalue)ÚbestrT   rº   ©gÍÌÌÌÌÌì?çffffffæ?©gÍÌÌÌÌÌì¿rz  z	(0.9, .7)c                 ó*   — | t         j                  d<   y )Nú
legend.locr.   ©rw  s    r3   Útest_rcparams_legend_locr  b  s   € ð "'„C‡L�L�Òr2   )rx  rT   ry  r{  c                 ó¾   — | dz  }|j                  d|› �«       t        j                  |¬«      5  t        j                  d   |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr`  zlegend.loc: r)   r}  ©r5   r/   r6   r0   ©r8   rw  rg  s      r3   Ú"test_rcparams_legend_loc_from_filerƒ  q  s[   € ð ˜Ñ'€GØ×Ñ˜ e WÐ-Ô.ä	�‰˜gÔ	&ñ 3Ü�|‰|˜LÑ)¨UÒ2Ð2Ñ2÷3÷ 3ñ 3úó   °AÁA)rÔ   r  z	(1, 2, 3)c                 óz   — | t         j                  d<   t         j                  d   dk(  sJ ‚t        | «      dk(  sJ ‚y )Núpath.sketchrÔ   )r/   r0   r   r~  s    r3   Útest_validate_sketchr‡  ‚  s:   € à"'„C‡L�L�ÑÜ�<‰<˜Ñ&¨)Ò3Ð3Ð3Ü˜5Ó! YÒ.Ð.Ñ.r2   )rT   rº   z1 2 3c                 ó   — t        j                  t        d¬«      5  t        | «       d d d «       t        j                  t        d¬«      5  | t        j
                  d<   d d d «       y # 1 sw Y   ŒAxY w# 1 sw Y   y xY w)Nzscale, length, randomnessr^   r†  )rU   rV   rW   r   r/   r0   r~  s    r3   Útest_validate_sketch_errorr‰  ‰  se   € ä	�‰”zÐ)DÔ	Eñ Ü˜Ô÷ä	�‰”zÐ)DÔ	Eñ ,Ø&+Œ�‰�]Ñ#÷,ð ,÷ð ú÷,ð ,ús   œA(ÁA4Á(A1Á4A=r  z(1,2,3)c                 ó¾   — | dz  }|j                  d|› �«       t        j                  |¬«      5  t        j                  d   dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr`  zpath.sketch: r)   r†  rÔ   r�  r‚  s      r3   Ú#test_rcparams_path_sketch_from_filer‹  ‘  sY   € à˜Ñ'€GØ×Ñ˜ u gÐ.Ô/Ü	�‰˜gÔ	&ñ 8Ü�|‰|˜MÑ*¨iÒ7Ð7Ñ7÷8÷ 8ñ 8úr„  zgroup, option, alias, value)r   r    Úlwrc   )r   rØ   rÝ   r  )r   ra   ÚcÚwhite)ÚaxesÚ	facecolorÚfcÚblack)ÚfigureÚ	edgecolorÚecÚmagenta)r   rÛ   rÞ   rÐ   )rž   ÚantialiasedÚaaFÚfontr=   ÚsansÚVerdanac                 óv   — ||i}t        j                  | fi |¤Ž | › d|› �}t         j                  |   |k(  sJ ‚y )Nú.)r/   r(   r0   )ÚgroupÚoptionÚaliasrw  Ú	rc_kwargsÚrcParams_keys         r3   Útest_rc_aliasesr£  ™  sE   € ð ˜�€IÜ‡F�Fˆ5Ñ�IÒà�W˜A˜f˜XÐ&€LÜ�<‰<˜Ñ%¨Ò.Ð.Ñ.r2   c                  ó    — t        d„ t        j                  «       D «       «      t        t        j                  j                  «       «      k(  sJ ‚y )Nc              3   ó4   K  — | ]  }|j                   –— Œ y ­wrÃ   )Úname)r²   Úps     r3   r³   z2test_all_params_defined_as_code.<locals>.<genexpr>¬  s   è ø€ Ò6˜!ˆq�v�vÑ6ùs   ‚)r  r	   Ú_params_listr/   r0   Úkeysr1   r2   r3   Útest_all_params_defined_as_coderª  «  s6   € ÜÑ6œw×3Ñ3Ó5Ô6Ó6¼#¼c¿l¹l×>OÑ>OÓ>QÓ:RÒRÐRÑRr2   c                  óÎ   — t        j                  «       D ]N  } t        j                  | j                  | j                  «      }|t         j
                  | j                     k(  rŒNJ ‚ y rÃ   )r	   r¨  Ú_convert_validator_specr¦  rÈ   Ú_validators)ÚparamrÈ   s     r3   Útest_validators_defined_as_coder¯  ¯  sQ   € Ü×%Ñ%Ó'ò <ˆÜ×3Ñ3°E·J±JÀÇÁÓPˆ	ØœG×/Ñ/°·
±
Ñ;Ó;Ð;Ð;ñ<r2   c                  óÌ   — t        j                  «       D ]M  } | j                  dk(  rŒ| j                  t        j
                  | j                     k(  rŒ>J | j                  «       ‚ y )NrE  )r	   r¨  r¦  Údefaultr/   ÚrcParamsDefault)r®  s    r3   Útest_defaults_as_coder³  µ  sU   € Ü×%Ñ%Ó'ò LˆØ�:‰:˜Ò"àØ�}‰}¤× 3Ñ 3°E·J±JÑ ?Ó?ÐKÀÇÁÓKÐ?ñ	Lr2   )Xrj   rV  rX  rZ  Úunittestr   r   r   Úpackaging.versionr   rm  rU   Ú
matplotlibr/   r   r   Úmatplotlib.pyplotÚpyplotr{   Úmatplotlib.colorsÚcolorsÚmcolorsÚnumpyr  r	   rd   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Úmatplotlib.testingr   r:   rN   rZ   r\   rg   rn   Úto_rgbaÚlegend_color_testsÚlegend_color_test_idsÚmarkÚparametrizer‰   r�   r“   r™   r¡   r®   r!  r(  r+  r.  rW   r  r7  r>  rC  rF  rI  ÚskipifÚplatformr]  rh  Úxdisplay_is_validrs  rv  r  rƒ  r‡  r‰  r‹  r£  rª  r¯  r³  r1   r2   r3   ú<module>rÆ     sˆ  ðÛ Û 	Û Û 
Ý ç !Ý 4Û ã ß .Ý Ý #Û Ý ÷÷ ÷ ÷ ó õ" :ò#1òL:ò8ò7ò
*ò0ð* ˆg�sˆ^˜_˜WŸ_™_¨SÓ1Ð2Ø�y°CÑ8Ø€W‡_�_�SÓðà�s¨cÑ2°O°G·O±OÀCÓ4HÐIØˆg�sˆ^˜_˜WŸ_™_¨SÓ1Ð2Ø�y°CÑ8Ø€W‡_�_�SÓðà�s¨cÑ2°O°G·O±OÀCÓ4HÐIð	Ð òÐ ð ‡�×ÑÐ9Ð;MØ2ð ó 4ñ>ó4ð>ò+ò+ò$ò'ò5òg1ðT ‡�×ÑÐ1Ù5°dÓ;ó=ñ)ó=ð)ð ‡�×ÑÐ9Ù5°eÓ<ó>ñó>ðò
2ð ‡�×ÑÐ0ØØˆZÐØØØ€R‡X�Xˆcƒ]�CÐð ØˆZÐØ	€UˆJÐð3ó ñ<óð<ð ‡�×ÑÐ2ØØ�ÐØØØ€R‡X�Xˆcƒ]�CÐð ØˆZÐØ	€UˆJÐð5ó ñ?óð?ò1ò:ò	4ð ‡�×Ñ�C—L‘L GÑ+°LÐÓAñ<ó Bð<ð  ‡�×Ñ�C—L‘L GÑ+°LÐÓAñ,ó Bð,ð* ‡�×ÑØ‡L�L�GÑÒIÐ$GÐ$5×$GÑ$GÓ$IÐ IØð ó ñ,óð,ò0-ð ‡�×Ñ˜ò #ó ñ'óð'ð ‡�×Ñ˜ò #ó ñ3óð3ð ‡�×Ñ˜Ò"EÓFñ/ó Gð/ð ‡�×Ñ˜Ò"3Ó4ñ,ó 5ð,ð ‡�×Ñ˜ 9¨iÐ"8Ó9ñ8ó :ð8ð ‡�×ÑÐ6Ø+Ø2Ø1Ø1Ø3Ø-Ø/Øˆ| ¨)¨Ð5ð	9ó 	ñ/ó	ð/òSò<óLr2   