§
    ‚ØjÛž  ã                   óN  — 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Zd dl	Z	d dl
Z
d dlmZ d dlZd dlmZ d dlZd dlmZmZ d dlmZmZmZ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&  ej'        e(¦  «        Z)dZ*d„ Z+dZ,de,z  Z-dZ.de.z  Z/d„ Z0d„ Z1d„ Z2d„ Z3d„ Z4 G d„ de5¦  «        Z6 G d„ d¦  «        Z7 ej8        d¦  «        d„ ¦   «         Z9 G d„ de¦  «        Z: G d„ d e¦  «        Z;eZ<ej=         G d!„ d"e¦  «        ¦   «         Z> G d#„ d$¦  «        Z?dS )%é    N)ÚBytesIO)ÚTemporaryDirectory)ÚImage)ÚcbookÚfont_manager)Ú_BackendÚFigureCanvasBaseÚFigureManagerBaseÚRendererBase)ÚMixedModeRenderer)Ú_create_pdf_info_dictÚ_datetime_to_pdf)ÚPath)ÚFigure)ÚFontProperties)ÚGcfz\documentclass{article}c                  óh  — d„ } t          t          j        d         ¬¦  «                             ¦   «         }d                     dddd|z  d	d
|d|z  fz  ddt          j        d         g	t          j        d         rddg | ¦   «         ¢d‘ng ¢t          j                             dd¬¦  «        ‘¦  «        S )z=Prepare a LaTeX preamble based on the rcParams configuration.c               3   óð   K  — dD ]p\  } }t          j        |¦  «        }t          j        |¦  «        }d| ›d|j        ›d|j                             ¦   «         ›d|j        dk    rd|j        d›�nd	›d
�	V — Œqd S )N))ÚsetmainfontÚserif)Úsetsansfontzsans\-serif)ÚsetmonofontÚ	monospacez  \Ú{z}[Path=\detokenize{z/}z.ttcz,FontIndex=ÚdÚ ú])	ÚfmÚfindfontÚpathlibr   ÚnameÚparentÚas_posixÚsuffixÚ
face_index)ÚcommandÚfamilyÚ	font_pathÚpaths       ú”/Users/tedpeters/Documents/Projects/Claude Projects/Misc Tools/notename-sheets/.venv/lib/python3.11/site-packages/matplotlib/backends/backend_pgf.pyÚ_to_fontspecz#_get_preamble.<locals>._to_fontspec)   s¸   è è € ð >ð 	Yð 	Y‰OˆG�Võ œ FÑ+Ô+ˆIÝ”< 	Ñ*Ô*ˆDˆDà��˜œ˜˜ D¤K×$8Ò$8Ñ$:Ô$:Ð$:Ð$:Ø:>¼+ÈÒ:OÐ:OÐ6˜iÔ2Ð6Ð6Ð6Ð6ÐUWÐWÐWðYð Yð Yð Yð Yð	Yð 	Yó    z	font.size)Úsizeú
z\def\mathdefault#1{#1}z4\everymath=\expandafter{\the\everymath\displaystyle}z\IfFileExists{scrextend.sty}{z'  \usepackage[fontsize=%fpt]{scrextend}z}{z:  \renewcommand{\normalsize}{\fontsize{%f}{%f}\selectfont}ç333333ó?z  \normalsizeÚ}zpgf.preambleúpgf.rcfontsz1\ifdefined\pdftexversion\else  % non-pdftex case.z  \usepackage{fontspec}z\fiÚ
underscoreÚstrings)Úoption)r   ÚmplÚrcParamsÚget_size_in_pointsÚjoinÚ
texmanagerÚ_usepackage_if_not_loaded)r+   Úfont_size_pts     r*   Ú_get_preambler<   '   sõ   € ðYð Yð Yõ "¥s¤|°KÔ'@ÐAÑAÔA×TÒTÑVÔV€LØ�9Š9ð 	"à?ð
 	)Ø2°\ÑAØØEØ˜˜|Ñ+Ð
,ñ	-àØåŒ�^Ô$ð%õ. ”| MÔ2ð	;Ø@Ø&ðð ˆ\‰^Œ^ðð ð	ð ð 9;ð/õ2 	Œ×0Ò0°ÀiÐ0ÑPÔPð3ñ ô ð r,   gRh�¸’VŒ?ç      ð?gÇqÇqŒ?c                 ó.   — |                       dd¦  «        S )zh
    Do some necessary and/or useful substitutions for texts to be included in
    LaTeX documents.
    u   âˆ’z\ensuremath{-})Úreplace)Útexts    r*   Ú_tex_escaperA   Y   s   € ð
 �<Š<Ð(Ð*;Ñ<Ô<Ð<r,   c                 óZ   — |                       |¦  «         |                       d¦  «         d S )Nz%
)Úwrite)ÚfhÚlines     r*   Ú_writelnrF   a   s&   € ð ‡H‚HˆT�N„N€NØ‡H‚HˆU�O„O€O€O€Or,   c                 óH  ‡— g }dddddœ}|                      ¦   «         d         Š‰|v r|                     |‰         ¦  «         n†t          j        d         s|                     d¦  «         n^t	          ˆfd„t
          j        j        D ¦   «         ¦  «        r|                     d	‰z  ¦  «         nt           	                    d
‰¦  «         | 
                    ¦   «         }|                     d||dz  fz  ¦  «         ddddœ}|                     ||                     ¦   «                  ¦  «         g d¢}|                     ¦   «         |v r|                     d¦  «         |                     d¦  «         dd                     |¦  «        z   dz   dz   t          | ¦  «        z   dz   S )zƒ
    Generate a TeX string that renders string *s* with font properties *prop*,
    also applying any required escapes to *s*.
    z	\rmfamilyz	\sffamilyz	\ttfamily)r   Úsansz
