Ë
    µ2Úiœº  ã            
       óD  — d 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	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mZ ddlmZ ddlmZmZmZmZ dd	l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. ddl/m0Z0 ddl1m2Z2 ddl3m4Z4  e	jj                  e6«      Z7dZ8 ejr                  d«       G d„ d«      «       Z:ejv                   G d„ d«      «       Z<i dd“dd“dd“d d!“d"d#“d$d%“d&d'“d(d)“d*d+“d,d-“d.d/“d0d1“d2d3“d4d5“d6d7“d8d9“d:d;“d<d=d>d?d@dAdBdCdDœ¥Z=dE„ Z>dFdGœdH„Z?dI„ Z@dJ„ ZAdK„ ZBdL„ ZC G dM„ dNe4jˆ                  «      ZE G dO„ dPe«      ZF G dQ„ dRe«      ZGdS„ ZHdT„ ZId\dU„ZJd\dV„ZKd]dW„ZLd^dX„ZMeZNg dY¢ZOej                    G dZ„ d[e«      «       ZQy)_zG
A PostScript backend, which can produce both PostScript .ps and .eps.
é    N)ÚEnum)ÚStringIO)ÚTemporaryDirectory)Ú_apiÚcbookÚ_pathÚ_text_helpers)ÚAFM)Ú_BackendÚFigureCanvasBaseÚFigureManagerBaseÚRendererBase)Úis_writable_file_likeÚfile_requires_unicode)Úget_font)ÚLOAD_NO_SCALEÚFT2Font)Úconvert_ttf_to_ps)Ú	uni2type1)ÚPath)Ú
TexManager)ÚAffine2D)ÚMixedModeRendereré   )Ú_backend_pdf_psFú3.7c                   ó   — e Zd Zd„ Zy)ÚPsBackendHelperc                 ó   — i | _         y ©N)Ú_cached©Úselfs    úU/var/www/html/acx/venv/lib/python3.12/site-packages/matplotlib/backends/backend_ps.pyÚ__init__zPsBackendHelper.__init__+   s	   € Øˆ�ó    N)Ú__name__Ú
__module__Ú__qualname__r%   © r&   r$   r   r   )   s   „ ór&   r   c                   ó�   — e Zd Z  ej                  dd¬«       ed„ «      «      Z  ej                  dd¬«       ed„ «      «      Zy)Ú__getattr__r   Ú )Úobj_typec                 ó   — t        «       S r    )r   r"   s    r$   ú<lambda>z__getattr__.<lambda>3   s	   € œoÓ/€ r&   z3.8c                 ó   — t         S r    )Ú_psDefsr"   s    r$   r0   z__getattr__.<lambda>4   s   € Äw€ r&   N)r'   r(   r)   r   Ú
deprecatedÚpropertyÚps_backend_helperÚpsDefsr*   r&   r$   r,   r,   /   sF   „ ð <˜˜Ÿ™¨¸Ô;ÙÑ/Ó0ó2Ðà0ˆ_ˆT�_‰_˜U¨RÔ0±Ñ:NÓ1OÓP�Fr&   r,   Úletter)ç      !@é   Úlegal)r8   é   Úledger)r9   é   Úa0)ç®GázŽ@@gHáz®gG@Úa1)ç¤p=
×c7@r?   Úa2)ç
×£p=Š0@rA   Úa3)çáz®Ga'@rC   Úa4)ç
×£p=Š @rE   Úa5)çR¸…ëQ@rG   Úa6)ç…ëQ¸…@rI   Úa7)çHáz®G@rK   Úa8)çffffff @rM   Úa9)ç\�Âõ(\÷?rO   Úa10)gR¸…ëQð?rQ   Úb0)çfffffFD@g)\�Âõ¨L@Úb1)ç)\�Âõ¨<@rT   Úb2)ç…ëQ¸E4@rV   )ç)\�Âõ¨,@rX   )ç¸…ëQ8$@rY   )ç¤p=
×£@rZ   )ç)\�Âõ(@r[   )ç¤p=
×£@r\   )ç®Gáz@r]   )ç)\�Âõ(ü?r^   )g)\�Âõ(ô?r_   )Úb3Úb4Úb5Úb6Úb7Úb8Úb9Úb10c                 óš   — t        t        j                  «       d¬«      D ])  \  }\  }}|j                  d«      rŒ| |k  sŒ!||k  sŒ'|c S  y)NT)ÚreverseÚlr>   )ÚsortedÚ	papersizeÚitemsÚ
startswith)ÚwÚhÚkeyÚpwÚphs        r$   Ú_get_papertypert   R   sM   € Ü¤	§¡Ó 1¸4Ô@ò ‰ˆ‰Xˆb�"Ø�>‰>˜#ÔØØˆr‹6�a˜"“fØŠJð	ð
 r&   ú )Úsepc                 ó2   — | j                  d„ |D «       «      S )Nc              3   ó`   K  — | ]&  }|d ›j                  d«      j                  d«      –— Œ( y­w)ú1.3fÚ0ú.N)Úrstrip)Ú.0Úargs     r$   ú	<genexpr>z_nums_to_str.<locals>.<genexpr>\   s*   è ø€ ÒJ¸c�s˜4�j×(Ñ(¨Ó-×4Ñ4°S×9ÑJùs   ‚,.)Újoin)rv   Úargss     r$   Ú_nums_to_strr‚   [   s   € Ø�8‰8ÑJÀTÔJÓJÐJr&   c                 ó
  — t        |«      rFt        |«      rt        | d¬«      nt        | d«      }|5  t        j                  ||«       ddd«       yt        j
                  | |t        j                  ¬«       y# 1 sw Y   yxY w)zˆ
    Move the contents of file at *src* to path-or-filelike *dst*.

    If *dst* is a path, the metadata of *src* are *not* copied.
    úlatin-1©ÚencodingÚrbN)Úcopy_function)r   r   ÚopenÚshutilÚcopyfileobjÚmoveÚcopyfile)ÚsrcÚdstÚfhs      r$   Ú_move_path_to_path_or_streamr‘   _   ss   € ô ˜SÔ!ä& sÔ+ô �3 Õ+ä˜˜T“?ð 	ð ñ 	(Ü×Ñ˜r 3Ô'÷	(ð 	(ô 	�‰�C˜¬F¯O©OÖ<÷	(ð 	(ús   ²A9Á9Bc                 ó  ‡
— t        | d¬«      Š
|D �cg c]  }‰
j                  |«      ‘Œ }}dj                  ‰
j                  d‰
j                  z  dj                  t        t        ‰
j                  «      «      dj                  ˆ
fd„|D «       «      t        |«      dz   ¬«      }d}g }|D ]Ä  }‰
j                  |t        «      }‰
j                  «       \  }	}|j                  d‰
j                  |«      dj                  t        t        |j                  d	g|j                  ¢«      «      d
œz  t!        j"                  t%        |	dz  |«      ddddd	g d¢d«      j'                  d«      z   dz   «       ŒÆ |dj                  |«      z   |z   S c c}w )a‰  
    Subset *chars* from the font at *font_path* into a Type 3 font.

    Parameters
    ----------
    font_path : path-like
        Path to the font to be subsetted.
    chars : str
        The characters to include in the subsetted font.

    Returns
    -------
    str
        The string representation of a Type 3 font, which can be included
        verbatim into a PostScript file.
    r   )Úhinting_factoraM  %!PS-Adobe-3.0 Resource-Font
%%Creator: Converted from TrueType to Type 3 by Matplotlib.
10 dict begin
/FontName /{font_name} def
/PaintType 0 def
/FontMatrix [{inv_units_per_em} 0 0 {inv_units_per_em} 0 0] def
/FontBBox [{bbox}] def
/FontType 3 def
/Encoding [{encoding}] def
/CharStrings {num_glyphs} dict dup begin
/.notdef 0 def
ru   c              3   óF   •K  — | ]  }d ‰j                  |«      › �–— Œ y­w)ú/N)Úget_glyph_name)r}   Úglyph_idÚfonts     €r$   r   z$_font_to_ps_type3.<locals>.<genexpr>’   s,   øè ø€ ò 8Ø!)ð  ! ×!4Ñ!4°XÓ!>Ð ?Ô@ñ 8ùs   ƒ!)Ú	font_nameÚinv_units_per_emÚbboxr†   Ú
num_glyphszÿ
end readonly def

/BuildGlyph {
 exch begin
 CharStrings exch
 2 copy known not {pop /.notdef} if
 true 3 1 roll get exec
 end
} _d

/BuildChar {
 1 index /Encoding get exch get
 1 index /BuildGlyph get exec
} _d

FontName currentdict end definefont pop
z/%(name)s{%(bbox)s sc
r   )Únamer›   é@   NF)ó   mó   lr&   ó   cr&   TÚasciizce} _dú
)r   Úget_char_indexÚformatÚpostscript_nameÚunits_per_EMr€   ÚmapÚstrr›   ÚlenÚ
load_glyphr   Úget_pathÚappendr–   ÚhoriAdvancer   Úconvert_to_stringr   Údecode)Ú	font_pathÚcharsÚcÚ	glyph_idsÚpreambleÚ	postambleÚentriesr—   ÚgÚvr˜   s             @r$   Ú_font_to_ps_type3rº   o   s�  ø€ ô" �I¨aÔ0€DØ16Ö7¨A�×$Ñ$ QÕ'Ð7€IÐ7ð÷ �F�T×)Ñ)Ø × 1Ñ 1Ñ1Ø—‘œœS $§)¡)Ó,Ó-Ø—H‘Hó 8Ø-6ô8ó 8ä˜)“n qÑ(ð ó *ð ð$€Ið& €GØò 
ˆØ�O‰O˜H¤mÓ4ˆØ�}‰}‹‰ˆˆ1Ø�‰Ø%Ø×+Ñ+¨HÓ5ØŸ™¤¤S¨1¯=©=¸!Ð*E¸a¿f¹fÐ*EÓ!FÓGñ)ñ ô ×%Ñ%ô �Q˜‘V˜Q“  t¨U°D¸!ò
 -¨dó4÷ 5;±F¸7³OñDð ñõ	
ð
ð( �d—i‘i Ó(Ñ(¨9Ñ4Ð4ùòy 8s   “F	c                 ó  — dj                  d„ |D «       «      }t        j                  d| |«       	 t        j                  | |«      }t        j                  d| t        j                  | «      j                  |j                  «       j                  «       t        |«      }|D �cg c]  }|j                  |«      ‘Œ }}t        «       5 }t
        j                  j                  |d«      }	t        |	d«      5 }
|
j                  |j!                  «       «       ddd«       t#        t        j$                  |	«      |d|«       ddd«       yc c}w # 1 sw Y   Œ8xY w# 1 sw Y   yxY w# t&        $ r t        j)                  d	«       ‚ w xY w)
a2  
    Subset *chars* from the font at *font_path* into a Type 42 font at *fh*.

    Parameters
    ----------
    font_path : path-like
        Path to the font to be subsetted.
    chars : str
        The characters to include in the subsetted font.
    fh : file-like
        Where to write the font.
    r-   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr    )Úchr)r}   r³   s     r$   r   z%_font_to_ps_type42.<locals>.<genexpr>Í   s   è ø€ Ò/ Aœ˜QŸÑ/ùó   ‚zSUBSET %s characters: %szSUBSET %s %d -> %dztmp.ttfÚwbNé*   zDThe PostScript backend does not currently support the selected font.)r€   Ú_logÚdebugr   Úget_glyphs_subsetÚosÚstatÚst_sizeÚ	getbufferÚnbytesr   r¤   r   Úpathr‰   ÚwriteÚgetvaluer   ÚfsencodeÚRuntimeErrorÚwarning)r±   r²   r�   Ú
subset_strÚfontdatar˜   r³   r´   ÚtmpdirÚtmpfileÚtmps              r$   Ú_font_to_ps_type42rÔ   À   sS  € ð —‘Ñ/¨Ô/Ó/€JÜ‡J�JÐ)¨9°jÔAðÜ"×4Ñ4°YÀ
ÓKˆÜ�
‰
Ð'¨´B·G±G¸IÓ4F×4NÑ4NØ×%Ñ%Ó'×.Ñ.ô	0ô �xÓ ˆØ5:Ö;°�T×(Ñ(¨Õ+Ð;ˆ	Ð;ÜÓ!ð 	G VÜ—g‘g—l‘l 6¨9Ó5ˆGä�g˜tÓ$ð /¨Ø—	‘	˜(×+Ñ+Ó-Ô.÷/ô œbŸk™k¨'Ó2°B¸¸IÔF÷	Gð 	Gùò <÷/ð /ú÷	Gð 	Gûô ò Ü�‰ð)ô	*ð 	ð	úsT   ±A2E# Â#EÂ;E# Ã-EÃ4 EÄ)EÄ=E# ÅE# ÅE	ÅEÅE ÅE# Å E# Å# Fc                 óB   ‡ — t        j                  ‰ «      ˆ fd„«       }|S )z}
    Wrap `RendererPS` method *meth* to emit a PS comment with the method name,
    if the global flag `debugPS` is set.
    c                 óz   •— t         r)| j                  j                  d‰j                  › d�«        ‰| g|¢­i |¤ŽS )Nz% r£   )ÚdebugPSÚ	_pswriterrÊ   r'   )r#   r�   ÚkwargsÚmeths      €r$   Úwrapperz!_log_if_debug_on.<locals>.wrapperë   s:   ø€ åØ�N‰N× Ñ  2 d§m¡m _°BÐ!7Ô8Ù�DÐ*˜4Ò* 6Ñ*Ð*r&   )Ú	functoolsÚwraps)rÚ   rÛ   s   ` r$   Ú_log_if_debug_onrÞ   æ   s'   ø€ ô
 ‡_�_�TÓó+ó ð+ð
 €Nr&   c                   ój  ‡ — e Zd ZdZ ej
                  d«      ZdZd ˆ fd„	Zd„ Z	d!d„Z
