a
    W_(                    @   s  d Z ddlZddl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mZ ddlmZ g dZG dd deZG d	d
 d
eZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZdS )z
    pygments.lexers.lisp
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for Lispy languages.

    :copyright: Copyright 2006-2020 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerincludebygroupswordsdefault)
TextCommentOperatorKeywordNameStringNumberPunctuationLiteralError)PythonLexer)
SchemeLexerCommonLispLexerHyLexerRacketLexerNewLispLexerEmacsLispLexer	ShenLexer	CPSALexerXtlangLexerFennelLexerc                   @   sJ  e 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ejfdejdfdedfdefdefdejfdejfdefde
 ejfdejfdejfdefdddd eD  efde
 ejfde
 ejfd dd!d e	D  ejfd"e
 ejfe
ejfd#efd$efgdejd%fd&ejd'fd(ejfd)ejfgd*ed%fd+ed'fd,efgd-Zd.S )/r   a  
    A Scheme lexer, parsing a stream and outputting the tokens
    needed to highlight scheme code.
    This lexer could be most probably easily subclassed to parse
    other LISP-Dialects like Common Lisp, Emacs Lisp or AutoLisp.

    This parser is checked with pastes from the LISP pastebin
    at http://paste.lisp.org/ to cover as much syntax as possible.

    It supports the full Scheme syntax as defined in R5RS.

    .. versionadded:: 0.6
    ZSchemeschemeZscmz*.scmz*.ssztext/x-schemezapplication/x-scheme)lambdadefineifelsecondandorcaseletlet*letrecbegindodelayset!=>quote
quasiquoteunquoteunquote-splicingdefine-syntax
let-syntaxletrec-syntaxsyntax-rules)*+-/<<==>>=absacosangleappendapplyasinassocassqassvatanboolean?caaaarcaaadrcaaarcaadarcaaddrcaadrcaarcadaarcadadrcadarcaddarcadddrcaddrcadrcall-with-current-continuationcall-with-input-filecall-with-output-filecall-with-valuescall/cccarcdaaarcdaadrcdaarcdadarcdaddrcdadrcdarcddaarcddadrcddarcdddarcddddrcdddrcddrcdrceilingchar->integerchar-alphabetic?
char-ci<=?	char-ci<?	char-ci=?
char-ci>=?	char-ci>?char-downcasechar-lower-case?char-numeric?char-ready?char-upcasechar-upper-case?char-whitespace?char<=?char<?char=?char>=?char>?char?close-input-portclose-output-portcomplex?conscoscurrent-input-portcurrent-output-portdenominatordisplaydynamic-windeof-object?eq?equal?eqv?evaleven?exact->inexactexact?expexptfloorfor-eachforcegcd	imag-partinexact->exactinexact?input-port?integer->charinteger?interaction-environmentlcmlengthlistlist->stringlist->vectorlist-ref	list-taillist?loadlog	magnitude
make-polarmake-rectangularmake-stringmake-vectormapmaxmembermemqmemvminmodulo	negative?newlinenotnull-environmentnull?number->stringnumber?	numeratorodd?open-input-fileopen-output-fileoutput-port?pair?	peek-charport?	positive?
procedure?quotient	rational?rationalizeread	read-char	real-partreal?	remainderreverseroundscheme-report-environmentset-car!set-cdr!sinsqrtstringstring->liststring->numberstring->symbolstring-appendstring-ci<=?string-ci<?string-ci=?string-ci>=?string-ci>?string-copystring-fill!string-length
string-refstring-set!	string<=?string<?string=?	string>=?string>?string?	substringsymbol->stringsymbol?tantranscript-offtranscript-ontruncatevaluesvectorvector->listvector-fill!vector-length
vector-refvector-set!vector?with-input-from-filewith-output-to-filewrite
write-charzero?[\w!$%&*+,/:<=>?@^~|-]+;.*$#\|multiline-commentz#;\s*\(commented-formz#!r6rs\s+
-?\d+\.\d+-?\d+"(\\\\|\\"|[^"])*"''   #\\([()/'\"._!§$%& ?=+-]|[a-zA-Z0-9]+)(#t|#f)('|#|`|,@|,|\.)z(%s)|c                 c   s   | ]}t |d  V  qdS  Nreescape.0entry r  6/usr/lib/python3/dist-packages/pygments/lexers/lisp.py	<genexpr>       zSchemeLexer.<genexpr>(?<='\()(?<=#\()z(?<=\()(%s)c                 c   s   | ]}t |d  V  qdS r  r  r  r  r  r  r     r  (?<=\()(\(|\))(\[|\])#push\|##pop[^|#]+[|#]\(\)[^()]+)rootr  r  N)__name__
__module____qualname____doc__namealiases	filenames	mimetypeskeywordsbuiltins
valid_namer   Single	Multiliner   r   FloatIntegerr   SymbolCharr   Constantr	   joinr
   VariableBuiltinFunctionr   tokensr  r  r  r  r      sV   ,
8

r   c                ,   @   s0  e Zd ZdZdZg dZddgZdgZej	ej
B ZdZed Zd	Zd
eef Zdd Zdd Zedgdejdfdejdfdejfdejfgdejdfdejdfdejfgdefdejfdejdfdejfdefde ejfde ejfd e ejfd!e ejfd!efd"efd#e ejfd$e efd%e ejfd&e ejfd'e ejfd(edfd)e j!fd*e ejfd+efd,e"j#fd-ej$fd.ej%fd/ej&fd0efd1e'ee(dfd2e'e j!e(dfd3e'e j!e(dfd4e j!fd5efd6efd7e d8 ejd9fd:efd;efd<e e"j)fd=e d= e"j*j+fee"j*fde(dfde(dfg'd>Z,d?S )@r   z9
    A Common Lisp lexer.

    .. versionadded:: 0.9
    zCommon Lisp)zcommon-lispZclZlispz*.clz*.lispztext/x-common-lispz\\.|[\w!$%&*+-/<=>?@\[\]^{}~]|[#.:]z(?=[ "()\'\n,;`])z(\|[^|]+\||(?:%s)(?:%s)*)c           	      K   sd   ddl m}m}m}m}m}m}m} || _|| _	|| _
|| _|| _|| _|| _tj| fi | d S )Nr   )BUILTIN_FUNCTIONSSPECIAL_FORMSMACROSLAMBDA_LIST_KEYWORDSDECLARATIONSBUILTIN_TYPESBUILTIN_CLASSES)Zpygments.lexers._cl_builtinsr?  r@  rA  rB  rC  rD  rE  builtin_functionspecial_formsmacroslambda_list_keywordsdeclarationsbuiltin_typesbuiltin_classesr   __init__)	selfZoptionsr?  r@  rA  rB  rC  rD  rE  r  r  r  rM     s    $zCommonLispLexer.__init__c                 c   s   dg}t | ||D ]\}}}|tju r|| jv rB|tj|fV  q|| jv rZ|t|fV  q|| jv rt|tj|fV  q|| j	v r|t|fV  q|| j
v r|t|fV  q|| jv r|tj|fV  q|| jv r|tj|fV  q|||fV  qd S Nr&  )r   get_tokens_unprocessedr   r:  rF  r;  rG  r
   rH  rI  rJ  rK  TyperL  ClassrN  textstackindextokenvaluer  r  r  rP     s2    







z&CommonLispLexer.get_tokens_unprocessedbodyr  r  r  r   r!  r"  r#  r$  r%  r  r   r  z#\d*Y.*$z"(\\.|\\\n|[^"\\])*":::z:#r  `[-+]?\d+\.?[-+]?\d+/\d+<[-+]?(\d*\.\d+([defls][-+]?\d+)?|\d+(\.\d*)?[defls][-+]?\d+)z#\\.z#\\#\(z#\d*\*[01]*#:z#[.,]#\'z#b[+-]?[01]+(/[01]+)?z#o[+-]?[0-7]+(/[0-7]+)?z#x[+-]?[0-9a-f]+(/[0-9a-f]+)?z #\d+r[+-]?[0-9a-z]+(/[0-9a-z]+)?z(#c)(\()z(#\d+a)(\()z(#s)(\()z#p?"(\\.|[^"])*"#\d+=#\d+#z#+nilz\s*\(r  z#[+-]z	(,@|,|\.)(t|nil)\*)r&  r  r  rY  N)-r'  r(  r)  r*  r+  r,  r-  r.  r  
IGNORECASE	MULTILINEflagsnonmacroconstituent
terminatedsymbolrM  rP  r   r   r3  Preprocr   r2  Specialr   r6  r	   r   r5  r4  r7  r   ZOtherr   r<  BinOctHexr   r   r8  r:  Globalr=  r  r  r  r  r      s   





r   c                   @   s6  e Zd ZdZdZdgZdgZddgZdZdZ	d	Z
d
Ze
e ZdZdd Zdejfdefdejfdejfdejfdejfdefde ejfdejfdeeejfdeeejfde ejfdefededeeefee	ejfeee j!fde e j"fee j#fde$fde$fd e$fge%j&d! e%j&d" d#Z&d$d% Z'd&S )'r   zV
    Lexer for `Hy <http://hylang.org/>`_ source code.

    .. versionadded:: 2.0
    ZHyZhylangz*.hyz	text/x-hyzapplication/x-hy)%r!   for->->>r\   rk   firstrestr%   whenunlessimportr)   progngetslicerD   zwith-decorator,Z	list_compZkwapply~isinzis-notznot-inr.   r/   zunquote-splicer-   r  z<<=z>>=Zforeachwhileeval-and-compileeval-when-compile)defZdefndefundefmacrodefclassr   fnZsetvr  )cycledecZdistinctdropr   filterincz	instance?z	iterable?Ziteratez	iterator?zneg?znone?nthznumeric?r   zpos?removerepeatZ