sans-serifr   r   r1   z\fontfamily{\familydefault}c              3   ó.   •K  — | ]}|j         ‰k    V — Œd S ©N)r!   )Ú.0Úfontr'   s     €r*   ú	<genexpr>z*_escape_and_apply_props.<locals>.<genexpr>v   s*   øè è € ÐDÐD TˆTŒY˜&Ò ÐDÐDÐDÐDÐDÐDr,   z9\ifdefined\pdftexversion\else\setmainfont{%s}\rmfamily\fizIgnoring unknown font: %sz\fontsize{%f}{%f}r/   r   z\itshapez\slshape)ÚnormalÚitalicÚoblique)ÚsemiboldÚdemiboldÚdemiÚboldÚheavyz
extra boldÚblackz	\bfseriesz\selectfontr   z1\catcode`\^=\active\def^{\ifmmode\sp\else\^{}\fi}z\catcode`\%=\active\def%{\%}r0   )Ú
get_familyÚappendr5   r6   Úanyr   ÚfontManagerÚttflistÚ_logÚwarningr7   Ú	get_styleÚ
get_weightr8   rA   )ÚsÚpropÚcommandsÚfamiliesr-   ÚstylesÚ
boldstylesr'   s          @r*   Ú_escape_and_apply_propsrf   h   sÜ  ø€ ð
 €Hà%¨|Ø*¸ðGð G€Hà�_Š_ÑÔ˜qÔ!€FØ�ÐÐØ�Š˜ Ô(Ñ)Ô)Ð)Ð)ÝŒ\˜-Ô(ð :Ø�ŠÐ6Ñ7Ô7Ð7Ð7Ý	ÐDÐDÐDÐD­R¬^Ô-CÐDÑDÔDÑ	DÔ	Dð :Ø�ŠØHÈ6ÑQñ	Sô 	Sð 	Sð 	Sõ 	�ŠÐ0°&Ñ9Ô9Ð9à×"Ò"Ñ$Ô$€DØ‡O‚OÐ(¨D°$¸±*Ð+=Ñ=Ñ>Ô>Ð>à {¸{ÐKÐK€FØ‡O‚O�F˜4Ÿ>š>Ñ+Ô+Ô,Ñ-Ô-Ð-ð)ð )ð )€Jà‡‚ÑÔ˜JÐ&Ð&Ø�Š˜Ñ%Ô%Ð%à‡O‚O�NÑ#Ô#Ð#àØ
�'Š'�(Ñ
Ô
ñ	à
>ñ	?ð *ñ	*õ �a‰.Œ.ñ	ð ñ	ð
r,   c           	      ó8  ‡ ‡— t          ‰t          j        ¦  «        rt          ‰¦  «        Šn0‰ dk    r‰j                             d¦  «        Šnt          ‰¦  «        Šd}t          ˆ ˆfd„|D ¦   «         ¦  «        rt          d‰ ›d‰›d|› d�¦  «        ‚‰ › d	‰› d
�S )z;Convert metadata key/value to a form that hyperref accepts.ÚTrappedÚasciiz\{}[]()c              3   ó&   •K  — | ]}|‰‰z   v V — Œd S rJ   © )rK   ÚcÚkeyÚvalues     €€r*   rM   z#_metadata_to_str.<locals>.<genexpr>¡   s,   øè è € Ð
3Ð
3 ˆ1�˜‘ÐÐ
3Ð
3Ð
3Ð
3Ð
3Ð
3r,   zInvalid metadata value for z: z'. The value must not contain the chars ú.z={r0   )Ú
isinstanceÚdatetimer   r!   ÚdecodeÚstrrY   Ú
ValueError)rm   rn   Úinvalid_charss   `` r*   Ú_metadata_to_strrv   •   sê   øø€ å�%�Ô*Ñ+Ô+ð Ý  Ñ'Ô'ˆˆØ	�	Ò	Ð	Ø”
×!Ò! 'Ñ*Ô*ˆˆå�E‘
”
ˆð €MÝ
Ð
3Ð
3Ð
3Ð
3Ð
3 ]Ð
3Ñ
3Ô
3Ñ3Ô3ð FÝðE¨#ð Eð E°5ð Eð EØ4AðEð Eð EñFô Fð 	Fð ÐÐ�eÐÐÐÐr,   c                  óÚ   ‡ — 	 t          j        d¦  «         d„ S # t           j        $ r Y nw xY w	 t          j        d¦  «        Š ˆ fd„S # t           j        $ r Y nw xY wt          d¦  «        ‚)z9Return a function that converts a pdf file to a png file.Ú
pdftocairoc                 óž   — t          j        dddddd|z  | t          j                             |¦  «        d         gt           j        ¬¦  «        S )	Nrx   z-singlefilez-transpz-pngz-rz%dr   ©Ústderr)Ú
subprocessÚcheck_outputÚosr)   ÚsplitextÚSTDOUT)ÚpdffileÚpngfileÚdpis      r*   ú<lambda>z+make_pdf_to_png_converter.<locals>.<lambda>°   sN   € ­ZÔ-DØ˜=¨)°V¸TÀ4È#Á:Ø•b”g×&Ò& wÑ/Ô/°Ô2ð4åÔ$ð.&ñ .&ô .&€ r,   Úgsc                 óv   •— t          j        ‰j        ddddddddd	d
d|z  d|z  | gt           j        ¬¦  «        S )Nz-dQUIETz-dSAFERz-dBATCHz	-dNOPAUSEz
-dNOPROMPTz-dUseCIEColorz-dTextAlphaBits=4z-dGraphicsAlphaBits=4z-dDOINTERPOLATEz-sDEVICE=pngalphaz-sOutputFile=%sz-r%drz   )r|   r}   Ú
executabler€   )r�   r‚   rƒ   Úgs_infos      €r*   r„   z+make_pdf_to_png_converter.<locals>.<lambda>¹   sW   ø€ ­ZÔ-DØÔØ˜	 9¨k¸<ØÐ1Ø$Ð&7Ø Ð"3°gÑ"=Ø�c‰\˜7ð$õ Ô$ð.&ñ .&ô .&€ r,   z&No suitable pdf to png renderer found.)r5   Ú_get_executable_infoÚExecutableNotFoundErrorÚRuntimeError)rˆ   s   @r*   Úmake_pdf_to_png_converterrŒ   ©   s±   ø€ ð&ÝÔ  Ñ.Ô.Ð.ð&ð &ð 	&øõ Ô&ð ð ð Øˆðøøøð&ÝÔ*¨4Ñ0Ô0ˆð&ð &ð &ð &ð 	&øõ Ô&ð ð ð Øˆðøøøõ Ð?Ñ
@Ô
@Ð@s   ƒ š,«,°A	 Á	AÁAc                   ó&   ‡ — e Zd Zdˆ fd„	Zd„ Zˆ xZS )Ú
LatexErrorr   c                 óX   •— t          ¦   «                              |¦  «         || _        d S rJ   )ÚsuperÚ__init__Úlatex_output)ÚselfÚmessager’   Ú	__class__s      €r*   r‘   zLatexError.__init__Å   s)   ø€ Ý‰Œ×Ò˜Ñ!Ô!Ð!Ø(ˆÔÐÐr,   c                 ó@   — | j         \  }| j        r|d| j        z   z  }|S ©Nr.   )Úargsr’   ©r“   r`   s     r*   Ú__str__zLatexError.__str__É   s-   € ØŒY‰ˆØÔð 	*Ø�˜Ô)Ñ)Ñ)ˆAØˆr,   )r   )Ú__name__Ú
__module__Ú__qualname__r‘   rš   Ú__classcell__©r•   s   @r*   rŽ   rŽ   Ä   sL   ø€ € € € € ð)ð )ð )ð )ð )ð )ðð ð ð ð ð ð r,   rŽ   c                   ó°   — e Zd ZdZed„ ¦   «         Zed„ ¦   «         Ze ej	        d¦  «        d„ ¦   «         ¦   «         Z
d„ Zd„ Zd„ Zd	„ Zd
dœd„Zd„ Zd„ ZdS )ÚLatexManagerzÛ
    The LatexManager opens an instance of the LaTeX application for
    determining the metrics of text elements. The LaTeX environment can be
    modified by setting fonts and/or a custom preamble in `.rcParams`.
    c                  ó„   — t           dt          j        d         › �dt          ¦   «         ddg} d                     | ¦  «        S )Nz% !TeX program = úpgf.texsystemz\usepackage{graphicx}ú\begin{document}z!\typeout{pgf_backend_query_start}r.   )Ú_DOCUMENTCLASSr5   r6   r<   r8   )Úlatex_headers    r*   Ú_build_latex_headerz LatexManager._build_latex_header×   sG   € õ ð A¥¤¨oÔ!>Ð@Ð@à$Ý‰OŒOØØ0ð

ˆð �yŠy˜Ñ&Ô&Ð&r,   c                 óP   — |                       |                      ¦   «         ¦  «        S )z„
        Return the previous LatexManager if the header and tex system did not
        change, or a new instance otherwise.
        )Ú_get_cached_or_new_implr§   )Úclss    r*   Ú_get_cached_or_newzLatexManager._get_cached_or_newæ   s$   € ð ×*Ò*¨3×+BÒ+BÑ+DÔ+DÑEÔEÐEr,   é   c                 ó   —  | ¦   «         S rJ   rk   )rª   Úheaders     r*   r©   z$LatexManager._get_cached_or_new_implî   s   € ð ˆs‰uŒuˆr,   c                 óô   — | j         €|                      ¦   «          | j         j                             |¦  «         | j         j                             d¦  «         | j         j                             ¦   «          d S r—   )ÚlatexÚ_setup_latex_processÚstdinrC   Úflushr™   s     r*   Ú_stdin_writelnzLatexManager._stdin_writelnó   sk   € ØŒ:ÐØ×%Ò%Ñ'Ô'Ð'ØŒ
Ô×Ò˜qÑ!Ô!Ð!ØŒ
Ô×Ò˜tÑ$Ô$Ð$ØŒ
Ô×ÒÑ Ô Ð Ð Ð r,   c                 ó~  — t          |¦  «        }g }	 | j        j                             d¦  «        }|                     |¦  «         |t          |¦  «         d …         |k    rnF|sC| j                             ¦   «          d | _        t          dd                     |¦  «        ¦  «        ‚Œ—d                     |¦  «        S )NTr¬   zLaTeX process haltedr   )	Úlistr°   ÚstdoutÚreadrX   ÚlenÚkillrŽ   r8   )r“   r`   Úcharsrl   s       r*   Ú_expectzLatexManager._expectú   s²   € Ý�‰GŒGˆØˆð	IØ”
Ô!×&Ò& qÑ)Ô)ˆAØ�LŠL˜‰OŒOˆOØ•c˜!‘f”f�W�X�XŒ !Ò#Ð#ØØð IØ”
—’Ñ!Ô!Ð!Ø!�”
Ý Ð!7¸¿ºÀ¹¼ÑHÔHÐHð	Ið �wŠw�u‰~Œ~Ðr,   c                 ó,   — |                       d¦  «        S )Nz
*)r¼   ©r“   s    r*   Ú_expect_promptzLatexManager._expect_prompt  s   € Ø�|Š|˜EÑ"Ô"Ð"r,   c                 ó°  — t          ¦   «         | _        | j        j        | _        t	          j        | | j        j        ¦  «        | _        |                      d¬¦  «         | j	         
                    d¦  «        \  }}| j	        j        dk    r%t          d|                      ¦   «         › �|¦  «        ‚d | _	        t          j        | j        ¦  «        | _        d S )NF©Úexpect_replyz
\makeatletter\@@end
r   zaLaTeX errored (probably missing font or error in preamble) while processing the following input:
)r   Ú_tmpdirr!   ÚtmpdirÚweakrefÚfinalizeÚcleanupÚ_finalize_tmpdirr±   r°   ÚcommunicateÚ
returncoderŽ   r§   Ú	functoolsÚ	lru_cacheÚ_get_box_metrics)r“   r·   r{   s      r*   r‘   zLatexManager.__init__  sÒ   € å)Ñ+Ô+ˆŒØ”lÔ'ˆŒÝ 'Ô 0°°t´|Ô7KÑ LÔ LˆÔð 	×!Ò!¨uÐ!Ñ5Ô5Ð5Øœ×/Ò/Ð0KÑLÔL‰ˆ�ØŒ:Ô  AÒ%Ð%Ýð0à×+Ò+Ñ-Ô-ð0ð 0ð ñ	ô ð ð
 ˆŒ
