
    ~,h              
       n    S SK r SSKJrJrJr  SSKJr  \ R                  " \5      r	S\S\
S\
S	\S
\4
S jrg)    N   )
charCodeAtisSpacenormalizeReference   )
StateBlockstate	startLine_endLinesilentreturnc                 ^   [         R                  SXX#5        SnU R                  U   U R                  U   -   nU R                  U   nUS-   nU R                  U5      (       a  gU R                  U   S:w  a  gXV:  aW  U R                  U   S:X  a8  U R                  US-
     S:w  a"  US-   U:X  a  gU R                  US-      S:w  a  gOUS-  nXV:  a  MW  U R                  nU R                  R                  R                  R                  S	5      n	U R                  n
S	U l        Xx:  a  U R                  U5      (       d  U R                  U   U R                  -
  S
:  a  US-  nMB  U R                  U   S:  a  US-  nM\  SnU	 H  nU" XUS5      (       d  M  Sn  O   U(       a  O"US-  nXx:  a  U R                  U5      (       d  M  U R!                  XU R                  S5      R#                  5       n[%        U5      nS nSnXV:  aW  ['        X5      nUS:X  a  gUS:X  a  UnO<US:X  a  US-  nO$US:X  a  US-  nXV:  a  ['        X5      S:X  a  US-  nUS-  nXV:  a  MW  Ub  US:  d  ['        XS-   5      S:w  a  gUS-   nXV:  a5  ['        X5      nUS:X  a  US-  nO[)        U5      (       a  OOUS-  nXV:  a  M5  U R                  R*                  R-                  XU5      nUR.                  (       d  gU R                  R1                  UR2                  5      nU R                  R5                  U5      (       d  gUR6                  nUUR8                  -  nUnUnUnXV:  a5  ['        X5      nUS:X  a  US-  nO[)        U5      (       a  OOUS-  nXV:  a  M5  U R                  R*                  R;                  XU5      nXV:  a?  UU:w  a9  UR.                  (       a(  UR2                  nUR6                  nUUR8                  -  nOSnUnUnXV:  a(  ['        X5      n[)        U5      (       d  OUS-  nXV:  a  M(  XV:  aI  ['        X5      S:w  a:  U(       a3  SnUnUnXV:  a(  ['        X5      n[)        U5      (       d  OUS-  nXV:  a  M(  XV:  a  ['        X5      S:w  a  g[=        USU 5      nU(       d  gU(       a  gSU R>                  ;  a  0 U R>                  S'   X-   S-   U l         U R                  RB                  RE                  SS5      (       a4  U RG                  SSS5      nUUUUSU S.Ul$        XR@                  /Ul%        UU R>                  S   ;  a"  UUXR@                  /S.U R>                  S   U'   O;U R>                  RM                  S/ 5      RO                  UUUXR@                  /S.5        Xl        g)Nz"entering reference: %s, %s, %s, %sr   r   F[]\:	reference   T[   ]   
   \   :   r    
referencesinline_definitions
definition)idtitleurllabel)r   hrefmapduplicate_refs)r   r"   r!   r#   )(LOGGERdebugbMarkstShifteMarksis_code_blocksrclineMaxmdblockrulergetRules
parentTypeisEmptysCount	blkIndentgetLinesstriplenr   r   helpersparseLinkDestinationoknormalizeLinkstrvalidateLinkposlinesparseLinkTitler   envlineoptionsgetpushmetar#   
setdefaultappend)r	   r
   r   r   r?   r>   maximumnextLineendLineterminatorRulesoldParentType	terminateterminatorRulestringlabelEndchresr"   
destEndPosdestEndLineNostartr   r!   tokens                           C/usr/lib/python3/dist-packages/markdown_it/rules_block/reference.pyr   r   	   s   
LL,e E
,,y
!ELL$;
;Cll9%G1}H9%%yy~ -99S>S UYYsQw%74%?Qw'!yyq!S(q - mmG hhnn**33K@O$$M"E

U]]8%<%< <<!EOO3a7MH <<!A%MH 	-New== 	 .
 A- 
U]]8%<%<0 ^^I%HNNPF&kGH
C
-$:4ZH4ZQJE4Z1HC}F!8D!@
q -  	HqLJv!|,LPT,T Q,C
-$:QJER[[q - ((


/
/W
EC6688!!#''*D88  &&
''C	SYYE JM E
-$:QJER[[q - ((


)
)&w
?C
}##&&gg -$r{{q	 - }F0D8U mF(B2;;1HC	 m }F0D8va12E 599$"$		,"Q&EJ xx0%88

<Q/Ah'	

 

+	EIIl++zz**
		,& 			-r299!::.		
 %    )loggingcommon.utilsr   r   r   state_blockr   	getLogger__name__r%   intboolr    rY   rX   <module>rb      sP     B B #			8	$NZ NC N3 N NQU NrY   