Ë
    µ2Úiµ8  ã                   óÖ  — d dl Z d dlZd dlZd dlZd dlmZ d dlZd dlZd dl	Z
d dl	mZmZmZ d dlmZ d dlmZ d dlmZmZ d dlmZ d dlmZ d d	lmZ d d
lmZmZ d dl m!Z!  edg«      d„ «       Z"ejF                  jI                  dddg«      ejF                  jI                  dddg«      d„ «       «       Z%d„ Z&d„ Z'd„ Z(d„ Z)d„ Z*d„ Z+d„ Z,d„ Z-d„ Z.d„ Z/e!d„ «       Z0d „ Z1 ed!g«      d"„ «       Z2 ed#g«      d$„ «       Z3e
jh                  jk                  d%«       ed&d'g¬(«      d)„ «       «       Z6e!d*„ «       Z7d+„ Z8 ed,g«      d-„ «       Z9d.„ Z: ed/gd0¬1«      d2„ «       Z; ed3gd4¬1«      d5„ «       Z<y)6é    N)ÚPath)ÚpyplotÚrcParamsÚfont_manager)Ú_get_data_path)ÚFT2Font)ÚfindfontÚFontProperties)Úget_glyphs_subset)ÚPdfPages)Ú	Rectangle)Úcheck_figures_equalÚimage_comparison)Úneeds_usetexzpdf_use14corefonts.pdfc                  ó  — dt         d<   dt         d<   dt         d<   dgt         d<   d	t         d
<   d} t        j                  «       \  }}|j                  d«       |j	                  dd| ddd¬«       |j                  dd¬«       y )NTzpdf.use14corefontsz
sans-serifzfont.familyé   z	font.sizeÚ	Helveticazfont.sans-serifr   úpdf.compressionu�   A three-line text positioned just above a blue line
and containing some French characters and the euro symbol:
"Merci pÃ©pÃ© pour les 10 â‚¬"z0Test PDF backend with option use14corefonts=Trueg      à?ÚcenterÚbottomé   )ÚhorizontalalignmentÚverticalalignmentÚfontsize)Ú	linewidth)r   ÚpltÚsubplotsÚ	set_titleÚtextÚaxhline)r   ÚfigÚaxs      úX/var/www/html/acx/venv/lib/python3.12/site-packages/matplotlib/tests/test_backend_pdf.pyÚtest_use14corefontsr$      s�   € à%)„HÐ!Ñ"Ø*„Hˆ]ÑØ„Hˆ[ÑØ#. -„HÐÑØ"#„HÐÑð"€Dô �l‰l‹n�G€CˆØ‡L�LÐCÔDØ‡G�GˆC��d°Ø&Øð ô ð ‡J�Jˆs˜c€JÕ"ó    zfontname, fontfile)úDejaVu SanszDejaVuSans.ttf)úWenQuanYi Zen Heiúwqy-zenhei.ttcÚfonttypeé   é*   c                 ód  — t        t        t        | g¬«      «      «      j                  |k7  rt	        j
                  d| ›d�«       |t        d<   t        j                  «       \  }}|j                  g d¢«       |j                  d| ¬«       |j                  t        j                  «       d¬	«       y )
N©ÚfamilyzFont z may be missingzpdf.fonttype©é   é   r*   z
Axes Title)ÚfontÚpdf©Úformat)r   r	   r
   ÚnameÚpytestÚskipr   r   r   Úplotr   ÚsavefigÚioÚBytesIO)ÚfontnameÚfontfiler)   r!   r"   s        r#   Útest_embed_fontsr?   ,   sƒ   € ô ŒH”^¨H¨:Ô6Ó7Ó8×=Ñ=ÀÒIÜ�‰�e˜H˜< Ð7Ô8à'„Hˆ^ÑÜ�l‰l‹n�G€CˆØ‡G�GŠIÔØ‡L�L� H€LÔ-Ø‡K�K”—
