HOME


Mini Shell 1.0
DIR: /usr/lib/python3/dist-packages/pygments/lexers/__pycache__/
Upload File :
Current File : //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/markup.cpython-312.pyc
�

|�ea�����dZddlZddlmZddlmZddlmZddlm	Z	ddl
mZddlm
Z
mZmZmZmZmZmZmZmZdd	lmZmZmZmZmZmZmZmZmZm Z m!Z!dd
l"m#Z#m$Z$gd�Z%Gd�d
e
�Z&Gd�de
�Z'Gd�de
�Z(Gd�de
�Z)Gd�de
�Z*Gd�de
�Z+Gd�de+�Z,Gd�de�Z-Gd�de�Z.Gd�de�Z/Gd �d!e
�Z0Gd"�d#e
�Z1Gd$�d%e
�Z2y)&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��eZdZdZdZdgZdgZdefdedfdefgd	efd
e	e
jee
�fde	ee
�fded
fgd�Zy)rzR
    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�	mimetypesrrrr�	Attributerr�tokens���8/usr/lib/python3/dist-packages/pygments/lexers/markup.pyrrs�����D��j�G� �!�I��t��
��%�(�
�D�M�
��T�N�
'�
�d�n�n�h��
7�
9�#�
�h��
'�
)��G�V�$�

��Fr=rc���eZdZdZdZddgZgZdgZejejzZdefde
ee�fde
ej"ee�ej"e�fd	e
ej,ej.�d
fdefde
eej,e�fd
e
eej,e�fdefde
eee�fdefdefdefdefg
dej,dfdedfdej0fdej0fgd�Zy)rzI
    For MoinMoin (and Trac) Wiki markup.

    .. versionadded:: 0.7
    zMoinMoin/Trac Wiki markupz	trac-wiki�moinztext/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\}\}\}r1z\{\{\{z#pushz[^{}]+)r2rAN)r3r4r5r6r7r8�	filenamesr9�re�	MULTILINE�
IGNORECASE�flagsrrrrr�Headingrr
rr�Builtin�	Namespace�Preprocr;r<r=r>rr@s=���'�D��F�#�G��I�#�$�I��L�L�2�=�=�(�E��w��
�(�7�D�1�2�
*�
�g�o�o�u�T�{�G�O�O�V�
L�
N�"�8�D�L�L�$�.�.�#I�;�W�
/��9�
��$����d�!C�D�
&���t�|�|�T�(J�K�
��(�
-�
�g�v�w�
/�
1�
��!�
!�4�(�
�D�M�
�4�L�'
�,����f�-�
��g�&�
����(�
�7�?�?�#�
�-�Fr=rc�6�eZdZdZdZdZgd�ZddgZddgZe	jZd	�Zd
Z
dZde	je��e	je
��d
�Zdeej&eej&eej&e�fdeej&eej&e�fdeeeeed���fdeeeeed���fdeeeeed���fdeeeeed���fdeeeeed���fdeeeeed���fdefdeeeej4eeeed���fdeeeej8eed���fdeeeej8eed���fdeeeej8eej4eeeed���fdej<fdeeej>e�fdeeed��eed���fd ee jBee e ee �fe"d�gd!efd"e d#fd$ee e jFe �fd%e fd&eejHejJ�fd'eejJejH�fd(ejLfd)ejNfd*e fd+ej8fd,efd-efgd.e fd"eze d/fd0e fgd1�Z(d2�Z)d3�Z*y4)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-rstztext/prs.fallenstein.rstc	#��K�ddlm}|jd�t|j	d�f��|jd�t
|j	d�f��|jd�tj|j	d�f��|jd�t|j	d�f��|jd�t
|j	d�f��|jd�t|j	d�f��|jd	�t
|j	d	�f��d}|jr&	||j	d�j��}|j	d
�}t|�}||j	d�z|j	d�z|j	d
�z}|�|jd
�t|f��yg}|jd�}d}|D]E}	t|	�|kDr0|jt|�dt
|	d|fgf�||	|dz
}�A||	z
}�Gt!||j#|��Ed{���y#t$rY��wxYw7��w)Nr��get_lexer_by_name���������	�
�T�)�pygments.lexersrT�startr�grouprr�Wordr�handlecodeblocks�stripr�lenr�
splitlines�appendr�get_tokens_unprocessed)
�self�matchrT�lexer�	indention�indention_size�code�ins�	codelines�lines
          r>�_handle_sourcecodezRstLexer._handle_sourcecode�s����5��k�k�!�n�k�5�;�;�q�>�9�9��k�k�!�n�d�E�K�K��N�2�2��k�k�!�n�h�m�m�U�[�[��^�;�;��k�k�!�n�k�5�;�;�q�>�9�9��k�k�!�n�d�E�K�K��N�2�2��k�k�!�n�g�u�{�{�1�~�5�5��k�k�!�n�d�E�K�K��N�2�2���� � �
�)�%�+�+�a�.�*>�*>�*@�A���K�K��N�	��Y����E�K�K��N�*�U�[�[��_�<�u�{�{�2��N���=��+�+�a�.�&�$�.�.�����O�O�D�)�	����	�D��4�y�>�)��
�
�C��I��D�$���2G�(H�'I�J�K���^�_�-�-������	�!��e�&B�&B�4�&H�I�I�I��+!�
��
��*	J�s7�D>I+�%I�&C.I+�I)�I+�	I&�#I+�%I&�&I+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\[*`:]+rCz[^`]+r1�`)r2ruryc�T�t|dd�|_tj|fi|��y�NreT�rrer�__init__�rk�optionss  r>r~zRstLexer.__init__�'�� ,�W�6H�$� O������D�,�G�,r=c���|dddk(r	|dddk7ry|jd�}|jd|dz�}|dkDr*|dzdz|k(r||dzd	vr||dz||dz
k(ry
yyyy)NrVz..rWrCg333333�?�
rU���z-=g�?)�find)�text�p1�p2s   r>�analyse_textzRstLexer.analyse_text	s������8�t���Q�q�	�S� 0��
�Y�Y�t�_��
�Y�Y�t�R�!�V�
$����G��Q���
�b� ��R��T�
�d�"��R��T�
�d�2�a�4�j�(��)�#�!�
r=N)+r3r4r5r6r7�urlr8rDr9rErFrHrt�closers�unicode_delimiters�escape�end_string_suffixrrrIrrrr
rrrdr�TagrrL�Classr�Escaper
�Interpol�Variabler:�Strong�Emphr;r~r�r<r=r>r r ms{����D�
4�C�1�G��(�#�I��9�:�I��L�L�E�&J�R*�G�?��%�B�I�I�&8�9�%�B�I�I�g�.�0��!�
�g�o�o�t�W�_�_��G�O�O�T�3�
4�
<�
�g�o�o�t�W�_�_�d�
C�
E�2�
�d�F�E�$�h�$?�
@�
B�B�
�d�F�E�$�h�$?�
@�
B�
D�
�d�F�E�$�h�$?�
@�
B�5�
�d�F�E�$�h�$?�
@�
B�
:�
�d�F�E�$�h�$?�
@�
B�/�
�d�H�e�D��&A�
B�
D�?�
�
!�=�
�k�4�����T��D��1�3�
4�8�
�k�4����5��X�3N�
O�
Q�-�
�k�4����5��X�3N�
O�
Q�J�
�k�4����4����!�4��t�8�)D�F�
G�+�G�O�O�<�
;�
�d�D�J�J��
-�
/�2�
�e�D��1�5��X�3N�
O�
Q�C�
�f�m�m�T�6�6�4��
H�
J��H��o8
�t�T�N�
�F�I�&�
#�
�f�f�o�o�v�
6�
8�
�&�!�
+�
�d�m�m�T�^�^�
4�
6�
*�
�d�n�n�d�m�m�
4�
6�
�W�^�^�,�
����&�
�&�!�
�t�x�x� �
�t�$�
�4�L�
�$�v��
�&�
&���7�
�6�N�
�WP�F�d-�	r=r c
��eZdZdZdZddgZgd�ZddgZdefd	e	jfd
e	jfgdejdfd
edfdejdfdedfde
dfde
fed�defgde	j fed�defdefde	jfgdedfdedfed�gdedfdedfde	jfed�gde	j&fde
fed�gd�Zd �Zy!)"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�r2r�r�r�r�c�8�dD]}|dt|�|k(s�yy)N)z\documentclassz\inputz\documentstylez\relaxT)rg)r�rbs  r>r�zTexLexer.analyse_textHs)��!�	�E��K�S��Z� �E�)��	r=N)r3r4r5r6r7r8rDr9rrrJr�Backtickrr
rr�rrr:rr;r�r<r=r>r!r!s^����D��g��G�+�I��~�.�I��� �
�d�l�l�#�
�t�|�|�$�
��f�o�o�}�5�
�f�l�+�
�f�o�o�}�5�
�F�L�)�
��)�4�
�W���I��
�t�$�	
� ����/��I��
���
��)�
,�d�l�l�;�
��f�f�%�
�F�F�#��F�O�
��f�f�%�
�f�f�%�
�D�L�L�!��F�O�	
�����(�
�G���F�O�
�E'�F�Rr=r!c
�H�eZdZdZdZgd�Zgd�ZddgZdee	e
�dfd	edfd
e	dfed�ge
d�d
e	fd
e	dfgdefdej fdej fdej fdej fde	dfgd
e	dfe
d�dej"fdefdefde	fgd�Zd�Zy)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*.3pmzapplication/x-troffz
text/troffz	(\.)(\w+)�requestz\.z[^\\\n]+�textline�escapesrBr1z	\\"[^\n]*z\\[fn]\wz\\\(.{2}z	\\.\[.*\]rxz\\\nz	"[^\n"]+"z\d+z\S+r/)r2r�r�r�c��|dddk7ry|dddk(ry|dddk(ry|ddj�r|dj�ry	yy)
NrUrCFrWz.\"TrXz.TH g�������?)�isalnum�isspace)r�s r>r�zGroffLexer.analyse_text|s^�����8�s�?�����8�v������8�v�����!�9����4��7�?�?�#4��$5�r=N)r3r4r5r6r7r8rDr9rrrrrr
rrr��Doublerr;r�r<r=r>r"r"Os	����D�'�G�5�I�&��5�I��8�D�'�2�I�>�
�K��+�
�$�
�+��J��
�
�I��
�$��
�D�&�!�
��7�#�
�&�-�-�(�
�&�-�-�(�
�6�=�=�)�
�V�]�]�#�
�d�I�&�
��D�&�!��I��
�6�=�=�)�
�V��
�V��
�T�N�

