
    iKj                        d dl Z d dlZd dlmZmZmZmZ ddlmZ dZ	d e j                  ej                        z   dz   ZdZ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edefdZdededeeeef   edef   f   fdZdededeeeef   ed   f   fdZd#dedededeeeef   ed   f   fdZdedededeeeef   ed   f   fdZdededeeeeef   ef   ed   f   fdZd$dededeedf   defd Z dededefd!Z!dededeeeef   ed   f   fd"Z"y)%    N)AnyDictTupleUnion   )
escape_urlz(?<!\\)(?:\\\\)*[]z(?:[^\\\[\]]|\\.){0,500}z 	
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\\()textreturnc                 .    t         j                  d|       S )Nz\1)_ESCAPE_CHAR_REsub)rO   s    `/Users/ahmed/devFolder/Ultron/claude-voice/.venv/lib/python3.12/site-packages/mistune/helpers.pyunescape_charrU   \   s    ud++    srcposc                 $   d}d}|}|t        |       k  rkt        j                  | |      }|st        |       }nG|j                         }|j	                  d      }|dk(  r|dz  }|dk(  rd}n|dz  }|t        |       k  rk|r| ||dz
   }||fS d |fS )Nr   Fr   r
   T)len_INLINE_SQUARE_BRACKET_REsearchendgroup)rW   rX   levelfound	start_posmmarkerrO   s           rT   parse_link_textrd   `   s    EEI
C.%,,S#6c(CeegS=QJEzQJE C.  9sQw'Sy9rV   ra   NNc                     t         j                  | |      }|r&|j                  d      d d }||j                         fS y)Nr   re   )_INLINE_LINK_LABEL_REmatchr^   r]   )rW   ra   rb   labels       rT   parse_link_labelrk   {   s=    ##C3A
3Baeeg~rV   blockc                    t        | |      }|t        |       k\  ry| |   dk(  rt        | |      S |r| |   t        v ry|}d}|t        |       k  rc| |   }|t        v rnU|dk(  ry|dk(  rt	        |dz   t        |             }@|s|dk(  r|dz  }n|d	k(  r|dk(  rn|dz  }|dz  }|t        |       k  rc|s|dk7  ry| || |fS )
Nre   <r    \   (r   rN   )_skip_link_start_whitespacerZ   _parse_angle_link_hrefASCII_WHITESPACEmin)rW   ra   rl   rX   startr_   cs          rT   parse_link_hrefry      s    
%c9
5C
c#h
3x3%c3//S--EE
C.H  ;9cAgs3x(CCx
cA:
q! C.$ UaZuS>3rV   max_posc                    |}||k\  s| |   t         vryt        | ||      }||k\  ry| |   }ddddj                  |      }|y|dz  }g }||k  ry| |   }|dk(  ry|dk(  r&|dz   |k  r|j                  | ||d	z           |d	z  }:y||k(  rt	        d
j                  |            |dz   fS |j                  | |          |dz  }||k  ryy)Nre   '"rN   )r|   r}   rr   r   ro   rp   rq    )ru   _skip_ascii_whitespacegetappendrU   join)rW   ra   rz   rX   openercloserrF   rx   s           rT   parse_link_titler      s   
C
g~S)99
 c7
3C
g~XFSs+//7F~1HCE
-H;9Qw SsQw/0q; 0#'99SXq - rV   c                     t        | |      \  }}|y|J t        | |t        |             \  }}|xs |}t        | |      }|t        |       k\  s| |   dk7  ryt	        |      }dt        |      i}|r||d<   ||dz   fS )Nre   rN   urlrF   r   )ry   r   rZ   r   rU   r   )rW   rX   hrefhref_posrF   	title_posnext_posattrss           rT   
parse_linkr      s    $S#.ND(|'Xs3x@E9$HH%c84H3s8s8}3DJt$%Eg(Q,rV   c                 l    |t        |       }||k  r!| |   t        v r|dz  }||k  r| |   t        v r|S )Nr   )rZ   ru   )rW   rX   rz   s      rT   r   r      sF    c(
-CH(88q -CH(88JrV   c                 N   |t        |       k  r"| |   dv r|dz  }|t        |       k  r| |   dv r|t        |       k  rf| |   dv r_| |   dk(  r"|dz   t        |       k  r| |dz      dk(  r|dz  }n|dz  }|t        |       k  r"| |   dv r|dz  }|t        |       k  r| |   dv r|S )Nz 	r   z

rq   rZ   )rW   rX   s     rT   rs   rs      s    
C.SX.q C.SX.
SX~#c(f,s8ta#c( 2s37|t7K1HC1HCCHnSU!21HC CHnSU!2JrV   c                     |dz   }|}|t        |       k  r-| |   }|dk(  r
| || |dz   fS |dv ry|dz  }|t        |       k  r-y)Nr   >z<\
 re   r   )rW   rX   rw   rx   s       rT   rt   rt      sf    !GE
C
C.H8uS>37**q C. rV   )F)N)#restringtypingr   r   r   r   utilr   PREVENT_BACKSLASHescapepunctuationPUNCTUATION
LINK_LABELru   HTML_TAGNAMEHTML_ATTRIBUTES
BLOCK_TAGSPRE_TAGScompilerh   r[   rR   strrU   intrd   rk   boolry   r   r   r   rs   rt    rV   rT   <module>r      sO   	  * * ' YRYYv1122T9(
 '= 
@
B 2"

:#56 &BJJ'89'DE "**Vk1D89, , , 3 5sCx%c	BR1R+S 6# # %c3hzIZ8Z2[      T  eERUWZRZO]bcm]nLnFo  F# #  eCQTHoW\]gWhFh@i BC c eE$sCx.#2E,FjHY,Y&Z $ # c4i8H TW 
S 
s 
s 

 
# 
%c3hzIZ8Z2[ 
rV   