
                           S r SSKrSSKJrJrJrJrJrJrJ	r	J
r
Jr  SSKJrJrJrJrJrJrJrJrJr  SSKJr  SSKJr  / SQr " S S	\5      r " S
 S\5      r " S S\5      r " S S\5      r " S S\5      r  " S S\5      r! " S S\5      r" " S S\5      r# " S S\#5      r$ " S S\5      r% " S S\5      r& " S S\5      r' " S  S!\5      r( " S" S#\5      r) " S$ S%\5      r* " S& S'\5      r+ " S( S)\5      r,g)*z
pygments.lexers.jvm
~~~~~~~~~~~~~~~~~~~

Pygments lexers for JVM languages.

:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    N)	Lexer
RegexLexerincludebygroupsusingthiscombineddefaultwords)	TextCommentOperatorKeywordNameStringNumberPunctuation
Whitespaceshebang_matches)	unistring)	JavaLexer
ScalaLexer	GosuLexerGosuTemplateLexerGroovyLexer	IokeLexerClojureLexerClojureScriptLexerKotlinLexer
XtendLexerAspectJLexerCeylonLexerPigLexer	GoloLexerJasminLexer	SarlLexerc                      \ rS rSrSrSrSrS/rS/rS/r	\
R                  \
R                  -  rS\" \\" \5      \R&                  5      S	4S
\4S\" \R*                  \5      4S\R,                  4S\4S\" \" \5      \R0                  \\5      4S\R4                  4S\R&                  4S\R6                  4S\" \R8                  \5      S4S\R:                  4S\R&                  S	4S\" \R&                  \5      S4S\" \R8                  \5      S4S\S4S\S4S\R>                  4S\" \\R@                  5      4S\" \\\5      4S \" \\RB                  \5      4S!\4S"\"RF                  4S#\"RH                  4S$\"RJ                  4S%\"RL                  4S&\"RN                  4S'\(4S(\4S)\4/S*\)4S!\RT                  S+4/S!\S+4/S,\R8                  S+4/S-\S+4S\4\+" S5      /S.\4S/\4S0\4S1\4S\S+4/S2.r,S3r-g4)5r      z
For Java source code.
Javaz(https://www.oracle.com/technetwork/java/javaz*.javaztext/x-javazJ(^\s*)((?:(?:public|private|protected|static|strictfp)(?:\s+))*)(record)\bclass[^\S\n]+(//.*?)(\n)	/\*.*?\*/zz(assert|break|case|catch|continue|default|do|else|finally|for|if|goto|instanceof|new|return|switch|this|throw|try|while)\bzE((?:(?:[^\W\d]|\$)[\w.\[\]$<>]*\s+)+?)((?:[^\W\d]|\$)[\w$]*)(\s*)(\()@[^\W\d][\w.]*z(abstract|const|enum|extends|final|implements|native|private|protected|public|sealed|static|strictfp|super|synchronized|throws|transient|volatile|yield)\b6(boolean|byte|char|double|float|int|long|short|void)\b(package)(\s+)import(true|false|null)\bz(class|interface)\bz
(var)(\s+)varz(import(?:\s+static)?)(\s+)z"""\nmultiline_string"string!'\\.'|'[^\\]'|'\\u[0-9a-fA-F]{4}'(\.)((?:[^\W\d]|\$)[\w$]*)z^(\s*)(default)(:)z^(\s*)((?:[^\W\d]|\$)[\w$]*)(:)z([^\W\d]|\$)[\w$]*a  ([0-9][0-9_]*\.([0-9][0-9_]*)?|\.[0-9][0-9_]*)([eE][+\-]?[0-9][0-9_]*)?[fFdD]?|[0-9][eE][+\-]?[0-9][0-9_]*[fFdD]?|[0-9]([eE][+\-]?[0-9][0-9_]*)?[fFdD]|0[xX]([0-9a-fA-F][0-9a-fA-F_]*\.?|([0-9a-fA-F][0-9a-fA-F_]*)?\.[0-9a-fA-F][0-9a-fA-F_]*)[pP][+\-]?[0-9][0-9_]*[fFdD]?z"0[xX][0-9a-fA-F][0-9a-fA-F_]*[lL]?z0[bB][01][01_]*[lL]?z0[0-7_]+[lL]?z0|[1-9][0-9_]*[lL]?[~^*!%&\[\]<>|+=/?-]
[{}();:.,]\n\s+#pop	[\w.]+\*?"""z[^\\"]+\\\\\\"\\)rootr,   r5   r3   r6   r8    N).__name__
__module____qualname____firstlineno____doc__nameurlaliases	filenames	mimetypesre	MULTILINEDOTALLflagsr   r   r   r   r   Declarationr   Single	Multiliner   Functionr   	DecoratorType	NamespaceConstantr   Char	AttributeLabelr   FloatHexBinOctIntegerr   r   Classr   tokens__static_attributes__rF       &lib/third_party/pygments/lexers/jvm.pyr   r      s    D
4ChG
IILL299$E [j%+w/B/BCWN*%XgnnjAB7,,-M eDk4==*kJL /,-4-@-@B G\\):):J GR#W%5%56#W%8%8'BHW%8%8*EuM+Xg6G6G-Tv1268$16;;?*H[59^^-E F"HZ+$NO/*djj:E2G H"D). 06||= 3FJJ?$fjj1vzz*#V^^4$h/K(Jg4
l TN"DJJ7

 #D&1
 4>>62
 VV$6NH
  fVFO66"
KLFrh   r   c                   P    \ rS rSrSrSrSrS/rS/rS/r	1 Skr
1 S	kr1 S
krS rSrg)r"   v   z1
For AspectJ source code.