‘
“ U€KÕ+r%   c                  ó‚  — t        t        j                  «       «      5 } | j                  «       dk(  sJ ‚t	        j
                  «       \  }}|j                  g d¢«       |j                  | d¬«       | j                  «       dk(  sJ ‚| j                  «        | j                  «       dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr   r/   r3   r4   r0   r1   )r   r;   r<   Úget_pagecountr   r   r9   r:   )r3   r!   r"   s      r#   Útest_multipage_pagecountrB   <   s    € Ü	”"—*‘*“,Ó	ð ( 3Ø× Ñ Ó" aÒ'Ð'Ð'Ü—,‘,“.‰ˆˆRØ
�‰’	ÔØ�‰�C ˆÔ&Ø× Ñ Ó" aÒ'Ð'Ð'Ø�‰ŒØ× Ñ Ó" aÒ'Ð'Ñ'÷(÷ (ñ (ús   žBB5Â5B>c                  óp  — t        j                  «       } t        | «      5 }t        d«      D ]=  }t	        j
                  «       \  }}|j                  d«       |j                  |d¬«       Œ? 	 d d d «       | j                  «       }|j                  d«      dk(  sJ ‚t        |«      dk  sJ ‚y # 1 sw Y   Œ@xY w)Né
   zThis is a long titler3   r4   s	   startxrefr0   i@œ  )r;   r<   r   Úranger   r   r   r:   ÚgetvalueÚcountÚlen)Úpdfior3   Úir!   r"   Úss         r#   Útest_multipage_properfinalizerL   G   sŸ   € Ü�J‰J‹L€EÜ	�%‹ð +˜CÜ�r“ò 	+ˆAÜ—l‘l“n‰GˆC�Ø�L‰LÐ/Ô0Ø�K‰K˜ EˆKÕ*ñ	+÷+ð
 	�‰Ó€AØ�7‰7�<Ó  AÒ%Ð%Ð%Üˆq‹6�EŠ>Ð‰>÷+ð +ús    AB,Â,B5c                 ó~  — t        j                  | «       t        j                  t        j
                  «      5  t        d«      5 }	 d d d «       d d d «       t         j                  j                  d«      sJ ‚t        j                  t        j
                  «      5  t        dd¬«      5 }	 d d d «       d d d «       t         j                  j                  d«      sJ ‚t        dd¬«      5 }	 d d d «       t         j                  j                  d«      rJ ‚t        d«      5 }|j                  t        j                  «       «       d d d «       t         j                  j                  d«      sJ ‚t        j                  t        j
                  «      5  t        dd¬«      5 }|j                  t        j                  «       «       d d d «       d d d «       t         j                  j                  d«      sJ ‚t        d	d¬«      5 }|j                  t        j                  «       «       d d d «       t         j                  j                  d	«      sJ ‚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   �Œ˜xY w# 1 sw Y   �ŒMxY w# 1 sw Y   ŒÛxY w# 1 sw Y   ŒßxY w# 1 sw Y   Œ‘xY w)
Nza.pdfzb.pdfT)Ú
keep_emptyzc.pdfFzd.pdfze.pdfzf.pdf)ÚosÚchdirr7   ÚwarnsÚmplÚMatplotlibDeprecationWarningr   ÚpathÚexistsr:   r   Úfigure)Útmp_pathr3   s     r#   Útest_multipage_keep_emptyrX   S   s  € Ü‡H�HˆXÔô
 
�‰”c×6Ñ6Ó	7ñ ¼À'Ó9Jð ÈcØ÷÷ ä�7‰7�>‰>˜'Ô"Ð"Ð"ô 
�‰”c×6Ñ6Ó	7ñ Ü�W¨Ô.ðØ25Ø÷÷ ô �7‰7�>‰>˜'Ô"Ð"Ð"ô 
�' eÔ	,ð °Ø÷ä�w‰w�~‰~˜gÔ&Ð&Ð&ô
 
