+
    '(js                    :  a  0 t $ R t^ RIHt ^ RIHt ^ RIt^ RIt^ RIH	t	 ^RI
Ht ^RIHt ^RIHt ^RIHt ^R	IHt ]	'       d   ^ R
IHt ]! 0 R#m4      tR]R&   ]P2                  R R l4       t]]].]3,          t R]P:                  3R]P<                  3R]P>                  3R]P@                  3R]PB                  3R]PD                  PF                  3R]PH                  PF                  3R]PJ                  3R]PL                  3R]PN                  3R]PP                  3R]PR                  3.t*R]R&   ]].R3,          t+R]PX                  3R]PD                  PZ                  3R]PH                  PZ                  3R]P\                  3.t/R]R &    ! R! R"4      t0R# )$zTokenizes paragraph content.)annotations)CallableN)TYPE_CHECKING)rules_inline)Ruler)StateInline)Token)EnvType)
MarkdownItzfrozenset[str]_DEFAULT_TERMINATORSc                   V ^8  d   QhRR/# )   returnzre.Pattern[str] )formats   "N/home/ubuntu/cf-venv/lib/python3.14/site-packages/markdown_it/parser_inline.py__annotate__r   9   s     L L L    c                     \         P                  ! R \         P                  ! RP                  \        4      4      ,           R,           4      # )[ ])recompileescapejoinr   r   r   r   _default_terminator_rer   8   s.    ::cBIIbgg.B&CDDsJKKr   textlinkifynewliner   	backticksstrikethroughemphasislinkimageautolinkhtml_inlineentityz$list[tuple[str, RuleFuncInlineType]]_rulesbalance_pairsfragments_joinz%list[tuple[str, RuleFuncInline2Type]]_rules2c                  R    ] tR t^btR R ltR R ltR R ltR R ltR	 R
 ltRt	R# )ParserInlinec                   V ^8  d   QhRR/# )r   r   Noner   )r   s   "r   r   ParserInline.__annotate__c   s     G G$ Gr   c                	V   \         \        ,          ! 4       V n        \         F   w  rV P                  P	                  W4       K"  	  \         \
        ,          ! 4       V n        \         F   w  rV P                  P	                  W4       K"  	  \        4       V n	        \        4       V n        R # )N)r   RuleFuncInlineTyperulerr(   pushRuleFuncInline2Typeruler2r+   set_extra_terminator_charsr   terminator_re)selfnamerulerule2s   &   r   __init__ParserInline.__init__c   su    -.0
 JDJJOOD' ! /02"KDKKT) #
 25$.D.Fr   c                    V ^8  d   QhRRRR/# )r   chstrr   r/   r   )r   s   "r   r   r0   r   s      c d r   c           	     <   V\         9  d   WP                  9  d   V P                  P                  V4       \        P                  ! R\        P
                  ! RP                  \         V P                  ,          4      4      ,           R,           4      V n        R# R# R# )a#  Register a character that stops the ``text`` rule, allowing inline rules to fire.

This lets plugins declare which characters their inline rules react to,
mirroring the ``MARKER`` mechanism in the Rust markdown-it implementation.

:param ch: A single character to add to the terminator set.
r   r   r   N)r   r8   addr   r   r   r   r9   )r:   rA   s   &&r   add_terminator_char ParserInline.add_terminator_charr   s|     ))b8T8T.T((,,R0!#))GG043O3OOP 	"D /U)r   c                    V ^8  d   QhRRRR/# r   stater   r   r/   r   )r   s   "r   r   r0      s     ( ({ (t (r   c                   RpVP                   pV P                  P                  R4      pVP                  P                  R,          pVP
                  pW69   d   Wc,          Vn         R# VP                  V8  dP   V FH  pV;P                  ^,          un        V! VR4      pV;P                  ^,          un        V'       g   KH   M	  MVP                  Vn         V'       g   V;P                   ^,          un         VP                   Wc&   R# )zgSkip single token by running all rules in validation mode;
returns `True` if any rule reported success
Fr   
maxNestingNT)posr3   getRulesmdoptionscachelevelposMax)r:   rI   okrL   rulesrK   rP   r<   s   &&      r   	skipTokenParserInline.skipToken   s     ii

##B'XX%%l3
<
EI;;# q %&q 2 * EIIINIYY
r   c                    V ^8  d   QhRRRR/# rH   r   )r   s   "r   r   r0      s        k  d  r   c                ,   RpV P                   P                  R4      pVP                  pVP                  P                  R,          pVP
                  V8  d   VP                  V8  d   V F  pV! VR4      pV'       g   K   M	  V'       d   VP
                  V8  d   MQKZ  V;P                  VP                  VP
                  ,          ,          un        V;P
                  ^,          un        K  VP                  '       d   VP                  4        R# R# )z Generate tokens for input range.Fr   rK   N)
r3   rM   rR   rN   rO   rL   rQ   pendingsrcpushPending)r:   rI   rS   rT   endrK   r<   s   &&     r   tokenizeParserInline.tokenize   s    

##B'llXX%%l3
ii#o {{Z'!DeU+Br "
 99#MMUYYuyy11MIINI=== r   c          
     ,    V ^8  d   QhRRRRRRRRR	R/# )
r   rZ   rB   rN   r
   envr	   tokenszlist[Token]r   r   )r   s   "r   r   r0      s4     	 		&	-4	>I			r   c                    \        WW44      pV P                  V4       V P                  P                  R4      pV F  pV! V4       K  	  VP                  # )z9Process input string and push inline tokens into `tokens`r   )r   r]   r6   rM   ra   )r:   rZ   rN   r`   ra   rI   rules2r<   s   &&&&&   r   parseParserInline.parse   sK     CS1e%%b)DK ||r   )r8   r3   r6   r9   N)
__name__
__module____qualname____firstlineno__r>   rE   rU   r]   rd   __static_attributes__r   r   r   r-   r-   b   s#    G$(T @	 	r   r-   >   
!#$%&*+-:<=>@r   \r   ^_`{}~)1__conditional_annotations____doc__
__future__r   collections.abcr   	functoolsr   typingr   r   r   r3   r   rules_inline.state_inliner   tokenr   utilsr	   markdown_itr
   	frozensetr   __annotations__rP   r   boolr2   r   r   r   r   backtickr!   r]   r"   r#   r$   r%   r&   r'   r(   r5   
link_pairspostProcessr*   r+   r-   )r   s   @r   <module>r      s   " " $  	     2  & (1( n @ L L
 {D1478 
 \$$%$$%|""#,''(l0099:&&//0\l  !&&'L,,-|""#0, ( }d23 l--.l00<<=&&223 |2232	. u ur   