.. versionadded:: 1.6
AspectJzhttp://www.eclipse.org/aspectj/aspectjz*.ajztext/x-aspectj>+   getsetargscalllocksoftaftercflowerroraroundaspectbeforetargetunlockwithindeclarehandlerparentsperthisproceedwarningpercflowpointcutthrowing	execution	pertarget	returning
annotation
cflowbelow
precedence
privileged
withincodeissingletonpercflowbelowpertypewithinthisJoinPointinitializationadviceexecutionpreinitializationthisAspectInstancestaticinitializationthisJoinPointStaticPart thisEnclosingJoinPointStaticPart>   soft:error:parents:warning:precedence:>   @type@field@method@constructorc              #   ~  #    [         R                  X5       H  u  p#nU[        L a  X@R                  ;   a  U[        U4v   M+  U[        R
                  L a-  X@R                  ;   a  U[        US S 4v   U[        US   4v   Mk  U[        R                  L a  X@R                  ;   a  U[        U4v   M  X#U4v   M     g 7f)N)
r   get_tokens_unprocessedr   aj_keywordsr   r_   aj_inter_typer   rY   aj_inter_type_annotation)selftextindextokenvalues        ri   r   #AspectJLexer.get_tokens_unprocessed   s     #,#C#CD#OE%}*:*:!:We++$**$2D2D)DWeCRj00XuRy00$..(U6S6S-SWe++E)) $Ps   B;B=rF   N)rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   r   r   r   r   rg   rF   rh   ri   r"   r"   v   sC     D
+CkGI!"I
K OMM
*rh   r"   c                      \ rS rSrSrSrSrS/rS/rS/r	\
R                  \
R                  -  rS\R                  " S	S
5      -   S-   rS\R                  " SSSSS5      -   S-   rS\R                  " SS5      -   S-   rS\-  rS\R)                  SS5      -  rS\-  r\< \< S3r\< \< S\< S3r\< \< S\< S3rS\< S\< S3rSrS\< S\< S3rSrS rS!rS"r S#r!0 S$\"" S%5      \"" S&5      \"" S'5      \"" S(5      \"" S)5      \"" S*5      \"" S+5      \"" S,5      \"" S-5      \"" S.5      \"" S/5      \"" S05      \"" S15      \"" S25      \"" S35      \"" S45      \"" S55      \"" S65      \"" S75      \"" S85      \"" S95      \"" S:5      /_S%S;\#4/_S&S<\$RJ                  4S=\$RL                  S>4/_S'S?\$RN                  4/_S(S@\(" \)\#5      SA4/_S)SB\(" \)\#\)\#5      SC4SD\(" \)\#5      SC4/_S*\*" \!SESESF9\)4SG\)4/_S+SH\-  \+RX                  4/_S,SI\(" \-\#\)\#5      4/_S-SJ\< SK\< SL3\(" \)\#\+R\                  5      4SM\< SK\< SL3\(" \)\#\+R^                  5      4SN\< SK\< SL3\(" \)\#\)\#\+R^                  5      4SO\< SK\< SL3\(" \)\#\+R^                  5      4SP\)R`                  4SQ\< SK\< SL3\(" \)\#\)\#\+Rb                  5      4SR\(" \)\#5      SS4ST\-  \(" \)\#\+R^                  5      4SU\-  \(" \)\#\+5      4/	_S.SV\< S\< SW\< SX3\(" \)\#\+R^                  5      4/_S/SY\(" \)\#5      4/_S0SZ\(" \)\#\)5      4S[\< S\< 3\(" \)\#\+R^                  5      4S[\< S\< SL\< 3\(" \)\#\+Rb                  5      4/_S9S\\-4S]\-4/_S7\*" \SESESF9\)4/_S8S^\-  \(" \2\#5      4S_\24\*" \ 5      \24S`\< Sa\< S3\24/_S1Sb\+Rf                  Rh                  4Sc\)Rj                  4Sd\6Rn                  4Se\6Rp                  4Sf\6Rp                  4Sg\6Rp                  4Sh\6Rr                  Rt                  4Si\6Rr                  4Sj\;4Sk\;4Sl\(" \;Rx                  \;Rz                  \;Rx                  5      4Sm\;Rx                  4/_0 S2Sn\;So4Sp\;Sq4Sr\;4/_S3Ss\-  \;R|                  4/_S4St\(" \-\)5      4/_S5Su\< S\< Sv3\)4Sw\)4/_S6Sx\-4Sy\-4/_S:\\+R^                  4\\+4/_S>Sz\$RL                  4S=\$RL                  S{4S|\$RL                  S}4S~\$RL                  4/_SAS\?S}4\"" S&5      S\)4\"" S5      S\-S4/_S\"" S%5      \"" S&5      S\)4S\24S\-S}4S\-4S\-4\"" S5      /_SCS\?S}4\"" S&5      \"" S5      S\-S4/_S\"" S%5      \"" S&5      S\24S\-S}4S\-4\"" S5      /_SSS\?S}4S\-S}4\"" S&5      \"" S5      /_SoS\;S}4S\;4\"" S5      /_SqS\;S}4\"" S5      /_SS\;R                  S}4S\-S4\"" S$5      /_SS\-S{4S\-S}4\"" S$5      /_S\\+R^                  4S\-  \(" \+Rb                  \-5      4S\-4\\+4S\#4/_ESS\;4S\;Rz                  4S\-  \(" \;R                  \+5      4S\;R                  S4S\;4/0ErASrBg)r      z
For Scala source code.
Scalazhttp://www.scala-lang.orgscalaz*.scalaztext/x-scalaz[!#%&*\-\/:?@^SmSo]z[_\$LlLuLoNlLt[z(?:%s|[0-9])z\$ z%s+*z
*(?:(?<=_)z+)?z(?:|z+)z`[^`]+`)z
(?!//|/\*)z(?=\s*(//|$)))newreturnthrowclassOfisInstanceOfasInstanceOfelseifthendowhileforyieldmatchcasecatchfinallytry)z<%z=:=z<:<z<%<z>:z<:===z!=<=>=z<><>z<-u   ←->u   →=>u   ⇒?@r   -+r   %~\)private	protectedsynchronizedz	@volatileabstractfinallazysealedimplicitoverridez
@transientz@nativerE   
whitespacecommentszscript-headerimportsexportszstorage-modifiersannotationsr   declarationsinheritance	extensionend	constantsstringssymbolszsingleton-typeinlinequotedkeywords	operatorspunctuationnamesr>   //.*?\n/\*commentz^#!([^\n]*)$z\b(import)(\s+)zimport-pathz\b(export)(\s+)(given)(\s+)zexport-pathz\b(export)(\s+)\b)prefixsuffixzj\b(transparent|opaque|infix|open|inline)\b(?=[a-z\s]*\b(def|val|var|given|type|class|trait|object|enum)\b)z@%sz(\()(\s*)(using)(\s)z\b(def)\b(\s*)(z)?z\b(trait)\b(\s*)z,\b(?:(case)(\s+))?(class|object|enum)\b(\s*)z(?<!\.)\b(type)\b(\s*)z\b(val|var)\bz\b(package)(\s+)(object)\b(\s*)z\b(package)(\s+)packagez\b(given)\b(\s*)(%s)z\b(given)\b(\s*)(%s)?z \b(extends|with|derives)\b(\s*)(z|(?=\([^\)]+=>)|(?=z	)|(?="))?z\b(extension)(\s+)(?=[\[\(])z8\b(end)(\s+)(if|while|for|match|new|extension|val|var)\bz\b(end)(\s+)(z[{}()\[\];,.]z(?<!:):(?!:)z(%s{2,})(\s+)z	/(?![/*])z(?<!z)(!|&&|\|\|)(?!z\b(this|super)\br4   z0[xX][0-9a-fA-F_]*zJ([0-9][0-9_]*\.[0-9][0-9_]*|\.[0-9][0-9_]*)([eE][+-]?[0-9][0-9_]*)?[fFdD]?z[0-9]+([eE][+-]?[0-9]+)?[fFdD]z[0-9]+([eE][+-]?[0-9]+)[fFdD]?z
[0-9]+[lL][0-9]+z""".*?"""(?!")z"(\\\\|\\"|[^"])*"z(')(\\.)(')z'[^\\]'|'\\u[0-9a-fA-F]{4}'z[fs]"""zinterpolated-string-triplez[fs]"zinterpolated-stringzraw"(\\\\|\\"|[^"])*"z
('%s)(?!')z(\.)(type)\bz\b(inline)(?=\s+(z)\s*:)z=\b(inline)\b(?=(?:.(?!\b(?:val|def|given)\b))*\b(if|match)\b)z['$]\{(?!')z'\[(?!')z[^/*]+#push\*/r?   [*/]z(?<=[\n;:])z\b(given)\bzqualified-name\{zimport-path-curly-bracer   \},z[\[\]]zexport-path-curly-bracez
(?<=[\n;]):z"""(?!")r7   zinterpolated-string-commonzinterpolated-string-bracez interpolated-string-nested-bracez(%s)(\.)z\.r-   z[^"$\\]+z\$\$z(\$)(%s)\$\{z\\.rF   N)CrG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   unicombineopcharletterupperLetterletterOrDigitreplaceletterOrDigitNoDollarSignalphaIdsimpleInterpolatedVariableidrestidUpperplainidbackQuotedIdanyIdnotStartOfCommentendOfLineMaybeWithCommentr   r   storage_modifiersr   r   r   rV   rW   Hashbangr   r   r   r   rY   r   rX   re   rU   r[   r   BuiltinPseudor\   r   ra   r`   rd   Longr   r]   EscapeSymbolr   Interpolrf   rg   rF   rh   ri   r   r      s
    D
%CiGI ILL299$E#++dD"99C?Fs{{4tT4@@3FFD$//#5K"V+M .r1J JfnG-35N"O&,mVDF'2M6JG$f-GL#\2E% 0HIoL!JO$II'(M"GN#M"K ENK II$%HHJK M"G-
o6 	Z 
7o< 	(W&&	2
=oD 	g../
EoJ 	':!>N
KoP 	+*gzBMS':!>N
QoZ 	$U5A7K
DELN
[ol 	f_dnn-
mor 	 %h{JQ[&\]
so| 	):EBgz4==9;+<eD*djj9; #E+*gz4::NP 2CEJ*djj9;w223"E+*gz4>>RT !(7J"?K$w.*djj9;%-*d35#
}od 	 ,1 *djj9;
eop 	,hw
.KL
qov 	H*g68&-/HI*djj9; w(AC*dnn=?	
woJ 	{+k*
KoR 	8E%8'B
SoX 	&:(FG8$9x(,2F;XF	
Yod 	 $,,"5"56#W%5%56"FJJ/017?.=.=FNN//0''"F+Xfkk6==&++NO+V[[9
eoB 	!=>v45%v.
CoL 	W$fmm4
MoR 	h{G<=
SoX 	 18FM
Yoh 	[)+&	
iot 	djj!DM
uo@ 	))*W&&0W&&/g''(	
AoL 	T6*JW%$%K!:;
MoZ 	"L!JW%HK(;$$%	$
[on 	T6*J$%K!:;	
ooz 	"L!JHK(;$%$
{oJ 	D&);'J$%	
KoV 	%&&)6N01'
Wo` 	66"01 
aoh 	$FOOV,K!CDFO&
ior 	+K)K(FO-
so@ 	djj!5 (4>>;"GHK DM*%
AoN 	%&!fmm$55$/1foo'BCV'
OoFrh   r   c                      \ rS rSrSrSrS/r/ SQrS/r\	R                  \	R                  -  rS\" \" \5      \R"                  \\5      4S\4S	\R*                  4S
\R,                  4S\R.                  4S\4S\R2                  4S\" \R2                  \\R2                  5      4S\R4                  4S\" \R6                  \5      4S\R8                  4S\" \R2                  \\R:                  5      4S\" \R6                  \\R6                  5      4S\S4S\" \\R>                  5      4S\" \\R>                  5      4S\4S\4S\ RB                  4S\ RD                  4S\4/S\4S\" \\R.                  5      S4S \R,                  4S!\S4S"\S#4S$\4/S\S%4\#" S&5      /S\S4S'\S%4\#" S(5      /S\S4S)\S#4S*\S%4\#" S(5      /S+.r$S,r%g-).r   i  z.
For Gosu source code.

.. versionadded:: 1.5
Gosugosu)z*.gsz*.gsxz*.gspz*.varkztext/x-gosu9^(\s*(?:[a-zA-Z_][\w.\[\]]*\s+)+?)([a-zA-Z_]\w*)(\s*)(\()r-   r   r/   @[a-zA-Z_][\w.]*z(in|as|typeof|statictypeof|typeis|typeas|if|else|foreach|for|index|while|do|continue|break|return|try|catch|finally|this|throw|new|switch|case|default|eval|super|outer|classpath|using)\bz(var|delegate|construct|function|private|internal|protected|public|abstract|override|final|static|extends|transient|implements|represents|readonly)\bz(property)(\s+)(get|set)?z<(boolean|byte|char|double|float|int|long|short|void|block)\br2   z (true|false|null|NaN|Infinity)\bz5(class|interface|enhancement|enum)(\s+)([a-zA-Z_]\w*)z(uses)(\s+)([\w.]+\*?)r7   r8   z(\??[.#])([a-zA-Z_]\w*)z(:)([a-zA-Z_]\w*)[a-zA-Z_$]\w*z)and|or|not|[\\~^*!%&\[\](){}<>|+=:;,./?-]%[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?r  r=   z(\\<)|(\\\$)z(<%@\s+)(extends|params)stringTemplatez<%!--.*?--%>z
(<%)|(<%=)r  stringTemplateShorthand.r?   templateTextz%>rE   r  r  )rE   r/  r8   r,  r-  rF   N)&rG   rH   rI   rJ   rK   rL   rN   rO   rP   rQ   rR   rS   rT   r   r   r   r   rX   r   r   r   rV   rW   rY   r   rU   rZ   r[   r\   re   r   r^   r   r`   rd   r   rf   rg   rF   rh   ri   r   r     sj    DhG4IILL299$E
 eDk4==*hGI *%(7,,- $..1 "#23:3F3FH *8G4G4GU\UhUh+ijL\\):):J GH0'2B2BCEg)):tzzBD&g''T^^DF68$'h/1!h/1t$98D5v||D'JG$
L f%(h/1ACg//0H&67h 9:6N
 66"N#

 68$Hf%FO
 68$H78Hf%FO	$
q>Frh   r   c                   4    \ rS rSrSrSrS/rS/rS/rS r	Sr
g	)
r   i  z,
For Gosu templates.

.. versionadded:: 1.5
zGosu Templategstz*.gstztext/x-gosu-templatec              #   \   #    [        5       nS/nUR                  X5       S h  vN   g  N7f)Nr/  )r   r   )r   r   lexerstacks       ri   r   (GosuTemplateLexer.get_tokens_unprocessed  s(      //<<<s   ",*,rF   N)rG   rH   rI   rJ   rK   rL   rN   rO   rP   r   rg   rF   rh   ri   r   r     s)     DgG	I'(I=rh   r   c                   v   \ rS rSrSrSrSrS/rSS/rS/r	\
R                  \
R                  -  rS	\R                  S
4\" S
5      /S\4S\" \R&                  \5      4S\R(                  4S\4S\" \" \5      \R2                  \\5      4S\R6                  4S\R8                  4S\R:                  4S\" \R<                  \5      4S\R>                  4S\" \R8                  \5      S4S\" \R<                  \5      S4S\ RB                  4S\ R&                  4S\ RB                  4S\ R&                  4S\ 4S\ 4S\ RD                  4S \" \\RF                  5      4S!\RH                  4S"\4S#\4S$\%RL                  4S%\%RN                  4S&\%RP                  4S'\4/S(\RR                  S)4/S*\R<                  S)4/S+.r*S, r+S-r,g.)/r   i  z0
For Groovy source code.

.. versionadded:: 1.5
Groovyzhttps://groovy-lang.org/groovyz*.groovyz*.gradleztext/x-groovyz#!(.*?)$baser-   r.   r/   z(assert|break|case|catch|continue|default|do|else|finally|for|if|goto|instanceof|new|return|switch|this|throw|try|while|in|as)\bzo^(\s*(?:[a-zA-Z_][\w.\[\]]*\s+)+?)([a-zA-Z_]\w*|"(?:\\\\|\\[^\\]|[^"\\])*"|'(?:\\\\|\\[^\\]|[^'\\])*')(\s*)(\()r)  z(abstract|const|enum|extends|final|implements|native|private|protected|public|static|strictfp|super|synchronized|throws|transient|volatile)\bz:(def|boolean|byte|char|double|float|int|long|short|void)\br2   r4   (class|interface)(\s+)r,   (import)(\s+)r3   z	""".*?"""z	'''.*?'''"(\\\\|\\[^\\]|[^"\\])*"'(\\\\|\\[^\\]|[^'\\])*'z\$/((?!/\$).)*/\$z/(\\\\|\\[^\\]|[^/\\])*/r9   (\.)([a-zA-Z_]\w*)[a-zA-Z_]\w*:r*  [~^*!%&\[\](){}<>|+=:;,./?-]r+  0x[0-9a-fA-F]+[0-9]+L?r=   [a-zA-Z_]\w*r?   r@   )rE   r9  r,   r3   c                     [        U S5      $ )Nr8  r   )r   s    ri   analyse_textGroovyLexer.analyse_texti  s    tY//rh   rF   N)-rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   r   Preprocr
   r   r   rV   rW   r   r   r   r   rX   r   rY   rU   rZ   r[   r\   r   Doubler]   r^   r_   r   r`   ra   rd   re   rf   rE  rg   rF   rh   ri   r   r     s#    D
$CjGJ'I !ILL299$E
 '//62FO
 *%XgnnjAB7,,-S eDk4==*hGI !$..1&'.':':< K\\):):J GH#W%5%56&1D1Dj(Qx(9(9:FQ6==)6==)(&--8(&--8!6*(&116;;?"HXt~~$FGtzz*t$,h75v||D

+&..)JW,
\ djj&1
 4>>62
m9Fv0rh   r   c                      \ rS rSrSrSrSrS/rSS/rS/r	S	\
R                  4S
\S4/S\
S4\" S5      S\
4/S\
R                  S4\" S5      S\
R                  4/S\S4\" S5      /S\
R                  S4\" S5      S\
R                  4S\
R                  4/S\
R                  S4\" S5      S\
R                  4S\
R                  4/S\
S4\" S5      S\
4// S\4PS\4PS\4PS\4PS\
R                  S4PS\
R                  S 4PS!\
R$                  4PS"\
R&                  4PS#\
R$                  4PS$\
R                  S%4PS&\
S'4PS(\
S)4PS*\R*                  4PS+\R,                  4PS,\R0                  4PS-\4PS.\4PS/\4PS0\R0                  4PS1\R0                  4PS2\4PS3\R0                  4PS4\4PS5\R0                  4PS6\4PS7\R0                  4PS8\R0                  4PS9\R2                  4PS:\R4                  4PS;\R6                  4PS<\R:                  4PS=\R<                  4PS>\R>                  4PS?\4PS@\ 4PSA\ 4PSB\4PSC\RB                  4PSD\4PSE.r"SFr#gG)Hr   im  zk
For Ioke (a strongly typed, dynamic,
prototype based programming language) source.

.. versionadded:: 1.4
Iokezhttps://ioke.org/z*.ikiokeikztext/x-iokesrczS(\\b|\\e|\\t|\\n|\\f|\\r|\\"|\\\\|\\#|\\\Z|\\u[0-9a-fA-F]{1,4}|\\[0-3]?[0-7]?[0-7])z#\{textInterpolationRootz(?<!\\)"r?   interpolatableTextz[^"]r  rE   z(?<!\\)/[im-psux]*z\\/z[^/]z(?<!\\)][im-psux]*z\\]z[^\]]z(?<!\\)]r=   r>   z;(.*?)\nz\A#!(.*?)\nz#/slashRegexpz#r\[squareRegexpz	:[\w!:?]+z[\w!:?]+:(?![\w!?])z:"(\\\\|\\[^\\]|[^"\\])*"z((?<=fn\()|(?<=fnx\()|(?<=method\()|(?<=macro\()|(?<=lecro\()|(?<=syntax\()|(?<=dmacro\()|(?<=dlecro\()|(?<=dlecrox\()|(?<=dsyntax\())(\s*)"documentationr7   r   z#\[
squareTextz\w[\w!:?]+(?=\s*=.*mimic\s)z.[a-zA-Z_][\w!:?]*(?=[\s]*[+*/-]?=[^=].*($|\.))z(break|cond|continue|do|ensure|for|for:dict|for:set|if|let|loop|p:for|p:for:dict|p:for:set|return|unless|until|while|with)(?![\w!:?])z%(eval|mimic|print|println)(?![\w!:?])z|(cell\?|cellNames|cellOwner\?|cellOwner|cells|cell|documentation|hash|identity|mimic|removeCell\!|undefineCell\!)(?![\w!:?])z(stackTraceAsText)(?![\w!:?])z"(dict|list|message|set)(?![\w!:?])z`(case|case:and|case:else|case:nand|case:nor|case:not|case:or|case:otherwise|case:xor)(?![\w!:?])z(asText|become\!|derive|freeze\!|frozen\?|in\?|is\?|kind\?|mimic\!|mimics|mimics\?|prependMimic\!|removeAllMimics\!|removeMimic\!|same\?|send|thaw\!|uniqueHexId)(?![\w!:?])z (after|around|before)(?![\w!:?])zG(kind|cellDescriptionDict|cellSummary|genSym|inspect|notice)(?![\w!:?])z(use|destructuring)zn(cell\?|cellOwner\?|cellOwner|cellNames|cells|cell|documentation|identity|removeCell!|undefineCell)(?![\w!:?])z(internal:compositeRegexp|internal:concatenateText|internal:createDecimal|internal:createNumber|internal:createRegexp|internal:createText)(?![\w!:?])zk(availableRestarts|bind|error\!|findRestart|handle|invokeRestart|rescue|restart|signal\!|warn\!)(?![\w!:?])z(nil|false|true)(?![\w!:?])a
  (Arity|Base|Call|Condition|DateTime|Aspects|Pointcut|Assignment|BaseBehavior|Boolean|Case|AndCombiner|Else|NAndCombiner|NOrCombiner|NotCombiner|OrCombiner|XOrCombiner|Conditions|Definitions|FlowControl|Internal|Literals|Reflection|DefaultMacro|DefaultMethod|DefaultSyntax|Dict|FileSystem|Ground|Handler|Hook|IO|IokeGround|Struct|LexicalBlock|LexicalMacro|List|Message|Method|Mixins|NativeMethod|Number|Origin|Pair|Range|Reflector|Regexp Match|Regexp|Rescue|Restart|Runtime|Sequence|Set|Symbol|System|Text|Tuple)(?![\w!:?])uw   (generateMatchMethod|aliasMethod|λ|ʎ|fnx|fn|method|dmacro|dlecro|syntax|macro|dlecrox|lecrox|lecro|syntax)(?![\w!:?])z-?0[xX][0-9a-fA-F]+z(-?(\d+\.?\d*|\d*\.\d+)([eE][+-]?[0-9]+)?-?\d+z#\(a  (&&>>|\|\|>>|\*\*>>|:::|::|\.\.\.|===|\*\*>|\*\*=|&&>|&&=|\|\|>|\|\|=|\->>|\+>>|!>>|<>>>|<>>|&>>|%>>|#>>|@>>|/>>|\*>>|\?>>|\|>>|\^>>|~>>|\$>>|=>>|<<=|>>=|<=>|<\->|=~|!~|=>|\+\+|\-\-|<=|>=|==|!=|&&|\.\.|\+=|\-=|\*=|\/=|%=|&=|\^=|\|=|<\-|\+>|!>|<>|&>|%>|#>|\@>|\/>|\*>|\?>|\|>|\^>|~>|\$>|<\->|\->|<<|>>|\*\*|\?\||\?&|\|\||>|<|\*|\/|%|\+|\-|&|\^|\||=|\$|!|~|\?|#|\u2260|\u2218|\u2208|\u2209)z-(and|nand|or|xor|nor|return|import)(?![\w!?])z.(\`\`|\`|\'\'|\'|\.|\,|@@|@|\[|\]|\(|\)|\{|\})z[A-Z][\w!:?]*z[a-z_][\w!:?]*)rN  r   rQ  rM  rO  rP  rR  rE   rF   N)$rG   rH   rI   rJ   rK   rL   rM   rO   rN   rP   r   r"  r   r   DocRegexr   r   r#  Otherr   EntityVariabler   Reservedr\   r  rX   r   ra   r`   rd   r   re   rf   rg   rF   rh   ri   r   r   m  s    D
CItnG!"I&'-}}6["9:
 &&)()f
 &**f-()fjj!
 K(FO"
 #FLL&9()V\\"fll#	
 #FLL&9()V\\"v||$	
 &&)()v
D
JD
Z D

 '"D
 W%D
 FLL-0D
 fllN3D
 6==)D
 $V\\2D
 *6==9D
$'(.

OE%D
. 66"/D
0 V\*1D
6 ,T[[97D
< ?]]=D
D!")"2"24ED
N 6w?OD
T$&UD
^ .w7_D
d 3G4D4DEeD
j45<5E5EGkD
r %&sD
~ 1'2B2BCD
D$&ED
H $W%5%56ID
N$&OD
X %--/YD
d$--/eD
n ,T]];oD
t	. 04||	=uD
L!]],MD
V $VZZ0WD
X 9&,,GYD
Z v~~&[D
^ [!_D
d2 4<=eD
r >sD
z ?L{D
@ tzz*AD
F %GD
YqFrh   r   c                      \ rS rSrSrSrSrSS/rSS/rS	S
/r	Sr
SrSrSrSS\R                  4S\4S\4S\R&                  4S\4S\R(                  4S\R*                  4S\4S\-   \R.                  4S\R0                  4S\-   \R.                  4S\4\" \
SS9\4\" \SS9\R8                  4\" \SS9\R<                  4S\-   \R>                  4\\R@                  4S\!4S \!4S!\!4/0r"S"r#g#)$r   i-  z8
Lexer for Clojure source code.

.. versionadded:: 0.11
Clojurezhttp://clojure.org/clojurecljz*.cljz*.cljcztext/x-clojurezapplication/x-clojure)
r.  defr   fnr   letr   quoter5   loop)zdef-defnzdefn-defmacrodefmulti	defmethod	defstructdefoncer}   	definlinedefinterfacedefprotocol	defrecorddeftype
defprojectns(-  r   r   r   r   /r   r   r   r   r   r   z..accessoragentzagent-errorsagetalengthzall-nsalterandzappend-childapplyz	array-mapasetzaset-booleanz	aset-bytez	aset-charzaset-doublez
aset-floatzaset-intz	aset-longz
aset-shortassertassocawaitz	await-forbeanbindingzbit-andzbit-notzbit-orzbit-shift-leftzbit-shift-rightzbit-xorbooleanzbranch?butlastbytecastcharchildrenr,   zclear-agent-errorsr   commutecomp
comparator
complementconcatconjcons
constantlycondzif-notzconstruct-proxyz	contains?countz	create-nszcreate-structcycledecderef
differencedisjdissocdistinctdoalldocdorundoseqdosyncdotimesdotodoubledowndropz
drop-whileeditzend?ensureevalzevery?zfalse?ffirstzfile-seqfilterfindzfind-doczfind-nszfind-varfirstfloatflushr   fnseqfrestgensymzget-proxy-classrn   zhash-mapzhash-setz
identical?identityzif-letr3   zin-nsincr   zinsert-childzinsert-leftzinsert-rightzinspect-tablezinspect-treez	instance?int
interleaveintersectionintoz
into-arrayiteratejoinkeykeyskeywordzkeyword?lastzlazy-catz	lazy-consleftleftszline-seqzlist*listloadz	load-filelockinglongrb  macroexpandzmacroexpand-1z
make-arrayz	make-nodemapz
map-invertzmap?mapcatmaxzmax-keymemfnmergez
merge-withmetaminzmin-keyrL   	namespacezneg?r   newlinenextznil?nodenotznot-any?z
not-every?znot=z
ns-importsz
ns-internszns-mapzns-namez
ns-publicsz	ns-refersz
ns-resolvezns-unmapnthnthrestorparsepartialpathpeekpopzpos?przpr-strprintz	print-strprintlnzprintln-strprnzprn-strprojectproxyzproxy-mappingsquotrandzrand-intrangezre-findz	re-groupsz
re-matcherz
re-matchesz
re-patternzre-seqreadz	read-linereducerefzref-setreferremremovezremove-methodz	remove-nsrenamezrename-keysrepeatr  	replicateresolverestzresultset-seqreverserfirstrightrightsrE   rrestrseqsecondselectzselect-keyssendzsend-offseqzseq-zipzseq?ro   shortslurpsomesortzsort-byz
sorted-mapzsorted-map-byz
sorted-setzspecial-symbol?zsplit-atz
split-withstrzstring?structz
struct-mapsubssubvecsymbolzsymbol?synctakeztake-nthz
take-whiletesttimezto-arrayzto-array-2dztree-seqztrue?unionupzupdate-proxyvalvalszvar-getzvar-setzvar?vectorz
vector-zipzvector?whenz
when-firstzwhen-letzwhen-notzwith-local-varsz	with-metaz	with-openzwith-out-strzxml-seqzxml-zipzzero?zipmapzipperz(?!#)[\w!$%*+<=>?/.#|-]+rE   z;.*$z,+r>   z
-?\d+\.\d+z	-?\d+/\d+rS  z0x-?[abcdef\d]+r<  'z\\(.|[a-z]+)z::?#?z~@|[`\'#^~&@] r   z(?<=\()z(\[|\])z(\{|\})z(\(|\))rF   N)$rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   special_formsr   builtins
valid_namer   rV   r   r   r   r`   rd   ra   r   r#  r]   r   r   r   rU   r   r  rX   rX  r   rf   rg   rF   rh   ri   r   r   -  sn   
 D
C% G(#I!#:;IML1;Hr -J 	 gnn% DMZ  FLL)6"v~~&, )&1J.fkk* 
"FMM2 x( =-w7 <,g.A.AB 8C($,,7 *$dmm4 ' % % %i5
7Frh   r   c                   6    \ rS rSrSrSrSrSS/rS/rSS	/r	S
r
g)r   i  z=
Lexer for ClojureScript source code.

.. versionadded:: 2.0
ClojureScriptz http://clojure.org/clojurescriptclojurescriptcljsz*.cljsztext/x-clojurescriptzapplication/x-clojurescriptrF   N)rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rg   rF   rh   ri   r   r     s/    
 D
,C'G
I')FGIrh   r   c                      \ rS rSrSr\R                  \R                  -  rS\	" \
" \5      \R                  \\5      4S\4S\	" \R"                  \5      4S\R$                  4S\R&                  4S\4S	\R*                  4S
\R,                  4S\	" \R*                  \5      S4S\	" \R.                  \5      S4S\R2                  4S\R"                  4S\	" \\R4                  5      4S\R6                  4S\4S\4S\R:                  4S\R<                  4S\R>                  4S\4/S\R@                  S4/S\R.                  S4/S.r!Sr"g)TeaLangLexeri  zR
For Tea source code. Only used within a
TeaTemplateLexer.

.. versionadded:: 1.5
z:^(\s*(?:[a-zA-Z_][\w\.\[\]]*\s+)+?)([a-zA-Z_]\w*)(\s*)(\()r-   r.   r/   z@[a-zA-Z_][\w\.]*z/(and|break|else|foreach|if|in|not|or|reverse)\bz(as|call|define)\br4   z(template)(\s+)templater;  r3   r<  r=  r>  r?  z[a-zA-Z_\$]\w*z3(isa|[.]{3}|[.]{2}|[=#!<>+-/%&;,.\*\\\(\)\[\]\{\}])r+  rA  rB  r=   rC  r?   r@   )rE   r  r3   rF   N)#rG   rH   rI   rJ   rK   rQ   rR   rS   rT   r   r   r   r   rX   r   r   r   rV   rW   rY   r   rU   r\   r[   r   rH  r^   r_   r   r`   ra   rd   re   rf   rg   rF   rh   ri   r  r    ss    LL299$E
 eDk4==*hGI *%XgnnjAB7,,-!4>>2?"G$7$78#W%5%56'*=*=z!JJWx(9(9:FQ(&--8(&--8"HXt~~$FGtzz*%CXN5v||D

+&..)J3
8 djj&1
 4>>62
?"Frh   r  c                      \ rS rSrSrSrSrS/rS/rS/r	\
R                  \
R                  -  rSrS	\" \" \5      \R&                  \\5      4S
\4S\" \R.                  \5      4S\R0                  S4S\R2                  4S\4S\R6                  4S\R8                  4S\" \R:                  \5      4S\R<                  4S\" \R6                  \5      S4S\" \R:                  \5      S4S\4S\R@                  4S\" \\RB                  5      4S\RD                  4S\4S\4S\#RH                  4S\#RH                  4S \#RH                  4S!\#RH                  4S"\#RJ                  4S#\#RJ                  4S$\#RL                  4S%\#RL                  4S&\#RN                  4S'\#RN                  4S(\4/S)\RP                  S*4/S+\R:                  S*4/S,\R0                  4S\R0                  S-4S.\R0                  S*4S/\R0                  4/S0.r)S1r*g2)3r#   i  z0
For Ceylon source code.

.. versionadded:: 1.6
Ceylonzhttp://ceylon-lang.org/ceylonz*.ceylonztext/x-ceylonz(?:\s|//.*?\n|/[*].*?[*]/)+r(  r-   r.   r   r   z(shared|abstract|formal|default|actual|variable|deprecated|small|late|literal|doc|by|see|throws|optional|license|tagged|final|native|annotation|sealed)\bz(break|case|catch|continue|else|finally|for|in|if|return|switch|this|throw|try|while|is|exists|dynamic|nonempty|then|outer|assert|let)\bz9(abstracts|extends|satisfies|super|given|of|out|assign)\bz(function|value|void|new)\bz(assembly|module|package)(\s+)r4   z#(class|interface|object|alias)(\s+)r,   r;  r3   r<  z%'\\.'|'[^\\]'|'\\\{#[0-9a-fA-F]{4}\}'z(\.)([a-z_]\w*)r?  rC  r@  z/\d{1,3}(_\d{3})+\.\d{1,3}(_\d{3})+[kMGTPmunpf]?z7\d{1,3}(_\d{3})+\.[0-9]+([eE][+-]?[0-9]+)?[kMGTPmunpf]?z*[0-9][0-9]*\.\d{1,3}(_\d{3})+[kMGTPmunpf]?z2[0-9][0-9]*\.[0-9]+([eE][+-]?[0-9]+)?[kMGTPmunpf]?z##([0-9a-fA-F]{4})(_[0-9a-fA-F]{4})+z#[0-9a-fA-F]+z\$([01]{4})(_[01]{4})+z\$[01]+z\d{1,3}(_\d{3})+[kMGTP]?z[0-9]+[kMGTP]?r=   z[A-Za-z_]\w*r?   z[a-z][\w.]*z[^*/]r  r  r  )rE   r,   r3   r   rF   N)+rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   _wsr   r   r   r   rX   r   r   r   rV   rW   rY   r   rU   rZ   r[   r\   r   r]   r^   r_   r   r`   ra   rb   rd   re   rf   rg   rF   rh   ri   r#   r#     ss    D
#CjGI !ILL299$E )C
 eDk4==*hGI *%XgnnjABW&&	2%&*nn623:<-.5.A.AC+\\.9J9JJ0WX#W%5%563g)):6Ax(9(9:FQ(&15v{{Ch/1tzz*d#,h7?NG\\:FLLIB\\3VZZ@vzz*&

3$(&..9/JW,
\ djj&1
 ^^V%

 w(()W&&0W&&/g''(	
k;Frh   r#   c                   ^   \ rS rSrSrSrSrS/rSS/rS/r	\
R                  \
R                  -  rS	\R                  " S
SSSS5      -   S-   S-   \R                  " S
SSSSSSSSS5
      -   S-   rS	\R                  " S
SSSS5      -   S-   S-   \R                  " S
SSSSSSSSSS5      -   S-   rS\-   S-   \-   S-   rSr/ S\4PS\4PS\R,                  4PS \4PS!\" \R2                  \5      4PS"\" \R2                  \5      4PS#\R4                  4PS$\4PS%\4PS&\R:                  4P\" S'5      \R>                  4P\" S(S)S*9\R>                  4PS+\R@                  4PS,\" \\\RB                  5      4PS-\" \"\RF                  5      4PS.\" \$\RF                  5      4PS/\RJ                  4PS0\RJ                  4PS1\" \\\$\5      S24PS3\-   S4-   \" \&" \'S5S69\RP                  \5      S24PS7\" \RP                  \\$5      S84PS3\-   S9-   \" \&" \'S5S69\RP                  \5      S:4PS3\-   S;-   \" \&" \'S5S69\RP                  \5      S<4PS=\"4PS>\"4PS?\$4PS@\SA4PSB\SC4PSD\RR                  4PSE\*4PSF\-   SG-   \4P\\RV                  SH4/\\RX                  SH4/SI\$4S\4\\RX                  4SJ\-   SK-   \" \$\\5      4SL\"SM4SN\$SH4/SL\"SM4SF\-   SO-   \-   \" \\$\RZ                  5      SH4\\RZ                  SH4/SP\" \"\5      SH4SQ\$4SR\4SI\$4S\4\\4/SS\RP                  4S\4\." SH5      /SB\SH4\/" ST5      /S@\SH4SB\4\/" ST5      /SU\4SV\4SW\4SX\R`                  SY4SZ\" \R`                  \5      4S[\4/SB\4SX\R`                  SY4S\\$S]4S^\R`                  SH4\/" S_5      /S\\$S]4S^\$SH4\/" S_5      /S`.r1Sar2gb)cr    iF  z0
For Kotlin source code.

.. versionadded:: 1.5
Kotlinzhttp://kotlinlang.org/kotlinz*.ktz*.ktsztext/x-kotlinz@?[_r   r   r   Lmr   r   r   NdPcCfMnMcz]*Zsz\'~!%^&*()+=|\[\]:;,.<>/\?-]*r  z|`z`)zactual|abstract|annotation|companion|const|crossinline|data|enum|expect|external|final|infix|inline|inner|internal|lateinit|noinline|open|operator|override|private|protected|public|sealed|suspend|tailrec|valuer-   r>   \\$r=   r.   z^(#!/.+?)(\n)z/[*].*?[*]/zas\?z(as|break|by|catch|constructor|continue|do|dynamic|else|finally|get|for|if|init|[!]*in|[!]*is|out|reified|return|set|super|this|throw|try|typealias|typeof|vararg|when|where|while)\bzit\b)zBoolean?zByte?zChar?zDouble?zFloat?zInt?zLong?zShort?zString?zAny?zUnit?)BooleanByter]   rH  r`   Intr!  Shortr   AnyUnitr   r  r4   z(package|import)(\s+)(\S+)z(\?\.)((?:[^\W\d]|\$)[\w$]*)r:   r0   z[^\W\d][\w.]+@z(object)(\s+)(:)(\s+)r,   z((?:(?:z(|fun)\s+)*)(class|interface|object)(\s+)	modifiers)statez(var|val)(\s+)(\()destructuring_assignmentz)\s+)*)(var|val)(\s+)variablez)\s+)*)(fun)(\s+)functionz::|!!|\?[:.]r;   r<   rA   r6   r7   r8   z'\\.'|'[^\\]'z?[0-9](\.[0-9]*)?([eE][+-][0-9]+)?[flFL]?|0[xX][0-9a-fA-F]+[Ll]?r   z((\?[^.])?)r?   r	  z	(:)(\s+)(r   r   generic\)z(\.)z(>)(\s*)r
  z(reified|out|in)\bz\w+string_commonrB   rC   rD   r  interpolationz	(\$)(\w+)z[^\\"$]+r  scoper  rE   )rE   r,   r*  r)  r+  r,  r'  r8   r6   r.  r/  r0  rF   N)3rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   r  r  kt_namekt_space_namekt_idr'  r   r   r"  r   r   rV   rW   r   r   r  r   rZ   r\   r[   r   r^   r   rY   r   r   rU   r]   r   re   rX  rX   r
   r   r$  rf   rg   rF   rh   ri   r    r    F  s?    D
"CjG!I !ILL299$ED$dDAACG[[tT4tT4!%t--/34G ckk$dD$GG#M[[tT4tT4!%tT33 33M
 'MD =047EAI;
*%;
 Z ;
 V]]#	;

 J;
 XgnnjAB;
 x
CD;
 W../;
 g;
FGNP;
 dll#;
"  D EFMllT#;
&  >FKMNUll\';
, $W%5%56-;
0 +HWj$..,YZ1;
4 -hx.PQ5;
6 +H[$..,QR7;
: /;;
> /?;
B &x[R\']_fgC;
F )#&QQeD4g6I6I:VX_aG;
L #HW-@-@*k$Z')M;
P )#&>>eD4g6I6I:VXbdQ;
V )#&::eD4g6I6I:VXbdW;
\ h'];
^ %h/_;
b K(c;
f V/0g;
h 68$i;
j v{{+k;
n'(.0o;
t 5[>)40u;
z DJJ'
 DMM6*
 ;Z DMM"E!C'+z4)PQ8Y'K(%
 8Y'5[7"U*HT;,VX^_DMM6*
 (8Z8&A;"G,;Z DM
 W(()Z FO
 66"O$

 VV$6NO$
 fVFOfoo78FOOT:;&!
 6Nfoo7K)FOOV,FO
 K)K(FO
kzFrh   r    c                      \ rS rSrSrSrSrS/rS/rS/r	\
R                  \
R                  -  rS\" \" \5      \R$                  \\5      4S	\4S
\" \R,                  \5      4S\R.                  4S\R0                  4S\4S\R4                  4S\R6                  4S\" \R8                  \5      4S\R:                  4S\" \R4                  \5      S4S\" \R8                  \5      S4S\S4S\S4S\R>                  4S\R,                  4S\R@                  4S\4S\4S\!RD                  4S\!RF                  4S \!RH                  4S!\4/S"\RJ                  S#4/S$\R8                  S#4/S%\S#4S&\S#4S'\4/S(.r&S)r'g*)+r!   i  z/
For Xtend source code.

.. versionadded:: 1.6
Xtendzhttps://www.eclipse.org/xtend/xtendz*.xtendztext/x-xtend=^(\s*(?:[a-zA-Z_][\w.\[\]]*\s+)+?)([a-zA-Z_$][\w$]*)(\s*)(\()r-   r.   r/   r)  z(assert|break|case|catch|continue|default|do|else|finally|for|if|goto|instanceof|new|return|switch|this|throw|try|while|IF|ELSE|ELSEIF|ENDIF|FOR|ENDFOR|SEPARATOR|BEFORE|AFTER)\bz(def|abstract|const|enum|extends|final|implements|native|private|protected|public|static|strictfp|super|synchronized|throws|transient|volatile)\br1   r2   r4   r:  r,   r;  r3   z(''')r  z(\u00BB)r<  r=  r?  r*  [~^*!%&\[\](){}<>\|+=:;,./?-]r+  rA  rB  r=   rC  r?   r@   z'''z\u00ABr.  )rE   r,   r3   r  rF   N(rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   r   r   r   r   rX   r   r   r   rV   rW   rY   r   rU   rZ   r[   r\   r   rH  r_   r   r`   ra   rd   re   rf   rg   rF   rh   ri   r!   r!     s    D
*CiGI ILL299$E
 eDk4==*hGI *%XgnnjAB7,,- $..1G &'.':':< G\\):):J GH#W%5%56&1D1Dj(Qx(9(9:FQvz*&*-(&--8(&--8tzz*t$-x85v||D

+&..)JE#
J djj&1
 4>>62
 VV$'6N
W0Frh   r!   c                      \ rS rSrSrSrSrS/rS/rS/r	\
R                  \
R                  -  rS\4S	\4S
\R                   4S\R$                  4S\4S\4\" S5      \" S5      \" S5      \" S5      \" S5      S\R,                  4S\R.                  4S\R0                  4S\4S\" \R6                  \\5      4S\4S\4S\4/S\4/S\R<                  4/S\R>                  4/S\4/S\ 4S \ 4S!\ 4/S".r!S#r"g$)%r$   i$  z3
For Pig Latin source code.

.. versionadded:: 2.0
Pigzhttps://pig.apache.org/pigz*.pigz
text/x-pigr>   z--.*z/\*[\w\W]*?\*/r   rD   z1\'(?:\\[ntbrf\\\']|\\u[0-9a-f]{4}|[^\'\\\n\r])*\'r   typesr	  punctr   z[0-9]*\.[0-9]+(e[0-9]+)?[fd]?z0x[0-9a-f]+rB  r=   z([a-z_]\w*)(\s*)(\()z[()#:]z[^(:#\'")\s]+z\S+\s+a  (assert|and|any|all|arrange|as|asc|bag|by|cache|CASE|cat|cd|cp|%declare|%default|define|dense|desc|describe|distinct|du|dump|eval|exex|explain|filter|flatten|foreach|full|generate|group|help|if|illustrate|import|inner|input|into|is|join|kill|left|limit|load|ls|map|matches|mkdir|mv|not|null|onschema|or|order|outer|output|parallel|pig|pwd|quit|register|returns|right|rm|rmf|rollup|run|sample|set|ship|split|stderr|stdin|stdout|store|stream|through|union|using|void)\bz(AVG|BinStorage|cogroup|CONCAT|copyFromLocal|copyToLocal|COUNT|cross|DIFF|MAX|MIN|PigDump|PigStorage|SIZE|SUM|TextLoader|TOKENIZE)\bzR(bytearray|BIGINTEGER|BIGDECIMAL|chararray|datetime|double|float|int|long|tuple)\bz[;(){}\[\]][#=,./%+\-?] (eq|gt|lt|gte|lte|neq|matches)\b(==|<=|<|>=|>|!=))rE   r   r	  r=  r>  r   rF   N)#rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   
IGNORECASErT   r   r   rW   r   r"  r   r   r   r`   ra   rd   r   r   rX   r   r   r  rZ   r   rf   rg   rF   rh   ri   r$   r$   $  st    D
#CgG	IILL2==(E Z g 1 12V]]#DMA6JJGJGK -v||<VZZ(&..)J$dmmZ=?t$)
.3 5<=	
!\\+
"#*<<1

 [)
 h'0(;!8,
[2Frh   r$   c                    
   \ rS rSrSrSrSrS/rS/rS\	4S\
4S	\4S
\4S\R                  4S\4S\" \R                   \	5      S4S\" \R                   \5      4S\R                   4S\" \R$                  \	5      S4S\" \R$                  \	5      S4S\" \R$                  \	5      S4S\R&                  4S\4S\" \R(                  \5      4S\R(                  4S\" \R*                  \5      4S\R.                  4S\R0                  4S\R2                  4S\R4                  R6                  4S \R4                  4S!\4S"\R8                  4S#\\" S$S%5      4S&\\" S$S'5      4S(\\" S$S)5      4S*\R>                  4/S!\R*                  S+4/S,\R                   S+4/S-\R@                  S+4/S!\RB                  S+4/S.\4S/\4/S0\RD                  4/S#\S+4\#" S15      S2\4/S&\RH                  S+4\#" S15      /S(\S+4\#" S15      /S3\4S4\4S5\4/S6.r%S7r&g8)9r%   ih  z.
For Golo source code.

.. versionadded:: 2.0
Golozhttp://golo-lang.org/z*.gologolor-   z#.*$z5(\^|\.\.\.|:|\?:|->|==|!=|=|\+|\*|%|/|<=|<|>=|>|=|\.)z(?<=[^-])(-)(?=[^-])z2(?<=[^`])(is|isnt|and|or|not|oftype|in|orIfNull)\bz
[]{}|(),[]z(module|import)(\s+)modnamez\b([a-zA-Z_][\w$.]*)(::)z+\b([a-zA-Z_][\w$]*(?:\.[a-zA-Z_][\w$]*)+)\bz(let|var)(\s+)varnamez(struct)(\s+)
structnamez(function)(\s+)funcnamez(null|true|false)\bz(augment|pimp|if|else|case|match|return|case|when|then|otherwise|while|for|foreach|try|catch|finally|throw|local|continue|break)\bz%(map|array|list|set|vector|tuple)(\[)z6(print|println|readln|raise|fun|asInterfaceInstance)\bz(`?[a-zA-Z_][\w$]*)(\()z&-?[\d_]*\.[\d_]*([eE][+-]?\d[\d_]*)?F?z	0[0-7]+j?z0[xX][a-fA-F0-9]+z-?\d[\d_]*Lz
-?\d[\d_]*z`?[a-zA-Z_][\w$]*z@[a-zA-Z_][\w$.]*rA   stringescapetriplestringr7   doublestringr  singlestringz----((.|\n)*?)----r?   z[a-zA-Z_][\w$.]*\*?z`?[\w.]+\*?z[^\\\'"\n]+z[\'"\\]zY\\([\\abfnrtv"\']|\n|N\{.*?\}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|x[a-fA-F0-9]{2}|[0-7]{1,3})r8   r=   r?  r@  rA  )rE   rI  rF  rH  rG  r8   rJ  rK  rL  rM  r   rF   N)'rG   rH   rI   rJ   rK   rL   rM   rO   rN   r   r   r   Wordr   r   r   r[   r   rU   r\   r  rX   r   r`   rc   ra   rd   r!  rY   r   r	   rT  re   rX  r"  r   rH  rf   rg   rF   rh   ri   r%   r%   h  s    D
!C
IhG *%gE$h/BHMMRK($**J7 )8DNNK+PQ;T^^L,,j9 ,,j9  ,,j9 $W%5%56# %,- 6{35()-7'46 7E6::&!6::.V^^001FNN+!4(!4>>2VXnnEF68NNCD68NNCD"FJJ/q:
z "4==&9
 $T^^V<
 TZZ0
 "4==&9
 V$ 

<=C]]L

 VV$HFO
 6==&)H

 66"H

 h'0(;!8,
}cFrh   r%   c                      \ rS rSrSrSrSrSS/rS/rSr	S	\	-  r
S
\	-  rS\-  rS\-  rS\-  r0 S/ S\S4PS\R"                  S4PS\R$                  S4PS\4PS\S4P\
\4PS\R"                  4PS\-  \R,                  4PS\-  \R.                  4PS\-  \R0                  4PS\-  \R4                  4PS\-  \R8                  S4PS\-  \R8                  4PS \-  \R8                  S!4PS"\-  \R8                  S#4PS$\-  \R8                  S%4PS&\-  \R8                  S'4PS(\-  \R8                  S)4PS*\-  \R8                  S+4PS,\-  \R8                  S-4PS.\-  \R8                  S4PS/\-  \R8                  S04PS1\-  \R8                  S24PS3\-  \R8                  S44P\" S5\S69\R8                  4PS7\-  \R8                  S84PS9\-  \R8                  S:4PS;\-  \R8                  S<4PS=\-  \R8                  S>4P\" S?\S69\R8                  S4PS@\-  \R8                  SA4PSB\-  \R8                  SC4P_SDS\R"                  S4SE\R<                  4SF\R"                  4/_SS\R$                  S4SG\R<                  4SH\R$                  4/_SISJ\4S\R"                  SD4\" S5      SK\-  \ " \RB                  \\5      4\\RD                  4/_SS\SL4SM\-  \R8                  SN4\" S5      /_SOSJ\4SP\-  \R8                  S4\" S5      \\RD                  SQ4/_SRSJ\4SP\-  \R8                  S4\" S5      \#" SQ5      /_SSS\R"                  SD4\" S5      \\RD                  4/_S!ST\-  \S4\" S-5      /_S#\" S5      SU\< SV\< SW3\ " \RH                  \RJ                  \RL                  \5      S4SX\< SV\< SY3\ " \RJ                  \RL                  5      S4/_S8\" S5      SZ\S[4SU\< S\\< SW3\ " \RH                  \RJ                  \RL                  \5      S4SX\< S\\< SY3\ " \RJ                  \RL                  5      S4/_SA\" S5      SZ\4SU\< SV\< S]3\ " \RH                  \RJ                  \RL                  \5      S4S^\-  \RH                  S4\#" S5      /_S_\" S5      SZ\4SU\< S\\< SW3\ " \RH                  \RJ                  \RL                  \5      S4S^\-  \RH                  S4\#" S5      /_S`Sa\S4\#" SA5      /_S4\
\4Sb\-  \'Sc4\#" Sd5      /_S-\" S5      SX\< SV\< SY3\ " \RJ                  \RP                  5      S4/_SeSf\-  \R8                  Sg4\" S5      SX\< Sh\< Si\< Sj\< SY3	\ " \RJ                  \RL                  \R4                  RR                  5      S4/_\" S5      SX\< Sh\< Sk\< Sj\< Sl3	\ " \RJ                  \RL                  \RT                  \5      Sm4/\" S5      \\RB                  S4/\" S5      Sn\-  \ " \RT                  \5      Sm4/So\-  \R8                  S4\" S5      /\" S5      SX\< Sh\< Si\< Sj\< SY3	\ " \RJ                  \RL                  \R4                  RL                  5      S4/SJ\4SM\-  \R8                  S4\" S5      \\RB                  4/\" S5      \\R4                  S4/\" S5      Sp\-  \S4Sq\-  \Sr4Ss\-  \St4/Su.Er+Sv r,Swr-gx)yr&   i  z2
For Jasmin assembly code.

.. versionadded:: 2.0
Jasminzhttp://jasmin.sourceforge.net/jasminjasminxtz*.jz \n\t\rz	(?:[%s]+)z%s:=z
(?=[%s]|$)z[^%s]+z(?:[^%s.;\[/]+)r
   r=   r?   r  )r?   ra  r7   r8   r   r
  labelz;.*z(\$[-+])?0x-?[\da-fA-F]+%sz(\$[-+]|\+)?-?\d+%szG-?(\d+\.\d*|\.\d+)([eE][-+]?\d+)?[fFdD]?[\x00-\x08\x0b\x0c\x0e-\x1f]*%sz\$%sz\.annotation%sr   a!  (\.attribute|\.bytecode|\.debug|\.deprecated|\.enclosing|\.interface|\.line|\.signature|\.source|\.stack|\.var|abstract|annotation|bridge|class|default|enum|field|final|fpstrict|interface|native|private|protected|public|signature|static|synchronized|synthetic|transient|varargs|volatile)%sz	\.catch%szcaught-exceptionzb(\.class|\.implements|\.inner|\.super|inner|invisible|invisibleparam|outer|visible|visibleparam)%sclass/convert-dotsz	\.field%s)descriptor/convert-dotsfieldz(\.end|\.limit|use)%sno-verificationz
\.method%smethodz\.set%sr5   z
\.throws%s	exceptionz(from|offset|to|using)%szis%s)rU  r5   z(locals|stack)%sverificationzmethod%szenclosing-method)aaloadaastoreaconst_nullaloadaload_0aload_1aload_2aload_3aload_wareturnarraylengthastoreastore_0astore_1astore_2astore_3astore_wathrowbaloadbastorebipush
breakpointcaloadcastored2fd2id2ldadddaloaddastoredcmpgdcmpldconst_0dconst_1ddivdloaddload_0dload_1dload_2dload_3dload_wdmuldnegdremdreturndstoredstore_0dstore_1dstore_2dstore_3dstore_wdsubdupdup2dup2_x1dup2_x2dup_x1dup_x2f2df2if2lfaddfaloadfastorefcmpgfcmplfconst_0fconst_1fconst_2fdivfloadfload_0fload_1fload_2fload_3fload_wfmulfnegfremfreturnfstorefstore_0fstore_1fstore_2fstore_3fstore_wfsubi2bi2ci2di2fi2li2siaddialoadiandiastoreiconst_0iconst_1iconst_2iconst_3iconst_4iconst_5	iconst_m1idiviinciinc_wiloadiload_0iload_1iload_2iload_3iload_wimulinegint2byteint2char	int2shortioriremireturnishlishristoreistore_0istore_1istore_2istore_3istore_wisubiushrixorl2dl2fl2iladdlaloadlandlastorelcmplconst_0lconst_1ldc2_wldivlloadlload_0lload_1lload_2lload_3lload_wlmullneglookupswitchlorlremlreturnlshllshrlstorelstore_0lstore_1lstore_2lstore_3lstore_wlsublushrlxormonitorentermonitorexitnopr  pop2retret_wr   saloadsastoresipushswapr  z0(anewarray|checkcast|instanceof|ldc|ldc_w|new)%sclass/no-dotsz=invoke(dynamic|interface|nonvirtual|special|static|virtual)%s
invocationz(getfield|putfield)%s)descriptor/no-dotsrV  z(getstatic|putstatic)%s)r  static)gotogoto_w	if_acmpeq	if_acmpne	if_icmpeq	if_icmpge	if_icmpgt	if_icmple	if_icmplt	if_icmpneifeqifgeifgtifleifltifne	ifnonnullifnulljsrjsr_wz(multianewarray|newarray)%srU  ztableswitch%stablera  z\\u[\da-fA-F]{4}z[^'\\]+z0\\([nrtfb"\'\\]|u[\da-fA-F]{4}|[0-3]?[0-7]{1,2})z[^"\\]+rE   z\n+z(%s)([ \t\r]*)(:))r?   annotation-bodyz	default%s)r?   annotation-defaultr%  z\.end%s)annotation-itemsr  r&  r'  zall%sz(L)((?:z[/.])*)(z)(;)z((?:r   z\[+)r?   r  z/)*)(z?)(;)z
[^%s\[)L]+r  descriptors/convert-dotsr-  z(?=[^%s]*\())r?   r  )r?   rT  rV  zstatic%s)r?   r  z	[/.](?=[^z]*[/.]))*)(z[/.])?(z(]*[/.]))*)(z)(\())r?   rU  r(  rU  z(%s)(\()z(locals|method|stack)%sz8(Double|Float|Integer|Long|Null|Top|UninitializedThis)%szObject%s)r?   r  zUninitialized%s)r?   rS  )r  rS  rX  rW  r  r$  r5   rZ  c                 >   Sn[         R                  " SU [         R                  5      (       a5  US-  n[         R                  " SU [         R                  5      (       a  US-  n[         R                  " SU [         R                  5      (       a  US-  n[        US5      $ )	Nr   z^\s*\.class\sg      ?z^\s*[a-z]+_[a-z]+\bg333333?za^\s*\.(attribute|bytecode|debug|deprecated|enclosing|inner|interface|limit|set|signature|stack)\bg333333?g      ?)rQ   searchrR   r  )r   scores     ri   rE  JasminLexer.analyse_text  s    99%tR\\::SLEyy/r||DD99 EFJ\\# # SLE5#rh   rF   N).rG   rH   rI   rJ   rK   rL   rM   rN   rO   _whitespacer  
_separator_break_name_unqualified_namer   r   rV   rH  r   r   r   ra   rd   r`   r   rX  r   rY  r   r"  r   r   r_   rV  r
   rZ   r[   re   r   	ExceptionInstancerX   rf   rE  rg   rF   rh   ri   r&   r&     sV
    D
*C$GIK

$C;&JZ'F
"E*Z7g Q
J'Q
6=="34Q
 6==(+Q
 ;	Q

 ;(Q
 *Q
 W^^$Q
 +V3VZZ@Q
 $f,fnn=Q
0289:@,,HQ
 u_dmm,Q
 ')9)9<HQ
 E HN	N
 !Q
, F"G$4$46HI-Q
.=?EF35/Q
4 F"G$4$4135Q
8 &.0@0@ 9Q
< V#W%5%5x@=Q
> & '"2"2E:?Q
@ V#W%5%5{CAQ
B )6173C3CWMCQ
D vw///1EQ
H !6)7+;+;^LIQ
J 6!7#3#35GHKQ
P  -, 6<-=, ?F>N>N-PQQ
~ A6I0Q
B"$*+,3,<,<CQ
H &.0@0@,.IQ
L (&0'2B2B-/MQ
P  * 39	:
 w(QQ
\ ,f4g6F6F&(]Q
` &(8(8'BaQ
gf 	6==&) &--0'
ggp 	6==&)@]]'	
qg| 	Z 6=='*I!E)djj*k:<FLL!
}gL 	J ;<F"G$4$4+-I	
MgX 	Z & '"2"2F;IFLL"LM	
Ygd 	Z & '"2"2F;I>?	
egp 	6=='*IFLL!
qgz 	0K 
{gB 	I+<eDgllDNNDJJL &7>dnndjj16;
CgR 	I["@A(95AgllDNNDJJL #4U;dnndjj16;
Sgd 	"I[!,=uEgllDNNDJJL Z'v>FO$
egv 	I[!(95AgllDNNDJJL Z'v>FO
wgH 	#K(-.%
IgP 	*z)41GH23
QgZ 	I%6>dnndnn5v?
[gd 	6!7#3#35GHI->Gdnndjj$--2H2HI
egv I->Gdnndjj$--M)*
 IDJJ'

 I5 (4==+"F)*
 (&0'2B2BFKI

 I->Gdnndjj$--2E2EFP
 Z F"G$4$4f=IDJJ	
 IDMM6*

 IHf&6!7,EF&('3DE
AgFR
rh   r&   c                      \ rS rSrSrSrSrS/rS/rS/r	\
R                  \
R                  -  rS\" \" \5      \R$                  \\5      4S	\4S
\" \R,                  \5      4S\R.                  4S\R0                  4S\4S\R4                  4S\R6                  4S\" \R8                  \5      4S\R:                  4S\" \R4                  \5      S4S\" \R8                  \5      S4S\R>                  4S\R,                  4S\R@                  4S\4S\4S\!RD                  4S\!RF                  4S\!RH                  4S\4/S\RJ                  S 4/S!\R8                  S 4/S".r&S#r'g$)%r'   i  z.
For SARL source code.

.. versionadded:: 2.4
SARLzhttp://www.sarl.iosarlz*.sarlztext/x-sarlr7  r-   r.   r/   r)  z(as|break|case|catch|default|do|else|extends|extension|finally|fires|for|if|implements|instanceof|new|on|requires|return|super|switch|throw|throws|try|typeof|uses|while|with)\bz(abstract|def|dispatch|final|native|override|private|protected|public|static|strictfp|synchronized|transient|val|var|volatile)\br1   r2   z+(false|it|null|occurrence|this|true|void)\bzY(agent|annotation|artifact|behavior|capacity|class|enum|event|interface|skill|space)(\s+)r,   r;  r3   r<  r=  r?  r*  r8  r+  rA  rB  r=   rC  r?   r@   )rE   r,   r3   rF   Nr9  rF   rh   ri   r'   r'     s    D
ChG
IILL299$E
 eDk4==*hGI *%XgnnjAB7,,- $..1B R  " G\\):):J GH;W=M=MN,-5g6I6I:-V x(9(9:FQ(&--8(&--8tzz*t$-x85v||D

+&..)JC"
H djj&1
 4>>62
O*Frh   r'   )-rK   rQ   pygments.lexerr   r   r   r   r   r   r	   r
   r   pygments.tokenr   r   r   r   r   r   r   r   r   pygments.utilr   pygmentsr   r  __all__r   r"   r   r   r   r   r   r   r   r  r#   r    r!   r$   r%   r&   r'   rF   rh   ri   <module>r<     s-   
# # #$ $ $ ) %@Y
 Yx%*9 %*P] ]@	L
 L^= =$K0* K0\}
 }@J: JZ
H 
H,: ,^M* M`Y* Yx? ?DAz AHo
 odF* FR9
 9rh   