Ë
    ´2Úi~  ã            	       ó,  — d Z ddlmZmZ ddlZddlmZmZmZm	Z	m
Z
mZmZ ddlmZ dZ e ej                   dez  «      j"                  d«      Z e ej                   d	ez  «      j"                  d
«      ZdZ e ej                   dez  «      j"                  d«      Z e ej                   d	ez  «      j"                  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“dd “d!d"“d#d$“d%d&“d'd(“d)d*“d+d,d-d.d/d0d1d2œ¥Zed3„ «       Zed4„ «       Zd5„ Zy)6zŸ
A module for parsing and generating `fontconfig patterns`_.

.. _fontconfig patterns:
   https://www.freedesktop.org/software/fontconfig/fontconfig-user.html
é    )Ú	lru_cacheÚpartialN)ÚGroupÚOptionalÚParseExceptionÚRegexÚ	StringEndÚSuppressÚ
ZeroOrMore)Ú_apiz\\\-:,z
\\(?=[%s])Ú z(?=[%s])z\\z\\=_:,Úthin)ÚweightÚlightÚ
extralightÚ
ultralightr   Úbook)r   r   Úregular)r   r   Únormal)r   r   Úmedium)r   r   Údemibold)r   r   Úsemibold)r   r   Úbold)r   r   Ú	extrabold)r   z
extra boldÚblack)r   r   Úheavy)r   r   Úroman)Úslantr   Úitalic)r   r   Úoblique)r   r    )Úwidthzultra-condensed)r!   zextra-condensed)r!   Ú	condensed)r!   zsemi-condensed)r!   Úexpanded)r!   zextra-expanded)r!   zultra-expanded)ÚultracondensedÚextracondensedr"   Úsemicondensedr#   ÚextraexpandedÚultraexpandedc                  ó†  — d„ } t        dt        › dt        › d�«      }t        d«      }t        d«      }t        dt        › dt        › d�«      }t        |t	        d«      z    | |«      z   |z  «      }t          | |«      d«      «      t        d	  | |«      d
«      z   «      z   t        d |d«      z   «      z   t        «       z   S )Nc                 ó6   — | t        t        d«      | z   «      z   S )Nú,)r   r
   )Úelems    úU/var/www/html/acx/venv/lib/python3.12/site-packages/matplotlib/_fontconfig_pattern.pyÚcomma_separatedz0_make_fontconfig_parser.<locals>.comma_separated;   s   € Ø”j¤¨#£°Ñ!5Ó6Ñ6Ð6ó    z([^z]|(\\[z]))*z([0-9]+\.?[0-9]*|\.[0-9]+)z[a-z]+ú=Úfamiliesú-Úsizesú:zproperties*)r   Ú_family_puncÚ_value_puncr   r
   r   r   r	   )r.   ÚfamilyÚsizeÚnameÚvalueÚprops         r-   Ú_make_fontconfig_parserr<   9   sÎ   € ò7ô �cœ,˜ v¬l¨^¸4Ð@ÓA€FÜÐ.Ó/€DÜ�Ó€DÜ�Sœ˜ V¬K¨=¸Ð=Ó>€Eä�$œ #›Ñ&©¸Ó)?Ñ?À4ÑGÓH€DäÐ(‘ Ó(¨Ó4Ó5Ü