d!d„Zed	„ «       Zd!d
„Zed„ «       Zd!d„Zd!d„Zd!d„Zd„ Zd„ Zd"d„Zd„ Zed#d„«       Zed#d„«       Ze	 d#d„«       Zed„ «       Zeddœd„«       Zed"d„«       Zed„ «       Zed„ «       Zed„ «       Z dddœd„Z!ˆ xZ"S )$Ú
RendererPSz€
    The renderer handles all the drawing primitives using a graphics
    context instance that controls the colors/styles.
    z	fonts/afmú	ps.useafmc                 ó¦  •— t         ‰| �  ||«       || _        t        j                  d   rd| _        g | _        || _        d | _        d | _	        d | _
        d | _        d | _        d | _        d | _        i | _        |dz  | _        i | _        d| _        t'        j(                  «       | _        t-        j.                  t0        j2                  «      | _        y )Nútext.usetexr   éH   )Úsuperr%   rØ   ÚmplÚrcParamsÚtextcntÚpsfragÚimagedpiÚcolorÚ	linewidthÚlinejoinÚlinecapÚlinedashÚfontnameÚfontsizeÚ_hatchesÚimage_magnificationÚ_clip_pathsÚ_path_collection_idr   ÚCharacterTrackerÚ_character_trackerrÜ   ÚcacherÁ   rÎ   Ú_logwarn_once)r#   ÚwidthÚheightÚpswriterrê   Ú	__class__s        €r$   r%   zRendererPS.__init__ý   s¸   ø€ ô 	‰Ñ˜ Ô'Ø!ˆŒÜ�<‰<˜Ò&ØˆDŒLØˆDŒKØ ˆŒð ˆŒ
ØˆŒØˆŒØˆŒØˆŒØˆŒØˆŒØˆŒØ#+¨b¡=ˆÔ ØˆÔØ#$ˆÔ ä"1×"BÑ"BÓ"DˆÔÜ&Ÿ_™_¬T¯\©\Ó:ˆÕr&   c                 ól   — |€yt        |«      dk(  r#|d   dk(  ry|d   dk7  r| j                  d«       yy)NTé   é   r   r   zlThe PostScript backend does not support transparency; partially transparent artists will be rendered opaque.F)rª   rù   )r#   Úrgb_or_rgbas     r$   Ú_is_transparentzRendererPS._is_transparent  sP   € ØÐØÜ�Ó Ò"Ø˜1‰~ Ò"ØØ˜1‰~ Ò"Ø×"Ñ"ðMôNð àr&   Tc                 óÎ   — |||f| j                   k7  rS| j                  j                  ||cxk(  r|k(  rn nt        |«      › d�nt        |||«      › d�«       |r|||f| _         y y y )Nz	 setgray
z setrgbcolor
)rë   rØ   rÊ   r‚   )r#   Úrr¸   ÚbÚstores        r$   Ú	set_colorzRendererPS.set_color&  ss   € Øˆq�!ˆ9˜Ÿ
™
Ò"Ø�N‰N× Ñ Ø$%¨¤K¨a¥Kô %1°£OÐ#4°JÑ!?ä$0°°A°qÓ$9Ð#:¸.Ð!IôKñ Ø  A˜Y�•
ð ð	 #r&   c                 óœ   — t        |«      }|| j                  k7  r2| j                  j                  t	        |«      › d�«       |r|| _        y y y )Nú setlinewidth
)Úfloatrì   rØ   rÊ   r‚   )r#   rì   r  s      r$   Úset_linewidthzRendererPS.set_linewidth.  sK   € Ü˜)Ó$ˆ	Ø˜Ÿ™Ò&Ø�N‰N× Ñ ¤L°Ó$;Ð#<¸OÐ!LÔMÙØ!*�•ð ð 'r&   c                 ó&   — dddddddœ|    } | d›d�S )Nr   r   é   )ÚmiterÚroundÚbevelr   r   r  Údz setlinejoin
r*   )rí   s    r$   Ú_linejoin_cmdzRendererPS._linejoin_cmd5  s-   € ð ¨°Q¸1ÀÀqÑIØñˆà˜1�˜^Ð,Ð,r&   c                 óŒ   — || j                   k7  r5| j                  j                  | j                  |«      «       |r|| _         y y y r    )rí   rØ   rÊ   r  )r#   rí   r  s      r$   Úset_linejoinzRendererPS.set_linejoin<  s?   € Ø�t—}‘}Ò$Ø�N‰N× Ñ  ×!3Ñ!3°HÓ!=Ô>ÙØ (�•ð ð %r&   c                 ó&   — dddddddœ|    } | d›d�S )Nr   r   r  )Úbuttr  Ú
projectingr   r   r  r  z setlinecap
r*   )rî   s    r$   Ú_linecap_cmdzRendererPS._linecap_cmdB  s-   € ð  q¸¸aÀAÈ!ÑLØñˆà˜!�˜MÐ*Ð*r&   c                 óŒ   — || j                   k7  r5| j                  j                  | j                  |«      «       |r|| _         y y y r    )rî   rØ   rÊ   r  )r#   rî   r  s      r$   Úset_linecapzRendererPS.set_linecapI  s?   € Ø�d—l‘lÒ"Ø�N‰N× Ñ  ×!2Ñ!2°7Ó!;Ô<ÙØ&�•ð ð #r&   c                 ó
  — | j                   �+| j                   \  }}t        j                  ||«      r||k(  ry | j                  j	                  |�#t        |«      rdt        |Ž › dt        |«      › d�nd«       |r
||f| _         y y )Nú[z] z	 setdash
z[] 0 setdash
)rï   ÚnpÚarray_equalrØ   rÊ   rª   r‚   )r#   ÚoffsetÚseqr  ÚoldoÚoldseqs         r$   Úset_linedashzRendererPS.set_linedashO  s…   € Ø�=‰=Ð$ØŸ=™=‰LˆD�&Ü�~‰~˜c 6Ô*¨t°vª~Øà�‰×ÑØ # ´C¸´Hð  !¤¨sÐ!3Ð 4°B´|ÀFÓ7KÐ6LÈJÑWà-ô	/ñ Ø# S˜MˆD�Mð r&   c                 ó¨   — ||f| j                   | j                  fk7  r5| j                  j                  d|› d|d›d�«       |r|| _         || _        y y y )Nr•   ru   ry   ú selectfont
)rð   rñ   rØ   rÊ   )r#   rð   rñ   r  s       r$   Úset_fontzRendererPS.set_font[  s[   € Ø�hÐ D§M¡M°4·=±=Ð#AÒAØ�N‰N× Ñ  1 X J¨a°¸¨¸mÐ!LÔMÙØ (�”Ø (�•ð ð Br&   c                 óÂ  — d}|| j                   v r| j                   |   S dt        | j                   «      z  }t        j                  d   }| j                  dz  }| j
                  j                  d|d›d|d›d|d›d|d›d	|d
