
    ,h                       d Z ddlZddlmZmZmZmZmZmZm	Z	m
Z
mZ ddlmZmZmZmZmZmZmZmZmZ ddlmZ ddlmZ g dZ G d d	e      Z G d
 de      Z G d de      Z G d de      Z G d de      Z  G d de      Z! G d de      Z" G d de      Z# G d de#      Z$ G d de      Z% G d de      Z& G d de      Z' G d  d!e      Z( G d" d#e      Z) G d$ d%e      Z* G d& d'e      Z+ G d( d)e      Z,y)*z
    pygments.lexers.jvm
    ~~~~~~~~~~~~~~~~~~~

    Pygments lexers for JVM languages.

    :copyright: Copyright 2006-2025 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                      e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  Zd ee ee      ej&                        d	fd
efd eej*                  e      fdej,                  fdefd e ee      ej0                  ee      fdej4                  fdej&                  fdej6                  fd eej8                  e      dfdej:                  fdej&                  d	fd eej&                  e      dfd eej8                  e      dfdedfdedfdej>                  fd eeej@                        fd eeee      fd  eeejB                  e      fd!efd"e"jF                  fd#e"jH                  fd$e"jJ                  fd%e"jL                  fd&e"jN                  fd'e(fd(efd)efgd*e)fd!ejT                  d+fgd!ed+fgd,ej8                  d+fgd-ed+fdef e+d      gd.efd/efd0efd1efded+fgd2Z,y3)4r   z
    For Java source code.
    Javaz(https://www.oracle.com/technetwork/java/javaz*.javaztext/x-java zJ(^\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)\bzF((?:(?:[^\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____doc__nameurlaliases	filenames	mimetypesversion_added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     U/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/pygments/lexers/jvm.pyr   r      s    D
4ChG
IIM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Frg   r   c                   L    e Zd ZdZdZdZdgZdgZdgZdZ	h dZ
h d	Zh d
Zd Zy)r"   z"
    For AspectJ source code.
    AspectJzhttp://www.eclipse.org/aspectj/aspectjz*.ajztext/x-aspectj1.6>+   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              #   n  K   t         j                  | |      D ]  \  }}}|t        u r|| j                  v r|t        |f )|t        j
                  u r+|| j                  v r|t        |d d f |t        |d   f f|t        j                  u r|| j                  v r|t        |f |||f  y w)N)
