
    f                     "   d dl Z d dlZddlmZ dZd e j
                  ej                        z   dz   ZdZ e j                  d      Z
 e j                  d	      Z e j                  d
      Z e j                  dez   dz         Z e j                  dez   dz   ez   dz         Z e j                  d      ZdZdZdZdZ e j                  edz         Z e j                  edz         Z e j                  dez   dz         Zd Zd Zd ZddZd Zd Zy)     N   )
escape_urlz(?<!\\)(?:\\\\)*[]z(?:[^\\\[\]]|\\.){0,500}z[ \t]*\n?[ \t]*<z<([^<>\n\\\x00]*)>z[ \t]*\n?[ \t]*([^\s]+)(?:\s|$)z)[ \t]*\n?[ \t]*([^ \t\n]*?)(?:[ \t\n]|(?:z\)))z[ \t\n]+("(?:\\z|[^"\x00])*"|'(?:\\z|[^'\x00])*')z\s*\)z[A-Za-z][A-Za-z0-9-]*zU(?:\s+[A-Za-z_:][A-Za-z0-9_.:-]*(?:\s*=\s*(?:[^ !"\'=<>`]+|\'[^\']*?\'|"[^\"]*?"))?)*)?addressarticleasidebasebasefont
blockquotebodycaptioncentercolcolgroupdddetailsdialogdirdivdldtfieldset
figcaptionfigurefooterformframeframeseth1h2h3h4h5h6headheaderhrhtmliframelegendlilinkmainmenumenuitemmetanavnoframesoloptgroupoptionpparamsectionsourcesummarytabletbodytdtfootththeadtitletrtrackul)prescriptstyletextareaz\]z[\[\]]z\\()c                 .    t         j                  d|       S )Nz\1)_ESCAPE_CHAR_REsub)texts    J/var/www/cvtools/html/venv/lib/python3.12/site-packages/mistune/helpers.pyunescape_charrP   2   s    ud++    c                    d}d}|}|t        |       k  r`t        j                  | |      }|snG|j                         }|j	                  d      }|dk(  r|dz  }|dk(  rd}n|dz  }|t        |       k  r`|r| ||dz
   }||fS y)Nr   Fr   r   TNN)len_INLINE_SQUARE_BRACKET_REsearchendgroup)srcposlevelfound	start_posmmarkerrN   s           rO   parse_link_textr`   6   s    EEI
C.%,,S#6eegS=QJEzQJE C. 9SU#SyrQ   c                     t         j                  | |      }|r&|j                  d      d d }||j                         fS y)Nr   rS   )_INLINE_LINK_LABEL_REmatchrX   rW   )rY   r]   r^   labels       rO   parse_link_labelrf   P   s=    ##C3A
3Baeeg~rQ   c                    t         j                  | |      }|rM|j                         dz
  }t        j                  | |      }|r!|j	                  d      |j                         fS y|rt
        j                  | |      }nt        j                  | |      }|sy|j                         }|j	                  d      }|r| |dz
     |d   k(  r||fS ||dz
  fS )Nr   rS   rb   )LINK_BRACKET_STARTrd   rW   LINK_BRACKET_RErX   LINK_HREF_BLOCK_RELINK_HREF_INLINE_RE)rY   r]   blockr^   end_poshrefs         rO   parse_link_hrefro   X   s      i0AEEGaK	!!#y1771:quuw&&$$S)4%%c95eegG771:DWq[!T"X-W}1rQ   c                     t         j                  | ||      }|r1|j                  d      dd }t        |      }||j	                         fS y)Nr   rb   rS   )LINK_TITLE_RErd   rX   rP   rW   )rY   r]   max_posr^   rB   s        rO   parse_link_titlers   q   sJ    CG4A
1R e$aeeg~rQ   c                     t        | |      \  }}|yt        | |t        |             \  }}|xs |}t        j	                  | |      }|syt        |      }dt        |      i}|r||d<   ||j                         fS )NrS   urlrB   )ro   rs   rT   PAREN_END_RErd   rP   r   rW   )	rY   rZ   rn   href_posrB   	title_posnext_posr^   attrss	            rO   
parse_linkr{   z   s    $S#.ND(|'Xs3x@E9$HH3)ADJt$%Eg!%%'>rQ   )F)restringutilr   PREVENT_BACKSLASHescapepunctuationPUNCTUATION
LINK_LABELcompilerh   ri   rj   rk   rq   rv   HTML_TAGNAMEHTML_ATTRIBUTES
BLOCK_TAGSPRE_TAGSrc   rU   rL   rP   r`   rf   ro   rs   r{    rQ   rO   <module>r      sc   	  ' YRYYv1122T9(
RZZ 34 "**23RZZ BC  bjj!() 
 

		 rzz(#'= 


 2"

:#56 &BJJ'89'DE "**Vk1D89,42rQ   