›d| j                  t        j                  |«      t        «       j                  |«      d¬«      › d|d
›d|› d�«       || j                   |<   |S )Nrä   zH%dzhatch.linewidthzH  << /PatternType 1
     /PaintType 2
     /TilingType 2
     /BBox[0 0 r  ru   z]
     /XStep z
     /YStep z(

     /PaintProc {
        pop
        r¸   r	  F©Úsimplifyz]
        gsave
        fill
        grestore
        stroke
     } bind
   >>
   matrix
   0 z translate
   makepattern
   /z
 exch def
)rò   rª   ræ   rç   rû   rØ   rÊ   Ú_convert_pathr   Úhatchr   Úscale)r#   r+  Úsidelenr�   rì   Ú
pageheights         r$   Úcreate_hatchzRendererPS.create_hatchb  s  € ØˆØ�D—M‘MÑ!Ø—=‘= Ñ'Ð'Ø”s˜4Ÿ=™=Ó)Ñ)ˆÜ—L‘LÐ!2Ñ3ˆ	Ø—[‘[ 2Ñ%ˆ
Ø�‰×Ñð "ð ˜ˆ{˜!˜G A˜;ð 'Ø�QˆKð Ø�QˆKð 	ð 
�1ˆð Ø×ÑÜ‡J�JˆuÓ”x“z×'Ñ'¨Ó0¸5ð ó Bð CðCð �€^ð à	€Fð ð-ô 	ð0  $ˆ�‰�eÑØˆr&   c                 ó   — | j                   S )z­
        Get the factor by which to magnify images passed to draw_image.
        Allows a backend to have images at a different resolution to other
        artists.
        )ró   r"   s    r$   Úget_image_magnificationz"RendererPS.get_image_magnification„  s   € ð ×'Ñ'Ð'r&   Nc           
      ó¦   — |r!dd| j                   dz  | j                  dz  f}nd }t        j                  ||||d dg d¢d«      j	                  d«      S )Ng        g      R@é   )rŸ   r    r&   r¡   s   clTr¢   )rú   rû   r   r¯   r°   )r#   rÉ   Ú	transformÚclipr)  s        r$   r*  zRendererPS._convert_pathŒ  sZ   € ÙØ˜˜dŸj™j¨4Ñ/°·±¸tÑ1CÐD‰DàˆDÜ×&Ñ&Ø�)˜T 8¨TØÒ-¨tó5ç5;±V¸G³_ð	Er&   c           
      ó  — g }|j                  «       }|�3|j                  t        g |j                  ¢|j                  ¢­Ž › d�«       |j                  «       \  }}|�™|t        |«      f}| j                  j                  |«      }|€[dt        | j                  «      z  }| j                  j                  d|› d| j                  ||d¬«      › d�«       || j                  |<   |j                  |› d�«       d	j                  |«      S )
Nú
 rectclip
zc%dr•   z {
Fr(  z
clip
newpath
} bind def
r£   r-   )Úget_clip_rectangler­   r‚   Úp0ÚsizeÚget_clip_pathÚidrô   Úgetrª   rØ   rÊ   r*  r€   )r#   Úgcr5  ÚrectrÉ   Útrfrq   Úcustom_clip_cmds           r$   Ú_get_clip_cmdzRendererPS._get_clip_cmd•  s  € ØˆØ×$Ñ$Ó&ˆØÐØ�K‰Kœ<Ð=¨¯©Ð=°4·9±9Ò=Ð>¸kÐJÔKØ×$Ñ$Ó&‰	ˆˆcØÐØœ˜C›�/ˆCØ"×.Ñ.×2Ñ2°3Ó7ˆOØÐ&Ø"'¬#¨d×.>Ñ.>Ó*?Ñ"?�Ø—‘×$Ñ$ð *ØÐð Ø×Ñ�D˜#¨ÐÓ.Ð /ð 0ð&ô ð )8�× Ñ  Ñ%Ø�K‰K˜?Ð+¨2Ð.Ô/Ø�w‰w�t‹}Ðr&   c                 ó  — |j                   d d \  }}d}|d d d…d d …d d…f   }	|	j                  «       j                  dd«      }
|€!d}|| j                  z  }|| j                  z  }n?dj	                  t        t        |j                  «       j                  «       «      «      }d	}d	}| j                  j                  d
| j                  |«      › d|d›d|d›d|› d|d›d|d›d|d›d|d›d|d›d|d›d|d›d|d›d|› d|
› d�«       y )Nr  zfalse 3 colorimageéÿÿÿÿr   r£   éÀÿÿÿz1 0 0 1 0 0ru   g      ð?úgsave
r¸   z translate
[z	] concat
z scale
/DataString r  z string def
z 8 [ z 0 0 -z 0 z5 ]
{
currentfile DataString readhexstring pop
} bind ú