r   get_tokens_unprocessedr   aj_keywordsr   r^   aj_inter_typer   rX   aj_inter_type_annotation)selftextindextokenvalues        rh   r   z#AspectJLexer.get_tokens_unprocessed   s     #,#C#CD$#O 		*E5%}$*:*:!:We++$**$$2D2D)DWeCRj00XuRy00$..(Ud6S6S-SWe++UE))		*s   B3B5N)rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   r   r   r   r   rf   rg   rh   r"   r"   w   sH     D
+CkGI!"IM
K OMM
*rg   r"   c                   ~   e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  Zd ej                  d	d
      z   dz   Zd ej                  ddddd      z   dz   Zd ej                  dd      z   dz   Zde dZdj)                  ej+                  dd            Ze dZe e dZe e de dZe e de dZde de dZdZde de dZdZd Zd!Z d"Z!d#Z"i d$ e#d%       e#d&       e#d'       e#d(       e#d)       e#d*       e#d+       e#d,       e#d-       e#d.       e#d/       e#d0       e#d1       e#d2       e#d3       e#d4       e#d5       e#d6       e#d7       e#d8       e#d9       e#d:      gd%d;e$fgd&d<e%jL                  fd=e%jN                  d>fgd'd?e%jP                  fgd(d@ e)e*e$      dAfgd)dB e)e*e$e*e$      dCfdD e)e*e$      dCfgd* e+e"dEdEF      e*fdGe*fgd+dHe e,jZ                  fgd,dI e)e.e$e*e$      fgd-dJe dKe dL e)e*e$e,j^                        fdMe dKe dL e)e*e$e,j`                        fdNe dKe dL e)e*e$e*e$e,j`                        fdOe dKe dL e)e*e$e,j`                        fdPe*jb                  fdQe dKe dL e)e*e$e*e$e,jd                        fdR e)e*e$      dSfdTe d e)e*e$e,j`                        fdTe dL e)e*e$e,      fg	d.dUe de dVe dW e)e*e$e,j`                        fgd/dX e)e*e$      fgd0dY e)e*e$e*      fdZe de  e)e*e$e,j`                        fdZe de dLe  e)e*e$e,jd                        fgd9d[e.fd\e.fgd7 e+e dEdEF      e*fgd8dKe d] e)e3e$      fd^e3f e+e!      e3fd_e d`e de3fgd1dae,jh                  jj                  fdbe*jl                  fdce7jp                  fdde7jr                  fdee7jr                  fdfe7jr                  fdge7jt                  jv                  fdhe7jt                  fdie<fdje<fdk e)e<jz                  e<j|                  e<jz                        fdle<jz                  fgi d2dme<dnfdoe<dpfdqe<fgd3dre dse<j~                  fgd4dt e)e.e*      fgd5due de dve*fdwe*fgd6dxe.fdye.fgd:ee,j`                  fee,fgd>dze%jN                  fd=e%jN                  d{fd|e%jN                  d}fd~e%jN                  fgdAde@d}f e#d&      de*f e#d      de.dfgd e#d%       e#d&      de*fde3fde.d}fde.fde.f e#d      gdCde@d}f e#d&       e#d      de.dfgd e#d%       e#d&      de3fde.d}fde.f e#d      gdSde@d}fde.d}f e#d&       e#d      gdnde<d}fde<f e#d      gdpde<d}f e#d      gdde<j                  d}fde.df e#d$      gdde.d{fde.d}f e#d$      gdee,j`                  fdKe d e)e,jd                  e.      fde.fee,fde$fgdde<fde<j|                  fde d e)e<j                  e,      fde<j                  dfde<fgiZBy)r   z 
    For Scala source code.
    Scalazhttp://www.scala-lang.orgscalaz*.scalaztext/x-scalar+   z[!#%&*\-\/:?@^SmSo]z[_\$LlLuLoNlLt[z(?:z|[0-9])z(?:{}|[0-9])\$+*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   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)r   z(\()(\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*)(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
{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('z)(?!')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)(\.)z\.r-   z[^"$\\]+z\$\$z(\$)(\$\{z\\.N)CrF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   unicombineopcharletterupperLetterletterOrDigitformatreplaceletterOrDigitNoDollarSignalphaIdsimpleInterpolatedVariableidrestidUpperplainidbackQuotedIdanyIdnotStartOfCommentendOfLineMaybeWithCommentr   r   storage_modifiersr   r   r   rU   rV   Hashbangr   r   r   r   rX   r   rW   rd   rT   rZ   r   BuiltinPseudor[   r   r`   r_   rc   Longr   r\   EscapeSymbolr   Interpolre   rf   rg   rh   r   r      s
    D
%CiGI IMLL299$E+#++dD"99C?F{s{{4tT4@@3FFD$//#5K&)M . 5 5fnnUB6O PlG%+H-F,Gq"Ixj<Fm_JvhcBGF81VHB'GL7)1\N!,E% 0HIkL!JO$II'(M"GN#M"K ENK II$%HHJK M"G-
k6 	Z 
7k< 	(W&&	2
=kD 	g../
EkJ 	':!>N
KkP 	+*gzBMS':!>N
QkZ 	$U5A7K
DELN
[kl 	&]DNN+
mkr 	 %h{JQ[&\]
sk| 	015'<gz4==9; !2 31UG2>*djj9;<=N<OqQVPWWYZ*gz4::NP&'8&95'D*djj9;w223/0A/B!E7"M*gz4>>RT (7J"?K!'!,*djj9;!%+*d35
}k` 	!L>)<WIYP*djj9;
akj 	,hw
.KL
kkp 	H*g68gYa(A'BC*djj9;l^1WIR8Q7RS*dnn=?
qkB 	{+k*
CkJ 	8E%8'B
KkP 	&&:(FG8$9x(VHOF815x@	
Qk\ 	 $,,"5"56#W%5%56"FJJ/017?.=.=FNN//0''"F+Xfkk6==&++NO+V[[9
]kz 	!=>v45%v.
{kD 	7)6"FMM2
EkJ 	h{G<=
KkP 	 "'!L>@M
Qk` 	[)+&	
akl 	djj!DM
mkx 	))*W&&0W&&/g''(	
ykD 	T6*JW%$%K!:;
EkR 	"L!JW%HK(;$$%	$
Skf 	T6*J$%K!:;	
gkr 	"L!JHK(;$%$
skB 	D&);'J$%	
CkN 	%&&)6N01'
OkX 	66"01 
Yk` 	$FOOV,K!CDFO&
akj 	+K)K(FO-
kkx 	djj!% EFK DM*%
ykF 	%&!fmm$013$/1foo'BCV'
GkFrg   r   c                      e Zd ZdZdZdgZg dZdgZdZdZ	e
j                  e
j                  z  Zd e ee      ej$                  ee      fd	efd
ej,                  fdej.                  fdej0                  fdefdej4                  fd eej4                  eej4                        fdej6                  fd eej8                  e      fdej:                  fd eej4                  eej<                        fd eej8                  eej8                        fdedfd eeej@                        fd eeej@                        fdefdefde!jD                  fde!jF                  fdefgdefd eeej0                        d fd!ej.                  fd"ed fd#ed$fd%efgded&f e$d'      gdedfd(ed&f e$d)      gdedfd*ed$fd+ed&f e$d)      gd,Z%y-).r   z
    For Gosu source code.
    Gosugosu)z*.gsz*.gsxz*.gspz*.varkztext/x-gosuhttps://gosu-lang.github.io1.59^(\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-  N)&rF   rG   rH   rI   rJ   rL   rM   rN   rK   rO   rP   rQ   rR   rS   r   r   r   r   rW   r   r   r   rU   rV   rX   r   rT   rY   rZ   r[   rd   r   r]   r   r_   rc   r   re   rf   rg   rh   r   r     st    DhG4II
'CM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>Frg   r   c                   4    e Zd ZdZdZdgZdgZdgZdZdZ	d Z
y	)
r   z
    For Gosu templates.
    zGosu Templategstz*.gstztext/x-gosu-templater&  r'  c              #   ^   K   t               }dg}|j                  ||      E d {    y 7 w)Nr/  )r   r   )r   r   lexerstacks       rh   r   z(GosuTemplateLexer.get_tokens_unprocessed  s+      //e<<<s   #-+-N)rF   rG   rH   rI   rJ   rL   rM   rN   rK   rO   r   rf   rg   rh   r   r   
  s3     DgG	I'(I
'CM=rg   r   c                   r   e Zd ZdZdZdZdgZddgZdgZdZ	e
j                  e
j                  z  Zd	ej                  d
f ed
      gdefd eej&                  e      fdej(                  fdefd e ee      ej2                  ee      fdej6                  fdej8                  fdej:                  fd eej<                  e      fdej>                  fd eej8                  e      dfd eej<                  e      dfde jB                  fde j&                  fde jB                  fde j&                  fde fde fde jD                  fd  eeejF                        fd!ejH                  fd"efd#efd$e%jL                  fd%e%jN                  fd&e%jP                  fd'efgd(ejR                  d)fgd*ej<                  d)fgd+Z*d, Z+y-).r   z!
    For Groovy source code.
    Groovyzhttps://groovy-lang.org/groovyz*.groovyz*.gradleztext/x-groovyr'  z#!(.*?)$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   r8  r,   r3   c                     t        | d      S )Nr7  r   )r   s    rh   analyse_textzGroovyLexer.analyse_texte  s    tY//rg   N),rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   r   Preprocr
   r   r   rU   rV   r   r   r   r   rW   r   rX   rT   rY   rZ   r[   r   Doubler\   r]   r^   r   r_   r`   rc   rd   re   rD  rf   rg   rh   r   r     s(    D
$CjGJ'I !IM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0rg   r   c                      e Zd ZdZdZdZdgZddgZdgZdZ	d	e
j                  fd
edfgde
df ed      de
fgde
j                  df ed      de
j                  fgdedf ed      gde
j                  df ed      de
j                  fde
j                  fgde
j                  df ed      de
j                  fde
j                  fgde
df ed      de
fgg defdefdefdefde
j                  dfde
j                  d fd!e
j$                  fd"e
j&                  fd#e
j$                  fd$e
j                  d%fd&e
d'fd(e
d)fd*ej*                  fd+ej,                  fd,ej0                  fd-efd.efd/efd0ej0                  fd1ej0                  fd2efd3ej0                  fd4efd5ej0                  fd6efd7ej0                  fd8ej0                  fd9ej2                  fd:ej4                  fd;ej6                  fd<ej:                  fd=ej<                  fd>ej>                  fd?efd@e fdAe fdBefdCejB                  fdDefdEZ"yF)Gr   z`
    For Ioke (a strongly typed, dynamic,
    prototype based programming language) source.
    Iokezhttps://ioke.org/z*.ikiokeikztext/x-iokesrcz1.4zS(\\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!:?]*)rL  r   rO  rK  rM  rN  rP  rE   N)#rF   rG   rH   rI   rJ   rK   rM   rL   rN   rO   r   r   r   r   DocRegexr   r   r!  Otherr   EntityVariabler   Reservedr[   r  rW   r   r`   r_   rc   r   rd   re   rf   rg   rh   r   r   i  s    D
