+
    Z‹iä
  ã                  ó¾   € R t ^ RIHt ^ RIt^ RIHtHt ^ RIHt ^ RI	H
t
 ]
'       d
   ^ RIHu Ht ]P                  ! R4      t ! R R]4      t ! R	 R
]4      tR tR# )a<  
An extension to Python Markdown which implements legacy attributes.

Prior to Python-Markdown version 3.0, the Markdown class had an `enable_attributes`
keyword which was on by default and provided for attributes to be defined for elements
using the format `{@key=value}`. This extension is provided as a replacement for
backward compatibility. New documents should be authored using `attr_lists`. However,
numerous documents exist which have been using the old attribute format for many
years. This extension can be used to continue to render those documents correctly.
)ÚannotationsN)ÚTreeprocessorÚisString)Ú	Extension)ÚTYPE_CHECKINGz\{@([^\}]*)=([^\}]*)}c                  ó.   € ] tR t^-tR R ltR R ltRtR# )ÚLegacyAttrsc               ó    € V ^8„  d   QhRRRR/# )é   Údocúetree.ElementÚreturnÚNone© )Úformats   "ÚB/usr/lib/python3/dist-packages/markdown/extensions/legacy_attrs.pyÚ__annotate__ÚLegacyAttrs.__annotate__.   s   € ÷ 	=ñ 	=�}ð 	=¨ñ 	=ó    c                óÞ  € VP                  4        FØ  pVP                  RR4      pVe"   VP                  RV P                  W#4      4       VP                  '       d<   \        VP                  4      '       d!   V P                  W"P                  4      Vn        VP                  '       g   K›  \        VP                  4      '       g   K¸  V P                  W"P                  4      Vn        KÚ  	  R# )z2Find and set values of attributes ({@key=value}). ÚaltN)ÚiterÚgetÚsetÚhandleAttributesÚtextr   Útail)Úselfr   Úelr   s   &&  r   ÚrunÚLegacyAttrs.run.   sš   € à—(‘(–*ˆBØ—&‘&˜ Ó%ˆCØŠØ—‘�u˜d×3Ñ3°BÓ<Ô=Ø�w�wˆwœ8 B§G¡G×,Ò,Ø×/Ñ/°·G±GÓ<�”Ø�w�wŠwœ8 B§G¡G×,Ô,Ø×/Ñ/°·G±GÓ<�–ó r   c               ó$   € V ^8„  d   QhRRRRRR/# )r
   r   r   ÚtxtÚstrr   r   )r   s   "r   r   r   9   s!   € ÷ 3ñ 3 =ð 3°sð 3¸sñ 3r   c                ó@   a€ R V3R llp\         P                  W24      # )z4Set attributes and return text without definitions. c               ó   € V ^8„  d   QhRR/# )r
   Úmatchzre.Match[str]r   )r   s   "r   r   Ú2LegacyAttrs.handleAttributes.<locals>.__annotate__;   s   € ÷ 	Fñ 	F ]ñ 	Fr   c                óˆ   <€ SP                  V P                  ^4      V P                  ^4      P                  RR4      4       R# )é   Ú
Ú N)r   ÚgroupÚreplace)r&   r   s   &€r   ÚattributeCallbackÚ7LegacyAttrs.handleAttributes.<locals>.attributeCallback;   s.   ø€ Ø�F‰F�5—;‘;˜q“> 5§;¡;¨q£>×#9Ñ#9¸$ÀÓ#DÖEr   )ÚATTR_REÚsub)r   r   r"   r.   s   &f& r   r   ÚLegacyAttrs.handleAttributes9   s   ø€ ÷	Fð 	Fä�{‰{Ð,Ó2Ð2r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__static_attributes__r   r   r   r   r   -   s   † õ	=÷3ñ 3r   r   c                  ó   € ] tR t^@tR tRtR# )ÚLegacyAttrExtensionc                óR   € VP                   P                  \        V4      R^4       R# )z(Add `LegacyAttrs` to Markdown instance. ÚlegacyattrsN)ÚtreeprocessorsÚregisterr   )r   Úmds   &&r   ÚextendMarkdownÚ"LegacyAttrExtension.extendMarkdownA   s   € à
×Ñ×"Ñ"¤;¨r£?°MÀ2ÖFr   r   N)r3   r4   r5   r6   r?   r7   r   r   r   r9   r9   @   s   † öGr   r9   c                 ó   € \        R/ V B # )Nr   )r9   )Úkwargss   ,r   ÚmakeExtensionrC   F   s   € ÜÑ( Ñ(Ð(r   )Ú__doc__Ú
__future__r   ÚreÚmarkdown.treeprocessorsr   r   Úmarkdown.extensionsr   Útypingr   Úxml.etree.ElementTreeÚetreeÚElementTreeÚcompiler0   r   r9   rC   r   r   r   Ú<module>rN      sT   ðñ(	õ #ã 	ß ;Ý )Ý  çß)Ð)ð �*Š*Ð-Ó
.€ô3�-ô 3ô&G˜)ô Gô)r   