3

V'íc™ã@s˜dZddlZddlmZmZmZmZmZmZm	Z	m
Z
ddlmZm
Z
mZmZmZmZmZmZmZddlmZddgZGdd„deƒZGd	d„deƒZdS)
    pygments.lexers.perl
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for Perl, Raku and related languages.

    :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
éN)Ú
RegexLexerÚExtendedRegexLexerÚincludeÚbygroupsÚusingÚthisÚdefaultÚwords)	ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
Whitespace)Úshebang_matchesÚ	PerlLexerÚ
Perl6LexercÙ@sšeZdZdZdZdZddgZdddd	gZd
dgZe	j
e	jBZde
jd
fde
jd
fde
jd
fde
jd
fde
jd
fde
jd
fde
jd
fde
jd
fde
jd
fde
jd
fg
dejfdejfdejfedNd3d4efd5eeeeeeeƒd6fd7ejfd8e
jfd9e
jfd:e
jfd;e
jfd<e
jfd=e
jd>fd?e
jd>fd@e
jd>fdAe
jd>fdBe
jfdCe
jd>fdDe
jfdEefedOd3d4ejfdejjfdee
e
e
je
e
jeƒfdejdfdejj fdejj fd	ejd
fde!j"fde!j#fd
e!j$fde!j%fde!j%fde!j&fde
fde
fde
j'fde
jfde
j(dfde
j(dfde
j(dfde
j(dfde
j(fdeeeej)ƒfdeeeej)ƒfd eeeƒd!fedPd3d4efd&efd'efd(efd)ed*fg1d+e
j*d
fd,e
j*fgdEefd-ed
fd.ed
fd/ej)fd0ejd
fgd1ej)d
fd2ej)d
fd0ed
fd3ej+d
fd4e,d
fgd5ej-fdEefd6eeeƒfd7ed
fd8ed
fgd9e
j(fd:e
j(fd-e
j(dfd;e
j(d
fd<e
j(fgd=e
j(fd:e
j(fd>e
j(dfd?e
j(d
fd@e
j(fgdAe
j(fd:e
j(fdBe
j(dfdCe
j(d
fdDe
j(fgdEe
j(fd:e
j(fdFe
j(dfdGe
j(d
fdHe
j(fgdIejd
fgdJœZ.dKdL„Z/dMS(Qrz
    For Perl source code.
    ÚPerlzhttps://www.perl.orgÚperlÚplz*.plz*.pmz*.tz*.perlztext/x-perlzapplication/x-perlz"/(\\\\|\\[^\\]|[^\\/])*/[egimosx]*z#popz"!(\\\\|\\[^\\]|[^\\!])*![egimosx]*z\\(\\\\|[^\\])*\\[egimosx]*z$\{(\\\\|\\[^\\]|[^\\}])*\}[egimosx]*z"<(\\\\|\\[^\\]|[^\\>])*>[egimosx]*z%\[(\\\\|\\[^\\]|[^\\\]])*\][egimosx]*z$\((\\\\|\\[^\\]|[^\\)])*\)[egimosx]*z"@(\\\\|\\[^\\]|[^\\@])*@[egimosx]*z"%(\\\\|\\[^\\]|[^\\%])*%[egimosx]*z$\$(\\\\|\\[^\\]|[^\\$])*\$[egimosx]*z	\A\#!.+?$z\#.*?$z^=[a-zA-Z0-9]+\s+.*?\n=cutÚcaseÚcontinueÚdoÚelseÚelsifÚforÚforeachÚifÚlastÚmyÚnextÚourÚredoÚresetÚthenÚunlessÚuntilÚwhileÚprintÚnewÚBEGINÚCHECKÚINITÚENDÚreturnz\b)Úsuffixz!(format)(\s+)(\w+)(\s*)(=)(\s*\n)Úformatz$(eq|lt|gt|le|ge|ne|not|and|or|cmp)\bz:s/(\\\\|\\[^\\]|[^\\/])*/(\\\\|\\[^\\]|[^\\/])*/[egimosx]*z.s!(\\\\|\\!|[^!])*!(\\\\|\\!|[^!])*![egimosx]*z+s\\(\\\\|[^\\])*\\(\\\\|[^\\])*\\[egimosx]*z:s@(\\\\|\\[^\\]|[^\\@])*@(\\\\|\\[^\\]|[^\\@])*@[egimosx]*z:s%(\\\\|\\[^\\]|[^\\%])*%(\\\\|\\[^\\]|[^\\%])*%[egimosx]*zs\{(\\\\|\\[^\\]|[^\\}])*\}\s*zbalanced-regexzs<(\\\\|\\[^\\]|[^\\>])*>\s*zs\[(\\\\|\\[^\\]|[^\\\]])*\]\s*zs\((\\\\|\\[^\\]|[^\\)])*\)\s*z&m?/(\\\\|\\[^\\]|[^\\/\n])*/[gcimosx]*zm(?=[/!\\{<\[(@%$])z6((?<==~)|(?<=\())\s*/(\\\\|\\[^\\]|[^\\/])*/[gcimosx]*z\s+ÚabsÚacceptÚalarmÚatan2ÚbindÚbinmodeÚblessÚcallerÚchdirÚchmodÚchompÚchopÚchownÚchrÚchrootÚcloseÚclosedirÚconnectÚcosÚcryptÚdbmcloseÚdbmopenÚdefinedÚdeleteÚdieÚdumpÚeachÚendgrentÚ
endhostentÚ	endnetentÚendprotoentÚendpwentÚ
endserventÚeofÚevalÚexecÚexistsÚexitÚexpÚfcntlÚfilenoÚflockÚforkÚformlineÚgetcÚgetgrentÚgetgrgidÚgetgrnamÚ
gethostbyaddrÚ
gethostbynameÚ
gethostentÚgetloginÚgetnetbyaddrÚgetnetbynameÚ	getnetentÚgetpeernameÚgetpgrpÚgetppidÚgetpriorityÚgetprotobynameÚgetprotobynumberÚgetprotoentÚgetpwentÚgetpwnamÚgetpwuidÚ
getservbynameÚ
getservbyportÚ
getserventÚgetsocknameÚ
getsockoptÚglobÚgmtimeÚgotoÚgrepÚhexÚimportÚindexÚintÚioctlÚjoinÚkeysÚkillÚlcÚlcfirstÚlengthÚlinkÚlistenÚlocalÚ	localtimeÚlogÚlstatÚmapÚmkdirÚmsgctlÚmsggetÚmsgrcvÚmsgsndÚoctÚopenÚopendirÚordÚpackÚpipeÚpopÚposÚprintfÚ	prototypeÚpushÚ	quotemetaÚrandÚreadÚreaddirÚreadlineÚreadlinkÚreadpipeÚrecvÚrefÚrenameÚreverseÚ	rewinddirÚrindexÚrmdirÚscalarÚseekÚseekdirÚselectÚsemctlÚsemgetÚsemopÚsendÚsetgrentÚ
sethostentÚ	setnetentÚsetpgrpÚsetpriorityÚsetprotoentÚsetpwentÚ
setserventÚ
setsockoptÚshiftÚshmctlÚshmgetÚshmreadÚshmwriteÚshutdownÚsinÚsleepÚsocketÚ
socketpairÚsortÚspliceÚsplitÚsprintfÚsqrtÚsrandÚstatÚstudyÚsubstrÚsymlinkÚsyscallÚsysopenÚsysreadÚsysseekÚsystemÚsyswriteÚtellÚtelldirÚtieÚtiedÚtimeÚtimesÚtrÚtruncateÚucÚucfirstÚumaskÚundefÚunlinkÚunpackÚunshiftÚuntieÚutimeÚvaluesÚvecÚwaitÚwaitpidÚ	wantarrayÚwarnÚwritez+((__(DATA|DIE|WARN)__)|(STD(IN|OUT|ERR)))\bz/(<<)([\'"]?)([a-zA-Z_]\w*)(\2;?\n.*?\n)(\3)(\n)Z__END__zend-partz\$\^[ADEFHILMOPSTWX]z(\$[\\\"\[\]'&`+*.,;=%~?@$!<>(^|/-](?!\w)z[$@%#]+Úvarnamez0_?[0-7]+(_[0-7]+)*z0x[0-9A-Fa-f]+(_[0-9A-Fa-f]+)*z0b[01]+(_[01]+)*z?(?i)(\d*(_\d*)*\.\d+(_\d*)*|\d+(_\d*)*\.\d+(_\d*)*)(e[+-]?\d+)?z(?i)\d+(_\d*)*e[+-]?\d+(_\d*)*z
\d+(_\d+)*z'(\\\\|\\[^\\]|[^'\\])*'z"(\\\\|\\[^\\]|[^"\\])*"z`(\\\\|\\[^\\]|[^`\\])*`z<([^\s>]+)>z(q|qq|qw|qr|qx)\{z	cb-stringz(q|qq|qw|qr|qx)\(z	rb-stringz(q|qq|qw|qr|qx)\[z	sb-stringz(q|qq|qw|qr|qx)\<z	lt-stringz (q|qq|qw|qr|qx)([\W_])(.|\n)*?\2z/(package)(\s+)([a-zA-Z_]\w*(?:::[a-zA-Z_]\w*)*)z6(use|require|no)(\s+)([a-zA-Z_]\w*(?:::[a-zA-Z_]\w*)*)z
(sub)(\s+)ÚfuncnameÚnoÚpackageÚrequireÚusez=(\[\]|\*\*|::|<<|>>|>=|<=>|<=|={3}|!=|=~|!~|&&?|\|\||\.{1,3})z[-+/*%=<>&^|!\\~]=?z[()\[\]:;,<>/?{}]z(?=\w)Únamez\.\nz[^\n]*\nz\{z\)|,z\w+::z[\w:]+z+[a-zA-Z_]\w*(::[a-zA-Z_]\w*)*(::)?(?=\s*->)z[a-zA-Z_]\w*(::[a-zA-Z_]\w*)*::z
[A-Z_]+(?=\W)z(?=\W)z[a-zA-Z_]\w*[!?]?z(\([$@%]*\))(\s*)ú;z.*?\{z\\[{}\\]z\\z\}z[^{}\\]+z\\[()\\]z\(z\)z[^()]+z
\\[\[\]\\]z\[z\]z[^\[\]]+z\\[<>\\]z\<z\>z[^<>]+z.+)zbalanced-regexÚrootr3rñr÷ròz	cb-stringz	rb-stringz	sb-stringz	lt-stringzend-partcCs:t|dƒrdSd}tjd|ƒr&|d7}d|kr6|d}|S)NrTrz(?:my|our)\s+[$@%(]gÍÌÌÌÌÌì?z:=é)rÚreÚsearch)ÚtextÚresult©rÿú8/tmp/pip-build-gk9425m9/Pygments/pygments/lexers/perl.pyÚanalyse_textÐs
zPerlLexer.analyse_textN)rrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1)Är4r5r6r7r8r9r:r;r<r=r>r?r@rArBrCrDrErrFrGrHrIrJrKrLrMrNrOrPrQrRrSrTrUrVrWrXrYrZr[r\r]r^r3r_r`rarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r!r†r‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“r”r"r#r•r–r—r˜r$r™ršr›rœrržrŸr r¡r¢r£r¤r¥r¦r§r%r¨r©rªr«r¬r­r®r¯r°r±r²r³r´rµr¶r·r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈrÉrÊrËrÌrÍrÎrÏrÐrÑrÒrÓrÔrÕrÖr×rØrÙrÚrÛrÜrÝrÞrßràrárârãrärårærçrèrérêrërìrírîrïrð)rórôrõrö)0Ú__name__Ú
__module__Ú__qualname__Ú__doc__r÷ÚurlÚaliasesÚ	filenamesÚ	mimetypesrûÚDOTALLÚ	MULTILINEÚflagsrÚRegexrZHashbangÚSingleÚ	Multiliner	r
rrrrrÚWordÚBuiltinZPseudoZ	DelimiterZPreprocÚVariableÚGlobalrÚOctÚHexÚBinÚFloatÚIntegerZBacktickZOtherÚ	NamespaceZInterpolÚConstantr
ZFunctionÚtokensrrÿrÿrÿrrs.




































csneZdZdZdZdZdddgZddd	d
ddd
ddddddddgZddgZe	j
e	jBZdZ
dLZdMZdNZdOZdNd?dOdPdQdRdSdTdUdUdUdVdVdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd€dd‚dƒd„d…d†d‡dˆd‰dŠd‹dŒddŽddd‘d’d“d”d•d–d—d˜d™dšd›dœddždŸd d¡d¢d£d¤d¥d¦d§d¨d©dªd«d¬d­d®d¯d°d±d²d³d´dµd¶d·d¸d¹dºd»d¼d½d¾d¿dÀdÁddÐdĐdŐdƐdǐdȐdɐdʐdːd̐d͐dΐdϐdАdѐdҐdӐdԐdՐd֐dאdؐdِdڐdېdܐdݐdސdߐdàdádâdãdädådædçdèdédêdëdìdídîdïdðdñdòdódôdõdöd÷dødùdúdûdüdýdþdÿdddddddddd	œÀZdPdd
„Zdd„Zdd„Zdd„Zdd„Zddjeƒdeejƒfdejfdejfdejfdejfde
deeeƒdfde
d e
d!eeeƒd"fd#eeeeeƒfeee
ƒefeee
d$d%ej feee
ƒej fd&e
d'ej!fd(ej!j"fd)ej!j"fd*e
d'ej!j"fd+ej!fd,ee#ƒfd-e$j%fd.e$j&fd/e$j'fd0e$j(fd1e$j(fd2e$j)fd3e#j*fd4e#j*fd5efd6ee#j*ƒfd7e#j*fd8e#feeƒe+fd9e
d%efd:e#fd;e#fg!e,d<ƒd=efd>efd?e-fge,d<ƒd=e-dQfd?e-fgdAdjeƒdeeƒdRfe.dSƒgd>e-d@fdBe/e0ƒfdCe#j*fdDe#j*fdEe#j*fdFejfd=efd?e#j*fgdGœZ1dHdI„Z2‡fdJdK„Z3‡Z4S(TrzJ
    For Raku (a.k.a. Perl 6) source code.

    .. versionadded:: 2.0
    ZPerl6zhttps://www.raku.orgZperl6Zpl6Zrakuz*.plz*.pmz*.nqpz*.p6z*.6plz*.p6lz*.pl6z*.6pmz*.p6mz*.pm6z*.tz*.rakuz	*.rakumodz
*.rakutestz	*.rakudocztext/x-perl6zapplication/x-perl6z['\w:-]r-ÚCATCHr.ÚCLOSEÚCONTROLÚDOCr0ÚENTERÚFIRSTr/ÚKEEPÚLASTÚLEAVEÚNEXTÚPOSTÚPREÚQUITÚUNDOÚanonÚaugmentÚbutÚclassÚconstantrÚdoesrrÚenumrÚgatherÚgivenÚgrammarÚhasr rÚisÚletÚloopÚmadeÚmakeÚmethodÚmoduleÚmultir"ÚneedÚorwithr$ÚproceedÚprotoÚrepeatrõr1ú	return-rwÚreturnsÚroleÚruleÚstateÚsubÚ	submethodÚsubsetÚsucceedÚ	supersedeÚtokenÚtryÚunitr(r)röÚwhenr*ÚwithÚwithoutÚexportÚnativeÚreprÚrequiredÚrwÚsymbolÚACCEPTSr4Úabs2relÚabsoluter5ÚaccessedÚacosÚacosecÚacosechÚacoshÚacotanÚacotanhÚacquireÚactÚactionÚactionsÚaddÚ
add_attributeÚadd_enum_valueÚadd_fallbackÚ
add_methodÚ
add_parentÚadd_private_methodÚadd_roleÚadd_trusteeÚadverbÚafterÚallÚallocateÚallofÚallowedúalternative-namesÚannotationsÚantipairÚ	antipairsÚanyÚanyofÚapp_lifetimeÚappendÚarchÚarchnameÚargsÚarityÚArrayÚasecÚasechÚasinÚasinhú
ASSIGN-KEYú
ASSIGN-POSÚassumingÚastÚatÚatanr7ÚatanhúAT-KEYú
atomic-assignúatomic-dec-fetchúatomic-fetchúatomic-fetch-addúatomic-fetch-decúatomic-fetch-incúatomic-fetch-subúatomic-inc-fetchúAT-POSÚ
attributesÚauthÚawaitÚ	backtraceÚBagÚBagHashúbail-outÚbaseÚbasenameúbase-repeatingÚbatchúBIND-KEYúBIND-POSúbind-stderrú
bind-stdinúbind-stdoutúbind-udpÚbitsr:ÚblockÚBoolú	bool-onlyÚboundsÚbreakÚBridgeÚbrokenÚBUILDú
build-dateÚbytesÚcacheÚ	callframeúcalling-packageúCALL-MEÚcallsameÚcallwithÚcanÚcancelÚ
candidatesÚcandoúcan-okÚ	canonpathÚcapsÚcaptionÚCaptureÚcasÚcatdirÚ
categorizeúcategorize-listÚcatfileÚcatpathÚcauseÚceilingÚcglobalÚchangedÚChannelÚcharsr<Úchildú
child-nameúchild-typenamer=r>r?rAÚchrsÚchunksÚcisÚclassifyú
classify-listÚcleanupÚclonerCÚclosedúclose-stdinúcmp-okÚcodeÚcodesÚcollateÚcolumnÚcombÚcombinationsÚcommandÚcommentÚcompilerÚComplexÚcomposeÚcompose_typeÚcomposerÚ	conditionÚconfigÚconfigure_destroyÚconfigure_type_checkingÚconjrEÚconstraintsÚ	constructÚcontainsÚcontentsÚcopyrFÚcosecÚcosechÚcoshÚcotanÚcotanhÚcountú
count-onlyú	cpu-coresú	cpu-usageÚCREATEÚcreate_typeÚcrossÚcueÚcurdirÚcurupdirÚdÚDateÚDateTimeÚdayÚdaycountúday-of-monthúday-of-weekúday-of-yearú
days-in-monthÚdeclarationÚdecodeÚdecoderÚdeepmaprJÚDEFINITEÚdelayedú
DELETE-KEYú
DELETE-POSÚdenominatorÚdescÚDESTROYÚ
destroyersÚdevnullÚdiagúdid-you-meanrLúdies-okÚdirÚdirnameúdir-sepÚDISTROnamesrúdoes-okÚdoneúdone-testingÚduckmapÚdynamicÚeÚeagerÚearlierÚelemsÚemitÚ	enclosingÚencodeÚencoderÚencodingÚendú	ends-withÚenum_from_valueÚenum_value_listÚenum_valuesÚenumsrUÚEVALúeval-dies-okÚEVALFILEú
eval-lives-okÚ	exceptionúexcludes-maxúexcludes-minú
EXISTS-KEYú
EXISTS-POSrYÚexitcoderZÚexpectedúexplicitly-manageÚexpmodÚ	extensionÚfÚfailú
fails-likeÚfcÚfeatureÚfileÚfilenameÚfind_methodÚfind_method_qualifiedÚfinishÚfirstÚflatÚflatmapÚflipÚfloorÚflunkÚflushÚfmtr3Ú	formatterÚfreezeÚfromú	from-listú	from-loopú
from-posixÚfullúfull-barrierÚgetÚ	get_valuer`ÚgistÚgotÚgrabÚ	grabpairsr}ÚhandleÚhandledÚhandlesÚhardwareÚhas_accessorÚHashÚheadÚheadersúhh-mm-ssÚhiddenÚhidesÚhourÚhowÚhyperÚidÚillegalÚimÚinÚindentr€ÚindicesÚindirÚinfiniteÚinfixú	infix:<+>ú	infix:<->Úinstall_method_cacheÚInstantÚinsteadÚIntú
int-boundsÚintervalúin-timezoneúinvalid-strÚinvertÚinvocantÚIOúIO::Notification.watch-pathÚ
is_trustedÚis_typeÚisaúis-absoluteúisa-okú	is-approxú	is-deeplyú	is-hiddenúis-initial-threadúis-intúis-lazyúis-leap-yearÚisNaNÚisntúis-primeúis-relativeú
is-routineú
is-settingúis-winÚitemÚiteratorrƒÚkeepÚkeptÚKERNELnamesÚkeyÚkeyofr„r…ÚkvÚkxxvÚlÚlangr!ÚlastcallÚlaterÚlazyr†ÚleadingÚlevelÚlikeÚlineÚlinesr‰ÚListrŠÚliveúlives-okr‹ÚlockrÚlog10ÚlookupÚlsbÚMAINÚMapÚmatchÚmaxÚmaxpairsÚmergeÚmessageÚmethod_tableÚmethodsÚmigrateÚminÚminmaxÚminpairsÚminuteÚ	misplacedÚMixÚMixHashrÚmodeÚmodifiedÚmonthÚmoveÚmroÚmsbÚ	multinessr÷ÚnamedÚnamed_namesÚnarrowÚ
nativecastúnative-descriptorÚnativesizeofr,Únew_typeúnew-from-daycountúnew-from-pairsr#Ú
nextcalleeúnext-handleÚnextsameÚnextwithÚNFCÚNFDÚNFKCÚNFKDúnl-inúnl-outÚnodemapÚnokÚnoneÚnormÚnotÚnoteÚnowÚnudeÚNumÚ	numeratorÚNumericÚofÚoffsetúoffset-in-hoursúoffset-in-minutesÚokÚoldúon-closeÚoneú	on-switchr–ÚopenedÚ	operationÚoptionalr˜ÚordsÚorigúos-errorÚosnameú
out-bufferr™rôúpackage-kindúpackage-nameÚpackagesÚpairÚpairsÚpairupÚ	parameterÚparamsÚparentúparent-nameÚparentsÚparseú
parse-baseÚ	parsefileúparse-namesÚpartsÚpassÚpathúpath-sepÚpayloadú	peer-hostú	peer-portÚperiodsrÚpermutationsÚphaserÚpickÚ	pickpairsÚpidÚplaceholderÚplanÚplusÚpolarÚpollÚpolymodr›rœÚ
positionalÚposixÚpostfixÚ	postmatchúprecomp-extúprecomp-targetÚpredÚprefixÚprematchÚprependr+rúprint-nlúprint-toÚprivateÚprivate_method_tableÚprocÚproduceÚPromiseÚpromptÚprotectúpull-onerŸúpush-allú
push-at-leastúpush-exactlyúpush-until-lazyÚputúqualifier-typeÚquitÚrÚraceÚradixr¡ÚrangeÚRatÚrawrûr¢Ú	readcharsÚreadonlyÚreadyÚRealÚ
reallocateÚrealsÚreasonÚreblessÚreceiver§Úredispatcherr%ÚreduceÚrel2absÚrelativeÚreleaser©ÚrepeatedÚreplacementÚreportÚreservedÚresolveÚrestorerþÚresumeÚrethrowrªÚrightr¬r­Úroles_to_composeÚrolishÚrollÚrootdirÚrootsÚrotateÚrotorÚroundÚ
roundrobinúroutine-typeÚrunÚrwxÚsÚsamecaseÚsamemarkÚsamewithÚsayúschedule-onÚ	schedulerÚscopeÚsecÚsechÚsecondr¯ÚselfrµÚSetÚ
set_hiddenÚset_nameÚset_packageÚset_rwÚ	set_valueÚSetHashúset-instrumentsÚsetup_finalizationÚshapeÚshareÚshellr¿ÚsiblingÚsigilÚsignÚsignalÚsignalsÚ	signaturerÅÚsinhÚsinkúsink-allÚskipú
skip-at-leastúskip-at-least-pull-oneúskip-oneú	skip-restrÆúsleep-timerúsleep-untilÚSlipÚslurpú
slurp-restÚslurpyÚsnapÚsnapperÚsoúsocket-hostúsocket-portrÉÚsourceúsource-packageÚspawnÚSPECrÊrËÚsplitdirÚ	splitpathrÌÚspurtrÍÚsquishrÎÚstableÚstartÚstartedústarts-withÚstatusÚstderrÚstdoutÚStrÚ
sub_signatureÚsubbufú	subbuf-rwÚsubnameÚsubparseÚsubstúsubst-mutaterÑú	substr-eqú	substr-rwÚsubtestÚsuccÚsumÚSupplyrÒÚtÚtailÚtakeútake-rwÚtanÚtanhÚtapÚtargetútarget-nameÚtcÚtclcrÙr'ÚthrottleÚthrowúthrows-likeÚtimezoneÚtmpdirÚtoÚtodayÚtodoÚtoggleúto-posixÚtotalÚtrailingÚtransÚtreeÚtrimútrim-leadingú
trim-trailingràútruncated-toÚtrustsÚtry_acquireÚtryingÚtwigilÚtypeÚ
type_capturesÚtypenameráÚudpÚuncaught_handlerÚunimatchÚuninameÚuninamesÚuniparseÚunipropÚunipropsÚuniqueÚunivalÚunivalsÚunlikeråÚunlockræÚunpolarrçÚunwrapÚupdirÚUSAGEúuse-okÚutcÚvalÚvaluerêÚVARÚvariableúverbose-configÚversionÚVMnamesÚvolumeÚvowÚwrìrïÚwatchú
watch-pathÚweekúweekday-of-monthúweek-numberú	week-yearÚWHATÚWHEREÚ	WHEREFOREÚWHICHÚWHOúwhole-secondÚWHYÚwordcaser	Ú
workaroundÚwraprðúwrite-toÚxÚyadaÚyearÚyieldú
yyyy-mm-ddÚzÚzipú
zip-latestÚFalseÚTrueÚAnyÚAssociativeÚASTÚ	atomicintÚ	AttributeÚ	BacktraceúBacktrace::FrameÚBaggyÚBlobÚBlockÚBufÚCallableÚ	CallFrameÚCancellationÚCArrayÚCodeÚ
ComplexStrÚCoolÚCurrentThreadSchedulerÚCursorÚDateishÚDistroÚDurationÚEncodingÚ	ExceptionÚFailureÚFatRatÚGrammarÚ
HyperWhateverÚint16Úint32Úint64Úint8ÚIntStrúIO::ArgFilesú
IO::CatHandleú
IO::HandleúIO::NotificationúIO::PathúIO::Path::Cygwinú
IO::Path::QNXúIO::Path::UnixúIO::Path::Win32úIO::Pipeú
IO::SocketúIO::Socket::AsyncúIO::Socket::INETúIO::SpecúIO::Spec::Cygwinú
IO::Spec::QNXúIO::Spec::UnixúIO::Spec::Win32úIO::SpecialÚIterableÚIteratorÚJunctionÚKernelÚLabelÚLockúLock::AsyncÚlongÚlonglongÚMacroÚMatchúMetamodel::AttributeContainerúMetamodel::C3MROúMetamodel::ClassHOWúMetamodel::EnumHOWúMetamodel::FinalizationúMetamodel::MethodContainerú!Metamodel::MROBasedMethodDispatchúMetamodel::MultipleInheritanceúMetamodel::NamingúMetamodel::Primitivesú!Metamodel::PrivateMethodContainerúMetamodel::RoleContainerúMetamodel::TrustingÚMethodÚMixyÚMuÚNilÚnum32Únum64ÚNumStrÚObjAtÚOrderÚPairÚ	Parameterrú
Pod::BlockúPod::Block::CodeúPod::Block::CommentúPod::Block::DeclaratorúPod::Block::NamedúPod::Block::ParaúPod::Block::TableúPod::Headingú	Pod::ItemÚPointerÚ
PositionalÚPositionalBindFailoverÚProcúProc::AsyncÚProxyÚPseudoStashÚ	QuantHashÚRangeÚRationalÚRatStrr
ÚRoutineÚScalarÚ	SchedulerÚ	SemaphoreÚSeqÚSettyÚ	SignatureÚsize_tÚStashÚStrDistanceÚStringyÚSubÚ	SubmethodÚSupplierúSupplier::PreservingÚSystemicÚTapÚ	TelemetryúTelemetry::Instrument::ThreadúTelemetry::Instrument::UsageúTelemetry::PeriodúTelemetry::SamplerÚThreadÚThreadPoolSchedulerÚUIntÚuint16Úuint32Úuint64Úuint8ÚUniÚutf8rÚVersionÚVMÚWhateverÚWhateverCodeÚ
WrapHandleÚXÚZÚalsoÚandÚandthenÚbeforeÚcmpÚdivÚeqÚeqvÚextraÚffÚfffÚgeÚgtÚleÚlegÚltÚmÚmmÚmodÚneÚorÚorelseÚrxrßÚxorÚxxú++ú--ú**ú!ú+ú-ú~ú?ú|ú||ú+^ú~^ú?^ú^Ú*ú/ú%ú%%ú+&ú+<ú+>ú~&ú~<ú~>ú?&ÚgcdÚlcmú+|ú~|ú?|ú&ú<=>ú..ú..^ú^..ú^..^ú!=ú==ú<ú<=ú>ú>=ú~~ú===ú!eqvú&&ú^^ú//ú??ú!!ú<==ú==>ú<<==ú==>>Úunicmpú)ú]Ú}õ»u༻u༽u᚜u’u”u›u⁆u⁾u₎u∋u∌u∍u⧵u∽u⋍u≓u≕u≥u≧u≩u≫u≯u≱u≳u≵u≷u≹u≻u≽u≿u⊁u⊃u⊅u⊇u⊉u⊋u⊐u⊒u⦸u⊣u⫞u⫤uâ«£uâ«¥u⊱u⊳u⊵u⊷u⋊u⋌u⋑u⋗u⋙u⋛u⋝u⋟u⋡u⋣u⋥u⋧u⋩u⋫u⋭u⋱u⋺u⋻u⋼u⋽u⋾u⌉u⌋u〉u⎵u❩u❫u❭u❯u❱u❳u❵u⟄u⟆u⟖u⟞u⟣u⟥u⟧u⟩u⟫u⦄u⦆u⦈u⦊u⦌u⦎u⦐u⦒u⦔u⦖u⦘u⧁u⧅u⧐u⧒u⧕u⧙u⧛u⧹u⧽u⨬u⨮u⨵u⨽uâ©¥u⩺u⩾u⪀u⪂u⪄u⪌u⪒u⪔u⪖u⪘u⪚u⪜u⪢u⪧u⪩u⪫u⪭u⪰u⪴u⪼u⪾u⫀u⫂u⫄u⫆u⫎u⫐u⫒u⫔u⫖uâ«­u⫸u⫺u⸃u⸅u⸊u⸍u⸝u⸡u〉u》u」u』u】u〕u〗u〙u〛u〞uï´¿u︘u︶u︸u︺u︼u︾u﹀u﹂u﹄u﹈u﹚u﹜u﹞u)u>uï¼½u}uï½ uï½£)Àú(rÚú[Ú{õ«u༺u༼u᚛u‘u‚u‛u“u„u‟u‹u⁅u⁽u₍u∈u∉u∊u∕u∼u≃u≒u≔u≤u≦u≨u≪u≮u≰u≲u≴u≶u≸u≺u≼u≾u⊀u⊂u⊄u⊆u⊈u⊊u⊏u⊑u⊘u⊢u⊦u⊨u⊩u⊫u⊰u⊲u⊴u⊶u⋉u⋋u⋐u⋖u⋘u⋚u⋜u⋞u⋠u⋢u⋤u⋦u⋨u⋪u⋬u⋰u⋲u⋳u⋴u⋶u⋷u⌈u⌊u〈u⎴u❨u❪u❬u❮u❰u❲u❴u⟃u⟅u⟕u⟝u⟢u⟤u⟦u⟨u⟪u⦃u⦅u⦇u⦉u⦋u⦍u⦏u⦑u⦓u⦕u⦗u⧀u⧄u⧏u⧑u⧔u⧘u⧚u⧸u⧼u⨫u⨭u⨴u⨼u⩤u⩹u⩽uâ©¿u⪁u⪃u⪋u⪑u⪓u⪕u⪗u⪙u⪛u⪡u⪦u⪨u⪪u⪬u⪯u⪳u⪻u⪽u⪿u⫁u⫃u⫅u⫍u⫏u⫑u⫓u⫕u⫬uâ«·u⫹u⸂u⸄u⸉u⸌u⸜u⸠u〈u《u「u『u【u〔u〖u〘u〚u〝uï´¾u︗u︵u︷u︹u︻u︽u︿u﹁u﹃u﹇u﹙u﹛u﹝u(u<uï¼»u{u⦅uï½¢NÚcCsl|dkr,d|djdd„|Dƒƒ|dSd|d|ddjd	d„|Dƒƒd|d
|dSdS)Nz\b(r¼css|]}tj|ƒVqdS)N)rûÚescape)Ú.0rÿrÿrÿrú	<genexpr>ñsz/Perl6Lexer._build_word_match.<locals>.<genexpr>z)\bz(?<!rërïcss|]}tj|ƒVqdS)N)rûrô)rõrÿrÿrÿrröõsz(?!)rƒ)r	Zboundary_regex_fragmentr"r2rÿrÿrÚ_build_word_matchïs$zPerl6Lexer._build_word_matchcs‡fdd„}|S)Nc3sŽ|jƒ}|d}t|ƒ}|jdƒ}tjj|dƒ}|j}|dkrX|j||jdƒ|ƒ}	nˆ||}
d}|jdƒ}xl|dkrÚ|j|||ƒ}
|j|
||ƒ}|dkr®t|ƒ}d}qp|
d	krÌ|
|krÌ|d7}|
}qp|d8}|}qpW|}	|	dkrðt|ƒ}	|dk	r`tj	d|ƒr`||jdƒ||	…}tj	dtj
|ƒd||	d…tjƒ}|rX|	|jƒ7}	nt|ƒ}	|jƒˆ||jƒ|	|…fV|	||_
dS)
NÚ	delimiterÚadverbsréz:to\bz^\s*z\s*$éÿÿÿÿrû)Ú	groupdictÚlenrZrÚPERL6_BRACKETSrýÚfindr™rûrürôrr,rœ)Úlexerr´ÚcontextÚgroupsZ
opening_charsZn_charsrùÚcloserrýZend_posZ
closing_charsZ
nesting_levelZ
search_posZ
next_open_posZnext_close_posZheredoc_terminatorZend_heredoc)Útoken_classrÿrÚcallbackùsD


 z.Perl6Lexer.brackets_callback.<locals>.callbackrÿ)rrrÿ)rrÚbrackets_callbackøs5zPerl6Lexer.brackets_callbackccs\|j}|jƒt|j|jƒ|jƒ…fV|jƒ|_t|ƒdkrX|ddkrX|jd7_dS)NrúrLrúéþÿÿÿ)Ústackr™r
rýr,rœrýÚperl6_token_nesting_level)rr´rrrÿrÿrÚopening_brace_callback0s
"
z!Perl6Lexer.opening_brace_callbackccsn|j}|jƒt|j|jƒ|jƒ…fV|jƒ|_t|ƒdkrj|ddkrj|jd8_|jdkrj|jƒdS)NrúrLrúrr)	rr™r
rýr,rœrýr	r›)rr´rrrÿrÿrÚclosing_brace_callback=s"

z!Perl6Lexer.closing_brace_callbackccsBd|_|jƒt|j|jƒ|jƒ…fV|jƒ|_|jjdƒdS)Nrúrù)r	r™r
rýr,rœrr|)rr´rrÿrÿrÚembedded_perl6_callbackKs"
z"Perl6Lexer.embedded_perl6_callbackz$#[`|=](?P<delimiter>(?P<first_char>[z])(?P=first_char)*)z#[^\n]*$z%^(\s*)=begin\s+(\w+)\b.*?^\1=end\s+\2z^(\s*)=for.*?\n\s*?\nz
^=.*?\n\s*?\nz(regex|token|rule)(\s*z+:sym)ztoken-sym-bracketsz(regex|token|rule)(?!z)(\s*z+)?ú	pre-tokenz(role)(\s+)(q)(\s*)z
(?::[UD])?)r2z[$@%&][.^:?=!~]?u+(?:<<.*?>>|<.*?>|«.*?»)*u \$[!/](?:<<.*?>>|<.*?>|«.*?»)*z::\?\w+z[$@%&]\*z\$(?:<.*?>)+zn(?:q|qq|Q)[a-zA-Z]?\s*(?P<adverbs>:[\w\s:]+)?\s*(?P<delimiter>(?P<first_char>[^0-9a-zA-Z:\s])(?P=first_char)*)z0_?[0-7]+(_[0-7]+)*z0x[0-9A-Fa-f]+(_[0-9A-Fa-f]+)*z0b[01]+(_[01]+)*z?(?i)(\d*(_\d*)*\.\d+(_\d*)*|\d+(_\d*)*\.\d+(_\d*)*)(e[+-]?\d+)?z(?i)\d+(_\d*)*e[+-]?\d+(_\d*)*z
\d+(_\d+)*z(?<=~~)\s*/(?:\\\\|\\/|.)*?/z(?<=[=(,])\s*/(?:\\\\|\\/|.)*?/z
m\w+(?=\()z_(?:m|ms|rx)\s*(?P<adverbs>:[\w\s:]+)?\s*(?P<delimiter>(?P<first_char>[^\w:\s])(?P=first_char)*)zB(?:s|ss|tr)\s*(?::[\w\s:]+)?\s*/(?:\\\\|\\/|.)*?/(?:\\\\|\\/|.)*?/z
<[^\s=].*?\S>z\wz'(\\\\|\\[^\\]|[^'\\])*'z"(\\\\|\\[^\\]|[^"\\])*"Úcommonz\{z\}z.+?ú#popz(?P<delimiter>(?P<first_char>[z,(?<=:)(?:my|our|state|constant|temp|let).*?;z<(?:[-!?+.]\s*)?\[.*?\]>z(?<!\\)'(\\\\|\\[^\\]|[^'\\])*'z(?<!\\)"(\\\\|\\[^\\]|[^"\\])*"z#.*?$)rrùz	pre-tokenztoken-sym-bracketsrLcCsÒdd„}|jƒ}||ƒ}dj|ƒ}t|dƒr0dSd}d}tjdtjd|ƒrVd	}d}xf|D]^}tjd
d|ƒ}tjd|ƒr|q\tjd
|ƒrŒdStjd|ƒ}|r¸|s®|j	dƒdk	r²dSd}q\Pq\Wd|krÎ|d}|S)NcSsLd}g}x>|D]6}tjd|ƒr$d}qtjd|ƒr6d}q|s|j|ƒqW|S)NFz
^=(?:end|cut)z^=\w+T)rûr´r|)rªZin_podZstripped_linesr©rÿrÿrÚ	strip_pod¥s
z*Perl6Lexer.analyse_text.<locals>.strip_podÚ
zperl6|rakudo|niecza|pugsTFz(?:my|our|has)\s+(?:z
+\s+)?[$@%&(]gš™™™™™é?z#.*róz^\s*$z$^\s*(?:use\s+)?v6(?:\.\d(?:\.\d)?)?;z?^\s*(?:(?P<scope>my|our)\s+)?(?:module|class|role|enum|grammar)rfgš™™™™™©?z:=rú)
Ú
splitlinesrƒrrûrürÚPERL6_IDENTIFIER_RANGErGr´Úgroup)rýrrªZ
saw_perl_declZratingr©Z
class_declrÿrÿrr¤s8



zPerl6Lexer.analyse_textcs tƒjf|Ž|jddƒ|_dS)Nr+zutf-8)ÚsuperÚ__init__rZr+)rjÚoptions)Ú	__class__rÿrrÛszPerl6Lexer.__init__)Nr-rr.rrrr0r r!r/r"r#r$r%r&r'r(r)r*r+r,r-r.rr/rrr0rr1r2r3r4r rr5r6r7r8r9r:r;r<r"r=r>r$r?r@rArõr1rBrCrDrErFrGrHrIrJrKrLrMrNr(r)rörOr*rPrQrRrSrTrUrVrW(rXr4rYrZr5r[r\r]r^r_r`rarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r†r‡rˆr‰rŠr‹r7rŒrrŽrrr‘r’r“r”r•r–r—r˜r™ršr›rœrržrŸr r¡r¢r£r¤r¥r¦r§r¨r:r©rªr«r¬r­r®r¯r°r±r²r³r´rµr¶r·r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈrÉrÊrËrÌrÍr<rÎrÏrÐr=r>r?rArÑrÒrÓrÔrÕrÖr×rCrØrÙrÚrÛrÜrÝrÞrßràrárârãrärårærçrèrérêrërìrErírîrïrðrñrFròrórôrõrör÷rørùrúrûrürýrþrÿrrrrrrrrrr	r
rrr
rrJrrrrrrrrrrrrLrrrrrrr/rrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1rUr2r3r4r5r6r7r8r9r:rYr;rZr<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQr3rRrSrTrUrVrWrXrYrZr[r`r\r]r^r_r}r`rarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrr€rsrtrurvrwrxryrzr{r|r}r~rr€rr‚rƒr„r…r†r‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“r”r•r–r—r˜r™rƒršr›rœrržr„r…rŸr r¡r¢r!r£r¤r¥r†r¦r§r¨r©rªr‰r«rŠr¬r­r‹r®rr¯r°r±r8r²r9r³r´rµr¶r·r¸r:r¹rºr»r¼r½r¾r¿rÀrÁrÂrrÃrÄrÅrÆrÇrÈr<rÉr"r÷rÊrËrÌrÍrÎrÏr,rÐrÑrÒr#rÓrÔrÕrÖr×rØrÙrÚrÛrÜrÝrÞrßràrárârãrärårærçrèrérêrërìrírîrïrðr–rñròrór˜rôrõrör÷rør™rôrùrúrûrürýrþrÿrrrrrrrrrr	r
rrr
rrrrrrrrrrrrrrr›rœrrrrrr r!r"r#r$r+rr%r&r'r(r)r*r+r,r-r.rŸr/r0r1r2r3r4r5r6r7r8r¡r9r:r;rûr¢r<r=r>r?r@rArBrCrDr§rEr%rFrGrHrIr©rJrKrLrMrNrOrþrPrQrªrRr¬r­rDrSrTrUrVrWrXrYrZr[r\r]r^r_r`rarbrcrdrerfrgrhrir¯rjrµrkrlrmrnrorprqrrrsrtrurvr¿rwrxryrzr{r|rÅr}r~rr€rr‚rƒr„rÆr…r†r‡rˆr‰rŠr‹rŒrrŽrrÉrr‘r’r“rÊrËr”r•rÌr–rÍr—rÎr˜r™ršr›rœrržrŸr r¡r¢r£r¤r¥r¦rÑr§r¨r©rªr«r¬rÒr­r®r¯r°r±r²r³r´rµr¶r·rÙr'r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈràrÉrÊrËrÌrÍrÎrÏrÐrárÑrÒrÓrÔrÕrÖr×rØrÙrÚrÛrÜrårÝrærÞrçrßràrárârãrärårêrærçrèrérêrërìrírìrïrîrïrðrñròrórôrOrõrör÷rørùrúrûr	rürýrðrþrÿrrrrrrr)µrrr	rr
rrr
rrr›rrœrrrªrrrrrÁrrÌrrãrärrrrrrrrrr r!r"r#r$rer%rzr|r&r'r(r)r*rƒr+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@rArBr«rCrDrErFrGr³rHrIrJrKrLrMrNrOrPrQrRrSrTrUrVrÁrÂrWrXr×rØrÙrÚrYrårZr[rçr\r]r^r_r`rrarbrcrdrerfrgrhrirjrkrlrmrnr+rorprqrrr:rsrtr?r
rurvrwrxryrkrqrzr{r|r‡r}rŸr~rr€rr‚rƒr¬r„r…r†r‡rˆr‰rŠr‹rŒrrŽrrr‘r’r“rr”r•r–r—r˜)fr™ršrpr›rœrržrŸr r¡r¢r£r¤r¥r¦r§r¨r©rªr«r¬r­r®r¯r°r±r_rßrÿr²r³r´rµr¶r·r¸r¹rºr»r¼r½r¾r¿rÀrÁrÂrÃrÄrÅrÆrÇrÈrÉrÊrËrÌrÍrÎr¸r¹rÏr¾rÐr¿rÑrÀrºrÒrÁr,r/rÓrÔrÕrÖr×rØrÙrÚrÛrÜrÝrÞrßràrár½rârãr¼rµrärår¤r¥rrárærçrèrérê)Nróró)rrL)rr
)rr
)5rrrrr÷rrrr	rûrr
rrZPERL6_KEYWORDSZPERL6_BUILTINSZPERL6_BUILTIN_CLASSESZPERL6_OPERATORSrþr÷rr
rrrƒrrrrr
rrrrrrrrrrrrr
rrr
rrrrrrÚ
__classcell__rÿrÿ)rrrásf
	8























7)rrûZpygments.lexerrrrrrrrr	Zpygments.tokenr
rrr
rrrrrZ
pygments.utilrÚ__all__rrrÿrÿrÿrÚ<module>	s(,L