CItnG!"IM&'-}}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Frg   r   c                      e Zd ZdZdZdZddgZddgZdd	gZd
Z	dZ
dZdZdZddej                  fdefdefdej&                  fdefdej(                  fdej*                  fdefdez   ej.                  fdej0                  fdez   ej.                  fdef ee
d      ef eed      ej8                  f eed      ej<                  fdez   ej>                  feej@                  fde!fd e!fd!e!fgiZ"y")#r   z(
    Lexer for Clojure source code.
    Clojurezhttp://clojure.org/clojurecljz*.cljz*.cljcztext/x-clojurezapplication/x-clojurez0.11)
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-classrm   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longr`  macroexpandzmacroexpand-1z
make-arrayz	make-nodemapz
map-invertzmap?mapcatmaxzmax-keymemfnmergez
merge-withmetaminzmin-keyrJ   	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?rn   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+rQ  z0x-?[abcdef\d]+r;  'z\\(.|[a-z]+)z::?#?z~@|[`\'#^~&@] r   z(?<=\()z(\[|\])z(\{|\})z(\(|\))N)#rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   special_formsr   builtins
valid_namer   rU   r   r   r   r_   rc   r`   r   r!  r\   r   r   r   rT   r   r  rW   rV  r   re   rf   rg   rh   r   r   (  ss    D
C% G(#I!#:;IM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Frg   r   c                   2    e Zd ZdZdZdZddgZdgZddgZd	Z	y
)r   z.
    Lexer for ClojureScript source code.
    ClojureScriptz http://clojure.org/clojurescriptclojurescriptcljsz*.cljsztext/x-clojurescriptzapplication/x-clojurescript2.0N)
rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rf   rg   rh   r   r     s4     D
,C'G
I')FGIMrg   r   c                      e Zd ZdZej
                  ej                  z  Zd e e	e
      ej                  ee      fdefd eej                   e      fdej"                  fdej$                  fdefdej(                  fd	ej*                  fd
 eej(                  e      dfd eej,                  e      dfdej0                  fdej                   fd eeej2                        fdej4                  fdefdefdej8                  fdej:                  fdej<                  fdefgdej>                  dfgdej,                  dfgdZ y)TeaLangLexerzb
    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+  r@  rA  r=   rB  r?   r@   )rE   r  r3   N)!rF   rG   rH   rI   rP   rQ   rR   rS   r   r   r   r   rW   r   r   r   rU   rV   rX   r   rT   r[   rZ   r   rF  r]   r^   r   r_   r`   rc   rd   re   rf   rg   rh   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