å )Ô 3°DÔ4IÑ JÔ JˆÔÐÐr,   TrÁ   c                óV  — 	 t          j        t          j        d         ddgt           j        t           j        d| j        ¬¦  «        | _        ne# t          $ r(}t          t          j        d         ›d�¦  «        |‚d }~wt          $ r(}t          dt          j        d         ›�¦  «        |‚d }~ww xY wd„ }t          j        | || j        ¦  «        | _        |                      |                      ¦   «         ¦  «         |r+|                      d	¦  «         |                      ¦   «          d S d S )
Nr£   ú-halt-on-errorú-no-shell-escapeúutf-8)r²   r·   ÚencodingÚcwdz] not found; install it or change rcParams['pgf.texsystem'] to an available TeX implementationzError starting c                 ó¢   — |                       ¦   «          	 |                      ¦   «          d S # t          $ r |                      ¦   «          Y d S w xY wrJ   )rº   rÉ   r‹   Úwait)r°   s    r*   Úfinalize_latexz9LatexManager._setup_latex_process.<locals>.finalize_latex2  sZ   € Ø�JŠJ‰LŒLˆLðØ×!Ò!Ñ#Ô#Ð#Ð#Ð#øÝð ð ð Ø—
’
‘”����ðøøøs   –, ¬AÁAz*pgf_backend_query_start)r|   ÚPopenr5   r6   ÚPIPErÄ   r°   ÚFileNotFoundErrorr‹   ÚOSErrorrÅ   rÆ   Ú_finalize_latexr´   r§   r¼   r¿   )r“   rÂ   ÚerrrÖ   s       r*   r±   z!LatexManager._setup_latex_process  sn  € ð	NÝ#Ô)Ý”˜oÔ.Ð0@ÐBTÐUÝ ”o­j¬oØ  d¤kð3ñ 3ô 3ˆDŒJˆJøõ !ð 	ð 	ð 	ÝÝ”< Ô0ð Pð Pð Pñô ð ðøøøøõ ð 	Nð 	Nð 	NÝØC¥#¤,¨Ô"?ÐCÐCñEô EØJMðNøøøøð	Nøøøð	ð 	ð 	õ  'Ô/Ø�. $¤*ñ .ô  .ˆÔð 	×Ò˜D×4Ò4Ñ6Ô6Ñ7Ô7Ð7Øð 	"Ø�LŠLÐ3Ñ4Ô4Ð4Ø×ÒÑ!Ô!Ð!Ð!Ð!ð	"ð 	"s$   ‚A
A Á
B/Á#A:Á:B/Â#B*Â*B/c                 óH   — |                       t          ||¦  «        ¦  «        S )z‡
        Get the width, total height, and descent (in TeX points) for a text
        typeset by the current LaTeX environment.
        )rÍ   rf   )r“   r@   ra   s      r*   Úget_width_height_descentz%LatexManager.get_width_height_descentA  s#   € ð
 ×$Ò$Õ%<¸TÀ4Ñ%HÔ%HÑIÔIÐIr,   c                 ó@  — |                       d|z  ¦  «         	 |                      ¦   «         }n;# t          $ r.}t          d                     ||j        ¦  «        ¦  «        |‚d}~ww xY w	 |                     ¦   «         d                              d¦  «        \  }}}n6# t          $ r)}t          d                     ||¦  «        ¦  «        |‚d}~ww xY wt          |dd…         ¦  «        t          |dd…         ¦  «        t          |dd…         ¦  «        }	}}|||	z   |	fS )zŽ
        Get the width, total height and descent (in TeX points) for a TeX
        command's output in the current LaTeX environment.
        zW{\catcode`\^=\active\catcode`\%%=\active\sbox0{%s}\typeout{\the\wd0,\the\ht0,\the\dp0}}z#Error measuring {}
LaTeX Output:
{}Néýÿÿÿú,éþÿÿÿ)
r´   r¿   rŽ   rt   Úformatr’   Ú
splitlinesÚsplitÚ	ExceptionÚfloat)
r“   ÚtexÚanswerrÜ   ÚwidthÚheightÚoffsetÚwÚhÚos
             r*   rÍ   zLatexManager._get_box_metricsH  s]  € ð 	×Òð5àññ	ô 	ð 	ð	FØ×(Ò(Ñ*Ô*ˆFˆFøÝð 	Fð 	Fð 	Fõ ÐDß$šf S¨#Ô*:Ñ;Ô;ñ=ô =ØBEðFøøøøð	Føøøð
	<ð %+×$5Ò$5Ñ$7Ô$7¸Ô$;×$AÒ$AÀ#Ñ$FÔ$FÑ!ˆE�6˜6˜6øÝð 	<ð 	<ð 	<ÝÐDß$šf S¨&Ñ1Ô1ñ3ô 3Ø8;ð<øøøøð	<øøøõ ˜˜c˜r˜cœ
Ñ#Ô#¥U¨6°#°2°#¬;Ñ%7Ô%7½¸vÀcÀrÀc¼{Ñ9KÔ9Kˆaˆ1ˆð �!�a‘%˜ˆ{Ðs,   š/ ¯
A'¹)A"Á"A'Á+1B Â
CÂ'$CÃCN)r›   rœ   r�   Ú__doc__Ústaticmethodr§   Úclassmethodr«   rË   rÌ   r©   r´   r¼   r¿   r‘   r±   rÞ   rÍ   rk   r,   r*   r¡   r¡   Ð   s	  € € € € € ðð ð ð'ð 'ñ „\ð'ð ðFð Fñ „[ðFð Ø€YÔ˜ÑÔðð ñ Ôñ „[ðð!ð !ð !ðð ð ð#ð #ð #ðKð Kð Kð& 48ð !"ð !"ð !"ð !"ð !"ðFJð Jð Jðð ð ð ð r,   r¡   r¬   c                  ó8  — t                                ¦   «         } |                      dt          j        d¦  «                             ¦   «         z  ¦  «         	 |                      ¦   «          dS # t          $ r" t           j         	                    ¦   «          Y dS w xY w)Nz&\includegraphics[interpolate=true]{%s}zimages/matplotlib.pngz\includegraphicsz	\pgfimage)
r¡   r«   r´   r   Ú_get_data_pathr#   r¿   rŽ   r©   Úcache_clear)Úmans    r*   Ú_get_image_inclusion_commandr÷   h  s¦   € å
×
)Ò
)Ñ
+Ô
+€CØ×ÒØ1å
Ô
Ð6Ñ
7Ô
7×
@Ò
@Ñ
BÔ
Bñ	CñDô Dð DðØ×ÒÑÔÐØ"Ð"øÝð ð ð åÔ,×8Ò8Ñ:Ô:Ð:Øˆ|ˆ|ðøøøs   ÁA- Á-(BÂBc                   óŒ   ‡ — e Zd Zˆ fd„Z	 dd„Zdd„Zd„ Zd„ Zdd„Zdd
„Z	d„ Z
d„ Zdd„Zddœd„Zdd„Zd„ Zd„ Zd„ Zd„ Zˆ xZS )ÚRendererPgfc                 óŠ   •— t          ¦   «                              ¦   «          |j        | _        || _        || _        d| _        dS )a–  
        Create a new PGF renderer that translates any drawing instruction
        into text commands to be interpreted in a latex pgfpicture environment.

        Attributes
        ----------
        figure : `~matplotlib.figure.Figure`
            Matplotlib figure to initialize height, width and dpi from.
        fh : file-like
            File handle for the output of the drawing commands.
        r   N)r�   r‘   rƒ   rD   ÚfigureÚimage_counter)r“   rû   rD   r•   s      €r*   r‘   zRendererPgf.__init__z  s@   ø€ õ 	‰Œ×ÒÑÔÐØ”:ˆŒØˆŒØˆŒØˆÔÐÐr,   Nc                 ó�  — t          | j        d¦  «         d| j        z  }|                      |¦  «         |                      ||¦  «         |                     |¦  «                             ¦   «         \  }}	|d         |z  |d         |z  |	d         |z  |	d         |z  f}
t          | j        d|
z  ¦  «         |                      d ||¦  «         |                      | 	                    ¦   «         dk    |d u¬¦  «         t          | j        d¦  «         d	| j        z  }| | ||f}| 
                    |d
|¬¦  «        D ]t\  }}|d         |z  |d         |z  }}t          | j        d¦  «         t          | j        d||fz  ¦  «         t          | j        d¦  «         t          | j        d¦  «         Œut          | j        d¦  «         d S )Nú\begin{pgfscope}r=   r   r¬   zQ\pgfsys@defobject{currentmarker}{\pgfqpoint{%fin}{%fin}}{\pgfqpoint{%fin}{%fin}}{ç        ©ÚstrokeÚfillr0   ç†B^!Vl@F)ÚsimplifyÚclipú"\pgfsys@transformshift{%fin}{%fin}z"\pgfsys@useobject{currentmarker}{}ú\end{pgfscope})rF   rD   rƒ   Ú_print_pgf_clipÚ_print_pgf_path_stylesÚget_extentsÚ
get_pointsÚ_print_pgf_pathÚ_pgf_path_drawÚget_linewidthÚiter_segments)r“   ÚgcÚmarker_pathÚmarker_transr)   ÚtransÚrgbFaceÚfÚblÚtrÚcoordsÚmaxcoordr  ÚpointÚcodeÚxÚys                    r*   Údraw_markerszRendererPgf.draw_markers�  s  € õ 	�”Ð-Ñ.Ô.Ð.ð �”‰Mˆð 	×Ò˜RÑ Ô Ð Ø×#Ò# B¨Ñ0Ô0Ð0ð ×(Ò(¨Ñ6Ô6×AÒAÑCÔC‰ˆˆBØ�A”˜‘˜B˜qœE A™I r¨!¤u¨q¡y°"°Q´%¸!±)Ð;ˆÝ�”ðFØHNñOñ	Pô 	Pð 	Pð 	×Ò˜T ;°Ñ=Ô=Ð=Ø×Ò 2×#3Ò#3Ñ#5Ô#5¸Ò#<Ø!(°Ð!4ð 	ñ 	6ô 	6ð 	6å�”˜$ÑÔÐà  4¤8Ñ+ˆØ�	˜H˜9 h°Ð9ˆð  ×-Ò-¨e¸eØ37ð .ñ 9ô 9ð 	1ð 	1‰KˆE�4à˜”8˜a‘<  q¤¨A¡ˆqˆAÝ�T”WÐ1Ñ2Ô2Ð2Ý�T”WÐCÀqÈ!ÀfÑLÑMÔMÐMÝ�T”WÐCÑDÔDÐDÝ�T”WÐ/Ñ0Ô0Ð0Ð0å�”Ð+Ñ,Ô,Ð,Ð,Ð,r,   c                 ó¾  — t          | j        d¦  «         |                      |¦  «         |                      ||¦  «         |                      ||||¦  «         |                      |                     ¦   «         dk    |d u¬¦  «         t          | j        d¦  «         |                     ¦   «         �r+t          | j        d¦  «         |                      ||¦  «         |                      |¦  «         |                      ||||¦  «         t          | j        d¦  «         t          | j        d¦  «         t          | j        d¦  «         |                     ¦   «         t          z  t          z  }|                     ¦   «         }t          | j        d|z  ¦  «         t          | j        d|d d	…         z  ¦  «         t          | j        d
¦  «         t          | j        d|d	         z  ¦  «         t          | j        d¦  «         t          | j        d¦  «         t          j                             ¦   «                              | j        ¦  «        }|                      d |                     ¦   «         |¦  «         |                      d¬¦  «         t          | j        d¦  «         t          | j        d¦  «         d| j        z  }|                     |¦  «                             ¦   «         \  \  }	}
\  }}||	z  ||z  }}	||
z  ||z  }}
t)          j        ||	z
  ¦  «        t)          j        ||
