
    \j3                    8    d dl mZ ddlmZmZ ddZd	dZd
dZy)    )annotations   )	DelimiterStateInlinec           
        | j                   }| j                  |   }|ry|dk7  ry| j                  | j                   d      }|j                  }| j                  j
                  j                  dd      }|r|dk  ry|dkD  r=| j                  ddd	      }||z  |_        | xj                   |j                  z  c_         y| j                  ddd	      }||z  |_        | j                  j                  t        t        |      d	t        | j                        dz
  d
|j                  |j                                n|dk  ry|dz  r| j                  ddd	      }||_        |dz  }d	}||k  r| j                  ddd	      }||z   |_        | j                  j                  t        t        |      d	t        | j                        dz
  d
|j                  |j                                |dz  }||k  r| xj                   |j                  z  c_         y)a7  Insert each marker as a separate text token, and add it to delimiter list.

    When the ``strikethrough_single_tilde`` option is enabled on the
    ``MarkdownIt`` instance, single ``~`` delimiters are also accepted and
    runs of three or more tildes are rejected (matching GitHub's rendering behaviour).
    F~Tstrikethrough_single_tilder      text r   )markerlengthtokenendopenclose)possrc
scanDelimsr   mdoptionsgetpushcontent
delimitersappendr   ordlentokenscan_open	can_close)	statesilentstartchscannedr   single_tilder   is	            P/root/env/lib/python3.12/site-packages/markdown_it/rules_inline/strikethrough.pytokenizer+      s    IIE	5	B	Syuyy$/G^^F88##''(DeLLA:A: JJvr1-EKEMII'I

62q)V2w%,,'!+%%''		
 A:A:JJvr1-EEMaKF&jJJvr1-EGEM##r7ell+a/ ))!++	 FA &j  
III    c                d   g }t        |      }| j                  j                  j                  dd      }d}||k  r||   }|j                  dk7  r|dz  } |j
                  dk(  r|dz  }5||j
                     }|rQ| j                  |j                     j                  }| j                  |j                     j                  }	||	k7  r|dz  }| j                  |j                     j                  }
| j                  |j                     }d|_	        d|_
        d|_        |
|_        d	|_        | j                  |j                     }d
|_	        d|_
        d|_        |
|_        d	|_        | j                  |j                  dz
     j                  dk(  rG| j                  |j                  dz
     j                  dk(  r|j                  |j                  dz
         |dz  }||k  r|r|j                         }|dz   }|t        | j                        k  rV| j                  |   j                  d
k(  r:|dz  }|t        | j                        k  r| j                  |   j                  d
k(  r:|dz  }||k7  r:| j                  |   }| j                  |   | j                  |<   || j                  |<   |ry y )Nr	   Fr   ~   r   r   s_opensr   s_closer   r   )r   r   r   r   r   r   r    r   r   typetagnestingmarkupr   pop)r#   r   loneMarkersmaximumr(   r)   
startDelimendDelimopener_contentcloser_contentr5   r   js                r*   _postProcessr>   U   sw   K*oG88##''(DeLL	A
g+]
$FA>>RFAjnn- "\\**:*:;CCN"\\(..9AAN/Qj../77Z--.
	X^^,
	 LL!+,11V;X^^a/088C?x~~12	QY g+h OOE3u||$$5<<?+?+?9+LFA 3u||$$5<<?+?+?9+L 	
Q6LLOE#ll1oELLO#ELLO r,   c                    | j                   }t        | j                         }t        | | j                         d}||k  r(	 ||   }|rd|v rt        | |d          	 |dz  }||k  r'yy# t        $ r Y w xY w)z>Walk through delimiter list and replace text tokens with tags.r   r   r   N)tokens_metar   r>   r   
IndexError)r#   r@   r8   curr	curr_metas        r*   postProcessrD      s    ##K%##$G(()D
.	=#D)I \Y6UIl$;<	 .  		s    A( (	A43A4N)r#   r   r$   boolreturnrE   )r#   r   r   zlist[Delimiter]rF   None)r#   r   rF   rG   )
__future__r   state_inliner   r   r+   r>   rD    r,   r*   <module>rK      s    " 0K\F$Rr,   