?"Frg   r  c                      e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  ZdZd	 e ee      ej&                  ee      fd
efd eej.                  e      fdej0                  dfdej2                  fdefdej6                  fdej8                  fd eej:                  e      fdej<                  fd eej6                  e      dfd eej:                  e      dfdefdej@                  fd eeejB                        fdejD                  fdefdefde#jH                  fde#jH                  fd e#jH                  fd!e#jH                  fd"e#jJ                  fd#e#jJ                  fd$e#jL                  fd%e#jL                  fd&e#jN                  fd'e#jN                  fd(efgd)ejP                  d*fgd+ej:                  d*fgd,ej0                  fdej0                  d-fd.ej0                  d*fd/ej0                  fgd0Z)y1)2r#   z!
    For Ceylon source code.
    Ceylonzhttp://ceylon-lang.org/ceylonz*.ceylonztext/x-ceylonrl   z(?:\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>  rB  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   N)*rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   _wsr   r   r   r   rW   r   r   r   rU   rV   rX   r   rT   rY   rZ   r[   r   r\   r]   r^   r   r_   r`   ra   rc   rd   re   rf   rg   rh   r#   r#     sx    D
#CjGI !IM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;Frg   r#   c                   r   e Zd ZdZdZdZdgZddgZdgZdZ	e
j                  e
j                  z  Zd	 ej                  d
dddd      z   dz   dz    ej                  d
ddddddddd
      z   dz   Zd	 ej                  d