grestore
)ÚshapeÚtobytesÚhexró   r€   r¨   r©   ÚfrozenÚ	to_valuesrØ   rÊ   rB  )r#   r>  ÚxÚyÚimr4  rp   ro   ÚimagecmdÚdataÚhexdataÚmatrixÚxscaleÚyscales                 r$   Ú
draw_imagezRendererPS.draw_image«  sY  € ð �x‰x˜˜ˆ|‰ˆˆ1Ø'ˆØ‘$�B�$š˜2˜A˜2�+‰ˆØ—,‘,“.×$Ñ$ T¨3Ó/ˆàÐØ"ˆFØ˜×1Ñ1Ñ1ˆFØ˜×1Ñ1Ñ1‰Fà—X‘Xœc¤# y×'7Ñ'7Ó'9×'CÑ'CÓ'EÓFÓGˆFØˆFØˆFà�‰×Ñð "à×Ñ�BÓÐ ð Ø€1€€Q€qˆ€eð Ø€ð 
Øˆ€
ˆ!ˆF�1ˆ:ð ØˆqˆEð Ø€1€€Q€qˆ€eˆ5��1��V˜A˜a˜5  A a 5ð )	ð 
ˆ
ð Ø€	ð 
ðõ 	r&   c                 ó¤   — |d u xr |j                  «       d u }|j                  xr |}| j                  ||||¬«      }| j                  |||«       y )N©r5  r)  )Úget_hatch_pathÚshould_simplifyr*  Ú_draw_ps)r#   r>  rÉ   r4  ÚrgbFacer5  r)  Úpss           r$   Ú	draw_pathzRendererPS.draw_pathÌ  sY   € ð ˜$ˆÒ> 2×#4Ñ#4Ó#6¸$Ð#>ˆØ×'Ñ'Ò0¨DˆØ×Ñ  i°dÀXÐÓNˆØ�‰�b˜"˜gÕ&r&   c                 ó€  — | j                  |«      rd n5|d   |d   cxk(  r|d   k(  rn nt        |d   «      › d�nt        |d d Ž › d�}g d¢}|j                  «       }	|j                  «       st	        |j                  «       «      dk(  r|j                  «       n|j                  «       d   }
|	dkD  xr |
dkD  }|rp|j                  d|	z  «       |j                  | j                  |j                  «       «      «       |j                  | j                  |j                  «       «      «       |j                  | j                  ||d	¬
«      «       |r;|r|j                  d«       |r|j                  |dg«       |r|j                  d«       |r|j                  d«       |j                  ddg«       |j                  |dd| j                  dz  | j                   dz  fd	¬«      D ]2  \  }}t	        |«      sŒ|dd  \  }}|j                  |d›d|d›d�«       Œ4 dj#                  |«      }| j%                  |||d	d	¬«       y )Nr   r   r  z setgrayr   z setrgbcolor)z/o {ÚgsaveÚnewpathÚ	translatez%.1f setlinewidthFr(  r`  ÚfillÚgrestoreÚstrokez
} bind defrä   rX  éþÿÿÿr¸   ru   z or£   ©rc  re  )r  r‚   Úget_linewidthÚget_forced_alpharª   Úget_rgbÚ	get_alphar­   r  Úget_joinstyler  Úget_capstyler*  ÚextendÚiter_segmentsrú   rû   r€   r[  )r#   r>  Úmarker_pathÚmarker_transrÉ   Útransr\  Úps_colorÚps_cmdÚlwÚalphare  ÚverticesÚcoderM  rN  r]  s                    r$   Údraw_markerszRendererPS.draw_markersÔ  s6  € ð ×#Ñ# GÔ,ñ ð �q‰z˜W Q™ZÔ5¨7°1©:Õ5ô ! ¨¡Ó,Ð-¨XÑ6ä  '¨"¨1 +Ð.Ð/¨|Ð<ð 	ò ;ˆà×ÑÓˆà×'Ñ'Ô)¬S°·±³Ó->À!Ò-Cð —‘”à—j‘j“l 1‘oð 	ð �a‘Ò%˜E A™IˆÙØ�M‰MÐ-°Ñ2Ô3Ø�M‰M˜$×,Ñ,¨R×-=Ñ-=Ó-?Ó@ÔAØ�M‰M˜$×+Ñ+¨B¯O©OÓ,=Ó>Ô?à�‰�d×(Ñ(¨°lØ27ð )ó 9ô 	:ñ ÙØ—‘˜gÔ&ÙØ—‘˜x¨Ð0Ô1ÙØ—‘˜jÔ)áØ�M‰M˜(Ô#Ø�‰�z <Ð0Ô1à"×0Ñ0ØØ˜˜DŸJ™J r™M¨4¯;©;°r©>Ð:Øð 1ó  ò 	0‰NˆH�dô �8�}Ø  �}‘��1Ø—‘  1  Q q¨ e¨2Ð.Õ/ð	0ð �Y‰Y�vÓˆØ�‰�b˜"˜g¨E¸%ˆÕ@r&   c                 ó¤  — t        |«      dkD  rt        |d   j                  «      nd}| j                  |||||«      }|d|z  z   dz   |dz   |z  k  }|s"t        j                  | |||||||||	|
|||«      S g }t        | j                  |||«      «      D ]`  \  }\  }}d| j                  |fz  }| j                  ||d¬«      }| j                  j                  d|› d|› d	�«       |j                  |«       Œb | j                  |||||||	|
|||«      D ]'  \  }}}}}|d
›d|d
›d|› �}| j                  |||«       Œ) | xj                  dz  c_        y )Nr   r   r  zp%d_%dFr(  r•   z {
newpath
translate
z
} bind def
r¸   ru   r   )rª   rw  Ú_iter_collection_uses_per_pathr   Údraw_path_collectionÚ	enumerateÚ_iter_collection_raw_pathsrõ   r*  rØ   rÊ   r­   Ú_iter_collectionr[  )r#   r>  Úmaster_transformÚpathsÚall_transformsÚoffsetsÚoffset_transÚ
facecolorsÚ
edgecolorsÚ
linewidthsÚ
linestylesÚantialiasedsÚurlsÚoffset_positionÚlen_pathÚuses_per_pathÚshould_do_optimizationÚ
path_codesÚirÉ   r4  r�   Ú
path_bytesÚxoÚyoÚpath_idÚgc0r\  r]  s                                r$   r|  zRendererPS.draw_path_collection	  sÄ  € ô .1°«Z¸!ª^”3�u˜Q‘x×(Ñ(Ô)ÀˆØ×;Ñ;Ø�> 7¨J¸
óDˆð �q˜=Ñ(Ñ(¨1Ñ,°¸1±ÀÑ/MÑMð 	á%Ü×4Ñ4Ø�bÐ*¨E°>Ø˜ z°:Ø˜J¨°dØó	!ð !ð ˆ
Ü$-¨d×.MÑ.MØ  %¨ó/9ó %:ò 	$Ñ ˆAÑ ��ià˜t×7Ñ7¸Ð;Ñ;ˆDØ×+Ñ+¨D°)ÀeÐ+ÓLˆJØ�N‰N× Ñ ð &Ø€ð ð €ð ð	"ô ð ×Ñ˜dÕ#ð	$ð .2×-BÑ-BØ�J ¨Ø˜J¨
°JØ˜d Oó.5ò 	,Ñ)ˆB��G˜S 'ð �q�6˜˜2˜a˜&  ' Ð+ˆBØ�M‰M˜"˜c 7Õ+ð	,ð 	× Ò  AÑ%Ö r&   )Úmtextc          
      ó(  — | j                  |j                  «       «      ry t        | d«      s*| j                  d«       | j	                  ||||||d|«       y | j                  ||d¬«      \  }}	}
|j                  «       }d| j                  z  }t        |j                  «       d d dd	iŽ}d
ddœj                  t        j                  d   d   d«      }||z  }d|›d|›�}t        j                  |dz   «      }t        ||
t        j                  |«      z  z
  ||
t        j                  |«      z  z
  «      }| j                   j#                  d||||dz  |fz  «       | j$                  j'                  d|› d|› d�«       | xj                  dz  c_        y )Nré   zÆThe PS backend determines usetex status solely based on rcParams['text.usetex'] and does not support having usetex=True only for some elements; this element will thus be rendered as if usetex=False.FÚTeX)Úismathz
psmarker%dr   rv   ú,z{\sffamily %s}z{\ttfamily %s})z
sans-serifÚ	monospacezfont.familyr   z{\rmfamily %s}z\color[rgb]{z} éZ   z/\psfrag{%s}[bl][bl][1][%f]{\fontsize{%f}{%f}%s}g      ô?rF  z	 moveto
(z)
show
grestore
r   )r  rj  Úhasattrrù   Ú	draw_textÚget_text_width_height_descentÚget_size_in_pointsrè   r‚   r=  ræ   rç   r  ÚradiansÚcosÚsinré   r­   rØ   rÊ   )r#   r>  rM  rN  ÚsÚpropÚangler–  ro   rp   Úblrñ   Úthetextrë   ÚfontcmdÚtexÚrangleÚposs                     r$   Údraw_texzRendererPS.draw_tex6  s¥  € ð ×Ñ §
¡
£Ô-Øä�t˜XÔ&Ø×Ñð2ô3ð
 �N‰N˜2˜q ! Q¨¨e°U¸EÔBØà×5Ñ5°a¸ÀeÐ5ÓL‰ˆˆ1ˆbØ×*Ñ*Ó,ˆØ §¡Ñ-ˆÜ˜bŸj™j›l¨2¨AÐ.Ð8°CÑ8ˆØ!2Ø 1ñ3ß36±3Ü—|‘| MÑ2°1Ñ5Ð7Hó4Jð 	ð �a‰K‰Ú',©aÐ0ˆô —‘˜E B™JÓ'ˆÜ˜1˜r¤B§F¡F¨6£NÑ2Ñ2°A¸¼R¿V¹VÀF»^Ñ8KÑ4KÓLˆØ�‰×ÑØ>Ø˜ ¨(°4©-¸ðB>ñ >ô	?ð 	�‰×Ñð "à€ð Ø	€ð ðô 	ð 	�Š˜ÑŽr&   c	                 ó   — | j                  |j                  «       «      ry |dk(  r| j                  ||||||«      S |r| j                  ||||||«      S g }	t        j
                  d   rÑ| j                  |«      }
|
j                  j                  dd«      j                  d«      }d|j                  «       z  }d}d }|D ]x  }t        j                  t        |«      dt        |«      d›�«      }	 |
j                  |«      }|
j#                  ||«      }|}|||z  z  }|	j%                  |||f«       |||z  z  }Œz nÀ| j'                  |«      }
| j(                  j+                  |
|«       t-        j.                  ||
«      D ]z  }|j0                  j                  j                  dd«      j                  d«      }|j0                  j3                  |j4                  «      }|	j%                  ||j6                  |f«       Œ|  | j8                  |j                  «       Ž  t;        j<                  |	d„ «      D ]{  \  }}| j?                  ||j                  «       d«       djA                  d„ |D «       «      }| jB                  jE                  d| jG                  |«      › d|d›d|d›d|d›d|› d�«       Œ} y # t        $ r d	}|
j!                  d
«      }Y �ŒÍw xY w)Nr˜  rá   r¢   Úreplacegü©ñÒMbP?r   ÚuniÚ04XÚquestionú?c                 ó   — | d   S )Nr   r*   )Úentrys    r$   r0   z&RendererPS.draw_text.<locals>.<lambda>Ž  s
   € ¨e°A©h€ r&   Fr£   c              3   ó8   K  — | ]  \  }}}|d ›d|d›d�–— Œ y­w)r¸   z 0 m /r¤  z
 glyphshowNr*   )r}   Ú_rM  r�   s       r$   r   z'RendererPS.draw_text.<locals>.<genexpr>�  s/   è ø€ ò  9Ù$. A q¨$ð $% Q % v¨d°1¨X°ZÔ @ñ  9ùs   ‚rF  r¸   ru   ú translate
ú rotate
rG  )$r  rj  r­  Údraw_mathtextræ   rç   Ú_get_font_afmr¦   Úencoder°   r   r   r=  ÚordÚget_width_from_char_nameÚKeyErrorÚget_width_charÚget_kern_dist_from_namer­   Ú_get_font_ttfr÷   Útrackr	   ÚlayoutÚ	ft_objectr–   Ú	glyph_idxrM  r  Ú	itertoolsÚgroupbyr&  r€   rØ   rÊ   rB  )r#   r>  rM  rN  r¤  r¥  r¦  r™  r–  Ústreamr˜   Úps_namer,  ÚthisxÚ	last_namer³   r�   rú   ÚkernÚitemÚ
glyph_nameÚgroupr¨  s                          r$   rž  zRendererPS.draw_text`  sÏ  € ð ×Ñ §
¡
£Ô-Øà�UŠ?Ø—=‘=  Q¨¨1¨d°EÓ:Ð:áØ×%Ñ% b¨!¨Q°°4¸Ó?Ð?àˆä�<‰<˜Ò$Ø×%Ñ% dÓ+ˆDØ×+Ñ+×2Ñ2°7¸IÓFß™ ›ð à˜D×3Ñ3Ó5Ñ5ˆEØˆEØˆIØò '�Ü —}‘}¤S¨£V¨s´3°q³6¸#°,Ð-?Ó@�ð5Ø ×9Ñ9¸$Ó?�Eð ×3Ñ3°I¸tÓD�Ø �	Ø˜ ™Ñ%�Ø—‘˜w¨¨tÐ4Ô5Ø˜ ™Ñ&‘ñ'ð ×%Ñ% dÓ+ˆDØ×#Ñ#×)Ñ)¨$°Ô2Ü%×,Ñ,¨Q°Ó5ò =�ØŸ>™>×9Ñ9ß"™F 7¨IÓ6·v±v¸g³ð à!Ÿ^™^×:Ñ:¸4¿>¹>ÓJ�
Ø—‘˜w¨¯©°
Ð;Õ<ð	=ð
 	ˆ�‰˜Ÿ
™
›Ñ%ä'ß‘˜Ñ 6ó8ò 	‰NˆG�Uà�M‰M˜' 4×#:Ñ#:Ó#<¸eÔDØ—i‘iñ  9Ø27ô 9ó 9ˆGà�N‰N× Ñ ð &à×Ñ�BÓÐ ð Ø€1€€Q€qˆ€eð Ø€q€	ð 
Ø€	ð 
ð"õ ñ	øô'  ò 5Ø%�DØ ×/Ñ/°Ó4“Eð5ús   Ã.J-Ê-KËKc                 óP  — | j                   j                  j                  |d|«      \  }}}	}
} | j                  |j	                  «       Ž  | j
                  j                  d|d›d|d›d|d›d�«       d}|
