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__/dsls.cpython-312.pyc
�

|�e����|�dZddlZddlmZmZmZmZmZmZm	Z	m
Z
mZddlm
Z
mZmZmZmZmZmZmZmZgd�ZGd�de�ZGd�d	e�ZGd
�de�ZeZGd�d
e�ZGd�de�ZGd�de�ZGd�de�ZGd�de�ZGd�de�Z Gd�de�Z!Gd�de�Z"Gd�de�Z#y)z�
    pygments.lexers.dsls
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for various domain-specific languages.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)	�ExtendedRegexLexer�
RegexLexer�bygroups�words�include�default�this�using�combined)	�Text�Comment�Operator�Keyword�Name�String�Number�Punctuation�
Whitespace)�
ProtoBufLexer�	ZeekLexer�PuppetLexer�RslLexer�MscgenLexer�VGLLexer�
AlloyLexer�PanLexer�
CrmshLexer�ThriftLexer�
FlatlineLexer�
SnowballLexerc��eZdZdZdZdZddgZdgZdefde	fd	e
jfd
e
jfe
ddd�
�efe
dd��ejfdej fdeej$e�dfdeej&e�dfdeej&e�dfdefdefdej,fdej,fdej,fdej.fdej0fdej2fdefd eej8ee�fd!efgd"ej$d#fed#�gd"ej<d#fed#�gd"ed#fed#�gd$�Zy%)&rzP
    Lexer for Protocol Buffer definition files.

    .. versionadded:: 1.4
    zProtocol Bufferz/https://developers.google.com/protocol-buffers/�protobuf�protoz*.protoz[ \t]+z[,;{}\[\]()<>]z/(\\\n)?/(\n|(.|\n)*?[^\\]\n)z/(\\\n)?\*(.|\n)*?\*(\\\n)?/)�import�option�optional�required�repeated�reservedr�packed�ctype�
extensions�to�max�rpc�returns�oneof�syntax�\b��prefix�suffix)�int32�int64�uint32�uint64�sint32�sint64�fixed32�fixed64�sfixed32�sfixed64�float�double�bool�string�bytes�r6�(true|false)\bz(package)(\s+)�packagez(message|extend)(\s+)�messagez(enum|group|service)(\s+)�typez\".*?\"z\'.*?\'z'(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[LlUu]*z(\d+\.\d*|\.\d+|\d+[fF])[fF]?z(\-?(inf|nan))\bz0x[0-9a-fA-F]+[LlUu]*z0[0-7]+[LlUu]*z
\d+[LlUu]*z[+-=]z([a-zA-Z_][\w.]*)([ \t]*)(=)z[a-zA-Z_][\w.]*�[a-zA-Z_]\w*�#pop)�rootrHrIrJN) �__name__�
__module__�__qualname__�__doc__�name�url�aliases�	filenamesrrr
�Single�	Multilinerr�Type�Constantr�	Namespace�Declarationrr�Float�Hex�Oct�Integerrr�	Attributer�Class�tokens���6/usr/lib/python3/dist-packages/pygments/lexers/dsls.pyrrs�����D�
;�C��7�#�G���I��
�#�
��,�
-�w�~�~�>�
,�g�.?�.?�@�
�<�EJ�RW�Y��	
�
�>�GL�M��\�\�	
�
�� 0� 0�1�
���):�):�J� G��S�
%�
�g�)�)�:�
6�	�
C�
)�
�g�)�)�:�
6��
@�
�� �
�� �
7����F�
-�v�|�|�<�
 �&�,�,�/�
%�v�z�z�2�
��
�
�+�
�F�N�N�+�
�x� �
,�
�d�n�n�j�(�
;�
=�
��&�A!
�F�d�n�n�f�5��F�O�
�
�d�j�j�&�1��F�O�
�
�d�F�+��F�O�
�W/�Frdrc��eZdZdZdZdZdgZdgZdgZe	d�e	d�d	e
jed
d�fde
jed
d
�fdeej e�dfdeej$e�dfdeee�ej,ee�fe	d�e	d�defdefdefgdefdefgdefdefdej4fgde
j6fgd	e
jdfde
jfgd e
jdfd!e
jfgd"ej dfed�gd#ej:dfed�gd$efd%ej<fd&ej$fed'd(�)�ej fed*d(�)�ej@fed+d(d(�,�ejBfgd-e"jFfd.e"jHfd/e"jJfgd0�
Z&y1)2rzF
    For Thrift interface definitions.

    .. versionadded:: 2.1
    �Thriftzhttps://thrift.apache.org/�thriftz*.thriftzapplication/x-thrift�
whitespace�comments�"�stringescape�dqsz\'�sqsz(namespace)(\s+)�	namespacez*(enum|union|struct|service|exception)(\s+)�classzE((?:(?:[^\W\d]|\$)[\w.\[\]$<>]*\s+)+?)((?:[^\W\d]|\$)[\w$]*)(\s*)(\()�keywords�numbersz[&=]z[:;,{}()<>\[\]]z[a-zA-Z_](\.\w|\w)*�\n�\s+�#.*$z//.*?\n�/\*[\w\W]*?\*/z\\([\\nrt"\'])rLz	[^\\"\n]+�'z
[^\\\'\n]+z[a-z*](\.\w|\w)*rKz1(async|oneway|extends|throws|required|optional)\brGz(const|typedef)\b)�
cpp_namespace�cpp_include�cpp_type�java_package�cocoa_prefix�csharp_namespace�delphi_namespace�
php_namespace�	py_module�perl_package�ruby_namespace�smalltalk_category�smalltalk_prefix�xsd_all�xsd_optional�xsd_nillable�
xsd_namespace�	xsd_attrsrr3rF)�voidrC�byte�i16�i32�i64rBrD�binary�map�list�set�slist�senum)e�BEGIN�END�	__CLASS__�__DIR__�__FILE__�__FUNCTION__�__LINE__�
__METHOD__�
__NAMESPACE__�abstract�alias�and�args�as�assert�begin�break�case�catchrp�clone�continue�declare�defr�del�delete�do�dynamic�elif�else�elseif�elsif�end�
enddeclare�endfor�
endforeach�endif�	endswitch�endwhile�ensure�except�exec�finallyrA�for�foreach�function�global�goto�if�
implementsr$�in�inline�
instanceof�	interface�is�lambda�module�native�new�next�nil�not�or�pass�public�print�private�	protected�raise�redo�rescue�retry�register�return�self�sizeof�static�super�switch�synchronized�thenr	�throw�	transient�try�undef�unless�unsigned�until�use�var�virtual�volatile�when�while�with�xor�yieldr4z1[+-]?(\d+\.\d+([eE][+-]?\d+)?|\.?\d+[eE][+-]?\d+)z[+-]?0x[0-9A-Fa-f]+z[+-]?[0-9]+)
rMrirjrlrmrnrorprqrrN)'rNrOrPrQrRrSrTrU�	mimetypesrr�DoublerrVrrrZrr[r
r	r�Functionrrr
rW�EscaperrarYrrX�Reservedrr\r]r_rbrcrdrerrUs����
�D�
&�C��j�G���I�'�(�I�
�L�!��J��
�6�=�=�(�>�5�"A�B�
�F�M�M�8�N�E�#B�C�
 ���*�*�J�7��
F�
:���,�,�j�9�7�
D���e�D�k�4�=�=�*�h�
G�
I�
�J���I��
�h��
��-�
#�T�*�#
�(�J��
�Z� �
�
�g��
��!�
�� 1� 1�2�
���
�
�.�
��6�=�=�&�)�
�6�=�=�)�
�
�6�=�=�&�)�
�F�M�M�*�
�
!�$�.�.�&�9��F�O�
�
�d�j�j�&�1��F�O�
�
B�7�K�
�� 0� 0�1�
!�7�#6�#6�7�
�(�16�
7��
�
�
 ���"'�(��\�\�	
�
�E�$�U�%,�&�
�
�'
�#%
�NB�6�<�<�P�
#�V�Z�Z�0�
�V�^�^�,�
�m[�Frdrc� �eZdZdZdZdZddgZddgZdZd	Z	d
Z
ed�ed�ed
�ed�ed�ed�ed�ed�ed�dejfed�gdefdefdeee�fgdefgdej$fdej$fdeej$eej$�fgeddd� �ej*fged!d�"�ej,fd#eej,eej0eej,�fd$eeeej2eeeej,�fd%eeeeee�fd&eeeej,eej2�fged'd�"�efd(efd)ej4fd*eej6eej6�fgd+ed,fd-ej:d.fd/ej<fd0efd1efd2efd3ezd4zej@fe	d5zejBfe	dzejBfd6ejDfe
d7ze
zd8zefgd9efd:efd;ej0fd<efgd=e#fd>e#fgd?eee#�fd@efgdAejHfdBejHfd+edCfdDefgdAejHfdEej:dCfdDej:fgdF�
Z%yG)Hrz6
    For Zeek scripts.

    .. versionadded:: 2.5
    �Zeekzhttps://www.zeek.org/�zeek�broz*.zeekz*.broz[0-9a-fA-F]z(((\d*\.?\d+)|(\d+\.?\d*))([eE][-+]?\d+)?z[A-Za-z0-9][-A-Za-z0-9]*rirj�
directives�
attributes�typesrq�literals�	operators�punctuationz2((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)(?=\s*\()�identifiersrsrtz(\\)(\n)ruz)@(load-plugin|load-sigs|load|unload)\b.*$z=@(DEBUG|DIR|FILENAME|deprecated|if|ifdef|ifndef|else|endif)\bz(@prefixes)(\s*)((\+?=).*)$)�redef�priority�logr&r�add_func�delete_func�expire_func�read_expire�write_expire�
create_expirer��
persistent�rotate_interval�rotate_size�encrypt�
raw_output�	mergeable�
error_handler�type_column�
deprecated�&r3r4)�any�enum�recordr��table�vectorr��hook�event�addrrC�countrB�file�int�interval�pattern�portrD�subnet�timerFzA(opaque)(\s+)(of)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)\bzR(type)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)(\s*)(:)(\s*)\b(record|enum)\bz<(type)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)(\s*)(:)zI(redef)(\s+)(record|enum)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)\b)r�exportr�r�r�r�r�r�r�r��fallthroughr�rr��addr�r��timeout�schedulez	(print)\bz(global|local|const|option)\bz4(module)(\s+)(([A-Za-z_]\w*)(?:::([A-Za-z_]\w*))*)\brkrDz/(?=.*/)�regexz(T|F)\bz \d{1,5}/(udp|tcp|icmp|unknown)\bz(\d{1,3}.){3}(\d{1,3})\bzH\[([0-9a-fA-F]{0,4}:){2,7}([0-9a-fA-F]{0,4})?((\d{1,3}.){3}(\d{1,3}))?\]z0[xX]z+\bz!\s*(day|hr|min|sec|msec|usec)s?\bz(\d+)\bz(\.z)+z[!%*/+<=>~|&^-]z([-+=&|]{2}|[+=!><-]=)z(in|as|is|of)\bz\??\$z
[{}()\[\],;.]z[?:]z([a-zA-Z_]\w*)(::)rKz\\.z%-?[0-9]*(\.[0-9]+)?[DTd-gsx]rL�.�/)
rMrirjr�r�rrqrrrrrDr-N)&rNrOrPrQrRrSrTrU�_hex�_float�_hrrr�rrrr
�Preprocrr�PseudorXr�Wordrar[rZr�RegexrYrr]r\r_rr�rbrcrdrerr�s����
�D�
!�C��u�o�G��7�#�I��D�
8�F�	$�B�
�L�!��J���L�!��L�!��G���J���J���K� ��M�"�
B��
�
�
��M�"�

� �J��
�Z� �
�(�4��4�5�
��g��
�
:�7�?�?�K�
M�w���_�
+�X�g�o�o��G�O�O�.-�
.�
��1�
�E�+��^�^�

�
��C�
���\�\�

�R�����z�8�=�=�*�g�l�l�[�
]�c���*�d�j�j�*�h�PZ�\c�\h�\h�i�
k�M���*�d�J��I�
K�Z���*�g�l�l�J��
�
�S�
U�%
�.�3�
���

��7�#�
-�w�/B�/B�C�
D���*�*�J����G�
I�
��6�8�$�
�&�,�,��0�
��)�)�*�1�&�9�)�&�1�Y�Z`�a���_�v�
%�v�z�z�2�
�:�
:�F�L�L�I�
�e�^�V�\�\�*�
����(��&�[�2�
��
%�v�.�5
�< ��*�
&��1�
����/�
�x� �	
��{�+�
�k�"�

�#�H�T�;�$?�@�
�d�#�
��V�]�]�#�
-�v�}�}�=�
�6�6�"�
�6�N�	
��V�]�]�#�
�6�<�<��(�
�6�<�<� �
�QM�Frdrc��eZdZdZdZdZdgZdgZed�ed�ed�ed	�ed
�ed�de	fd
e
fgdee
e�fdejfgdefdejfgdej"fdeej$e	ee	�fdej$fgdej*fdej*fdej,fdej.fdej0j2fdej0fgeddd��efgdefd efgd!�Zy")#rzB
    For Puppet configuration DSL.

    .. versionadded:: 1.6
    �Puppetzhttps://puppet.com/�puppetz*.pprjrq�namesrrr�stringsz[]{}:(),;[]rtz(\s*)(#.*)$z/(\\\n)?[*](.|\n)*?[*](\\\n)?/z(=>|\?|<|>|=|\+|-|/|\*|~|!|\|)z(in|and|or|not)\brKz(\$\S+)(\[)(\S+)(\])z\$\S+z'(\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?j?z\d+[eE][+-]?[0-9]+j?z	0[0-7]+j?z0[xX][a-fA-F0-9]+z\d+Lz\d+j?)m�absent�alertr��audit�augeas�beforer��checkrp�computer�
configured�	contained�create_resources�crit�cron�debugr�define�defined�	directoryr�r��emerg�errr��	extlookup�fail�falser!�
filebucket�	fqdn_rand�generate�hostr�r$r�info�inherits�inline_template�	installedr��k5login�latest�link�loglevel�macauthorization�	mailalias�maillist�mcx�md5�mount�mounted�nagios_command�nagios_contact�nagios_contactgroup�nagios_host�nagios_hostdependency�nagios_hostescalation�nagios_hostextinfo�nagios_hostgroup�nagios_service�nagios_servicedependency�nagios_serviceescalation�nagios_serviceextinfo�nagios_servicegroup�nagios_timeperiod�node�noop�notice�notifyrH�present�purged�realize�regsubst�	resources�role�router�runningr,�scheduled_task�search�
selboolean�	selmodule�service�sha1�
shellquote�split�sprintf�ssh_authorized_key�sshkey�stage�stopped�	subscribe�tag�tagged�template�tidy�truer��	unmounted�user�
versioncmp�vlan�warning�yumrepo�zfs�zone�zpoolz(?i)r3r4z	"([^"])*"z
'(\\'|[^'])*')rMrjrr:rrrqr;N)rNrOrPrQrRrSrTrUrrrrr
rWrr5rr`�Variablerrr\r^r]r_�Longrrrbrcrdrerras~���
�D�
�C��j�G���I�
�J���J���G���I���K� ��I��
�[�)�
�Z� �

��X�j�'�:�;�
.��0A�0A�B�
�/��9�
!�8�=�=�1�
��d�n�n�-�
$�h�t�}�}�k�/5�{�'D�
E�
�t�}�}�%�	
�8����F�
$�f�l�l�3�
�6�:�:�&�
!�6�:�:�.�
�f�n�n�)�)�*�
�v�~�~�&�
���,"(��-7�.�/
�
�<�6�"�
�v�&�
�KJ�Frdrc���eZdZdZdZdZdgZdgZdgZe	je	jzZde
dd	d	�
�efdejfdefd
efdefdefdeeej(eej(�fdeeej(eeee�fdej,fdej.fdefdej2fdefdej8fdej:fdej<fdefdefgiZd�Z y)rz�
    RSL is the formal specification
    language used in RAISE (Rigorous Approach to Industrial Software Engineering)
    method.

    .. versionadded:: 2.0
    �RSLz"http://en.wikipedia.org/wiki/RAISE�rslz*.rslztext/rslrM)J�Bool�Char�Int�Nat�Realr�Unit�abs�all�alwaysrr��axiom�cardr��channel�chaosrp�
devt_relation�dom�elemsr�r�r��exists�extendrPr��hd�hider�r�r��inds�
initialiser"�inter�isin�len�let�local�
ltl_assertion�object�of�out�post�pre�read�real�rng�scheme�skip�stop�swapr��theory�	test_case�tl�transition_systemr�rJ�unionr�r��value�variabler�r��writez~isinz-inflistz-infsetz-listz-setr3r4z(variable|value)\bz--.*?\nz<:.*?:>z	\{!.*?!\}�	/\*.*?\*/z^([ \t]*)([\w]+)([ \t]*)(:[^:])z5(^[ \t]*)([\w]+)([ \t]*)(\([\w\s,]*\))([ \t]*)(is|as)z\b[A-Z]\w*\brGz".*"z\'.\'zq(><|->|-m->|/\\|<=|<<=|<\.|\|\||\|\^\||-~->|-~m->|\\/|>=|>>|\.>|\+\+|-\\|<->|=>|:-|~=|\*\*|<<|>>=|\+>|!!|\|=\||#)z [0-9]+\.[0-9]+([eE][0-9]+)?[fd]?z0x[0-9a-f]+�[0-9]+rtr.c�P�tjd|tj��yy)zP
        Check for the most common text in the beginning of a RSL file.
        zscheme\s*.*?=\s*class\s*typeNg�?)�rer�I)�texts re�analyse_textzRslLexer.analyse_text�s%���9�9�4�d�B�D�D�A�M��NrdN)!rNrOrPrQrRrSrTrUr�r��	MULTILINE�DOTALL�flagsrrr[r
rrrr�rrXrYrr�rrr\r]r_rbr�rcrdrerr�sT����D�
.�C��g�G��	�I���I��L�L�2�9�9�$�E�	�
��!&�e�5��
�#�G�$7�$7�8�
��!�
��!�
�7�#�
�7�#�
/��*��
�
�z�4�=�=�2:�
;�
E�
�j�$�-�-��T��W�&�
'��g�l�l�+�
�� 0� 0�1�
�f��
�v�{�{�#�F�
�
�1�&�,�,�?�
�V�Z�Z�(�
����'�
�Z� �
�4�L�G$
�&�F�Prdrc�p�eZdZdZdZdZddgZdgZdZde	jfd	ejfd
e
jfde	fde
fd
ejfeej fdedfdefed�g
dedfedzezeej(ee
ee�fdefed�gdej0fdej2fdefgd�Zy)rz6
    For Mscgen files.

    .. versionadded:: 1.6
    �Mscgenz!http://www.mcternan.me.uk/mscgen/�mscgen�mscz*.mscz(\w+|"(?:\\"|[^"])*")zmsc\bzO(hscale|HSCALE|width|WIDTH|wordwraparcs|WORDWRAPARCS|arcgradient|ARCGRADIENT)\bz)(abox|ABOX|rbox|RBOX|box|BOX|note|NOTE)\bz(\.|-|\|){3}zT(?:-|=|\.|:){2}|<<=>>|<->|<=>|<<>>|<:>|->|=>>|>>|=>|:>|-x|-X|<-|<<=|<<|<=|<:|x-|X-|=z\*z\[�attrsz	\{|\}|,|;rjz\]rLz
(\s*)(=)(\s*)�,z
(?://|#).*?\nz/\*(?:.|\n)*?\*/z
[ \t\r\n]+)rMr�rjN)rNrOrPrQrRrSrTrU�_varrrXr�Propertyrr5�Builtinr�rrrr`rrr
rVrWrbrcrdrerr�s#���
�D�
-�C����G��	�I�#�D��w�|�|�$�,�-1�]�]�
<�:�8�=�=�I�
�g�&�)�+3�
4�
�D�L�L�!�
�4�=�=�!�
�K��)�
�;�'��J��%
�*�K��(�
�$�
$�t�
+�
�d�n�n�j�(�J���
��;���J��

��w�~�~�.�
 �'�"3�"3�4�
�J�'�
�;"�Frdrc
��eZdZdZdZdZdgZdgZejejzejzZdde
jfdej fd	efd
ej fdefdefd
eeej*�fdefdefdefdefgiZy)rzG
    For SampleManager VGL source code.

    .. versionadded:: 1.6
    �VGLz-http://www.thermoscientific.com/samplemanager�vglz*.rpfrMz	\{[^}]*\}r�z�(if|then|else|endif|while|do|endwhile|and|or|prompt|object|create|on|line|with|global|routine|value|endroutine|constant|global|set|join|library|compile_option|file|exists|create|copy|delete|enable|windows|name|notprotected)(?! *[=<>.,()])z$(true|false|null|empty|error|locked)z[~^*#!%&\[\]()<>|+=:;,./?-]z"[^"]*"z(\.)([a-z_$][\w$]*)z&[0-9][0-9]*(\.[0-9]+(e[+\-]?[0-9]+)?)?z
[a-z_$][\w$]*z[\r\n]+rtN)rNrOrPrQrRrSrTrUr�r�r��
IGNORECASEr�r
rWrrYrrrrr`rrrbrcrdrerr+s����
�D�
9�C��g�G��	�I��L�L�2�9�9�$�r�}�}�4�E�	�
�7�,�,�-�
��)�)�*�I��	
�
5�g�6F�6F�G�
+�X�6�
�� �
#�X�h����%G�H�
6��?�
�t�$�
��$�
�Z� �
��Frdrc�F�eZdZdZdZdZdgZdgZdgZe	je	jzZdZ
dZd	efZd
edfe
efedefd
edfgee
edfged
edfe
edfged�eedfgdej0fdej0fdej2fedeej6e�dfdeej8e�dfdej:fdej<fdefdefdefdefdefdej>fdeee�dfdeee�d fd!efd"efe
efd#efd$e jBfeefd%efgd&�Z"y')(rz;
    For Alloy source code.

    .. versionadded:: 2.0
    �Alloyzhttp://alloy.mit.edu�alloyz*.alsztext/x-alloyz[a-zA-Z_][\w]*"*z"\b(\\\\|\\[^\\]|[^"\\])*"z[^\S\n]+z(extends)\brLr��\{�funz--.*?$z//.*?$r�z(module|open)(\s+)r�z(sig|enum)(\s+)�sigz(iden|univ|none)\bz(int|Int)\bz2(var|this|abstract|extends|set|seq|one|lone|let)\bz"(all|some|no|sum|disj|when|else)\bz-(run|check|for|but|exactly|expect|as|steps)\bz)(always|after|eventually|until|release)\bz,(historically|before|once|since|triggered)\bz(and|or|implies|iff|in)\bz(fun|pred|assert)(\s+)z(fact)(\s+)�factz&!|#|&&|\+\+|<<|>>|>=|<=>|<=|\.\.|\.|->z[-+/*%=<>&!^|~{}\[\]().\';]z[:,]r�rs)r�r�r�r�rMN)#rNrOrPrQrRrSrTrUr�r�r�r�r��iden_rex�
