HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //opt/saltstack/salt/lib/python3.10/site-packages/pygments/lexers/__pycache__/dsls.cpython-310.pyc
o

;j���@s4dZddlZddlmZmZmZmZmZmZm	Z	m
Z
mZddlm
Z
mZmZmZmZmZmZmZmZgd�ZGdd�de�ZGdd	�d	e�ZGd
d�de�ZeZGdd
�d
e�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�Z Gdd�de�Z!Gdd�de�Z"Gdd�de�Z#dS)z�
    pygments.lexers.dsls
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for various domain-specific languages.

    :copyright: Copyright 2006-present 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@s2eZdZdZdZdZddgZdgZdZde	fd	e
fd
ejfdej
fedd
d
d�efedd
d�ejfdejfdeeje	�dfdeeje	�dfdeeje	�dfdefdefdejfdejfdejfdejfdejfdejfd efd!eeje	e�fd"efgd#ejd$fed$�gd%ejd$fed$�gd%ed$fed$�gd&�Z d'S)(rz5
    Lexer for Protocol Buffer definition files.
    zProtocol Bufferz/https://developers.google.com/protocol-buffers/Zprotobuf�protoz*.protoz1.4z[ \t]+z[,;{}\[\]()<>]z/(\\\n)?/(\n|(.|\n)*?[^\\]\n)z/(\\\n)?\*(.|\n)*?\*(\\\n)?/)�import�option�optional�requiredZrepeatedZreservedr�packed�ctype�
extensions�to�maxZrpc�returnsZoneofZsyntax�\b��prefix�suffix)Zint32Zint64Zuint32Zuint64Zsint32Zsint64Zfixed32Zfixed64Zsfixed32Zsfixed64�float�double�bool�string�bytes�r.�(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.]*z[a-zA-Z_][\w\.]*�#pop�[a-zA-Z_]\w*)�rootr6r7r8N)!�__name__�
__module__�__qualname__�__doc__�name�url�aliases�	filenames�
version_addedrrr�Single�	Multilinerr�Type�Constantr�	Namespace�Declarationrr�Float�Hex�Oct�Integerr
r�	Attributer�Class�tokens�rRrR�H/opt/saltstack/salt/lib/python3.10/site-packages/pygments/lexers/dsls.pyrsj��������
#�
��
�rc@s�eZdZdZdZdZdgZdgZdgZdZ	e
d�e
d	�d
eje
dd�fd
eje
dd�fdeeje�dfdeeje�dfdeee�ejee�fe
d�e
d�defdefdefgdefdefgdefdefdejfgdejfgd
ejdfd ejfgd!ejdfd"ejfgd#ejdfed�gd$ejdfed�gd%efd&ejfd'ejfe d(d)d*�ejfe d+d)d*�ej!fe d,d)d)d-�ej"fgd.e#j$fd/e#j%fd0e#j&fgd1�
Z'd2S)3rz+
    For Thrift interface definitions.
    ZThriftzhttps://thrift.apache.org/Zthriftz*.thriftzapplication/x-thrift�2.1�
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"\'])r9z	[^\\"\n]+�'z
[^\\\'\n]+z[a-z*](\.\w|\w)*r:z1(async|oneway|extends|throws|required|optional)\br5z(const|typedef)\b)Z
cpp_namespaceZcpp_includeZcpp_typeZjava_packageZcocoa_prefixZcsharp_namespaceZdelphi_namespaceZ
php_namespaceZ	py_moduleZperl_packageZruby_namespaceZsmalltalk_categoryZsmalltalk_prefixZxsd_allZxsd_optionalZxsd_nillableZ
xsd_namespaceZ	xsd_attrsrr+r4)Zvoidr1ZbyteZi16Zi32Zi64r0r2�binary�map�list�set�slistZsenum)eZBEGINZENDZ	__CLASS__Z__DIR__Z__FILE__Z__FUNCTION__Z__LINE__Z
__METHOD__Z
__NAMESPACE__Zabstract�alias�and�args�as�assert�begin�break�caseZcatchr\�clone�continue�declare�defr�del�delete�doZdynamic�elif�elseZelseif�elsif�endZ
enddeclareZendforZ
endforeachZendifZ	endswitchZendwhileZensure�except�exec�finallyr/�for�foreach�function�global�goto�ifZ
implementsr!�in�inlineZ
instanceof�	interface�is�lambda�moduleZnative�new�next�nil�not�or�passZpublic�printZprivateZ	protected�raiseZredoZrescueZretry�register�return�self�sizeofZstatic�super�switch�synchronized�thenr�throwZ	transient�try�undefZunlessZunsigned�until�use�varZvirtualZvolatile�when�while�with�xor�yieldr,z1[+-]?(\d+\.\d+([eE][+-]?\d+)?|\.?\d+[eE][+-]?\d+)z[+-]?0x[0-9A-Fa-f]+z[+-]?[0-9]+)
r;rUrVrXrYrZr[r\r]r^N)(r<r=r>r?r@rArBrC�	mimetypesrDrr�Doubler
rErrrIrrJr	rr�Functionr
rrrF�EscaperrPrHrrG�ReservedrrKrLrNrQrRrRrRrSrTs��������
�
�
�
��������'�
�rc@sdeZdZdZdZdZddgZddgZdZd	Z	d
Z
dZed�ed
�ed�ed�ed�ed�ed�ed�ed�de
jfed�gdefdefdeee�fgdefgdejfdejfdeejeej�fgeddd d!�ejfged"d d#�ejfd$eejeejeej�fd%eeee
jeeeej�fd&eeee
ee�fd'eeeejee
j�fged(d d#�efd)efd*ejfd+eejee
j�fgd,ed-fd.ejd/fd0ejfd1e fd2e fd3e fd4e	d5e j!fe
d6e j"fe
d e j"fd7e j#fed8ed9efgd:efd;efd<ejfd=efgd>e$fd?e$fgd@ee
e$�fdAe
fgdBej%fdCej%fd,edDfdEefgdBej%fdFejdDfdEejfgdG�
Z&dHS)Irz
    For Zeek scripts.
    ZZeekzhttps://www.zeek.org/ZzeekZbroz*.zeekz*.broz2.5z[0-9a-fA-F]z(((\d*\.?\d+)|(\d+\.?\d*))([eE][-+]?\d+)?z[A-Za-z0-9][-A-Za-z0-9]*rUrV�
directives�
attributes�typesr]�literals�	operators�punctuationz2((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)(?=\s*\()�identifiersr_r`z(\\)(\n)raz)@(load-plugin|load-sigs|load|unload)\b.*$z=@(DEBUG|DIR|FILENAME|deprecated|if|ifdef|ifndef|else|endif)\bz(@prefixes)(\s*)((\+?=).*)$)�redef�priority�logr#rZadd_funcZdelete_funcZexpire_funcZread_expireZwrite_expireZ
create_expirer�Z
persistentZrotate_intervalZrotate_sizeZencryptZ
raw_outputZ	mergeableZ
error_handlerZtype_column�
deprecated�&r+r,)�any�enum�recordrg�tableZvectorr��hook�event�addrr1�countr0�file�int�interval�pattern�portr2Zsubnet�timer4zA(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�Zexportr�ryrr�r�ror�rrZfallthroughr�rrp�addrvr��timeout�schedulez	(print)\bz(global|local|const|option)\bz4(module)(\s+)(([A-Za-z_]\w*)(?:::([A-Za-z_]\w*))*)\brWr2z/(?=.*/)�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*)(::)r:z\\.z%-?[0-9]*(\.[0-9]+)?[DTd-gsx]r9�.�/)
r;rUrVr�r�r�r]r�r�r�r�r2r�N)'r<r=r>r?r@rArBrCrDZ_hexZ_floatZ_hrrr�rrrrZPreprocrrZPseudorGr
�WordrPrJrIrZRegexrHrrLrKrNrr�rQrRrRrRrSr�s���������������������
���
��
��
�rc@s�eZdZdZdZdZdgZdgZdZe	d�e	d�e	d	�e	d
�e	d�e	d�d
e
fdefgdeee
�fde
jfgdefdejfgdejfdeeje
ee
�fdejfgdejfdejfdejfdejfdejjfdejfgedddd�efgd efd!efgd"�Zd#S)$rz'
    For Puppet configuration DSL.
    ZPuppetzhttps://puppet.com/Zpuppetz*.pp�1.6rVr]�namesr^r��stringsz[]{}:(),;[]r`z(\s*)(#.*)$z/(\\\n)?[*](.|\n)*?[*](\\\n)?/z(=>|\?|<|>|=|\+|-|/|\*|~|!|\|)z(in|and|or|not)\br:z(\$\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?)mZabsentZalertri�auditZaugeas�beforerp�checkr\ZcomputerZ
configuredZ	containedZcreate_resourcesZcritZcron�debugr�define�defined�	directoryryrzZemerg�errr}Z	extlookup�fail�falser�Z
filebucketZ	fqdn_randZgenerate�hostr�r!r�infoZinheritsZinline_templateZ	installedr�Zk5loginZlatest�linkZloglevelZmacauthorizationZ	mailaliasZmaillistZmcx�md5ZmountZmountedZnagios_commandZnagios_contactZnagios_contactgroupZnagios_hostZnagios_hostdependencyZnagios_hostescalationZnagios_hostextinfoZnagios_hostgroupZnagios_serviceZnagios_servicedependencyZnagios_serviceescalationZnagios_serviceextinfoZnagios_servicegroupZnagios_timeperiod�nodeZnoopZnotice�notifyr6ZpresentZpurgedZrealizeZregsubstZ	resources�roleZrouterZrunningr�Zscheduled_task�searchZ
selbooleanZ	selmoduleZservice�sha1Z
shellquote�splitZsprintfZssh_authorized_keyZsshkeyZstage�stoppedZ	subscribe�tagZtagged�templateZtidy�truer�Z	unmounted�userZ
versioncmpZvlan�warningZyumrepoZzfs�zoneZzpoolz(?i)r+r,z	"([^"])*"z
'(\\'|[^'])*')r;rVr�r�r^r]r�N)r<r=r>r?r@rArBrCrDrrrrrrFr
r�rrO�VariablerrrKrMrLrNZLongrrrQrRrRrRrSr^sZ�
��
��	
�
����
�rc@s�eZdZdZdZdZdgZdgZdgZdZ	e
je
jBZ
ded	d
d
d�efdejfd
efdefdefdefdeeejeej�fdeeejeeee�fdejfdejfdefdejfdefdejfdejfdejfdefdefgiZ dd�Z!dS) rz�
    RSL is the formal specification
    language used in RAISE (Rigorous Approach to Industrial Software Engineering)
    method.
    ZRSLz"http://en.wikipedia.org/wiki/RAISEZrslz*.rslztext/rsl�2.0r;)JZBool�CharZIntZNatZRealrZUnit�abs�all�alwaysr�rlZaxiomZcardrpZchannelZchaosr\Z
