
                            S 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JrJrJrJrJrJrJrJr  SS	KJrJrJrJrJrJrJrJrJrJ r J!r!  SS
K"J#r#J$r$  / SQr% " S S\5      r& " S S\5      r' " S S\5      r( " S S\5      r) " S S\5      r* " S S\5      r+ " S S\+5      r, " S S\5      r- " S S\5      r. " S S\5      r/ " S  S!\5      r0 " S" S#\5      r1 " S$ S%\5      r2g)&z
pygments.lexers.markup
~~~~~~~~~~~~~~~~~~~~~~

Lexers for non-HTML markup languages.

:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    N)XmlLexer)JavascriptLexer)CssLexer)LilyPondLexer)	JsonLexer)	
RegexLexerDelegatingLexerincludebygroupsusingthisdo_insertionsdefaultwords)TextCommentOperatorKeywordNameStringNumberPunctuationGenericOther
Whitespace)get_bool_optClassNotFound)BBCodeLexerMoinWikiLexerRstLexerTexLexer
GroffLexerMozPreprocHashLexerMozPreprocPercentLexerMozPreprocXulLexerMozPreprocJavascriptLexerMozPreprocCssLexerMarkdownLexerTiddlyWiki5LexerWikitextLexerc                       \ rS rSrSrSrS/rS/rS\4S\	S4S	\4/S
\4S\
" \R                  \\5      4S\
" \\5      4S\	S4/S.rSrg)r      zF
A lexer that highlights BBCode(-like) syntax.

.. versionadded:: 0.6
BBCodebbcodeztext/x-bbcodez[^[]+z\[/?\w+tagz\[\s+z(\w+)(=)("?[^\s"\]]+"?)z(=)("?[^\s"\]]+"?)\]#pop)rootr/    N)__name__
__module____qualname____firstlineno____doc__namealiases	mimetypesr   r   r   r   	Attributer   r   tokens__static_attributes__r4       )lib/third_party/pygments/lexers/markup.pyr   r      s     DjG !I t%(DM
 TN'dnnh79 #h') GV$

Fr@   r   c                      \ rS rSrSrSrSS/r/ rS/r\	R                  \	R                  -  rS\4S\" \\5      4S	\" \R$                  \" \5      \R$                  \5      4S
\" \R.                  \R0                  5      S4S\4S\" \\R.                  \5      4S\" \\R.                  \5      4S\4S\" \\\5      4S\4S\4S\4S\4/S\R.                  S4S\S4S\R2                  4S\R2                  4/S.rSrg)r   @   z=
For MoinMoin (and Trac) Wiki markup.