repeatedlytakeZtake_nthZ
take_whiler   z(?!#)[\w!$%*+<=>?/.#:-]+c                 C   s   t | ddS )Nr  suffix)r   )entriesr  r  r  _multi_escape  s    zHyLexer._multi_escaper   [,\s]+r  r  z	0[0-7]+j?z0[xX][a-fA-F0-9]+r  r  z\\(.|[a-z]+)z"^(\s*)([rRuU]{,2}"""(?:.|\n)*?""")z"^(\s*)([rRuU]{,2}'''(?:.|\n)*?''')z::?z~@|[`\'#^~&@]py-keywordspy-builtinsr  r  (\{|\})r  r/  r0  )r&  r  r  c                 C   s   d| v sd| v rdS d S )Nz(import z(defn g?r  )rT  r  r  r  analyse_text  s    zHyLexer.analyse_textN)(r'  r(  r)  r*  r+  r,  r-  r.  rG  rJ  Zhy_builtinsZhy_corer0  r1  r  r   r2  r   r   r4  r5  rq  rr  r   r6  r7  r   ZDocr	   r   r
   Declarationr   r;  r<  r:  r   r   r=  r  r  r  r  r  r   Z  sP   

;@r   c                   @   s  e Zd ZdZdZddgZg dZddgZdZd	Z	d
Z
dZdZde ZdZdZdZde Zdeef Zdeef ZdZdeef Zdeef Zeefdedfgdefdejfdejdfdefdeef ejdfdeef ejdfd eeeeef edfd!eeeeeef ejdfd"eef ejdfd#e ejdfd$e ej dfd%e ej!dfd&e ejdfd'e"j#d(fd)e"j$dfd*e"j%dfd+e"j%dfd,e"j&dfd-e'j(dfd.e e)j*dfd/e+e)j,e'j,fd0e)j,d1fd2e e-fd3e
 e-d4fgd5e-fee"j.dfd6efe/dgee0dfge1d7d8e e)d4fd9e-d:fd;e e)d:fe
e0d<fe2ed=d>e d?e)dfe2e	d=d>e d?e'j3dfee'dfe1d@g	e1dAdedfge1d7dBe-dCfdDe e)dCfe
e0dEfe1d@ge1dAdedFfge1d7e
e0dGfe1d@ge1dAded1fgdejdHfdIejdfdJejfgdKe"j#dfdLe"j4fdMe"j#fgdNZ5dOS )Pr   z
    Lexer for `Racket <http://racket-lang.org/>`_ source code (formerly
    known as PLT Scheme).

    .. versionadded:: 1.6
    ZRacketZracketZrkt)z*.rktz*.rktdz*.rktlztext/x-racketzapplication/x-racket(~  z#%appz#%datumz	#%declarez#%expressionz#%module-beginz#%plain-appz#%plain-lambdaz#%plain-module-beginz#%printing-module-beginz	#%providez	#%requirez#%stratified-bodyz#%topz#%top-interactionz#%variable-referenceru  z->*z->*mz->dz->dmz->iz->m...z:do-in==r,   _ZabsentZabstractzall-defined-outzall-from-outr"   anyZaugmentzaugment*zaugment-finalzaugment-final*Zaugridezaugride*r(   zbegin-for-syntaxZbegin0r$   zcase->zcase->mzcase-lambdaclasszclass*zclass-field-accessorzclass-field-mutatorzclass/czclass/derivedz
combine-inzcombine-outzcommand-linezcompound-unitzcompound-unit/inferr!   zcons/dcZcontractzcontract-outzcontract-structZ
contractedr   zdefine-compound-unitzdefine-compound-unit/inferzdefine-contract-structzdefine-custom-hash-typeszdefine-custom-set-typeszdefine-for-syntaxzdefine-local-member-namezdefine-loggerzdefine-match-expanderzdefine-member-namezdefine-module-boundary-contractzdefine-namespace-anchorzdefine-opt/czdefine-sequence-syntaxzdefine-serializable-classzdefine-serializable-class*zdefine-signaturezdefine-signature-formzdefine-structzdefine-struct/contractzdefine-struct/derivedr1   zdefine-syntax-rulezdefine-syntaxeszdefine-unitzdefine-unit-bindingzdefine-unit-from-contextzdefine-unit/contractzdefine-unit/new-import-exportzdefine-unit/szdefine-valueszdefine-values-for-exportzdefine-values-for-syntaxzdefine-values/invoke-unitzdefine-values/invoke-unit/inferzdefine/augmentzdefine/augment-finalzdefine/augridezdefine/contractzdefine/final-propzdefine/matchzdefine/overmentzdefine/overridezdefine/override-finalzdefine/privatezdefine/publiczdefine/public-finalzdefine/pubmentzdefine/subexpression-pos-propz"define/subexpression-pos-prop/namer*   z
delay/idlez
delay/namezdelay/strictz
delay/synczdelay/threadr)   r    exceptz	except-inz
except-outZexportZextendszfailure-contfalsezfalse/cZfieldzfield-bound?filezflat-murec-contractzflat-rec-contractrt  zfor*zfor*/andz
for*/asyncz
for*/firstz	for*/foldzfor*/fold/derivedz	for*/hashzfor*/hasheqzfor*/hasheqvz	for*/lastz	for*/listz
for*/listszfor*/mutable-setzfor*/mutable-seteqzfor*/mutable-seteqvzfor*/orzfor*/productzfor*/setz
for*/seteqzfor*/seteqvzfor*/streamzfor*/sumzfor*/vectorzfor*/weak-setzfor*/weak-seteqzfor*/weak-seteqvz	for-labelzfor-metaz
for-syntaxzfor-templatezfor/andz	for/asyncz	for/firstzfor/foldzfor/fold/derivedzfor/hashz
for/hasheqzfor/hasheqvzfor/lastzfor/listz	for/listszfor/mutable-setzfor/mutable-seteqzfor/mutable-seteqvzfor/orzfor/productzfor/setz	for/seteqz
for/seteqvz
for/streamzfor/sumz
for/vectorzfor/weak-setzfor/weak-seteqzfor/weak-seteqvzgen:custom-writezgen:dictzgen:equal+hashzgen:setz
gen:streamZgenericz	get-fieldzhash/dcr   Zimpliesr{  r   zinclude-at/relative-tozinclude-at/relative-to/readerzinclude/readerZinheritzinherit-fieldzinherit/innerzinherit/superZinitzinit-dependz
init-fieldz	init-restinnerinspectZinstantiateZ	interfacez
interface*zinvariant-assertionzinvoke-unitzinvoke-unit/inferr   Zlazyr%   r&   zlet*-valuesr2   zlet-syntaxesz
let-valueszlet/cczlet/ecr'   r3   zletrec-syntaxeszletrec-syntaxes+valueszletrec-valuesliblinklocalzlocal-requirez	log-debugz	log-errorz	log-fatalzlog-infozlog-warningmatchzmatch*zmatch*/derivedzmatch-definezmatch-define-valueszmatch-lambdazmatch-lambda*zmatch-lambda**z	match-letz
match-let*zmatch-let*-valueszmatch-let-valueszmatch-letreczmatch-letrec-valueszmatch/derivedzmatch/valueszmember-name-keyZmixinmodulezmodule*zmodule+ZnandnewZnorzobject-contractzobject/cZonlyzonly-inzonly-meta-inopenzopt/cr#   Zovermentz	overment*overridez	override*zoverride-finalzoverride-final*Zparameterizezparameterize*zparameterize-breakzparametric->/cZplacezplace*zplace/contextZplanetprefixz	prefix-inz
prefix-outZprivatezprivate*zprompt-tag/czprotect-outprovidezprovide-signature-elementszprovide/contractZpubliczpublic*zpublic-finalzpublic-final*Zpubmentzpubment*r.   Zquasisyntaxzquasisyntax/locr-   zquote-syntaxzquote-syntax/prunezrecontract-outzrecursive-contractzrelative-inrenamez	rename-inzrename-innerz
rename-outzrename-superrequiresendzsend*zsend+zsend-genericz
send/applyzsend/keyword-applyr+   zset!-valuesz
set-field!Zsharedstreamzstream*zstream-consZstructzstruct*zstruct-copyzstruct-field-indexz
struct-outzstruct/cz
struct/ctcz	struct/dcZsubmodsuperzsuper-instantiatezsuper-make-objectz	super-newZsyntaxzsyntax-casezsyntax-case*zsyntax-id-rulesr4   z
syntax/loctagthiszthis%Zthunkzthunk*timezunconstrained-domain->Zunitzunit-from-contextzunit/czunit/new-import-exportzunit/srz  r/   r0   Zunsyntaxzunsyntax-splicingzvalues/dropry  zwith-continuation-markzwith-contractzwith-contract-continuation-markzwith-handlerszwith-handlers*zwith-methodzwith-syntax   λ(  r5   z*list/cr6   r7   r8   r9   z</cr:   z<=/cr;   z=/cr<   z>/cr=   z>=/czabort-current-continuationr>   zabsolute-path?r?   zadd-betweenZadd1z	alarm-evtz
always-evtzand/cZandmapr@   zany/crA   zappend*z
append-maprB   ZargmaxZargminzarithmetic-shiftzarity-at-leastzarity-at-least-valuezarity-at-least?zarity-checking-wrapperzarity-includes?zarity=?zarrow-contract-infoz#arrow-contract-info-accepts-arglistz'arrow-contract-info-chaperone-procedurez%arrow-contract-info-check-first-orderzarrow-contract-info?rC   ZassfrD   rE   rF   rG   zbad-number-of-resultsZbannerzbase->-doms/czbase->-rngs/czbase->?z	between/czbitwise-andzbitwise-bit-fieldzbitwise-bit-set?zbitwise-iorzbitwise-notzbitwise-xorzblame-add-car-contextzblame-add-cdr-contextzblame-add-contextzblame-add-missing-partyzblame-add-nth-arg-contextzblame-add-range-contextzblame-add-unknown-contextzblame-contextzblame-contractzblame-fmt->-stringzblame-missing-party?zblame-negativezblame-original?zblame-positivezblame-replace-negativezblame-sourcez
blame-swapzblame-swapped?zblame-updatezblame-valuezblame?z	boolean=?rH   zbound-identifier=?Zboxzbox-cas!zbox-immutablezbox-immutable/czbox/czbox?zbreak-enabledzbreak-parameterization?zbreak-threadz!build-chaperone-contract-propertyzbuild-compound-type-namezbuild-contract-propertyzbuild-flat-contract-propertyz
build-listz
build-pathzbuild-path/convention-typezbuild-stringzbuild-vectorzbyte-pregexpzbyte-pregexp?zbyte-ready?zbyte-regexpzbyte-regexp?zbyte?byteszbytes->immutable-byteszbytes->listzbytes->pathzbytes->path-elementzbytes->string/latin-1zbytes->string/localezbytes->string/utf-8zbytes-appendzbytes-append*zbytes-close-converterzbytes-convertzbytes-convert-endzbytes-converter?z
bytes-copyzbytes-copy!z bytes-environment-variable-name?zbytes-fill!z
bytes-joinzbytes-lengthzbytes-no-nuls?zbytes-open-converterz	bytes-refz
bytes-set!zbytes-utf-8-indexzbytes-utf-8-lengthzbytes-utf-8-refzbytes<?zbytes=?zbytes>?zbytes?rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   zcall-in-nested-threadzcall-with-atomic-output-filez call-with-break-parameterizationz!call-with-composable-continuationzcall-with-continuation-barrierzcall-with-continuation-promptrW   z*call-with-default-reading-parameterizationzcall-with-escape-continuationzcall-with-exception-handlerzcall-with-file-lock/timeoutz%call-with-immediate-continuation-markzcall-with-input-bytesrX   zcall-with-input-file*zcall-with-input-stringzcall-with-output-bytesrY   zcall-with-output-file*zcall-with-output-stringzcall-with-parameterizationzcall-with-semaphorez call-with-semaphore/enable-breakrZ   r[   zcall/ecr\   zcartesian-productr]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   zchannel-getzchannel-putzchannel-put-evtzchannel-put-evt?zchannel-try-getz	channel/czchannel?zchaperone-boxzchaperone-channelzchaperone-continuation-mark-keyzchaperone-contract-property?zchaperone-contract?zchaperone-evtzchaperone-hashzchaperone-hash-setzchaperone-of?zchaperone-procedurezchaperone-procedure*zchaperone-prompt-tagzchaperone-structzchaperone-struct-typezchaperone-vectorz
chaperone?rm   rn   zchar-blank?ro   rp   rq   rr   rs   rt   zchar-foldcasezchar-general-categoryzchar-graphic?zchar-inz	char-in/czchar-iso-control?ru   rv   zchar-punctuation?rw   zchar-symbolic?zchar-title-case?zchar-titlecaserx   ry   zchar-utf-8-lengthrz   r{   r|   r}   r~   r   r   zcheck-duplicate-identifierzcheck-duplicatesz#checked-procedure-check-and-extractz
choice-evtzclass->interfacez
class-infoz
class-sealzclass-unsealzclass?zcleanse-pathr   r   zcoerce-chaperone-contractzcoerce-chaperone-contractszcoerce-contractzcoerce-contract/fzcoerce-contractszcoerce-flat-contractzcoerce-flat-contractszcollect-garbagezcollection-file-pathzcollection-pathcombinationscompilezcompile-allow-set!-undefinedz$compile-context-preservation-enabledz compile-enforce-module-constantszcompile-syntaxzcompiled-expression-recompilezcompiled-expression?zcompiled-module-expression?zcomplete-path?r   ZcomposeZcompose1Zconjoin	conjugater   zcons/ccons?Zconstzcontinuation-mark-key/czcontinuation-mark-key?zcontinuation-mark-set->contextzcontinuation-mark-set->listzcontinuation-mark-set->list*zcontinuation-mark-set-firstzcontinuation-mark-set?zcontinuation-markszcontinuation-prompt-available?zcontinuation-prompt-tag?zcontinuation?zcontract-continuation-mark-keyz#contract-custom-write-property-proczcontract-exercisezcontract-first-orderzcontract-first-order-passes?zcontract-late-neg-projectionzcontract-namezcontract-proczcontract-projectionzcontract-property?zcontract-random-generatezcontract-random-generate-failzcontract-random-generate-fail?z0contract-random-generate-get-current-environmentzcontract-random-generate-stashzcontract-random-generate/choosezcontract-stronger?zcontract-struct-exercisezcontract-struct-generatez#contract-struct-late-neg-projectionzcontract-struct-list-contract?zcontract-val-first-projectionz	contract?zconvert-streamzcopy-directory/files	copy-filez	copy-portr   coshcountzcurrent-blame-formatzcurrent-break-parameterizationzcurrent-code-inspectorzcurrent-command-line-argumentszcurrent-compilezcurrent-compiled-file-rootszcurrent-continuation-markszcurrent-contract-regionzcurrent-custodianzcurrent-directoryzcurrent-directory-for-userzcurrent-drivezcurrent-environment-variableszcurrent-error-portzcurrent-evalz#current-evt-pseudo-random-generatorz current-force-delete-permissionszcurrent-futurezcurrent-gc-millisecondsz"current-get-interaction-input-portzcurrent-inexact-millisecondsr   zcurrent-inspectorz current-library-collection-linksz current-library-collection-pathszcurrent-loadzcurrent-load-extensionzcurrent-load-relative-directoryzcurrent-load/use-compiledzcurrent-localezcurrent-loggerzcurrent-memory-usezcurrent-millisecondszcurrent-module-declare-namezcurrent-module-declare-sourcezcurrent-module-name-resolverzcurrent-module-path-for-loadzcurrent-namespacer   zcurrent-parameterizationzcurrent-plumberz$current-preserved-thread-cell-valueszcurrent-printzcurrent-process-millisecondszcurrent-prompt-readzcurrent-pseudo-random-generatorzcurrent-read-interactionzcurrent-reader-guardzcurrent-readtablezcurrent-secondszcurrent-security-guardz!current-subprocess-custodian-modezcurrent-threadzcurrent-thread-groupz!current-thread-initial-stack-sizez current-write-relative-directorycurryZcurryrzcustodian-box-valuezcustodian-box?zcustodian-limit-memoryzcustodian-managed-listz&custodian-memory-accounting-available?zcustodian-require-memoryzcustodian-shutdown-allz
custodian?zcustom-print-quotable-accessorzcustom-print-quotable?zcustom-write-accessorzcustom-write-property-proczcustom-write?datezdate*zdate*-nanosecondzdate*-time-zone-namezdate*?zdate-dayz	date-dst?z	date-hourzdate-minutez
date-monthzdate-secondzdate-time-zone-offsetzdate-week-dayz	date-yearzdate-year-dayzdate?zdatum->syntaxzdatum-intern-literalzdefault-continuation-prompt-tagzdegrees->radianszdelete-directoryzdelete-directory/filesdelete-filer   z
dict->listzdict-can-functional-set?zdict-can-remove-keys?z
dict-clearzdict-clear!z	dict-copyz
dict-countzdict-empty?zdict-for-eachzdict-has-key?zdict-implements/czdict-implements?zdict-iter-contractzdict-iterate-firstzdict-iterate-keyzdict-iterate-nextzdict-iterate-valuezdict-key-contractz	dict-keyszdict-mapzdict-mutable?zdict-refz	dict-ref!zdict-removezdict-remove!zdict-setz	dict-set!z	dict-set*z
dict-set*!zdict-updatezdict-update!zdict-value-contractzdict-valueszdict?zdirectory-exists?zdirectory-listZdisjoinr   zdisplay-lineszdisplay-lines-to-filezdisplay-to-fileZ	displaylnzdouble-flonum?r  zdrop-common-prefixz
drop-rightZdropfzdropf-rightzdump-memory-statszdup-input-portzdup-output-portz
dynamic->*zdynamic-get-fieldzdynamic-object/czdynamic-placezdynamic-place*zdynamic-requirezdynamic-require-for-syntaxzdynamic-sendzdynamic-set-field!r   Zeighthemptyzempty-sequencezempty-streamempty?zenvironment-variables-copyzenvironment-variables-nameszenvironment-variables-refzenvironment-variables-set!zenvironment-variables?eofzeof-evtr   zephemeron-valuez
ephemeron?Zeprintfzeq-contract-valzeq-contract?zeq-hash-coder   zequal-contract-valzequal-contract?zequal-hash-codezequal-secondary-hash-codezequal<%>r   zequal?/recurzeqv-hash-coder   errorzerror-display-handlerzerror-escape-handlerzerror-print-context-lengthzerror-print-source-locationzerror-print-widthzerror-value->string-handlerr   zeval-jit-enabledzeval-syntaxr   zevt/czevt?r   zexact-ceilingzexact-floorzexact-integer?zexact-nonnegative-integer?zexact-positive-integer?zexact-roundzexact-truncater   zexecutable-yield-handlerexitzexit-handlerZexnzexn-continuation-markszexn-messagez	exn:breakzexn:break-continuationzexn:break:hang-upzexn:break:hang-up?zexn:break:terminatezexn:break:terminate?z
exn:break?zexn:failzexn:fail:contractzexn:fail:contract:arityzexn:fail:contract:arity?zexn:fail:contract:blamezexn:fail:contract:blame-objectzexn:fail:contract:blame?zexn:fail:contract:continuationzexn:fail:contract:continuation?z exn:fail:contract:divide-by-zeroz!exn:fail:contract:divide-by-zero?z#exn:fail:contract:non-fixnum-resultz$exn:fail:contract:non-fixnum-result?zexn:fail:contract:variablezexn:fail:contract:variable-idzexn:fail:contract:variable?zexn:fail:contract?zexn:fail:filesystemzexn:fail:filesystem:errnozexn:fail:filesystem:errno-errnozexn:fail:filesystem:errno?zexn:fail:filesystem:existszexn:fail:filesystem:exists?z"exn:fail:filesystem:missing-modulez'exn:fail:filesystem:missing-module-pathz#exn:fail:filesystem:missing-module?zexn:fail:filesystem:versionzexn:fail:filesystem:version?zexn:fail:filesystem?zexn:fail:networkzexn:fail:network:errnozexn:fail:network:errno-errnozexn:fail:network:errno?zexn:fail:network?zexn:fail:objectzexn:fail:object?zexn:fail:out-of-memoryzexn:fail:out-of-memory?zexn:fail:readzexn:fail:read-srclocszexn:fail:read:eofzexn:fail:read:eof?zexn:fail:read:non-charzexn:fail:read:non-char?zexn:fail:read?zexn:fail:syntaxzexn:fail:syntax-exprszexn:fail:syntax:missing-modulez#exn:fail:syntax:missing-module-pathzexn:fail:syntax:missing-module?zexn:fail:syntax:unboundzexn:fail:syntax:unbound?zexn:fail:syntax?zexn:fail:unsupportedzexn:fail:unsupported?zexn:fail:userzexn:fail:user?z	exn:fail?zexn:misc:match?zexn:missing-module-accessorzexn:missing-module?zexn:srclocs-accessorzexn:srclocs?zexn?r   expandzexpand-oncezexpand-syntaxzexpand-syntax-oncezexpand-syntax-to-top-formzexpand-to-top-formzexpand-user-pathzexplode-pathr   zexternalizable<%>zfailure-result/czfalse?zfield-namesZfifthzfile->byteszfile->bytes-lineszfile->linesz
file->listzfile->stringzfile->valuezfile-exists?zfile-name-from-pathzfile-or-directory-identityz file-or-directory-modify-secondszfile-or-directory-permissionszfile-positionzfile-position*z	file-sizezfile-stream-buffer-modezfile-stream-port?zfile-truncatezfilename-extensionzfilesystem-change-evtzfilesystem-change-evt-cancelzfilesystem-change-evt?zfilesystem-root-listr  z
filter-mapz
filter-notzfilter-read-input-portzfind-executable-pathz
find-fileszfind-library-collection-linkszfind-library-collection-pathszfind-relative-pathzfind-system-pathZfindfrw  z
first-or/czfixnum?zflat-contractzflat-contract-predicatezflat-contract-property?zflat-contract?zflat-named-contractZflattenzfloating-point-bytes->realzflonum?r   zflush-outputz
fold-filesZfoldlZfoldrr   r   formatZfourthZfprintfzfree-identifier=?zfree-label-identifier=?zfree-template-identifier=?zfree-transformer-identifier=?zfsemaphore-countzfsemaphore-postzfsemaphore-try-wait?zfsemaphore-waitzfsemaphore?Zfuturezfuture?zfutures-enabled?r   zgenerate-member-keyzgenerate-temporarieszgeneric-set?zgeneric?gensymzget-output-byteszget-output-stringzget-preferencezget/build-late-neg-projectionzget/build-val-first-projectiongetenvzglobal-port-print-handlerzgroup-byzgroup-execute-bitzgroup-read-bitzgroup-write-bitz	guard-evtz
handle-evtzhandle-evt?z
has-blame?zhas-contract?hashz
hash->listz
hash-clearzhash-clear!z	hash-copyzhash-copy-clearz
hash-countzhash-empty?zhash-eq?zhash-equal?z	hash-eqv?zhash-for-eachzhash-has-key?zhash-iterate-firstzhash-iterate-keyzhash-iterate-key+valuezhash-iterate-nextzhash-iterate-pairzhash-iterate-valuez	hash-keyszhash-mapzhash-placeholder?zhash-refz	hash-ref!zhash-removezhash-remove!zhash-setz	hash-set!z	hash-set*z
hash-set*!zhash-updatezhash-update!zhash-valuesz
hash-weak?zhash/czhash?ZhasheqZhasheqvzidentifier-bindingzidentifier-binding-symbolzidentifier-label-bindingz identifier-prune-lexical-contextz!identifier-prune-to-source-modulez)identifier-remove-from-definition-contextzidentifier-template-bindingzidentifier-transformer-bindingzidentifier?identityzif/cr   z
immutable?zimpersonate-boxzimpersonate-channelz!impersonate-continuation-mark-keyzimpersonate-hashzimpersonate-hash-setzimpersonate-procedurezimpersonate-procedure*zimpersonate-prompt-tagzimpersonate-structzimpersonate-vectorzimpersonator-contract?zimpersonator-ephemeronzimpersonator-of?z"impersonator-prop:application-markzimpersonator-prop:blamezimpersonator-prop:contractedz)impersonator-property-accessor-procedure?zimpersonator-property?zimpersonator?zimplementation?zimplementation?/czin-byteszin-bytes-lineszin-combinationszin-cyclezin-dictzin-dict-keyszin-dict-pairszin-dict-valueszin-directoryzin-hashzin-hash-keyszin-hash-pairszin-hash-valueszin-immutable-hashzin-immutable-hash-keyszin-immutable-hash-pairszin-immutable-hash-valueszin-immutable-setz
in-indexedzin-input-port-byteszin-input-port-charszin-lineszin-listzin-mlistzin-mutable-hashzin-mutable-hash-keyszin-mutable-hash-pairszin-mutable-hash-valueszin-mutable-setzin-naturalszin-parallelzin-permutationszin-portzin-producerzin-rangezin-sequenceszin-setzin-slicez	in-streamz	in-stringz	in-syntaxzin-valuezin-values*-sequencezin-values-sequencez	in-vectorzin-weak-hashzin-weak-hash-keyszin-weak-hash-pairszin-weak-hash-valueszin-weak-setr   zinexact-real?r   z	infinite?zinput-port-appendr   z
inspector?zinstanceof/cr   zinteger->integer-byteszinteger-bytes->integerz
integer-inzinteger-lengthzinteger-sqrtzinteger-sqrt/remainderr   zinterface->method-nameszinterface-extension?z
interface?z/internal-definition-context-binding-identifiersz%internal-definition-context-introducez internal-definition-context-sealzinternal-definition-context?zis-a?zis-a?/czkeyword->stringzkeyword-applyz	keyword<?zkeyword?zkeywords-matchzkill-threadlastz	last-pairr   r   zliberal-define-context?zlink-exists?r   zlist*zlist*ofzlist->byteszlist->mutable-setzlist->mutable-seteqzlist->mutable-seteqvz	list->setzlist->seteqzlist->seteqvr   r   zlist->weak-setzlist->weak-seteqzlist->weak-seteqvzlist-contract?zlist-prefix?r   zlist-setr   zlist-updatezlist/cr   zlisten-port-number?Zlistofr   zload-extensionzload-on-demand-enabledzload-relativezload-relative-extensionzload/cdzload/use-compiledzlocal-expandzlocal-expand/capture-liftszlocal-transformer-expandz&local-transformer-expand/capture-liftszlocale-string-encodingr   zlog-all-levelszlog-level-evtz
log-level?zlog-max-levelzlog-messagezlog-receiver?zlogger-namezlogger?r   zmake-arity-at-leastzmake-base-empty-namespacezmake-base-namespacez
make-byteszmake-channelzmake-chaperone-contractzmake-continuation-mark-keyzmake-continuation-prompt-tagzmake-contractzmake-custodianzmake-custodian-boxzmake-custom-hashzmake-custom-hash-typeszmake-custom-setzmake-custom-set-typesz	make-datez
make-date*zmake-derived-parameterzmake-directoryzmake-directory*zmake-do-sequencezmake-empty-namespacezmake-environment-variableszmake-ephemeronzmake-exnzmake-exn:breakzmake-exn:break:hang-upzmake-exn:break:terminatezmake-exn:failzmake-exn:fail:contractzmake-exn:fail:contract:arityzmake-exn:fail:contract:blamez#make-exn:fail:contract:continuationz%make-exn:fail:contract:divide-by-zeroz(make-exn:fail:contract:non-fixnum-resultzmake-exn:fail:contract:variablezmake-exn:fail:filesystemzmake-exn:fail:filesystem:errnozmake-exn:fail:filesystem:existsz'make-exn:fail:filesystem:missing-modulez make-exn:fail:filesystem:versionzmake-exn:fail:networkzmake-exn:fail:network:errnozmake-exn:fail:objectzmake-exn:fail:out-of-memoryzmake-exn:fail:readzmake-exn:fail:read:eofzmake-exn:fail:read:non-charzmake-exn:fail:syntaxz#make-exn:fail:syntax:missing-modulezmake-exn:fail:syntax:unboundzmake-exn:fail:unsupportedzmake-exn:fail:userzmake-file-or-directory-linkzmake-flat-contractzmake-fsemaphorezmake-genericz!make-handle-get-preference-lockedz	make-hashzmake-hash-placeholderzmake-hasheqzmake-hasheq-placeholderzmake-hasheqvzmake-hasheqv-placeholderzmake-immutable-custom-hashzmake-immutable-hashzmake-immutable-hasheqzmake-immutable-hasheqvzmake-impersonator-propertyzmake-input-portzmake-input-port/read-to-peekzmake-inspectorzmake-keyword-procedurezmake-known-char-range-listzmake-limited-input-port	make-listzmake-lock-file-namezmake-log-receiverzmake-loggerzmake-mixin-contractzmake-mutable-custom-setzmake-none/czmake-objectzmake-output-portzmake-parameterzmake-parent-directory*zmake-phantom-bytesz	make-pipezmake-pipe-with-specialszmake-placeholderzmake-plumberr   zmake-prefab-structzmake-primitive-classzmake-proj-contractzmake-pseudo-random-generatorzmake-reader-graphzmake-readtabler   zmake-rename-transformerzmake-resolved-module-pathzmake-security-guardzmake-semaphorezmake-set!-transformerzmake-shared-byteszmake-sibling-inspectorzmake-special-commentzmake-srclocr   zmake-struct-field-accessorzmake-struct-field-mutatorzmake-struct-typezmake-struct-type-propertyzmake-syntax-delta-introducerzmake-syntax-introducerzmake-temporary-filez'make-tentative-pretty-print-output-portzmake-thread-cellzmake-thread-groupr   zmake-weak-boxzmake-weak-custom-hashzmake-weak-custom-setzmake-weak-hashzmake-weak-hasheqzmake-weak-hasheqvzmake-will-executorr   zmatch-equality-testzmatches-arity-exactly?r   ZmcarZmcdrZmconsr   zmember-name-key-hash-codezmember-name-key=?zmember-name-key?Zmemfr   r   zmerge-inputzmethod-in-interface?r   zmixin-contractzmodule->exportszmodule->importszmodule->language-infozmodule->namespacez'module-compiled-cross-phase-persistent?zmodule-compiled-exportszmodule-compiled-importszmodule-compiled-language-infozmodule-compiled-namezmodule-compiled-submoduleszmodule-declared?zmodule-path-index-joinzmodule-path-index-resolvezmodule-path-index-splitzmodule-path-index-submodulezmodule-path-index?zmodule-path?zmodule-predefined?zmodule-provide-protected?r   zmpair?zmutable-setzmutable-seteqzmutable-seteqvzn->thznack-guard-evtz!namespace-anchor->empty-namespaceznamespace-anchor->namespaceznamespace-anchor?znamespace-attach-modulez#namespace-attach-module-declarationznamespace-base-phaseznamespace-mapped-symbolsznamespace-module-identifierznamespace-module-registryznamespace-requireznamespace-require/constantznamespace-require/copyz namespace-require/expansion-timeznamespace-set-variable-value!znamespace-symbol->identifierznamespace-syntax-introduceznamespace-undefine-variable!znamespace-unprotect-moduleznamespace-variable-valuez
namespace?znan?znatural-number/cnegater   z	never-evtu	   new-∀/cu	   new-∃/cr   Zninthznon-empty-listofznon-empty-string?znone/cznormal-case-pathznormalize-arityznormalize-pathznormalized-arity?r   znot/cnullr   r   r   r   zobject%zobject->vectorzobject-infozobject-interfacezobject-method-arity-includes?zobject-namezobject-or-false=?zobject=?zobject?r   zone-of/czopen-input-bytesr   zopen-input-output-filezopen-input-stringzopen-output-bytesr   zopen-output-nowherezopen-output-stringzor/czorder-of-magnitudeZormapzother-execute-bitzother-read-bitzother-write-bitr   r   zparameter-procedure=?zparameter/cz
parameter?zparameterization?zparse-command-line	partitionzpath->byteszpath->complete-pathzpath->directory-pathzpath->stringzpath-add-suffixzpath-convention-typezpath-element->byteszpath-element->stringzpath-element?zpath-for-some-system?zpath-list-string->path-listz	path-onlyzpath-replace-suffixzpath-string?zpath<?zpath?zpathlist-closurez	peek-bytezpeek-byte-or-specialz
peek-byteszpeek-bytes!zpeek-bytes!-evtzpeek-bytes-avail!zpeek-bytes-avail!*zpeek-bytes-avail!-evtzpeek-bytes-avail!/enable-breakzpeek-bytes-evtr   zpeek-char-or-specialzpeek-stringzpeek-string!zpeek-string!-evtzpeek-string-evtzpeeking-input-portpermutationszphantom-bytes?Zpizpi.fzpipe-content-lengthzplace-breakzplace-channelzplace-channel-getzplace-channel-putzplace-channel-put/getzplace-channel?zplace-dead-evtzplace-enabled?z
place-killzplace-location?zplace-message-allowed?zplace-sleepz
place-waitzplace?zplaceholder-getzplaceholder-set!zplaceholder?zplumber-add-flush!zplumber-flush-allzplumber-flush-handle-remove!zplumber-flush-handle?zplumber?zpoll-guard-evtzport->byteszport->bytes-lineszport->linesz
port->listzport->stringzport-closed-evtzport-closed?zport-commit-peekedzport-count-lines!zport-count-lines-enabledzport-counts-lines?zport-display-handlerzport-file-identityzport-file-unlockzport-next-locationzport-number?zport-print-handlerzport-progress-evtzport-provides-progress-evts?zport-read-handlerzport-try-file-lock?zport-write-handlerzport-writes-atomic?zport-writes-special?r   r   zpredicate/czprefab-key->struct-typezprefab-key?zprefab-struct-keyzpreferences-lock-file-modeZpregexpzpregexp?zpretty-displayzpretty-formatpretty-printz"pretty-print-.-symbol-without-barsz#pretty-print-abbreviate-read-macroszpretty-print-columnsz pretty-print-current-style-tablezpretty-print-depthzpretty-print-exact-as-decimalzpretty-print-extend-style-tablezpretty-print-handlerzpretty-print-newlinezpretty-print-post-print-hookzpretty-print-pre-print-hookzpretty-print-print-hookzpretty-print-print-linezpretty-print-remap-stylablezpretty-print-show-inexactnesszpretty-print-size-hookzpretty-print-style-table?zpretty-printingzpretty-writezprimitive-closure?zprimitive-result-arity
primitive?printzprint-as-expressionzprint-boolean-long-formz	print-boxzprint-graphzprint-hash-tablezprint-mpair-curly-braceszprint-pair-curly-braceszprint-reader-abbreviationszprint-structzprint-syntax-widthzprint-unreadablezprint-vector-lengthzprintable/czprintable<%>printfprintlnzprocedure->methodzprocedure-arityzprocedure-arity-includes/czprocedure-arity-includes?zprocedure-arity?zprocedure-closure-contents-eq?zprocedure-extract-targetzprocedure-keywordszprocedure-reduce-arityzprocedure-reduce-keyword-arityzprocedure-renamezprocedure-result-arityzprocedure-specializezprocedure-struct-type?r   processzprocess*zprocess*/portszprocess/portszprocessor-countzprogress-evt?zpromise-forced?zpromise-running?z	promise/czpromise/name?zpromise?zprop:arity-stringzprop:arrow-contractzprop:arrow-contract-get-infozprop:arrow-contract?z
prop:blamezprop:chaperone-contractzprop:checked-procedurezprop:contractzprop:contractedzprop:custom-print-quotablezprop:custom-writez	prop:dictzprop:dict/contractzprop:equal+hashzprop:evtzprop:exn:missing-modulezprop:exn:srclocszprop:expansion-contextszprop:flat-contractzprop:impersonator-ofzprop:input-portzprop:liberal-define-contextzprop:object-namezprop:opt-chaperone-contractz$prop:opt-chaperone-contract-get-testzprop:opt-chaperone-contract?zprop:orc-contractz"prop:orc-contract-get-subcontractszprop:orc-contract?zprop:output-portzprop:place-locationzprop:procedurezprop:recursive-contractzprop:recursive-contract-unrollzprop:recursive-contract?zprop:rename-transformerzprop:sequencezprop:set!-transformerzprop:streamzproper-subset?zpseudo-random-generator->vectorzpseudo-random-generator-vector?zpseudo-random-generator?zput-preferencesputenvr   zquotient/remainderzradians->degreesraisezraise-argument-errorzraise-arguments-errorzraise-arity-errorzraise-blame-errorzraise-contract-errorzraise-mismatch-errorzraise-not-cons-blame-errorzraise-range-errorzraise-result-errorzraise-syntax-errorzraise-type-errorzraise-user-errorrandomzrandom-seedranger   r   r   zread-accept-bar-quotezread-accept-boxzread-accept-compiledzread-accept-dotzread-accept-graphzread-accept-infix-dotzread-accept-langzread-accept-quasiquotezread-accept-reader	read-bytezread-byte-or-specialz
read-byteszread-bytes!zread-bytes!-evtzread-bytes-avail!zread-bytes-avail!*zread-bytes-avail!-evtzread-bytes-avail!/enable-breakzread-bytes-evtzread-bytes-linezread-bytes-line-evtzread-case-sensitivez	read-cdotr   zread-char-or-specialzread-curly-brace-as-parenzread-curly-brace-with-tagzread-decimal-as-inexactzread-eval-print-loopzread-language	read-linezread-line-evtzread-on-demand-sourcezread-square-bracket-as-parenzread-square-bracket-with-tagread-stringzread-string!zread-string!-evtzread-string-evtzread-syntaxzread-syntax/recursivezread/recursivezreadtable-mappingz
readtable?zreal->decimal-stringzreal->double-flonumzreal->floating-point-byteszreal->single-flonumzreal-inr   r   zreencode-input-portzreencode-output-portZregexpzregexp-matchzregexp-match*zregexp-match-evtzregexp-match-exact?zregexp-match-peekzregexp-match-peek-immediatezregexp-match-peek-positionszregexp-match-peek-positions*z%regexp-match-peek-positions-immediatez)regexp-match-peek-positions-immediate/endzregexp-match-peek-positions/endzregexp-match-positionszregexp-match-positions*zregexp-match-positions/endzregexp-match/endzregexp-match?zregexp-max-lookbehindregexp-quotezregexp-replacezregexp-replace*zregexp-replace-quotezregexp-replaceszregexp-splitzregexp-try-matchzregexp?zrelative-path?zrelocate-input-portzrelocate-output-portr   remfzremf*r  zremove*zremove-duplicatesZremqzremq*Zremvzremv*zrename-contractzrename-file-or-directoryzrename-transformer-targetzrename-transformer?zreplace-evtzreroot-pathzresolve-pathzresolved-module-path-namezresolved-module-path?rx  r   r   secondzseconds->datezsecurity-guard?zsemaphore-peek-evtzsemaphore-peek-evt?zsemaphore-postzsemaphore-try-wait?zsemaphore-waitzsemaphore-wait/enable-breakz
semaphore?zsequence->listzsequence->streamzsequence-add-betweenzsequence-andmapzsequence-appendzsequence-countzsequence-filterzsequence-foldzsequence-for-eachzsequence-generatezsequence-generate*zsequence-lengthzsequence-mapzsequence-ormapzsequence-refzsequence-tailz
sequence/cz	sequence?setzset!-transformer-procedurezset!-transformer?z	set->listzset->streamzset-addzset-add!zset-box!z	set-clearz
set-clear!zset-copyzset-copy-clearz	set-countz
set-empty?zset-eq?z
set-equal?zset-eqv?z	set-firstzset-for-eachzset-implements/czset-implements?zset-intersectzset-intersect!zset-mapz	set-mcar!z	set-mcdr!zset-member?zset-mutable?zset-phantom-bytes!zset-port-next-location!z
set-removezset-remove!zset-restzset-some-basic-contracts!zset-subtractzset-subtract!zset-symmetric-differencezset-symmetric-difference!z	set-unionz
set-union!z	set-weak?zset/czset=?zset?ZseteqZseteqvZseventhsgnzshared-byteszshell-executezshrink-path-wrtZshufflezsimple-form-pathzsimplify-pathr   zsingle-flonum?sinhZsixthzskip-projection-wrapper?sleepzsome-system-path->stringsortzspecial-comment-valuezspecial-comment?zspecial-filter-input-portzsplit-atzsplit-at-rightzsplit-common-prefixz
split-pathz	splitf-atzsplitf-at-rightZsqrr   Zsrcloczsrcloc->stringzsrcloc-columnzsrcloc-linezsrcloc-positionzsrcloc-sourcezsrcloc-spanzsrcloc?z
stop-afterzstop-beforezstream->listzstream-add-betweenzstream-andmapzstream-appendzstream-countzstream-empty?zstream-filterzstream-firstzstream-foldzstream-for-eachzstream-lengthz
stream-mapzstream-ormapz
stream-refzstream-restzstream-tailzstream/czstream?r   zstring->bytes/latin-1zstring->bytes/localezstring->bytes/utf-8zstring->immutable-stringzstring->keywordr   r   zstring->pathzstring->path-elementzstring->some-system-pathr   zstring->uninterned-symbolzstring->unreadable-symbolr   zstring-append*r   r   r   r   r   zstring-contains?r   zstring-copy!zstring-downcasez!string-environment-variable-name?r   zstring-foldcasezstring-joinzstring-len/cr   zstring-locale-ci<?zstring-locale-ci=?zstring-locale-ci>?zstring-locale-downcasezstring-locale-upcasezstring-locale<?zstring-locale=?zstring-locale>?zstring-no-nuls?zstring-normalize-nfczstring-normalize-nfdzstring-normalize-nfkczstring-normalize-nfkdzstring-normalize-spaceszstring-port?zstring-prefix?r   zstring-replacer   zstring-splitzstring-suffix?zstring-titlecasezstring-trimzstring-upcasezstring-utf-8-lengthr   r   r   r   r   r   zstruct->vectorzstruct-accessor-procedure?zstruct-constructor-procedure?zstruct-infozstruct-mutator-procedure?zstruct-predicate-procedure?zstruct-type-infozstruct-type-make-constructorzstruct-type-make-predicatez(struct-type-property-accessor-procedure?zstruct-type-property/czstruct-type-property?zstruct-type?zstruct:arity-at-leastzstruct:arrow-contract-infozstruct:datezstruct:date*z
struct:exnzstruct:exn:breakzstruct:exn:break:hang-upzstruct:exn:break:terminatezstruct:exn:failzstruct:exn:fail:contractzstruct:exn:fail:contract:arityzstruct:exn:fail:contract:blamez%struct:exn:fail:contract:continuationz'struct:exn:fail:contract:divide-by-zeroz*struct:exn:fail:contract:non-fixnum-resultz!struct:exn:fail:contract:variablezstruct:exn:fail:filesystemz struct:exn:fail:filesystem:errnoz!struct:exn:fail:filesystem:existsz)struct:exn:fail:filesystem:missing-modulez"struct:exn:fail:filesystem:versionzstruct:exn:fail:networkzstruct:exn:fail:network:errnozstruct:exn:fail:objectzstruct:exn:fail:out-of-memoryzstruct:exn:fail:readzstruct:exn:fail:read:eofzstruct:exn:fail:read:non-charzstruct:exn:fail:syntaxz%struct:exn:fail:syntax:missing-modulezstruct:exn:fail:syntax:unboundzstruct:exn:fail:unsupportedzstruct:exn:fail:userzstruct:srcloczstruct:wrapped-extra-arg-arrowzstruct?Zsub1Zsubbytesz	subclass?zsubclass?/c
subprocesszsubprocess-group-enabledzsubprocess-killzsubprocess-pidzsubprocess-statuszsubprocess-waitzsubprocess?zsubset?r   z	suggest/cr   zsymbol-interned?zsymbol-unreadable?zsymbol<?zsymbol=?r   symbolssynczsync/enable-breakzsync/timeoutzsync/timeout/enable-breakzsyntax->datumzsyntax->listz
syntax-armzsyntax-columnzsyntax-debug-infozsyntax-disarmzsyntax-ezsyntax-linezsyntax-local-bind-syntaxeszsyntax-local-certifierzsyntax-local-contextzsyntax-local-expand-expressionzsyntax-local-get-shadowerz"syntax-local-identifier-as-bindingzsyntax-local-introducezsyntax-local-lift-contextzsyntax-local-lift-expressionzsyntax-local-lift-modulez(syntax-local-lift-module-end-declarationzsyntax-local-lift-providezsyntax-local-lift-requirez#syntax-local-lift-values-expressionz$syntax-local-make-definition-contextz"syntax-local-make-delta-introducerz'syntax-local-module-defined-identifierszsyntax-local-module-exportsz(syntax-local-module-required-identifierszsyntax-local-namezsyntax-local-phase-levelzsyntax-local-submodulesz*syntax-local-transforming-module-provides?zsyntax-local-valuezsyntax-local-value/immediatezsyntax-original?zsyntax-positionzsyntax-propertyzsyntax-property-preserved?zsyntax-property-symbol-keyszsyntax-protectzsyntax-rearmzsyntax-recertifyzsyntax-shift-phase-levelzsyntax-sourcezsyntax-source-modulezsyntax-spanzsyntax-taintzsyntax-tainted?zsyntax-track-originz&syntax-transforming-module-expression?zsyntax-transforming-with-lifts?zsyntax-transforming?zsyntax/czsyntax?systemzsystem*zsystem*/exit-codezsystem-big-endian?zsystem-idle-evtzsystem-language+countryzsystem-library-subpathzsystem-path-convention-typezsystem-typezsystem/exit-codeztail-marks-match?r  ztake-common-prefixz
take-rightZtakefztakef-rightr   tanhztcp-abandon-portz
tcp-acceptztcp-accept-evtztcp-accept-ready?ztcp-accept/enable-breakztcp-addressesz	tcp-closeztcp-connectztcp-connect/enable-breakz
tcp-listenztcp-listener?z	tcp-port?z"tentative-pretty-print-port-cancelz$tentative-pretty-print-port-transferZtenthzterminal-port?zthe-unsupplied-argZthirdthreadzthread-cell-refzthread-cell-set!zthread-cell-values?zthread-cell?zthread-dead-evtzthread-dead?zthread-group?zthread-receivezthread-receive-evtzthread-resumezthread-resume-evtzthread-rewind-receivezthread-running?zthread-sendzthread-suspendzthread-suspend-evtzthread-try-receivezthread-waitzthread/suspend-to-killzthread?z
time-applyZtouchztransplant-input-portztransplant-output-porttruer   zudp-addressesz	udp-bind!z
udp-bound?z	udp-closezudp-connect!zudp-connected?zudp-multicast-interfacezudp-multicast-join-group!zudp-multicast-leave-group!zudp-multicast-loopback?zudp-multicast-set-interface!zudp-multicast-set-loopback!zudp-multicast-set-ttl!zudp-multicast-ttlzudp-open-socketzudp-receive!zudp-receive!*zudp-receive!-evtzudp-receive!/enable-breakzudp-receive-ready-evtzudp-sendz	udp-send*zudp-send-evtzudp-send-ready-evtzudp-send-tozudp-send-to*zudp-send-to-evtzudp-send-to/enable-breakzudp-send/enable-breakzudp?Zunboxzuncaught-exception-handlerzunit?zunspecified-domzunsupplied-arg?zuse-collection-link-pathszuse-compiled-file-pathszuse-user-specific-search-pathszuser-execute-bitzuser-read-bitzuser-write-bitzvalue-blamezvalue-contractr   z#variable-reference->empty-namespacez%variable-reference->module-base-phasez0variable-reference->module-declaration-inspectorz%variable-reference->module-path-indexz!variable-reference->module-sourcezvariable-reference->namespacezvariable-reference->phasez(variable-reference->resolved-module-pathzvariable-reference-constant?zvariable-reference?r   zvector->immutable-vectorr   zvector->pseudo-random-generatorz vector->pseudo-random-generator!zvector->valueszvector-appendzvector-argmaxzvector-argminzvector-copyzvector-copy!zvector-countzvector-dropzvector-drop-rightr   zvector-filterzvector-filter-notzvector-immutablezvector-immutable/czvector-immutableofr   z
vector-mapzvector-map!zvector-memberzvector-memqzvector-memvr   r   zvector-set*!zvector-set-performance-stats!zvector-split-atzvector-split-at-rightzvector-takezvector-take-rightzvector/cr   Zvectorofversionvoidzvoid?zweak-box-valuez	weak-box?zweak-setz
weak-seteqzweak-seteqvzwill-executezwill-executor?zwill-registerzwill-try-executezwith-input-from-bytesr   zwith-input-from-stringzwith-output-to-bytesr   with-output-to-stringzwould-be-futurezwrap-evtzwrapped-extra-arg-arrowz0wrapped-extra-arg-arrow-extra-neg-party-argumentz!wrapped-extra-arg-arrow-real-funczwrapped-extra-arg-arrow?zwritable<%>r   
write-bytezwrite-byteszwrite-bytes-availzwrite-bytes-avail*zwrite-bytes-avail-evtzwrite-bytes-avail/enable-breakr   zwrite-specialzwrite-special-avail*zwrite-special-evtzwrite-stringwrite-to-fileZwritelnxorr   z~.az~.sz~.vz~az~ez~rz~sz~vz[([{]z[)\]}]z()[\]{}",\'`;\sz!(?:\|[^|]*\||\\[\w\W]|[^|\\%s]+)+z(?:#e)?(?:#d)?(?:#e)?z(?:[defls][-+]?\d+)z(?:\d+(?:/\d+|\.\d*)?|\.\d+)z>(?:%s|(?:\d+#+(?:\.#*|/\d+#*)?|\.\d+#+|\d+(?:\.\d*#+|/\d+#+)))z	(?:%s%s?)z(?:(?:inf|nan)\.[0f])z(?:[-+]?%s|[-+]%s)z	(?:%s|%s)z(?!\Z)unquoted-datumz(?s)#;|#![ /]([^\\\n]|\\.)*z;[^\n\r\x85\u2028\u2029]*r  block-commentz(?u)\s+z(?i)%s[-+]?\d+(?=[%s])r   z9(?i)%s[-+]?(\d+(\.\d*)?|\.\d+)([deflst][-+]?\d+)?(?=[%s])z+(?i)%s[-+]?(%s([-+]%s?i)?|[-+]%s?i)(?=[%s])z/(?i)(#d)?(%s([-+]%s?i)?|[-+]%s?i|%s@%s)(?=[%s])z1(?i)(([-+]?%st[-+]?\d+)|[-+](inf|nan)\.t)(?=[%s])z(?iu)(#[ei])?#b%sz(?iu)(#[ei])?#o%sz(?iu)(#[ei])?#x%sz(?iu)(#d)?#i%sz#?")r   r   z#<<(.+)\n(^(?!\1$).*$\n)*^\1$z&#\\(u[\da-fA-F]{1,4}|U[\da-fA-F]{1,8})z(?is)#\\([0-7]{3}|[a-z]+|.)z(?s)#[pr]x#?"(\\?.)*?"z#(true|false|[tTfF])z(?u)#:%sz(#lang |#!)(\S+)z#readerquoted-datumz (?i)\.(?=[%s])|#c[is]|#['`]|#,@?z'|#[s&]|#hash(eqv?)?|#\d*(?=%s))r   r  z`|,@?z[|\\]datumzquote(?=[%s])r\  )r   quasiquoted-datumzquasiquote(?=[%s]))r   unquoted-listz(?u)z(?=[%s])r  r  datum*r   z,@?)r   r  zunquote(-splicing)?(?=[%s]))r   quasiquoted-listr  )r   quoted-listr  r  z[^#|]+|."zG(?s)\\([0-7]{1,3}|x[\da-fA-F]{1,2}|u[\da-fA-F]{1,4}|U[\da-fA-F]{1,8}|.)z[^\\"]+)r&  r  r   r   r  r  r  r  r  r  r  r   N)6r'  r(  r)  r*  r+  r,  r-  r.  	_keywords	_builtinsZ_opening_parenthesisZ_closing_parenthesisZ_delimitersZ_symbolZ_exact_decimal_prefixZ	_exponentZ_inexact_simple_no_hashesZ_inexact_simpleZ_inexact_normal_no_hashesZ_inexact_normalZ_inexact_specialZ_inexact_realZ_inexact_unsignedr   r   r   r2  r3  r   r5  r4  rp  rq  rr  r   DoubleZHeredocr7  ZRegexr   r8  r
   r  r   	Namespacer	   r6  r   r   r   r   r;  Escaper=  r  r  r  r  r     s   a     ,









