
    Mh@                     R   d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZmZmZmZmZmZmZmZmZ dd	lmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z" dd
l#m$Z$m%Z% g dZ& G d de          Z' G d de          Z( G d de          Z) G d de          Z* G d de          Z+ G d de          Z, G d de,          Z- G d de          Z. G d de          Z/ G d de          Z0 G d  d!e          Z1 G d" d#e          Z2 G d$ d%e          Z3 G d& d'e          Z4dS )(z
    pygments.lexers.markup
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for non-HTML markup languages.

    :copyright: Copyright 2006-2025 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Literal)get_bool_optClassNotFound)BBCodeLexerMoinWikiLexerRstLexerTexLexer
GroffLexerMozPreprocHashLexerMozPreprocPercentLexerMozPreprocXulLexerMozPreprocJavascriptLexerMozPreprocCssLexerMarkdownLexerOrgLexerTiddlyWiki5LexerWikitextLexerc                       e Zd ZdZdZdgZdgZdZdZde	fde
d	fd
e	fgde	fd eej        ee          fd eee          fde
dfgdZdS )r   z7
    A lexer that highlights BBCode(-like) syntax.
    BBCodebbcodeztext/x-bbcodezhttps://www.bbcode.org/0.6z[^[]+z\[/?\w+tagz\[\s+z(\w+)(=)("?[^\s"\]]+"?)z(=)("?[^\s"\]]+"?)\]#pop)rootr1   N)__name__
__module____qualname____doc__namealiases	mimetypesurlversion_addedr   r   r   r   	Attributer   r   tokens     V/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/markup.pyr   r       s          DjG !I
#CM t%(DM
 TN'Xdnh779 #Xh'') GV$

 FFFrB   r   c                      e Zd ZdZdZddgZg ZdgZdZdZ	e
j        e
j        z  Zdefd	 eee          fd
 eej         ee          ej        e          fd eej        ej                  dfdefd eeej        e          fd eeej        e          fdefd eeee          fdefdefdefdefgdej        dfdedfdej        fdej        fgdZdS )r    z.
    For MoinMoin (and Trac) Wiki markup.
    zMoinMoin/Trac Wiki markupz	trac-wikimoinztext/x-trac-wikizhttps://moinmo.in0.7z^#.*$z(!)(\S+)z^(=+)([^=]+)(=+)(\s*#.+)?$z(\{\{\{)(\n#!.+)?	codeblockz(\'\'\'?|\|\||`|__|~~|\^|,,|::)z^( +)([.*-])( )z^( +)([a-z]{1,5}\.)( )z\[\[\w+.*?\]\]z(\[[^\s\]]+)(\s+[^\]]+?)?(\])z^----+$z[^\n\'\[{!_~^,|]+\n.z\}\}\}r4   z\{\{\{z#pushz[^{}]+)r5   rG   N)r6   r7   r8   r9   r:   r;   	filenamesr<   r=   r>   re	MULTILINE
IGNORECASEflagsr   r   r   r   r   Headingr   r   r   r   Builtin	NamespacePreprocr@   rA   rB   rC   r    r    A   si         'DF#GI#$I
CML2=(E w((7D112*XgouuT{{GOVLLN "88DL$.#I#I;W/9$d!C!CD&t|T(J(JK(-Xgvw//1!!4(DM4L'
, f-g&(7?#
- FFFrB   r    c                      e Zd ZdZdZdZg dZddgZddgZd	Z	e
j        Zd
 ZdZdZd e
j        e            e
j        e           dZd eej        eej        eej        e          fd eej        eej        e          fd eee eed                    fd eee eed                    fd eee eed                    fd eee eed                    fd eee eed                    fd eee eed                    fdefd eeeej        ee eed                    fd eeeej         eed                    fd eeeej         eed                    fd eeeej        eej        ee eed                    fdefd eeej        e          fd  e eed           eed                    fd! ee j!        ee e ee           f e"d          gd"efd#e d$fd% ee e j#        e           fd&e fd' eej$        ej%                  fd( eej%        ej$                  fd)ej&        fd*ej'        fd+e fd,ej        fd-efd.efgd/e fd#ez   e d0fd1e fgd2Z(d3 Z)d4 Z*d5S )6r!   aS  
    For reStructuredText markup.

    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.rstrF   c           	   #     K   ddl m} |                    d          t          |                    d          fV  |                    d          t
          |                    d          fV  |                    d          t          j        |                    d          fV  |                    d          t          |                    d          fV  |                    d          t
          |                    d          fV  |                    d          t          |                    d          fV  |                    d	          t
          |                    d	          fV  d }| j	        rB	  ||                    d          
                                          }n# t          $ r Y nw xY w|                    d
          }t          |          }||                    d          z   |                    d          z   |                    d          z   }|!|                    d
          t          |fV  d S g }|                    d          }d}|D ]]}	t          |	          |k    rC|                    t          |          dt
          |	d |         fgf           ||	|d          z  }X||	z  }^t!          ||                    |                    E d {V  d S )Nr   get_lexer_by_name                        	   
      T )pygments.lexersrZ   startr   groupr   r   Wordr   handlecodeblocksstripr   lenr   