�3Ð.™¨Ó.¨wÓ7Ñ7Ó
8ñ	9ä
�S™4 Ó.Ñ.Ó
/ñ	0ô ‹+ñ	ðr/   c                 ó:  — t        «       }	 |j                  | «      }|j                  «        i }d|v rg t        t        |d   «      ¢|d<   d|v r
g |d   ¢|d<   |j                  dg «      D ]y  }t        |«      d	k(  r6|d   t        vrt        j                  d
d|d   ›d�¬«       Œ;t        |d      }|^}}|j                  |g «      j                  t        t        |«      «       Œ{ |S # t        $ r(}t        dt        j                  |d«      z   «      d‚d}~ww xY w)zs
    Parse a fontconfig *pattern* into a dict that can initialize a
    `.font_manager.FontProperties` object.
    ú
r   Nr1   r7   r3   r8   Ú
propertiesé   z3.7zSupport for unknown constants (z@) is deprecated since %(since)s and will be removed %(removal)s.)Úmessage)r<   ÚparseStringr   Ú
ValueErrorÚexplainÚ
resetCacheÚmapÚ_family_unescapeÚgetÚlenÚ
_CONSTANTSr   Úwarn_deprecatedÚ
setdefaultÚextendÚ_value_unescape)ÚpatternÚparserÚparseÚerrÚpropsr;   ÚkÚvs           r-   Úparse_fontconfig_patternrV   P   sF  € ô %Ó&€FðJØ×"Ñ" 7Ó+ˆð ×ÑÔØ€EØ�UÑØEœCÔ 0°%¸
Ñ2CÓDÐEˆˆh‰Ø�%ÑØ)˜% ™.Ð)ˆˆf‰Ø—	‘	˜,¨Ó+ò 
@ˆÜˆt‹9˜Š>Ø�A‰wœjÑ(Ü×$Ñ$Øð &Ø˜Q™�{ð #3ð$4õ5ð Ü˜d 1™gÑ&ˆDØˆˆˆAØ×Ñ˜˜BÓ×&Ñ&¤s¬?¸AÓ'>Õ?ð
@ð €Løô) ò Jä˜¤× 6Ñ 6°s¸AÓ >Ñ>Ó?ÀTÐIûðJús   ŒC) Ã)	DÃ2#DÄDc           
      óÐ   — dD �cg c]  }| t        | d|› �«      «       f‘Œ }}dj                  d„ | j                  «       D «       «      dj                  d„ |D «       «      z   S c c}w )z;Convert a `.FontProperties` to a fontconfig pattern string.)ÚstyleÚvariantr   ÚstretchÚfiler8   Úget_r+   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­w)N)Ú_family_escape)Ú.0Úfs     r-   ú	<genexpr>z.generate_fontconfig_pattern.<locals>.<genexpr>v   s   è ø€ Ò?¨1”^ A×&Ñ?ùs   ‚r   c           	   3   óZ   K  — | ]#  \  }}|�d|› dt        t        |«      «      › �–— Œ% y ­w)Nr4   r0   )Ú_value_escapeÚstr)r_   rT   rU   s      r-   ra   z.generate_fontconfig_pattern.<locals>.<genexpr>w   s7   è ø€ ò 8Ù˜!˜Q¨¨ð ˜!˜˜Aœm¬C°«FÓ3Ð4Ô5ñ 8ùs   ‚)+)ÚgetattrÚjoinÚ
get_family)ÚdrT   Úkvss      r-   Úgenerate_fontconfig_patternrj   p   s€   € ð NöOØð Ð%Œw�q˜D  ˜*Ó%Ó'Ò(ð O€Cð Oð �H‰HÑ?°·±³Ô?Ó?Ø�g‰gñ 8Ø"%ô8ó 8ñ8ð 9ùò	Os   …A#)Ú__doc__Ú	functoolsr   r   ÚreÚ	pyparsingr   r   r   r   r	   r
   r   Ú
matplotlibr   r5   ÚcompileÚsubrG   r^   r6   rN   rc   rJ   r<   rV   rj   © r/   r-   ú<module>rs      sç  ðñ÷ )Û 	÷M÷ Mñ Mõ ð €Ù˜:˜2Ÿ:™: m°lÑ&BÓC×GÑGÈÓLÐ Ù˜˜Ÿ™ K°,Ñ$>Ó?×CÑCÀUÓK€Ø€Ù˜*˜"Ÿ*™* ]°[Ñ%@ÓA×EÑEÀrÓJ€Ù˜
˜Ÿ
™
 ;°Ñ#<Ó=×AÑAÀ5ÓI€ðØ
Ð)ðàÐ)ðð Ð)ðð Ð)ð	ð
 Ð(ðð Ð+ðð Ð*ðð Ð*ðð Ð,ðð Ð,ðð Ð(ðð Ð.ðð Ð)ðð Ð)ðð Ð)ðð  Ð)ð!ð" Ð*ð#ð$ 3Ø2Ø,Ø1Ø+Ø1Ø1ò1€
ð8 ñó ðð, ñó ðó>9r/   