devt_relationZdomZelemsryrxr{�exists�extendr�rZhd�hider�r�r�ZindsZ
initialiser�ZinterZisin�len�let�localZ
ltl_assertion�objectZof�outZpostZpre�read�real�rng�scheme�skip�stopZswapr�ZtheoryZ	test_case�tlZtransition_systemr�r8�unionr�r��value�variabler�r��writez~isinz-inflistz-infsetz-listz-setr+r,z(variable|value)\bz--.*?\nz<:.*?:>z	\{!.*?!\}�	/\*.*?\*/z^([ \t]*)([\w]+)([ \t]*)(:[^:])z5(^[ \t]*)([\w]+)([ \t]*)(\([\w\s,]*\))([ \t]*)(is|as)z\b[A-Z]\w*\br5z".*"z\'.\'zq(><|->|-m->|/\\|<=|<<=|<\.|\|\||\|\^\||-~->|-~m->|\\/|>=|>>|\.>|\+\+|-\\|<->|=>|:-|~=|\*\*|<<|>>=|\+>|!!|\|=\||#)z [0-9]+\.[0-9]+([eE][0-9]+)?[fd]?z0x[0-9a-f]+�[0-9]+r`r�cCst�d|tj�durdSdS)zP
        Check for the most common text in the beginning of a RSL file.
        zscheme\s*.*?=\s*class\s*typeNg�?)�rer��I)�textrRrRrS�analyse_text�s�zRslLexer.analyse_textN)"r<r=r>r?r@rArBrCr�rDr�	MULTILINE�DOTALL�flagsrrrJrrrrr�rrGrHrr�r