string_rexr�
text_tuplerrrrrrr
rVrWrrZr[rYrXr5rr_rbrcrdrerrMs�����D�
 �C��i�G��	�I�� �I��L�L�2�9�9�$�E�"�H�.�J��z�*�J��W�f�-�
�t���
�;��
�H�f�%�
�
�
�t�V�$�
�

�
�H�f�%�
�t�V�$�
�
�E�N�
���(�
�
����'�
����'�
�7�,�,�-��
"�H�W�->�->�
�$K��
�
��'�*=�*=�z�!J�E�R�
"�G�$4�$4�5�
�W�\�\�*�
B�G�L�
2�G�<�
=�w�G�
9�7�C�
<�g�F�
)�8�=�=�9�
&���*�(E�u�M�
�X�g�z�:�F�C�
6��A�
+�X�6�
�t��
�k�"�
����'�
�� �
�J��1
�+/�Frdrc��eZdZdZdZdZdgZdgZed�de	dfd	e	d
fed�ge
dd
d
��e	fe
dd
d
��ejfde
fdejfdeej"ee�fdefdefdefgdej*fdej,fdefdefdefgde	dfde	fdej"fdefd efed!�gd"e	dfed!�gd#�Zy$)%rzZ
    Lexer for pan source files.

    Based on tcsh lexer.

    .. versionadded:: 2.0
    �Panzhttps://github.com/quattor/pan/�panz*.pan�basicz\(�parenr��curly�data)r�r�r�r�rJ�bindr��valid�finalr5�uniquer�r�rr�r�r��	structure�
extensible�declarationr3r4)4�
file_contents�format�index�length�match�matches�replace�splicer��substr�to_lowercase�to_uppercaserH�error�	tracebackr�
base64_decode�
base64_encode�digest�escape�unescape�append�create�first�nlist�keyr��merger��prepend�
is_boolean�
is_defined�	is_double�is_list�is_long�is_nlist�is_null�	is_number�is_property�is_resource�	is_string�
to_boolean�	to_double�to_long�	to_stringr�r�r��path_exists�	if_existsr�r�z#.*z\\[\w\W]z(\b\w+)(\s*)(=)z[\[\]{}()=]+z<<\s*(\'?)\\?(\w+)[\w\W]+?\2�;z!(?s)"(\\\\|\\[0-7]+|\\.|[^"\\])*"z!(?s)'(\\\\|\\[0-7]+|\\.|[^'\\])*'rtz[^=\s\[\]{}()$"\'`\\;#]+z\d+(?= |\Z)z\}rLz:-z\w+z[^}:"\'`$]+�:rM�\))rMr�r�r�r�N)rNrOrPrQrRrSrTrUrrrrr�r
rr�rr�rrrr�rVrrrbrcrdrerr�sk����D�
+�C��g�G��	�I�
�G��
�G�W�%�
�G�W�%��F�O�	
��R��U�	,�
�
��	?��U�
,��\�\�
��W��
�&�-�-�(�
��$�-�-��X�!N�O�
�h�'�
,�f�5�
�;��1
�62�6�=�=�A�
1�6�=�=�A�
�Z� �
(�$�/�
�V�$�
��G�V�$�
�G��
�T�]�]�#�
�[�)�
�;���F�O�

��G�V�$��F�O�
�a4�Frdrc��eZdZdZdZdZddgZddgZgZe	dd	�
�Z
e	dd	�
�Ze	dd	�
�Ze	d
d	�
�Z
e	dd	�
�Ze	dd	�
�ZdZdZdZdZddeee�fdeej0ee�fdeeeee�fdefe
efeefeefde�de�d�ej<fe
ej<feej<feej<fdej>fdezeeee�fdezeeeej<�fdefd efgiZ y!)"rz`
    Lexer for crmsh configuration files for Pacemaker clusters.

    .. versionadded:: 2.1
    �Crmshzhttp://crmsh.github.io/�crmsh�pcmkz*.crmshz*.pcmk)rr�	primitive�groupr��ms�location�
colocation�order�fencing_topology�
rsc_ticket�rsc_template�property�rsc_defaults�op_defaults�
acl_target�	acl_groupr�r{r�z(?![\w#$-])rF)�params�meta�
operations�op�ruler��utilization)r�r��deny)r�r�)rJ�not_defined)�in_range�date�specr�z*(?:tag|ref|reference|attribute|type|xpath)z(?:lt|gt|lte|gte|eq|ne)z(?:string|version|number)z:(?:Master|Started|Slave|Stopped|start|promote|demote|stop)rMz^(#.*)(\n)?z!([\w#$-]+)(=)("(?:""|[^"])*"|\S+)z(node)(\s+)([\w#$-]+)(:)z([+-]?([0-9]+|inf)):z(?:z:)?(z)(?![\w#$-])z#[a-z]+(?![\w#$-])z(%s)(:)("(?:""|[^"])*"|\S+)z!([\w#$-]+)(?:(:)(%s))?(?![\w#$-])z(\\(?=\n)|[\[\](){}/:@])z\s+|\nN)!rNrOrPrQrRrSrTrUr�r�elem�sub�acl�bin_rel�un_ops�date_exp�acl_mod�bin_ops�val_qual�rsc_role_actionrr
rrr`rrrrrr5r�rbrcrdrerr�s����
�D�
#�C����G��H�%�I��I���
&�'�D��%�-;�=�C��)�.�
A�C��M�.�9�G�
�-�n�
E�F��7��O�H�<�G�)�G�,�H�5�O�	�
�X�g�z�:�;�
1������f�=�
?�
)���*�d�K�@�
B�%�f�-�
�7�O�
�'�N�
�'�N�+3�W�
=�x�}�}�M�
�h�m�m�$�
�X�]�]�#�
�x�}�}�%�
"�D�L�L�1�
+�g�
5�
�g�{�D�
1�
3�2�O�
C�
�d�K����
7�
9�)�+�6�
�
�#�C"
�$�Frdrc�P�eZdZdZdZdZdgZgZdgZdZ	dZ
dZd	d
efde
fdejfd
ej fdej"fdefdej&fdej(fee	d��efee
d��ej0fdezej2feej4fdefg
iZy)rzD
    Lexer for Flatline expressions.

    .. versionadded:: 2.2
    �Flatlinez$https://github.com/bigmlcom/flatline�flatlineztext/x-flatline)r�)�z!=�*�+�-�<z<=�=�>z>=r��acosr�zall-butzall-with-defaultszall-with-numeric-defaultr��asin�atan�avgz
avg-windowz
bin-centerz	bin-count�callzcategory-count�ceil�condzcond-window�cons�cos�coshr zdiff-window�divzensure-valuezensure-weighted-value�epochz	epoch-dayzepoch-fieldsz
epoch-hourzepoch-millisecondzepoch-minutezepoch-monthzepoch-secondz
epoch-weekdayz
epoch-year�exp�f�fieldz
field-prop�fields�filterr�floor�headr�r��integer�languager�levenshteinzlinear-regressionr��lnr�log10r�rzmatches?r.�maximumra�mean�median�min�minimum�missingz
missing-countzmissing?�
missing_count�mod�mode�	normalizer��nth�occurrencesr��
percentilezpercentile-label�
populationzpopulation-fraction�pow�	preferredz
preferred?zquantile-label�randzrand-intzrandom-valuezre-quoter�rz
replace-first�rest�roundz
row-numberz
segment-labelr��sha256�sin�sinh�sqrt�squarezstandard-deviation�standard_deviation�str�subs�sumzsum-squaresz
sum-window�sum_squares�summaryz
summary-nozsummary-str�tail�tan�tanhz
to-degreesz
to-radians�variance�	vectorizezweighted-random-value�window�winnowzwithin-percentiles?zz-scorez(?!#)[\w!$%*+<=>?/.#-]+rMz[,]+rtz
-?\d+\.\d+z-?\d+z0x-?[a-f\d]+z"(\\\\|\\[^\\]|[^"\\])*"z\\(.|[a-z]+)�_� rFz(?<=\()z(\(|\))N)rNrOrPrQrRrSrTrUr��
special_forms�builtins�
valid_namerrrr\r_r]rr��Symbolrrrr�r�r�rrbrcrdrerrs����
�D�
0�C��l�G��I�"�#�I��M��H�2,�J�	�
�d�O�
�Z� ��F�L�L�)�
�v�~�~�&�
�f�j�j�)�)�&�1�
�f�k�k�*��6�=�=�!��=��
-�w�7��8�C�
(�$�,�,�7��*�
$�d�m�m�4�����'���%�=
�!�Frdrc�~�eZdZdZdZdZdgZdgZdZd�Z	d�Z
d	�Zd
�Zde
jfdej fed
�gdezefdej(fdej,dfdefdej2fdej,fdefedd��ej8fedd��ej8dfedd��ej fedd��e
jfde�de�d�eej8eej<�fd e�d!e�d"�efd#e
fgd$ed%fed&d��e
d'fed
�gd(ed)�fgd(ed*�fgd+�Zd.d-�Z y,)/r zD
    Lexer for Snowball source code.

    .. versionadded:: 2.2
    �Snowballzhttps://snowballstem.org/�snowballz*.sblz\n\r\t c�P�|j�tj|fi|��y�N)�_reset_stringescapesr�__init__)r��optionss  rer�zSnowballLexer.__init__xs!���!�!�#��#�#�D�4�G�4rdc� �d|_d|_y)Nrw)�_start�_end)r�s rer�z"SnowballLexer._reset_stringescapes|s�������	rdc����fd�}|S)Nc3��K�|j�}|j�}tjdtj|j
�z�j}tjdtj|j�z�j}d}�	}|t|�k�ry|r�|||�}||jd�ztj|jd�f��|jd�dk(rQ||jd�ztj|jd�f��|jj�n�||jd�ztj|jd�f��|j�}|||�}||j�ztj|j�f��|jd�|jk7rd|jd<n"|j�}d}|t|�kr��y||j�z|_y�w)	Nz([^%s]*)(.)r��rwr���T)�startr0r��compilerr�rr�r�rrV�stack�popr�r��pos)
�lexerr�ctx�sr�rDrr��	do_string�do_string_firsts
         �re�callbackz'SnowballLexer._string.<locals>.callback�s���������
�A��;�;�=�D��Z�Z�����5�<�<�1H� H�I�O�O�F��Z�Z�����5�:�:�1F� F�G�M�M�F��C�'�I���D�	�/��"�4��-�E��e�k�k�!�n�,�f�m�m�U�[�[��^�K�K��{�{�1�~��,��%�+�+�a�.�0�&�-�-����Q��O�O��	�	�
�
����e�k�k�!�n�,�f�m�m�U�[�[��^�K�K��)�)�+�C��t�S�)���%�+�+�-�'�������
�E�E��;�;�q�>�U�Z�Z�/�$,�C�I�I�b�M���i�i�k�� �	�!��D�	�/�"�%�)�)�+�o�C�G�s�H)I�.Irc)r�r�s` re�_stringzSnowballLexer._string�s���	&�2�rdc���|jd�|_|jd�|_ttj
ttjttj�|||�S)N��)	r0r�r�rrr�rrr�)r�rr�s   re�_stringescapeszSnowballLexer._stringescapes�sV���{�{�1�~����[�[��^��
�'�x��(�(�*�f�m�m�Z��
�
�'�',�e�S�:�	:rdzlen\bzlenof\b�root1z[%s]+z\d+rwrDz[()]rvz//.*z)[!*+\-/<=>]=|[-=]>|<[+-]|[$*+\-/<=>?\[\]])r��get�hex�amongrI�decimal�backwardmoder3rF)r;�booleans�integers�routines�	externals�	groupingsr�)!r�r�r�r��hop�nonr�r�r�rOr��loopr��testr�rP�unset�atmark�attachr��gopast�insert�repeatr��tomark�atleast�atlimit�reverse�setmark�tolimit�setlimit�	backwards�	substring)�size�limit�cursor�maxint�minintz(stringdef\b)([z]*)([^z]+)z(stringescapes\b)([z]*)(.)([z]*)(.)z[A-Za-z]\w*r*rL)r��lenof)r�r�z[^']*'TF)rMr�r�rDrNc�P�|j�tj|||�Sr�)r�r�get_tokens_unprocessed)r�r��contexts   rer�z$SnowballLexer.get_tokens_unprocessed�s#���!�!�#�!�8�8��t�W�M�Mrd)NN)!rNrOrPrQrRrSrTrU�_wsr�r�r�r�rr�rr5rrrr_rrVrr
rWrrr�rr�rbr�rcrdrer r js�����D�
%�C��l�G��	�I�
�C�5���8:��t�|�|�$�
����'��G��
���^�Z�(�
�V�^�^�$�
�6�=�=�(�+�
�k�"�
�� 1� 1�2�
�g�n�n�%�
9�8�D�
�$�,1�3�
�
�
�
��!�).�0�
�
�
�}�
.��.�
7<�=��]�]�

��B��!�
�\�\�
�14�S�
9�
�g�&�&�
�F�M�M�
B�
D�9<�c�
B�
�
�
�T�"�9
�>�K��(�
�#�E�
2�D�
%�
'��G��	
����
�&�
�����'�
�[0�F�dNrdr )$rQr��pygments.lexerrrrrrrr	r
r�pygments.tokenrr
rrrrrrr�__all__rrr�BroLexerrrrrrrrrr rcrdre�<module>r�s����
�,�,�,�$�$�$�J��
;�J�;�|g�*�g�T\�
�\�~��U�*�U�p=�z�=�@/�*�/�d�z��DB��B�JB�z�B�JC��C�LJ�J�J�ZlN�&�lNrd