D ]ß  \  }}}}}| j                  j                  ||«       |j                  |f|k7  r:|j                  |f}| j
                  j                  d|j                  › d|› d	�«       t        |t        «      r|j                  t        |«      «      n|j                  |j                  |«      «      }| j
                  j                  |d›d|d›d
|› d�«       Œá |D ].  \  }}}}| j
                  j                  |› d|› d|› d|› d�«       Œ0 | j
                  j                  d«       y)z-Draw the math text using matplotlib.mathtext.rä   rF  r¸   ru   r¸  r¹  Nr•   r%  z	 moveto
/z glyphshow
z
 rectfill
ú	grestore
)Ú
_text2pathÚmathtext_parserÚparser  rj  rØ   rÊ   r÷   Útrack_glyphr¦   Ú
isinstancer
   Úget_name_charr½   r–   r¤   )r#   r>  rM  rN  r¤  r¥  r¦  rú   rû   ÚdescentÚglyphsÚrectsÚlastfontr˜   rñ   ÚnumÚoxÚoyrÏ  ro   rp   s                        r$   rº  zRendererPS.draw_mathtext›  sÄ  € ð �O‰O×+Ñ+×1Ñ1°!°R¸Ó>ñ 	.ˆˆv�w ¨àˆ�‰˜Ÿ
™
›Ñ%Ø�‰×ÑØØ�ˆe�1�Q�q�E˜Ø�Qˆi�yð"ô	#ð ˆØ+1ò 	.Ñ'ˆD�(˜C  RØ×#Ñ#×/Ñ/°°cÔ:Ø×$Ñ$ hÐ/°8Ò;Ø×/Ñ/°Ð9�Ø—‘×$Ñ$Ø˜×,Ñ,Ð-¨Q¨x¨j¸ÐFôHô 1;¸4ÄÔ0E�×"Ñ"¤3 s£8Ô,Ø×#Ñ# D×$7Ñ$7¸Ó$<Ó=ð ð �N‰N× Ñ Ø�a�&˜˜"˜Q˜ð  Ø�<˜|ð-õ.ð	.ð "ò 	B‰LˆB��A�qØ�N‰N× Ñ  B 4 q¨¨¨A¨a¨S°°!°°KÐ!@ÕAð	Bà�‰×Ñ˜\Õ*r&   c                 óh   — | j                  ||j                  d«      |j                  d«      |«       y )N)r   r   r  )r   r   rÿ   )Údraw_gouraud_trianglesÚreshape)r#   r>  ÚpointsÚcolorsrr  s        r$   Údraw_gouraud_trianglez RendererPS.draw_gouraud_triangle¶  s,   € à×#Ñ# B¨¯©°yÓ(AØ$*§N¡N°9Ó$=¸uõ	Fr&   c                 ó¸  — t        |«      t        |«      k(  sJ ‚t        |«      dk(  ry |j                  dk(  sJ ‚|j                  d   dk(  sJ ‚|j                  d   dk(  sJ ‚|j                  dk(  sJ ‚|j                  d   dk(  sJ ‚|j                  d   dk(  sJ ‚|j                  }|j                  |d   |d   z  df«      }|j	                  |«      }|j                  |d   |d   z  df«      }t        j                  |d¬«      dz
  }t        j                  |d¬«      dz   }	t        j                  d|	|z
  z  «      }
|\  }}|	\  }}t        j                  |d   |d   z  g d	¢¬
«      }d|d<   ||z
  |
z  |d<   |d d …d d…f   dz  |d<   |j                  «       j                  dd«      }| j                  j                  d|d›d|d›d|d›d|d›d|› d�«       y )Nr   r   r   r  rÿ   )Úaxisi   l   ÿÿ ))ÚflagsÚu1)rã  z2>u4)rä  Ú3u1)Údtyperè  rã  g     ào@rä  r£   rE  z–gsave
<< /ShadingType 4
   /ColorSpace [/DeviceRGB]
   /BitsPerCoordinate 32
   /BitsPerComponent 8
   /BitsPerFlag 8
   /AntiAlias true
   /Decode [ r¸   ru   z  0 1 0 1 0 1 ]
   /DataSource <
z
>
>>
shfill
grestore
)rª   ÚndimrH  râ  r4  r  ÚminÚmaxÚceilÚemptyrI  rJ  rØ   rÊ   )r#   r>  rã  rä  rr  rH  Úflat_pointsÚflat_colorsÚ
points_minÚ
points_maxÚfactorÚxminÚyminÚxmaxÚymaxrQ  rR  s                    r$   rá  z!RendererPS.draw_gouraud_triangles»  s  € ä�6‹{œc &›kÒ)Ð)Ð)Üˆv‹;˜!ÒØØ�{‰{˜aÒÐÐØ�|‰|˜A‰ !Ò#Ð#Ð#Ø�|‰|˜A‰ !Ò#Ð#Ð#Ø�{‰{˜aÒÐÐØ�|‰|˜A‰ !Ò#Ð#Ð#Ø�|‰|˜A‰ !Ò#Ð#Ð#à—‘ˆØ—n‘n e¨A¡h°°q±Ñ&9¸1Ð%=Ó>ˆØ—o‘o kÓ2ˆØ—n‘n e¨A¡h°°q±Ñ&9¸1Ð%=Ó>ˆÜ—V‘V˜K¨aÔ0°GÑ<ˆ
Ü—V‘V˜K¨aÔ0°GÑ<ˆ
Ü—‘˜+¨*°zÑ*AÑBÓCˆà‰
ˆˆdØ‰
ˆˆdä�x‰xØ�!‰H�u˜Q‘xÑÚJôLˆð ˆˆW‰Ø%¨
Ñ2°fÑ<ˆˆX‰Ø$¢Q¨¨¨ UÑ+¨eÑ3ˆˆX‰Ø—,‘,“.×$Ñ$ T¨3Ó/ˆà�‰×Ñð "ð �1ˆX�Q�t˜A�h˜a  Q˜x q¨¨a¨ð 1à€	ð 
ðõ 	r&   rg  c                óÀ  — | j                   j                  }|j                  «       dkD  xr  | j                  |j	                  «       «       }|sd}| j                  |«      rd}|j                  «       }|rz| j                  |j                  «       «       | j                  |j                  «       «       | j                  |j                  «       «        | j                  |j                  «       Ž  |s|r  | j                  |j	                  «       dd Ž   |d«        || j                  |«      «        ||j                  «       «        |d«       |r5|s|r |d«        | j                  |dd ddiŽ  |d«       |s|r |d	«       |rD| j!                  |«      }	 |d«        |t#        |j%                  «       dd Ž «        |d
|	› d�«       |r |d«        |d	«       y)at  
        Emit the PostScript snippet *ps* with all the attributes from *gc*
        applied.  *ps* must consist of PostScript commands to construct a path.

        The *fill* and/or *stroke* kwargs can be set to False if the *ps*
        string already includes filling and/or stroking, in which case
        `_draw_ps` is just supplying properties and clipping.
        r   FNr   rF  r£   r  zfill
rÒ  ru   z setpattern fill grestore
zstroke
)rØ   rÊ   rh  r  rj  Ú	get_hatchr  r  rl  r  rm  r#  Ú
get_dashesr  rB  Ústripr/  r‚   Úget_hatch_color)
r#   r]  r>  r\  rc  re  rÊ   Úmightstroker+  Ú
hatch_names
             r$   r[  zRendererPS._draw_psë  s²  € ð —‘×$Ñ$ˆØ×'Ñ'Ó)¨AÑ-ò BØ#×3Ñ3°B·J±J³LÓAÐAð 	áØˆFØ×Ñ Ô(ØˆDØ—‘“ˆáØ×Ñ˜r×/Ñ/Ó1Ô2Ø×Ñ˜b×.Ñ.Ó0Ô1Ø×Ñ˜RŸ_™_Ó.Ô/ØˆD×Ñ˜rŸ}™}›Ñ/Ù™%ØˆD�N‰N˜BŸJ™J›L¨¨!Ð,Ñ-ÙˆiÔáˆd× Ñ  Ó$Ô%áˆb�h‰h‹jÔÙˆdŒáÙ™Ù�iÔ ØˆD�N‰N˜G B Q˜KÐ5¨uÒ5Ù�(ŒOÙ™Ù�lÔ#áØ×*Ñ*¨5Ó1ˆJÙ�)ÔÙ”, × 2Ñ 2Ó 4°R°aÐ 8Ð9Ô:Ù�A�j�\Ð!<Ð=Ô>áÙ�*ÔáˆlÕr&   )rä   )T)FNr    )#r'   r(   r)   Ú__doc__r   Ú_get_data_pathÚ_afm_font_dirÚ_use_afm_rc_namer%   r  r  r  Ústaticmethodr  r  r  r  r#  r&  r/  r1  r*  rB  rÞ   rV  r^  ry  r|  r­  rž  rº  rå  rá  r[  Ú__classcell__©rý   s   @r$   rà   rà   ô   s]  ø„ ñð
 )�E×(Ñ(¨Ó5€MØ"Ðõ;ò6ó'ó+ð ñ-ó ð-ó)ð ñ+ó ð+ó'ó
*ó)ò òD(óEòð, òó ðð@ ò'ó ð'ð àFJò2Aó ð2Aðh ñ*&ó ð*&ðX Ø:>ó 'ó ð'ðR ò8ó ð8ðt ñ+ó ð+ð4 ñFó ðFð ñ-ó ð-ð^ 15¸T÷ 1ð 1r&   rà   c                   ó(   — e Zd Z ed«      \  ZZd„ Zy)Ú_Orientationr  c                 ó4   — | j                   dk(  r|d d d…   S |S )NÚ	landscaperD  )r�   )r#   rH  s     r$   Úswap_if_landscapez_Orientation.swap_if_landscape"  s    € Ø"Ÿi™i¨;Ò6ˆu‘T�r�T‰{ÐA¸EÐAr&   N)r'   r(   r)   ÚrangeÚportraitr  r  r*   r&   r$   r	  r	    s   „ Ù ›(Ñ€HˆióBr&   r	  c                   ó¨   ‡ — e Zd ZdZdddœZd„ Zdddddœd	„Zdd
œd„Zdd
œd„Z e	j                  ed«      Z e	j                  ed«      Zˆ fd„Zˆ xZS )ÚFigureCanvasPSrä   Ú
PostscriptzEncapsulated Postscript)r]  Úepsc                  ó   — y)Nr]  r*   r"   s    r$   Úget_default_filetypez#FigureCanvasPS.get_default_filetype+  s   € Ør&   Nr  )ÚmetadataÚ	papertypeÚorientationÚbbox_inches_restorec          	      ó
  — | j                   j                  }d| j                   _        i }	t        |t        t        j
                  f«      rCt        j                  |«      j                  }
