
    )ic                    :   % S r SSKJr  SSKJr  SSKrSSKJr  SSKJ	r	  SSK
Jr  SS	KJr  SS
KJr  SSKJr  \(       a  SSKJr  \R(                  " \5      r\\\\\/\4   r S\	R4                  SS/4S\	R6                  / 4S\	R8                  / SQ4S\	R:                  / SQ4S\	R<                  / SQ4S\	R>                  / SQ4S\	R@                  / 4S\	RB                  / SQ4S\	RD                  / SQ4S\	RF                  / 4S\	RH                  / 4/r%S\&S'    " S S5      r'g)zBlock-level tokenizer.    )annotations)CallableN)TYPE_CHECKING   )rules_block)Ruler)
StateBlock)Token)EnvType)
MarkdownIttable	paragraph	referencecodefence)r   r   
blockquotelistr   hrr   )r   r   r   
html_blockheadinglheadingz.list[tuple[str, RuleFuncBlockType, list[str]]]_rulesc                  J    \ rS rSrSrSS jrS	S jr          S
S jrSrg)ParserBlock0   zT
ParserBlock#ruler -> Ruler

[[Ruler]] instance. Keep configuration of block rules.
c                    [         [           " 5       U l        [         H$  u  pnU R                  R	                  XSU05        M&     g )Nalt)r   RuleFuncBlockTyperulerr   push)selfnameruler   s       X/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/markdown_it/parser_block.py__init__ParserBlock.__init__7   s6    ,-/
%ODJJOOD5  &    c                >   U R                   R                  S5      nUnUR                  R                  R                  nSnXS:  a  UR                  U5      =Ul        nXS:  a  gUR                  U   UR                  :  a  gUR                  U:  a  X1l        gU H  nU" XUS5      (       d  M    O   U(       + Ul
        UR                  nUS-
  U:  a  UR                  US-
  5      (       a  SnXS:  a#  UR                  U5      (       a  SnUS-  nXQl        XS:  a  M  gg)z Generate tokens for input range. Fr   TN)r   getRulesmdoptions
maxNestingskipEmptyLineslinesCount	blkIndentleveltightisEmpty)	r!   state	startLineendLinerulesr/   r-   hasEmptyLinesr#   s	            r$   tokenizeParserBlock.tokenize<   s   

##B'XX%%00
n % 4 4T ::EJ||D!EOO3 {{j( %
 We44  ,+EK::D qG#dQh(?(? $~%--"5"5 $	!
I nr'   c                    U(       d  g[        XX45      nU R                  XUR                  UR                  5        UR                  $ )z<Process input string and push block tokens into `outTokens`.N)r	   r:   r/   lineMaxtokens)r!   srcr+   env	outTokensr5   s         r$   parseParserBlock.parsei   s6     3C3eZZ7||r'   )r   N)returnNone)r5   r	   r6   intr7   rF   rD   rE   )
r?   strr+   r   r@   r   rA   zlist[Token]rD   zlist[Token] | None)	__name__
__module____qualname____firstlineno____doc__r%   r:   rB   __static_attributes__ r'   r$   r   r   0   s?    6
+"Z&-4AL	r'   r   )(rL   
__future__r   collections.abcr   loggingtypingr   r)   r   r   r   rules_block.state_blockr	   tokenr
   utilsr   markdown_itr   	getLoggerrH   LOGGERrF   boolr   r   r   r   r   r   
list_blockr   r   r   r   r   r   __annotations__r   rN   r'   r$   <module>r\      s4    " $      /  &			8	$ j#sD94?@  k+{!;<[r"k!QR8
 
;>>KL[##%MN+'',;))+ST##%MN%%r*+'',#:6 *A Ar'   