dddd      z   dz   dz    ej                  d
dddddddddd      z   dz   Zdez   dz   ez   dz   ZdZg defdefdej,                  fd efd! eej2                  e      fd" eej2                  e      fd#ej4                  fd$efd%efd&ej:                  f ed'      ej>                  f ed(d)*      ej>                  fd+ej@                  fd, eeeejB                        fd- ee"ejF                        fd. ee$ejF                        fd/ejJ                  fd0ejJ                  fd1 eeee$e      d2fd3ez   d4z    e e&e'd56      ejP                  e      d2fd7 eejP                  ee$      d8fd3ez   d9z    e e&e'd56      ejP                  e      d:fd3ez   d;z    e e&e'd56      ejP                  e      d<fd=e"fd>e"fd?e$fd@edAfdBedCfdDejR                  fdEe*fdFez   dGz   efeejV                  dHfgeejX                  dHfgdIe$fdefeejX                  fdJez   dKz    ee$ee      fdLe"dMfdNe$dHfgdLe"dMfdFez   dOz   ez    eee$ejZ                        dHfeejZ                  dHfgdP ee"e      dHfdQe$fdRefdIe$fdefeefgdSejP                  fdef e.dH      gdBedHf e/dT      gd@edHfdBef e/dT      gdUefdVefdWefdXej`                  dYfdZ eej`                  e      fd[efgdBefdXej`                  dYfd\e$d]fd^ej`                  dHf e/d_      gd\e$d]fd^e$dHf e/d_      gd`Z1ya)br    z!
    For Kotlin source code.
    Kotlinzhttp://kotlinlang.org/kotlinz*.ktz*.ktsztext/x-kotlinr'  z@?[_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\   rF  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.  r/  N)2rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   r	  r
  kt_namekt_space_namekt_idr&  r   r   r   r   r   rU   rV   r   r   r  r   rY   r[   rZ   r   r]   r   rX   r   r   rT   r\   r   rd   rV  rW   r
   r   r"  re   rf   rg   rh   r    r    >  sL    D