|
j                  dd«      j                  d«      |	d<   |xs i j                  ddt        j                  › d�«      |	d<   t	        j                  d«      }|rPt        j                  j!                  t#        |«      t        j$                  j&                  «      j)                  d	«      nt+        j,                  «       |	d
<   dj/                  d„ |	j1                  «       D «       «      }	|€t        j2                  d   }|j5                  «       }t7        j8                  ddgt:        ¢|¬«       t7        j<                  t>        |j5                  «       ¬«      }t        j2                  d   r| j@                  n| jB                  } |||f||	|||dœ|¤Ž y )Nrä   r¢   r¯  ÚTitleÚCreatorzMatplotlib vz, https://matplotlib.org/ÚSOURCE_DATE_EPOCHz%a %b %d %H:%M:%S %YÚCreationDater£   c              3   ó2   K  — | ]  \  }}d |› d|› �–— Œ y­w)z%%z: Nr*   )r}   Úkr¹   s      r$   r   z+FigureCanvasPS._print_ps.<locals>.<genexpr>F  s%   è ø€ ò !<Ù"˜a ˆb���2�a�SŒMñ!<ùr¾   zps.papersizeÚfigureÚauto)r  )r  rã   )ÚdpiÚdsc_commentsr  r  r  )"r   r"  r×  r©   rÄ   ÚPathLikeÚpathlibr   r�   r¼  r°   r=  ræ   Ú__version__ÚgetenvÚdatetimeÚfromtimestampÚintÚtimezoneÚutcÚstrftimeÚtimeÚctimer€   rm   rç   Úlowerr   Úcheck_in_listrl   Úcheck_getitemr	  Ú_print_figure_texÚ_print_figure)r#   ÚfmtÚoutfiler  r  r  r  rÙ   r"  r#  ÚfilenameÚsource_date_epochÚprinters                r$   Ú	_print_pszFigureCanvasPS._print_ps.  sÎ  € ð
 �k‰k�o‰oˆØˆ�‰ŒàˆÜ�g¤¤R§[¡[Ð1Ô2Ü—|‘| GÓ,×1Ñ1ˆHà—‘ ¨Ó3×:Ñ:¸7ÓCð ˜Ñ!à#+¢>¨r×"6Ñ"6ØØœ3Ÿ?™?Ð+Ð+DÐEó#Gˆ�YÑô ŸI™IÐ&9Ó:Ðñ
 !ô ×Ñ×+Ñ+ÜÐ%Ó&Ü×!Ñ!×%Ñ%ó'ç'/¡xÐ0FÔ'Gä—‘“ð 	�^Ñ$ð —y‘yñ !<Ø&2×&8Ñ&8Ó&:ô!<ó <ˆð ÐÜŸ™ ^Ñ4ˆIØ—O‘OÓ%ˆ	Ü×Ñ˜H fÐ9¬yÐ9ÀYÕOä×(Ñ(Ü k×&7Ñ&7Ó&9ô;ˆô —l‘l =Ò1ð ×)Ò)à×%Ñ%ð 	ñ 	��Wð 	C #°LØ'°9Ø$7ñ	Cà;Aó	Cr&   ©r  c                ó¾  ‡ ‡‡‡‡‡‡‡‡‡‡‡— |dk(  Št        |t        t        j                  f«      st	        |«      st        d«      ‚‰ j                  j                  «       \  ŠŠ‰dk(  rt        ‰j                  ‰‰f«      Ž Š‰s‰dk(  r‰‰}	}n‰j                  t        ‰   «      \  }}	d|‰z
  z  Šd|	‰z
  z  Š‰}
‰}|
‰ j                  j                  j                  z   }|‰ j                  j                  j                  z   }dŠ‰t        j                  u r||
||f\  }
}}}d|	z  ‰z
  ‰cŠŠdŠ|
|||fŠt!        «       ‰ _        t%        ‰‰‰ j"                  |¬	«      Št'        ‰ j                  ‰‰|‰|¬
«      }‰ j                  j)                  |«       ˆˆˆˆˆˆˆˆˆ ˆˆˆfd„}t*        j,                  d   r´t/        «       5 }t        j0                  j3                  |d«      }t5        |dd¬«      5 } ||«       ddd«       t*        j,                  d   dk(  rt7        t8        |‰‰‰¬«       n*t*        j,                  d   dk(  rt7        t:        |‰‰‰¬«       t=        ||«       ddd«       yt?        j@                  |dd¬«      5 }tC        |«      s tE        jF                  d«      |«      } ||«       ddd«       y# 1 sw Y   ŒÃxY w# 1 sw Y   yxY w# 1 sw Y   yxY w)a'  
        Render the figure to a filesystem path or a file-like object.

        Parameters are as for `.print_figure`, except that *dsc_comments* is a
        string containing Document Structuring Convention comments,
        generated from the *metadata* parameter to `.print_figure`.
        r  z,outfile must be a path or a file-like objectr!  r   g      B@r   rä   rœ  ©rê   r;  c           
      ó  •— ‰rt        d| ¬«       n/t        d| ¬«       ‰
dk7  rt        d‰
› �| ¬«       t        d| ¬«       t        d‰› d‰	j                  › d	t        ‰«      d
   › d�d| ¬«       t        t        «      }t        d| ¬«       t
        j                  d   s"|t        ‰j                  j                  «      z  }t        d|z  | ¬«       t        d| ¬«       t        d	j                  t        «      | ¬«       t
        j                  d   s�‰j                  j                  j                  «       D ]i  \  }}|sŒ	t
        j                  d   }t        |«      dkD  rd}| j                  «        |dk(  r| j                  t        ||«      «       Œ]t        ||| «       Œk t        d| ¬«       t        d| ¬«       ‰st        d| ¬«       t        d| ¬«       t        dt        ‰‰«      z  | ¬«       ‰rt        d‰z  | ¬«       t        dt        ‰dz  ‰dz  «      › d�| ¬«       t        ‰j                   j#                  «       | ¬«       t        d| ¬«       t        d| ¬«       ‰st        d| ¬«       | j                  «        y ) Nz%!PS-Adobe-3.0 EPSF-3.0)Úfilez%!PS-Adobe-3.0r   z%%DocumentPaperSizes: z
%%Pages: 1z%%LanguageLevel: 3
z
%%Orientation: r£   r   z
%%EndComments
r-   )Úendr?  z%%BeginProlográ   z/mpldict %d dict defzmpldict beginzps.fonttypeéÿ   rÀ   r   r@  z%%EndPrologz%%Page: 1 1z%s translatez	%d rotatez0 0 rä   z	 rectclipÚshowpagez%%EOF)Úprintr�   Úget_bbox_headerrª   r2   ræ   rç   r÷   Úusedr€   rm   ÚflushrÊ   rº   rÔ   r‚   rØ   rË   )r�   ÚNdictr±   r²   Úfonttyper›   r#  rû   Úis_epsr  r  Úps_rendererÚrotationr#   rú   r’  r“  s        €€€€€€€€€€€€r$   Úprint_figure_implz7FigureCanvasPS._print_figure.<locals>.print_figure_implŒ  s6  ø€ áÜÐ/°bÖ9äÐ&¨RÕ0Ø Ò(ÜÐ2°9°+Ð>ÀRÕHÜ�l¨Õ,ÜÐ(Ø!�Nð #$Ø$/×$4Ñ$4Ð#5°RÜ$ TÓ*¨1Ñ-Ð.ð /$ð%ð
 ˜rõ#ô œ“LˆEÜ�/¨Õ+Ü—<‘< Ò,Øœ˜[×;Ñ;×@Ñ@ÓAÑA�ÜÐ(¨5Ñ0°rÕ:Ü�/¨Õ+Ü�$—)‘)œGÓ$¨2Õ.Ü—<‘< Ò,à&×9Ñ9×>Ñ>×DÑDÓFòAÑ$�I˜uá Ø Ü"Ÿ|™|¨MÑ:�Hä˜5“z CÒ'Ø#%˜Ø—H‘H”JØ 1’}ØŸ™Ô!2°9¸eÓ!DÕEä*¨9°e¸RÕ@ðAô �%˜bÕ!Ü�- bÕ)áÜ�m¨"Õ-Ü�/¨Õ+ä�.¤<°°BÓ#7Ñ7¸bÕAÙÜ�k HÑ,°2Õ6Ü�Dœ e¨B¡h°°r±	Ó:Ð;¸9ÐEÈBÕOô �$—.‘.×)Ñ)Ó+°"Õ5ô �%˜bÕ!Ü�* 2Õ&ÙÜ�g BÕ'Ø�H‰H�Jr&   úps.usedistillerútmp.psro   r„   r…   NÚghostscript)Úptyper›   Úxpdf)$r×  r©   rÄ   r$  r   Ú
