§
    ŒŸj`  ã                   óü  — d dl Z d dlmZmZmZmZmZmZ ddlm	Z	 ddl
mZ erddlmZ ddlmZmZ ddlmZ dd	lmZ d
gZ e j        d¦  «        ZdZdez   dz   Zdez   dz   Zdddee         dddefd„Zdddee         de	defd„Zdddedede	deeef         f
d„Zddd eeeeeef                  f         de	deeeeeef                  f         fd!„Zd"d#dededefd$„Z d"d#d%edefd&„Z!d"d#d%edededef
d'„Z"d)d(„Z#dS )*é    N)ÚTYPE_CHECKINGÚAnyÚDictÚListÚMatchÚUnioné   )Ú
BlockState)Úunikey)ÚBlockParser)ÚBaseRendererÚInlineState)ÚInlineParser)ÚMarkdownÚ	footnotesz\n{2,}z(?:[^\\\[\]\s]|\\.){1,500}z/^(?P<footnote_lead> {0,4})\[\^(?P<footnote_key>zW)]:[ \t\n](?P<footnote_text>[^\n]*(?:\n+|$)(?:(?P=footnote_lead) {1,4}(?! )[^\n]*\n+)*)z\[\^(?P<footnote_key>z)\]Úinliner   ÚmÚstater   Úreturnc                 óê  — t          |                     d¦  «        ¦  «        }|j                             d¦  «        }|rw||v rs|j                             d¦  «        }|sg }||vr|                     |¦  «         ||j        d<   |                     d|d|                     |¦  «        dz   idœ¦  «         n+|                     d|                     d	¦  «        d
œ¦  «         |                     ¦   «         S )NÚfootnote_keyÚref_footnotesr   Úfootnote_refÚindexé   )ÚtypeÚrawÚattrsÚtextr   )r   r   )r   ÚgroupÚenvÚgetÚappendÚappend_tokenr   Úend)r   r   r   ÚkeyÚrefÚnotess         úf/var/www/finuniver-perm.ru/html/student/venv/lib/python3.11/site-packages/mistune/plugins/footnotes.pyÚparse_inline_footnoter*      s÷   € Ý
�—’˜Ñ(Ô(Ñ
)Ô
)€CØ
Œ)�-Š-˜Ñ
(Ô
(€CØ
ð 	@ˆs�cˆzˆzØ”	—’˜kÑ*Ô*ˆØð 	ØˆEØ�eÐÐØ�LŠL˜ÑÔÐØ%*ˆEŒI�kÑ"Ø×Ò N¸3È'ÐSX×S^ÒS^Ð_bÑScÔScÐfgÑSgÐIhÐiÐiÑjÔjÐjÐjà×Ò F°1·7²7¸1±:´:Ð>Ð>Ñ?Ô?Ð?Ø�5Š5‰7Œ7€Nó    Úblockr   c                 óö   — |j                              d¦  «        }|si }t          |                     d¦  «        ¦  «        }||vr"|                     d¦  «        ||<   ||j         d<   |                     ¦   «         S )Nr   r   Úfootnote_text)r!   r"   r   r    r%   )r,   r   r   r'   r&   s        r)   Úparse_ref_footnoter/   .   sr   € Ø
Œ)�-Š-˜Ñ
(Ô
(€CØð Øˆå
�—’˜Ñ(Ô(Ñ
)Ô
)€CØ
�#€~€~Ø—7’7˜?Ñ+Ô+ˆˆC‰Ø%(ˆŒ	�/Ñ"Ø�5Š5‰7Œ7€Nr+   r&   r   c                 ó˜  — |j                              d¦  «        }|st          d¦  «        ‚||         }|                     ¦   «         }d }|dd …         D ]}|r nŒ|rÌt	          |¦  «        t	          |                     ¦   «         ¦  «        z
  }t          j        dt          |¦  «        z   dz   t          j	        ¬¦  «        }	|	 
                    d|¦  «                             ¦   «         }t          ¦   «         }
|
                     |¦  «         |                      |
¦  «         |
j        }n|                     ¦   «         }d|d	œg}d
|||dœdœS )Nr   zMissing 'ref_footnotes'.r   z^ {z,})ÚflagsÚ Ú	paragraph)r   r   Úfootnote_item)r&   r   )r   Úchildrenr   )r!   r"   Ú
ValueErrorÚ
splitlinesÚlenÚlstripÚreÚcompileÚstrÚMÚsubÚstripr
   ÚprocessÚparseÚtokens)r,   r&   r   r   r'   r   ÚlinesÚsecond_lineÚspacesÚpatternÚfooter_stater5   s               r)   Úparse_footnote_itemrH   :   sV  € Ø
Œ)�-Š-˜Ñ
(Ô
(€CØð 5ÝÐ3Ñ4Ô4Ð4ØˆsŒ8€Dà�OŠOÑÔ€EØ€KØ˜Q˜R˜R”yð ð ˆØð 	ØˆEð	ð ð 9Ý�[Ñ!Ô!¥C¨×(:Ò(:Ñ(<Ô(<Ñ$=Ô$=Ñ=ˆÝ”*˜V¥c¨&¡k¤kÑ1°EÑ9ÅÄÐFÑFÔFˆØ�{Š{˜2˜tÑ$Ô$×*Ò*Ñ,Ô,ˆå!‘|”|ˆØ×Ò˜TÑ"Ô"Ð"Ø�Š�LÑ!Ô!Ð!ØÔ&ˆˆà�zŠz‰|Œ|ˆØ(°$Ð7Ð7Ð8ˆØ#°ÈCÐZ_ÐD`ÐD`ÐaÐaÐar+   Úmdr   Úresultc                 óä   ‡ ‡— ‰j                              d¦  «        }|s|S ˆ ˆfd„t          |¦  «        D ¦   «         }t          ‰¬¦  «        Šd|dœg‰_        ‰                      ‰¦  «        }||z   S )Nr   c                 óJ   •— g | ]\  }}t          ‰j        ||d z   ‰¦  «        ‘Œ S )r   )rH   r,   )Ú.0ÚiÚkrI   r   s      €€r)   ú
<listcomp>z%md_footnotes_hook.<locals>.<listcomp>\   s2   ø€ Ð\Ð\Ð\Á4À1ÀaÕ# B¤H¨a°°Q±¸Ñ>Ô>Ð\Ð\Ð\r+   )Úparent)r   r5   )r!   r"   Ú	enumerater
   rB   Úrender_state)rI   rJ   r   r(   r5   Úoutputs   ` `   r)   Úmd_footnotes_hookrU   U   sˆ   øø€ ð ŒI�MŠM˜+Ñ&Ô&€EØð Øˆà\Ð\Ð\Ð\Ð\Í9ÐUZÑK[ÔK[Ð\Ñ\Ô\€HÝ˜eÐ$Ñ$Ô$€EØ(°hÐ?Ð?Ð@€E„LØ�_Š_˜UÑ#Ô#€FØ�F‰?Ðr+   Úrendererr   c                 óR   — t          |¦  «        }d|z   dz   }|dz   |z   dz   |z   dz   S )Nz$<sup class="footnote-ref" id="fnref-ú">z<a href="#fn-z
</a></sup>)r<   )rV   r&   r   rN   Úhtmls        r)   Úrender_footnote_refrZ   c   s;   € ÝˆE‰
Œ
€AØ1°AÑ5¸Ñ<€DØ�/Ñ! AÑ%¨Ñ,¨qÑ0°<Ñ?Ð?r+   r   c                 ó   — d|z   dz   S )Nz!<section class="footnotes">
<ol>
z</ol>
</section>
© )rV   r   s     r)   Úrender_footnotesr]   i   s   € Ø0°4Ñ7Ð:OÑOÐOr+   c                 óÐ   — t          |¦  «        }d|z   dz   }|                     ¦   «         }|                     d¦  «        r|d d…         |z   dz   }n|dz   |z   }d|z   dz   |z   dz   S )	Nz<a href="#fnref-z" class="footnote">&#8617;</a>z</p>éüÿÿÿú
z<li id="fn-rX   z</li>
)r<   ÚrstripÚendswith)rV   r   r&   r   rN   Úbacks         r)   Úrender_footnote_itemrd   m   s   € ÝˆE‰
Œ
€AØ Ñ!Ð$DÑD€DØ�;Š;‰=Œ=€DØ‡}‚}�VÑÔð "Ø�C�R�CŒy˜4Ñ &Ñ(ˆˆà�d‰{˜TÑ!ˆØ˜1Ñ˜tÑ# dÑ*¨YÑ6Ð6r+   c                 óÚ  — | j                              dt          t          d¬¦  «         | j                             dt
          t          d¬¦  «         | j                             t          ¦  «         | j
        rr| j
        j        dk    rd| j
                             dt          ¦  «         | j
                             dt          ¦  «         | j
                             d	t          ¦  «         d
S d
S d
S )a”  A mistune plugin to support footnotes, spec defined at
    https://michelf.ca/projects/php-markdown/extra/#footnotes

    Here is an example:

    .. code-block:: text

        That's some text with a footnote.[^1]

        [^1]: And that's the footnote.

    It will be converted into HTML:

    .. code-block:: html

        <p>That's some text with a footnote.<sup class="footnote-ref" id="fnref-1"><a href="#fn-1">1</a></sup></p>
        <section class="footnotes">
        <ol>
        <li id="fn-1"><p>And that's the footnote.<a href="#fnref-1" class="footnote">&#8617;</a></p></li>
        </ol>
        </section>

    :param md: Markdown instance
    ÚfootnoteÚlink)ÚbeforeÚref_footnoteÚref_linkrY   r   r4   r   N)r   ÚregisterÚINLINE_FOOTNOTEr*   r,   ÚREF_FOOTNOTEr/   Úafter_render_hooksr#   rU   rV   ÚNAMErZ   rd   r]   )rI   s    r)   r   r   x   sð   € ð2 „I×ÒØÝÝØð	 ñ ô ð ð „H×ÒØÝÝØð	 ñ ô ð ð Ô× Ò Õ!2Ñ3Ô3Ð3à	„{ð <�r”{Ô'¨6Ò1Ð1Ø
Œ×Ò˜^Õ-@ÑAÔAÐAØ
Œ×Ò˜_Õ.BÑCÔCÐCØ
Œ×Ò˜[Õ*:Ñ;Ô;Ð;Ð;Ð;ð<ð <Ð1Ð1r+   )rI   r   r   N)$r:   Útypingr   r   r   r   r   r   Úcorer
   Úutilr   Úblock_parserr   r   r   Úinline_parserr   Úmarkdownr   Ú__all__r;   Ú_PARAGRAPH_SPLITÚ_FOOTNOTE_LABELrm   rl   r<   Úintr*   r/   rH   rU   rZ   r]   rd   r   r\   r+   r)   ú<module>rz      sÜ  ðØ 	€	€	€	Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð àð $Ø*Ð*Ð*Ð*Ð*Ð*Ø0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ø,Ð,Ð,Ð,Ð,Ð,Ø#Ð#Ð#Ð#Ð#Ð#àˆ-€à�2”:˜iÑ(Ô(Ð ð 0€ðØ.ñ/ð2	ñ	ð ð +¨_Ñ<¸vÑE€ð .ð °U¸3´Zð Èð ÐZ]ð ð ð ð ð 	˜mð 	°°c´
ð 	À:ð 	ÐRUð 	ð 	ð 	ð 	ðb˜}ð b°3ð b¸sð bÈ:ð bÐZ^Ð_bÐdgÐ_gÔZhð bð bð bð bð6ØðØ! # t¨D°°c°¬NÔ';Ð";Ô<ðØEOðà
ˆ3��T˜#˜s˜(”^Ô$Ð$Ô%ðð ð ð ð@ .ð @°sð @À3ð @È3ð @ð @ð @ð @ðP˜~ð P°Sð P¸Sð Pð Pð Pð Pð7 >ð 7¸ð 7À3ð 7Èsð 7ÐWZð 7ð 7ð 7ð 7ð*<ð *<ð *<ð *<ð *<ð *<r+   