"CjG!I !IMLL299$ED$dDAACG S[[tT4tT4!%t--/34G kckk$dD$GG#M S[[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Frg   r    c                      e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  Zd e ee      ej$                  ee      fd	efd
 eej,                  e      fdej.                  fdej0                  fdefdej4                  fdej6                  fd eej8                  e      fdej:                  fd eej4                  e      dfd eej8                  e      dfdedfdedfdej>                  fdej,                  fdej@                  fdefdefde!jD                  fde!jF                  fd e!jH                  fd!efgd"ejJ                  d#fgd$ej8                  d#fgd%ed#fd&ed#fd'efgd(Z&y))*r!   z 
    For Xtend source code.
    Xtendzhttps://www.eclipse.org/xtend/xtendz*.xtendztext/x-xtendrl   =^(\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|val|var)\br1   r2   r4   r9  r,   r:  r3   z(''')r  z(\u00BB)r;  r<  r>  r*  [~^*!%&\[\](){}<>\|+=:;,./?-]r+  r@  rA  r=   rB  r?   r@   z'''z\u00ABr.  )rE   r,   r3   r  N'rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   r   r   r   r   rW   r   r   r   rU   rV   rX   r   rT   rY   rZ   r[   r   rF  r^   r   r_   r`   rc   rd   re   rf   rg   rh   r!   r!     s    D
*CiGI IMLL299$E
 eDk4==*hGI *%XgnnjAB7,,- $..1G ./6/B/BD 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Frg   r!   c                      e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  Zdefd	efd
ej                   fdej$                  fdefdef ed       ed       ed       ed       ed      dej,                  fdej.                  fdej0                  fdefd eej6                  ee      fdefdefdefgdefgdej<                  fgdej>                  fgdefgde fd e fd!e fgd"Z!y#)$r$   z$
    For Pig Latin source code.
    Pigzhttps://pig.apache.org/pigz*.pigz
text/x-pigr  r>   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]+rA  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   N)"rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   
IGNORECASErS   r   r   rV   r   r   r   r   r   r_   r`   rc   r   r   rW   r   r   r  rY   r   re   rf   rg   rh   r$   r$     sy    D
#CgG	IIM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Frg   r$   c                       e Zd ZdZdZdZdgZdgZdZde	fde
fd	efd
efdej                  fdefd eej                   e	      dfd eej                   e      fdej                   fd eej$                  e	      dfd eej$                  e	      dfd eej$                  e	      dfdej&                  fdefd eej(                  e      fdej(                  fd eej*                  e      fdej.                  fdej0                  fdej2                  fdej4                  j6                  fd ej4                  fd!efd"ej8                  fd#e ed$d%      fd&e ed$d'      fd(e ed$d)      fd*ej>                  fgd!ej*                  d+fgd,ej                   d+fgd-ej@                  d+fgd!ejB                  d+fgd.efd/efgd0ejD                  fgd#ed+f e#d1      d2efgd&ejH                  d+f e#d1      gd(ed+f e#d1      gd3efd4efd5efgd6Z%y7)8r%   z
    For Golo source code.
    Golozhttp://golo-lang.org/z*.gologolor  r-   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?  r@  )rE   rH  rE  rG  rF  r8   rI  rJ  rK  rL  r   N)&rF   rG   rH   rI   rJ   rK   rM   rL   rO   r   r   r   Wordr   r   r   rZ   r   rT   r[   r  rW   r   r_   rb   r`   rc   r  rX   r   r	   rR  rd   rV  r   r   rF  re   rf   rg   rh   r%   r%   ]  s    D