ValueErrorr   Úget_size_inchesrt   r  rl   r›   rú   rû   r	  r  r   rØ   rà   r   Údrawræ   rç   r   rÉ   r€   r‰   Ú_try_distillÚ
gs_distillÚxpdf_distillr‘   r   Úopen_file_cmr   ÚcodecsÚ	getwriter)r#   r5  r6  r"  r#  r  r  r  Úpaper_widthÚpaper_heightÚllxÚllyÚurxÚuryÚrendererrL  rÑ   rÒ   r�   r?  r›   rû   rI  rJ  rK  rú   r’  r“  s   `   ```             @@@@@@@@r$   r4  zFigureCanvasPS._print_figureX  sÈ  ÿû€ ð ˜‘ˆÜ˜7¤S¬"¯+©+Ð$6Ô7Ü(¨Ô1ÜÐKÓLÐLð Ÿ™×3Ñ3Ó5‰ˆˆvØ˜ÒÜ&¨×(EÑ(EÀuÈfÀoÓ(VÐWˆIá�Y (Ò*Ø(-¨v˜‰Kà(3×(EÑ(EÜ˜)Ñ$ó)&Ñ%ˆK˜ð ˜ uÑ,Ñ-ˆØ˜¨Ñ.Ñ/ˆàˆØˆØ�D—K‘K×$Ñ$×*Ñ*Ñ*ˆØ�D—K‘K×$Ñ$×+Ñ+Ñ+ˆØˆØœ,×0Ñ0Ñ0Ø!$ c¨3°Ð!3ÑˆC��c˜3Ø˜,Ñ&¨Ñ+¨RˆFˆB�ØˆHØ�S˜#˜sÐ#ˆä!›ˆŒô ! ¨°·±ÈÔMˆÜ$Ø�K‰K˜ ¨¨[Ø 3ô5ˆð 	�‰×Ñ˜Ô"÷9	÷ 9	ôv �<‰<Ð)Ò*ô $Ó%ð 
?¨ÜŸ'™'Ÿ,™, v¨xÓ8�Ü˜' 3°Ô;ð *¸rÙ% bÔ)÷*ä—<‘<Ð 1Ñ2°mÒCÜ ¤Ø!(¨&¸	ÈöNä—\‘\Ð"3Ñ4¸Ò>Ü ¤Ø!(¨&¸	ÈõNä,¨W°gÔ>÷
?ð 
?ô ×#Ñ# G¨S¸9ÔEð (ÈÜ,¨TÔ2Ø6œ6×+Ñ+¨IÓ6°tÓ<�DÙ! $Ô'÷(ð (÷*ð *ú÷
?ð 
?ú÷(ð (ús1   Ç/KÇ0	J;Ç9A)KÊ/KÊ;K	Ë KËKËKc                ó0  — |dk(  }| j                   j                  «       \  }	}
d}d}|}|}|| j                   j                  j                  z   }|| j                   j                  j                  z   }||||f}t        «       | _        t        |	|
| j                  |¬«      }t        | j                   |	|
|||¬«      }| j                   j                  |«       t        «       5 }t        j                  |d«      }|j                  d|› dt        |«      d   › dt        t         «      › d	d
j#                  t         «      › dt%        ||«      › dt%        |	dz  |
dz  «      › d| j                  j'                  «       › d�d¬«       |t(        j*                  u r
|
|	}
}	||||f}|s|dk(  r-|j-                  | j                   j                  «       «      \  }}n|dk(  rt/        |	|
«      }t0        |   \  }}t3        ||j4                  |||j6                  «      }t8        j:                  d   dk(  st8        j:                  d   rt=        t>        |||||¬«       n+t8        j:                  d   dk(  rt=        t@        |||||¬«       tC        ||«       ddd«       y# 1 sw Y   yxY w)a(  
        If :rc:`text.usetex` is True, a temporary pair of tex/eps files
        are created to allow tex to manage the text layout via the PSFrags
        package. These files are processed to yield the final ps or eps file.

        The rest of the behavior is as for `._print_figure`.
        r  r   r=  r;  rN  z+%!PS-Adobe-3.0 EPSF-3.0
%%LanguageLevel: 3
r£   z&
%%EndComments
%%BeginProlog
/mpldict z dict def
mpldict begin
r-   z
end
%%EndProlog
mpldict begin
z translate
0 0 rä   r7  z
end
showpage
r„   r…   r   r!  rM  rO  rã   )rP  r›   ÚrotatedrQ  N)"r   rS  r›   rú   rû   r   rØ   rà   r   rT  r   r%  r   Ú
write_textrD  rª   r2   r€   r‚   rË   r	  r  r  rt   rl   Ú_convert_psfragsré   r�   ræ   rç   rU  rV  rW  r‘   )r#   r5  r6  r"  r#  r  r  r  rI  rú   rû   r’  r“  r]  r^  r_  r`  r›   rJ  ra  rÑ   Útmppathr[  r\  Úpsfrag_rotateds                            r$   r3  z FigureCanvasPS._print_figure_texÜ  s±  € ð ˜‘ˆàŸ™×3Ñ3Ó5‰ˆˆvØˆØˆàˆØˆØ�D—K‘K×$Ñ$×*Ñ*Ñ*ˆØ�D—K‘K×$Ñ$×+Ñ+Ñ+ˆØ�S˜#˜sÐ#ˆä!›ˆŒô ! ¨°·±ÈÔMˆÜ$ T§[¡[Ø%*¨F°C¸Ø9LôNˆð 	�‰×Ñ˜Ô"ô  Ó!ð 5	; VÜ—l‘l 6¨8Ó4ˆGØ×Ñðð €ð Ü�Ó�qÑÐ ð 
ô Œg‹,ˆð à‡�ŒÓÐ ð ô ˆb�"ÓÐ ð Ü�%˜‘(˜F 2™IÓ&Ð'ð (Ø‡�×ÑÓÐ ð ðð& #ð) ô $ð, œl×4Ñ4Ñ4Ø &¨�v�Ø˜S # sÐ+�ñ
 ˜ hÒ.Ø,7×,IÑ,IØ—K‘K×/Ñ/Ó1ó-3Ñ)�™\ð  Ò&Ü .¨u°fÓ =�IÜ,5°iÑ,@Ñ)�˜\ä-Ø˜×+Ñ+¨[¸,Ø× Ñ ó"ˆNô —‘Ð.Ñ/°=Ò@Ü—|‘| MÒ2ÜœZØ$ f°IÀDØ%3ö5ô —‘Ð/Ñ0°FÒ:Üœ\Ø$ f°IÀDØ%3õ5ô )¨°'Ô:÷k5	;÷ 5	;ñ 5	;ús   ÃF$JÊJr]  r  c                 óT   •— | j                   j                  «        t        ‰| �  «       S r    )r   Údraw_without_renderingrå   rT  )r#   rý   s    €r$   rT  zFigureCanvasPS.draw8  s   ø€ Ø�‰×*Ñ*Ô,Ü‰w‰|‹~Ðr&   )r'   r(   r)   Ú	fixed_dpiÚ	filetypesr  r:  r4  r3  rÜ   ÚpartialmethodÚprint_psÚ	print_epsrT  r  r  s   @r$   r  r  &  sy   ø„ Ø€IØ#Ø1ñ3€Iòð
  T°zØ $ô(CðZ !%ôB(ðN !%ôW;ðr 'ˆy×&Ñ& y°$Ó7€HØ'�	×'Ñ'¨	°5Ó9€I÷ð r&   r  c           	      óL  — t        j                  dt         j                  d   t         j                  j	                  d«      z   t         j                  j	                  d«      z   t         j                  j	                  d«      z   d||dœz  z   i«      5  t        «       j                  ddj                  |«      |d	k(  rd
nd| j                  «       j                  «       dœz  d¬«      }ddd«       t        «       5 }t        j                  j                  |d«      }t        j                  dddd|gt        «       t!        j"                  || «       ddd«       t%        | «      5 }d|j'                  d«      v }	ddd«       |	S # 1 sw Y   Œ›xY w# 1 sw Y   Œ>xY w# 1 sw Y   	S xY w)aj  
    When we want to use the LaTeX backend with postscript, we write PSFrag tags
    to a temporary postscript file, each one marking a position for LaTeX to
    render some text. convert_psfrags generates a LaTeX document containing the
    commands to convert those tags to text. LaTeX/dvips produces the postscript
    file that includes the actual text.
    ztext.latex.preamblerë   Úgraphicxré   z:\geometry{papersize={%(width)sin,%(height)sin},margin=0in})rú   rû   zt
\begin{figure}
  \centering\leavevmode
  %(psfrags)s
  \includegraphics*[angle=%(angle)s]{%(epsfile)s}
\end{figure}r£   r  rœ  r   )Úpsfragsr¦  Úepsfileé
   )rñ   NrN  Údvipsz-qz-R0z-oÚ	Landscapeiè  )ræ   Ú
rc_contextrç   Ú
texmanagerÚ_usepackage_if_not_loadedr   Úmake_dvir€   ÚresolveÚas_posixr   rÄ   rÉ   r   Ú_check_and_log_subprocessrÁ   rŠ   rŒ   r‰   Úread)
rf  rq  r[  r\  r  ÚdvifilerÑ   Úpsfiler�   rg  s
             r$   re  re  =  s�  € ô 
�‰Ø!Ü�L‰LÐ.Ñ/Ü�N‰N×4Ñ4°WÓ=ñ>ä�N‰N×4Ñ4°ZÓ@ñAô �N‰N×4Ñ4°XÓ>ñ?ð JØ#¨|Ñ<ñ=ñ	=ðó 
ñ ô “,×'Ñ'ðð  Ÿ9™9 WÓ-Ø*¨kÒ9™¸qØ"Ÿ?™?Ó,×5Ñ5Ó7ññ
ð ð (ó ˆ÷ô. 
Ó	ð % Ü—‘—‘˜f hÓ/ˆÜ×'Ñ'Ø�d˜E 4¨°Ð9¼4ô	Aä�‰�F˜GÔ$÷	%ô 
ˆg‹ð 6˜"Ø$¨¯©°«Ð5ˆ÷6àÐ÷Mð ú÷.%ð %ú÷6àÐús&   ÂAFÃ9AFÅ#FÆF
ÆFÆF#c                 óœ   — 	  | t        |«      g|¢­i |¤Ž y # t        j                  $ r }t        j	                  d|«       Y d }~y d }~ww xY w)Nz%s.  Distillation step skipped.)r©   ræ   ÚExecutableNotFoundErrorrÁ   rÎ   )Úfuncrf  r�   rÙ   Úexcs        r$   rU  rU  n  sE   € ð=ÙŒS�‹\Ð+˜DÒ+ FÓ+øÜ×&Ñ&ò =Ü�‰Ð6¸×<Ñ<ûð=ús   ‚ ˜A«AÁAc                 ó€  — |rdg}n|dk(  rd|d   › �d|d   › �g}nd|› �g}| dz   }t         j                  d	   }t        j                  t        j                  d
«      j
                  ddd|z  dg|¢d|› �‘| ‘t        «       t        j                  | «       t        j                  || «       |rt        | ||¬«       yy)zÔ
    Use ghostscript's pswrite or epswrite device to distill a file.
    This yields smaller files without illegal encapsulated postscript
    operators. The output is low-level, converting text to outlines.
    ú	-dEPSCropr   z-dDEVICEWIDTHPOINTS=r  z-dDEVICEHEIGHTPOINTS=r   z-sPAPERSIZE=z.pszps.distiller.resÚgsz-dBATCHz	-dNOPAUSEz-r%dz-sDEVICE=ps2writez-sOutputFile=©rc  N)ræ   rç   r   r|  Ú_get_executable_infoÚ
