
    f                     6   d dl Z ddlmZ g dZ e j                  dez   dz         Z e j                  dez   dz         Z e j                  dez   dz         Zd	ez   d
z   Zdez   dz   Z	d Z
d Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zy)    N   )PREVENT_BACKSLASH)strikethroughmarkinsertsuperscript	subscriptz(?:z\\~|[^\s~])~~(?!~)z\\=|[^\s=])==(?!=)z\\\^|[^\s^])\^\^(?!\^)z\^(?:z\\\^|\S|\\ )+?\^z~(?:z\\~|\S|\\ )+?~c                 (    t        | ||dt              S )Nr   )_parse_to_end_STRIKE_ENDinlinemstates      U/var/www/cvtools/html/venv/lib/python3.12/site-packages/mistune/plugins/formatting.pyparse_strikethroughr      s    E?KHH    c                     d|z   dz   S )Nz<del>z</del> renderertexts     r   render_strikethroughr          T>H$$r   c                 (    t        | ||dt              S )Nr   )r   	_MARK_ENDr   s      r   
parse_markr      s    E69==r   c                     d|z   dz   S )Nz<mark>z</mark>r   r   s     r   render_markr      s    d?Y&&r   c                 (    t        | ||dt              S )Nr   )r   _INSERT_ENDr   s      r   parse_insertr"      s    E8[AAr   c                     d|z   dz   S )Nz<ins>z</ins>r   r   s     r   render_insertr$   "   r   r   c                     t        | ||d      S )Nr   _parse_scriptr   s      r   parse_superscriptr(   &   s    E=99r   c                     d|z   dz   S )Nz<sup>z</sup>r   r   s     r   render_superscriptr*   *   r   r   c                     t        | ||d      S )Nr	   r&   r   s      r   parse_subscriptr,   .   s    E;77r   c                     d|z   dz   S )Nz<sub>z</sub>r   r   s     r   render_subscriptr.   2   r   r   c                     |j                         }|j                  |j                  |      }|sy |j                         }|j                  ||dz
   }|j                         }	||	_        | j	                  |	      }
|j                  ||
d       |S )Nr   typechildren)endsearchsrccopyrenderappend_token)r   r   r   tok_typeend_patternposm1end_posr   	new_stater2   s              r   r   r   6   s    
%%'C			EIIs	+BffhG99S#D

IIM}}Y'H	h?@Nr   c                     |j                  d      }|j                         }|dd j                  dd      |_        | j	                  |      }|j                  ||d       |j                         S )Nr      z\  r0   )groupr6   replacer5   r7   r8   r3   )r   r   r   r9   r   r>   r2   s          r   r'   r'   D   sh    771:D

I2J&&uc2IM}}Y'H	  557Nr   c                     | j                   j                  ddt        d       | j                  r;| j                  j                  dk(  r!| j                  j                  dt
               yyy)aI  A mistune plugin to support strikethrough. Spec defined by
    GitHub flavored Markdown and commonly used by many parsers:

    .. code-block:: text

        ~~This was mistaken text~~

    It will be converted into HTML:

    .. code-block:: html

        <del>This was mistaken text</del>

    :param md: Markdown instance
    r   z~~(?=[^\s~])linkbeforehtmlN)r   registerr   r   NAMEr   mds    r   r   r   P   s]      II	   
{{r{{''61
_.BC 2{r   c                     | j                   j                  ddt        d       | j                  r;| j                  j                  dk(  r!| j                  j                  dt
               yyy)zA mistune plugin to add ``<mark>`` tag. Spec defined at
    https://facelessuser.github.io/pymdown-extensions/extensions/mark/:

    .. code-block:: text

        ==mark me== ==mark \=\= equal==

    :param md: Markdown instance
    r   z==(?=[^\s=])rF   rG   rI   N)r   rJ   r   r   rK   r   rL   s    r   r   r   j   s\     II	   
{{r{{''61
V[1 2{r   c                     | j                   j                  ddt        d       | j                  r;| j                  j                  dk(  r!| j                  j                  dt
               yyy)zA mistune plugin to add ``<ins>`` tag. Spec defined at
    https://facelessuser.github.io/pymdown-extensions/extensions/caret/#insert:

    .. code-block:: text

        ^^insert me^^

    :param md: Markdown instance
    r   z\^\^(?=[^\s\^])rF   rG   rI   N)r   rJ   r"   r   rK   r$   rL   s    r   r   r   ~   s\     II	   
{{r{{''61
X}5 2{r   c                     | j                   j                  dt        t        d       | j                  r;| j                  j
                  dk(  r!| j                  j                  dt               yyy)zA mistune plugin to add ``<sup>`` tag. Spec defined at
    https://pandoc.org/MANUAL.html#superscripts-and-subscripts:

    .. code-block:: text

        2^10^ is 1024.

    :param md: Markdown instance
    r   	linebreakrG   rI   N)r   rJ   SUPERSCRIPT_PATTERNr(   r   rK   r*   rL   s    r   r   r      sV     II}&9;LU`a	{{r{{''61
],>? 2{r   c                     | j                   j                  dt        t        d       | j                  r;| j                  j
                  dk(  r!| j                  j                  dt               yyy)zA mistune plugin to add ``<sub>`` tag. Spec defined at
    https://pandoc.org/MANUAL.html#superscripts-and-subscripts:

    .. code-block:: text

        H~2~O is a liquid.

    :param md: Markdown instance
    r	   rQ   rG   rI   N)r   rJ   SUBSCRIPT_PATTERNr,   r   rK   r.   rL   s    r   r	   r	      sT     II{$5{[	{{r{{''61
[*:; 2{r   )rehelpersr   __all__compiler   r   r!   rR   rT   r   r   r   r   r"   r$   r(   r*   r,   r.   r   r'   r   r   r   r   r	   r   r   r   <module>rY      s    	 '
Ibjj"336KKLBJJv 114IIJ	bjj"336OOP!225HH //2CC I%>'B%:%8%	D42(6(@<r   