
    MhJL                     l    d Z ddl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 dgZ G d de          ZdS )z
    pygments.lexers.factor
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for the Factor language.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupsdefaultwords)TextCommentKeywordNameStringNumber
WhitespacePunctuationFactorLexerc                   x   e Zd ZdZdZdZdgZdgZdgZdZ	 e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Z e
dd	
          Zdej        f ed          gg defd eeeej                  fd eeeej        eej                  fd eeeej        eej                  fd eeeej                  fd eeeej        eej                  fd eej        e          dfd eee          fd  eej        e          d!fd" eej        eej                  fd# eej        eej        eej                  fd$ eej        eej        e          d%fd& eej        eej        eej        ee eej        	  	        fd' eej        eej        eej                  fd( eej        eej                  fd) eeeej        ee eej                  d*fd+ eeeej                  d*fd, eeeej                  fd- eeeej        ee eej                  fd eeeej        eej                  fd. eeeej        eej                  fd/ eeeej                  fd0 eeeej                  fd1ed2fd3 eeeej                  fd4 eee          d%fd5 eee          fd6 eee          fd7 eeeej                  fd8 eej        ee!eej        ee ee!e e          fd9 eej        ee!eej        eej        ee ee!e e          fd: eej        e          fd;e"fd<e"fd= ee"ee"          fd> ee"j#        ee"j#        e          fd?efd@efdAefdBej$        fdCej$        fdDej$        fdEe%fdFe%fdGe%fdHe%fdIe%j&        fdJe%j'        fdKe%fdLe%fdMefe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fe eej(        e          fdNe!fdefdO eej        e          dfdP eej        e          dQfdR eej        e          fdNej)        fgdefdS eee          dQfdT ee!eej)        ee!ee!e          fdNej)        fgdefdS eee          dQfdNej        fgdefdS eee          dQfdNej        fgdefdS eee          dQfdNej        fgdUZ*dVS )Wr   z(
    Lexer for the Factor language.
    Factorzhttp://factorcode.orgfactorz*.factorztext/x-factorz1.4)oz-rot2biz2bi@z2bi*2curry2dip2drop2dup2keep2nip2over2triz2tri@z2tri*3bi3curry3dip3drop3dup3keep3tri4dip4drop4dup4keepz	<wrapper>=z>booleanclone?z?executez?ifandassertzassert=zassert?bizbi-curryz	bi-curry@z	bi-curry*zbi@zbi*boabooleanzboolean?zboth?buildcall	callstackzcallstack>arrayz