D
	


r   c                   @   s   e Zd ZdZdZdgZg dZddgZej	ej
B ejB ZdZdZd	ejfd
ejfdejfdefdefdedfdedfdefeeddefde ejfeejfdefgdedfdedfdefgdedfgdZdS )r   zl
    For `newLISP. <http://www.newlisp.org/>`_ source code (version 10.3.0).

    .. versionadded:: 1.5
    ZNewLispZnewlisp)z*.lspz*.nlz*.kifztext/x-newlispzapplication/x-newlisp(  ^z--r7   rZ  !z!=?@r5   r8   &%r6   z++r9   <<r:   r;   r<   r=   >>r  r  $z$0z$1z$10z$11z$12z$13z$14z$15z$2z$3z$4z$5z$6z$7z$8z$9z$argsz$idxz$itz
$main-argsabortr>   r?   ZacoshaddZaddressZambr"   zappend-filerA   rB   argsz
array-listzarray?arrayrC   ZasinhrD   rG   Zatan2Zatanhzatom?z
base64-decz
base64-enczbayes-queryzbayes-trainr(   ZbetaZbetaibindZbinomialbitscallbackr$   catchZceilz
change-dircharZchoprR  Zcleanclosezcommand-eventr!   r   Zconstantzcontext?contextr  copyr   r  r  ZcpymemZcrc32z	crit-chi2zcrit-zzcurrent-liner  z	date-listz
date-parsez
date-valuer  debugr  zdef-newr   zdefine-macror   r  z
delete-urldeletedestroyZdetZdevice
differencez
directory?Z	directoryZdivzdo-untilzdo-whileZdoargsdolistZdostringdotimesZdotreedumpdupr  Zencryptz	ends-withenvZerfzerror-eventzeval-stringr   execexistsr  r   r  explodeextendZfactorZfftz	file-infozfile?r  zfind-allfindrw  Zflatzfloat?floatr   Zfltr  zfor-allrt  forkr  ZfvZgammaiZgammalnr   zget-charz	get-floatzget-intzget-longz
get-stringzget-urlzglobal?globalzif-notr   Zifftr{  r  rV  zinf?intr   ZintegerZ	intersectinvertZirrr9  zlambda-macrozlambda?r   z
last-errorr  zlegal?r   r%   ZletexZletnr   r   r   r  r   lookupz
lower-casezmacro?z	main-argsZMAINzmake-dirr   Zmatr  r   r   r   modr  mulZmultiplyzNaN?z
net-acceptz	net-closeznet-connectz	net-errorznet-evalznet-interfaceznet-ipvz
net-listenz	net-localz
net-lookupz
net-packetznet-peekznet-peerznet-pingznet-receive-fromznet-receive-udpznet-receivez
net-selectznet-send-toznet-send-udpznet-sendznet-serviceznet-sessionsr  znil?nilZnormalr   nowZnperZnpvr  r   r   r  r#   ZostypeZpackz
parse-dateparsepeekpipeZpmtz	pop-assocpopzpost-urlpowr  r  r  r  r  z	prob-chi2zprob-zr  zprompt-eventz
protected?pushzput-urlZpvzquote?r-   Zrandr  Z	randomizer   r   z	read-expr	read-filezread-keyr  z	read-utf8zreader-eventz	real-pathZreceivezref-allrefz
regex-compZregexz
remove-dirrename-filereplaceresetrx  r   rotater   savesearchZseedseekselectrN  Z	semaphorer  ZsequenceZseriesz
set-localezset-ref-allzset-refr  setfsetqr  ZsharesignalZsilentr   r  r  r~  r  sourceZspawnr   zstarts-withr   r   subZswapZsymr   r  r  z	sys-errorzsys-infor   r  Ztermzthrow-errorthrowztime-of-dayr  Ztimerz
title-caseztrace-highlighttraceZ	transposeZTreeZtrimztrue?r  Zunicodeunifyuniquerz  unpackZuntilz
upper-caseutf8Zutf8lenZuuidzwait-pidry  r  r   r   z
write-filez
write-linez
xfer-eventz	xml-errorz	xml-parsezxml-type-tagsr   z$([\w!$%&*+.,/<=>?@^~|-])+|(\[.*?\])+z#!(.*?)$r   z#.*$r  r  z\{bracestringz	\[text\]*	tagstringz('|:)\br  r  r  r  z\}r   z[^{}]+z(?s)(.*?)(\[/text\]))r&  rQ  rR  N)r'  r(  r)  r*  r+  r,  r-  r.  r  rg  rh  UNICODEri  r0  r1  r   rn  r2  r   r   r	   r   r
   r   r:  r6  r   r=  r  r  r  r  r   y  s<   >
'r   c                    @   s  e Zd ZdZdZg dZdgZddgZej	Z
dZed Zd	Zd
eef Zh dZh dZh dZh dZh dZh dZdd Zedgdefdejfdedfdejfde ejfde ejfde ejfdefdefde e j!fde e fde e j"fd e#fd!e ejfd"efd#ej$fd$e j%fd%e j&fd&e j'fd'e fd(efd)efd*efd+e ej(fd,e d, ej)j*feej)fd-edfd.e#dfd/e#d0fgd1efd2e ejfdefd3efd4efded0fgd5Z+d6S )7r   z
    An ELisp lexer, parsing a stream and outputting the tokens
    needed to highlight elisp code.

    .. versionadded:: 2.1
    Z	EmacsLisp)ZemacsZelispz
emacs-lispz*.elztext/x-elispzapplication/x-elispz\\.|[\w!$%&*+-/<=>?@^{}~|]r>  z(?=[ "()\]\'\n,;`])z((?:%s)(?:%s)*)>   zdefine-alternativeszignore-errorsZdefsetfrF  zcl-ecasezcl-functionz
cl-pushnewr  zuse-packagezcombine-after-change-callszwith-local-quitzdefine-skeletonz
cl-rotatefzcl-decfry  labelszcl-blockzcl-doZ	etypecasezdefine-generic-modezert-deftestzcl-eval-whenzdont-compilereturnzcl-do*zcl-multiple-value-bindz
do-symbolszwith-eval-after-loadzcl-symbol-macroletzwith-output-to-temp-bufferZshiftfzreturn-fromzoref-defaultZloopzwith-selected-windowzwith-tramp-file-propertyzdefine-obsolete-face-aliaszcl-etypecasezlexical-letZ	defstructzwith-temp-messagezcl-multiple-value-setqr  zdefine-minor-modezcl-psetqzwith-case-tablezcl-flet*Z
defgenericzwith-coding-priorityzdeclare-functionzwith-temp-bufferzload-time-valuezcl-macroletzdefine-modify-macroblockzcl-defmacrozdefine-obsolete-variable-aliasz
cl-deftypez	cl-labelsr"  Zprogvzwith-temp-filezdefvar-localzcl-typecasez
setq-localzcl-progvr;  zcl-load-time-valuezcl-defsubstr  zdefine-adviceZdeffaceZnoreturnzoset-defaultZdecfz	cl-returnzmultiple-value-setqzatomic-change-groupzwith-wrapper-hookZrotatefr)   zcl-casezcl-callfzwith-parsed-tramp-file-nameZdeclaimzdefine-derived-modeZecasez	cl-dolistZ	defcustomzwith-timeoutzcl-defstructz
cl-declaimzpcase-defmacrozdefine-global-minor-modeZpushnewz	cl-shiftfzdefine-obsolete-function-aliasrz  zcl-fletzmultiple-value-bindzdefine-setf-expanderzwith-category-tablezcl-loopzcl-return-fromzcl-ther  zsave-selected-windowzcl-do-all-symbolszlexical-let*zsave-window-excursionr'   z
with-slotszwith-tramp-progress-reporterz
cl-dotimeszcl-destructuring-bindzdo-all-symbolsz
pcase-let*zwith-demoted-errorszwith-selected-framer  zpcase-dolistz
cl-locallyz
cl-declarezwhile-no-inputdeclarezcl-do-symbolszcondition-case-unless-debugZincfr$   Z	defmethodZpsetfzcl-psetfzdefine-globalized-minor-modeZorefZdefthemezwith-file-modeszdestructuring-bindzdo*z
cl-tagbodyr  r9  zwith-syntax-tablez	pcase-letzcl-remfZdefgroupz	cl-callf2r   zcl-letf*Zlocallyzcl-letfzpcase-exhaustivezwith-tramp-connection-propertyzcl-defunZdeftypeZfletZ	defadvicez	eval-whenzwith-current-bufferzdefine-compiler-macror#  Zpsetqr  Zpcasezcl-define-compiler-macroZtypecasezcl-incfzdotimes-with-progress-reporterzdelay-mode-hooksztrack-mouseZdefsubstZrxzsave-match-dataZosetZmacroletzdef-edebug-speczwith-silent-modifications>   zsetq-defaultr!   rG  r&   Zprog1Zprog2zsave-restrictionzsave-excursionr   Zdefvarr|  r#   zcondition-casefunctionr"   interactiver%   Zdefconstr-   r  zunwind-protectzsave-current-bufferr  z
subr-arity>  zset-window-parameterzundo-boundaryzwindow-pixel-heightzw32-has-winsockzposix-string-matchzeval-regionzimage-flushzxw-color-valueseqZint86macroexpandZmd5zinotify-rm-watchr}  zcar-less-than-carzcoding-system-baseznext-windowz,internal-set-alternative-font-registry-alistzset-char-table-extra-slotZlogxorz
copy-alistzw32-frame-rectzmenu-bar-menu-at-x-yz
widget-putzdiscard-inputzset-message-beeprk   zgap-positionZ
makunboundzset-frame-sizezlax-plist-putzdecode-coding-stringzdecode-big5-charzset-match-datazw32-window-exists-pzbury-buffer-internalzstring-to-numberzcoding-system-aliaseszdraw-stringzcurrent-idle-timezbool-vector-pzhash-table-testr   zprocess-listzprocess-tty-namezstring-collate-equalpzcategory-tablezprevious-char-property-changeZoverlaypzerase-bufferzmake-category-setzfuncall-interactivelyzfont-xlfd-namezmemory-infozget-load-suffixeszwindow-minibuffer-pztime-less-pzfont-drive-otfzfontset-fontZpointzgfile-add-watchr=   eltZbobpzwindow-total-widthzframe-scroll-bar-widthzx-display-backing-storezerror-message-stringzset-file-timeszoverlay-recenterzccl-program-pz
region-endzwindow-valid-pzprocess-plistzresize-mini-window-internalzstring-equalzraise-framezbuffer-local-variableszw32notify-rm-watchzsymbol-nameZboundpzcolor-gray-pzcompute-motionZintegerpzscroll-other-windowZlogandzrecent-doskeysrl   Zprin1zprocess-nameztext-properties-atzchar-or-string-pr  z
window-endzoverlay-putzscroll-leftzmake-markerzset-window-marginszcase-table-pzw32-unload-winsockzcompare-window-configurationszgetenv-internalztranspose-regionszxw-display-color-pzx-open-connectionzgpm-mouse-stopzdowncase-regionzregion-beginningr  zcurrent-timezframe-text-lineszbase64-encode-stringzsuspicious-objectZrassocr   Zterprizwindow-edgeszdump-redisplay-historyztty-display-color-cellsr   ztranslate-region-internalzbuffer-chars-modified-tickzinsert-and-inheritzinsert-charzcharset-plistztext-char-descriptionzremove-list-of-text-propertieszfile-aclzdowncase-wordZsetcdrz	indent-toZfboundpzwindow-dedicated-pzset-buffer-auto-savedZcopysignz next-single-char-property-changezframe-or-buffer-changed-pr;   zframe-right-divider-widthz
next-framezcoding-system-plistzx-selection-exists-pr  rD   zfont-family-listzwindow-bufferZashzSnarf-documentationzput-unicode-property-internalzw32-get-keyboard-layoutzkeyboard-coding-systemzminibuffer-depthzmap-charset-charszdelete-all-overlayszwindow-use-timezcall-processzbuffer-modified-tickzget-unicode-property-internalzgnutls-available-pzvisited-file-modtimezx-menu-bar-open-internalz run-hook-with-args-until-successzindirect-variablezwindow-pixel-widthzset-output-flow-controlzprocess-sentinelzset-window-next-bufferszmake-terminal-framezchar-beforezdefine-charset-internalzprocess-exit-statusputZbufferpr>  zread-bufferzstring=zfont-match-pz	sleep-forzset-fringe-bitmap-facezset-process-bufferzwindow-live-pzuser-real-uidzstop-processz
set-bufferzset-defaultzmerge-face-attributezsubstring-no-propertieszrecursive-editzgnutls-error-stringz
lookup-keyzupcase-initialsz
define-keyz#w32-display-monitor-attributes-listzinternal-make-lisp-facez
gnutls-byezw32-get-clipboard-datazwindow-inside-edgeszlower-framezmake-char-tablezdefine-fringe-bitmapzopen-termscriptzcheck-coding-systems-regionzset-file-modeszexit-recursive-editzthis-command-keys-vectorzset-window-configurationz	open-fontztty-top-framezcoding-system-eol-typezbarf-if-buffer-read-onlyZldexpzexecute-kbd-macrozmodify-syntax-entryzmake-serial-processzframe-pixel-heightzimagemagick-typeszwindow-old-pointzoverlay-getzfont-otf-alternateszregister-ccl-programzclear-this-command-keyszread-variablezprofiler-cpu-logzfile-locked-pzwindow-new-totalzmove-to-columnzpos-visible-in-window-pzconstrain-to-fieldzwindow-hscrollzuser-login-namezre-search-backwardzdescribe-buffer-bindingszset-window-dedicated-pr  zwindow-pixel-leftzset-window-new-totalzfile-selinux-contextzcoordinates-in-window-pz run-hook-with-args-until-failurezget-unused-categoryzvisible-frame-listzinsert-bytezx-window-propertyzmsdos-mouse-disablez$previous-single-char-property-changezshow-face-resourcesz	make-charzsingle-key-descriptionzframe-text-heightzdelete-directory-internalr   zhandle-save-sessionzoverlay-endz set-window-redisplay-end-triggerzframe-fringe-widthzset-process-datagram-addresszother-window-for-scrollingzmove-overlayzset-coding-system-priorityzposix-search-backwardzwindow-vscrollr   zcurrent-case-tablezreplace-matchzbyte-to-positionzset-file-aclzuser-real-login-namezdefault-boundpzcategory-docstringzchar-syntaxzmsdos-memputzassoc-stringzinternal-copy-lisp-facezcompose-region-internalzx-create-framezmark-markerzinternal-show-cursor-pzyes-or-no-pzsymbol-valuezwindow-combination-limitzsymbol-plistzset-case-tableZfrexpzprevious-single-property-changezadd-face-text-propertyzfile-exists-pzwidget-applyZlogbZcharsetpzterminal-live-pz!minibuffer-contents-no-propertieszmarker-insertion-type	byteorderZmemqlzx-send-client-messagezx-display-planeszframe-total-lineszdirectory-files-and-attributesz%internal-event-symbol-parse-modifierszfontset-list-allzcopy-category-tablezcompare-stringsz	subr-nameZnreverseZgethashzposn-at-x-yzupcase-regionzfringe-bitmaps-at-poszcopy-markerzposix-looking-atzw32-set-keyboard-layoutzbase64-decode-stringzset-window-hscrollzprocess-connectionr   r5   r?   Zdelqzprofiler-memory-running-pzx-frame-geometryz	group-gidzmove-to-window-linezwindow-new-pixelzremove-text-propertiesz
scan-listsznumber-or-marker-pz#find-coding-systems-region-internalzcopy-keymapz$run-window-configuration-change-hookzget-file-bufferzset-process-sentinelzdelete-charzfile-symlink-pzprocess-statuszset-window-prev-buffersr   zuser-full-namezdbus-get-unique-namezset-syntax-tablezmodify-category-entryzline-pixel-heightzbase64-encode-regionZcommandpzimage-metadatazreset-this-command-lengthszre-search-forwardzprofiler-memory-stopzx-register-dnd-atomzencode-sjis-charzfont-get-system-fontzlocal-variable-if-set-pZfuncallzdeclare-equiv-charsetzposn-at-pointzwindow-framezmake-sparse-keymapzread-no-blanks-inputzdefine-coding-system-internalzoverlay-startz	field-endz
scan-sexpszprofiler-cpu-running-pzoverlay-bufferr   Znlistpzset-process-plistzmessage-boxz#set-keyboard-coding-system-internalzset-window-new-normalzmake-variable-frame-localzchar-table-rangezend-kbd-macrozbitmap-spec-pzcompleting-readzfile-name-directoryzforce-window-updatezfetch-bytecodezdirectory-file-nameZprocesspzaccess-filezw32-default-color-mapzcdr-safezcopy-hash-tablezgroup-real-gidzrestore-buffer-modified-pzcoding-system-putzgfile-rm-watchzcurrent-global-mapr   zfile-regular-pzframe-char-widthzprocess-filter-multibyte-pzx-own-selection-internalz&set-process-inherit-coding-system-flagzinternal-lisp-face-empty-pzmake-frame-visiblezsyntax-tablezwindow-mode-line-heightzlookup-imageZlognotzwrite-regionzequal-including-propertiesz#cygwin-convert-file-name-to-windowsZminibufferpZputhashzrecent-keysz!x-display-monitor-attributes-listzmsdos-memgetzcompare-buffer-substringszcurrent-minor-mode-mapszwindow-resize-applyzredirect-debugging-outputzframe-focuszcall-process-regionzprocess-attributesinsertr:   zselect-framezbacktrace-evalzsuspend-emacszrecent-auto-save-pzhash-table-rehash-sizezinvocation-directoryzmsdos-mouse-initzinteractive-formz	gc-statusr6   Zconspzinternal-default-process-filterzbuffer-has-markers-atzset-window-display-tableZmapatomsz
dump-emacszread-non-nil-coding-systemzstandard-case-tablezx-server-max-request-sizezprevious-framezbuffer-sizezw32-get-console-output-codepagezforward-commentz
char-afterzdestroy-fringe-bitmapzset-frame-widthzselected-framez
kill-emacszbuffer-listzlocale-inforB   zkeymap-promptZnumberpzwindow-right-divider-widthzdebug-timer-checkzget-text-propertyr9   z	window-atzset-window-combination-limitr   Znatnumpzx-synchronizezw32-battery-statuszcharset-afterzgnutls-errorpzset-process-query-on-exit-flagzterminal-parameterzdefault-valueZ	functionpzinterrupt-processzindirect-functionzset-marker-insertion-typezset-window-pointr   zprocess-contactzcharset-priority-listzkill-processzskip-syntax-backwardr2  zread-coding-systemzset-frame-heightzprevious-overlay-changezget-pos-propertyr   zwindow-top-linez
widget-getzcolor-distanceZbolpzbuffer-stringzmake-symbolic-linkzsecure-hashZisnanz
looking-atzwindow-listrC   zset-window-bufferr   zset-file-selinux-contextzchar-table-parentzsearch-forwardZclrhashzactive-minibuffer-windowzcontinue-processzfile-executable-pzset-category-tablezinsert-before-markerszw32-send-sys-commandZrecenterzdelete-overlayzmsdos-remember-default-colorszset-time-zone-rulezwindow-display-tablez	dump-facezstring-byteszskip-syntax-forwardzbuffer-substring-no-propertieszbuffer-swap-textzclear-font-cachezgnutls-bootzwindow-resize-apply-totalzstring-matchzx-display-mm-heightr>   z/=z	top-levelztool-bar-heightzgnutls-peer-statuszdump-colorsrA   zdefine-charset-aliaszfontset-listzprocess-send-eofzmsdos-mouse-enablezdefine-categoryzdefine-coding-system-aliasztty-no-underlinezselect-windowzx-display-mm-widthzdump-tool-bar-rowr   zencode-charzset-charset-plistzdetect-coding-regionzbuffer-namez	plist-putZupcasezw32-set-console-output-codepagezframe-terminalzposition-byteszx-display-save-underr  zdecode-sjis-charzdocumentation-propertyzclear-buffer-auto-save-failureread-from-stringzcurrent-bufferzunencodable-char-positionzfile-accessible-directory-pzfont-atzw32-get-valid-locale-idsz
frame-listzread-commandzframe-text-widthzlist-system-processeszsend-string-to-terminalzw32-get-default-locale-idmessagezframe-font-cachezcompose-string-internalzinsert-startup-screenzwindow-systemzx-disown-selection-internalzset-terminal-parameterzdelete-other-windows-internalz#gnutls-peer-status-warning-describez internal-get-lisp-face-attributez(tty-suppress-bold-inverse-default-colorszexpand-file-namezfind-charset-stringztype-ofzcolor-supported-pzintern-softzprocess-query-on-exit-flagzredraw-displayzcoding-system-pzset-standard-case-tableZ	mapconcatzset-mouse-pixel-positionzframe-root-windowz#set-terminal-coding-system-internalzx-server-vendorzstring-make-multibytezgnutls-deinitznew-fontsetzfile-writable-pztrace-redisplayzcall-interactivelyzframe-parameterszset-input-modezencode-big5-charzmsdos-long-file-nameszbool-vectorzfontset-infozmake-temp-namezself-insert-commandznext-overlay-changezglobal-key-bindingzw32-get-current-locale-idzset-process-coding-systemzbool-vector-subsetpzupcase-wordzcontrolling-tty-pzccl-execute-on-stringzset-buffer-multibytezx-get-resourcer   zwindow-configuration-framezoverlay-listszx-load-color-filezset-frame-positionzstring-greaterpzmake-network-processztty-display-color-pr   zx-select-fontzx-popup-menuzpoint-markerzw32-frame-menu-bar-sizez
get-bufferzfunction-equalzread-functionzxw-color-defined-pzstart-kbd-macrozsubstitute-command-keysz
float-timezinternal-show-cursorzdelete-framezuse-global-mapzset-visited-file-modtimezw32-short-file-namezsplit-window-internalz	font-infozdelete-window-internalzmodify-frame-parameterszcommand-remappingz!internal-default-process-sentinelzmouse-pixel-positionzprocess-commandzprocess-coding-systemZatomz"display-supports-face-attributes-pr  zrename-bufferztool-bar-pixel-widthz#internal-lisp-face-attribute-valueszw32-set-current-localezsymbol-functionzformat-mode-lineZfmakunboundzstandard-category-tablezcurrent-input-modezsystem-namezset-input-interrupt-modezterminal-listzbidi-resolved-levelszkeymap-parentzbuffer-live-pzwindow-left-columnzframe-char-heightr   zbool-vector-intersectionzevent-convert-listzw16-get-clipboard-datazframe-pointer-visible-pzsearch-backwardZdocumentationzquit-processzinternal-lisp-face-equal-pzinit-image-libraryz	run-hooksZarraypzstring-to-syntaxzkill-all-local-variableszminibuffer-windowzw32-register-hot-keyz.internal-set-lisp-face-attribute-from-resourcezminibuffer-contentszfile-name-all-completionsrG   zlax-plist-getzx-get-atom-namezthis-single-command-raw-keyszdefine-hash-table-testzrun-hook-with-argszfile-name-as-directoryzframe-parameterzdelete-fieldzcurrent-columnzsyntax-table-pzx-display-pixel-heightz!internal-set-font-selection-orderzx-selection-owner-pzfont-get-glyphszstring-as-multibyter  zw32-set-console-codepager  zx-uses-old-gtk-dialogzw32-get-codepage-charsetzencode-coding-stringzclear-face-cachezlocal-key-bindingzunicode-property-table-internalzfile-name-absolute-pzmap-char-tableZfceilingzput-text-propertyzgenerate-new-buffer-namezselected-windowzend-of-linezunify-charsetZlistpzset-cursor-sizezdefault-file-modesZsymbolpz
file-modesZwindowpr   zexternal-debugging-outputzx-delete-window-propertyzw16-selection-exists-pzset-process-window-sizezset-window-fringeszframe-visible-pzinteger-or-marker-pZ
characterpz!insert-before-markers-and-inheritzw32-get-valid-keyboard-layoutszencode-timezdefault-printer-namezapropos-internalzmatching-parenzmsdos-set-mouse-buttonszset-window-scroll-barszother-bufferzdbus--init-buszprocess-datagram-addresszforward-wordzsystem-move-file-to-trashzdelete-processzbool-vector-count-consecutivezvariable-binding-locuszencode-coding-regionzwindow-total-heightzbuffer-file-nameziso-charsetzget-buffer-windowzdecode-timeztry-completionzcurrent-window-configurationzfont-variation-glyphsznumber-to-stringzstring>zchar-table-pzcopy-sequencezx-change-window-propertyzwindow-new-normalzlibxml-parse-html-regionzaccessible-keymapszcheck-coding-systemZvconcatzscroll-downzface-attributes-as-vectorzhash-table-sizez"process-inherit-coding-system-flagznetwork-interface-listzgnutls-get-initstagezaccept-process-outputzwindow-list-1zmarker-bufferzfont-face-attributesz	match-endzx-display-listzx-parse-geometryzwindow-text-widthz	face-fontz
set-markerZfontpzmessage-or-boxzset-process-filter-multibytezwindow-absolute-pixel-edgesznext-property-changer7   zformat-time-stringzfile-attributesztty-typez"window-inside-absolute-pixel-edgeszdo-auto-saveconcatzwindow-normal-sizezcurrent-indentationzterminal-local-valuezwindow-header-line-heightzinternal-char-fontZrassqzmap-keymap-internalzmultibyte-string-pZvectorpfsetz(set-safe-terminal-coding-system-internalr   zredirect-frame-focuszzlib-available-pzprevious-property-changezdelete-and-extract-regionrE   z
resume-ttyZeqlzoverlays-inzw16-set-clipboard-datazrun-hook-wrappedzframe-bottom-divider-widthzfile-name-nondirectoryzbool-vector-set-differencezwindow-prev-siblingzload-averagezget-screen-colorzterminal-coding-systemz*internal-set-alternative-font-family-alistzstring-to-multibytez	scroll-upzset-minibuffer-windowzset-default-file-modeszframe-scroll-bar-heightzcapitalize-wordzmouse-positionzset-char-table-parentzbyte-to-stringzset-window-vscrollzsafe-lengthzframe-border-widthz
x-hide-tipzw32-get-console-codepagezwindow-parameterszwindow-startzupcase-initials-regionzwhere-is-internalzbuffer-modified-pz
char-equalZasetzmake-frame-invisiblezfield-string-no-propertiesZframepzlookup-image-mapZkeymappzcategory-table-pzthis-command-keyszw32-unregister-hot-keyztime-subtractziconify-framez1+zwindow-parentzstring-widthr  zplay-sound-internalzbackward-prefix-charsztrace-to-stderrzprocess-send-regionzsignal-processzprevious-windowzdescribe-vectorzwindow-scroll-bar-widthinternzmsdos-set-keyboardzstring-make-unibytezw32-set-process-priorityz current-bidi-paragraph-directionZremhashzadd-name-to-filez internal-set-lisp-face-attributezdetect-coding-stringr\   r   z#bidi-find-overridden-directionalityzmake-indirect-bufferzpoint-max-markerzoptimize-char-tablez	font-speczfont-getzset-buffer-modified-pzinternal-describe-syntax-valuer  zlast-nonminibuffer-framezbool-vector-exclusive-orzset-buffer-major-modezset-mouse-positionzunibyte-stringzget-processzwindow-text-heightzw32-reconstruct-hot-keyzdbus-message-internalzinvisible-pzregister-code-conversion-mapzparse-partial-sexpzhash-table-weaknessz	find-fontzbackward-charzfile-readable-pzhash-table-rehash-thresholdzchar-table-subtypezvertical-motionzstart-processzset-screen-colorzw32-get-valid-codepageszterminal-nameZautoloadzfile-name-completionzmake-variable-buffer-localzstandard-syntax-tablezunlock-bufferz
char-widthzplist-memberZpurecopyzget-char-property-and-overlayzfind-charset-regionzunibyte-char-to-multibytezscroll-rightzquery-fontsetztext-property-not-allzgnutls-error-fatalpzlock-bufferzinternal-face-x-get-resourcezforward-pointZ	backtraceZfroundzmake-local-variablezbuffer-substringzfile-attributes-lesspzx-backspace-delete-keys-pzwindow-scroll-bar-heightzget-buffer-processzbacktrace-debugzzlib-decompress-regionzwindow-next-siblingzwindow-marginsz
image-sizer  zx-server-versionz
match-datazmsdos-downcase-filenamezprocess-send-stringzsubst-char-in-regionzdefault-toplevel-valuezprofiler-cpu-startZstringpzbacktrace--localszterminal-parameterszset-frame-selected-windowz
read-eventzstring-as-unibytezset-charset-priorityzchar-category-setzfile-newer-than-file-pzmax-charzprocess-typezwindow-scroll-barsr<   zcopy-syntax-tablezx-focus-framezdelete-terminal	ftruncatezface-attribute-relative-pzx-display-screenszprofiler-memory-logZffloorzwindow-body-heightzframe-first-windowzinternal-lisp-face-pzread-key-sequencezset-char-table-ranger8   zset-input-meta-modez	point-minZsubrpzinotify-add-watchZeobpzoverlays-atzframe-pixel-widthzccl-executezforward-linezinsert-buffer-substringzgpm-mouse-startzminibuffer-prompt-endzx-list-fontszkill-local-variablezinvocation-namezset-default-toplevel-valuezfield-stringzbool-vector-unionr   zmake-keymapzinternal--track-mousezvector-or-char-table-pzhash-table-pznext-single-property-changezx-display-pixel-widthzchar-charsetzprocess-markZnconczget-file-charzbacktrace-framezuse-local-mapzhandle-switch-framez
map-keymapr   Zequalzset-keymap-parentzspecial-variable-pZsxhashZlshzinternal-merge-in-global-facezprefix-numeric-valuezpreceding-charr   znetwork-interface-infozx-file-dialogzall-completionszstring-to-charzserial-process-configurezkey-descriptionr   zw32-long-file-namezset-window-startzclear-stringztext-property-anyzset-text-propertieszstring-collate-lesspzwindow-inside-pixel-edgeszdump-glyph-rowzsort-charsetsZnthcdrzframe-selected-windowzw32-selection-exists-pr  zline-beginning-positionzcoding-system-priority-listzprocess-running-child-pzlibxml-parse-xml-regionzw32-shell-executezinput-pending-pzget-char-propertyzkill-bufferzbuffer-base-bufferZeolpzfind-operation-coding-systemz
split-charzchar-table-extra-slotZ	fillarrayzcurrent-time-stringzwindow-redisplay-end-triggerzminibuffer-completion-contentszcurrent-time-zonezgap-sizeZprinczset-quit-charZimagepzwindow-line-heightzforce-mode-line-updatezdirectory-fileszcategory-set-mnemonicszmarker-positionzframe-total-colszwindow-next-bufferszclear-charset-mapszforward-charzcall-last-kbd-macrozframe-text-colsznext-char-property-changezprin1-to-stringzbool-vector-notzstring-to-unibyteZfloatpZ
propertizezmake-hash-tablezw32notify-add-watchzget-unused-iso-final-charz	byte-codezrecursion-depthz.frame-can-run-window-configuration-change-hookzset-fontset-fontz
x-show-tipzthis-single-command-keyszchar-to-stringzbuffer-local-valuez	emacs-pidzmemory-use-countszx-wm-set-size-hintZdowncaser  zskip-chars-backwardzget-buffer-createZkeywordpzprofiler-cpu-stopzprofiler-memory-startzwaiting-for-user-input-pzstring<zwindow-fringeszbool-vector-count-populationzx-display-color-cellszminor-mode-key-bindingzdecode-coding-regionzautoload-do-loadZdingZmarkerpZmaphashzposix-search-forwardzmake-overlayzx-display-visual-classZlogiorztest-completionzset-network-process-optionzpoint-min-markerzfile-directory-pzfollowing-charzwindow-pointz
list-fontszclear-image-cachezmatch-beginningr,  zadd-text-propertieszmake-bool-vectorZdaemonpZmapczsystem-groupszfont-putr   zbuffer-enable-undozbyte-code-function-pzset-process-filterZmapcarzfont-get-system-normal-fontzwindow-prev-bufferszminibuffer-promptzabort-recursive-editznarrow-to-regionzformat-network-addresszx-get-selection-internalzread-from-minibufferzbase64-decode-regionzunhandled-file-name-directoryzframe-live-pzverify-visited-file-modtimezw32-registered-hot-keyszframe-face-alistzcombine-after-change-executezgarbage-collectz
process-idzcurrent-messagezlocate-file-internalzmultibyte-char-to-unibytez	unix-synczuser-uidzmake-category-tableZuninternzrun-window-scroll-functionszcar-safezfind-composition-internalzdump-glyph-matrixr  zprocess-filterznext-read-file-uses-dialog-pzoverlay-propertieszdecode-charzfind-file-name-handlerzread-key-sequence-vectorzline-end-positionzwindow-left-childzchar-resolve-modifierszset-terminal-local-valuezstore-kbd-macro-eventzcurrent-active-mapszx-display-grayscale-pr   ztool-bar-get-system-stylezwindow-text-pixel-sizeZsetplistzmake-byte-codezw32-set-clipboard-datazfont-shape-gstringzsubstitute-in-file-namez	point-maxzcharset-id-internalzget-bytezmemory-limitzx-family-fontszskip-chars-forward
capitalizezwindow-pixel-edgeszcapitalize-regionzkey-bindingzmake-directory-internalzx-popup-dialogz1-z	plist-getz
query-fontzeval-bufferz
close-fontzread-char-exclusivezcurrent-local-mapZwidenzstring-lesspzcommand-error-default-functionzset-window-new-pixelarefzlocal-variable-pzopen-dribble-fileZ	redisplayzmake-symbolztime-addr   zwindow-bottom-divider-widthzwindow-pixel-topzhash-table-countzimage-mask-pZ	sequencepzmsdos-mouse-pzfile-system-infozprocess-bufferzx-close-connectionzwindow-parameterzmove-point-visuallyzcancel-kbd-macro-eventszminibuffer-selected-windowrH  zinternal-complete-bufferzget-internal-run-timezwindow-configuration-pzdelete-regionzsystem-userszinsert-file-contentszinternal-make-var-non-specialzcomposition-get-gstringzw32-toggle-lock-keyzwindow-top-childr   zmenu-or-popup-active-pzfield-beginningzw32-get-locale-infozdefine-prefix-commandznewline-cache-checkzdaemon-initializedZsetcarz%cygwin-convert-file-name-from-windowszw32-define-rgb-colorr  z	goto-charzdump-frame-glyph-matrixzsuspend-ttyzwindow-body-widthzredraw-framezbeginning-of-line>	   ZdefaliasZdefvaraliaszwith-electric-helpZfeaturepr  zwith-no-warningsrK  zdefine-widgetr  >   z&keyz	&optionalz&bodyz&allow-other-keysz&wholez&restz&environmentz&aux>   rH  z
user-errorr  z	cl-assertwarnzcl-check-typec                 c   s   dg}t | ||D ]\}}}|tju r|tjv rB|tj|fV  q|tjv rZ|t|fV  q|tj	v rt|tj
|fV  q|tjv r|tj|fV  q|tjv r|tj|fV  q|tjv r|tj|fV  q|||fV  qd S rO  )r   rP  r   r:  r   rF  r<  rG  r
   error_keywords	Exceptionbuiltin_function_highlightedr;  rH  rI  PseudorS  r  r  r  rP    s,    






