
    @Ne                     2   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! 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          Z/ G d  d!e          Z0 G d" d#e          Z1 G d$ d%e          Z2dS )&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                       e Zd ZdZdZdgZdg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   zR
    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____doc__namealiases	mimetypesr   r   r   r   	Attributer   r   tokens     /home/feoh/.cache/pypoetry/virtualenvs/veilid-python-play-bIboZq2W-py3.11/lib/python3.11/site-packages/pygments/lexers/markup.pyr   r      s          DjG !I t%(DM
 TN'Xdnh779 #Xh'') GV$

 FFFr=   r   c                      e Zd ZdZdZddgZg Zdg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   zI
    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\}\}\}r1   z\{\{\{z#pushz[^{}]+)r2   rA   N)r3   r4   r5   r6   r7   r8   	filenamesr9   re	MULTILINE
IGNORECASEflagsr   r   r   r   r   Headingr   r   r   r   Builtin	NamespacePreprocr;   r<   r=   r>   r   r   @   s_         'DF#GI#$I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?#
- FFFr=   r   c                      e Zd ZdZdZdZg dZddgZddg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j        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 d/fd0e fgd1Z(d2 Z)d3 Z*d4S )5r    an  
    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           	   #     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.lexersrT   startr   groupr   r   Wordr   handlecodeblocksstripr   lenr   
splitlinesappendr   get_tokens_unprocessed)
selfmatchrT   lexer	indentionindention_sizecodeins	codelineslines
             r>   _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<.+?>z[^\\\n\[*`:]+rC   z[^`]+r1   `)r2   ru   ry   c                 V    t          |dd          | _        t          j        | fi | d S Nre   Tr   re   r   __init__rk   optionss     r>   r~   zRstLexer.__init__  6     ,W6H$ O OD,,G,,,,,r=   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 )NrV   z..rW   rC   g333333?
rU   z-=g      ?)find)textp1p2s      r>   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  ""((r=   N)+r3   r4   r5   r6   r7   urlr8   rD   r9   rE   rF   rH   rt   closersunicode_delimitersescapeend_string_suffixr   r   rI   r   r   r   r   r   r   rd   r   Tagr   rL   Classr   Escaper
   InterpolVariabler:   StrongEmphr;   r~   r   r<   r=   r>   r    r    m   sf         D
4C111G(#I9:ILE&J &J &JR *G?%BI&8999%BIg....0!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 +GO<;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- - -	 	 	 	 	r=   r    c            
          e Zd ZdZdZddgZg dZddg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%.*?\nz[{}]z[&_^]z\\\[displaymathz\\\(
inlinemathz\$\$z\$z\\([a-zA-Z]+|.)commandz\\$generalz[^\\$%&_^{}]+[0-9]+z[-=!+*/()\[\]]z[^=!+*/()\[\]\\$%&_^{}0-9-]+z\\\)r1   mathz\\\]z\[.*?\]z\*)r   r2   r   r   r   r   c                 L    dD ] }| d t          |                   |k    r dS !d S )N)z\documentclassz\inputz\documentstylez\relaxT)rg   )r   rb   s     r>   r   zTexLexer.analyse_textH  sC    ! 	 	EKSZZK E))tt *	 	r=   N)r3   r4   r5   r6   r7   r8   rD   r9   r   r   rJ   r   Backtickr   r
   r   r   r   r   r:   r   r;   r   r<   r=   r>   r!   r!     s         DgG+++I~.I  dl#t|$
 fo}5fl+fo}5FL))4WGIt$	
  /GI),dl;
 ff%FF#GFOO
 ff%ff%DL!GFOO	
 (GGFOO
E' 'FR    r=   r!   c            
       0   e Zd ZdZdZg dZg dZddg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.

    .. versionadded:: 0.6
    Groff)groffnroffman)z*.[1-9]z*.manz*.1pz*.3pmzapplication/x-troffz
text/troffz	(\.)(\w+)requestz\.z[^\\\n]+textlineescapesrB   r1   z	\\"[^\n]*z\\[fn]\wz\\\(.{2}z	\\.\[.*\]rx   z\\\nz	"[^\n"]+"z\d+z\S+r/   )r2   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 )
NrU   rC   FrW   z.\"TrX   z.TH g?)isalnumisspace)r   s    r>   r   zGroffLexer.analyse_text|  s    8s??58v48v4!9 	47??#4#4 	3	 	 	 	r=   N)r3   r4   r5   r6   r7   r8   rD   r9   r   r   r   r   r   r
   r   r   r   Doubler   r;   r   r<   r=   r>   r"   r"   O  sE         D'''G555I&5I 88D'22I>K+$
+GJ
 GI$D&!
 7#&-(&-(6=)V]#dI&
 D&!GI6=)VVTN
- F@    r=   r"   c                      e Zd ZdZdZegZg Zg 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#   z
    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errorr1   )!z!=z==z&&z||z(defined)(\()z\)r   z__\w+?__z@\w+?@\w+rB   r/   z\S)r2   r   r   N)r3   r4   r5   r6   r7   r8   rD   r9   r   rL   r   r   r   r   r   r   r   r   Decimalr   r   r   r;   r<   r=   r>   r#   r#     s         DfGII GO%:;EN

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

    Other data is left untouched.

    .. versionadded:: 2.0
    mozpercentpreprocr2   z^%r   r   N)r3   r4   r5   r6   r7   r8   rD   r9   r   rL   r   r;   r<   r=   r>   r$   r$     sU          DfGII 	GO%:;EN
FFFr=   r$   c                   6     e Zd ZdZdZdgZdgZg Z fdZ xZ	S )r%   z
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `XmlLexer`.

    .. versionadded:: 2.0
    zXUL+mozpreproczxul+mozpreprocz*.xul.inc                 R     t                      j        t          t          fi | d S N)superr~   r   r#   rk   r   	__class__s     r>   r~   zMozPreprocXulLexer.__init__  s+    #6BB'BBBBBr=   
r3   r4   r5   r6   r7   r8   rD   r9   r~   __classcell__r   s   @r>   r%   r%     sf          D GIIC C C C C C C C Cr=   r%   c                   6     e Zd ZdZdZdgZdgZg Z fdZ xZ	S )r&   z
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `JavascriptLexer`.

    .. versionadded:: 2.0
    zJavascript+mozpreproczjavascript+mozpreprocz*.js.inc                 R     t                      j        t          t          fi | d S r   )r   r~   r   r#   r   s     r>   r~   z"MozPreprocJavascriptLexer.__init__  s+    *=IIIIIIIr=   r   r   s   @r>   r&   r&     sf          #D&'GIIJ J J J J J J J Jr=   r&   c                   6     e Zd ZdZdZdgZdgZg Z fdZ xZ	S )r'   z
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `CssLexer`.

    .. versionadded:: 2.0
    zCSS+mozpreproczcss+mozpreprocz*.css.inc                 R     t                      j        t          t          fi | d S r   )r   r~   r   r$   r   s     r>   r~   zMozPreprocCssLexer.__init__  s+    #9EEWEEEEEr=   r   r   s   @r>   r'   r'     sf          D GIIF F F F F F F F Fr=   r'   c                      e Zd ZdZdZdZddgZddgZdg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(   z9
    For Markdown markup.

    .. versionadded:: 2.2
    Markdownz-https://daringfireball.net/projects/markdown/markdownmdz*.mdz
*.markdownztext/x-markdownc              #     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   rS   initiallang	afterlang
whitespaceextranewlinerp   
terminator)ra   rT   rb   r   r   rc   r   r   re   rf   r   r   rj   rk   rl   rT   rm   rp   s        r>   _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)ru   rv   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)
              rx   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]+rC   )r2   ru   c                 V    t          |dd          | _        t          j        | fi | d S r|   r}   r   s     r>   r~   zMarkdownLexer.__init__i  r   r=   N)#r3   r4   r5   r6   r7   r   r8   rD   r9   rE   rF   rH   r   r   r   rI   r   
Subheadingr   r   r   r   r   r   r   r
   r   Deletedr   Entityr   r:   Labelr;   r~   r<   r=   r>   r(   r(     s        
 D
9C4 G&I"#I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- - - - -r=   r(   c                      e Zd ZdZdZdZdgZdgZdg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d/efd0efgd1Z#d2 Z$d3S )4r)   z<
    For TiddlyWiki5 markup.

    .. versionadded:: 2.7
    tiddlerz$https://tiddlywiki.com/#TiddlerFilestidz*.tidztext/vnd.tiddlywikic              #     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   rS   rU   rV   rW   NrX   rY   )ra   rT   rb   r   rc   r   re   rf   r   r   rj   r   s        r>   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   rS   rU   rV   NcssrW   rX   )	ra   rT   rb   r   rc   re   r   r   rj   r   s        r>   _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)ru   rv   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suffixrx   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]+rC   )r2   r   ru   c                 V    t          |dd          | _        t          j        | fi | d S r|   r}   r   s     r>   r~   zTiddlyWiki5Lexer.__init__  r   r=   N)%r3   r4   r5   r6   r7   r   r8   rD   r9   rE   rF   rH   r   r   r   r   r   r   rI   r   r   r   r   r   r   r   r   r
   r   r   Integerr   r   Regexr:   r;   r~   r<   r=   r>   r)   r)   n  sG        
 D
0CgG	I&'I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- - - - -r=   r)   c                   z   e Zd ZdZdZdZddgZg Zdg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          e)j*        j+        fd&,                    ed'e d()          e)j*        j+        f e/d*           e/d+           e/d,          gdd- e!e$e"          d.fd/ e!e$e)j.                  fd0,                    e          e)j0        fgd*d1e#d2fd3e#fd4e#fgd+g d5e#f e/d6          d7 e!e%j1        e%j2                  d8fd9e%j3        d:fd;e%j1        d<f e/d=          d>ed?e d@dA e!e$e)j4        e$ e5e6dBgC          e$e)j.                  dDfdEd$-                    e          dFe7                    dGdH          dIedJe d@dK	 e!e$e)j4        e$ e5e6dBgC          e$e)j.        e$          fdEd$-                    e          dLe7                    dGdH          dIedJe d@dM	 e!e$e)j4        e$ e5e6dBgC          e$e)j.        e$          dNfdO,                    d$-                    e          ee           e!e$e)j.        e"          dPfdQ e!e#e"e$ e5e6ddRgC                    dSfdT,                    d$-                    e                     e!e$e)j0                  dUfdV,                    d$-                    e                     e!e$e)j0        e"e$          fdW e!e$e)j0                  dXfdY e!e$e)j0                  dZfd[ e!e$e)j0                  d\fd] e!e$e)j0                  d^fd_ e!e$e)j0                  d`fda e!e$e)j0                  dbfdc e!e$e)j0                  ddfde e!e$e)j0                  dffdg e!e$e)j0                  dhfdi e!e$e)j0                  djfdi e!e$e)j0                  dkfdl e!e$e)j0                  dmfdn e!e$e)j0                  dofdp e!e$e)j0                  dqfdr e!e$e)j0                  dsfdt e!e$e)j0        e"e$          fdu e!e$e)j0        e          fdv e!e$e)j0        e" e5e6ddRgC          e$          fdw e!e$e)j0        e"e$          fdx e!e$e)j0        e          fdy e!e$e)j0        e" e5e6ddRgC          e$          fdz e!e$e)j0        e"e$          fd{ e!e$e)j0        e          fd| e!e$e)j0        e" e5e6ddRgC          e$          fdT,                    d$-                    e                     e!e$e)j0                  dUfdV,                    d$-                    e                     e!e$e)j0        e"e$          fd},                    d$-                    e          ~           e!e$e#e$e)j.        e8e)j.        e$          dfde$dfdB e/d=          de)j0        fde)j0        fgdNde$d.fde$d.f e/d+           e/d,          gdDde$d.fd e!e$e)j9        e8          fde$f e/d+           e/d,          gdde$d.fde:d.fgd< e/d          d7 e!e%j1        e%j3                  dfd9e%j2        dfd;e%j1        d.f e/d+           e/d          gd: e/d          d e!e%j3        e%j1                  dfd9e%j3        d.fd;e%j2        df e/d+           e/d          gd e/d          d7 e!e%j2        e%j3                  d.fd9e%j2        dfd;e%j2        df e/d+           e/d          gd8 e/d          d e!e%j2        e%j1                  d.fd9e%j2        dfd;e%j2        df e/d+           e/d          gdd,                    d$-                    e          ~           e!e$e)j.        e8e)j.        e$          fde$d.f e/d+           e/d,          gdde$d.f e/d+           e/d,          gd=de;j<        fd e!e$e)j=                  dfdd$-                    e          z   e!e$e"e)j*        e"e$          fdd$-                    e          z   e!e$e"e)j*        e"e$          fde$dfd e!e$e)j0        e$e>e$          fde$d.fd e!e$e)j0                  dUfd e!e$e)j0        e"e$          fg	dde$d.fde$f e/d+           e/d,          gdde;j<        fde"fdedd$-                    e          d e!e)j*        e$          dfdd$-                    e           z   e!e)j*        e$          dfdez   e!e)j4        e$          df e?d          gi dd e!e:e$          dfde$d.fde:d.f e/d=          g ee)j0                  dde$d.fde$fd e!e)j.        e8          f e/d+           e/d,          gdSd e!e"e$          d.fd e!e"e$ e5e6ddRgC                    fd e!e"e$ e5e6ddRgC          e$e%j'                  fd e!e$ e5e6ddRgC          e$          fd e!e$ e5e6ddRgC          e$          df e/d*           e/d+           e/d,          gdde:d.fd e!e$ e5e6ddRgC          e$          fg ee%j&                  d6de)j@        fgd2de:d.f e/d+          de#d.f e/d,          gdPde$d.f e/d+           e/d,          gd e/d6           e/d,          gdR e/d=          de"fd e!e8e"e>jA                  dfd e!e8e"e>jB                  dfd e!e8e"          dfde)j9        fgdde"d.f e/d=          g ee>          dde>jB        d.f e/d=          g ee>jB                  dde>jA        d.f e/d=          g ee>jA                  dUde$d.f e/dƦ          gdde$dfde$d.f e/dƦ          gd e/d=          de"fd e!e8e"e>jA                  dfd e!e8e"e>jB                  dfd e!e8e"          dfde)j9        fgdde"d.fde$df e/d=          g ee>          dde>jB        d.fde$df e/d=          g ee>jB                  i dde>jA        d.fde$df e/d=          g ee>jA                  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deC          d edeC          d edeC          d edeD           ee%j1                   ee%j3                   ee%j2                   ee:          dZEdS )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.

    .. versionadded:: 2.15
    Wikitextz'https://www.mediawiki.org/wiki/Wikitextwikitext	mediawikiztext/x-wikic                     d                     |           t          t          t          j        t
          t                    dft          d          t          d          gS )N(?i)(</)({})(\s*)(>)r1   entityr   )formatr   r   r   r   r   r
   tag_names    r>   nowiki_tag_ruleszWikitextLexer.nowiki_tag_rules  sP    $++H55xXz;80 80179HFOO	
 	