z
  ¦  «        }}t          | j        d|	|
fz  ¦  «         t-          |¦  «        D ]k}t-          |¦  «        D ],}t          | j        d¦  «         t          | j        d¦  «         Œ-t          | j        d|z  ¦  «         t          | j        d¦  «         Œlt          | j        d¦  «         d S d S )Nrþ   rÿ   r   r  ú\pgfusepath{clip}zN\pgfsys@defobject{currentpattern}{\pgfqpoint{0in}{0in}}{\pgfqpoint{1in}{1in}}{ú\pgfsetlinewidth{%fpt}z)\definecolor{currenthatch}{rgb}{%f,%f,%f}é   z \pgfsetstrokecolor{currenthatch}ú\pgfsetstrokeopacity{%f}z=\pgfpathrectangle{\pgfqpoint{0in}{0in}}{\pgfqpoint{1in}{1in}}T)r  r0   r=   r  z#\pgfsys@useobject{currentpattern}{}z \pgfsys@transformshift{1in}{0in}z"\pgfsys@transformshift{-%din}{0in}z \pgfsys@transformshift{0in}{1in})rF   rD   r  r	  r  r  r  Ú	get_hatchÚget_hatch_linewidthÚmpl_pt_to_inÚlatex_in_to_ptÚget_hatch_colorr5   Ú
transformsÚAffine2DÚscalerƒ   Úget_hatch_pathr
  r  ÚmathÚceilÚrange)r“   r  r)   Ú	transformr  ÚlwÚ
hatch_rgbar+  r  ÚxminÚyminÚxmaxÚymaxÚrepxÚrepyÚiyÚixs                    r*   Ú	draw_pathzRendererPgf.draw_path³  sý  € å�”Ð-Ñ.Ô.Ð.à×Ò˜RÑ Ô Ð Ø×#Ò# B¨Ñ0Ô0Ð0Ø×Ò˜R  y°'Ñ:Ô:Ð:Ø×Ò 2×#3Ò#3Ñ#5Ô#5¸Ò#<Ø!(°Ð!4ð 	ñ 	6ô 	6ð 	6å�”Ð+Ñ,Ô,Ð,ð �<Š<‰>Œ>ñ 2	1Ý�T”WÐ1Ñ2Ô2Ð2Ø×'Ò'¨¨GÑ4Ô4Ð4ð × Ò  Ñ$Ô$Ð$Ø× Ò   T¨9°gÑ>Ô>Ð>Ý�T”WÐ2Ñ3Ô3Ð3õ �T”WðFñGô Gð Gõ �T”WÐ1Ñ2Ô2Ð2ð ×'Ò'Ñ)Ô)­LÑ8½>ÑIˆBØ×+Ò+Ñ-Ô-ˆJÝ�T”WÐ7¸"Ñ<Ñ=Ô=Ð=Ý�T”WØAØ! " 1 "”~ñ&ñ'ô 'ð 'õ �T”WÐAÑBÔBÐBÝ�T”WÐ9¸JÀq¼MÑIÑJÔJÐJå�T”WðEñFô Fð Fõ �T”WÐ2Ñ3Ô3Ð3Ý”N×+Ò+Ñ-Ô-×3Ò3°D´HÑ=Ô=ˆEØ× Ò   r×'8Ò'8Ñ':Ô':¸EÑBÔBÐBØ×Ò tÐÑ,Ô,Ð,Ý�T”WÐ/Ñ0Ô0Ð0Ý�T”W˜dÑ#Ô#Ð#à�T”X‘ˆAà× Ò  Ñ+Ô+×6Ò6Ñ8Ô8ñ '‰LˆT�4™,˜4 à˜T™ 1 t¡8�$ˆDØ˜T™ 1 t¡8�$ˆDÝœ 4¨$¡;Ñ/Ô/µ´¸4À$¹;Ñ1GÔ1G�$ˆDÝ�T”WØ:¸dÀD¸\ÑIñKô Kð Kå˜D‘k”kð Gð G�Ý ™+œ+ð Kð K�BÝ˜TœWÐ&LÑMÔMÐMÝ˜TœWÐ&IÑJÔJÐJÐJÝ˜œÐ"GÈ$Ñ"NÑOÔOÐOÝ˜œÐ"EÑFÔFÐFÐFå�T”WÐ/Ñ0Ô0Ð0Ð0Ð0ðe2	1ð 2	1r,   c                 ó¨  — d| j         z  }|                     ¦   «         }|rj|                     ¦   «         \  }}||z
  \  }}|d         |z  |d         |z  ||z  ||z  f}t          | j        d|z  ¦  «         t          | j        d¦  «         |                     ¦   «         \  }	}
|	�.|                      ||	|
¦  «         t          | j        d¦  «         d S d S )Nr=   r   r¬   zA\pgfpathrectangle{\pgfqpoint{%fin}{%fin}}{\pgfqpoint{%fin}{%fin}}r   )rƒ   Úget_clip_rectangler  rF   rD   Úget_clip_pathr  )r“   r  r  ÚbboxÚp1Úp2rí   rî   r  ÚclippathÚclippath_transs              r*   r  zRendererPgf._print_pgf_clipó  sü   € Ø�”‰Mˆà×$Ò$Ñ&Ô&ˆØð 	4Ø—_’_Ñ&Ô&‰FˆB�Ø˜‘7‰DˆAˆqØ˜”U˜Q‘Y  1¤¨¡	¨1¨q©5°!°a±%Ð7ˆFÝ�T”WðIàññô ð õ �T”WÐ2Ñ3Ô3Ð3ð $&×#3Ò#3Ñ#5Ô#5Ñ ˆ�.ØÐØ× Ò   X¨~Ñ>Ô>Ð>Ý�T”WÐ2Ñ3Ô3Ð3Ð3Ð3ð  Ðr,   c           	      ó~  — ddddœ}t          | j        ||                     ¦   «                  ¦  «         ddddœ}t          | j        ||                     ¦   «                  ¦  «         |d u}|                     ¦   «         r|                     ¦   «         x}}n9|                     ¦   «         d	         }|rt          |¦  «        d	k    r|d	         nd
}|rBt          | j        dt          |d d	…         ¦  «        z  ¦  «         t          | j        d¦  «         |r|d
k    rt          | j        d|z  ¦  «         | 	                    ¦   «         t          z  t          z  }|                     ¦   «         }	t          | j        d|z  ¦  «         t          | j        d|	d d	…         z  ¦  «         t          | j        d¦  «         |d
k    rt          | j        d|z  ¦  «         |                     ¦   «         \  }
}|€t          | j        d¦  «         d S t          | j        dd                     d„ |D ¦   «         ¦  «        |
fz  ¦  «         d S )Nz\pgfsetbuttcapz\pgfsetroundcapz\pgfsetrectcap)ÚbuttÚroundÚ
projectingz\pgfsetmiterjoinz\pgfsetroundjoinz\pgfsetbeveljoin)ÚmiterrF  Úbevelr"  r=   z(\definecolor{currentfill}{rgb}{%f,%f,%f}z\pgfsetfillcolor{currentfill}ú\pgfsetfillopacity{%f}r!  z*\definecolor{currentstroke}{rgb}{%f,%f,%f}z!\pgfsetstrokecolor{currentstroke}r#  z\pgfsetdash{}{0pt}z\pgfsetdash{%s}{%fpt}r   c              3   ó    K  — | ]	}d |z  V — Œ
dS )z{%fpt}Nrk   )rK   Údashs     r*   rM   z5RendererPgf._print_pgf_path_styles.<locals>.<genexpr>7  s'   è è € ÐGÐG°T 	¨DÑ 0ÐGÐGÐGÐGÐGÐGr,   )rF   rD   Úget_capstyleÚget_joinstyleÚget_forced_alphaÚ	get_alphaÚget_rgbr¹   Útupler  r&  r'  Ú
get_dashesr8   )r“   r  r  Ú	capstylesÚ
joinstylesÚhas_fillÚfillopacityÚstrokeopacityr1  Ústroke_rgbaÚdash_offsetÚ	dash_lists               r*   r	  z"RendererPgf._print_pgf_path_styles  s|  € à.Ø0Ø#4ð6ð 6ˆ	õ 	�”˜) B§O¢OÑ$5Ô$5Ô6Ñ7Ô7Ð7ð  3Ø2Ø2ð4ð 4ˆ
õ 	�”˜* R×%5Ò%5Ñ%7Ô%7Ô8Ñ9Ô9Ð9ð  $Ð&ˆà×ÒÑ Ô ð 	OØ*,¯,ª,©.¬.Ð8ˆK˜-˜-àŸJšJ™LœL¨œOˆMØ(0ÐNµS¸±\´\ÀAÒ5EÐ5E˜' !œ*˜*È3ˆKàð 	@Ý�T”WØ@Ý˜W R a Rœ[Ñ)Ô)ñ*ñ+ô +ð +õ �T”WÐ>Ñ?Ô?Ð?Øð 	G˜ sÒ*Ð*Ý�T”WÐ7¸+ÑEÑFÔFÐFð ×ÒÑÔ¥,Ñ.µÑ?ˆØ—j’j‘l”lˆÝ�”Ð3°bÑ8Ñ9Ô9Ð9Ý�”Ø>Ø˜r ˜r”?ñ#ñ	$ô 	$ð 	$õ 	�”Ð>Ñ?Ô?Ð?Ø˜CÒÐÝ�T”WÐ9¸MÑIÑJÔJÐJð "$§¢¡¤Ñˆ�YØÐÝ�T”WÐ3Ñ4Ô4Ð4Ð4Ð4å�T”WØ-ØŸšÐGÐG¸YÐGÑGÔGÑGÔGØ#ð%ñ%ñ&ô &ð &ð &ð &r,   c                 ó®  — d| j         z  }|r|                     ¦   «         nd }d| j         z  }|rr|€p|                     ¦   «         \  }}	t          |d         | ¦  «        t          |d         | ¦  «        t	          |	d         |¦  «        t	          |	d         |¦  «        f}
n| | ||f}
|                     ||
¬¦  «        D �]Z\  }}|t          j        k    r3t          |¦  «        \  }}t          | j
        d||z  ||z  fz  ¦  «         ŒI|t          j        k    rt          | j
        d¦  «         Œo|t          j        k    r3t          |¦  «        \  }}t          | j
        d||z  ||z  fz  ¦  «         Œ²|t          j        k    r@t          |¦  «        \  }}}}||z  ||z  ||z  ||z  f}t          | j
        d	|z  ¦  «         �Œ|t          j        k    rHt          |¦  «        \  }}}}}}||z  ||z  ||z  ||z  ||z  ||z  f}t          | j
        d