�-�F�@r=r"c
�6�eZdZdZdZegZgZgZdejdfde
fgdeeje�dfe
d�ejd	fge
d
�efdeee�fdefd
ej$fdej(fdej*fdefded	fdefdefg
d�Zy)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+rBr/z\S)r2r�r�N)r3r4r5r6r7r8rDr9rrLrrrrrrrr�Decimalrr�r�r;r<r=r>r#r#�s�����D��f�G��I��I��G�O�O�%:�;�
�E�N�
�
�x�����>��I�
�4�5��_�_�f�	
&�
��0�
1�8�<�
�x���=�>�
�K� �
����'�
�$�-�-�(�
��
�
�#�
�T�N�
�D�&�!�
�T�N�
�K� �
��Fr=r#c�L�eZdZdZdZegZgZgZddejdfde
fgiZy)r$z�
    Lexer for Mozilla Preprocessor files (with '%' as the marker).

    Other data is left untouched.

    .. versionadded:: 2.0
    �mozpercentpreprocr2z^%r�r�N)r3r4r5r6r7r8rDr9rrLrr;r<r=r>r$r$�sF����D��f�G��I��I�	�
�G�O�O�%:�;�
�E�N�
��Fr=r$c�6��eZdZdZdZdgZdgZgZ�fd�Z�xZ	S)r%z�
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `XmlLexer`.

    .. versionadded:: 2.0
    zXUL+mozpreproczxul+mozpreprocz*.xul.inc�8��t�|�ttfi|��y�N)�superr~rr#�rkr��	__class__s  �r>r~zMozPreprocXulLexer.__init__�s���
����#6�B�'�Br=�
r3r4r5r6r7r8rDr9r~�
__classcell__�r�s@r>r%r%�s/�����D�� �G���I��I�C�Cr=r%c�6��eZdZdZdZdgZdgZgZ�fd�Z�xZ	S)r&z�
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `JavascriptLexer`.

    .. versionadded:: 2.0
    zJavascript+mozpreproczjavascript+mozpreprocz*.js.inc�8��t�|�ttfi|��yr�)r�r~rr#r�s  �r>r~z"MozPreprocJavascriptLexer.__init__�s���
����*=�I��Ir=r�r�s@r>r&r&�s/����#�D�&�'�G���I��I�J�Jr=r&c�6��eZdZdZdZdgZdgZgZ�fd�Z�xZ	S)r'z�
    Subclass of the `MozPreprocHashLexer` that highlights unlexed data with the
    `CssLexer`.

    .. versionadded:: 2.0
    zCSS+mozpreproczcss+mozpreprocz*.css.inc�8��t�|�ttfi|��yr�)r�r~rr$r�s  �r>r~zMozPreprocCssLexer.__init__�s���
����#9�E�W�Er=r�r�s@r>r'r'�s/�����D�� �G���I��I�F�Fr=r'c���eZdZdZdZdZddgZddgZdgZe	jZd	�Zd
e
eje�fde
ej"e�fde
ejeeje�fd
e
ej"eej"e�fde
eeeeed���fde
eeeeed���fde
eeeed���fde
eej,�fdej0fdefed�gdefde
eej0�fde
eej4�fde
eej4�fde
eej,�fde
eej,�fde
eej6�fdej:fde
eej<eeej>e�fde
eej<eeej@e�fd e
eej@eej>�fd!efd"efg
d#�Z!d$�Z"y%)&r(z9
    For Markdown markup.

    .. versionadded:: 2.2
    �Markdownz-https://daringfireball.net/projects/markdown/�markdown�mdz*.mdz