!C
IhGM *%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Frg   r%   c                      e Zd ZdZdZdZddgZdgZdZdZ	d	e	 d
Z
e	 dZde dZde dZde dZi dg dedfdej"                  dfdej$                  dfdefdedfe
efdej"                  fde ej,                  fde ej.                  fde ej0                  fd e ej4                  fd!e ej8                  d"fd#e ej8                  fd$e ej8                  d%fd&e ej8                  d'fd(e ej8                  d)fd*e ej8                  d+fd,e ej8                  d-fd.e ej8                  d/fd0e ej8                  d1fd2e ej8                  dfd3e ej8                  d4fd5e ej8                  d6fd-e ej8                  d7f ed8e9      ej8                  fd:e ej8                  d;fd<e ej8                  d=fd>e ej8                  d?fd@e ej8                  dAf edBe9      ej8                  dfdCe ej8                  dDfdEe ej8                  dFfdGdej"                  dfdHej<                  fdIej"                  fgddej$                  dfdJej<                  fdKej$                  fgdLdMefdej"                  dGf ed      dNe dO e ejB                  ee      feejD                  fgd"dedPfde ej8                  dQf ed      gdRdMefdSe ej8                  df ed      eejD                  dTfgdUdMefdSe ej8                  df ed       e#dT      gdVdej"                  dGf ed      eejD                  fgd%dWe edf ed1      gd' ed      dXe dYe dZ e ejH                  ejJ                  ejL                  e      dfd[e dYe d\ e ejJ                  ejL                        dfgd; ed      d]ed^fdXe d_e dZ e ejH                  ejJ                  ejL                  e      dfd[e d_e d\ e ejJ                  ejL                        dfgdD ed      d]efdXe dYe d` e ejH                  ejJ                  ejL                  e      dfde daejH                  df e#d      gdb ed      d]efdXe d_e dZ e ejH                  ejJ                  ejL                  e      dfde daejH                  df e#d      gdcddedf e#dD      gd7e
efdee dfe'dgf e#dh      gd1 ed      d[e dYe d\ e ejJ                  ejP                        dfgdidje ej8                  dkf ed      d[e dle dme dne d\	 e ejJ                  ejL                  ej4                  jR                        dfg ed      d[e dle doe dne dp	 e ejJ                  ejL                  ejT                  e      dqfg ed      eejB                  dfg ed      dNe dp e ejT                  e      dqfgdre ej8                  df ed      g ed      d[e dle dme dne d\	 e ejJ                  ejL                  ej4                  jL                        dfgdMefde ej8                  df ed      eejB                  fg ed      eej4                  dfg ed      dse edfdte edufdve edwfgdxZ+dy Z,yz){r&   z#
    For Jasmin assembly code.
    Jasminzhttp://jasmin.sourceforge.net/jasminjasminxtz*.jr  z \n\t\rz(?:[z]+)z:=z(?=[z]|$)z[^z]+z(?:[^z.;\[/]+)r
   r=   r?   r  )r?   r_  r7   r8   r   r  labelz;.*z(\$[-+])?0x-?[\da-fA-F]+z(\$[-+]|\+)?-?\d+zE-?(\d+\.\d*|\.\d+)([eE][-+]?\d+)?[fFdD]?[\x00-\x08\x0b\x0c\x0e-\x1f]*r   z\.annotationr   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)z\.catchzcaught-exceptionz`(\.class|\.implements|\.inner|\.super|inner|invisible|invisibleparam|outer|visible|visibleparam)class/convert-dotsz\.field)descriptor/convert-dotsfieldz(\.end|\.limit|use)no-verificationz\.methodmethodz\.setr5   z\.throws	exceptionz(from|offset|to|using)is)rT  r5   z(locals|stack)verificationz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  z.(anewarray|checkcast|instanceof|ldc|ldc_w|new)class/no-dotsz;invoke(dynamic|interface|nonvirtual|special|static|virtual)
invocationz(getfield|putfield))descriptor/no-dotsrU  z(getstatic|putstatic))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)rT  tableswitchtabler_  z\\u[\da-fA-F]{4}z[^'\\]+z0\\([nrtfb"\'\\]|u[\da-fA-F]{4}|[0-3]?[0-7]{1,2})z[^"\\]+rE   z\n+r   z)([ \t\r]*)(:))r?   annotation-body)r?   annotation-defaultr&  z\.end)annotation-itemsr  r'  r(  allz(L)((?:z[/.])*)(z)(;)z((?:r   z\[+)r?   r  z/)*)(z?)(;)z\[)L]+r  descriptors/convert-dotsr,  z(?=[^z]*\())r?   r  )r?   rS  rU  r  )r?   r  z	[/.](?=[^z]*[/.]))*)(z[/.])?(z(]*[/.]))*)(z)(\())r?   rT  r*  rT  z(locals|method|stack)z6(Double|Float|Integer|Long|Null|Top|UninitializedThis)Object)r?   r  Uninitialized)r?   rR  )r  rR  rW  rV  r  r%  r5   rZ  c                    d}t        j                  d| t         j                        r/|dz  }t        j                  d| t         j                        r|dz  }t        j                  d| t         j                        r|dz  }t        |d      S )	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      ?)rP   searchrQ   r  )r   scores     rh   rD  zJasminLexer.analyse_text  sv    99%tR\\:SLEyy/r||D99 EFJ\\# SLE5#rg   N)-rF   rG   rH   rI   rJ   rK   rL   rM   rO   _whitespacer  
_separator_break_name_unqualified_namer   r   rU   rF  r   r   r   r`   rc   r_   r   rV  r   rW  r   r   r   r   r^   rT  r
   rY   rZ   rd   r   	ExceptionInstancerW   re   rD  rf   rg   rh   r&   r&     sR    D