|z  ¦  «         �Œ\|r|                     ¦   «         nd }|��|\  }}}|�—|dz  }|dz  }t          | j
        d¦  «         t          | j
        d¦  «         t          | j
        d||z  d›d||z  d›d�¦  «         t          | j
        dt!          |¦  «        › d�¦  «         t          | j
        d¦  «         d S d S d S )Nr=   r  r   r¬   )r  z&\pgfpathmoveto{\pgfqpoint{%fin}{%fin}}z\pgfpathclosez&\pgfpathlineto{\pgfqpoint{%fin}{%fin}}zH\pgfpathquadraticcurveto{\pgfqpoint{%fin}{%fin}}{\pgfqpoint{%fin}{%fin}}zW\pgfpathcurveto{\pgfqpoint{%fin}{%fin}}{\pgfqpoint{%fin}{%fin}}{\pgfqpoint{%fin}{%fin}}g      à?é   z\usepgfmodule{decorations}z(\usepgflibrary{decorations.pathmorphing}z/\pgfkeys{/pgf/decoration/.cd, segment length = r  zin, amplitude = zin}z\pgfmathsetseed{r0   z%\pgfdecoratecurrentpath{random steps})rƒ   r=  r  ÚmaxÚminr  r   ÚMOVETOrR  rF   rD   Ú	CLOSEPOLYÚLINETOÚCURVE3ÚCURVE4Úget_sketch_paramsÚint)r“   r  r)   r0  r  r  r?  r  r@  rA  r  Úpointsr  r  r  ÚcxÚcyÚpxÚpyr  Úc1xÚc1yÚc2xÚc2yÚsketch_paramsr+  ÚlengthÚ
randomnesss                               r*   r  zRendererPgf._print_pgf_path:  s„  € Ø�”‰Mˆà*,Ð6ˆr×$Ò$Ñ&Ô&Ð&°$ˆØ  4¤8Ñ+ˆØð 	>�W�_Ø—_’_Ñ&Ô&‰FˆB�Ý˜˜1œ ˜yÑ)Ô)­3¨r°!¬u°x°iÑ+@Ô+@Ý˜˜1œ˜xÑ(Ô(­#¨b°¬e°XÑ*>Ô*>ð@ˆDˆDð �I ˜y¨(°HÐ=ˆDà ×.Ò.¨y¸tÐ.ÑDÔDð 	#ñ 	#‰LˆF�DØ•t”{Ò"Ð"Ý˜V‘}”}‘��1Ý˜œØBØ˜a™%  Q¡˜ñ(ñ)ô )ð )ð )ð �œÒ'Ð'Ý˜œÐ"2Ñ3Ô3Ð3Ð3Ø�œÒ$Ð$Ý˜V‘}”}‘��1Ý˜œØBØ˜a™%  Q¡˜ñ(ñ)ô )ð )ð )ð �œÒ$Ð$Ý!& v¡¤‘��B˜˜BØ˜a™  a¡¨¨a©°°a±Ð7�Ý˜œðMà!ñ"ñ#ô #ð #ñ #ð �œÒ$Ð$Ý-2°6©]¬]Ñ*��S˜#˜s B¨Ø˜q™ #¨¡'¨3°©7°C¸!±G¸RÀ!¹VÀRÈ!ÁVÐK�Ý˜œð5ð "ñ	"ñ#ô #ð #ùð 35Ð>˜×,Ò,Ñ.Ô.Ð.¸$ˆØÐ$ð )6Ñ%ˆE�6˜:ØÐ à˜#‘�Ø˜‘
�å˜œÐ"?Ñ@Ô@Ð@Ý˜œÐ"MÑNÔNÐNÝ˜œð #<Ø.4°q©jÐAð#<ð #<à).°©Ð;ð#<ð #<ð #<ñ =ô =ð =õ ˜œÐ"Jµs¸:±´Ð"JÐ"JÐ"JÑKÔKÐKÝ˜œÐ"JÑKÔKÐKÐKÐKð) %Ð$ð !Ð r,   TFc                 ó¼   — g }|r|                      d¦  «         |r|                      d¦  «         t          | j        dd                     |¦  «        z  ¦  «         d S )Nr  r  z\pgfusepath{%s}rá   )rX   rF   rD   r8   )r“   r  r  Úactionss       r*   r  zRendererPgf._pgf_path_draw|  se   € ØˆØð 	%Ø�NŠN˜8Ñ$Ô$Ð$Øð 	#Ø�NŠN˜6Ñ"Ô"Ð"Ý�”Ð,¨s¯xªx¸Ñ/@Ô/@Ñ@ÑAÔAÐAÐAÐAr,   c                 ó   — dS )NTrk   r¾   s    r*   Úoption_scale_imagezRendererPgf.option_scale_image„  s   € àˆtr,   c                 ó(   — t           j        d          S )Nzimage.composite_image)r5   r6   r¾   s    r*   Úoption_image_nocompositez$RendererPgf.option_image_nocompositeˆ  s   € å”<Ð 7Ô8Ð8Ð8r,   c                 ó
  — |j         d d…         \  }}|dk    s|dk    rd S t          j                             t	          | j        dd¦  «        ¦  «        st          d¦  «        ‚t          j        | j        j	        ¦  «        }d|j
        | j        fz  }	t          j        |d d d…         ¦  «                             |j        |	z  ¦  «         | xj        dz  c_        t!          | j        d	¦  «         |                      |¦  «         d