�'Ó	ð "˜cØ�‰”C—J‘J“LÔ!÷"ä�7‰7�>‰>˜'Ô"Ð"Ð"ô 
�‰”c×6Ñ6Ó	7ñ "Ü�W¨Ô.ð"Ø25Ø�‰”C—J‘J“LÔ!÷"÷ "ô �7‰7�>‰>˜'Ô"Ð"Ð"ô 
�' eÔ	,ð "°Ø�‰”C—J‘J“LÔ!÷"ä�7‰7�>‰>˜'Ô"Ð"Ñ"÷?ñ ú÷ ñ ú÷
ñ ú÷ ñ ú÷ñ ú÷"ñ "ú÷
"ð "ú÷ "ð "ú÷"ð "ús�   ¹IÁIÁIÂI4Â)I'Â+I4Ã)JÄ$JÆJ'Æ$JÇJ'Ç?$J3ÉI	ÉIÉI$É'I1	É,I4É4I>ÊJÊJÊJ$	Ê J'Ê'J0Ê3J<c                  ó`  — t        j                  t        j                  ddd«      t        j                  ddd«      «      \  } }t        j                  |dz  «      }t	        j
                  «       \  }}|j                  dd«       |j                  |g d¢¬«       |j                  |d d d	…   g d
¢¬«       dt        j                  d<   t        t        j                  «       «      5 }|j                  |d¬«       t        |j                  j                  «      dk(  sJ ‚	 d d d «       dt        j                  d<   t        t        j                  «       «      5 }|j                  |d¬«       t        |j                  j                  «      dk(  sJ ‚	 d d d «       y # 1 sw Y   Œ{xY w# 1 sw Y   y xY w)Néûÿÿÿé   r0   r1   r   r*   )r   r0   r   r0   )Úextentéÿÿÿÿ)r1   r*   r   r0   Tzimage.composite_imager3   r4   F)ÚnpÚmeshgridÚarangeÚsinr   r   Úset_xlimÚimshowr   r   r;   r<   r:   rH   Ú_fileÚ_images)ÚXÚYÚZr!   r"   r3   s         r#   Útest_composite_imageri   {   sQ  € ô �;‰;”r—y‘y  Q¨Ó*¬B¯I©I°b¸!¸QÓ,?Ó@�D€A€qÜ
�‰ˆq�A‰v‹€AÜ�l‰l‹n�G€CˆØ‡K�K��1ÔØ‡I�Iˆaš€IÔ%Ø‡I�Iˆa‘�"�‰gšl€IÔ+Ø,0„C‡L�LÐ(Ñ)Ü	”"—*‘*“,Ó	ð + 3Ø�‰�C ˆÔ&Ü�3—9‘9×$Ñ$Ó%¨Ò*Ð*Ñ*÷+ð -2„C‡L�LÐ(Ñ)Ü	”"—*‘*“,Ó	ð + 3Ø�‰�C ˆÔ&Ü�3—9‘9×$Ñ$Ó%¨Ò*Ð*Ñ*÷+ð +÷	+ð +ú÷+ð +ús   Ã%8FÅ8F$ÆF!Æ$F-c                  óü  — t        j                  d«      } t        j                  dt        j                  ¬«      }t        j
                  d«      |d d …ddf<   dt        d<   t        j                  «       }|j                  |d¬«       t        j                  «       }|j                  |d	d
¬«       | j                  j                  |«      5 }|j                  \  }|j                   j#                  «       \  }| j%                  |«      }|j&                  sJ ‚|j)                  «       }t        j*                  |j-                  d«      «      }	d d d «       t        j.                  j1                  |	«       y # 1 sw Y   Œ*xY w)NÚpikepdf)é   r0   r*   )Údtyperl   r   Tr   )Úresizer3   rV   )r5   ÚdpiÚRGB)r7   Úimportorskipr^   ÚzerosÚuint8r`   r   r   rV   Úfigimager;   r<   r:   ÚPdfÚopenÚpagesÚimagesÚvaluesÚPdfImageÚindexedÚas_pil_imageÚasarrayÚconvertÚtestingÚassert_array_equal)
rk   Údatar!   Úbufr3   ÚpageÚimageÚ	pdf_imageÚ	pil_imageÚrgbs
             r#   Útest_indexed_imagerˆ   Ž   s$  € ä×!Ñ! )Ó,€Gä�8‰8�K¤r§x¡xÔ0€DÜ—I‘I˜c“N€DŠˆAˆqˆ�Mà"&„HÐÑÜ