executablerÁ   rÄ   ÚremoverŠ   rŒ   Úpstoeps)rÒ   r  rP  r›   rc  Úpaper_optionr  r"  s           r$   rV  rV  u  sñ   € ñ Ø#�}‰Ø	�(Ò	ð /¨t°A©w¨iÐ8Ø/°°Q±¨yÐ9ð;‰ð ' u gÐ.Ð/ˆà�u‰_€FÜ
�,‰,Ð)Ñ
*€Cä	×#Ñ#Ü	×	!Ñ	! $Ó	'×	2Ñ	2Ø	�K ¨#¡Ð/Bð	;à
ð	;à'¨ xÐ0ð	;à29ð	;ô 	ô	ô ‡I�IˆgÔÜ
‡K�K�˜Ô ñ ô 	�˜ wÖ/ð r&   c           	      ó  — t        j                  d«       t        j                  d«       |rdg}n|dk(  rd|d   › �d|d   › �g}nd	|› �g}t        «       5 }t        j                  |d
«      }t        j                  |d«      }t        j                  ddddddg|¢| ‘|‘t        «       t        j                  dddd||gt        «       t        j                  || «       ddd«       |rt        | «       yy# 1 sw Y   ŒxY w)a
  
    Use ghostscript's ps2pdf and xpdf's/poppler's pdftops to distill a file.
    This yields smaller files without illegal encapsulated postscript
    operators. This distiller is preferred, generating high-level postscript
    output that treats text as text.
    r†  Úpdftopsr…  r   z-dDEVICEWIDTHPOINTS#r  z-dDEVICEHEIGHTPOINTS#r   z-sPAPERSIZE#ztmp.pdfrN  Úps2pdfz-dAutoFilterColorImages#falsez-dAutoFilterGrayImages#falsez-sAutoRotatePages#Nonez-sGrayImageFilter#FlateEncodez-sColorImageFilter#FlateEncodez-paperÚmatchz-level3N)ræ   rˆ  r   r%  r   r   r|  rÁ   rŠ   rŒ   r‹  )	rÒ   r  rP  r›   rc  rŒ  rÑ   ÚtmppdfÚtmppss	            r$   rW  rW  œ  s2  € ô ×Ñ˜TÔ"Ü×Ñ˜YÔ'á
Ø#�}‰Ø	�(Ò	ð /¨t°A©w¨iÐ8Ø/°°Q±¨yÐ9ð;‰ð ' u gÐ.Ð/ˆä	Ó	ð $ Ü—‘˜f iÓ0ˆÜ—‘˜V XÓ.ˆô 	×'Ñ'ØØ,Ø+Ø%Ø,Ø-ðð ðð ðð ðô  $ô	%ô 	×'Ñ'Ø˜ '¨9°f¸eÐDÄdô	Lä�‰�E˜7Ô#÷!$ñ" Ü�Õð ÷#$ð $ús   ÁB	C7Ã7D c           	      óà   — | \  }}}}|r||z   d›ddd›d�}nd}d||t        j                  |«      t        j                  |«      fz  }d|d›d|d›d|d›d|d›�}d	j                  ||g«      |fS )
zx
    Return a postscript header string for the given bbox lbrt=(l, b, r, t).
    Optionally, return rotate command.
    z.2fru   r   z translate
90 rotater-   z%%%%BoundingBox: %d %d %d %dz%%HiResBoundingBox: z.6fr£   )r  rï  r€   )	Úlbrtrc  rj   r  r  ÚtÚrotateÚ	bbox_infoÚhires_bbox_infos	            r$   rD  rD  Å  s–   € ð �J€A€qˆ!ˆQÙØ�a‘C˜�9˜A˜a ˜WÐ$9Ð:‰àˆØ.°!°Q¼¿¹À»
ÄBÇGÁGÈAÃJÐ1OÑO€IØ,¨Q¨s¨G°1°Q°s°G¸1¸Q¸s¸GÀ1ÀQÀsÀGÐL€Oà�9‰9�i Ð1Ó2°FÐ:Ð:r&   c                 óÚ  — |rt        ||¬«      \  }}nd\  }}| dz   }t        |d«      5 }t        | d«      5 }|j                  }|D ]”  }	|	j                  d«      r& |d«       |sŒ ||j	                  d«      d	z   «       Œ:|	j                  d
«      r. ||	«        |d«       |r ||j	                  d«      d	z   «        n|r|	j                  d«      rŒ� ||	«       Œ– |D ]6  }	|	j                  d«      r	 |d«       Œ|	j                  d«      rŒ/ ||	«       Œ8 	 ddd«       ddd«       t        j                  | «       t        j                  || «       y# 1 sw Y   Œ=xY w# 1 sw Y   ŒAxY w)z´
    Convert the postscript to encapsulated postscript.  The bbox of
    the eps file will be replaced with the given *bbox* argument. If
    None, original bbox will be used.
    r‡  )NNz.epsr¿   r‡   s   %!PSs   %!PS-Adobe-3.0 EPSF-3.0
r¢   ó   
s   %%EndCommentssp   %%BeginProlog
save
countdictstack
mark
newpath
/showpage {} def
/setpagedevice {pop} def
%%EndProlog
%%Page 1 1
)s   %%Bounds   %%HiResBounds   %%DocumentMedias   %%Pagess   %%EOFsJ   cleartomark
countdictstack
exch sub { end } repeat
restore
showpage
%%EOF
s   %%PageBoundingBoxN)	rD  r‰   rÊ   rn   r¼  rÄ   rŠ  rŠ   rŒ   )
rÒ   r›   rc  r—  r–  rr  ÚepshÚtmphrÊ   Úlines
             r$   r‹  r‹  Ö  st  € ñ Ü+¨D¸'ÔBÑˆ	‘6à&Ñˆ	�6à˜Ñ€GÜ	ˆg�tÓ	ð ) ¤d¨7°DÓ&9ð )¸TØ—
‘
ˆàò 	ˆDØ�‰˜wÔ'ÙÐ2Ô3ÚÙ˜)×*Ñ*¨7Ó3°eÑ;Õ<Ø—‘Ð!1Ô2Ù�d”Ùð &ô 'ñ Ù˜&Ÿ-™-¨Ó0°5Ñ8Ô9ÙÙ˜$Ÿ/™/ð +Kô Làá�d•ð/	ð6 ò 	ˆDØ�‰˜xÔ(Ùð !õ "ð —‘Ð!5Ô6Øá�d•ñ	÷=)÷ )ôV ‡I�IˆgÔÜ
‡K�K�˜Õ!÷Y)ð )ú÷ )ð )ús)   ªE!·-EÁ%B3EÄE!ÅE	ÅE!Å!E*)z/_d { bind def } bind defz/m { moveto } _dz/l { lineto } _dz/r { rlineto } _dz/c { curveto } _dz/cl { closepath } _dz/ce { closepath eofill } _dz/sc { setcachedevice } _dc                   ó   — e Zd ZdZeZy)Ú
_BackendPSzLevel IIN)r'   r(   r)   Úbackend_versionr  ÚFigureCanvasr*   r&   r$   rŸ  rŸ  9  s   „ à €OØ!�Lr&   rŸ  )Fr7   NF)F)NF)Rr  rY  r(  Úenumr   rÜ   Úior   rÇ  ÚloggingrÄ   r%  rŠ   Útempfiler   r.  Únumpyr  Ú
matplotlibræ   r   r   r   r	   Úmatplotlib._afmr
   Úmatplotlib.backend_basesr   r   r   r   Úmatplotlib.cbookr   r   Úmatplotlib.font_managerr   Úmatplotlib.ft2fontr   r   Úmatplotlib._ttconvr   Úmatplotlib._mathtext_datar   Úmatplotlib.pathr   Úmatplotlib.texmanagerr   Úmatplotlib.transformsr   Ú!matplotlib.backends.backend_mixedr   r-   r   Ú	getLoggerr'   rÁ   r×   r3   r   Úcaching_module_getattrr,   rl   rt   r‚   r‘   rº   rÔ   rÞ   ÚRendererPDFPSBaserà   r	  r  re  rU  rV  rW  rD  r‹  ÚFigureManagerPSr2   ÚexportrŸ  r*   r&   r$   ú<module>r¸     s\  ðñó Û Ý Û Ý Û Û Û 	Û Û Ý 'Û ã ã ß 8Ó 8Ý ÷Aó Aç IÝ ,ß 5Ý 0Ý /Ý  Ý ,Ý *Ý ?Ý ð €w×Ñ˜Ó"€Ø
€ð €‡��Ó÷ð ó ðð
 ×Ñ÷Qð Qó ðQð"ˆX�yð "Ø�ið"à�xð"ð �>ð"ð �>ð	"ð
 �>ð"ð �>ð"ð �=ð"ð �<ð"ð �<ð"ð �<ð"ð �<ð"ð �<ð"ð �Lð"ð �>ð"ð �>ð"ð  �>ð!"ð" "Ø!Ø ØØØØØ ò1"€	ò6ð  ô Kò=ò N5òb#òLôh�×2Ñ2ô hôVB�4ô BôTÐ%ô Tòn.òb=ó$0óN&óR;ó":"ðz $€ò€ð. 
‡�ô"�ó "ó ñ"r&   