rrKrLrNrQrrRrRrRrSr�sV��

������(rc@s�eZdZdZdZdZddgZdgZdZdZ	d	e
jfd
ej
fdejfde
fd
efdejfe	ejfdedfdefed�g
dedfe	de	eejeeee�fdefed�gdejfdejfdefgd�ZdS)rz
    For Mscgen files.
    ZMscgenz!http://www.mcternan.me.uk/mscgen/ZmscgenZmscz*.mscr�z(\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	\{|\}|,|;rVz\]r9z
(\s*)(=)(\s*)�,z
(?://|#).*?\nz/\*(?:.|\n)*?\*/z
[ \t\r\n]+)r;rrVN)r<r=r>r?r@rArBrCrDZ_varrrGrZPropertyr
r��Builtinr�rrrrOrrrrErFrQrRrRrRrSr�sJ���
���	�
�rc
@s�eZdZdZdZdZdgZdgZdZe	j
e	jBe	jBZ
ddejfd	ejfd
efdejfdefd
efdeeej�fdefdefdefdefgiZdS)rz,
    For SampleManager VGL source code.
    ZVGLz-http://www.thermoscientific.com/samplemanagerZvglz*.rpfr�r;z	\{[^}]*\}rsz�(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]+r`N)r<r=r>r?r@rArBrCrDrr	r
�
IGNORECASErrrFrrHr
rrrrOrrrQrRrRrRrSr%s0���rc@sZeZdZdZdZdZdgZdgZdgZdZ	e
je
jBZ
dZd	Zd
efZdedfeefed
efdedfgeeedfgededfeedfged�eedfgdejfdejfdejfedeeje�dfdeeje�dfdejfdejfdefdefdefdefdefdej fdeee�dfd eee�d!fd"efd#efeefd$efd%e!j"feefd&efgd'�Z#d(S))rz 
    For Alloy source code.
    ZAlloyzhttp://alloy.mit.eduZalloyz*.alsztext/x-alloyr�z[a-zA-Z_][\w]*"*z"\b(\\\\|\\[^\\]|[^"\\])*"z[^\S\n]+z(extends)\br9r
�\{�funz--.*?$z//.*?$rz(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[:,]rr_)rr�rrr;N)$r<r=r>r?r@rArBrCr�rDrr	r
rZiden_rexZ
string_rexrZ
text_tuplerrrr
rrrrErFrrIrJrHrGr�rrNrQrRrRrRrSrFsn������
�rc
@s�eZdZdZdZdZdgZdgZdZe	d�de
d	fd
e
dfe	d�ged
ddd�e
fedddd�ej
fdefdejfdeejee�fdefdefdefgdejfdejfdefdefdefgde
dfde
fdejfd efd!efe	d"�gd#e
dfe	d"�gd$�Zd%S)&rz?
    Lexer for pan source files.

    Based on tcsh lexer.
    ZPanzhttps://github.com/quattor/pan/Zpanz*.panr��basicz\(�parenr�curly�data)r�rr�ryr8�bindr�Zvalid�finalr-�uniquer�r�rr�r�rZ	structureZ
extensible�declarationr+r,)4Z
file_contents�format�index�length�match�matches�replace�splicer��substrZto_lowercaseZto_uppercaser��error�	tracebackr�Z
base64_decodeZ
base64_encode�digest�escapeZunescape�append�create�firstZnlist�keyrf�merger�ZprependZ
is_booleanZ
is_definedZ	is_doubleZis_listZis_longZis_nlistZis_nullZ	is_numberZis_propertyZis_resourceZ	is_stringZ
to_booleanZ	to_doubleZto_longZ	to_stringrqrvr�Zpath_existsZ	if_existsr�rz#.*z\\[\w\W]z(\b\w+)(\s*)(=)z[\[\]{}()=]+z<<\s*(\'?)\\?(\w+)[\w\W]+?\2�;z!(?s)"(\\\\|\\[0-7]+|\\.|[^"\\])*"z!(?s)'(\\\\|\\[0-7]+|\\.|[^'\\])*'r`z[^=\s\[\]{}()$"\'`\\;#]+z\d+(?= |\Z)z\}r9z:-z\w+z[^}:"\'`$]+�:r;�\))r;rrrrN)r<r=r>r?r@rArBrCrDrrrrrrrr�rr�rr
rr�rErrrQrRrRrRrSr�s\���
�����	�
�rc@sDeZdZdZdZdZddgZddgZgZdZ	e
d	d
d�Ze
dd
d�Ze
d
d
d�Z
e
dd
d�Ze
dd
d�Ze
dd
d�ZdZdZdZdZddeee�fdeejee�fdeeeee�fdefeefeefe
efde�de�d�ejfeejfeejfeejfdej fde�d�eeee�fd e�d!�eeeej�fd"efd#efgiZ!d$S)%rzE
    Lexer for crmsh configuration files for Pacemaker clusters.
    ZCrmshzhttp://crmsh.github.io/ZcrmshZpcmkz*.crmshz*.pcmkrT)r�Z	primitive�grouprq�ms�locationZ