callstack?clearz(clone)composezcompose?curryzcurry?	datastackdiedipdodropdupdupdzeither?zeq?zequal?executehashcodez	hashcode*zidentity-hashcodezidentity-tuplezidentity-tuple?ifzif*keeploopmostnewnipnotnullobjectoroverpickpreposeretainstackrotzsame?swapswapdthrowtriz	tri-curryz
tri-curry@z
tri-curry*ztri@ztri*tupleztuple?unlesszunless*untilwhenzwhen*whilewithwrapperzwrapper?xorz(\s+))suffix)@2cachez<enum>z>alistz?atz?ofassocz
assoc-all?z
assoc-any?zassoc-clone-likezassoc-combinez
assoc-diffzassoc-diff!zassoc-differz
assoc-eachzassoc-empty?zassoc-filterzassoc-filter!zassoc-filter-asz
assoc-findzassoc-hashcodezassoc-intersectz
assoc-likez	assoc-mapzassoc-map-aszassoc-partitionzassoc-refinez
assoc-sizezassoc-stackzassoc-subset?zassoc-unionzassoc-union!zassoc=z	assoc>mapzassoc?atzat+zat*cachez	change-atzclear-assocz	delete-atz
delete-at*enumzenum?zextract-keyszinc-atzkey?keysz	map>assoczmaybe-set-atz	new-assocofzpush-atz	rename-atzset-atz	sift-keyszsift-values
substituteunzipzvalue-atz	value-at*zvalue?valueszip)2cleavez2cleave>quot3cleavez3cleave>quot4cleavez4cleave>quotz
alist>quotzcall-effectcasez	case-findz	case>quotcleavezcleave>quotcondz	cond>quotzdeep-spread>quotzexecute-effectzlinear-case-quotzno-casezno-case?zno-condzno-cond?zrecursive-hashcodezshallow-spread>quotspreadzto-fixed-pointzwrong-valueszwrong-values?)c-/z/fz/iz/modz2/z2^<z<=z<fp-nan>>z>=z>bignumz>fixnumz>floatz>integerz(all-integers?)z(each-integer)z(find-integer)*+z?1+absalignzall-integers?bignumzbignum?zbit?bitandbitnotbitorzbits>doublez
bits>floatbitxorcomplexzcomplex?denominatorzdouble>bitszeach-integerzeven?zfind-integerzfind-last-integerfixnumzfixnum?floatz
float>bitszfloat?zfp-bitwise=zfp-infinity?zfp-nan-payloadzfp-nan?zfp-qnan?zfp-signzfp-snan?zfp-special?zif-zerozimaginary-partintegerzinteger>fixnumzinteger>fixnum-strictzinteger?log2zlog2-expects-positivezlog2-expects-positive?modnegzneg?z
next-floatznext-power-of-2numberznumber=znumber?	numeratorzodd?zout-of-fixnum-rangezout-of-fixnum-range?zpower-of-2?z
prev-floatratiozratio?rationalz	rational?realz	real-partzreal?recipremsgnshiftsqtimeszu<zu<=zu>zu>=zunless-zeroz
unordered?z	when-zerozzero?)	1sequencez2all?2each2mapz2map-asz2map-reduce2reduce	2selector	2sequence3appendz
3append-as3each3mapz3map-as	3sequence	4sequencez<repetition>z
<reversed>z<slice>z?firstz?lastz?nthz?secondz?set-nth
accumulatezaccumulate!zaccumulate-aszall?zany?appendzappend!z	append-aszassert-sequencezassert-sequence=zassert-sequence?zbinary-reducezbounds-checkzbounds-check?zbounds-errorzbounds-error?zbut-lastzbut-last-slicezcartesian-eachzcartesian-mapzcartesian-productz
change-nthzcheck-slicezcheck-slice-errorz
clone-likezcollapse-slice	collectorzcollector-forconcatz	concat-ascopycountcutz	cut-slicezcut*z
delete-allzdelete-slicezdrop-prefixeachz	each-fromz
each-indexzempty?exchangefilterzfilter!z	filter-asfindz	find-fromz
find-indexzfind-index-fromz	find-lastzfind-last-fromfirstfirst2first3first4flipfollowfourthgluehalvesharvestheadz
head-slicezhead-slice*zhead*zhead?zif-empty	immutablezimmutable-sequencezimmutable-sequence?z
immutable?indexz
index-fromindicesinfimumz
infimum-byz
insert-nth
interleaveiotaz
iota-tupleziota-tuple?joinzjoin-aslastz
last-indexzlast-index-fromlengthlengthenlikelongerzlonger?longestmapzmap!zmap-aszmap-findzmap-find-lastz	map-indexzmap-integersz
map-reducezmap-sumz
max-lengthz
member-eq?zmember?z	midpoint@z
min-lengthmismatchmoveznew-likeznew-resizableznew-sequenceznon-negative-integer-expectedznon-negative-integer-expected?nthnthszpad-headzpad-tailpadding	partitionpopzpop*prefixprependz
prepend-asproducez
produce-asproductpushzpush-allzpush-eitherzpush-ifreducezreduce-indexremovezremove!z	remove-eqz
remove-eq!z
remove-nthzremove-nth!
repetitionzrepetition?zreplace-slice	replicatezreplicate-asrestz
rest-slicereversezreverse!reversedz	reversed?secondselectorzselector-forsequencezsequence-hashcodez	sequence=z	sequence?z	set-firstz
set-fourthzset-lastz
set-lengthzset-nthz
set-secondz	set-thirdshortshortenshorterzshorter?shortestsiftslicezslice-errorzslice-error?zslice?snipz
snip-slicestartzstart*subseqzsubseq?rY   zsuffix!sumzsum-lengthssupremumzsupremum-bysurroundtailz
tail-sliceztail-slice*ztail*ztail?thirdtrimz	trim-headztrim-head-slicez
trim-slicez	trim-tailztrim-tail-sliceunclipzunclip-lastzunclip-last-slicezunclip-slicezunless-emptyzvirtual-exemplarzvirtual-sequencezvirtual-sequence?zvirtual@z
when-empty)z+@changezchange-globalcounterdecgetz
get-globalglobalinczinit-namespaces
initializez	is-globalz
make-assoc	namespace	namestackoffonsetz
set-globalzset-namestacktogglezwith-globalz
with-scopezwith-variablezwith-variables)1array2array3array4arrayz<array>z>arrayarrayzarray?pairzpair?zresize-array)Yz(each-stream-block-slice)z(each-stream-block)z(stream-contents-by-block)z(stream-contents-by-element)z$(stream-contents-by-length-or-block)z(stream-contents-by-length)z+byte+z+character+zbad-seek-typezbad-seek-type?blcontentsz
each-blockzeach-block-sizezeach-block-slicez	each-linezeach-morselzeach-stream-blockzeach-stream-block-slicezeach-stream-linezerror-streamflushzinput-streamzinput-stream?zinvalid-read-bufferzinvalid-read-buffer?linesnlzoutput-streamzoutput-stream?printreadz	read-intozread-partialzread-partial-intoz
read-untilread1readlnzseek-absolutezseek-absolute?zseek-endz	seek-end?z
seek-inputzseek-outputzseek-relativezseek-relative?z	stream-blzstream-contentszstream-contents*zstream-copyzstream-copy*zstream-element-typezstream-flushzstream-lengthzstream-linesz	stream-nlzstream-printzstream-readzstream-read-intozstream-read-partialzstream-read-partial-intozstream-read-partial-unsafezstream-read-unsafezstream-read-untilzstream-read1zstream-readlnzstream-seekzstream-seekable?zstream-tellzstream-writezstream-write1z
tell-inputztell-outputzwith-error-streamzwith-error-stream*zwith-error>outputzwith-input-output+error-streamsz with-input-output+error-streams*zwith-input-streamzwith-input-stream*zwith-output-streamzwith-output-stream*zwith-output>errorzwith-output+error-streamzwith-output+error-stream*zwith-streamszwith-streams*writewrite1)1stringz<string>z>stringzresize-stringstringzstring?)1vectorz<vector>z>vectorz?pushvectorzvector?)(z<condition>z<continuation>z	<restart>zattempt-allzattempt-all-errorzattempt-all-error?zcallback-error-hookcallcc0callcc1cleanupzcompute-restarts	conditionz
condition?continuationzcontinuation?continuezcontinue-restartzcontinue-withzcurrent-continuationerrorzerror-continuationzerror-in-threadzerror-threadifcczignore-errorszin-callback?zoriginal-errorrecoverrestartzrestart?restartsrethrowzrethrow-restartsreturnzreturn-continuationzthread-error-hookzthrow-continuezthrow-restartszwith-datastackzwith-returnz#!.*$basez\s+z&((?:MACRO|MEMO|TYPED)?:[:]?)(\s+)(\S+)z(M:[:]?)(\s+)(\S+)(\s+)(\S+)z(C:)(\s+)(\S+)(\s+)(\S+)z(GENERIC:)(\s+)(\S+)z$(HOOK:|GENERIC#)(\s+)(\S+)(\s+)(\S+)z(\()(\s)stackeffectz(;)(\s)z(USING:)(\s+)vocabsz&(USE:|UNUSE:|IN:|QUALIFIED:)(\s+)(\S+)z%(QUALIFIED-WITH:)(\s+)(\S+)(\s+)(\S+)z#(FROM:|EXCLUDE:)(\s+)(\S+)(\s+=>\s)r   z0(RENAME:)(\s+)(\S+)(\s+)(\S+)(\s+)(=>)(\s+)(\S+)z%(ALIAS:|TYPEDEF:)(\s+)(\S+)(\s+)(\S+)z$(DEFER:|FORGET:|POSTPONE:)(\s+)(\S+)z+(TUPLE:|ERROR:)(\s+)(\S+)(\s+)(<)(\s+)(\S+)slotsz"(TUPLE:|ERROR:|BUILTIN:)(\s+)(\S+)z'(MIXIN:|UNION:|INTERSECTION:)(\s+)(\S+)z((PREDICATE:)(\s+)(\S+)(\s+)(<)(\s+)(\S+)z(INSTANCE:)(\s+)(\S+)(\s+)(\S+)z(SLOT:)(\s+)(\S+)z(SINGLETON:)(\s+)(\S+)zSINGLETONS:classesz)(CONSTANT:|SYMBOL:|MAIN:|HELP:)(\s+)(\S+)z(SYMBOLS:)(\s+)z(SYNTAX:)(\s+)z(ALIEN:)(\s+)z(STRUCT:)(\s+)(\S+)z<(FUNCTION:)(\s+)(\S+)(\s+)(\S+)(\s+)(\()(\s+)([^)]+)(\))(\s)zL(FUNCTION-ALIAS:)(\s+)(\S+)(\s+)(\S+)(\s+)(\S+)(\s+)(\()(\s+)([^)]+)(\))(\s)z(<PRIVATE|PRIVATE>)(\s)z"""\s(?:.|\n)*?\s"""z"(?:\\\\|\\"|[^"])*"z (\S+")(\s+)((?:\\\\|\\"|[^"])*")z)(CHAR:)(\s+)(\\[\\abfnrstv]|[^\\]\S*)(\s)z!\s+.*$z#!\s+.*$z/\*\s+(?:.|\n)*?\s\*/z[tf]\bz[\\$]\s+\S+zM\\\s+\S+\s+\S+z9[+-]?(?:[\d,]*\d)?\.(?:\d([\d,]*\d)?)?(?:[eE][+-]?\d+)?\sz'[+-]?\d(?:[\d,]*\d)?(?:[eE][+-]?\d+)?\sz<0x[a-fA-F\d](?:[a-fA-F\d,]*[a-fA-F\d])?(?:p\d([\d,]*\d)?)?\szANAN:\s+[a-fA-F\d](?:[a-fA-F\d,]*[a-fA-F\d])?(?:p\d([\d,]*\d)?)?\sz	0b[01]+\sz
0o[0-7]+\sz5(?:\d([\d,]*\d)?)?\+\d(?:[\d,]*\d)?/\d(?:[\d,]*\d)?\sz7(?:\-\d([\d,]*\d)?)?\-\d(?:[\d,]*\d)?/\d(?:[\d,]*\d)?\sz:(?:deprecated|final|foldable|flushable|inline|recursive)\sz\S+z	(\()(\s+)z	(\))(\s+)z#popz	(--)(\s+)z(;)(\s+)z((\{)(\s+)(\S+)(\s+)([^}]+)(\s+)(\})(\s+))rootr  r  r  r  r  r   N)+__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesversion_addedr   builtin_kernelbuiltin_assocsbuiltin_combinatorsbuiltin_mathbuiltin_sequencesbuiltin_namespacesbuiltin_arrays
builtin_iobuiltin_stringsbuiltin_vectorsbuiltin_continuationsr   Preprocr   r   r   r	   r
   FunctionClass	Namespacer   r   r   CharConstantr   BinOctBuiltinVariabletokens     V/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/factor.pyr   r      s_         D
!CjGI !IMU & /78 8 8N  U E NVW W WN  % !; DLM M M 5 $ "%# # #L(  *T 'U*( *( *(X   R
    U 3;CE E EN  8 $,9- - -J< e #% % %O e H  O "E 
#; DL
M 
M 
M w'GFOO

F
Z F
 7Xgz4=99;	F
 -Xgz4:z   !F
 )Xgz4=* F
 %Xgz4=99;F
 5Xgz4=*   !F
