
    f j                    6    d Z ddlmZ ddlmZmZ ddZddZdS )z7Balance paired characters (*, _, etc) in inline tokens.    )annotations   )	DelimiterStateInlinestater   
delimiterslist[Delimiter]returnNonec                   |sdS i }t          |          }d}d}g }d}||k     r||         }|                    d           ||         j        |j        k    s||j        dz
  k    r|}|j        }|j        pd|_        |j        s|dz  }l|j        |vrg d||j        <   ||j                 |j        rdnd|j        dz  z            }	|||         z
  dz
  }
|
}|
|	k    r||
         }|j        |j        k    r|
||
         dz   z  }
-|j        r|j        dk     rd}|j        s|j        r4|j        |j        z   dz  dk    r|j        dz  dk    s|j        dz  dk    rd}|sQ|
dk    r||
dz
           j        s||
dz
           dz   }nd}||
z
  |z   ||<   |||
<   d|_        ||_        d|_        d	}d}n|
||
         dz   z  }
|
|	k    |d	k    r&|||j                 |j        rdnd|j        pddz  z   <   |dz  }||k     dS dS )
zBFor each opening emphasis-like marker find a matching closing one.Nr   r   )r   r   r   r   r      FTr   )lenappendmarkertokenlengthcloseopenend)r   r   openersBottommaximum	headerIdxlastTokenIdxjumps	closerIdxcloserminOpenerIdx	openerIdxnewMinOpenerIdxopener
isOddMatchlastJumps                  zC:\Users\Terasoftware\OneDrive\Desktop\faahhh\fyndo\fyndo\venv\Lib\site-packages\markdown_it/rules_inline/balance_pairs.pyprocessDelimitersr&      s    M*ooG ILEI
g
 gI&Q y!(FM9	"v|a//	" "I| *| 	NI =- 	D+C+C+CM&-($V]3+$QQ1):;
 i 0014	#,& 0	.	*F}- U9-11	{ 'vzA~ '"
 \&%+[& -&-71<A&  *a/& 4:=13D3I&
 "&J! 
 !1} %Z	A-F-K %#(Q#7!#;#$'09'<x'GE)$'/E)$"'FK!*FJ#(FL&(O $&Ly)A--Ia ,& 0	.d b  
	    &-(k(qfm.@qA-EF 	Q	O g
 g g g g g    c                    | j         }t          | j                   }t          | | j                   d}||k     r1||         }|rd|v rt          | |d                    |dz  }||k     /d S d S )Nr   r   r   )tokens_metar   r&   r   )r   r)   r   curr	curr_metas        r%   
link_pairsr,      s    #K%#$$GeU-...D
. %	 	>2 	>eY|%<===		 .     r'   N)r   r   r   r	   r
   r   )r   r   r
   r   )__doc__
__future__r   state_inliner   r   r&   r,    r'   r%   <module>r1      sl    = = " " " " " " 0 0 0 0 0 0 0 0t t t tn     r'   