splitlinesappendr   get_tokens_unprocessed)
selfmatchrZ   lexer	indentionindention_sizecodeins	codelineslines
             rC   _handle_sourcecodezRstLexer._handle_sourcecode   s     555555 kk!nnk5;;q>>9999kk!nndEKKNN2222kk!nnhmU[[^^;;;;kk!nnk5;;q>>9999kk!nndEKKNN2222kk!nngu{{1~~5555kk!nndEKKNN2222   	))%++a..*>*>*@*@AA    KKNN	YEKKNN*U[[__<u{{2N =++a..&$....F OOD))	 	 	D4yy>))

CIID$2G(H'IJKKK^__-- e&B&B4&H&HIIIIIIIIIIIs   60F' '
F43F4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[^\\\n\[*`:]+rI   z[^`]+r4   `)r5   r{   r   c                 V    t          |dd          | _        t          j        | fi | d S Nrk   Tr   rk   r   __init__rq   optionss     rC   r   zRstLexer.__init__  6     ,W6H$ O OD,,G,,,,,rB   c                    | d d         dk    r| dd         dk    rdS |                      d          }|                      d|dz             }|dk    r3|dz  dz   |k    r)| |dz            d	v r| |dz            | |dz
           k    rd
S d S d S d S d S )Nr\   z..r]   rI   g333333?
r[   z-=g      ?)find)textp1p2s      rC   analyse_textzRstLexer.analyse_text  s    8tQqS	S 0 03YYt__YYtR!V$$GGQ
b  RT
d""RT
d2a4j((3	 G  ""((rB   N)+r6   r7   r8   r9   r:   r=   r;   rJ   r<   r>   rK   rL   rN   rz   closersunicode_delimitersescapeend_string_suffixr   r   rO   r   r   r   r   r   r   rj   r   Tagr   Classr   Escaper
   InterpolVariabler?   StrongEmphr@   r   r   rA   rB   rC   r!   r!   o   si         D
4C111G(#I9:IMLE&J &J &JR *G?kYRY?Q5R5RkT]TVT]^eTfTfkkk
!XgotW_GOT3 34
<XgotW_dCCE 2XdFEE$h$?$?$?@@B BXdFEE$h$?$?$?@@BDXdFEE$h$?$?$?@@B 5XdFEE$h$?$?$?@@B:XdFEE$h$?$?$?@@B /XdHeeD&A&A&ABBD?! =Xk4TeD1113 34 8Xk455X3N3N3NOOQ -Xk455X3N3N3NOOQ JXk44!4t8)D)D)DF FG +G4;XdDJ--/ 2XeeD11155X3N3N3NOOQ CXfmT664HHJGHo8
t TNFI&#Xffov668&!+XdmT^446*Xdndm446W^,&&!tx t$4L
$ v&&76N
WP PFd- - -	 	 	 	 	rB   r!   c            
          e Zd ZdZdZddgZg dZddgZdZd	Z	d
e
fdej        fdej        fgdej        dfdedfdej        dfdedfdedfdef ed          defgdej        f ed          defdefdej        fgdedfdedf ed          gdedfdedfdej        f ed          gd ej        fd!ef ed          gd"Zd# Zd$S )%r"   z<
    Lexer for the TeX and LaTeX typesetting languages.
    TeXtexlatex)z*.texz*.auxz*.tocz
text/x-texztext/x-latexzhttps://tug.orgrf   z%.*?\nz[{}]z[&_^]z\\\[displaymathz\\\(
inlinemathz\$\$z\$z\\([a-zA-Z@_:]+|\S?)commandz\\$generalz[^\\$%&_^{}]+z\\([a-zA-Z]+|\S?)[0-9]+z[-=!+*/()\[\]]z[^=!+*/()\[\]\\$%&_^{}0-9-]+z\\\)r4   mathz\\\]z\[.*?\]\*)r   r5   r   r   r   r   c                 L    dD ] }| d t          |                   |k    r dS !d S )N)z\documentclassz\inputz\documentstylez\relaxT)rm   )r   rh   s     rC   r   zTexLexer.analyse_textI  sC    ! 	 	EKSZZK E))tt *	 	rB   N)r6   r7   r8   r9   r:   r;   rJ   r<   r=   r>   r   r   rP   r   Backtickr   r
   r   r   r   r   r?   r   r@   r   rA   rB   rC   r"   r"     s         DgG+++I~.I
CM  dl#t|$
 fo}5fl+fo}5FL)$gy9WGIt$	
 "4=1GI),dl;
 ff%FF#GFOO
 ff%ff%DL!GFOO	
 (GGFOO
E' 'FR    rB   r"   c            
       8   e Zd ZdZdZg dZg dZddgZdZdZ	d	 e
ee          d
fded
fdedf ed          g ed          defdedfgdefdej        fdej        fdej        fdej        fded
fgdedf ed          dej        fdefdefdefgdZd ZdS )r#   z
    Lexer for the (g)roff typesetting language, supporting groff
    extensions. Mainly useful for highlighting manpage sources.
    Groff)groffnroffman)z*.[1-9]z*.manz*.1pz*.3pmzapplication/x-troffz
text/troffz"https://www.gnu.org/software/groffr0   z	(\.)(\w+)requestz\.z[^\\\n]+textlineescapesrH   r4   z	\\"[^\n]*z\\[fn]\wz\\\(.{2}z	\\.\[.*\]r~   z\\\nz	"[^\n"]+"z\d+z\S+r2   )r5   r   r   r   c                     | d d         dk    rdS | d d         dk    rdS | d d         dk    rdS | dd                                          r| d                                         rd	S d S d S )
Nr[   rI   Fr]   z.\"Tr^   z.TH g?)isalnumisspace)r   s    rC   r   zGroffLexer.analyse_text}  s    8s??58v48v4!9 	47??#4#4 	3	 	 	 	rB   N)r6   r7   r8   r9   r:   r;   rJ   r<   r=   r>   r   r   r   r   r   r
   r   r   r   Doubler   r@   r   rA   rB   rC   r#   r#   P  sO        
 D'''G555I&5I
.CM 88D'22I>K+$
+GJ
 GI$D&!
 7#&-(&-(6=)V]#dI&
 D&!GI6=)VVTN
- F@    rB   r#   c                      e Zd ZdZdZegZg Zg ZdZdZ	de
j        dfdefgd ee
j        e          d	f ed
          e
j        dfg ed          efd eee          fdefdej        fdej        fdej        fdefdedfdefdefg
dZdS )r$   zk
    Lexer for Mozilla Preprocessor files (with '#' as the marker).

    Other data is left untouched.
    mozhashpreprocKhttps://firefox-source-docs.mozilla.org/build/buildsystem/preprocessor.html2.0z^#expr	exprstart.+z(literal)(.*)#pop:2)defineundefififdefifndefelseelifelifdefelifndefendifexpandfilterunfilterr
   includesubsterrorr4   )!z!=z==z&&z||z(defined)(\()z\)r   z__\w+?__z@\w+?@\w+rH   r2   z\S)r5   r   r   N)r6   r7   r8   r9   r:   r;   rJ   r<   r=   r>   r   rR   r   r   r   r   r   r   r   r   Decimalr   r   r   r@   rA   rB   rC   r$   r$     s        
 DfGII
WCM GO%:;EN

 xx>>IU 4 5 5 _f	&
 U0118<xx==>K '$-(
#TND&!TNK 
 FFFrB   r$   c                   L    e Zd ZdZdZegZg Zg ZdZdZ	dde
j        dfdefgiZd	S )
r%   zk
    Lexer for Mozilla Preprocessor files (with '%' as the marker).

    Other data is left untouched.
    mozpercentpreprocr   r   r5   z^%r   r   N)r6   r7   r8   r9   r:   r;   rJ   r<   r=   r>   r   rR   r   r@   rA   rB   rC   r%   r%     s_         
 DfGII
WCM 	GO%:;EN
FFFrB   r%   c                   >     e Zd ZdZdZdgZdgZg ZdZdZ	 fdZ
 xZS )r&   ze
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `XmlLexer`.
    zXUL+mozpreproczxul+mozpreprocz*.xul.inr   r   c                 R     t                      j        t          t          fi | d S N)superr   r   r$   rq   r   	__class__s     rC   r   zMozPreprocXulLexer.__init__  s+    #6BB'BBBBBrB   r6   r7   r8   r9   r:   r;   rJ   r<   r=   r>   r   __classcell__r   s   @rC   r&   r&     sp          D GII
WCMC C C C C C C C CrB   r&   c                   >     e Zd ZdZdZdgZdgZg ZdZdZ	 fdZ
 xZS )r'   zl
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `JavascriptLexer`.
    zJavascript+mozpreproczjavascript+mozpreprocz*.js.inr   r   c                 R     t                      j        t          t          fi | d S r   )r   r   r   r$   r   s     rC   r   z"MozPreprocJavascriptLexer.__init__  s+    *=IIIIIIIrB   r   r   s   @rC   r'   r'     sp          #D&'GII
WCMJ J J J J J J J JrB   r'   c                   >     e Zd ZdZdZdgZdgZg ZdZdZ	 fdZ
 xZS )r(   ze
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `CssLexer`.
    zCSS+mozpreproczcss+mozpreprocz*.css.inr   r   c                 R     t                      j        t          t          fi | d S r   )r   r   r   r%   r   s     rC   r   zMozPreprocCssLexer.__init__  s+    #9EEWEEEEErB   r   r   s   @rC   r(   r(     sp          D GII
WCMF F F F F F F F FrB   r(   c                      e Zd ZdZdZdZddgZddgZdgZd	Z	e
j        Zd
 Zd eej        e          fd eej        e          fd eej        eej        e          fd eej        eej        e          fd eeee eed                    fd eeee eed                    fd eee eed                    fd eeej                  fdej        fdef ed          gdefd eeej                  fd eeej                  fd eeej                  fd eeej                  fd eeej                  fd eeej                  fdej        fd eeej        eeej         e          fd  eeej        eeej!        e          fd! eeej!        eej                   fd"efd#efgd$Z"d% Z#d&S )'r)   z
    For Markdown markup.
    Markdownz-https://daringfireball.net/projects/markdown/markdownmdz*.mdz
*.markdownztext/x-markdownz2.2c              #     K   ddl m} |                    d          t          j        |                    d          fV  |                    d          t          j        |                    d          fV  |                    d          d|                    d          t          |                    d          fV  |                    d          t          |                    d          fV  |                    d          t          |                    d          fV  d }| j        rB	  ||                    d          	                                          }n# t          $ r Y nw xY w|                    d	          }| |                    d	          t          |fV  n)t          g |                    |                    E d {V  |                    d
          t          j        |                    d
          fV  d S )Nr   rY   initiallang	afterlang
whitespaceextranewlinerv   
terminator)rg   rZ   rh   r   r   ri   r   r   rk   rl   r   r   rp   rq   rr   rZ   rs   rv   s        rC   _handle_codeblockzMarkdownLexer._handle_codeblock  s     555555kk)$$fou{{97M7MMMMMkk&!!6?EKK4G4GGGGG;;{##/++l++Z\9R9RRRRR++g&&ekk'.B.BBBBBkk)$$j%++i2H2HHHHH   	))%++f*=*=*C*C*E*EFF    {{6""=++f%%vt33333 %R)E)Ed)K)KLLLLLLLLLkk,''%++l:S:SSSSSSSs   ,0E 
E*)E*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]+rI   )r5   r{   c                 V    t          |dd          | _        t          j        | fi | d S r   r   r   s     rC   r   zMarkdownLexer.__init__i  r   rB   N)$r6   r7   r8   r9   r:   r=   r;   rJ   r<   r>   rK   rL   rN   r   r   r   rO   r   
Subheadingr   r   r   r   r   r   r   r
   r   Deletedr   Entityr   r?   Labelr@   r   rA   rB   rC   r)   r)     s         D
9C4 G&I"#IMLET T T< $ ? ?@#XXg.@$%G%GH!88GOT7?TX#Y#YZ!88G,>gFXZ^#_#_`/HZ'55X3N3N3NOOQ 'HZ*eeD6Q6Q6QRRT (HZ%%H*E*E*EFFH  '7<!@!@A-v?	 
  GHK&
R TN"HHT6?$C$CD 1((42P2PQ+XXdGN-K-KL,hhtW\.J.JK)88D',+G+GH+XXdGO-L-LMT[)0XdDHdD$.$GGI
 /XdDHdD$*dCCE+XdDJdn==? $4LA!
QJ JFX- - - - -rB   r)   c                      e Zd ZdZdZdZg dZdgZdgZdZ	d Z
d	g d
ej        fd eej        ej        ej                  fd eej        ej        ej                  fd eej        ej        ej                  fd eej        ej        ej                  fd eej        ej        ej                  fd eej        ej        ej                  fd eej        ej                  fd eej        ej                  fd eeeeeej        ej                  fd eeeej                  fd eej         ee          ej                  fd eej        ej        ej                  fd eej        eej                  fd eej        eeej        e          fd eej         e          fd eej!        ej"        ej!                  fdefd eej        e#j$                  fd eej        e#j$                  f e
dd          ej%        f e
d d           ej        f e
d!d!          e&f e
d"d"          e&f e
d#d#          ej        f e
d$d%          ej'        fd&e#j$        fd'ej        fd(ej(        fd) ee)ej*        e)ej(        e)          fd* ee)ej*        e)          fd+ ee)ej*        e)          fd, eee&          fd-efd.efiZ+d/S )0r*   z
    For Org Mode markup.
    zOrg Modezhttps://orgmode.org)orgorgmodezorg-modez*.orgztext/orgz2.18c                     d|  d| dS )Nz(?<!\w)z(.|\n(?!\n))+?z(?!\w)rA   )rh   ends     rC   _inlinezOrgLexer._inlinex  s    :%::s::::rB   r5   z^# .*z^(\* )(COMMENT)( .*)z^(\*\*+ )(COMMENT)( .*)z^(\* )(DONE)( .*)z^(\*\*+ )(DONE)( .*)z^(\* )(TODO)( .*)z^(\*\*+ )(TODO)( .*)z^(\* .+?)( :[a-zA-Z0-9_@:]+:)?$z"^(\*\*+ .+?)( :[a-zA-Z0-9_@:]+:)?$z.^(?:( *)([+-] )|( +)(\* ))(\[[ X-]\])?(.+ ::)?z ^( *)([0-9]+[.)])( \[@[0-9]+\])?z/(?i)^( *#\+begin: *)((?:.|\n)*?)(^ *#\+end: *$)z?(?i)^( *#\+begin_comment *\n)((?:.|\n)*?)(^ *#\+end_comment *$)z6(?i)^( *#\+begin_src .*)((?:.|\n)*?)(^ *#\+end_src *$)z;(?i)^( *#\+begin_\w+)( *\n)((?:.|\n)*?)(^ *#\+end_\w+)( *$)z^(#\+\w+:)(.*)$z+(?i)^( *:\w+: *\n)((?:.|\n)*?)(^ *:end: *$)z\\\\$z+(?i)^( *(?:DEADLINE|SCHEDULED): )(<.+?> *)$z(?i)^( *CLOSED: )(\[.+?\] *)$r   z\*+/=~z\+_z_+r   z\{\{\{.+?\}\}\}z(?<!\[)\[fn:.+?\]z (?s)(\[\[)(.*?)(\]\[)(.*?)(\]\])z(?s)(\[\[)(.+?)(\]\])z(<<)(.+?)(>>)z^( *)(\|[ -].*?[ -]\|)$z[^#*+\-0-9:\\/=~_<{\[|\n]+z[#*+\-0-9:\\/=~_<{\[|\n]N),r6   r7   r8   r9   r:   r=   r;   rJ   r<   r>   r   r   Singler   r   rO   rR   r   r   Errorr   r   r   Promptr   r   r   rj   r   r   	Multiliner   rQ   	DecoratorSpecialr   Dater   r   