�*‰*‹,€CØ‡L�L�˜d€LÔ#Ü
�*‰*‹,€CØ‡K�K�˜E x€KÔ0à	�‰×	Ñ	˜#Ó	ð 3 #Ø—	‘	‰ˆØ—‘×#Ñ#Ó%‰ˆØ×$Ñ$ UÓ+ˆ	Ø× Ò Ð Ð Ø×*Ñ*Ó,ˆ	Ü�j‰j˜×*Ñ*¨5Ó1Ó2ˆ÷3ô ‡J�J×!Ñ! $¨Õ,÷3ð 3ús   ÃA>E2Å2E;c                 óÐ  — t        j                  d«      }| j                  dd«       t        j                  «       \  }}|j                  t        d«      «       ddddt        j                  d	d
dt        j                  t        j                  d«      «      ¬«      ddœ}t        j                  «       }|j                  ||d¬«       |j                  j                  |«      5 }|j                  j!                  «       D ��ci c]  \  }}|t#        |«      “Œ }	}}d d d «       	dddt$        j&                  › d�dddt$        j&                  › �ddddœ	k(  sJ ‚y c c}}w # 1 sw Y   ŒDxY w)Nrk   ÚSOURCE_DATE_EPOCHÚ0r[   ÚmeúMultipage PDFú	Test pageútest,pdf,multipageé°  r   r0   r   ©ÚtzinfoÚTrue©ÚAuthorÚTitleÚSubjectÚKeywordsÚModDateÚTrappedr3   )Úmetadatar5   úD:19700101000000ZúMatplotlib vú, https://matplotlib.orgúD:19680801000000ZúMatplotlib pdf backend vú/True©	z/Authorz/CreationDatez/Creatorz	/Keywordsz/ModDatez	/Producerz/Subjectz/Titlez/Trapped)r7   rq   Úsetenvr   r   r9   rE   ÚdatetimeÚtimezoneÚ	timedeltar;   r<   r:   ru   rv   ÚdocinfoÚitemsÚstrrR   Ú__version__©
Úmonkeypatchrk   r!   r"   Úmdr‚   r3   ÚkÚvÚinfos
             r#   Útest_savefig_metadatar±   ¦   sP  € Ü×!Ñ! )Ó,€GØ×ÑÐ*¨CÔ0ä�l‰l‹n�G€CˆØ‡G�GŒE�!‹HÔð Ø ØØ(Ü×$Ñ$Ø�!�Qœx×0Ñ0´×1CÑ1CÀAÓ1FÓGôIàñ
€Bô �*‰*‹,€CØ‡K�K�˜b¨€KÔ/à	�‰×	Ñ	˜#Ó	ð ; #Ø&)§k¡k×&7Ñ&7Ó&9×:™d˜a �”3�q“6‘	Ð:ˆÑ:÷;ð ØØ,Ø"¤3§?¡?Ð"3Ð3KÐLØ)Ø'Ø/´·±Ð/@ÐAØØ!Øñ
ò 
ð 
ñ 
ùó ;÷;ð ;ús   Ã"EÄ EÄEÅEÅE%c                  óò  — t        j                  «       \  } }t        j                  t        d¬«      5  | j                  t        j                  «       dddi¬«       d d d «       t        j                  t        d¬«      5  | j                  t        j                  «       ddd	i¬«       d d d «       t        j                  t        d
¬«      5  | j                  t        j                  «       dddi¬«       d d d «       t        j                  t        d¬«      5  | j                  t        j                  «       dddi¬«       d d d «       y # 1 sw Y   ŒîxY w# 1 sw Y   Œ®xY w# 1 sw Y   ŒnxY w# 1 sw Y   y xY w)Nz#Unknown infodict keyword: 'foobar'.)Úmatchr3   ÚfoobarÚinvalid)r5   r›   z%not an instance of datetime.datetime.r™   z
1968-08-01z'not one of {"True", "False", "Unknown"}rš   Úfooznot an instance of str.r–   iÒ  )r   r   r7   rQ   ÚUserWarningr:   r;   r<   ©r!   r"   s     r#   Útest_invalid_metadatar¹   É   s;  € Ü�l‰l‹n�G€Cˆä	�‰”kØAô
Cñ Pà�‰”B—J‘J“L¨¸(ÀIÐ9NˆÔO÷Pô 
�‰”kØCô
Eñ 8à�‰”B—J‘J“L¨Ø'¨Ð6ð 	ô 	8÷8ô
 
�‰”kØEô
Gñ Mà�‰”B—J‘J“L¨¸)ÀUÐ9KˆÔL÷Mô 
�‰”kÐ)BÔ	Cñ JØ�‰”B—J‘J“L¨¸'À4¸ˆÔI÷Jð J÷Pð Pú÷8ð 8ú÷
Mð Mú÷Jð Jús/   ³)E	Á?)EÃ)E!Ä)E-Å	EÅEÅ!E*Å-E6c                 ó0  — t        j                  d«      }| j                  dd«       t        j                  «       \  }}|j                  t        d«      «       ddddt        j                  d	d
dt        j                  t        j                  d«      «      ¬«      ddœ}t        j                  «       }t        ||¬«      5 }|j                  |«       |j                  |«       d d d «       |j                  j                  |«      5 }|j                   j#                  «       D ��ci c]  \  }}|t%        |«      “Œ }	}}d d d «       	dddt&        j(                  › d�dddt&        j(                  › �ddddœ	k(  sJ ‚y # 1 sw Y   Œ˜xY wc c}}w # 1 sw Y   ŒPxY w)Nrk   rŠ   r‹   r[   rŒ   r�   rŽ   r�   r�   r   r0   r   r‘   r“   r”   )r›   rœ   r�   rž   rŸ   r    r¡   r¢   )r7   rq   r£   r   r   r9   rE   r¤   r¥   r¦   r;   r<   r   r:   ru   rv   r§   r¨   r©   rR   rª   r«   s
             r#   Útest_multipage_metadatar»   Ý   sx  € Ü×!Ñ! )Ó,€GØ×ÑÐ*¨CÔ0ä�l‰l‹n�G€CˆØ‡G�GŒE�!‹HÔð Ø ØØ(Ü×$Ñ$Ø�!�Qœx×0Ñ0´×1CÑ1CÀAÓ1FÓGôIàñ