z%EmacsLispLexer.get_tokens_unprocessedrY  r  r   r  r   z\?([^\\]|\\.)rZ  r[  r  r\  r]  r^  r_  z\[|\]ra  z#\^\^?rb  z#[bB][+-]?[01]+(/[01]+)?z#[oO][+-]?[0-7]+(/[0-7]+)?z&#[xX][+-]?[0-9a-fA-F]+(/[0-9a-fA-F]+)?z&#\d+r[+-]?[0-9a-zA-Z]+(/[0-9a-zA-Z]+)?rc  rd  z(,@|,|\.|:)re  rf  r`  r#  r$  r   z[^"\\`]+z`%s\'z\\.z\\\n)r&  rY  r   N),r'  r(  r)  r*  r+  r,  r-  r.  r  rh  ri  rj  rk  rl  rm  rH  rG  rF  rl  rI  rj  rP  r   r   r   r2  r   r7  r   r;  r6  r	   r   r5  r4  r   r<  rp  rq  rr  r8  r:  rs  r=  r  r  r  r  r     s   1   =
Cr   c                   @   sD  e Zd ZdZdZdgZdgZddgZdZdZ	d	Z
d
Zdd eD Zedd e
D  edd e	D  dZde Zde Zde Zdedfdejfdejfdefgdejfdejfdefdefdefdefdefd ejfd!ejfded"feejfd#e j!feefd$efgd%Z"d&d' Z#d(d) Z$d*d+ Z%d,d- Z&d.d/ Z'd0d1 Z(d2S )3r   z^
    Lexer for `Shen <http://shenlanguage.org/>`_ source code.

    .. versionadded:: 2.1
    ZShenZshenz*.shenztext/x-shenzapplication/x-shen)