r=   c                     d                     |           t          t          t          t          j        t          t                    dfgS )Nz(?si)(.*?)(</)({})(\s*)(>)r1   )r  r   r   r   r   r   r   r  s    r>   plaintext_tag_rulesz!WikitextLexer.plaintext_tag_rules'  s?    *11(;;Xd$(J>= >=>DF
 	
r=   c                     d                     |           t          t          t          j        t
          t                    dfd                     |           t          |          fgS )Nr  r1   z(?si).+?(?=</{}\s*>))r  r   r   r   r   r   r   )r  rm   s     r>   delegate_tag_rulesz WikitextLexer.delegate_tag_rules-  sX    $++H55xXz;80 80179$++H55uU||D
 	
r=   c                     d| fd| fd| fgS )Nr   z[^\S\n]+(?s).r<   )tokens    r>   
text_ruleszWikitextLexer.text_rules4  s#    UO% u
 	
r=   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   rS   T>rV   --rU   r   r2   attrstackrW   \blang=("|\'|)(\w+)(\1))ra   rT   rc   r   rj   rb   r   rE   findallrg   r   r   )rk   rl   ctxrT   attr_contentrb   indexr  rm   content
lang_matchr   s               r>   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  rV   r  rU   r   r2   r  r  rW   r  lilypond)
rc   r   rj   rb   r   rE   r  rg   r   r   )
rk   rl   r  r  rb   r  r  r  r  r   s
             r>   handle_scorezWikitextLexer.handle_scorea  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::::::r=   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:////rP  ><   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divrq   kbdrtcsubsupvarwbrabbrciterp   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   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eniukkkusrtguzzhbancrhganshitly>   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   =>   