.. versionadded:: 0.7
zMoinMoin/Trac Wiki markupz	trac-wikimoinztext/x-trac-wikiz^#.*$z(!)(\S+)z^(=+)([^=]+)(=+)(\s*#.+)?$z(\{\{\{)(\n#!.+)?	codeblockz(\'\'\'?|\|\||`|__|~~|\^|,,|::)z^( +)([.*-])( )z^( +)([a-z]{1,5}\.)( )z\[\[\w+.*?\]\]z(\[[^\s\]]+)(\s+[^\]]+?)?(\])z^----+$z[^\n\'\[{!_~^,|]+\n.z\}\}\}r2   z\{\{\{z#pushz[^{}]+)r3   rE   r4   N)r5   r6   r7   r8   r9   r:   r;   	filenamesr<   re	MULTILINE
IGNORECASEflagsr   r   r   r   r   Headingr   r   r   r   Builtin	NamespacePreprocr>   r?   r4   r@   rA   r   r   @   s=    'DF#GI#$ILL2==(E w(7D12*goouT{GOOVLN "8DLL$..#I;W/9$d!CD&t||T(JK(-gvw/1!!4(DM4L'
, f-g&(7??#
-Fr@   r   c                      \ rS rSrSrSrSr/ SQrSS/rSS	/r	\
R                  rS
 rSrSrS\
R                   " \5      < \
R                   " \5      < S3rS\" \R(                  \\R(                  \\R(                  \5      4S\" \R(                  \\R(                  \5      4S\" \\\" \SS95      4S\" \\\" \SS95      4S\" \\\" \SS95      4S\" \\\" \SS95      4S\" \\\" \SS95      4S\" \\\" \SS95      4S\4S\" \\\R6                  \\\" \SS95      4S\" \\\R:                  \" \SS95      4S\" \\\R:                  \" \SS95      4S\" \\\R:                  \\R6                  \\\" \SS95      4S\R>                  4S\" \\R@                  \5      4S \" \" \SS9\" \SS95      4S!\" \!RD                  \\!\!\\!5      4\#" S5      /S"\4S#\!S$4S%\" \!\!RH                  \!5      4S&\!4S'\" \RJ                  \RL                  5      4S(\" \RL                  \RJ                  5      4S)\RN                  4S*\RP                  4S+\!4S,\R:                  4S-\4S.\4/S/\!4S#\-   \!S04S1\!4/S2.r)S3 r*S4 r+S5r,g6)7r    m   aF  
For reStructuredText markup.

.. versionadded:: 0.7

Additional options accepted:

`handlecodeblocks`
    Highlight the contents of ``.. sourcecode:: language``,
    ``.. code:: language`` and ``.. code-block:: language``
    directives with a lexer for the given language (default:
    ``True``).

    .. versionadded:: 0.8
reStructuredTextz(https://docutils.sourceforge.io/rst.html)restructuredtextrstrestz*.rstz*.restz
text/x-rstztext/prs.fallenstein.rstc           	   #     #    SSK Jn  UR                  S5      [        UR	                  S5      4v   UR                  S5      [
        UR	                  S5      4v   UR                  S5      [        R                  UR	                  S5      4v   UR                  S5      [        UR	                  S5      4v   UR                  S5      [
        UR	                  S5      4v   UR                  S5      [        UR	                  S5      4v   UR                  S	5      [
        UR	                  S	5      4v   S nU R                  (       a&   U" UR	                  S5      R                  5       5      nUR	                  S
5      n[        U5      nXAR	                  S5      -   UR	                  S5      -   UR	                  S5      -   nUc  UR                  S
5      [        U4v   g / nUR                  S5      nSnU HF  n	[        U	5      U:  a0  UR                  [        U5      S[
        U	S U 4/45        XiUS  -  nMB  Xi-  nMH     [!        XsR#                  U5      5       S h  vN   g ! [         a     GNf = f N7f)Nr   get_lexer_by_name                        	   
      T )pygments.lexersrY   startr   groupr   r   Wordr   handlecodeblocksstripr   lenr   
splitlinesappendr   get_tokens_unprocessed)
selfmatchrY   lexer	indentionindention_sizecodeins	codelineslines
             rA   _handle_sourcecodeRstLexer._handle_sourcecode   s    5 kk!nk5;;q>99kk!ndEKKN22kk!nhmmU[[^;;kk!nk5;;q>99kk!ndEKKN22kk!ngu{{1~55kk!ndEKKN22   )%++a.*>*>*@A KKN	YKKN*U[[_<u{{2N =++a.&$.. OOD)	D4y>)

CID$2G(H'IJK^_--  !&B&B4&HIII+ ! * 	Js7   EI3%I  +C/I3I1I3 
I.*I3-I..I3u   '")]}>’”»!?u   ‐‑‒–— z((?=$)|(?=[-/:.,; \n\x00z]))zH^(=+|-+|`+|:+|\.+|\'+|"+|~+|\^+|_+|\*+|\++|#+)([ \t]*\n)(.+)(\n)(\1)(\n)zc^(\S.*)(\n)(={3,}|-{3,}|`{3,}|:{3,}|\.{3,}|\'{3,}|"{3,}|~{3,}|\^{3,}|_{3,}|\*{3,}|\+{3,}|#{3,})(\n)z!^(\s*)([-*+])( .+\n(?:\1  .+\n)*)inlinestatez1^(\s*)([0-9#ivxlcmIVXLCM]+\.)( .+\n(?:\1  .+\n)*)z4^(\s*)(\(?[0-9#ivxlcmIVXLCM]+\))( .+\n(?:\1  .+\n)*)z$^(\s*)([A-Z]+\.)( .+\n(?:\1  .+\n)+)z*^(\s*)(\(?[A-Za-z]+\))( .+\n(?:\1  .+\n)+)z^(\s*)(\|)( .+\n(?:\|  .+\n)*)zl^( *\.\.)(\s*)((?:source)?code(?:-block)?)(::)([ \t]*)([^\n]+)(\n[ \t]*\n)([ \t]+)(.*)(\n)((?:(?:\8.*)?\n)+)z,^( *\.\.)(\s*)([\w:-]+?)(::)(?:([ \t]*)(.*))z'^( *\.\.)(\s*)(_(?:[^:\\]|\\.)+:)(.*?)$z^( *\.\.)(\s*)(\[.+\])(.*?)$z9^( *\.\.)(\s*)(\|.+\|)(\s*)([\w:-]+?)(::)(?:([ \t]*)(.*))z^ *\.\..*(\n( +.*\n|\n)+)?z+^( *)(:(?:\\\\|\\:|[^:\n])+:(?=\s))([ \t]*)z!^(\S.*(?<!::)\n)((?:(?: +.*)\n)+)z2(::)(\n[ \t]*\n)([ \t]+)(.*)(\n)((?:(?:\3.*)?\n)+)\\.z``literalz(`.+?)(<.+?>)(`__?)z`.+?`__?z(`.+?`)(:[a-zA-Z0-9:-]+?:)?z(:[a-zA-Z0-9:-]+?:)(`.+?`)z\*\*.+?\*\*z\*.+?\*z\[.*?\]_z<.+?>z[^\\\n\[*`:]+rG   z[^`]+r2   `)r3   r{   r   c                 V    [        USS5      U l        [        R                  " U 40 UD6  g Nrj   Tr   rj   r   __init__rp   optionss     rA   r   RstLexer.__init__  '     ,W6H$ OD,G,r@   c                     U S S S:X  a
  U SS S:w  a  gU R                  S5      nU R                  SUS-   5      nUS:  a+  US-  S-   U:X  a  XS-      S	;   a  XS-      XS-
     :X  a  g
g g g g )Nr[   z..r\   rG   g333333?
rZ   z-=g      ?)find)textp1p2s      rA   analyse_textRstLexer.analyse_text	  s    8tQq	S 0YYt_YYtR!V$GQ
b T
d"T
da4j( ) # ! r@   rj   N)-r5   r6   r7   r8   r9   r:   urlr;   rH   r<   rI   rJ   rL   ry   closersunicode_delimitersescapeend_string_suffixr   r   rM   r   r   r   r   r   r   ri   r   Tagr   rP   Classr   Escaper
   InterpolVariabler=   StrongEmphr>   r   r   r?   r4   r@   rA   r    r    m   sw    D
4C1G(#I9:ILLE&JR *G?II&89IIg.0!gootW__GOOT34
<gootW__dCE 2dFE$h$?@B BdFE$h$?@BDdFE$h$?@B 5dFE$h$?@B:dFE$h$?@B /dHeD&ABD?! =k4TD134 8k45X3NOQ -k45X3NOQ Jk44!4t8)DFG +GOO<;dDJJ-/ 2eD15X3NOQ CfmmT664HJHo8
t TNFI&#ffoov68&!+dmmT^^46*dnndmm46W^^,&&!txx t$4L
$ v&&76N
WPFd-	r@   r    c            
          \ rS rSrSrSrSS/r/ SQrSS/rS	\	4S
\
R                  4S\
R                  4/S\R                  S4S\S4S\R                  S4S\S4S\S4S\4\" S5      S\4/S\
R"                  4\" S5      S\4S\4S\
R                  4/S\S4S\S4\" S5      /S\S4S\S4S\
R                  4\" S5      /S\
R(                  4S\4\" S5      /S .rS! rS"rg#)$r!   i  z4
Lexer for the TeX and LaTeX typesetting languages.
TeXtexlatex)z*.texz*.auxz*.tocz
text/x-texztext/x-latexz%.*?\nz[{}]z[&_^]z\\\[displaymathz\\\(
inlinemathz\$\$z\$z\\([a-zA-Z]+|.)commandz\\$generalz[^\\$%&_^{}]+[0-9]+z[-=!+*/()\[\]]z[^=!+*/()\[\]\\$%&_^{}0-9-]+z\\\)r2   mathz\\\]z\[.*?\]z\*)r   r3   r   r   r   r   c                 >    S H  nU S [        U5       U:X  d  M    g   g )N)z\documentclassz\inputz\documentstylez\relaxT)rl   )r   rg   s     rA   r   TexLexer.analyse_textH  s$    !EKSZ E)!r@   r4   N)r5   r6   r7   r8   r9   r:   r;   rH   r<   r   r   rN   r   Backtickr   r
   r   r   r   r   r=   r   r>   r   r?   r4   r@   rA   r!   r!     s^    DgG+I~.I  dll#t||$
 foo}5fl+foo}5FL))4WIt$	
  /I),dll;
 ff%FF#FO
 ff%ff%DLL!FO	
 (GFO
E'FRr@   r!   c            
       P   \ rS rSrSrSr/ SQr/ SQrSS/rS\	" \
\5      S	4S
\S	4S\
S4\" S5      /\" S5      S\
4S\
S4/S\4S\R"                  4S\R"                  4S\R"                  4S\R"                  4S\
S	4/S\
S4\" S5      S\R$                  4S\4S\4S\
4/S.rS rSrg)r"   iO  z
Lexer for the (g)roff typesetting language, supporting groff
extensions. Mainly useful for highlighting manpage sources.

.. versionadded:: 0.6
Groff)groffnroffman)z*.[1-9]z*.manz*.1pz*.3pmzapplication/x-troffz
text/troffz	(\.)(\w+)requestz\.z[^\\\n]+textlineescapesrF   r2   z	\\"[^\n]*z\\[fn]\wz\\\(.{2}z	\\.\[.*\]r~   z\\\nz	"[^\n"]+"z\d+z\S+r0   )r3   r   r   r   c                     U S S S:w  a  gU S S S:X  a  gU S S S:X  a  gU SS R                  5       (       a  U S   R                  5       (       a  g	g g )
NrZ   rG   Fr\   z.\"Tr]   z.TH g?)isalnumisspace)r   s    rA   r   GroffLexer.analyse_text|  sd    8s?8v8v!947??#4#4 $5r@   r4   N)r5   r6   r7   r8   r9   r:   r;   rH   r<   r   r   r   r   r   r
   r   r   r   Doubler   r>   r   r?   r4   r@   rA   r"   r"   O  s	    D'G5I&5I 8D'2I>K+$
+J
 I$D&!
 7#&--(&--(6==)V]]#dI&
 D&!I6==)VVTN
-F@r@   r"   c                   >   \ rS rSrSrSr\/r/ r/ rS\	R                  S4S\4/S\" \	R                  \5      S4\" S	5      \	R                  S
4/\" S5      \4S\" \\5      4S\4S\R&                  4S\R*                  4S\R,                  4S\4S\S
4S\4S\4/
S.rSrg)r#   i  zv
Lexer for Mozilla Preprocessor files (with '#' as the marker).

Other data is left untouched.

.. versionadded:: 2.0
mozhashpreprocz^#expr	exprstart.+z(literal)(.*)#pop:2)defineundefififdefifndefelseelifelifdefelifndefendifexpandfilterunfilterr
   includesubsterrorr2   )!z!=z==z&&z||z(defined)(\()z\)r   z__\w+?__z@\w+?@\w+rF   r0   z\S)r3   r   r   r4   N)r5   r6   r7   r8   r9   r:   r;   rH   r<   r   rP   r   r   r   r   r   r   r   r   Decimalr   r   r   r>   r?   r4   r@   rA   r#   r#     s     DfGII GOO%:;EN

 x>I 4 5 __f	&
 018<x=>K '$--(

#TND&!TNK 
Fr@   r#   c                   T    \ rS rSrSrSr\/r/ r/ rSS\	R                  S4S\4/0rSrg	)
r$   i  zv
Lexer for Mozilla Preprocessor files (with '%' as the marker).

Other data is left untouched.

.. versionadded:: 2.0
mozpercentpreprocr3   z^%r   r   r4   N)r5   r6   r7   r8   r9   r:   r;   rH   r<   r   rP   r   r>   r?   r4   r@   rA   r$   r$     sF     DfGII 	GOO%:;EN
Fr@   r$   c                   @   ^  \ rS rSrSrSrS/rS/r/ rU 4S jr	Sr
U =r$ )r%   i  zp
Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
`XmlLexer`.

.. versionadded:: 2.0
zXUL+mozpreproczxul+mozpreprocz*.xul.inc                 :   > [         TU ]  " [        [        40 UD6  g N)superr   r   r#   rp   r   	__class__s     rA   r   MozPreprocXulLexer.__init__  s    #6B'Br@   r4   r5   r6   r7   r8   r9   r:   r;   rH   r<   r   r?   __classcell__r   s   @rA   r%   r%     s/     D GIIC Cr@   r%   c                   @   ^  \ rS rSrSrSrS/rS/r/ rU 4S jr	Sr
U =r$ )r&   i  zw
Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
`JavascriptLexer`.

.. versionadded:: 2.0
zJavascript+mozpreproczjavascript+mozpreprocz*.js.inc                 :   > [         TU ]  " [        [        40 UD6  g r   )r   r   r   r#   r   s     rA   r   "MozPreprocJavascriptLexer.__init__  s    *=IIr@   r4   r   r   s   @rA   r&   r&     s/     #D&'GIIJ Jr@   r&   c                   @   ^  \ rS rSrSrSrS/rS/r/ rU 4S jr	Sr
U =r$ )r'   i  zp
Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
`CssLexer`.

.. versionadded:: 2.0
zCSS+mozpreproczcss+mozpreprocz*.css.inc                 :   > [         TU ]  " [        [        40 UD6  g r   )r   r   r   r$   r   s     rA   r   MozPreprocCssLexer.__init__  s    #9EWEr@   r4   r   r   s   @rA   r'   r'     s/     D GIIF Fr@   r'   c                      \ rS rSrSrSrSrSS/rSS/rS	/r	\
R                  rS
 rS\" \R                   \5      4S\" \R$                  \5      4S\" \R                   \\R                   \5      4S\" \R$                  \\R$                  \5      4S\" \\\\" \SS95      4S\" \\\\" \SS95      4S\" \\\" \SS95      4S\" \\R.                  5      4S\R2                  4S\4\" S5      /S\4S\" \\R2                  5      4S\" \\R6                  5      4S\" \\R6                  5      4S\" \\R.                  5      4S\" \\R.                  5      4S\" \\R8                  5      4S\R<                  4S\" \\R>                  \\\R@                  \5      4S \" \\R>                  \\\RB                  \5      4S!\" \\RB                  \\R@                  5      4S"\4S#\4/S$.r"S% r#S&r$g')(r(   i  z-
For Markdown markup.

.. versionadded:: 2.2
Markdownz-https://daringfireball.net/projects/markdown/markdownmdz*.mdz
*.markdownztext/x-markdownc              #     #    SSK Jn  UR                  S5      [        R                  UR                  S5      4v   UR                  S5      [        R                  UR                  S5      4v   UR                  S5      bR  UR                  S5      [        UR                  S5      4v   UR                  S5      [        UR                  S5      4v   UR                  S5      [        UR                  S5      4v   S nU R                  (       a&   U" UR                  S5      R                  5       5      nUR                  S	5      nUc  UR                  S	5      [        U4v   O#[        / UR                  U5      5       S h  vN   UR                  S
5      [        R                  UR                  S
5      4v   g ! [         a     Nf = f NH7f)Nr   rX   initiallang	afterlang
whitespaceextranewlineru   
terminator)rf   rY   rg   r   r   rh   r   r   rj   rk   r   r   ro   rp   rq   rY   rr   ru   s        rA   _handle_codeblockMarkdownLexer._handle_codeblock  sp    5kk)$foou{{97MMMkk&!6??EKK4GGG;;{#/++l+Z\9RRR++g&ekk'.BBBkk)$j%++i2HHH   )%++f*=*C*C*EF {{6"=++f%vt33 %R)E)Ed)KLLLkk,'%++l:SSS !  Ms7   DG%F; 5AGG8G;
GGGGz(^#[^#].+)(\n)z(^#{2,6}[^#].+)(\n)z^(.+)(\n)(=+)(\n)z^(.+)(\n)(-+)(\n)z^(\s*)([*-] )(\[[ xX]\])( .+\n)r{   r|   z^(\s*)([*-])(\s)(.+\n)z^(\s*)([0-9]+\.)( .+\n)z^(\s*>\s)(.+\n)z^(\s*```\n[\w\W]*?^\s*```$\n)a&  (?x)
              ^(?P<initial>\s*```)
              (?P<lang>[\w\-]+)
              (?P<afterlang>
                 (?P<whitespace>[^\S\n]+)
                 (?P<extra>.*))?
              (?P<newline>\n)
              (?P<code>(.|\n)*?)
              (?P<terminator>^\s*```$\n)
              r~   z([^`]?)(`[^`\n]+`)z ([^\*]?)(\*\*[^* \n][^*\n]*\*\*)z([^_]?)(__[^_ \n][^_\n]*__)z([^\*]?)(\*[^* \n][^*\n]*\*)z([^_]?)(_[^_ \n][^_\n]*_)z([^~]?)(~~[^~ \n][^~\n]*~~)z[@#][\w/:]+z (!?\[)([^]]+)(\])(\()([^)]+)(\))z(\[)([^]]+)(\])(\[)([^]]*)(\])z^(\s*\[)([^]]*)(\]:\s*)(.+)z[^\\\s]+rG   )r3   r{   c                 V    [        USS5      U l        [        R                  " U 40 UD6  g r   r   r   s     rA   r   MarkdownLexer.__init__i  r   r@   r   N)%r5   r6   r7   r8   r9   r:   r   r;   rH   r<   rI   rJ   rL   r   r   r   rM   r   
Subheadingr   r   r   r   r   r   r   r
   r   Deletedr   Entityr   r=   Labelr>   r   r?   r4   r@   rA   r(   r(     sV   
 D
9C4 G&I"#ILLET< $ ?@#Xg.@.@$%GH!8GOOT7??TX#YZ!8G,>,>gFXFXZ^#_`/Z'5X3NOQ 'Z*eD6QRT (Z%H*EFH  '7<<!@A-v?	 
  HK&
R TN"HT6??$CD 1(42PQ+XdGNN-KL,htW\\.JK)8D',,+GH+XdGOO-LMT[[)0dDHHdD$..$GI
 /dDHHdD$**dCE+dDJJdnn=? $4LA!
QJFX-r@   r(   c                      \ rS rSrSrSrSrS/rS/rS/r	\
R                  rS rS	 rS
\" \\\R&                  5      4S\" \R&                  \5      4S\" \R(                  \5      4S\" \\\\" \SS95      4S\" \\\5      4S\" \R0                  5      4S\" \R2                  5      4S\" \R6                  5      4S\" \R0                  5      4S\" \\\5      4S\4S\4\" S5      \" S5      /\" SSSS9\4/S\4S\R>                  4S\" \\R2                  \5      4S \" \\R2                  5      4S!\" \\R2                  5      4S"\" \\R0                  5      4S#\" \\R0                  \5      4S$\" \\R@                  \5      4S%\R6                  4S&\R6                  4S'\R6                  4S(\R6                  4S)\R6                  4S*\RB                  4S+\RD                  4S,\" \\R6                  \5      4S-\" \\R6                  \\RF                  \5      4S.\" \\R6                  \5      4S/\" \RF                  5      4S0\4S1\4/S2.r$S3 r%S4r&g5)6r)   in  z0
For TiddlyWiki5 markup.

.. versionadded:: 2.7
tiddlerz$https://tiddlywiki.com/#TiddlerFilestidz*.tidztext/vnd.tiddlywikic              #     #    SSK Jn  UR                  S5      [        UR	                  S5      4v   UR                  S5      [        UR	                  S5      4v   UR                  S5      [
        UR	                  S5      4v   SnU R                  (       a&   U" UR	                  S5      R                  5       5      nUR	                  S5      nUc  UR                  S5      [        U4v   g[        / UR                  U5      5       Sh  vN   UR                  S5      [        UR	                  S5      4v   g! [         a     Nf = f N>7f)	zF
match args: 1:backticks, 2:lang_name, 3:newline, 4:code, 5:backticks
r   rX   rZ   r[   r\   Nr]   r^   )rf   rY   rg   r   rh   r   rj   rk   r   r   ro   r   s        rA   r   "TiddlyWiki5Lexer._handle_codeblock{  s     	6 kk!nfekk!n44kk!nfekk!n44kk!ndekk!n44   )%++a.*>*>*@A {{1~ =++a.&$.. U%A%A$%GHHHkk!nfekk!n44 !  	Is7   BE%D9 =AE
E	.E9
EEEEc              #     #    SSK Jn  UR                  S5      [        UR	                  S5      4v   UR                  S5      [        UR	                  S5      4v   SnU R
                  (       a	   U" S5      nUR	                  S5      nUc  UR                  S5      [        U4v   g[        / UR                  U5      5       Sh  vN   UR                  S5      [        UR	                  S5      4v   g! [         a     Nf = f N>7f)	z@
match args: 1:style tag 2:newline, 3:code, 4:closing style tag
r   rX   rZ   r[   Ncssr\   r]   )	rf   rY   rg   r   rh   rj   r   r   ro   r   s        rA   _handle_cssblock!TiddlyWiki5Lexer._handle_cssblock  s      	6 kk!nfekk!n44kk!nfekk!n44  )%0 {{1~ =++a.&$.. U%A%A$%GHHHkk!nfekk!n44 !  	Is7   A,D/C3 7ADD.D3
D =D?D  Dz^(title)(:\s)(.+\n)z^(!)([^!].+\n)z^(!{2,6})(.+\n)z^(\s*)([*#>]+)(\s*)(.+\n)r{   r|   z^(<<<.*\n)([\w\W]*?)(^<<<.*$)z^(\|.*?\|h)$z^(\|.*?\|[cf])$z^(\|.*?\|k)$z^(;.*)$z^(```\n)([\w\W]*?)(^```$)z ^(```)(\w+)(\n)([\w\W]*?)(^```$)z$^(<style>)(\n)([\w\W]*?)(^</style>$)keywords)z\definez\endcaptioncreatedmodifiedtagstitletype^z\b)prefixsuffixr~   z\d{17}z(\s)(//[^/]+//)((?=\W|\n))z(\s)(\^\^[^\^]+\^\^)z(\s)(,,[^,]+,,)z(\s)(__[^_]+__)z(\s)(''[^']+'')((?=\W|\n))z(\s)(~~[^~]+~~)((?=\W|\n))z	<<[^>]+>>z\$\$[^$]+\$\$z\$\([^)]+\)\$z^@@.*$z	</?[^>]+>z`[^`]+`&\S*?;z(\[{2})([^]\|]+)(\]{2})z$(\[{2})([^]\|]+)(\|)([^]\|]+)(\]{2})z(\{{2})([^}]+)(\}{2})z(\b.?.?tps?://[^\s"]+)z[\w]+rG   )r3   r  r{   c                 V    [        USS5      U l        [        R                  " U 40 UD6  g r   r   r   s     rA   r   TiddlyWiki5Lexer.__init__  r   r@   r   N)'r5   r6   r7   r8   r9   r:   r   r;   rH   r<   rI   rJ   rL   r   r   r   r   r   r   rM   r   r   r   r   r   r   r   r   r
   r   r   Integerr   r   Regexr=   r>   r   r?   r4   r@   rA   r)   r)   n  s   
 D
0CgG	I&'ILLE5:5< $XgtW__%MN$ ?@'*<*<d!CD *dGT5X+FGI .xf/MNhw~~67',,!78htxx01'..12)8FD&+IJ02CD46FGJH9
>  !)-e= 
 TN'*dGLL$/1 %htW\\&BC$!=>$!?@*dGNND13 +dGOOT24 488$txx(txx(!488$)%'$$)GH4T488T4>>4@B &xdhh'EF&(@A t4LY-
KSFj-r@   r)   c                      \ rS rSrSrSrSrSS/r/ rS/r	\
R                  rS rS	 rS
 rS rS rS rSrSrSrSr1 Skr1 Skr1 Skr\S1-
  r1 Skr1 Skr1 Skr1 Skr1 Skr1 Skr 1 Skr!0 SS\"" \#\$\#\%5      S4S \"" \&RN                  \&RN                  \&RN                  \#5      4S!\"" \&RP                  \#5      4\)" \S"S#9\*RV                  RX                  4\)" \5      \*RV                  RX                  4S$R[                  S%R]                  \5      \\5      \*R^                  4S&R[                  \5      \*RV                  RX                  4S'R[                  \S(\ S)3S*9\*RV                  RX                  4\0" S+5      \0" S,5      \0" S-5      /_SS.\"" \%\#5      S/4S0\"" \%\*R^                  5      4S1R[                  \5      \*Rb                  4/_S+S2\$S34S4\$4S5\$4/_S,/ S6\$4P\0" S75      PS8\"" \&Rd                  \&Rf                  5      S94PS:\&Rh                  S;4PS<\&Rd                  S=4P\0" S>5      PS?\< S@\ SA3< SB3\"" \%\*Rj                  \%\6" \7SC/SD9\%\*R^                  5      SE4PSFS%R]                  \5      < SG\Rq                  SHSI5      < SJ\< SK\ SA3< SL3	\"" \%\*Rj                  \%\6" \7SC/SD9\%\*R^                  \%5      4PSFS%R]                  \5      < SM\Rq                  SHSI5      < SJ\< SK\ SA3< SN3	\"" \%\*Rj                  \%\6" \7SC/SD9\%\*R^                  \%5      SO4PSPR[                  S%R]                  \5      \\5      \"" \%\*R^                  \#5      SQ4PSR\"" \$\#\%\6" \7SSS/SD95      ST4PSUR[                  S%R]                  \5      5      \"" \%\*Rb                  5      SV4PSWR[                  S%R]                  \5      5      \"" \%\*Rb                  \#\%5      4PSX\"" \%\*Rb                  5      SY4PSZ\"" \%\*Rb                  5      S[4PS\\"" \%\*Rb                  5      S]4PS^\"" \%\*Rb                  5      S_4PS`\"" \%\*Rb                  5      Sa4PSb\"" \%\*Rb                  5      Sc4PSd\"" \%\*Rb                  5      Se4PSf\"" \%\*Rb                  5      Sg4PSh\"" \%\*Rb                  5      Si4PSj\"" \%\*Rb                  5      Sk4PSj\"" \%\*Rb                  5      Sl4PSm\"" \%\*Rb                  5      Sn4PSo\"" \%\*Rb                  5      Sp4PSq\"" \%\*Rb                  5      Sr4PSs\"" \%\*Rb                  5      St4PSu\"" \%\*Rb                  \#\%5      4PSv\"" \%\*Rb                  \5      4PSw\"" \%\*Rb                  \#\6" \7SSS/SD9\%5      4PSx\"" \%\*Rb                  \#\%5      4PSy\"" \%\*Rb                  \5      4PSz\"" \%\*Rb                  \#\6" \7SSS/SD9\%5      4PS{\"" \%\*Rb                  \#\%5      4PS|\"" \%\*Rb                  \5      4PS}\"" \%\*Rb                  \#\6" \7SSS/SD9\%5      4PSUR[                  S%R]                  \5      5      \"" \%\*Rb                  5      SV4PSWR[                  S%R]                  \5      5      \"" \%\*Rb                  \#\%5      4PS~R[                  S%R]                  \5      S9\"" \%\$\%\*R^                  \9\*R^                  \%5      S4PS\%S4P_SC\0" S>5      S\*Rb                  4S\*Rb                  4/_SOS\%S/4S\%S/4\0" S,5      \0" S-5      /_SES\%S/4S\"" \%\*Rt                  \95      4S\%4\0" S,5      \0" S-5      /_SS\%S/4S\;S/4/_S=\0" S5      S8\"" \&Rd                  \&Rh                  5      S4S:\&Rf                  S4S<\&Rd                  S/4\0" S,5      \0" S5      /_S;\0" S5      S\"" \&Rh                  \&Rd                  5      S4S:\&Rh                  S/4S<\&Rf                  S4\0" S,5      \0" S5      /_S\0" S5      S8\"" \&Rf                  \&Rh                  5      S/4S:\&Rf                  S4S<\&Rf                  S4\0" S,5      \0" S5      /_S9\0" S5      S\"" \&Rf                  \&Rd                  5      S/4S:\&Rf                  S4S<\&Rf                  S4\0" S,5      \0" S5      /_SSR[                  S%R]                  \5      S9\"" \%\*R^                  \9\*R^                  \%5      4S\%S/4\0" S,5      \0" S-5      /_SS\%S/4\0" S,5      \0" S-5      /_S>S\<Rz                  4S\"" \%\*R|                  5      S4SS%R]                  \5      -  \"" \%\#\*RV                  \#\%5      4SS%R]                  \5      -  \"" \%\#\*RV                  \#\%5      4S\%S4S\"" \%\*Rb                  \%\?\%5      4S\%S/4S\"" \%\*Rb                  5      SV4S\"" \%\*Rb                  \#\%5      4/	_SS\%S/4S\%4\0" S,5      \0" S-5      /_SS\<Rz                  4S\#4S\< SS%R]                  \ 5      < S3\"" \*RV                  \%5      S4SS%R]                  \!5      -  \"" \*RV                  \%5      S4S\-  \"" \*Rj                  \%5      S4\@" S5      /_0 SS\"" \;\%5      S4S\%S/4S\;S/4\0" S>5      /\" \*Rb                  5      Q_SS\%S/4S\%4S\"" \*R^                  \95      4\0" S,5      \0" S-5      /_STS\"" \#\%5      S/4S\"" \#\%\6" \7SSS/SD95      4S\"" \#\%\6" \7SSS/SD9\%\&RP                  5      4S\"" \%\6" \7SSS/SD9\%5      4S\"" \%\6" \7SSS/SD9\%5      S4\0" S+5      \0" S,5      \0" S-5      /_SS\;S/4S\"" \%\6" \7SSS/SD9\%5      4/\" \&RN                  5      Q_S7S\*R                  4/_S3S\;S/4\0" S,5      S\$S/4\0" S-5      /_SQS\%S/4\0" S,5      \0" S-5      /_S\0" S75      \0" S-5      /_SS\0" S>5      S\#4S\"" \9\#\?R                  5      S4S\"" \9\#\?R                  5      S4S\"" \9\#5      S4S\*Rt                  4/_SS\#S/4\0" S>5      /\" \?5      Q_SS\?R                  S/4\0" S>5      /\" \?R                  5      Q_SS\?R                  S/4\0" S>5      /\" \?R                  5      Q_SVS\%S/4\0" S5      /_SS\%S4S\%S/4\0" S5      /_S\0" S>5      S\#4S\"" \9\#\?R                  5      S4S\"" \9\#\?R                  5      S4S\"" \9\#5      S4S\*Rt                  4/_SS\#S/4S\%S4\0" S>5      /\" \?5      Q_SS\?R                  S/4S\%S4\0" S>5      /\" \?R                  5      Q_E0 SS\?R                  S/4S\%S4\0" S>5      /\" \?R                  5      Q_S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S5      _S\" S\D5      _S\" S\D5      _S\" S\D5      _S\" S\E5      _E\" \&Rd                  5      \" \&Rh                  5      \" \&Rf                  5      \" \;5      S.ErFSrGg)r*   i  a  
For MediaWiki Wikitext.

Parsing Wikitext is tricky, and results vary between different MediaWiki
installations, so we only highlight common syntaxes (built-in or from
popular extensions), and also assume templates produce no unbalanced
syntaxes.

.. versionadded:: 2.15
Wikitextz'https://www.mediawiki.org/wiki/Wikitextwikitext	mediawikiztext/x-wikic                     SR                  U 5      [        [        [        R                  [
        [        5      S4[        S5      [        S5      /$ )N(?i)(</)({})(\s*)(>)r2   entityr   )formatr   r   r   r   r   r
   tag_names    rA   nowiki_tag_rulesWikitextLexer.nowiki_tag_rules  sE    $++H5xXXz;80179HFO	
 	
r@   c                     SR                  U 5      [        [        [        [        R
                  [        [        5      S4/$ )Nz(?si)(.*?)(</)({})(\s*)(>)r2   )r  r   r   r   r   r   r   r  s    rA   plaintext_tag_rules!WikitextLexer.plaintext_tag_rules'  s9    *11(;Xd$((J>=>DF
 	
r@   c                     SR                  U 5      [        [        [        R                  [
        [        5      S4SR                  U 5      [        U5      4/$ )Nr  r2   z(?si).+?(?=</{}\s*>))r  r   r   r   r   r   r   )r  rr   s     rA   delegate_tag_rules WikitextLexer.delegate_tag_rules-  sM    $++H5xXXz;80179$++H5uU|D
 	
r@   c                     SU 4SU 4SU 4/$ )Nr   z[^\S\n]+(?s).r4   )tokens    rA   
text_rulesWikitextLexer.text_rules4  s#    UO% u
 	
r@   c              #   j  #    SSK Jn  UR                  5       nSnSn UR                  SU5      nXFS-
  U S:w  a  OUS-   nM%  US:X  a  U R	                  USS	/S
9 S h  vN   g US U nU R	                  USS	/S
9 S h  vN   UR                  S5      U-   [        S4v   S nXFS-   S  n	[        R                  " SU5      n
[        U
5      S:  a  U
S   S   n U" U5      nUc   UR                  5       U-   S-   [        U	4v   g UR	                  U	5       S h  vN   g  N N! [         a     NMf = f N7f)Nr   rX   >r[   --rZ   r   r3   attrstackr\   \blang=("|\'|)(\w+)(\1))rf   rY   rh   r   ro   rg   r   rI   findallrl   r   r   )rp   rq   ctxrY   attr_contentrg   indexr+  rr   content
lang_matchr   s               rA   handle_syntaxhighlight$WikitextLexer.handle_syntaxhighlight;  sm    5{{} %%c51E!GE*d2AIE  B;22<PVGW2XXXFU#..tFF;K.LLLkk!nu$k366Qwx(ZZ :DA
z?ab>!$D)$/ =++-%'!+T7::33G<<<+ Y 	M !  =sU   AD3DD3>D?AD3D!  7D3D1D3D3!
D.+D3-D..D3c              #   B  #    UR                  5       nSnSn UR                  SU5      nX5S-
  U S:w  a  OUS-   nM%  US:X  a  U R                  USS/S	9 S h  vN   g US U nX5S-   S  nU R                  USS/S	9 S h  vN   UR                  S
5      U-   [        S4v   [
        R                  " SU5      n[        U5      S:  a  US   S   OSn	U	S:X  a"  [        5       R                  U5       S h  vN   g UR                  5       U-   S-   [        U4v   g  N N N)7f)Nr   r)  r[   r*  rZ   r   r3   r+  r,  r\   r.  lilypond)
rh   r   ro   rg   r   rI   r/  rl   r   r   )
rp   rq   r0  r1  rg   r2  r+  r3  r4  r   s
             rA   handle_scoreWikitextLexer.handle_scorea  sI    {{} %%c51E!GE*d2AIE  B;22<PVGW2XXXFU#Qwx(..tFF;K.LLLkk!nu$k366ZZ :DA
$'
Oq$8z"~a j:$==gFFF ++-%'!+T7:: Y 	M Gs7   ADD&D?D A3D3D4&DDDz0 %!"$&\'()*,\-./0-9:;=?@A-Z\\\^_`~+\u0080-\uFFFFzT(?:\t|&nbsp;|&\#0*160;|&\#[Xx]0*[Aa]0;|[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000])zb(?:[0-9.]+|\[[0-9a-f:.]+\]|[^\x00-\x20"<>\[\]\x7F\xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFFFD])zF[^\x00-\x20"<>\[\]\x7F\xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFFFD]>	   __TOC____NOCC____NOTC__	__NOTOC____FORCETOC____NOGALLERY____NOEDITSECTION____NOTITLECONVERT____NOCONTENTCONVERT__>
   	__INDEX____NOINDEX____DISAMBIG____NOGLOBAL____HIDDENCAT____NEWSECTIONLINK____STATICREDIRECT____NONEWSECTIONLINK____EXPECTUNUSEDCATEGORY____EXPECTED_UNCONNECTED_PAGE__>   //geo:sip:sms:tel:urn:news:sips:xmpp:ftp://git://irc://mms://ssh://svn://ftps://http://ircs://magnet:mailto:nntp://sftp://bitcoin:https://redis://	gopher://	telnet://worldwind://rN  ><   bipqsubrdddldtemh1h2h3h4h5h6hrliolrbrprttdthtrttulbdibdobigdeldfndivrv   kbdrtcsubsupvarwbrabbrciteru   datafontlinkmarkmetarubysampspantimesmalltablecenterstrikestrongr  
blockquote>    ceprerefrsschemr   poemtvargraphhieroscorenowikigallerymaplinksectionimagemapinputboxmapframetimeline	languages	noinclude	translate
charinsert
referencesincludeonlylangconvertonlyincludecategorytreetemplatedatatemplatestylesdynamicpagelistsyntaxhighlight>2   eniukkkusrtguzzhbancrhganshitlykk-cnkk-kzkk-trsr-ecsr-elzh-cnzh-hkzh-mozh-myzh-sgzh-twkk-arabkk-cyrlkk-latnku-arabku-latnsh-cyrlsh-latntg-latnuz-cyrluz-latnzh-hanszh-hantban-balicrh-cyrlcrh-latngan-hansgan-hantike-cansike-latnshi-latnshi-tfngtly-cyrl	ban-x-pkuban-x-dharmaen-x-piglatinban-x-palmleaf>   INTPAGEIDSERVER	STYLEPATH
SCRIPTPATH
SERVERNAMEARTICLEPATH>Q   r   =DIRMARKLOCALDAYLOCALDOWPAGENAMESITENAME	LOCALDAY2	LOCALHOUR	LOCALTIME	LOCALWEEK	LOCALYEAR	NAMESPACE	PAGENAMEE	TALKSPACE
CURRENTDAY
CURRENTDOW
LOCALMONTH
NAMESPACEE
REVISIONID
TALKSPACEECONTENTLANGCURRENTDAY2CURRENTHOURCURRENTTIMECURRENTWEEKCURRENTYEARLOCALMONTH1LOCALMONTH2REVISIONDAYSUBPAGENAMEARTICLESPACEBASEPAGENAMECURRENTMONTHFULLPAGENAMELOCALDAYNAMEPAGELANGUAGEREVISIONDAY2REVISIONSIZEREVISIONUSERREVISIONYEARROOTPAGENAMESUBJECTSPACESUBPAGENAMEETALKPAGENAMEARTICLESPACEEBASEPAGENAMEECURRENTMONTH1CURRENTMONTH2DIRECTIONMARKFULLPAGENAMEENUMBEROFEDITSNUMBEROFFILESNUMBEROFPAGESNUMBEROFUSERSREVISIONMONTHROOTPAGENAMEESUBJECTSPACEETALKPAGENAMEECURRENTDAYNAMECURRENTVERSIONLOCALMONTHNAMELOCALTIMESTAMPNUMBEROFADMINSREVISIONMONTH1ARTICLEPAGENAMECONTENTLANGUAGENAMESPACENUMBERSUBJECTPAGENAMEARTICLEPAGENAMEECASCADINGSOURCESCURRENTMONTHNAMECURRENTTIMESTAMPLOCALMONTHABBREVNUMBEROFARTICLESSUBJECTPAGENAMEELOCALMONTHNAMEGENREVISIONTIMESTAMPCURRENTMONTHABBREVCURRENTMONTHNAMEGENNUMBEROFACTIVEUSERS>   LCNSUCr  NSEBIDIGENDERr  PLURALFULLURLGRAMMARLCFIRSTPADLEFTUCFIRSTFILEPATHFULLURLELOCALURLPADRIGHT	FORMATNUM	LOCALURLE	URLENCODEANCHORENCODECANONICALURLCANONICALURLE
\#LANGUAGE>7   r  r  PAGESIZEr  r  	PAGESINNSr  r  
NUMINGROUP
PAGESINCATr  r  DEFAULTSORTr  r  r  r  DISPLAYTITLEr  r  r!  r"  r#  r$  r%  r&  r'  r(  r,  NUMBERINGROUPr-  r.  r/  r0  r1  r2  r3  r4  DEFAULTSORTKEYr9  r:  r;  r=  PAGESINCATEGORYPROTECTIONLEVELr>  r?  r@  rD  PAGESINNAMESPACEPROTECTIONEXPIRYrE  rG  DEFAULTCATEGORYSORTrJ  r3   z~(?xi)
                (\A\s*?)(\#REDIRECT:?) # may contain a colon
                (\s+)(\[\[) (?=[^\]\n]* \]\]$)
            zredirect-innerz^(={2,6})(.+?)(\1)(\s*$\n)z^(=.+?=)(\s*$\n)z(?i))r
  z(?i)\b(?:{}){}{}*|z\b(?:RFC|PMID){}+[0-9]+\bz(?x)
                \bISBN {nbsp_char}
                (?: 97[89] {nbsp_dash}? )?
                (?: [0-9] {nbsp_dash}? ){{9}} # escape format()
                [0-9Xx]\b
            z(?:-|))	nbsp_char	nbsp_dashlistr{   r   z(\]\])(\s*?\n)r2   z(\#)([^#]*?)z	(?i)[{}]+z^;rs  z^[#:*]+z^-{4,}z~{3,5}r  z('')(''')(?!')inline-italic-boldz'''(?!')inline-boldz''(?!')inline-italicreplaceablez\(?xi)
                (\[\[)
                    (File|Image) (:)
                    ((?: [zO] | \{{2,3}[^{}]*?\}{2,3} | <!--[\s\S]*?--> )*)
                    (?: (\#) ([#z]*?) )?
                zwikilink-namer|   zmedialink-innerz(?xi)
                (\[\[)(?!z6) # Should not contain URLs
                    (?: ([/re   z$]*) (:))?
                    ((?: [zP] | \{{2,3}[^{}]*?\}{2,3} | <!--[\s\S]*?--> )*?)
                    (?: (\#) ([z/]*?) )?
                (\]\])
                z)
                    (?: ([z1]*?) )?
                    (\|)
                zwikilink-innerzi(?xi)
                (\[)
                    ((?:{}) {} {}*)
                    (\s*)
                zextlink-innerz^(:*)(\s*?)(\{\|)([^\n]*)$r+  r  z(?i)(<)({})\bztag-inner-ordinaryz(?i)(</)({})\b(\s*)(>)z(?i)(<)(nowiki)\b)
tag-nowiki	tag-innerz(?i)(<)(pre)\b)tag-prer{  z(?i)(<)(categorytree)\b)tag-categorytreer{  z(?i)(<)(hiero)\b)	tag-hieror{  z(?i)(<)(math)\b)tag-mathr{  z(?i)(<)(chem)\b)tag-chemr{  z(?i)(<)(ce)\b)tag-cer{  z(?i)(<)(charinsert)\b)tag-charinsertr{  z(?i)(<)(templatedata)\b)tag-templatedatar{  z(?i)(<)(gallery)\b)tag-galleryr{  )	tag-graphr{  z(?i)(<)(dynamicpagelist)\b)tag-dynamicpagelistr{  z(?i)(<)(inputbox)\b)tag-inputboxr{  z(?i)(<)(rss)\b)tag-rssr{  z(?i)(<)(imagemap)\b)tag-imagemapr{  z#(?i)(</)(syntaxhighlight)\b(\s*)(>)z9(?si)(<)(syntaxhighlight)\b([^>]*?(?<!/)>.*?)(?=</\2\s*>)z?(?i)(<)(syntaxhighlight)\b(\s*?)((?:[^>]|-->)*?)(/\s*?(?<!--)>)z(?i)(</)(source)\b(\s*)(>)z0(?si)(<)(source)\b([^>]*?(?<!/)>.*?)(?=</\2\s*>)z6(?i)(<)(source)\b(\s*?)((?:[^>]|-->)*?)(/\s*?(?<!--)>)z(?i)(</)(score)\b(\s*)(>)z/(?si)(<)(score)\b([^>]*?(?<!/)>.*?)(?=</\2\s*>)z5(?i)(<)(score)\b(\s*?)((?:[^>]|-->)*?)(/\s*?(?<!--)>)z(?xi)
                (-\{{) # Escape format()
                    (?: ([^|]) (\|))?
                    (?: (\s* (?:{variants}) \s*) (=>))?
                    (\s* (?:{variants}) \s*) (:)
                )variantszlc-innerz	-\{(?!\{)zlc-rawz[^{<]+r$  z(?=\[\[)z\]\]z(\|)([^\n=|]*)(=)z\|zquote-commonz(?=\]\]|\{\{|\}\})rF   )r2   ru  )r2   rt  text-italicz(''')('')(?!'))r2   rv  )r2   inline-bold-italic	text-boldr  text-bold-italicz(?xi)
                (;)
                (?: (\s* (?:{variants}) \s*) (=>))?
                (\s* (?:{variants}) \s*) (:)
                z	;?\s*?\}-z\}-z<!--[\s\S]*?(?:-->|\Z)zk(?x)
                (\{{3})
                    ([^|]*?)
                    (?=\}{3}|\|)
                zparameter-innerz(?i)(\{\{)(\s*)(%s)(\s*)(\}\})z(\{\{)(\s*)(%s)(\s*)(\}\})z\{\{ztemplate-begin-spacez(?i)(<)(tvar)\b(\|)([^>]*?)(>)z</>z(?i)(<)(tvar)\bz(?i)(</)(tvar)\b(\s*)(>)z\}{3}r0   z(?i)(\#[z]*?|z)(:))r2   template-innerz(%s)(:)z(?i)([%s]*?)(:))r2   template-namer  z
(\s*?)(\|)z\}\}r  z(?x)
                    (?<=\|)
                    ( (?: (?! \{\{ | \}\} )[^=\|<])*? ) # Exclude templates and tags
                    (=)
                z^([ \t\n\r\0\x0B]*?)(\|\})z^([ \t\n\r\0\x0B]*?)(\|-+)(.*)$z(?x)
                ^([ \t\n\r\0\x0B]*?)(\|\+)
                # Exclude links, template and tags
                (?: ( (?: (?! \[\[ | \{\{ )[^|\n<] )*? )(\|) )?
                (.*?)$
                z(?x)
                ( ^(?:[ \t\n\r\0\x0B]*?)\| | \|\| )
                (?: ( (?: (?! \[\[ | \{\{ )[^|\n<] )*? )(\|)(?!\|) )?
                z(?x)
                ( ^(?:[ \t\n\r\0\x0B]*?)!  )
                (?: ( (?: (?! \[\[ | \{\{ )[^|\n<] )*? )(\|)(?!\|) )?
                ztable-headerz(?x)
                (!!|\|\|)
                (?:
                    ( (?: (?! \[\[ | \{\{ )[^|\n<] )*? )
                    (\|)(?!\|)
                )?
                r  :r1   z
nowiki-ishz(=)(\s*)(")z
attr-val-2z(=)(\s*)(')z
attr-val-1z(=)(\s*)z
attr-val-0z[\w:-]+z\s'"z/?\s*>ztag-attrr{  z/\s*>r   z\s*>ztag-attr-val-2ztag-attr-val-1ztag-attr-val-0z/?>rz  r  r|  r  r}  r  r  r  r~  r  r  r  r  r  r  r  ztag-timeliner  r  r  r  r  r  r  r  r   r  r  r  r  r  r  )r  r  r  r   r4   N)Hr5   r6   r7   r8   r9   r:   r   r;   rH   r<   rI   rJ   rL   r  r  r!  r&  r5  r9  
title_charrq  link_addresslink_char_classdouble_slashes_idouble_slashes	protocolsnon_relative_protocols	html_tagsparser_tagsvariant_langsmagic_vars_i
magic_varsparser_functions_iparser_functionsr   r   r   r   r   r   rM   r   r   FunctionMagicr  joinr   r
   r   r   
EmphStrongr   rO   r   r   replacer   r=   r   r   	Multiliner   r   r   r   r   Singler!   r   r>   r?   r4   r@   rA   r*   r*     s\   	 D
3C;'GIILLE



$=L;> EJgIxL_ON
I '$/IKM<LJ"I j':{CEU	W +g(('*<*<g>P>PR\]_ !gooz24 #G4dmm6I6IJ>"DMM$7$78!(())<?,-1ZZ9 *00;]]  "
 i[6JKT]]M`M`b FOHFO=
IB 	j A6Jh{DJJ?@  ,dhh7
CIL 	GT"! 
MI\ 	 [
 [
 H	[
 !!"68[
 '..-8[
 7[
 M"[
& "j\#35 dnn{tO+<={DJJX!
[
@ xx	*J,>,>sB,G%*Q'79 dnn{tO+<={DJJXce3[
X xx	*J,>,>sB,G%*Q'79 dnn{tO+<={DJJXce K[
h F388I.oNdjj*=g[
z +HWeD8H&I-KLSU{[
@ $$SXXi%89k488,.BDA[
D '--chhy.ABk488ZEGE[
J "8KXX$35K[
P XX!02Q[
V (TXX*'(IKW[
\ !(;XX#24][
b  +XX"13c[
h  +XX"13i[
n xXX /1o[
t &xTXX('(GIu[
z (TXX*'(IK{[
@ #HTXX%'(DFA[
F #HTXX%'(BDG[
L +HTXX-'(LNM[
R $XTXX&'(EGS[
X TXX!'(@BY[
^ $XTXX&'(EG_[
d 4k488ZEGe[
h Jk488-CDFi[
n PQYTXXz5ffEU3VXcRe fo[
t +k488ZEGu[
x Ak488-CDFy[
~ GTXXz5ffEU3VXcIe f[
D *k488ZEGE[
H @k488\:<I[
N FxTXXz5ffEU3VXcHe fO[
T $$SXXk%:;k488,.BDU[
X '--chh{.CDk488ZEGY[
`
 FCHH]$;F<g{Xtzz;H
_[
t ;1u[
]IT 	M"!txx 
UI^ 	+v.k6*HFO
_Il 	k6*!k4>>8<>K HFO
mI| 	"K8D&!
}IF 	N#^^!57',,.LMv.HM"
GIX 	N#!./HJ'..&1++-KLHK 
YIj 	N#););^^!$&',,.GH++-DEH&'
kI| 	N#""GLL!239;',,.GH++-DEH&'
}IN 	 FCHH]$;F<djj!4::{< ;/HFO
OIj 	[&)HFO
kIt 	&(9(9:
 dmm4! /,1GGk:t}}j+VX*SXXj-AAj$--[Y[ k#9:.XX{FK19 :[&)+txx!@BVW(k488ZEG5
uIn	 	{F+K HFO	
o	Iz	 	 '(9(9:Z  ,6+.884F+GI46P chh'78946P #Z/57P -/)!
{	If
 	HT;79STk6*D&!M"	

 !
g
It
 	k6*K 
 X. HFO
u
IP 	 +j+.8 0*k4/022 3 [%E) 3*+6I	 eD9) '*+68 eD9) '*+68 FOHFOQ)
QId 	D&! eD9) '*+68

 **+
eID 	$
EIJ 	D&!H7F#FO	
KIV 	K(HFO
WI` 	HFO
aIh 	M"Z Xh
FMMJLYXh
FMMJLY(8Z8,G(
iIz 	J'M"
 
{ID 	6==&)M"
 &
EIN 	6==&)M"
 &
OIX 	V,J
YI` 	{H-k6*J	
aIp 	M"Z Xh()9;Xh()9;(8Z8:JK(

qIF 	J'[(+M"
 	
GIR 	6==&)[(+M"
 &	
SI^ 	6==&)[(+M"
 &	
_Ij 	&x0kIl 	#E*mIn 	/?oIp 	23DEqIr 	(1sIt 	+J7uIv 	+J7wIx 	-l;yIz 	+J7{I| 	*95}I~ 	(1I@ 	&u-AIB 	&vx8CID 	&vx8EIF 	$T84GIH 	.~yIIIJ "',,//&w'9'9:4 QIFr@   r*   )3r9   rI   pygments.lexers.htmlr   pygments.lexers.javascriptr   pygments.lexers.cssr   pygments.lexers.lilypondr   pygments.lexers.datar   pygments.lexerr   r	   r
   r   r   r   r   r   r   pygments.tokenr   r   r   r   r   r   r   r   r   r   r   pygments.utilr   r   __all__r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r4   r@   rA   <module>r     s    
 ) 6 ( 2 */ / /4 4 4 4 5W* B*J *Zez eP7z 7t5 5p&* &R0 *C C J J F F v-J v-r\-z \-~dJ dr@   