datatyper   r  Z	defprologZdefccZsynonymsrX  packagetyperY  )r   r}  r%   r   Zcasesr!   r^  r  ZfreezerX  r   r  Zprotectr#   r"   r   r)   outputzprolog?z
trap-errorr  r   z/.r  z@pz@sz@v)r  r;   r5   r6   r7   r8   r9   r<   r=   r:   z	<-addressz<-vectorr  Z	absvectorz
absvector?z	address->ZadjoinrA   ZarityrD   r  rH   zbound?ZcallZcdr  Zcnr  rc  r   r  Zcutr   r!  zelement?r  zenable-type-theoryzerror-to-stringr   zeval-klZ	exceptionr)  ZexternalZfailzfail-ifr  findallZfixZfstZfwhenr  zget-timer  ZhdZhdstrZhdvheadZ	identicalimplementationr  r   zinclude-all-butZ
inferencesinputzinput+r   re  intersectionr  killZlanguager   limitZlinereadZloadedmacror\  r   ZmapcanZmaxinferencesmodez	n->stringnlr  r  r   Zoccurrenceszoccurs-checkr  osoutZportZportersposZprZprecludezpreclude-all-butr  Zprofilezprofile-resultsZpsquitr   zread+r  r<  zread-file-as-bytelistzread-file-as-stringra  releaser  rV  r   runrB  r  zsimple-errorZsndZ
specialiseZspystepZstinputZstoutputstrz	string->nr   r   substr   ZsystemftailZtcztc?ZthawZtlZtlstrZtlvZtrackztuple?Z
undefmacrorM  zunify!unionZ	unprofileZunspecialiseZuntrackz	variable?r   zvector->r   Zverifiedr  ri  ry  r  r  zy-or-n?)whereskipr  r  r
  z<e>z<!>c                 C   s   i | ]
}|t qS r  r
   r  sr  r  r  