€Bô �*‰*‹,€CÜ	�# Ô	#ð  sØ�‰�CÔØ�‰�CÔ÷ð 
�‰×	Ñ	˜#Ó	ð ; #Ø&)§k¡k×&7Ñ&7Ó&9×:™d˜a �”3�q“6‘	Ð:ˆÑ:÷;ð ØØ,Ø"¤3§?¡?Ð"3Ð3KÐLØ)Ø'Ø/´·±Ð/@ÐAØØ!Øñ
ò 
ð 
ñ 
÷ð üó
 ;÷;ð ;ús*   Ã #E:ÄFÄ$FÄ:FÅ:FÆFÆFc                  óˆ  ‡‡— t        j                  d«      } dŠt        j                  d¬«      }|j	                  ddd‰› d�¬«       |j	                  dd	d
‰› d�¬«       t        j                  «       5 }|j                  |d¬«       | j                  j                  |«      5 }|j                  d   j                  }dD ]X  \  }Št        ˆˆfd„|D «       d «      }|€J ‚t        |dd «      �J ‚|j                  d   t        j                   |«      dz  k(  rŒXJ ‚ 	 d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nrk   ú&https://test_text_urls.matplotlib.org/©r1   r0   ©Úfigsizeçš™™™™™¹?ztest plain 123Úplain)Úurlgš™™™™™Ù?ztest mathtext $123$Úmathtextr3   r4   r   ))z0.1rÂ   )z0.4rÄ   c              3   ó^   •K  — | ]$  }|j                   j                  ‰› ‰› �k(  sŒ!|–— Œ& y ­w©N©ÚAÚURI)Ú.0ÚaÚfragmentÚtest_urls     €€r#   ú	<genexpr>z!test_text_urls.<locals>.<genexpr>  s)   øè ø€ ÒM˜1¨!¯#©#¯'©'¸°zÀ(ÀÐ5LÓ*L”QÑMùs   ƒ"-¦-Ú
QuadPointsr0   éH   )r7   rq   r   rV   r   r;   r<   r:   ru   rv   rw   ÚAnnotsÚnextÚgetattrÚRectÚdecimalÚDecimal)	rk   r!   Úfdr3   ÚannotsÚyÚannotrÌ   rÍ   s	          @@r#   Útest_text_urlsrÛ     sL  ù€ Ü×!Ñ! )Ó,€Gà7€Hä
�*‰*˜VÔ
$€CØ‡H�HˆS�#Ð'°¨z¸Ð-?€HÔ@Ø‡H�HˆS�#Ð,°X°J¸hÐ2G€HÔHä	�‰‹ð @˜Ø�‰�B˜uˆÔ%à�[‰[×Ñ˜bÓ!ð 	@ SØ—Y‘Y˜q‘\×(Ñ(ˆFð  Gò @‘��8ÜÜM ÔMØó�ð Ð(Ð(Ð(Ü˜u l°DÓ9ÐAÐAÐAà—z‘z !‘}¬¯©¸Ó(:¸RÑ(?Ó?Ð?Ð?ñ@÷	@÷@ð @÷	@ð 	@ú÷@ð @ús+   Á4/D8Â#A3D,ÄD,ÄD8Ä,D5	Ä1D8Ä8Ec                  óX  ‡— t        j                  d«      } dŠt        j                  d¬«      }|j	                  dddd‰› ¬«       t        j                  «       5 }|j                  |d	¬
«       | j                  j                  |«      5 }|j                  d   j                  }t        ˆfd„|D «       d «      }|€J ‚t        |dd «      €J ‚|j                  d   |j                  d   t!        j"                  d«      z
  k(  sJ ‚	 d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nrk   r½   )r0   r0   r¿   rÁ   ÚNé-   )ÚrotationrÃ   r3   r4   r   c              3   óX   •K  — | ]!  }|j                   j                  ‰› k(  sŒ|–— Œ# y ­wrÆ   rÇ   ©rÊ   rË   rÍ   s     €r#   rÎ   z)test_text_rotated_urls.<locals>.<genexpr>.  s"   øè ø€ Ò?�q a§c¡c§g¡g°H°:Ó&>”Ñ?ùs   ƒ*£*rÏ   é   z0.00001)r7   rq   r   rV   r   r;   r<   r:   ru   rv   rw   rÑ   rÒ   rÓ   rÔ   rÏ   rÕ   rÖ   ©rk   r!   r×   r3   rØ   rÚ   rÍ   s         @r#   Útest_text_rotated_urlsrä     s+  ø€ Ü×!Ñ! )Ó,€Gà7€Hä
�*‰*˜VÔ
$€CØ‡H�HˆS�#�s R°¨z€HÔ;ä	�‰‹ð @˜Ø�‰�B˜uˆÔ%à�[‰[×Ñ˜bÓ!ð 	@ SØ—Y‘Y˜q‘\×(Ñ(ˆFô Û?˜FÔ?ØóˆEð Ð$Ð$Ð$Ü˜5 ,°Ó5ÐAÐAÐAà—:‘:˜a‘=Ø×Ñ Ñ"¤W§_¡_°YÓ%?Ñ?ò@ð @ñ @÷	@÷@ð @÷	@ð 	@ú÷@ð @ús%   Á/D Â	A9DÄD ÄD	ÄD Ä D)c                  ó$  ‡— t        j                  d«      } dŠt        j                  d¬«      }|j	                  dddd‰› d	�¬
«       t        j                  «       5 }|j                  |d¬«       | j                  j                  |«      5 }|j                  d   j                  }t        ˆfd„|D «       d «      }|€J ‚|j                  d   t        j                  d«      dz  k(  sJ ‚	 d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nrk   r½   r¾   r¿   rÁ   gffffffæ?ztest tex $123$TÚtex)ÚusetexrÃ   r3   r4   r   c              3   ó\   •K  — | ]#  }|j                   j                  ‰› d �k(  sŒ |–— Œ% y­w)ræ   NrÇ   rá   s     €r#   rÎ   z%test_text_urls_tex.<locals>.<genexpr>I  s'   øè ø€ ÒB�q a§c¡c§g¡g°H°:¸SÐ1AÓ&A”ÑBùs   ƒ!,¥,r0   z0.7rÐ   )r7   rq   r   rV   r   r;   r<   r:   ru   rv   rw   rÑ   rÒ   rÔ   rÕ   rÖ   rã   s         @r#   Útest_text_urls_texré   7  s  ø€ ä×!Ñ! )Ó,€Gà7€Hä
�*‰*˜VÔ
$€CØ‡H�HˆS�#Ð'°¸X¸JÀcÐ:J€HÔKä	�‰‹ð @˜Ø�‰�B˜uˆÔ%à�[‰[×Ñ˜bÓ!ð 
	@ SØ—Y‘Y˜q‘\×(Ñ(ˆFô ÛB˜FÔBØóˆEð Ð$Ð$Ð$à—:‘:˜a‘=¤G§O¡O°EÓ$:¸RÑ$?Ò?Ð?Ñ?÷
	@÷@ð @÷
	@ð 
	@ú÷@ð @ús%   Á/DÂAC:Ã)DÃ:D	Ã?DÄDc                  ó¸   — t        t        t        j                  «      «      5 } | j	                  t        j                  «       «       d d d «       y # 1 sw Y   y xY wrÆ   )r   r   rO   Údevnullr:   r   rV   )r3   s    r#   Útest_pdfpages_fspathrì   P  s<   € Ü	”$”r—z‘zÓ"Ó	#ð " sØ�‰”C—J‘J“LÔ!÷"÷ "ñ "ús   £$AÁAzhatching_legend.pdfc                  ó¨   — t        j                  d¬«      } t        ddgdddd¬«      }t        ddgdddd¬«      }| j                  ||||gg d¢«       y	)