| j        z  }
|€+t!          | j        d||
z  ||
z  fz  ¦  «         ||
z  ||
z  }}ng|                     ¦   «                              ¦   «         \  }}}}}}t!          | j        d||
z  ||
z  ||
z  ||
z  ||z   |
z  ||z   |
z  fz  ¦  «         dx}}t+          |d u ¦  «                             ¦   «         }t!          | j        dt/          ¦   «         ||||	fz  ¦  «         t!          | j        d¦  «         d S )Nr]  r   r!   r   zXstreamed pgf-code does not support raster graphics, consider using the pgf-to-pdf optionz%s-img%d.pngéÿÿÿÿr¬   rþ   r=   r  z/\pgfsys@transformcm{%f}{%f}{%f}{%f}{%fin}{%fin}zD\pgftext[left,bottom]{%s[interpolate=%s,width=%fin,height=%fin]{%s}}r  )Úshaper~   r)   ÚexistsÚgetattrrD   rt   r    r   r!   Ústemrü   r   Ú	fromarrayÚsaver"   rF   r  rƒ   ÚfrozenÚ	to_valuesrs   Úlowerr÷   )r“   r  r  r  Úimr0  rî   rí   r)   Ú	fname_imgr  Útr1Útr2Útr3Útr4Útr5Útr6Úinterps                     r*   Ú
draw_imagezRendererPgf.draw_imageŒ  sE  € ð Œx˜˜˜Œ|‰ˆˆ1Ø�Š6ˆ6�Q˜!’V�VØˆFåŒw�~Š~�g d¤g¨v°rÑ:Ô:Ñ;Ô;ð 	/Ýð.ñ/ô /ð /õ
 Œ|˜DœGœLÑ)Ô)ˆØ" d¤i°Ô1CÐ%DÑDˆ	ÝŒ˜˜4˜4˜R˜4œÑ!Ô!×&Ò& t¤{°YÑ'>Ñ?Ô?Ð?ØÐÔ˜aÑÐÔõ 	�”Ð-Ñ.Ô.Ð.Ø×Ò˜RÑ Ô Ð Ø�”‰MˆØÐÝ�T”WØ:¸aÀ!¹eÀQÈÁU¸^ÑKñMô Mð Mà�q‘5˜!˜a™%ˆqˆAˆAà+4×+;Ò+;Ñ+=Ô+=×+GÒ+GÑ+IÔ+IÑ(ˆC��c˜3  SÝ�T”WØGØ˜A‘g˜s Q™w¨¨a©°°q±Ø˜Q‘w !‘m c¨A¡g°¡]ð4ñ4ñ5ô 5ð 5ð ˆIˆA�Ý�Y $Ð&Ñ'Ô'×-Ò-Ñ/Ô/ˆÝ�”ðDå.Ñ0Ô0Ø˜!˜Q 	ð+ñ+ñ	,ô 	,ð 	,õ
 	�”Ð+Ñ,Ô,Ð,Ð,Ð,r,   )Úmtextc          
      ó@   — |                       ||||||d|¬¦  «         d S )NÚTeX)ÚismathrŽ  )Ú	draw_text)r“   r  r  r  r`   ra   ÚanglerŽ  s           r*   Údraw_texzRendererPgf.draw_texµ  s*   € à�Š�r˜1˜a  D¨%¸ÀUˆÑKÔKÐKÐKÐKr,   c	                 óÐ  — t          ||¦  «        }t          | j        d¦  «         |                      |¦  «         |                     ¦   «         }	|	dk    r0t          | j        d|	z  ¦  «         t          | j        d|	z  ¦  «         t          |                     ¦   «         ¦  «        d d…         }
t          | j        d|
z  ¦  «         t          | j        d¦  «         t          | j        d¦  «         d	|z   }| j        j        }g }|rÛ|d
k    s| 	                    ¦   «         dk    r½| 
                    ¦   «         dk    r¥|                     ¦   «         }|                     ¦   «                              |¦  «        \  }}ddddœ}dddddœ}|                     d||z  d›d�d||z  d›d�||                     ¦   «                  || 
                    ¦   «                  g¦  «         n$|                     d||z  d›d||z  d›d�¦  «         |d
k    r|                     d|z  ¦  «         t          | j        dd                     |¦  «        ›d|›d�¦  «         t          | j        d ¦  «         d S )!Nrþ   r=   rJ  r#  r"  z&\definecolor{textcolor}{rgb}{%f,%f,%f}z\pgfsetstrokecolor{textcolor}z\pgfsetfillcolor{textcolor}z\color{textcolor}r   ÚanchorÚcenter_baselineÚleftÚrightr   )r˜  r™  ÚcenterÚtopÚbottomÚbase)r›  rœ  Úbaselinerš  zx=r  Úinzy=zin, y=zin, left, basez	rotate=%fz	\pgftext[rá   z]{r0   r  )rf   rF   rD   r  rP  rR  rQ  rû   rƒ   Úget_rotation_modeÚget_verticalalignmentÚget_unitless_positionÚget_transformr0  ÚextendÚget_horizontalalignmentrX   r8   )r“   r  r  r  r`   ra   r“  r‘  rŽ  ÚalphaÚrgbrƒ   Ú	text_argsÚposÚhalignÚvaligns                   r*   r’  zRendererPgf.draw_text¹  s¦  € õ $ A tÑ,Ô,ˆå�”Ð-Ñ.Ô.Ð.Ø×Ò˜RÑ Ô Ð à—’‘”ˆØ�CŠ<ˆ<Ý�T”WÐ7¸%Ñ?Ñ@Ô@Ð@Ý�T”WÐ9¸EÑAÑBÔBÐBÝ�B—J’J‘L”LÑ!Ô! " 1 "Ô%ˆÝ�”ÐCÀcÑIÑJÔJÐJÝ�”Ð:Ñ;Ô;Ð;Ý�”Ð8Ñ9Ô9Ð9Ø  1Ñ$ˆàŒkŒoˆØˆ	Øð 	JØ˜!’�Ø×(Ò(Ñ*Ô*¨hÒ6Ð6Ø×+Ò+Ñ-Ô-Ð1BÒBÐBð ×-Ò-Ñ/Ô/ˆCØ×&Ò&Ñ(Ô(×2Ò2°3Ñ7Ô7‰DˆAˆqØ$¨wÀ"ÐEÐEˆFØ"¨hØ"(°Bð8ð 8ˆFà×ÒØ �Q�s‘UÐ Ð Ð Ð Ø �Q�s‘UÐ Ð Ð Ð Ø�u×4Ò4Ñ6Ô6Ô7Ø�u×2Ò2Ñ4Ô4Ô5ð	ñ ô ð ð ð ×ÒÐH ! C¡%ÐHÐHÐH°°3±ÐHÐHÐHÐHÑIÔIÐIà�AŠ:ˆ:Ø×Ò˜[¨5Ñ0Ñ1Ô1Ð1å�”�°·²¸)Ñ1DÔ1DÐ1DÐ1DÀaÀaÀaÐHÑIÔIÐIÝ�”Ð+Ñ,Ô,Ð,Ð,Ð,r,   c                 óž   — t                                ¦   «                              ||¦  «        \  }}}t          | j        z  }||z  ||z  ||z  fS rJ   )r¡   r«   rÞ   r&  rƒ   )r“   r`   ra   r‘  rí   rî   r   r  s           r*   Úget_text_width_height_descentz)RendererPgf.get_text_width_height_descenté  sU   € õ  ×2Ò2Ñ4Ô4ß,Ò,¨Q°Ñ5Ô5ñ 	ˆˆ1ˆaõ
 ˜4œ8Ñ#ˆØ�1‰u�a˜!‘e˜Q ™UÐ"Ð"r,   c                 ó   — dS )NFrk   r¾   s    r*   ÚflipyzRendererPgf.flipyô  s   € àˆur,   c                 ó†   — | j                              ¦   «         | j        z  | j                              ¦   «         | j        z  fS rJ   )rû   Úget_figwidthrƒ   Úget_figheightr¾   s    r*   Úget_canvas_width_heightz#RendererPgf.get_canvas_width_heightø  s<   € à”×(Ò(Ñ*Ô*¨T¬XÑ5Ø”×)Ò)Ñ+Ô+¨d¬hÑ6ð8ð 	8r,   c                 ó&   — |t           z  | j        z  S rJ   )r&  rƒ   )r“   rg  s     r*   Úpoints_to_pixelszRendererPgf.points_to_pixelsý  s   € à�Ñ$ t¤xÑ/Ð/r,   rJ   )TF)FN)r›   rœ   r�   r‘   r  r;  r  r	  r  r  rv  rx  r�  r”  r’  r­  r¯  r³  rµ  rž   rŸ   s   @r*   rù   rù   x  sb  ø€ € € € € ðð ð ð ð ð( "ð$-ð $-ð $-ð $-ðL>1ð >1ð >1ð >1ð@4ð 4ð 4ð(1&ð 1&ð 1&ðf@Lð @Lð @Lð @LðDBð Bð Bð Bðð ð ð9ð 9ð 9ð'-ð '-ð '-ð '-ðR ;?ð Lð Lð Lð Lð Lð.-ð .-ð .-ð .-ð`	#ð 	#ð 	#ðð ð ð8ð 8ð 8ð
0ð 0ð 0ð 0ð 0ð 0ð 0r,   rù   c                   óZ   ‡ — e Zd ZddddœZd„ Zddœd„Zd	„ Zdd
œd„Zd„ Zd„ Z	ˆ fd„Z
ˆ xZS )ÚFigureCanvasPgfzLaTeX PGF picturezLaTeX compiled PGF picturezPortable Network Graphics)ÚpgfÚpdfÚpngc                 ó   — dS )Nr¹  rk   r¾   s    r*   Úget_default_filetypez$FigureCanvasPgf.get_default_filetype  s   € Øˆur,   N©Úbbox_inches_restorec          
      ól  — d}dg}t          ¦   «                              ¦   «         D ]}|                     d|z   ¦  «         Œ|                     d¦  «         d                     |¦  «        }| j                             ¦   «         | j                             ¦   «         }}| j        j        }|                     |¦  «         |                     |¦  «         |                     d¦  «         t          |d¦  «         t          |d¦  «         t          |d¦  «         t          |d	||fz  ¦  «         t          |d