<dictcomp>  r  zShenLexer.<dictcomp>c                 c   s   | ]}|t jfV  qd S N)r   r;  r  r  r  r  r    r  zShenLexer.<genexpr>c                 c   s   | ]}|t fV  qd S r  r  r  r  r  r  r    r  z[\w!$%*+,<=>?/.\'@&#:-]z%s+z[a-z!$%%*+,<=>?/.\'@&#_-]%s*z[A-Z]%s*r  r   z
c#\d{1,3};z~[ARS%]z(?s).z(?s)\\\*.*?\*\\z\\\\.*r  z_{5,}z={5,}z(;|:=|\||--?>|<--?)z(:-|:|\{|\})z[+-]*\d*\.\d+(e[+-]?\d+)?z[+-]*\d+r   z(true|false|<>|\[\])z(\[|\]|\(|\)))r   r&  c                 C   s$   t | |}| |}| |}|S r  )r   rP  _process_symbols_process_declarations)rN  rT  r=  r  r  r  rP    s    

z ShenLexer.get_tokens_unprocessedc                 C   s   |t tjtjfvS r  )r   r   r2  r3  )rN  rW  r  r  r  	_relevant  s    zShenLexer._relevantc                 c   sj   d}|D ]\\}}}|||fV  |  |r|rT|tkrT|| jv rT|}| ||E d H  |dkob|tk}qd S NF()r  r
   rC  _process_declarationr   )rN  r=  opening_parenrV  rW  rX  declarationr  r  r  r    s    