EmphStrongr   r   r?   r@   rA   rB   rC   r*   r*   m  s         D
C,,,G	IIM; ; ; 	 [
w~&[
 %XgowHHJ	[
 (Xg('/7;MNNP[
 "XgowHHJ[
 %Xg('/7;MNNP[
 "Xgow}goFFH[
 %Xg('-9KLLN[
" 0'/7<1X1XY#[
$ 3HHW=OQXQ]4^4^_%[
* ?Xj':wPTPZ[[]+[
2 1((:wPWP\2]2]^3[
8 @XhmUU4[[(-@@B9[
@ PXhmW%6FFHA[
J GXhmT8=99;K[
R LXhmZx}jQQSS[
Z  $.$!?!?@[[
` <Xdngot~FFHa[
h x i[
n <XgmW\224o[
r .Xgow|446s[
z WUF##W^4{[
~ WT4  ',/[
B WT4  &)C[
F WT4  &)G[
J WUE""GO4K[
N WT5!!7#56O[
T w|$U[
X  1Y[
\ "48,][
` 1Xk4>;+VVXa[
d &xxT^['Y'YZe[
f xxT^[QQRg[
l (*f)E)EFm[
r +D1s[
t )$/u[
]FFFrB   r*   c                   "   e Zd ZdZdZdZdgZdgZdgZdZ	e
j        Zd Zd	 Zd
 eeeej                  fd eej        e          fd eej        e          fd eeee eed                    fd eeee          fd eej                  fd eej                  fd eej                  fd eej                  fd eeee          fdefdef ed           ed          g eddd          efgdefdej        fd eeej        e          fd  eeej                  fd! eeej                  fd" eeej                  fd# eeej        e          fd$ eeej         e          fd%ej        fd&ej        fd'ej        fd(ej        fd)ej        fd*ej!        fd+ej"        fd, eeej        e          fd- eeej        eej#        e          fd. eeej        e          fd/ eej#                  fd0efd1efgd2Z$d3 Z%d4S )5r+   z!
    For TiddlyWiki5 markup.
    tiddlerz$https://tiddlywiki.com/#TiddlerFilestidz*.tidztext/vnd.tiddlywikiz2.7c              #     K   ddl m} |                    d          t          |                    d          fV  |                    d          t          |                    d          fV  |                    d          t
          |                    d          fV  d}| j        rB	  ||                    d                                                    }n# t          $ r Y nw xY w|                    d          }|!|                    d          t          |fV  dS t          g |
                    |                    E d{V  |                    d          t          |                    d          fV  dS )	zV
        match args: 1:backticks, 2:lang_name, 3:newline, 4:code, 5:backticks
        r   rY   r[   r\   r]   Nr^   r_   )rg   rZ   rh   r   ri   r   rk   rl   r   r   rp   r   s        rC   r   z"TiddlyWiki5Lexer._handle_codeblock  s      	655555 kk!nnfekk!nn4444kk!nnfekk!nn4444kk!nndekk!nn4444   	))%++a..*>*>*@*@AA    {{1~~ =++a..&$....F U%A%A$%G%GHHHHHHHHHkk!nnfekk!nn444444s   )0C 
C'&C'c              #   P  K   ddl m} |                    d          t          |                    d          fV  |                    d          t          |                    d          fV  d}| j        r	  |d          }n# t          $ r Y nw xY w|                    d          }|!|                    d          t          |fV  dS t          g |                    |                    E d{V  |                    d          t          |                    d          fV  dS )	zP
        match args: 1:style tag 2:newline, 3:code, 4:closing style tag
        r   rY   r[   r\   Ncssr]   r^   )	rg   rZ   rh   r   ri   rk   r   r   rp   r   s        rC   _handle_cssblockz!TiddlyWiki5Lexer._handle_cssblock  sF      	655555 kk!nnfekk!nn4444kk!nnfekk!nn4444  	))%00    {{1~~ =++a..&$....F U%A%A$%G%GHHHHHHHHHkk!nnfekk!nn444444s   7B 
BB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]+rI   )r5   r  r{   c                 V    t          |dd          | _        t          j        | fi | d S r   r   r   s     rC   r   zTiddlyWiki5Lexer.__init__s  r   rB   N)&r6   r7   r8   r9   r:   r=   r;   rJ   r<   r>   rK   rL   rN   r   r
  r   r   r   r   rO   r   r   r   r   r   r   r   r   r
   r   r   Integerr   r   Regexr?   r@   r   rA   rB   rC   r+   r+     sL         D
0CgG	I&'IMLE5 5 5:5 5 5< $XXgtW_%M%MN$ ? ?@'*<d!C!CD *XdGT55X+F+F+FGGI .xxf/M/MNhhw~667',!7!78hhtx001'.112)88FD&+I+IJ02CD46FGGJGH9
> U !)-e= = = 
 TN'*XdGL$//1 %hhtW\&B&BC$!=!=>$!?!?@*XdGND113 +XdGOT224 48$tx(tx(!48$)%'$$)G)GH4HT48T4>4@@B &xxdh'E'EF&(@(@A t4LY-
KS SFj- - - - -rB   r+   c                      e Zd ZdZdZdZddgZg ZdgZdZ	e
j        Zd Zd	 Zd
 Zd Zd Zd ZdZdZdZdZh dZh dZh dZedhz
  Zh dZh dZh dZh dZh dZh dZ h dZ!i dd e"e#e$e#e%          dfd  e"e&j'        e&j'        e&j'        e#          fd! e"e&j(        e#          f e)ed"#          e*j+        j,        f e)e          e*j+        j,        fd$-                    d%.                    e          ee          e*j/        fd&e d'e*j+        j,        fd(-                    ed)e d*+          e*j+        j,        f e0d,           e0d-           e0d.          gdd/ e"e%e#          d0fd1 e"e%e*j/                  fd2e d3e*j1        fgd,d4e$d5fd6e$fd7e$fgd-g d8e$f e0d9          d: e"e&j2        e&j3                  d;fd<e&j4        d=fd>e&j2        d?f e0d@          dA-                    ee dB           e"e%e*j5        e% e6e7dCgD          e%e*j/                  dEfdF-                    d%.                    e          e8                    dGdH          ee dB           e"e%e*j5        e% e6e7dCgD          e%e*j/        e%          fdI-                    d%.                    e          e8                    dGdH          ee dB           e"e%e*j5        e% e6e7dCgD          e%e*j/        e%          dJfdK-                    d%.                    e          ee           e"e%e*j/        e#          dLfdM e"e$e#e% e6e7ddNgD                    dOfdP-                    d%.                    e                     e"e%e*j1                  dQfdR-                    d%.                    e                     e"e%e*j1        e#e%          fdS e"e%e*j1                  dTfdU e"e%e*j1                  dVfdW e"e%e*j1                  dXfdY e"e%e*j1                  dZfd[ e"e%e*j1                  d\fd] e"e%e*j1                  d^fd_ e"e%e*j1                  d`fda e"e%e*j1                  dbfdc e"e%e*j1                  ddfde e"e%e*j1                  dffde e"e%e*j1                  dgfdh e"e%e*j1                  difdj e"e%e*j1                  dkfdl e"e%e*j1                  dmfdn e"e%e*j1                  dofdp e"e%e*j1        e#e%          fdq e"e%e*j1        e          fdr e"e%e*j1        e# e6e7ddNgD          e%          fds e"e%e*j1        e#e%          fdt e"e%e*j1        e          fdu e"e%e*j1        e# e6e7ddNgD          e%          fdv e"e%e*j1        e#e%          fdw e"e%e*j1        e          fdx e"e%e*j1        e# e6e7ddNgD          e%          fdP-                    d%.                    e                     e"e%e*j1                  dQfdR-                    d%.                    e                     e"e%e*j1        e#e%          fdy-                    d%.                    e          z           e"e%e$e% e6e7dd{gD          e9e*j/        e%          d|fd} e"e% e6e7dd~gD          e%          d{fd-                    d%.                    e          z           e"e%e*j/        e%          d|fdC e0d@          de*j1        fde*j1        fgdJde%d0fde%d0f e0d-           e0d.          gdEde%d0fd e"e%e*j:        e9          fde%f e0d-           e0d.          gdde%d0fde;d0fgd? e0d          d: e"e&j2        e&j4                  dfd<e&j3        dfd>e&j2        d0f e0d-           e0d          gd= e0d          d e"e&j4        e&j2                  dfd<e&j4        d0fd>e&j3        df e0d-           e0d          gd e0d          d: e"e&j3        e&j4                  d0fd<e&j3        dfd>e&j3        df e0d-           e0d          gd; e0d          d e"e&j3        e&j2                  d0fd<e&j3        dfd>e&j3        df e0d-           e0d          gd~de#fde%fg ee$          d|d-                    d%.                    e          z           e"e% e6e7dd{gD          e9e*j/        e%          fde%d0f e0d-           e0d.          gd{de%d0f e0d-           e0d.          gd@de<j=        fd e"e%e*j>                  dfd-                    d%.                    e                     e"e%e#e*j+        e#e%          fd-                    d%.                    e                     e"e%e#e*j+        e#e%          fde%dfd e"e%e*j1        e%e?e%          fde%d0fd e"e%e*j1                  dQfd e"e%e*j1        e#e%          fg	dde%d0fde%f e0d-           e0d.          gi dde<j=        fde#fd-                    ed%.                    e                      e"e*j+        e%          dfd-                    d%.                    e!                     e"e*j+        e%          dfde d e"e*j5        e%          df e@d          gdd e"e;e%          dfde%d0fde;d0f e0d@          g ee*j1                  dde%d0fde%fd e"e*j/        e9          f e0d-           e0d.          gdOd e"e#e%          d0fd e"e#e% e6e7ddNgD                    fd e"e#e% e6e7ddNgD          e%e&j(                  fd e"e% e6e7ddNgD          e%          fd e"e% e6e7ddNgD          e%          df e0d,           e0d-           e0d.          gdde;d0fd e"e% e6e7ddNgD          e%          fg ee&j'                  d9de*jA        fgd5de;d0f e0d-          de$d0f e0d.          gdLde%d0f e0d-           e0d.          gd e0d9           e0d.          gdN e0d@          de#fd e"e9e#e?jB                  dfd e"e9e#e?jC                  dfd e"e9e#          dfde*j:        fgdde#d0f e0d@          g ee?          dde?jC        d0f e0d@          g ee?jC                  dde?jB        d0f e0d@          g ee?jB                  dQde%d0f e0dĦ          gdde%dfde%d0f e0dĦ          gd e0d@          de#fd e"e9e#e?jB                  dfd e"e9e#e?jC                  dfd e"e9e#          dfde*j:        fgdde#d0fde%df e0d@          g ee?          i dde?jC        d0fde%df e0d@          g ee?jC                  dde?jB        d0fde%df e0d@          g ee?jB                  d edΦ          d edЦ          d edҦ          d edԦ          d ed֦          d edئ          d edڦ          d edܦ          d edަ          d ed          d ed          d ed          d edeDdD          d edeDdD          d edeDdD           edeE           ee&j2                   ee&j4                   ee&j3                   ee;          dZFdS )r,   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.
    Wikitextz'https://www.mediawiki.org/wiki/Wikitextwikitext	mediawikiztext/x-wikiz2.15c                     d|  dt          t          t          j        t          t                    dft          d          t          d          gS )N	(?i)(</)(	)(\s*)(>)r4   entityr   )r   r   r   r   r   r
   tag_names    rC   nowiki_tag_ruleszWikitextLexer.nowiki_tag_rules  sM    -(---xXz;00 00179HFOO	
 	
rB   c                 t    d|  dt          t          t          t          j        t
          t                    dfgS )Nz(?si)(.*?)(</)(r  r4   )r   r   r   r   r   r   r!  s    rC   plaintext_tag_rulesz!WikitextLexer.plaintext_tag_rules  s<    3333Xd$(J6= 6=>DF
 	
rB   c                     d|  dt          t          t          j        t          t                    dfd|  dt          |fi |fgS )Nr  r  r4   z(?si).+?(?=</z\s*>))r   r   r   r   r   r   )r"  rs   lexer_kwargss      rC   delegate_tag_rulesz WikitextLexer.delegate_tag_rules  s\    -(---xXz;00 00179-h---uU/K/Kl/K/KL
 	
rB   c                     d| fd| fd| fgS )Nr   z[^\S\n]+(?s).rA   )tokens    rC   
text_ruleszWikitextLexer.text_rules  s#    UO% u
 	
rB   c              #     K   ddl m} |                                }d}d}	 |                    d|          }||dz
  |         dk    rn|dz   }.|dk    r!|                     |d	d
g          E d {V  d S |d |         }|                     |d	d
g          E d {V  |                    d          |z   t          dfV  d }||dz   d          }	t          j        d|          }
t          |
          dk    r+|
d         d         }	  ||          }n# t          $ r Y nw xY w|&|                                |z   dz   t          |	fV  d S |                    |	          E d {V  d S )Nr   rY   T>r\   --r[   r   r5   attrstackr]   \blang=("|\'|)(\w+)(\1))rg   rZ   ri   r   rp   rh   r   rK   findallrm   r   r   )rq   rr   ctxrZ   attr_contentrh   indexr0  rs   content
lang_matchr   s               rC   handle_syntaxhighlightz$WikitextLexer.handle_syntaxhighlight  s     555555{{}}	 %%c511EE!GEM*d22AIE	 B;;22<PVGW2XXXXXXXXXFFUF#..tFF;K.LLLLLLLLLkk!nnu$k36666uQwxx(Z :DAA
z??ab>!$D))$//     =++--%'!+T7::::::33G<<<<<<<<<<<s   D 
D! D!c              #     K   |                                 }d}d}	 |                    d|          }||dz
  |         dk    rn|dz   }.|dk    r!|                     |dd	g
          E d {V  d S |d |         }||dz   d          }|                     |dd	g
          E d {V  |                    d          |z   t          dfV  t          j        d|          }t          |          dk    r|d         d         nd}	|	dk    r)t                                          |          E d {V  d S |                                |z   dz   t          |fV  d S )Nr   Tr.  r\   r/  r[   r   r5   r0  r1  r]   r3  lilypond)