" ((4=*==}M#F
$ ':667%F
* Xg'44h@+F
. 7Xg'T^DDF/F
2 6Xg'T^T^- -.3F
8 4Xg'T^ %'9F
> AXg'T]J[*   !?F
F 6Xg'T]J   !GF
L 5Xg'T]CCEMF
T <Xgz4:z;TZ) )*13UF
Z 3Xgz4:66A[F
^ 8Xgz4:668_F
b 9Xgz4:zj$*6 67cF
h )Xgz4=*djQQSiF
l 0Xgz4:z4:NNPmF
p "88GZ#O#OPqF
r '*dj(Q(QRsF
t Wi0uF
z :Xgz4=99;{F
~  ':!>!>HF
@ * = =>AF
B xx<<=CF
D $XXgz4:%N%NOEF
F, Xg'z4=*j$ZI IJGF
R, Xg'z4=*
j$ZI I	JSF
f ('2CZ)P)PQgF
l %f-mF
n %f-oF
p 1V446qF
t :j&+zJJLuF
| !}F
~ '"F
@ &w/AF
F &GF
L T]+MF
N  /OF
T J6RUF
V 8@WF
X MfUYF
Z RSYZ[F
\ 6:&]F
^ FJ'_F
` FvNaF
b HPcF
h KiF
p XXdlJ??@qF
r XXdlJ??@sF
t !((4<"D"DEuF
v 88DL*==>wF
x z B BCyF
z  $,
!C!CD{F
| XXdlJ??@}F
~ $,
;;<F
@ hht|Z@@AAF
B hht|Z@@ACF
D #HHT\:$F$FGEF
J TNKF
P Z 88DM:>>N88DM:>>G88DM:>>?T]#
 Z ((7J77@8XdJzz45 56 T]#
 Z ((7J77@T^$
 Z ((7J77@TZ 
 Z ((7J77@T]#
Mk kFFFr7  N)r  pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   r   __all__r   r6  r7  r8  <module>r<     s     @ ? ? ? ? ? ? ? ? ? ? ?                    /Y Y Y Y Y* Y Y Y Y Yr7  