zShenLexer._process_declarationsc                 c   sp   d}|D ]b\}}}|r6|t tjfv r6| j|tj}n|t krN|| jv rNtj}|dko\|tk}|||fV  qd S r  )	r   r   r:  MAPPINGSr}  r<  BUILTINS_ANYWHEREr;  r   )rN  r=  r  rV  rW  rX  r  r  r  r    s    zShenLexer._process_symbolsc                 c   s  |D ]$\}}}|  |r q*|||fV  q|dkrd}|tkrDtjn|}|||fV  |D ]B\}}}|rt|tkrttj}|||fV  |  |rX|tko|dk}qXn|dkr|tkrtjn|}|||fV  n|dkrp|tkrtjn|}|||fV  |D ](\}}}|  |r q|||fV  q|dkrb|tkrb|t|fV  | |D ]\}}}|||fV  qFn|||fV  n |tkrtjn|}|||fV  d S )Nrn  FrZ  ro  r   {)	r  r   r
   rQ  r   r  r<  r   _process_signature)rN  r  r=  rV  rW  rX  Zprev_was_colonr  r  r  r    s@    


zShenLexer._process_declarationc                 c   sd   |D ]Z\}}}|t kr0|dkr0|t|fV   d S |t tjfv rR| rLtjntj}|||fV  qd S )N})r   r   r   r<  istitler:  r
   rQ  )rN  r=  rV  rW  rX  r  r  r  r  	  s    zShenLexer._process_signatureN))r'  r(  r)  r*  r+  r,  r-  r.  rC  r@  ZBUILTINSr  r  updateZvalid_symbol_charsr1  Zsymbol_nameZvariabler   r  ZInterpolr   r3  r2  r   r   r   r   r4  r5  r   r:  r
   rm  r=  rP  r  r  r  r  r  r  r  r  r  r     sV   