colocation�orderZfencing_topologyZ
rsc_ticketZrsc_template�propertyZrsc_defaultsZop_defaultsZ
acl_targetZ	acl_groupr�r�r�z(?![\w#$-])r4)�params�metaZ
operations�opZruler�Zutilization)r�rZdeny)rjr�)r�Znot_defined)Zin_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)r;z^(#.*)(\n)?z!([\w#$-]+)(=)("(?:""|[^"])*"|\S+)z(node)(\s+)([\w#$-]+)(:)z([+-]?([0-9]+|inf)):z(?:z:)?(z)(?![\w#$-])z#[a-z]+(?![\w#$-])�(z)(:)("(?:""|[^"])*"|\S+)z([\w#$-]+)(?:(:)(z))?(?![\w#$-])z(\\(?=\n)|[\[\](){}/:@])z\s+|\nN)"r<r=r>r?r@rArBrCr�rDr�elem�subZaclZbin_relZun_opsZdate_expZacl_modZbin_opsZval_qualZrsc_role_actionrrrrrOrrrrr
r�rrQrRrRrRrSr�sb����

�
���rc@s�eZdZdZdZdZdgZgZdgZdZ	dZ
dZd	Zd
de
fdefd
ejfdejfdejfdefdejfdejfee
dd�efeedd�ejfdeejfeejfdefg
iZdS)rz)
    Lexer for Flatline expressions.
    ZFlatlinez$https://github.com/bigmlcom/flatlineZflatlineztext/x-flatline�2.2)r�)�z!=�*�+�-�<z<=�=�>z>=r��acosr�zall-butzall-with-defaultszall-with-numeric-defaultrj�asin�atanZavgz