z.Test for correct hatching on patches in legend)r0   r1   r¿   r   ÚgreenÚXXXX)Ú	facecolorÚhatchÚblue)Ú ró   ró   ró   N)r   rV   r   Úlegend)r!   rË   Úbs      r#   Útest_hatching_legendrö   U  sU   € ô �*‰*˜VÔ
$€Cä�1�a�&˜!˜Q¨'¸Ô@€AÜ�1�a�&˜!˜Q¨&¸Ô?€Aà‡J�J��1�a˜ˆ|Ò-Õ.r%   zgrayscale_alpha.pdfc                  óD  — t         j                  ddd…ddd…f   \  } }t        j                  | dz  |dz  z    «      }t         j                  ||dk  <   t	        j
                  «       \  }}|j                  |dd¬«       |j                  g «       |j                  g «       y)z9Masking images with NaN did not work for grayscale imageséþÿÿÿr1   rÁ   ÚnoneÚgray_r)ÚinterpolationÚcmapN)	r^   ÚogridÚexpÚnanr   r   rc   Ú
set_xticksÚ
set_yticks)ÚxrÙ   Úddr!   r"   s        r#   Útest_grayscale_alphar  `  s�   € ô �8‰8�B�q˜�G˜R  "˜WÐ$Ñ%�D€A€qÜ	�‰�!�Q‘$˜˜A™‘+�Ó	€BÜ—&‘&€B€rˆB�w�KÜ�l‰l‹n�G€CˆØ‡I�Iˆb ¨X€IÔ6Ø‡M�M�"ÔØ‡M�M�"Õr%   Údefaultr3   Úeps)Ú
extensionsc           	      óü   — | j                  «       }|j                  «        |j                  t        j                  t        j
                  ddd«      «      dd¬«       |j                  «       }|j                  «        y )NrZ   r[   éd   r¯   rù   )Úc)Úadd_subplotÚset_axis_offr9   r^   ra   Úlinspace)Úfig_testÚfig_refÚax_testÚax_refs       r#   Ú'test_pdf_eps_savefig_when_color_is_noner  l  s`   € ð ×"Ñ"Ó$€GØ×ÑÔØ‡L�L”—‘œŸ™ B¨¨3Ó/Ó0°#¸€LÔ@Ø× Ñ Ó"€FØ
