o
    ±3Ihs  ã                   @   sf   d dl Z ddlmZ ddlmZmZ ddlmZ e  de j	¡Z
e  de j	¡Zd	ed
edefdd„ZdS )é    Né   )Úentities)ÚfromCodePointÚisValidEntityCodeé   )ÚStateInlinez#^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));z^&([a-z][a-z0-9]{1,31});ÚstateÚsilentÚreturnc                 C   sf  | j }| j}| j| dkrdS |d |krdS | j|d  dkrvt | j|d … ¡ }rt|sf| d¡}|d  ¡ dkrDt|dd … dƒnt|dƒ}|  d	d
d¡}t	|ƒrXt
|ƒnt
dƒ|_| d¡|_d|_|  j t| d¡ƒ7  _ dS dS t | j|d … ¡ }r±| d¡tv r±|s£|  d	d
d¡}t| d¡ |_| d¡|_d|_|  j t| d¡ƒ7  _ dS dS )Nú&Fr   ú#r   Úxé   é
   Útext_specialÚ iýÿ  ÚentityT)ÚposÚposMaxÚsrcÚ
DIGITAL_REÚsearchÚgroupÚlowerÚintÚpushr   r   ÚcontentÚmarkupÚinfoÚlenÚNAMED_REr   )r   r	   r   ÚmaximumÚmatchÚmatch1ÚcodeÚtoken© r&   ú_/home/air/sanwanet/gpt-api/venv/lib/python3.10/site-packages/markdown_it/rules_inline/entity.pyr      s>   
*ÿ
ÿý&ör   )ÚreÚcommon.entitiesr   Úcommon.utilsr   r   Ústate_inliner   ÚcompileÚ
IGNORECASEr   r    Úboolr   r&   r&   r&   r'   Ú<module>   s   