¦  «         t          | j        |||t          | j        |¦  «        |¬¦  «        }	| j                             |	¦  «         t          |d¦  «         t          |d¦  «         t          |d¦  «         d S )NaÉ  %% Creator: Matplotlib, PGF backend
%%
%% To include the figure in your LaTeX document, write
%%   \input{<filename>.pgf}
%%
%% Make sure the required packages are loaded in your preamble
%%   \usepackage{pgf}
%%
%% Also ensure that all the required font packages are loaded; for instance,
%% the lmodern package is sometimes necessary when using math font.
%%   \usepackage{lmodern}
%%
%% Figures using additional raster images can only be included by \input if
%% they are in the same directory as the main LaTeX file. For loading figures
%% from other directories you can use the `import` package
%%   \usepackage{import}
%%
%% and then include the figures with
%%   \import{<path to file>}{<filename>.pgf}
%%
z)%% Matplotlib used the following preamblez%%   z%%r.   z\begingroupz\makeatletterz\begin{pgfpicture}z:\pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{%fin}{%fin}}z&\pgfusepath{use as bounding box, clip}r½  z\end{pgfpicture}z\makeatotherz	\endgroup)r<   rä   rX   r8   rû   r±  r²  rƒ   rC   rF   r   rù   Údraw)
r“   rD   r¾  Úheader_textÚheader_info_preamblerE   rí   rî   rƒ   Úrenderers
             r*   Ú_print_pgf_to_fhz FigureCanvasPgf._print_pgf_to_fh
  sÈ  € ðˆð. !LÐLÐÝ!‘O”O×.Ò.Ñ0Ô0ð 	8ð 	8ˆDØ ×'Ò'¨°$©Ñ7Ô7Ð7Ð7Ø×#Ò# DÑ)Ô)Ð)Ø#ŸyšyÐ)=Ñ>Ô>Ðð Œ{×'Ò'Ñ)Ô)¨4¬;×+DÒ+DÑ+FÔ+Fˆ1ˆØŒkŒoˆð 	�Š�ÑÔÐØ
�ŠÐ%Ñ&Ô&Ð&Ø
�Š�‰ŒˆÝ��^Ñ$Ô$Ð$Ý�Ð%Ñ&Ô&Ð&Ý�Ð*Ñ+Ô+Ð+Ý�ØNØ�q�6ññ	ô 	ð 	õ 	�Ð>Ñ?Ô?Ð?Ý$ T¤[°!°Q¸Ý%0°´¸bÑ%AÔ%AØ9LðNñ Nô Nˆð 	Œ×Ò˜Ñ"Ô"Ð"õ 	�Ð(Ñ)Ô)Ð)Ý��_Ñ%Ô%Ð%Ý��\Ñ"Ô"Ð"Ð"Ð"r,   c                 óä   — t          j        |dd¬¦  «        5 }t          j        |¦  «        s t          j        d¦  «        |¦  «        } | j        |fi |¤Ž ddd¦  «         dS # 1 swxY w Y   dS )zy
        Output pgf macros for drawing the figure so it can be included and
        rendered in latex documents.
        rí   rÑ   ©rÒ   N)r   Úopen_file_cmÚfile_requires_unicodeÚcodecsÚ	getwriterrÄ  )r“   Úfname_or_fhÚkwargsÚfiles       r*   Ú	print_pgfzFigureCanvasPgf.print_pgfB  sÅ   € õ
 Ô ¨S¸7ÐCÑCÔCð 	2ÀtÝÔ.¨tÑ4Ô4ð 7Ø0•vÔ'¨Ñ0Ô0°Ñ6Ô6�Ø!ˆDÔ! $Ð1Ð1¨&Ð1Ð1Ð1ð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2ð 	2ð 	2s   ˜A A%Á%A)Á,A)©Úmetadatac                óD  — | j                              ¦   «         \  }}t          d|pi ¦  «        }d                     d„ |                     ¦   «         D ¦   «         ¦  «        }t          ¦   «         5 }t          j        |¦  «        }	 | j        |	dz  fi |¤Ž |	dz   	                    d                     t          d|z  d||fz  d	t          ¦   «         d
dddg	¦  «        d¬¦  «         t          j        d         }
t          j        |
ddddgt           |¬¦  «         |	dz                       d¦  «        5 }t          j        |d¦  «        5 }t'          j        ||¦  «         ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   ddd¦  «         dS # 1 swxY w Y   dS )z3Use LaTeX to compile a pgf generated figure to pdf.r¸  rá   c              3   ó<   K  — | ]\  }}t          ||¦  «        V — Œd S rJ   ©rv   ©rK   ÚkÚvs      r*   rM   z,FigureCanvasPgf.print_pdf.<locals>.<genexpr>Q  sJ   è è € ð Bð BÙ'+ q¨!Õ˜Q Ñ"Ô"ðBð Bð Bð Bð Bð Br,   z
figure.pgfz
figure.texr.   ú#\usepackage[pdfinfo={%s}]{hyperref}ú8\usepackage[papersize={%fin,%fin}, margin=0in]{geometry}ú\usepackage{pgf}r¤   z
\centeringz\input{figure.pgf}z\end{document}rÑ   rÆ  r£   ú-interaction=nonstopmoderÏ   rÐ   ©rÓ   ú
figure.pdfÚrbÚwbN)rû   Úget_size_inchesr   r8   Úitemsr   r    r   rÎ  Ú
write_textr¥   r<   r5   r6   r   Ú_check_and_log_subprocessr\   ÚopenrÇ  ÚshutilÚcopyfileobj)r“   rË  rÐ  rÌ  rí   rî   Ú	info_dictÚpdfinforÄ   ÚtmppathÚ
texcommandÚorigÚdests                r*   Ú	print_pdfzFigureCanvasPgf.print_pdfL  s   € àŒ{×*Ò*Ñ,Ô,‰ˆˆ1å)¨%°°¸RÑ@Ô@ˆ	Ø—(’(ð Bð BØ/8¯ªÑ/@Ô/@ðBñ Bô Bñ Bô Bˆõ  Ñ!Ô!ð 	/ VÝ”l 6Ñ*Ô*ˆGØˆDŒN˜7 \Ñ1Ð<Ð<°VÐ<Ð<Ð<Ø�|Ñ#×/Ò/Ø—	’	Ý"Ø:¸WÑDØOØ˜!�fñà'Ý!‘O”OØ'Ø!Ø)Ø%ðñ ô ð %ð 0ñ &ô &ð &õ œ oÔ6ˆJÝÔ+ØÐ7Ð9IØ# \ð3Ý48¸fðFñ Fô Fð Fð ˜\Ñ)×/Ò/°Ñ5Ô5ð /¸ÝÔ$ [°$Ñ7Ô7ð/Ø;?ÝÔ" 4¨Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð /ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð)	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/s[   Á.C FÄ.E=ÅE&ÅE=Å&E*Å*E=Å-E*Å.E=Å1FÅ=F	ÆFÆF	ÆFÆFÆFc                 óÖ  — t          ¦   «         }t          ¦   «         5 }t          j        |¦  «        }|dz  }|dz  } | j        |fi |¤Ž  |||| j        j        ¬¦  «         |                     d¦  «        5 }t          j	        |d¦  «        5 }	t          j        ||	¦  «         ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   ddd¦  «         dS # 1 swxY w Y   dS )z?Use LaTeX to compile a pgf figure to pdf and convert it to png.rÜ  z
figure.png)rƒ   rÝ  rÞ  N)rŒ   r   r    r   rì  rû   rƒ   rã  r   rÇ  rä  rå  )
r“   rË  rÌ  Ú	converterrÄ   rè  Úpdf_pathÚpng_pathrê  rë  s
             r*   Ú	print_pngzFigureCanvasPgf.print_pngm  s¯  € å-Ñ/Ô/ˆ	ÝÑ!Ô!ð 	/ VÝ”l 6Ñ*Ô*ˆGØ Ñ-ˆHØ Ñ-ˆHØˆDŒN˜8Ð.Ð. vÐ.Ð.Ð.ØˆI�h ¨d¬k¬oÐ>Ñ>Ô>Ð>Ø—-’- Ñ%Ô%ð /¨ÝÔ$ [°$Ñ7Ô7ð/Ø;?ÝÔ" 4¨Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð /ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/sZ   �ACÁ7CÂB/Â#CÂ/B3Â3CÂ6B3Â7CÂ:CÃC
	Ã
CÃC
	ÃCÃC"Ã%C"c                 ó,   — t          | j        d ¦  «        S rJ   )rù   rû   r¾   s    r*   Úget_rendererzFigureCanvasPgf.get_rendererz  s   € Ý˜4œ;¨Ñ-Ô-Ð-r,   c                 óv   •— | j                              ¦   «          t          ¦   «                              ¦   «         S rJ   )rû   Údraw_without_renderingr�   rÀ  )r“   r•   s    €r*   rÀ  zFigureCanvasPgf.draw}  s)   ø€ ØŒ×*Ò*Ñ,Ô,Ð,Ý‰wŒw�|Š|‰~Œ~Ðr,   )r›   rœ   r�   Ú	filetypesr¼  rÄ  rÎ  rì  rñ  ró  rÀ  rž   rŸ   s   @r*   r·  r·    sÇ   ø€ € € € € Ø+Ø4Ø3ð7ð 7€Iðð ð ð ;?ð 6#ð 6#ð 6#ð 6#ð 6#ðp2ð 2ð 2ð 26ð /ð /ð /ð /ð /ðB/ð /ð /ð.ð .ð .ðð ð ð ð ð ð ð ð r,   r·  c                   ó   — e Zd ZeZdS )Ú_BackendPgfN)r›   rœ   r�   r·  ÚFigureCanvasrk   r,   r*   rø  rø  …  s   € € € € € à"€L€L€Lr,   rø  c                   óJ   — e Zd ZdZddœd„Zd„ Zd„ Zd„ Zd„ Zd	„ Z	dd