\#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  r  r  r  DEFAULTSORTKEYr  r   r!  r#  PAGESINCATEGORYPROTECTIONLEVELr$  r%  r&  r*  PAGESINNAMESPACEPROTECTIONEXPIRYr+  r-  DEFAULTCATEGORYSORTr0  r2   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listru   r   z(\]\])(\s*?\n)r1   z(\#)([^#]*?)z	(?i)[{}]+z^;rZ  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-namerv   zmedialink-innerz(?xi)
                (\[\[)(?!z6) # Should not contain URLs
                    (?: ([/r`   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-prerb  z(?i)(<)(categorytree)\b)tag-categorytreerb  z(?i)(<)(hiero)\b)	tag-hierorb  z(?i)(<)(math)\b)tag-mathrb  z(?i)(<)(chem)\b)tag-chemrb  z(?i)(<)(ce)\b)tag-cerb  z(?i)(<)(charinsert)\b)tag-charinsertrb  z(?i)(<)(templatedata)\b)tag-templatedatarb  z(?i)(<)(gallery)\b)tag-galleryrb  )	tag-graphrb  z(?i)(<)(dynamicpagelist)\b)tag-dynamicpagelistrb  z(?i)(<)(inputbox)\b)tag-inputboxrb  z(?i)(<)(rss)\b)tag-rssrb  z(?i)(<)(imagemap)\b)tag-imagemaprb  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(?=\]\]|\{\{|\}\})rB   )r1   r\  )r1   r[  text-italicz(''')('')(?!'))r1   r]  )r1   inline-bold-italic	text-boldrs  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}r/   z(?i)(\#[z]*?|z)(:))r1   template-innerz(%s)(:)z(?i)([%s]*?)(:))r1   template-namerw  z
(\s*?)(\|)z\}\}rv  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   :r0   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-attrrb  z/\s*>r   z\s*>ztag-attr-val-2ztag-attr-val-1ztag-attr-val-0z/?>ra  r  rc  r  rd  r  rm  r  re  r  rn  r  rp  r  ri  r  ztag-timeliner  rk  r  rl  r  ro  r  rf  r   rg  r  rh  r  rj  r  )rr  rt  ru  r   N)Fr3   r4   r5   r6   r7   r   r8   rD   r9   rE   rF   rH   r  r
  r  r  r  r!  
title_charrX  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   rI   r   r   FunctionMagicr  joinr   r
   r   r   
EmphStrongr   rK   r   r   replacer   r:   r   r   	Multiliner   r   r   r   r   Singler!   r   r;   r<   r=   r>   r*   r*     s       	 	 D
3C;'GIILE
 
 

 
 

 
 

 
 
$= $= $=L; ; ;> EJgIxL_O    N
  I '$/  I  K  M<  L  J"    I Xj':{CCEU	W +Xg('*<g>PR\]]_ !Xgoz224 U#G444dm6IJU>""DM$78!(())<)<?, ,-1Z9 *00;;] "
 6Ji6J6J6JKKT]M`b GFOOGHGFOO=
IB 	j A A6Jhh{DJ??@  ,,dh7
CIL 	GT"! 
MI\ 	 [
 [
 GH	[
 !! !!"68[
 '.-8[
 7[
 GM""[
 [
& "zzj#3#3#3#3#35 dn{tO+<==={DJX X!
[
 [
@ xx	****J,>,>sB,G,G,G,G%::*'7'7'7'7'79 dn{tO+<==={DJXce e3[
 [
X xx	****J,>,>sB,G,G,G,G%::*'7'7'7'7'79 dn{tO+<==={DJXce e K[
h F388I..oNNdj*==g[
z +HHWeeD8H&I&I&I-K -KLSU{[
@ $$SXXi%8%899Xk48,,.BDA[
D '--chhy.A.ABBXk48ZEEGE[
J "88KX$ $35K[
P X! !02Q[
V (TX*' *'(IKW[
\ !((;X# #24][
b  +X" "13c[
h  +X" "13i[
n xxX   /1o[
t &xxTX(' ('(GIu[
z (TX*' *'(IK{[
@ #HHTX%' %'(DFA[
F #HHTX%' %'(BDG[
L +HHTX-' -'(LNM[
R $XXTX&' &'(EGS[
X TX!' !'(@BY[
^ $XXTX&' &'(EG_[
d 4Xk48ZEEGe[
h JXk48-CDDFi[
n PQYQYTXz55ffEU3V3V3VXcRe Re fo[
t +Xk48ZEEGu[
x AXk48-CDDFy[
~ GTXz55ffEU3V3V3VXcIe Ie f[
D *Xk48ZEEGE[
H @Xk48\::<I[
N FxxTXz55ffEU3V3V3VXcHe He fO[
T $$SXXk%:%:;;Xk48,,.BDU[
X '--chh{.C.CDDXk48ZEEGY[
`
 FCHH]$;$;F<<g{Xtz;H H
_[
t ;1u[
]IT 	GM""!tx 
UI^ 	+v.k6*GHGFOO
_Il 	k6*!Xk4>8<<>K GHGFOO
mI| 	"K8D&!
}IF 	GN##^! !57',.LMv.GHGM""
GIX 	GN##!. !./HJ'.&1+-KLGHGK  
YIj 	GN##);^! !$&',.GH+-DEGHG&''
kI| 	GN##"GL!2 !239;',.GH+-DEGHG&''
}IN 	 FCHH]$;$;F<<dj!4:{< < ;/GHGFOO
OIj 	[&)GHGFOO
kIt 	&(9:
 dm44! /,1G1GGXk:t}j+VVX*SXXj-A-AAj$-[YY[ k#9:.X{FK19 19 :[&)+tx!@!@BVW(Xk48ZEEG5
uIn	 	{F+K GHGFOO	
o	Iz	 	 '(9:Z   ,6::+.884F+G+G+G+GI446P chh'7889446P #Z/557P G-//)!
{	I If
 	HHT;779STk6*D&!GM""	

 Z!!
g
It
 	k6*K 
 X.. GHGFOO
u
IP 	 +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)
QId 	D&! eeD9) '* '* '*+68 8

 Z*++
eID 	$
EIJ 	D&!GH7F#GFOO	
KIV 	K(GHGFOO
WI` 	GHGFOO
aIh 	GM""Z XXh
FMJJLYXXh
FMJJLY((8Z88,G(
iIz 	J'GM""
 Z
{ID 	6=&)GM""
 Z&&
EIN 	6=&)GM""
 Z&&
OIX 	V,GJ
YI` 	{H-k6*GJ	
aIp 	GM""Z XXh( ()9;XXh( ()9;((8Z88:JK(

qIF 	J'[(+GM""
 Z	
GIR 	6=&)[(+GM""
 Z&&	
SI I I^ 	6=&)[(+GM""
 Z&&	
_Ij 	&&x00kIl 	##E**mIn 	//??oIp 	223DEEqIr 	((11sIt 	++J77uIv 	++J77wIx 	--l;;yIz 	++J77{I| 	**955}I~ 	((11I@ 	&&u--AIB 	&&vx88CID 	&&vx88EIF 	$$T844GIH 	..~yIIII IJ "z',//Z//&Jw'9::
4  QI I IFFFr=   r*   )3r6   rE   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*   r<   r=   r>   <module>r     s    
			 ) ) ) ) ) ) 6 6 6 6 6 6 ( ( ( ( ( ( 2 2 2 2 2 2 * * * * * */ / / / / / / / / / / / / / / / / / / / / /4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5W W W    *   B* * * * *J * * *Ze e e e ez e e eP7 7 7 7 7z 7 7 7t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 v- v- v- v- v-J v- v- v-r\- \- \- \- \-z \- \- \-~d d d d dJ d d d d dr=   