*.markdownztext/x-markdownc#�K�ddlm}|jd�tj|jd�f��|jd�tj|jd�f��|jd��R|jd�t|jd�f��|jd�t|jd�f��|jd�t|jd�f��d}|jr&	||jd�j��}|jd	�}|�|jd	�t|f��n#tg|j|��Ed{���|jd
�tj|jd
�f��y#t$rY��wxYw7�G�w)NrrS�initial�lang�	afterlang�
whitespace�extra�newlinerp�
terminator)
rarTrbrr�rcrrrerfrrrj�rkrlrTrmrps     r>�_handle_codeblockzMarkdownLexer._handle_codeblocksq����5��k�k�)�$�f�o�o�u�{�{�9�7M�M�M��k�k�&�!�6�?�?�E�K�K��4G�G�G��;�;�{�#�/��+�+�l�+�Z����\�9R�R�R��+�+�g�&��e�k�k�'�.B�B�B��k�k�)�$�j�%�+�+�i�2H�H�H���� � �
�)�%�+�+�f�*=�*C�*C�*E�F���{�{�6�"���=��+�+�f�%�v�t�3�3�%�R��)E�)E�d�)K�L�L�L��k�k�,�'����%�+�+�l�:S�S�S��!�
��
��
M�s7�DG�
%F4�/AG�;G�<8G�4	G�=G�?G�Gz(^#[^#].+)(\n)z(^#{2,6}[^#].+)(\n)z^(.+)(\n)(=+)(\n)z^(.+)(\n)(-+)(\n)z^(\s*)([*-] )(\[[ xX]\])( .+\n)rurvz^(\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)
              rxz([^`]?)(`[^`\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)r2ruc�T�t|dd�|_tj|fi|��yr|r}rs  r>r~zMarkdownLexer.__init__ir�r=N)#r3r4r5r6r7r�r8rDr9rErFrHr�rrrIr�
Subheadingrrrr
r�rr�r
r��Deletedr�Entityr�r:�Labelr;r~r<r=r>r(r(�sV���
�D�
9�C��4� �G���&�I�"�#�I��L�L�E�T�<�����$� ?�@�
#�X�g�.@�.@�$�%G�H�
!�8�G�O�O�T�7�?�?�TX�#Y�Z�
!�8�G�,>�,>��g�FX�FX�Z^�#_�`�
/��Z��'�5��X�3N�O�
Q�'��Z��*�e�D��6Q�R�
T�(��Z��%��H�*E�F�
H� ��'�7�<�<�!@�A�
-�v���?�	��

 �
�H��K&
�R�T�N�
"�H�T�6�?�?�$C�D�1�(�4����2P�Q�
+�X�d�G�N�N�-K�L�
,�h�t�W�\�\�.J�K�
)�8�D�'�,�,�+G�H�
+�X�d�G�O�O�-L�M�
�T�[�[�)�
0�
�d�D�H�H�d�D�$�.�.�$�
G�
I�
/�
�d�D�H�H�d�D�$�*�*�d�
C�
E�
+�
�d�D�J�J��d�n�n�
=�
?��$��
�4�L�A!
�QJ�F�X-r=r(c��eZdZdZdZdZdgZdgZdgZe	jZd�Zd�Z
d	eeeej$�fd
eej$e�fdeej&e�fdeeeeeed
���fdeeee�fdeej.�fdeej0�fdeej4�fdeej.�fdeeee�fdefde
fed�ed
�geddd��efgdefdej<fdeeej0e�fdeeej0�fd eeej0�fd!eeej.�fd"eeej.e�fd#eeej>e�fd$ej4fd%ej4fd&ej4fd'ej4fd(ej4fd)ej@fd*ejBfd+eeej4e�fd,eeej4eejDe�fd-eeej4e�fd.eejD�fd/efd0efgd1�Z#d2�Z$y3)4r)z<
    For TiddlyWiki5 markup.

    .. versionadded:: 2.7
    �tiddlerz$https://tiddlywiki.com/#TiddlerFiles�tidz*.tidztext/vnd.tiddlywikic#�K�ddlm}|jd�t|j	d�f��|jd�t|j	d�f��|jd�t
|j	d�f��d}|jr&	||j	d�j��}|j	d�}|�|jd�t|f��ytg|j|��Ed{���|jd�t|j	d�f��y#t$rY��wxYw7�=�w)	zV
        match args: 1:backticks, 2:lang_name, 3:newline, 4:code, 5:backticks
        rrSrUrVrWNrXrY)rarTrbrrcrrerfrrrjr�s     r>r�z"TiddlyWiki5Lexer._handle_codeblock{s����	6��k�k�!�n�f�e�k�k�!�n�4�4��k�k�!�n�f�e�k�k�!�n�4�4��k�k�!�n�d�e�k�k�!�n�4�4���� � �
�)�%�+�+�a�.�*>�*>�*@�A���{�{�1�~���=��+�+�a�.�&�$�.�.�� ��U�%A�%A�$�%G�H�H�H��k�k�!�n�f�e�k�k�!�n�4�4��!�
��
��	I�s7�BE�%D3�8AE�E�.E�3	D?�<E�>D?�?Ec#�K�ddlm}|jd�t|j	d�f��|jd�t|j	d�f��d}|j
r		|d�}|j	d�}|�|jd�t|f��ytg|j|��Ed{���|jd�t|j	d�f��y#t$rY��wxYw7�=�w)	zP
        match args: 1:style tag 2:newline, 3:code, 4:closing style tag
        rrSrUrVN�cssrWrX)	rarTrbrrcrerrrjr�s     r>�_handle_cssblockz!TiddlyWiki5Lexer._handle_cssblock�s�����	6��k�k�!�n�f�e�k�k�!�n�4�4��k�k�!�n�f�e�k�k�!�n�4�4���� � �
�)�%�0���{�{�1�~���=��+�+�a�.�&�$�.�.�� ��U�%A�%A�$�%G�H�H�H��k�k�!�n�f�e�k�k�!�n�4�4��!�
��
��	I�s7�A'C>�*C-�2AC>�>C<�?.C>�-	C9�6C>�8C9�9C>z^(title)(:\s)(.+\n)z^(!)([^!].+\n)z^(!{2,6})(.+\n)z^(\s*)([*#>]+)(\s*)(.+\n)rurvz^(<<<.*\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�suffixrxz\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)r2r�ruc�T�t|dd�|_tj|fi|��yr|r}rs  r>r~zTiddlyWiki5Lexer.__init__r�r=N)%r3r4r5r6r7r�r8rDr9rErFrHr�r�rrrrrIr�rr
rr�r�rr�r
rr�Integerr�r��Regexr:r;r~r<r=r>r)r)ns����
�D�
0�C��g�G��	�I�&�'�I��L�L�E�5�:5�<$�X�g�t�W�_�_�%M�N�
�����$� ?�@�
��'�*<�*<�d�!C�D�*�
�d�G�T�5��X�+F�
G�
I�.�x���f�/M�N�
�h�w�~�~�6�7�
��'�,�,�!7�8�
�h�t�x�x�0�1�
��'�.�.�1�2�
)�8�F�D�&�+I�J�
0�2C�D�
4�6F�G��J���H��9
�>�!�)-�e�=��
�
��T�N�
����'�
*�
�d�G�L�L�$�
/�
1�%�h�t�W�\�\�&B�C�
��$����!=�>�
��$����!?�@�
*�
�d�G�N�N�D�
1�
3�+�
�d�G�O�O�T�
2�
4��4�8�8�$�
�t�x�x�(�
�t�x�x�(�
����!�
�4�8�8�$�
����)�
����%�
'��$����$�)G�H�
4��T�4�8�8�T�4�>�>�4�@�
B�&�x��d�h�h��'E�F�
&�����(@�A��t��
�4�L�Y-
�KS�F�j-r=r)c���eZdZdZdZdZddgZgZdgZe	jZd�Zd�Z
d	�Zd
�Zd�Zd�Zd
ZdZdZdZhd�Zhd�Zhd�Zedhz
Zhd�Zhd�Zhd�Zhd�Zhd�Zhd�Zhd�Z idde!e"e#e"e$�dfde!e%jLe%jLe%jLe"�fd e!e%jNe"�fe(ed!�"�e)jTjVfe(e�e)jTjVfd#jYd$j[e�ee�e)j\fd%jYe�e)jTjVfd&jYed'e�d(��)�e)jTjVfe/d*�e/d+�e/d,�g�dd-e!e$e"�d.fd/e!e$e)j\�fd0jYe�e)j`fg�d*d1e#d2fd3e#fd4e#fg�d+gd5e#f�e/d6��d7e!e%jbe%jd�d8f�d9e%jfd:f�d;e%jbd<f�e/d=��d>e�d?e�d@��dA�e!e$e)jhe$e5e6dBg�C�e$e)j\�dDf�dEd$j[e��dFejodGdH��dIe�dJe�d@��dK�	e!e$e)jhe$e5e6dBg�C�e$e)j\e$�f�dEd$j[e��dLejodGdH��dIe�dJe�d@��dM�	e!e$e)jhe$e5e6dBg�C�e$e)j\e$�dNf�dOjYd$j[e�ee�e!e$e)j\e"�dPf�dQe!e#e"e$e5e6ddRg�C��dSf�dTjYd$j[e��e!e$e)j`�dUf�dVjYd$j[e��e!e$e)j`e"e$�f�dWe!e$e)j`�dXf�dYe!e$e)j`�dZf�d[e!e$e)j`�d\f�d]e!e$e)j`�d^f�d_e!e$e)j`�d`f�dae!e$e)j`�dbf�dce!e$e)j`�ddf�dee!e$e)j`�dff�dge!e$e)j`�dhf�die!e$e)j`�djf�die!e$e)j`�dkf�dle!e$e)j`�dmf�dne!e$e)j`�dof�dpe!e$e)j`�dqf�dre!e$e)j`�dsf�dte!e$e)j`e"e$�f�due!e$e)j`e�f�dve!e$e)j`e"e5e6ddRg�C�e$�f�dwe!e$e)j`e"e$�f�dxe!e$e)j`e�f�dye!e$e)j`e"e5e6ddRg�C�e$�f�dze!e$e)j`e"e$�f�d{e!e$e)j`e�f�d|e!e$e)j`e"e5e6ddRg�C�e$�f�dTjYd$j[e��e!e$e)j`�dUf�dVjYd$j[e��e!e$e)j`e"e$�f�d}jYd$j[e��~�e!e$e#e$e5e6ddg�C�e8e)j\e$�d�f�d�e!e$e5e6dd�g�C�e$�df�d�jYd$j[e��~�e!e$e)j\e$�d�f��dBe/d=�d�e)j`fd�e)j`fg�dNd�e$d.fd�e$d.fe/d+�e/d,�g�dDd�e$d.fd�e!e$e)jre8�fd�e$fe/d+�e/d,�g�d�d�e$d.fd�e:d.fg�d<e/d��d7e!e%jbe%jf�d�fd9e%jdd�fd;e%jbd.fe/d+�e/d��g�d:e/d��d�e!e%jfe%jb�d�fd9e%jfd.fd;e%jdd�fe/d+�e/d��g�d�e/d��d7e!e%jde%jf�d.fd9e%jdd�fd;e%jdd�fe/d+�e/d��g�d8e/d��d�e!e%jde%jb�d.fd9e%jdd�fd;e%jdd�fe/d+�e/d��g�d�d�e"fd�e$fgee#���d�d�jYd$j[e��~�e!e$e5e6ddg�C�e8e)j\e$�fd�e$d.fe/d+�e/d,�g�dd�e$d.fe/d+�e/d,�g�d=d�e;jxfd�e!e$e)jz�d�fd�d$j[e�ze!e$e"e)jTe"e$�fd�d$j[e�ze!e$e"e)jTe"e$�fd�e$d�fd�e!e$e)j`e$e>e$�fd�e$d.fd�e!e$e)j`�dUfd�e!e$e)j`e"e$�fg	�d�d�e$d.fd�e$fe/d+�e/d,�g�id�d�e;jxfd�e"fd�e�d�d$j[e��d��e!e)jTe$�d�fd�d$j[e �ze!e)jTe$�d�fd�eze!e)jhe$�d�fe?d��g�d�d�e!e:e$�d�fd�e$d.fd�e:d.fe/d=�gee)j`���d�d�e$d.fd�e$fd�e!e)j\e8�fe/d+�e/d,�g�dSd�e!e"e$�d.fd�e!e"e$e5e6ddRg�C��fd�e!e"e$e5e6ddRg�C�e$e%jN�fd�e!e$e5e6ddRg�C�e$�fd�e!e$e5e6ddRg�C�e$�d�fe/d*�e/d+�e/d,�g�d�d�e:d.fd�e!e$e5e6ddRg�C�e$�fgee%jL���d6d�e)j�fg�d2d�e:d.fe/d+�d�e#d.fe/d,�g�dPd�e$d.fe/d+�e/d,�g�d�e/d6�e/d,�g�dRe/d=�d�e"fd�e!e8e"e>j��d�fd�e!e8e"e>j��d�fd�e!e8e"�d�fd�e)jrfg�d�d�e"d.fe/d=�gee>���d�d�e>j�d.fe/d=�gee>j����d�d�e>j�d.fe/d=�gee>j����dUd�e$d.fe/dɫg�d�d�e$d�fd�e$d.fe/dɫg�d�e/d=�d�e"fd�e!e8e"e>j��d�fd�e!e8e"e>j��d�fd�e!e8e"�d�fd�e)jrfg�d�d�e"d.fd�e$d�fe/d=�gee>����id�d�e>j�d.fd�e$d�fe/d=�gee>j����d�d�e>j�d.fd�e$d�fe/d=�gee>j����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�ed�eC��d�ed�eC��d�ed�eC���ed�eD�ee%jb�ee%jf�ee%jd�ee:�d��ZEy�)�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�	mediawikiztext/x-wikic��dj|�tttjt
t�dft
d�t
d�gS)N�(?i)(</)({})(\s*)(>)r1�entityr�)�formatrrrr�rr
��tag_names r>�nowiki_tag_ruleszWikitextLexer.nowiki_tag_rulessE��
$�
+�
+�H�
5�x��
�X�X�z�;�80�17�
9��H���F�O�	
�	
r=c��dj|�ttttj
tt�dfgS)Nz(?si)(.*?)(</)({})(\s*)(>)r1)rrrrrr�rrs r>�plaintext_tag_rulesz!WikitextLexer.plaintext_tag_rules's9��
*�
1�
1�(�
;�X�d�
�$�(�(�J��>=�>D�
F�
�	
r=c��dj|�tttjt
t�dfdj|�t
|�fgS)Nrr1z(?si).+?(?=</{}\s*>))rrrrr�rr)rrms  r>�delegate_tag_rulesz WikitextLexer.delegate_tag_rules-sM��
$�
+�
+�H�
5�x��
�X�X�z�;�80�17�
9�
$�
+�
+�H�
5�u�U�|�D�
�	
r=c��d|fd|fd|fgS)Nr�z[^\S\n]+�(?s).r<)�tokens r>�
text_ruleszWikitextLexer.text_rules4s#��
�U�O�
�%� �
�u��
�	
r=c#�lK�ddlm}|j�}d}d}	|jd|�}||dz
|dk7rn|dz}�$|dk(r|j	|dd	g�
�Ed{���y|d|}|j	|dd	g�
�Ed{���|jd�|ztdf��d}||dzd}	tjd|�}
t|
�dk\r|
dd}	||�}|� |j�|zdzt|	f��y|j	|	�Ed{���y7��7��#t$rY�KwxYw7��w)
NrrS�>rV�--rUr�r2�attr��stackrW�\blang=("|\'|)(\w+)(\1))rarTrcr�rjrbrrE�findallrgrr)rkrl�ctxrT�attr_contentrb�indexrrm�content�
lang_matchr�s            r>�handle_syntaxhighlightz$WikitextLexer.handle_syntaxhighlight;ss����5��{�{�}������� �%�%�c�5�1�E��E�!�G�E�*�d�2���A�I�E���B�;��2�2�<��PV�GW�2�X�X�X���F�U�#���.�.�t�F�F�;K�.�L�L�L��k�k�!�n�u�$�k�3�6�6����u�Q�w�x�(���Z�Z� :�D�A�
��z�?�a���b�>�!�$�D�
�)�$�/���=��+�+�-�%�'�!�+�T�7�:�:��3�3�G�<�<�<�+
Y��	M��!�
��
��
=�sU�AD4�D� "D4�D!�AD4�D#�#6D4�D2�D4�!D4�#	D/�,D4�.D/�/D4c#�FK�|j�}d}d}	|jd|�}||dz
|dk7rn|dz}�$|dk(r|j|ddg�	�Ed{���y|d|}||dzd}|j|ddg�	�Ed{���|jd
�|ztdf��tjd|�}t|�dk\r|ddnd}	|	dk(r"t�j|�Ed{���y|j�|zdzt|f��y7��7��7�)�w)
NrrrVrrUr�r2rrrWr�lilypond)
rcr�rjrbrrErrgrr)
rkrlrrrbrrrrr�s
          r>�handle_scorezWikitextLexer.handle_scoreasP�����{�{�}������� �%�%�c�5�1�E��E�!�G�E�*�d�2���A�I�E���B�;��2�2�<��PV�GW�2�X�X�X���F�U�#���u�Q�w�x�(���.�.�t�F�F�;K�.�L�L�L��k�k�!�n�u�$�k�3�6�6��Z�Z� :�D�A�
�$'�
�O�q�$8�z�"�~�a� �j���:��$��=�=�g�F�F�F��+�+�-�%�'�!�+�T�7�:�:�
Y��	M��
G�s7�AD!�D�*D!�D�A0D!�5D�6&D!�D!�D!z0 %!"$&\'()*,\-./0-9:;=?@A-Z\\\^_`~+\u0080-\uFFFFzT(?:\t|&nbsp;|&\#0*160;|&\#[Xx]0*[Aa]0;|[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000])zb(?:[0-9.]+|\[[0-9a-f:.]+\]|[^\x00-\x20"<>\[\]\x7F\xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFFFD])zF[^\x00-\x20"<>\[\]\x7F\xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFFFD]>	�__TOC__�__NOCC__�__NOTC__�	__NOTOC__�__FORCETOC__�
__NOGALLERY__�__NOEDITSECTION__�__NOTITLECONVERT__�__NOCONTENTCONVERT__>
�	__INDEX__�__NOINDEX__�__DISAMBIG__�__NOGLOBAL__�
__HIDDENCAT__�__NEWSECTIONLINK__�__STATICREDIRECT__�__NONEWSECTIONLINK__�__EXPECTUNUSEDCATEGORY__�__EXPECTED_UNCONNECTED_PAGE__>�geo:�sip:�sms:�tel:�urn:�news:�sips:�xmpp:�ftp://�git://�irc://�mms://�ssh://�svn://�ftps://�http://�ircs://�magnet:�mailto:�nntp://�sftp://�bitcoin:�https://�redis://�	gopher://�	telnet://�worldwind://�//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>5�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�wuu-hans�wuu-hant�	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�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��=>�
\#LANGUAGE�LC�NS�UCr��NSE�BIDI�GENDERr��PLURAL�FULLURL�GRAMMAR�LCFIRST�PADLEFT�UCFIRST�FILEPATH�FULLURLE�LOCALURL�PADRIGHT�	FORMATNUM�	LOCALURLE�	URLENCODE�ANCHORENCODE�CANONICALURL�
CANONICALURLE>7r�r��PAGESIZEr�r��	PAGESINNSr�r��
NUMINGROUP�
PAGESINCATr�r��DEFAULTSORTrrrr�DISPLAYTITLErrr
rrr
rrrrr�
NUMBERINGROUPrrrrrrrr�DEFAULTSORTKEYr"r#r$r&�PAGESINCATEGORY�PROTECTIONLEVELr'r(r)r-�PAGESINNAMESPACE�PROTECTIONEXPIRYr.r0�DEFAULTCATEGORYSORTr3r2z~(?xi)
                (\A\s*?)(\#REDIRECT:?) # may contain a colon
                (\s+)(\[\[) (?=[^\]\n]* \]\]$)
            zredirect-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�listrur�z(\]\])(\s*?\n)r1z(\#)([^#]*?)z	(?i)[{}]+z^;rZz^[#:*]+z^-{4,}z~{3,5}rz('')(''')(?!')�inline-italic-boldz'''(?!')�inline-boldz''(?!')�
inline-italic�replaceablez\(?xi)
                (\[\[)
                    (File|Image) (:)
                    ((?: [zO] | \{{2,3}[^{}]*?\}{2,3} | <!--[\s\S]*?--> )*)
                    (?: (\#) ([�#z]*?) )?
                z
wikilink-namervzmedialink-innerz(?xi)
                (\[\[)(?!z6) # Should not contain URLs
                    (?: ([�/r`z$]*) (:))?
                    ((?: [zP] | \{{2,3}[^{}]*?\}{2,3} | <!--[\s\S]*?--> )*?)
                    (?: (\#) ([z/]*?) )?
                (\]\])
                z)
                    (?: ([z1]*?) )?
                    (\|)
                zwikilink-innerzi(?xi)
                (\[)
                    ((?:{}) {} {}*)
                    (\s*)
                z
extlink-innerz^(:*)(\s*?)(\{\|)([^\n]*)$rr�z
(?i)(<)({})\bztag-inner-ordinaryz(?i)(</)({})\b(\s*)(>)z(?i)(<)(nowiki)\b)�
tag-nowiki�	tag-innerz(?i)(<)(pre)\b)�tag-prerez(?i)(<)(categorytree)\b)�tag-categorytreerez(?i)(<)(hiero)\b)�	tag-hierorez(?i)(<)(math)\b)�tag-mathrez(?i)(<)(chem)\b)�tag-chemrez
(?i)(<)(ce)\b)�tag-cerez(?i)(<)(charinsert)\b)�tag-charinsertrez(?i)(<)(templatedata)\b)�tag-templatedatarez(?i)(<)(gallery)\b)�tag-galleryre)�	tag-graphrez(?i)(<)(dynamicpagelist)\b)�tag-dynamicpagelistrez(?i)(<)(inputbox)\b)�tag-inputboxrez(?i)(<)(rss)\b)�tag-rssrez(?i)(<)(imagemap)\b)�tag-imagemaprez#(?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*) (:)
                    )?
                )�variantszlc-rawzlc-innerzS(?xi)
                (-\{)
                    ([a-z\s;-]*?) (\|)
                zlc-flagz�(?xi)
                (-\{{) (?!\{{) # Use {{ to escape format()
                    (?: (\s* (?:{variants}) \s*) (:))?
                z[^{<]+rz(?=\[\[)z\]\]z(\|)([^\n=|]*)(=)z\|zquote-commonz(?=\]\]|\{\{|\}\})rB)r1r_)r1r^�text-italicz(''')('')(?!'))r1r`)r1�inline-bold-italic�	text-boldrv�text-bold-italicr/�;z{(?xi)
                (;)
                (?: ([^;]*?) (=>))?
                (\s* (?:{variants}) \s*) (:)
                z	;?\s*?\}-z\}-z<!--[\s\S]*?(?:-->|\Z)zk(?x)
                (\{{3})
                    ([^|]*?)
                    (?=\}{3}|\|)
                zparameter-innerz(?i)(\{\{)(\s*)(%s)(\s*)(\}\})z(\{\{)(\s*)(%s)(\s*)(\}\})z\{\{ztemplate-begin-spacez(?i)(<)(tvar)\b(\|)([^>]*?)(>)z</>z(?i)(<)(tvar)\bz(?i)(</)(tvar)\b(\s*)(>)z\}{3}z(?i)(\#[z]*?|z)(:))r1�template-innerz(%s)(:)z(?i)([%s]*?)(:))r1�
template-namer{z
(\s*?)(\|)z\}\}rzz�(?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��:r0z
nowiki-ishz(=)(\s*)(")z
attr-val-2z(=)(\s*)(')z
attr-val-1z(=)(\s*)z
attr-val-0z[\w:-]+z\s�'�"z/?\s*>ztag-attrrez/\s*>r�z\s*>ztag-attr-val-2ztag-attr-val-1ztag-attr-val-0z/?>rdr�rfr�rgr�rpr�rhr�rqr�rsr�rlr�ztag-timeliner�rnr�ror�rrr�rir�rjr�rkr�r�)rmrurwrxr�N)Fr3r4r5r6r7r�r8rDr9rErFrHrr
rrrr!�
title_charr[�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_functionsrrrrrr�rIrr�Function�Magicr�joinr�r
r�r��
EmphStrongr�rKrr
�replacerr:rr�	Multiliner�rrr�r��Singler!rr;r<r=r>r*r*
s���	��D�
3�C��;�'�G��I���I��L�L�E�
�
�
�
�$=�L;�>E�J�g�I�x�L�_�O����N�
�I�'�$��/���I��K��M�@�L��J�"����d����j�'�:�{�
C�EU�	
W�+�
�g�(�(�'�*<�*<�g�>P�>P�R\�
]�
_�!�
�g�o�o�z�
2�
4��#�G�
4�d�m�m�6I�6I�J�
�>�
"�D�M�M�$7�$7�8�
!�
(�
(����)�)<�
�?�,�-1�Z�Z�
9�*�
0�
0��
;�
�]�]�
 �
 �
"��
����i�[��6J��K�T�]�]�M`�M`�
b�
�F�O��H���F�O�=
�d�B	�
���j� A�6�J�
�h�{�D�J�J�?�@�
�
 �
 ��
,�d�h�h�7�
�Cd�L	�
�G�T�"�
��!�
�� �

�Md�\	�q
�
�� �q
�
�H��	q
������
�
�
�!!�"6�
8�
q
��'�.�.�-�8�q
������7�q
�
�M�"�q
�&"�j�\��#3�5���d�n�n�{��t�O�+<�=�{�D�J�J�X�!�

�q
�@�x�x�	�*�J�,>�,>�s�B�,G�!�j�\��#3�5���d�n�n�{��t�O�+<�=�{�D�J�J�Xc�e�
�3q
�X�x�x�	�*�J�,>�,>�s�B�,G�!�j�\��#3�5���d�n�n�{��t�O�+<�=�{�D�J�J�Xc�e� �
�Kq
�h��F�3�8�8�I�.��o�N���d�j�j�*�=��
�gq
�z+�H�W�
��e�D���8H�&I�-K�LS�
U�{q
�@�
$�
$�S�X�X�i�%8�
9�
�k�4�8�8�
,�.B�
D�Aq
�D'�
-�
-�c�h�h�y�.A�
B�
�k�4�8�8�Z��
E�
G�Eq
�J"�8�K�
�X�X�$�3�
5�Kq
�P���
�X�X�!�0�
2�Qq
�V(���T�X�X�*'�(I�
K�Wq
�\!�(�;�
�X�X�#�2�
4�]q
�b ��+�
�X�X�"�1�
3�cq
�h ��+�
�X�X�"�1�
3�iq
�n�x��
�X�X� �/�
1�oq
�t&�x��T�X�X�('�(G�
I�uq
�z(���T�X�X�*'�(I�
K�{q
�@#�H��T�X�X�%'�(D�
F�Aq
�F#�H��T�X�X�%'�(B�
D�Gq
�L+�H��T�X�X�-'�(L�
N�Mq
�R$�X��T�X�X�&'�(E�
G�Sq
�X���T�X�X�!'�(@�
B�Yq
�^$�X��T�X�X�&'�(E�
G�_q
�d4�
�k�4�8�8�Z��
E�
G�eq
�hJ�
�k�4�8�8�-C�
D�
F�iq
�nP�QY��T�X�X�z�5��f�f�EU�3V�Xc�Re�
f�oq
�t+�
�k�4�8�8�Z��
E�
G�uq
�xA�
�k�4�8�8�-C�
D�
F�yq
�~G���T�X�X�z�5��f�f�EU�3V�Xc�Ie�
f�q
�D*�
�k�4�8�8�Z��
E�
G�Eq
�H@�
�k�4�8�8�\�
:�
<�Iq
�NF�x��T�X�X�z�5��f�f�EU�3V�Xc�He�
f�Oq
�T�
$�
$�S�X�X�k�%:�
;�
�k�4�8�8�
,�.B�
D�Uq
�X'�
-�
-�c�h�h�{�.C�
D�
�k�4�8�8�Z��
E�
G�Yq
�`��F�C�H�H�]�$;�F�<���g�{��t�F�H�+=�>�!�4�:�:�{�<��

�_q
�~����t�F�I�+>�?�$�&��	
�}q
�T��F�C�H�H�]�$;�F�<���d�j�j�+�>��

�Sq
�]d�@	��M�"�
����!�
�t�x�x� �
�Ad�J	�
�+�v�.�
�k�6�*��H���F�O�
�Kd�X	�
�k�6�*�
!�
�k�4�>�>�8�
<�
>�
�K� ��H���F�O�

�Yd�h	�
"�K��8�
�D�&�!�
�id�r	��N�#�
�����
�^�^�!�5�
7�
�'�,�,�.L�M�
����v�.��H���M�"�
�sd�D	��N�#�
��������!.�/H�
J�
�'�.�.�&�1�
��+�+�-K�L��H���K� �
�Ed�V	��N�#�
���);�);�
�^�^�!�$�
&�
�'�,�,�.G�H�
��+�+�-D�E��H���&�'�
�Wd�h	��N�#�
���"�"�G�L�L�!2�39�
;�
�'�,�,�.G�H�
��+�+�-D�E��H���&�'�
�id�z	�
�Z� �
�;��
���
 �
�{d�D		���F�C�H�H�]�$;�F�<���e�D���8J�&K�!�4�:�:�{�<�

��;��/��H���F�O�

�E	d�`		�
�[�&�)��H���F�O�
�a	d�j		�
&��(9�(9�:��
��d�m�m�4�!�
�/����,�1G�
G�
�k�:�t�}�}�j�+�
V�
X�
*�S�X�X�j�-A�
A���j�$�-�-��[�Y�
[��k�#9�:�
.���
�X�X�{�F�K�19�
:�
�[�&�)�
��+�t�x�x�!@�BV�W�
(�
�k�4�8�8�Z��
E�
G�5
�k	d�d
	�
�{�F�+�
�K� ��H���F�O�	
�e
d�p
	�'��(9�(9�:�
�Z� �,6�+.�8�8�4F�+G�I������4�6P�
��c�h�h�'7�8�9������4�6P�
�#�Z�/������5�7P�
�
�-�/�)!
�q
d�\	�
�H�T�;�7�9S�T�
�k�6�*�
�D�&�!��M�"�	
�
����
!�
�]d�j	�
�k�6�*�
�K� ��
����X�.�

�
�H���F�O�

�kd�F	�+�
�j�+�
.��
8�0��*�k�
�4���/�
0�22�
3����[�%����E)�3*�+6����I�	
����e�D���9)�'*�+6�8�
����e�D���9)�'*�+6�8��
�
�F�O��H���F�O�Q)
�Gd�Z
	�
�D�&�!����e�D���9)�'*�+6�8�

�
���*�*�
+�
�[
d�z
	�
����$�
�{
d�@	
�
�D�&�!��H��
�7�F�#��F�O�	
�Ad�L	�
�K��(��H���F�O�
�Md�V	��H���F�O�
�Wd�^	��M�"�
�Z� �
�X�h�
�F�M�M�J�L�Y�
�X�h�
�F�M�M�J�L�Y�
�(�8�Z�8�,�G�
����(�

�_d�p	�
�J��'��M�"�
���
�
�qd�z	�
�6�=�=�&�)��M�"�
���
�
�
&�
�{d�D	�
�6�=�=�&�)��M�"�
���
�
�
&�
�Ed�N	�
��V�,��J��
�Od�V	�
�{�H�-�
�k�6�*��J��	
�Wd�f	��M�"�
�Z� �
�X�h�
����(�)9�
;�
�X�h�
����(�)9�
;�
�(�8�Z�8�:J�K�
����(�

�gd�|	�
�J��'�
�[�(�+��M�"�
���
�	
�}d�H	�
�6�=�=�&�)�
�[�(�+��M�"�
���
�
�
&�	
�Id�T	�
�6�=�=�&�)�
�[�(�+��M�"�
���
�
�
&�	
�Ud�`	�&�x�0�ad�b	�#�E�*�cd�d	�/��?�ed�f	�2�3D�E�gd�h	�(��1�id�j	�+�J�7�kd�l	�+�J�7�md�n	�-�l�;�od�p	�+�J�7�qd�r	�*�9�5�sd�t	�(��1�ud�v	�&�u�-�wd�x	�&�v�x�8�yd�z	�&�v�x�8�{d�|	�$�T�8�4�}d�~/�~�y�I�!�'�,�,�/�����/�&�w�'9�'9�:��4� �Gd�Fr=r*)3r6rE�pygments.lexers.htmlr�pygments.lexers.javascriptr�pygments.lexers.cssr�pygments.lexers.lilypondr�pygments.lexers.datar�pygments.lexerrr	r
rrr
rrr�pygments.tokenrrrrrrrrrrr�
pygments.utilrr�__all__rrr r!r"r#r$r%r&r'r(r)r*r<r=r>�<module>r�s����
�)�6�(�2�*�/�/�/�4�4�4�4�5�W���*��B*�J�*�Ze�z�e�P7�z�7�t5��5�p&�*�&�R�0��*
C��
C� 
J��
J� 
F��
F� v-�J�v-�r\-�z�\-�~A�J�Ar=