ri   r   rp   rh   r   rK   r4  rm   r   r   )
rq   rr   r5  r6  rh   r7  r0  r8  r9  r   s
             rC   handle_scorezWikitextLexer.handle_score  s     {{}}	 %%c511EE!GEM*d22AIE	 B;;22<PVGW2XXXXXXXXXFFUF#uQwxx(..tFF;K.LLLLLLLLLkk!nnu$k36666Z :DAA
$'
OOq$8$8z"~a  j:$==gFFFFFFFFFFF ++--%'!+T7::::::rB   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:////rl  ><   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divrw   kbdrtcsubsupvarwbrabbrciterv   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>.   sr-ecsr-elzh-cnzh-hkzh-mozh-myzh-sgzh-tw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wuu-hanswuu-hant	ban-x-pkuban-x-dharmaen-x-piglatinban-x-palmleafeniukusrtguzzhbancrhganshitlywuu>   INTPAGEIDSERVER	STYLEPATH
SCRIPTPATH
SERVERNAMEARTICLEPATH>Q   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NUMBEROFACTIVEUSERSr   r   >   
\#LANGUAGELCNSUCr  NSEBIDIGENDERr  PLURALFULLURLGRAMMARLCFIRSTPADLEFTUCFIRSTFILEPATHFULLURLELOCALURLPADRIGHT	FORMATNUM	LOCALURLE	URLENCODEANCHORENCODECANONICALURLCANONICALURLE>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-  r.  r/  r0  r1  r2  DEFAULTSORTKEYr7  r8  r9  r;  PAGESINCATEGORYPROTECTIONLEVELr<  r=  r>  rB  PAGESINNAMESPACEPROTECTIONEXPIRYrC  rE  DEFAULTCATEGORYSORTrH  r5   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)z	+[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)r4   z(\#)([^#]*?)z(?i)[z]+z^;rv  z^[#:*]+z^-{4,}z~{3,5}r   z('')(''')(?!')inline-italic-boldz'''(?!')inline-boldz''(?!')inline-italicreplaceablez(?xi)
                (\[\[)
                    (File|Image) (:)
                    ((?: [{}] | \{{{{2,3}}[^{{}}]*?\}}{{2,3}} | <!--[\s\S]*?--> )*)
                    (?: (\#) ([{}]*?) )?
                #zwikilink-namer|   zmedialink-innera  (?xi)
                (\[\[)(?!{}) # Should not contain URLs
                    (?: ([{}]*) (:))?
                    ((?: [{}] | \{{{{2,3}}[^{{}}]*?\}}{{2,3}} | <!--[\s\S]*?--> )*?)
                    (?: (\#) ([{}]*?) )?
                (\]\])
                r   rf   z(?xi)
                (\[\[)(?!{})
                    (?: ([{}]*) (:))?
                    ((?: [{}] | \{{{{2,3}}[^{{}}]*?\}}{{2,3}} | <!--[\s\S]*?--> )*?)
                    (?: (\#) ([{}]*?) )?
                    (\|)
                zwikilink-innerzi(?xi)
                (\[)
                    ((?:{}) {} {}*)
                    (\s*)
                zextlink-innerz^(:*)(\s*?)(\{\|)([^\n]*)$r0  r  z(?i)(<)({})\bztag-inner-ordinaryz(?i)(</)({})\b(\s*)(>)z(?i)(<)(nowiki)\b)
tag-nowiki	tag-innerz(?i)(<)(pre)\b)tag-prerx  z(?i)(<)(categorytree)\b)tag-categorytreerx  z(?i)(<)(hiero)\b)	tag-hierorx  z(?i)(<)(math)\b)tag-mathrx  z(?i)(<)(chem)\b)tag-chemrx  z(?i)(<)(ce)\b)tag-cerx  z(?i)(<)(charinsert)\b)tag-charinsertrx  z(?i)(<)(templatedata)\b)tag-templatedatarx  z(?i)(<)(gallery)\b)tag-galleryrx  )	tag-graphrx  z(?i)(<)(dynamicpagelist)\b)tag-dynamicpagelistrx  z(?i)(<)(inputbox)\b)tag-inputboxrx  z(?i)(<)(rss)\b)tag-rssrx  z(?i)(<)(imagemap)\b)tag-imagemaprx  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)
                (-\{{) # Use {{ to escape format()
                    ([^|]) (\|)
                    (?:
                        (?: ([^;]*?) (=>))?
                        (\s* (?:{variants}) \s*) (:)
                    )?
                )variantszlc-rawzlc-innerzS(?xi)
                (-\{)
                    ([a-z\s;-]*?) (\|)
                zlc-flagz(?xi)
                (-\{{) (?!\{{) # Use {{ to escape format()
                    (?: (\s* (?:{variants}) \s*) (:))?
                z[^{<]+r*  z(?=\[\[)z\]\]z(\|)([^\n=|]*)(=)z\|zquote-commonz(?=\]\]|\{\{|\}\})rH   )r4   rs  )r4   rr  text-italicz(''')('')(?!'))r4   rt  )r4   inline-bold-italic	text-boldr  text-bold-italicr2   ;z{(?xi)
                (;)
                (?: ([^;]*?) (=>))?
                (\s* (?:{variants}) \s*) (:)
                z	;?\s*?\}-z\}-z<!--[\s\S]*?(?:-->|\Z)zk(?x)
                (\{{3})
                    ([^|]*?)
                    (?=\}{3}|\|)
                zparameter-innerz"(?i)(\{{\{{)(\s*)({})(\s*)(\}}\}})z(\{{\{{)(\s*)({})(\s*)(\}}\}})z\{\{ztemplate-begin-spacez(?i)(<)(tvar)\b(\|)([^>]*?)(>)z</>z(?i)(<)(tvar)\bz(?i)(</)(tvar)\b(\s*)(>)z\}{3}z(?i)(\#[{}]*?|{})(:))r4   template-innerz({})(:)z(?i)([z]*?)(:))r4   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  :r3   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-attrrx  z/\s*>r   z\s*>ztag-attr-val-2ztag-attr-val-1ztag-attr-val-0z/?>rw  r  ry  r  rz  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   N)Gr6   r7   r8   r9   r:   r=   r;   rJ   r<   r>   rK   rL   rN   r#  r%  r(  r,  r:  r=  
title_charro  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   rO   r   r   FunctionMagicformatjoinr   r
   r   r   r  r   rQ   r   r   replacer   r?   r   r   r   r   r   r   r   r   r   r"   r   r@   rA   rB   rC   r,   r,   x  su         D
3C;'GIIMLE
 
 

 
 

 
 

 
 
$= $= $=L; ; ;> EJgIxL_O    N
  I '$/  I  K  M<  L  J"    d Xj':{CCEU	W +Xg('*<g>PR\]]_ !Xgoz224 U#G444dm6IJU>""DM$78!(())<)<?, ,-1Z9 4y333] "
 6Ji6J6J6JKKT]M`b GFOOGHGFOO=
dB 	j A A6Jhh{DJ??@$j$$$dh/
CdL 	GT"! 
Md\ 	 q
 q
 GH	q
 !! !!"68q
 '.-8q
 7q
 GM""q

 F:*'7'7'788dn{tO+<==={DJX X!
q
4 F388I..
0B0B30K0K!j#3#3#35 5dn{tO+<==={DJXce e3q
L F388I..
0B0B30K0K!j#3#3#35 5dn{tO+<==={DJXce e Kq
h F388I..oNNdj*==gq
z +HHWeeD8H&I&I&I-K -KLSU{q
@ $$SXXi%8%899Xk48,,.BDAq
D '--chhy.A.ABBXk48ZEEGEq
J "88KX$ $35Kq
P X! !02Qq
V (TX*' *'(IKWq
\ !((;X# #24]q
b  +X" "13cq
h  +X" "13iq
n xxX   /1oq
t &xxTX(' ('(GIuq
z (TX*' *'(IK{q
@ #HHTX%' %'(DFAq
F #HHTX%' %'(BDGq
L +HHTX-' -'(LNMq
R $XXTX&' &'(EGSq
X TX!' !'(@BYq
^ $XXTX&' &'(EG_q
d 4Xk48ZEEGeq
h JXk48-CDDFiq
n PQYQYTXz55ffEU3V3V3VXcRe Re foq
t +Xk48ZEEGuq
x AXk48-CDDFyq
~ GTXz55ffEU3V3V3VXcIe Ie fq
D *Xk48ZEEGEq
H @Xk48\::<Iq
N FxxTXz55ffEU3V3V3VXcHe He fOq
T $$SXXk%:%:;;Xk48,,.BDUq
X '--chh{.C.CDDXk48ZEEGYq
` FCHH]$;$;F<<g{tFH+=>>>!4:{< < _q
~ tFI+>???$& & 	}q
T FCHH]$;$;F<<dj+>>Sq
]d@ 	GM""!tx 
AdJ 	+v.k6*GHGFOO
KdX 	k6*!Xk4>8<<>K GHGFOO
Ydh 	"K8D&!
idr 	GN##^! !57',.LMv.GHGM""
sdD 	GN##!. !./HJ'.&1+-KLGHGK  
EdV 	GN##);^! !$&',.GH+-DEGHG&''
Wdh 	GN##"GL!2 !239;',.GH+-DEGHG&''
idz 	Z ;
 Z  
{dD	 	 FCHH]$;$;F<<eeD8J&K&K&K!4:{< < ;/GHGFOO
E	d`	 	[&)GHGFOO
a	dj	 	&(9:
 dm44! 399#((<:P:PQQXk:t}j+VVX.55chhz6J6JKKj$-[YY[ k#9:.X{FK19 19 :[&)+tx!@!@BVW(Xk48ZEEG5
k	dd
 	{F+K GHGFOO	
e
d dp
 	 '(9:Z  (..z+.884F+G+GI I446P !!#((+;"<"<==446P .*---557P G-//)!
q
d\ 	HHT;779STk6*D&!GM""	

 Z!!
]dj 	k6*K 
 X.. GHGFOO
kdF 	 +Xj+..8 0*kU4/00022 22 3 [%%E) 3* 3* 3*+6I I	 eeD9) '* '* '*+68 8 eeD9) '* '* '*+68 8 GFOOGHGFOOQ)
GdZ 	D&! eeD9) '* '* '*+68 8

 Z*++
[dz 	$
{d@ 	D&!GH7F#GFOO	
AdL 	K(GHGFOO
MdV 	GHGFOO
Wd^ 	GM""Z XXh
FMJJLYXXh
FMJJLY((8Z88,G(
_dp 	J'GM""
 Z
qdz 	6=&)GM""
 Z&&
{dD 	6=&)GM""
 Z&&
EdN 	V,GJ
OdV 	{H-k6*GJ	
Wdf 	GM""Z XXh( ()9;XXh( ()9;((8Z88:JK(

gd| 	J'[(+GM""
 Z	
}d d dH 	6=&)[(+GM""
 Z&&	
IdT 	6=&)[(+GM""
 Z&&	
Ud` 	&&x00adb 	##E**cdd 	//??edf 	223DEEgdh 	((11idj 	++J77kdl 	++J77mdn 	--l;;odp 	++J77qdr 	**955sdt 	((11udv 	&&u--wdx 	&&vxvFFFydz 	&&vxvFFF{d| 	$$T86BBB}d d~ /.~yII!z',//Z//&Jw'9::
4  Gd d dFFFrB   r,   )5r9   rK   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   r   pygments.utilr   r   __all__r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   rA   rB   rC   <module>r     s9    
			 ) ) ) ) ) ) 6 6 6 6 6 6 ( ( ( ( ( ( 2 2 2 2 2 2 * * * * * */ / / / / / / / / / / / / / / / / / / / / /= = = = = = = = = = = = = = = = = = = = = = = = = = = = 5 5 5 5 5 5 5 5      *   B+ + + + +J + + +\b b b b bz b b bJ9 9 9 9 9z 9 9 9x5 5 5 5 5 5 5 5p& & & & &* & & &R    0   *C C C C C C C C J J J J J J J J F F F F F F F F u- u- u- u- u-J u- u- u-nk k k k kz k k kZ[- [- [- [- [-z [- [- [-|~ ~ ~ ~ ~J ~ ~ ~ ~ ~rB   