*C$GIMK+c
"C M$JZL%F*R E H5c Q
J'Q
6=="34Q
 6==(+Q
 ;	Q

 ;(Q
 *Q
 W^^$Q
 )16::>Q
 "&*FNN;Q
..4X78>FQ
 5']DMM*Q
 VH%w'7'7FQ
 C DJ(	L
 !Q
, x '"2"24FG-Q
.;;A(D35/Q
4 x '"2"2135Q
8 $F8,g.>.> 9Q
< !7#3#3X>=Q
> fX 0 0%8?Q
@ !7#3#3[AAQ
B 'vh/1A1A7KCQ
D 6(^W--/1EQ
H vh')9)9>JIQ
J vh!1!13EFKQ
P  -, 6<-=, ?F>N>N-PQQ
~ ?vhG0Q
B  &x)*1*:*:CQ
H $F8,g.>.>,.IQ
L &fX.0@0@-/MQ
P  * 39	:
 w(QQ
\ *&2G4D4D&(]Q
` F8$g&6&6@aQ
cf 	6==&) &--0'
gcp 	6==&)@]]'	
qc| 	Z 6=='*I%'djj*k:<FLL!
}cL 	J ;<x '"2"2+-I	
McX 	Z fX 0 0&9IFLL"LM	
Ycd 	Z fX 0 0&9I>?	
ecp 	6=='*IFLL!
qcz 	F8_gv.K 
{cB 	I)*(5'>gllDNNDJJL &'xwa8dnndjj16;
CcR 	I["@A)*%wd;gllDNNDJJL &'uUG15dnndjj16;
Scd 	"I[!)*(5'?gllDNNDJJL :,f%w||V<FO$
ecv 	I[!)*%wd;gllDNNDJJL :,f%w||V<FO
wcH 	#K(-.%
IcP 	*j\'/EF23
QcZ 	I&'xwa8dnndnn5v?
[cd 	vh!1!13EFI&'yKHYGZZabgahhijdnndjj$--2H2HI
ect I&'yLIZH[[bchbiinodnndjj$--M)*
 IDJJ'

 I% D)*
 &fX.0@0@&II

 I&'yKHYGZZabgahhijdnndjj$--2E2EFP
 Z x '"2"2F;IDJJ	
 IDMM6*

 IFvhOQXZ`avh*CDfX&1BC	
{cFJ
rg   r&   c                      e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  Zd e ee      ej$                  ee      fd	efd
 eej,                  e      fdej.                  fdej0                  fdefdej4                  fdej6                  fd eej8                  e      fdej:                  fd eej4                  e      dfd eej8                  e      dfdej>                  fdej,                  fdej@                  fdefdefde!jD                  fde!jF                  fde!jH                  fdefgdejJ                  d fgd!ej8                  d fgd"Z&y#)$r'   z
    For SARL source code.
    SARLzhttp://www.sarl.iosarlz*.sarlztext/x-sarlz2.4r6  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*  r7  r+  r@  rA  r=   rB  r?   r@   )rE   r,   r3   Nr8  rf   rg   rh   r'   r'     s    D
ChG
IIM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*Frg   r'   )-rI   rP   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   rg   rh   <module>r?     s+   
# # #$ $ $ ) %@Z
 Zz$*9 $*NZ ZzL
 L^= =$J0* J0Z|
 |~I: IX	 	,: ,^L* L^X* Xv> >B@z @Fn
 nbA* AH8
 8rg   