„Z
d„ ZdS )ÚPdfPagesa�  
    A multi-page PDF file using the pgf backend

    Examples
    --------
    >>> import matplotlib.pyplot as plt
    >>> # Initialize:
    >>> with PdfPages('foo.pdf') as pdf:
    ...     # As many times as you like, create a figure fig and save it:
    ...     fig = plt.figure()
    ...     pdf.savefig(fig)
    ...     # When no figure is specified the current figure is saved
    ...     pdf.savefig()
    NrÏ  c                ó²   — || _         d| _        |pi                      ¦   «         | _        t	          d| j        ¦  «        | _        t          ¦   «         | _        dS )a©  
        Create a new PdfPages object.

        Parameters
        ----------
        filename : str or path-like
            Plots using `PdfPages.savefig` will be written to a file at this
            location. Any older file with the same name is overwritten.

        metadata : dict, optional
            Information dictionary object (see PDF reference section 10.2.1
            'Document Information Dictionary'), e.g.:
            ``{'Creator': 'My software', 'Author': 'Me', 'Title': 'Awesome'}``.

            The standard keys are 'Title', 'Author', 'Subject', 'Keywords',
            'Creator', 'Producer', 'CreationDate', 'ModDate', and
            'Trapped'. Values have been predefined for 'Creator', 'Producer'
            and 'CreationDate'. They can be removed by setting them to `None`.

            Note that some versions of LaTeX engines may ignore the 'Producer'
            key and set it to themselves.
        r   r¸  N)Ú_output_nameÚ
_n_figuresÚcopyÚ	_metadatar   Ú
_info_dictr   Ú_file)r“   ÚfilenamerÐ  s      r*   r‘   zPdfPages.__init__š  sL   € ð. %ˆÔØˆŒØ"˜. b×.Ò.Ñ0Ô0ˆŒÝ/°°t´~ÑFÔFˆŒÝ‘Y”YˆŒ
ˆ
ˆ
r,   c           	      ó6  — d                      d„ | j                             ¦   «         D ¦   «         ¦  «        }d                      t          d|z  d||fz  dt	          ¦   «         ddg¦  «        }| j                             |                     d	¦  «        ¦  «         d S )
Nrá   c              3   ó<   K  — | ]\  }}t          ||¦  «        V — Œd S rJ   rÓ  rÔ  s      r*   rM   z)PdfPages._write_header.<locals>.<genexpr>¸  sJ   è è € ð Hð HÙ'+ q¨!Õ˜Q Ñ"Ô"ðHð Hð Hð Hð Hð Hr,   r.   r×  rØ  rÙ  z\setlength{\parindent}{0pt}z\begin{document}%rÑ   )r8   r  rà  r¥   r<   r  rC   Úencode)r“   Úwidth_inchesÚheight_inchesrç  r¦   s        r*   Ú_write_headerzPdfPages._write_header·  sµ   € Ø—(’(ð Hð HØ/3¬×/DÒ/DÑ/FÔ/FðHñ Hô Hñ Hô Hˆà—y’yÝØ2°WÑ<ØGØ˜]Ð+ñ,àÝ‰OŒOØ*Ø ð	"
ñ 	ô 	ˆð 	Œ
×Ò˜×,Ò,¨WÑ5Ô5Ñ6Ô6Ð6Ð6Ð6r,   c                 ó   — | S rJ   rk   r¾   s    r*   Ú	__enter__zPdfPages.__enter__Æ  s   € Øˆr,   c                 ó.   — |                       ¦   «          d S rJ   )Úclose)r“   Úexc_typeÚexc_valÚexc_tbs       r*   Ú__exit__zPdfPages.__exit__É  s   € Ø�
Š
‰Œˆˆˆr,   c                 óª   — | j                              d¦  «         | j        dk    r|                      ¦   «          | j                              ¦   «          dS )zƒ
        Finalize this object, running LaTeX in a temporary directory
        and moving the final pdf file to *filename*.
        s   \end{document}\nr   N)r  rC   rþ  Ú
_run_latexr  r¾   s    r*   r  zPdfPages.closeÌ  sR   € ð
 	Œ
×ÒÐ-Ñ.Ô.Ð.ØŒ?˜QÒÐØ�OŠOÑÔÐØŒ
×ÒÑÔÐÐÐr,   c                 ó–  — t           j        d         }t          ¦   «         5 }t          j        |d¦  «        }|                     | j                             ¦   «         ¦  «         t          j	        |ddd|gt          |¬¦  «         t          j        |                     d¦  «        | j        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr£   zpdf_pages.texrÚ  rÏ   rÐ   rÛ  z.pdf)r5   r6   r   r    r   Úwrite_bytesr  Úgetvaluer   râ  r\   rä  ÚmoveÚwith_suffixrý  )r“   ré  rÄ   Ú
tex_sources       r*   r  zPdfPages._run_latexÖ  s  € Ý”\ /Ô2ˆ
ÝÑ!Ô!ð 	K VÝ œ f¨oÑ>Ô>ˆJØ×"Ò" 4¤:×#6Ò#6Ñ#8Ô#8Ñ9Ô9Ð9ÝÔ+ØÐ7Ð9IØ# Zð1å˜&ð"ñ "ô "ð "õ ŒK˜
×.Ò.¨vÑ6Ô6¸Ô8IÑJÔJÐJð	Kð 	Kð 	Kñ 	Kô 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Køøøð 	Kð 	Kð 	Kð 	Kð 	Kð 	Ks   ¡BB>Â>CÃCc                 óÀ  — t          |t          ¦  «        sJ|€t          j        ¦   «         }nt          j        |¦  «        }|€t          d|› �¦  «        ‚|j        j        }|                     ¦   «         \  }}| j	        dk    r|  
                    ||¦  «         n| j                             d||fz  ¦  «          |j        | j        fdddœ|¤Ž | xj	        dz  c_	        dS )a5  
        Save a `.Figure` to this file as a new page.

        Any other keyword arguments are passed to `~.Figure.savefig`.

        Parameters
        ----------
        figure : `.Figure` or int, default: the active figure
            The figure, or index of the figure, that is saved to the file.
        Nz
No figure r   s„   \newpage\ifdefined\pdfpagewidth\pdfpagewidth\else\pagewidth\fi=%fin\ifdefined\pdfpageheight\pdfpageheight\else\pageheight\fi=%fin%%
r¸  )rã   Úbackendr¬   )rp   r   r   Ú
get_activeÚget_fig_managerrt   Úcanvasrû   rß  rþ  r	  r  rC   Úsavefig)r“   rû   rÌ  Úmanagerrê   rë   s         r*   r  zPdfPages.savefigá  s  € õ ˜&¥&Ñ)Ô)ð 	+Øˆ~Ýœ.Ñ*Ô*��åÔ-¨fÑ5Ô5�ØˆÝ Ð!6¨fÐ!6Ð!6Ñ7Ô7Ð7Ø”^Ô*ˆFà×.Ò.Ñ0Ô0‰ˆˆvØŒ?˜aÒÐØ×Ò˜u fÑ-Ô-Ð-Ð-ð
 ŒJ×Òðð ! &˜/ñ*ñô ð ð 	ˆŒ�t”zÐI¨%¸ÐIÐIÀ&ÐIÐIÐIØˆŒ˜1ÑˆŒˆˆr,   c                 ó   — | j         S )z=Return the current number of pages in the multipage pdf file.)rþ  r¾   s    r*   Úget_pagecountzPdfPages.get_pagecount  s
   € àŒÐr,   rJ   )r›   rœ   r�   rð   r‘   r	  r  r  r  r  r  r"  rk   r,   r*   rû  rû  Š  s®   € € € € € ðð ð .2ð ð ð ð ð ð:7ð 7ð 7ðð ð ðð ð ðð ð ð	Kð 	Kð 	Kð"ð "ð "ð "ðHð ð ð ð r,   rû  )@rÉ  rq   rË   Úior   Úloggingr-  r~   r    rä  r|   Útempfiler   rÅ   ÚPILr   Ú
matplotlibr5   r   r   r   Úmatplotlib.backend_basesr   r	   r
   r   Ú!matplotlib.backends.backend_mixedr   Úmatplotlib.backends.backend_pdfr   r   Úmatplotlib.pathr   Úmatplotlib.figurer   Úmatplotlib.font_managerr   Úmatplotlib._pylab_helpersr   Ú	getLoggerr›   r\   r¥   r<   Úlatex_pt_to_inr'  r&  Úmpl_in_to_ptrA   rF   rf   rv   rŒ   ræ   rŽ   r¡   rÌ   r÷   rù   r·  ÚFigureManagerPgfÚexportrø  rû  rk   r,   r*   ú<module>r4     s  ðØ €€€Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø €€€Ø €€€Ø 	€	€	€	Ø €€€Ø €€€Ø Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø €€€à Ð Ð Ð Ð Ð à Ð Ð Ð Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0ðð ð ð ð ð ð ð ð ð ð ð ð @Ð ?Ð ?Ð ?Ð ?Ð ?ð-ð -ð -ð -ð -ð -ð -ð -à  Ð  Ð  Ð  Ð  Ð  Ø $Ð $Ð $Ð $Ð $Ð $Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø )Ð )Ð )Ð )Ð )Ð )à€wÔ˜Ñ"Ô"€ð ,€ð'ð 'ð 'ðX €Ø�nÑ$€Ø€Ø�LÑ €ð=ð =ð =ðð ð ð*ð *ð *ðZ ð  ð  ð(Að Að Að6	ð 	ð 	ð 	ð 	�ñ 	ô 	ð 	ðUð Uð Uð Uð Uñ Uô Uð Uðp €Ô�QÑÔðð ñ ÔððG0ð G0ð G0ð G0ð G0�,ñ G0ô G0ð G0ðT}ð }ð }ð }ð }Ð&ñ }ô }ð }ð@ %Ð ð 
„ð#ð #ð #ð #ð #�(ñ #ô #ñ „ð#ð}ð }ð }ð }ð }ñ }ô }ð }ð }ð }r,   