×ÑÕr%   c                  óà   — t        j                  dd¬«       t        j                  t        «      5  t        j
                  t        j                  «       d¬«       ddd«       y# 1 sw Y   yxY w)z"Test failing latex subprocess callz$22_2_2$T)rç   r3   r4   N)r   Úxlabelr7   ÚraisesÚRuntimeErrorr:   r;   r<   © r%   r#   Útest_failing_latexr  v  sG   € ô ‡J�Jˆz $Õ'Ü	�‰”|Ó	$ñ 0Ü�‰”B—J‘J“L¨Õ/÷0÷ 0ñ 0ús   ±*A$Á$A-c                  ó¤   — t        j                  «       \  } }|j                  g g d¬«       | j                  t	        j
                  «       d¬«       y )NT)Ú
rasterizedr3   r4   )r   r   r9   r:   r;   r<   r¸   s     r#   Útest_empty_rasterizedr  ~  s9   € ä�l‰l‹n�G€CˆØ‡G�GˆB�˜t€GÔ$Ø‡K�K”—
‘
“ U€KÕ+r%   zkerning.pdfc                  ó„   — t        j                  «       } d}| j                  dd|d¬«       | j                  dd|d¬«       y )Nu   AVAVAVAVAVAVAVAVâ‚¬AAVVr   g      Ð?r[   )Úsizeg      è?é   )r   rV   r   )r!   rK   s     r#   Útest_kerningr  …  s:   € ä
�*‰*‹,€CØ!€AØ‡H�HˆQ��Q˜Q€HÔØ‡H�HˆQ��Q˜R€HÕ r%   c                  ó¶  — t        t        d«      «      } d}t        | «      }|j                  |«       t        t	        | |«      «      }|j                  |«       |j                  «       }|j                  «       }h |£|D �ch c]  }t        |«      ’Œ c}k(  sJ ‚t        |«      t        |«      k  sJ ‚|j                  «       |j                  «       k(  sJ ‚y c c}w )Nzfonts/ttf/DejaVuSerif.ttfz%these should be subsetted! 1234567890)	r©   r   r   Úset_textr   Úget_charmapÚchrrH   Úget_num_glyphs)ÚfpathÚcharsÚ	nosubfontÚsubfontÚ	nosubcmapÚsubcmapÚkeys          r#   Útest_glyphs_subsetr,  �  sÐ   € Ü”Ð:Ó;Ó<€EØ3€Eô ˜“€IØ×Ñ�uÔô Ô'¨¨uÓ5Ó6€GØ×Ñ�UÔà×%Ñ%Ó'€IØ×!Ñ!Ó#€Gð ˆUˆ8¨GÖ4 Sœ˜C�Ò4Ò4Ð4Ð4ô ˆw‹<œ#˜i›.Ò(Ð(Ð(ð ×!Ñ!Ó# y×'?Ñ'?Ó'AÒAÐAÑAùò 5s   Â Czmulti_font_type3.pdfgffffff@)Útolc                  ób  — t        j                  dg¬«      } t        t        j                  | «      «      j                  dk7  rt        j                  d«       t        j                  dddgd¬«       t        j                  d	d
¬«       t        j                  «       }|j                  ddd«       y )Nr'   r-   r(   úFont may be missingr2   r&   é   ©r.   r  r3   r*   ©r)   ç333333Ã?çffffffÞ?õ"   There are å‡ ä¸ªæ±‰å­— in between!©Úfmr
   r   r	   r6   r7   r8   r   ÚrcrV   r   ©Úfpr!   s     r#   Útest_multi_font_type3r;  ¦  s   € ä	×	Ñ	Ð#6Ð"7Ô	8€BÜŒB�K‰K˜‹OÓ×!Ñ!Ð%5Ò5Ü�‰Ð)Ô*ä‡F�Fˆ6˜=Ð*=Ð>ÀRÕHÜ‡F�Fˆ5˜1Õä