&r   c                   @   s   e Zd ZdZdZdgZdgZg ZdZdZ	dZ
dd	ejfd
efdejfdejfdefde
 ejfdejfdejfdefeeddefde
 ejfde
 ejfee	dddejfde
 ejfe
ejfdefdefgiZdS )r   za
    A CPSA lexer based on the CPSA language as of version 2.2.12

    .. versionadded:: 2.1
    ZCPSAZcpsaz*.cpsa)Zheraldvarsr  r   ZdefprotocolZdefroleZdefskeletonZ	defstrandZdeflistenerznon-origz	uniq-origzpen-non-origZprecedesrL  r  Zrecvr+  rT  ZskeyZakeydataZmesg)	catencr  ZprivkZpubkZinvkZltkgenr   r   r&  r   r  r  r  r  r  r	  r
  r  rS  r  r  r  r  r  r  r  N)r'  r(  r)  r*  r+  r,  r-  r.  r  r  r1  r   r2  r   r   r4  r5  r   r6  r7  r   r8  r	   r   r
   r:  r;  r<  r   r=  r  r  r  r  r   %	  s8   r   c                   @   s  e Zd ZdZdZdgZdgZg ZdZdZ	dZ
dZd	Zd
ZdZdZdZdZdedfdedfde ejfde ejfde ejfde ejfde ejfde ejfde ejfde ejfde ejfde ejfde d e d e d  e d! ejfeed"d#efeed"d#ejfed$eejfgd%e ejfd&ejfd'efee	d"d#efeed"d#ejfed$eejfgd(ejfd)e fd*e!j"fd+e!j#fd,e!fd-efd.ej$feed"d#efeed"d#ejfd/efg
ee
d"d0d1edfed2gd3Z%d4S )5r   a+  An xtlang lexer for the `Extempore programming environment
    <http://extempore.moso.com.au>`_.

    This is a mixture of Scheme and xtlang, really. Keyword lists are
    taken from the Extempore Emacs mode
    (https://github.com/extemporelang/extempore-emacs-mode)

    .. versionadded:: 2.2
    xtlangZ	extemporez*.xtm)r   r   r   r    r!   r"   r#   r%   r(   r+   r   r   )
r)   r*   r.   r/   r0   r   r$   r&   r'   r-   )	z	bind-funczbind-valzbind-libz	bind-typez
bind-aliasz	bind-polyz
bind-dylibzbind-lib-funczbind-lib-val)ZletzmemzonecastZconvertr#  Zdoloop)Jr5   r6   r7   r8   r9   r:   r;   r<   r=   r  r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r   r  r5  )rW   rX   rY   rZ   r[   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )oZtoStringzafill!zpfill!ztfill!Ztbindzvfill!zarray-fill!zpointer-fill!ztuple-fill!r   Zfreer  tupler   r  zcset!Zcrefr  borz	ang-namesr  r  r4  r  Zsprintfr  r5  zpset!zpref-ptrzvset!Zvrefzaset!rh  zaref-ptrztset!Ztrefztref-ptrZsallocZhallocZzallocZallocZscheduler   r   r   r   r   rC   r?   rG   r   r   r   rl   r   r   Zllvm_printfZ	push_zoneZpop_zoner  r  Zllvm_sprintfz
make-arrayz
array-set!z	array-refzarray-ref-ptrzpointer-set!zpointer-refzpointer-ref-ptrzstack-allocz
heap-allocz
zone-allocz
make-tuplez
tuple-set!z	tuple-refztuple-ref-ptrzclosure-set!zclosure-refZprefZpdrefZ	impc_nullZbitcastr  Zifretzret->zclrun->zmake-env-zonezmake-envz<>ZdtofZftodZi1tofZi1todZi1toi8Zi1toi32Zi1toi64Zi8tofZi8todZi8toi1Zi8toi32Zi8toi64Zi32tofZi32todZi32toi1Zi32toi8Zi32toi64Zi64tofZi64todZi64toi1Zi64toi8Zi64toi32r   z[\w.!-]+z[]{}[\w<>,*/|!-]+r#  r  r$  r   z(?<=bind-func\s)z(?<=bind-val\s)z(?<=bind-type\s)z(?<=bind-alias\s)z(?<=bind-poly\s)z(?<=bind-lib\s)z(?<=bind-dylib\s)z(?<=bind-lib-func\s)z(?<=bind-lib-val\s)rZ  z(<z>|\|z\||/z/|z\*)\**r  )r  commonr  r	  r  r   r  r  r  z(#b|#o|#x)[\d.]+r  r
  r  rS  r  r   )r  r   r  r&  N)&r'  r(  r)  r*  r+  r,  r-  r.  Zcommon_keywordsZscheme_keywordsZxtlang_bind_keywordsZxtlang_keywordsZcommon_functionsZscheme_functionsZxtlang_functionsZvalid_scheme_nameZvalid_xtlang_nameZvalid_xtlang_typer   r   r<  r
   rQ  r   r   r:  r   r6  r7  r	   r   r2  r   r   r4  r5  r8  r=  r  r  r  r  r   s	  s   	##r   c                   @   s   e Zd ZdZdZddgZdgZdZdZdZ	d	d
e
jfdefdejfdejfdefde	 ejfeeddefeeddejfdejfe	ejfdefdefdefdefgiZdS )r   zA lexer for the `Fennel programming language <https://fennel-lang.org>`_.

    Fennel compiles to Lua, so all the Lua builtins are recognized as well
    as the special forms that are particular to the Fennel compiler.

    .. versionadded:: 2.3
    ZFennelZfennelZfnlz*.fnl)Bzrequire-macroszeval-compilerdocZluaZhashfnry  rH  zimport-macrosz	pick-argszpick-valuesr\  Z
macrodebugr)   r   r   ry  Zeachrt  r  r   r  partialr  r  r.  varr  r%   Ztsetzset-forcibly!Zdotor  r#   r"   r  r  r4  r   znot=.r6   z..r	  r7   r5   r  r8   r<   r9   r=   r:   r;   r  rZ  ru  rv  z-?>z-?>>rshiftlshiftr  ZbandZbnotZbxorz	with-openr   )'Z_GZ_VERSIONargassertZbit32Zcollectgarbage	coroutiner  Zdofiler  ZgetfenvZgetmetatableioZipairsr   ZloadfileZ
loadstringZmathnextr|  ro  ZpairsZpcallr  ZrawequalZrawgetZrawlenZrawsetr  rE  ZsetfenvZsetmetatabler   tableZtonumberZtostringrp  rO  Zxpcallz0[a-zA-Z_!$%&*+/:<=>?^~|-][\w!$%&*+/:<=>?^~|\.-]*r&  r   r  r  r  z"(\\\\|\\"|\\|[^"\\])*"rZ  r  r  z\.\.\.r  r  r  #N)r'  r(  r)  r*  r+  r,  r-  rG  r0  r1  r   r2  r   r   r4  r5  r   r6  r   r
   r   r;  r:  r   r=  r  r  r  r  r   ?
  s0   r   ) r*  r  Zpygments.lexerr   r   r   r   r   Zpygments.tokenr   r   r	   r
   r   r   r   r   r   r   Zpygments.lexers.pythonr   __all__r   r   r   r   r   r   r   r   r   r   r  r  r  r  <module>   s@   
0  3q       5      
 %N M