avg-windowz
bin-centerz	bin-count�callzcategory-count�ceilZcondzcond-windowZcons�cos�coshr�zdiff-windowZdivzensure-valuezensure-weighted-valueZepochz	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�languagerZlevenshteinzlinear-regressionrfZlnr��log10rer zmatches?r)Zmaximumr��meanZmedian�minZminimum�missingz
missing-countzmissing?Z
missing_count�mod�mode�	normalizer�ZnthZoccurrencesr�Z
percentilezpercentile-label�
populationzpopulation-fraction�powZ	preferredz
preferred?zquantile-labelZrandzrand-intzrandom-valuezre-quoter�r!z
replace-first�rest�roundz
row-numberz
segment-labelr��sha256�sin�sinh�sqrtZsquarezstandard-deviationZstandard_deviation�strZsubs�sumzsum-squaresz
sum-windowZsum_squaresZsummaryz
summary-nozsummary-str�tail�tan�tanhz
to-degreesz
to-radiansZvarianceZ	vectorizezweighted-random-valueZwindowZwinnowzwithin-percentiles?zz-scorez(?!#)[\w!$%*+<=>?/.#-]+r;z[,]+r`z
-?\d+\.\d+z-?\d+z0x-?[a-f\d]+z"(\\\\|\\[^\\]|[^"\\])*"z\\(.|[a-z]+)�_� r4z(?<=\()z(\(|\))N)r<r=r>r?r@rArBrCr�rDZ
special_forms�builtinsZ
valid_namerrrrKrNrLrr�ZSymbolrrrrr�r�rrQrRrRrRrSrs6��rc@sfeZdZdZdZdZdgZdgZdZdZ	dd	�Z
d
d�Zdd
�Zdd�Z
dejfdejfed�gde	�d�efdejfdejdfdefdejfdejfdefeddd�ejfeddd�ejd fed!dd�ejfed"dd�ejfd#e	�d$e	�d%�eejeej�fd&e	�d'e	�d(�e
fd)efgd*ed+fed,dd�ed-fed�gd.ed/�fgd.ed0�fgd1�Z d5d3d4�Z!d2S)6rz)
    Lexer for Snowball source code.
    ZSnowballzhttps://snowballstem.org/Zsnowballz*.sblr=z\n\r\t cKs|��tj|fi|��dS�N)�_reset_stringescapesr�__init__)r��optionsrRrRrSrmlszSnowballLexer.__init__cCsd|_d|_dS)Nrc)�_start�_end)r�rRrRrSrlps
z"SnowballLexer._reset_stringescapescs�fdd�}|S)Nc	3sR�|��}|��}t�dt�|j��d��j}t�dt�|j��d��j}d}�}|t|�kr�|rt|||�}||�d�t	j
|�d�fV|�d�dkra||�d�t	j
|�d�fV|j��n?||�d�t	j
|�d�fV|��}|||�}||��t	j
|��fV|�d�|jkr�d|jd<n|��}d	}|t|�ks/||��|_dS)
Nz([^�]*)(.)r��rcr'���T)�startr0r�compiler'rorrpr�rrE�stack�popr�r{�pos)	�lexerr�ctx�srr2r'ryZ	do_string��do_string_firstrRrS�callbackus4�



�z'SnowballLexer._string.<locals>.callbackrR)r~rrRr}rS�_stringtszSnowballLexer._stringcCs6|�d�|_|�d�|_ttjttjttj�|||�S)N��)	r0rorprrr�rrr�)rzrr{rRrRrS�_stringescapes�s��zSnowballLexer._stringescapeszlen\bzlenof\b�root1�[z]+z\d+rcr2z[()]rbz//.*z)[!*+\-/<=>]=|[-=]>|<[+-]|[$*+\-/<=>?\[\]])rl�get�hexZamongr��decimalZbackwardmoder+r4)r�ZbooleansZintegersZroutinesZ	externalsZ	groupingsr)!rwr�rjrZhopZnonr�rgr�r�r�Zloopr��testr�r�ZunsetZatmark�attachrvZgopast�insert�repeatr�ZtomarkZatleastZatlimit�reverseZsetmarkZtolimitZsetlimitZ	backwardsZ	substring)�size�limitZcursorZmaxintZminintz(stringdef\b)([z]*)([^z]+)z(stringescapes\b)([z]*)(.)([rqz[A-Za-z]\w*r/r9)r�Zlenof)r�rz[^']*'TF)r;r�rr2r'NcCs|��t�|||�Srk)rlr�get_tokens_unprocessed)r�r�contextrRrRrSr��sz$SnowballLexer.get_tokens_unprocessed)NN)"r<r=r>r?r@rArBrCrD�_wsrmrlr�r�rrr
r�rrrrNrrErrrFrrr�rr�rQr�rRrRrRrSr_s~�
�������������
�
��2r)$r?rZpygments.lexerrrrrrrrr	r
Zpygments.tokenrrr
rrrrrr�__all__rrrZBroLexerrrrrrrrrrrRrRrRrS�<module>s&
,,=iW?1!DDEL