�*‰*‹,€CØ‡H�HˆT�5Ð>Õ?r%   zmulti_font_type42.pdfgš™™™™™@c                  ób  — t        j                  dg¬«      } t        t        j                  | «      «      j                  dk7  rt        j                  d«       t        j                  dddgd¬«       t        j                  d	d
¬«       t        j                  «       }|j                  ddd«       y )Nr'   r-   r(   r/  r2   r&   r0  r1  r3   r+   r2  r3  r4  r5  r6  r9  s     r#   Útest_multi_font_type42r=  ³  s   € ä	×	Ñ	Ð#6Ð"7Ô	8€BÜŒB�K‰K˜‹OÓ×!Ñ!Ð%5Ò5Ü�‰Ð)Ô*ä‡F�Fˆ6˜=Ð*=Ð>ÀRÕHÜ‡F�Fˆ5˜2Õä
�*‰*‹,€CØ‡H�HˆT�5Ð>Õ?r%   )=r¤   rÕ   r;   rO   Úpathlibr   Únumpyr^   r7   Ú
matplotlibrR   r   r   r   r   r7  Úmatplotlib.cbookr   Úmatplotlib.ft2fontr   Úmatplotlib.font_managerr	   r
   Ú#matplotlib.backends._backend_pdf_psr   Úmatplotlib.backends.backend_pdfr   Úmatplotlib.patchesr   Úmatplotlib.testing.decoratorsr   r   Úmatplotlib.testing._markersr   r$   ÚmarkÚparametrizer?   rB   rL   rX   ri   rˆ   r±   r¹   r»   rÛ   rä   ré   rì   rö   r  ÚstyleÚcontextr  r  r  r  r,  r;  r=  r  r%   r#   ú<module>rM     së  ðÛ Û Û 	Û 	Ý ã Û ã ÷ñ õ ,Ý &ß <Ý AÝ 4Ý (ß OÝ 4ñ Ð+Ð,Ó-ñ#ó .ð#ð& ‡�×ÑÐ-Ø%Ø+ð0ó ð ‡�×Ñ˜ a¨ WÓ-ñ,ó .ó	ð
,ò(ò	ò%#òP+ò&-ò0 òFJò("òJ@ò6@ð4 ñ@ó ð@ò0"ñ
 Ð(Ð)Ó*ñ/ó +ð/ñ Ð(Ð)Ó*ñó +ðð ‡�×Ñ�9ÓÙ ¨ Ô/ñó 0ó ðð ñ0ó ð0ò,ñ �=�/Ó"ñ!ó #ð!òBñ2 Ð)Ð*°Ô4ñ	@ó 5ð	@ñ Ð*Ð+°Ô5ñ	@ó 6ñ	@r%   