|edZddlZddlmZmZmZmZmZmZm Z ddl m Z m Z m Z mZmZmZmZmZmZmZgdZGddeZGdd eZGd d eZGd d eZy)z pygments.lexers.int_fiction ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lexers for interactive fiction languages. :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N) RegexLexerincludebygroupsusingthisdefaultwords) TextCommentOperatorKeywordNameStringNumber PunctuationErrorGeneric) Inform6LexerInform6TemplateLexer Inform7Lexer Tads3Lexerc:eZdZdZdZdZddgZdgZejejzZ dZ dZ d Zd Zd Zid d ededej$dfedgddefdezej*fgdeddedfdedfdefedgdeddedfdeededfd e zefd!e zedfgd"edd#edfd$edfded%fd&ezefd'e zefd(edfd)e zedfd*ej2dfd+efd,ej6d-fd.efedg d/d#ed0fd1efd2e zedfd+ej<fd3ed4fed"gd5d$ed6fd7edfed"gd8d9edfed"gd:d(edfed"gd;ddfed:gd=edd>ed?ed@e jBdfdAedBedCe"e jBe jFe jBdfdAedDedCe"e jBe jFe jBdfdEeze j*dFfdEeze jHdGfdHe dIe dJe%jLdfdKe%jNdfdLe%jPdfdMe%jRdfdNe ze"eedfdOe ze"eejTjVdfdPedQfdRe ze"eejXdfdSejZdTfe.dUdVWejZdfdXejZdfe.dYdZdV[ejZdfe.d\dZdV[ejZdfe edfgd]ed=edgd^d_e jFfd`eze j*fdae j*fdbe jFfdce jFfdEeze j*dfgddd_e jFfd`eze jHfdae jHfdee jFfdfedgedhe jFfdfediedjedke jFfdfedledme jFfdEeze jHdfgdndoeze jHfdpe jHfdee jFfdEeze jHdfgdqede ej^dfed=gdredd(efdsed]fe ej^d]fedgidtede ejTjVdfed=gd-ede ej6dfedgduede ejTdfedgdvdwe j`dfgdxede ejZdfgdeddSefd3edfdedyfe.dzdZdV[edfd{ed|fd}ed~fdedfdedfde"eefdedfdedfdedfdedfdedfdedfdedfdedfdedfdedfdedfdedfdedfe ejbdfgdede ejXdfedgdedd3edfdefde jHdnfe ejTfgdedd3efdedfd7efedgdeddedfedgdeddedfe ejbdfgdedd#edfedgdd2e zefdej>dfedtgdedd3ed6fd(efdej>dfdej>fd7efedgdeddedfe ejbfed=gdeddsedfdedfedgdedd3edfdefd2e zed=fdedfedgideddsedfedgdedd3edfd(efdedtfedtgdeddEeze jHdfedgdeddEeze jHdfedgdd_e jFfedngdede.ddVWedfdefde zedfgdeded=gdededgdede.ddededƝWefedgdede.ddVWedfedgdeddedfdefe.ddVWedfdefdedfdedfdedfdedfdedfdezedfdej6d-fdedfdedfdedfdedfedޫgdeddedfdezej<dfe dedejXdfedgdedd#edfedgdedd3edfedgdedd3edfd7efedgdedd#edfedgdeddEeze jHdfe edfgdd7efedgiZ2dZ3dZ4y)rz> For Inform 6 source code. .. versionadded:: 2.0 zInform 6zhttp://inform-fiction.org/inform6i6z*.infz [a-zA-Z_]\w*u \-‐-—u"“”u'‘’u \n…

rootz\A(!%[^z]*[])+ directive _whitespace\s+![^%s]*r\[z many-valuesz:|(?=;)#pop<) expression _expressionr%z(?=sp\b)z(?=[z$0-9#a-zA-Z_]))r"valuez\+\+|[%s]{1,2}(?!>)|~~?z(?=[()\[%s,?@{:;])r$\(\))r" statementslocalsz>(?=(\s+|(![^%s]*))*[>;])z\+\+|[%s]{2}(?!>),z6&&?|\|\|?|[=~><]?=|[%s]{1,2}>?|\.\.?[&#]?|::|[<>+*/%%]z*(has|hasnt|in|notin|ofclass|or|provides)\bzsp\bz\?~?label?z[@{]_assembly-expression)#pushr%z[\[\]]z[%s]>;#pop:3_for-expression#pop:2:_keyword-expressionz(from|near|to)\b_list-expression_object-expressionzhas\br&[z][^@][]z([z])(@\{[0-9a-fA-F]*\})([z])z ])(@.{2})([[%s])r"dictionary-word)r"stringz \$[<>]?[+z][0-9]*\.?[0-9]*([eE][+z ]?[0-9]+)?z\$[0-9a-fA-F]+z \$\$[01]+z[0-9]+z (##|#a\$)(%s)z (#g\$)(%s)z#[nw]\$)r"obsolete-dictionary-wordz (#r\$)(%s)#)r"system-constant) childchildreneldereldestglkindirect metaclassparentrandomsiblingyoungeryoungestz\b)suffixz#(?i)(Class|Object|Routine|String)\b)2 Box__RoutineCA__PrCDefArt CInDefArtCl__MsCopy__PrimitiveCP__TabDA__PrDB__PrDefArt Dynam__String EnglishNumber Glk__WrapIA__PrIB__PrInDefArtMain__ Meta__classOB__Move OB__RemoveOC__ClOP__Pr Print__Addr Print__PNamePrintShortNameRA__PrRA__ScRL__Pr R_ProcessRT__ChGRT__ChGt RT__ChLDB RT__ChLDWRT__ChPR RT__ChPrintA RT__ChPrintC RT__ChPrintO RT__ChPrintSRT__ChPSRT__ChR RT__ChSTB RT__ChSTWRT__ChTRT__ErrRT__TrPSRV__Pr Symb__TabUnsigned__CompareWV__Pr Z__Regionz(?i))prefixrK)8callcopycreateDEBUGdestroyDICT_CHAR_SIZEDICT_ENTRY_BYTESDICT_IS_UNICODEDICT_WORD_SIZEDOUBLE_HI_INFINITY DOUBLE_HI_NANDOUBLE_HI_NINFINITYDOUBLE_LO_INFINITY DOUBLE_LO_NANDOUBLE_LO_NINFINITYfalseFLOAT_INFINITY FLOAT_NANFLOAT_NINFINITYGOBJFIELD_CHAINGOBJFIELD_CHILDGOBJFIELD_NAMEGOBJFIELD_PARENTGOBJFIELD_PROPTABGOBJFIELD_SIBLINGGOBJ_EXT_STARTGOBJ_TOTAL_LENGTHGrammar__VersionINDIV_PROP_STARTINFIXinfix__watching MODULE_MODEnamenothingNUM_ATTR_BYTESprintprint_to_arrayrecreate remainingselfsender STRICT_MODEsw__var sys__glob0 sys__glob1 sys__glob2sys_statusline_flag TARGET_GLULX TARGET_ZCODE temp__global2 temp__global3 temp__global4 temp_globaltrue USE_MODULESWORDSIZEzvalue?r:z[~^]+z [^~^\\@({%s]+z[({]z@\{[0-9a-fA-F]*\}z@.{2}r;z\\z@(\\\s*[z]\s*)*@((\\\s*[z ]\s*)*[0-9])*z]\s*)*[({]((\\\s*[z]\s*)*[0-9a-zA-Z_])*(\\\s*[z ]\s*)*[)}]z]\s*)*.(\\\s*[z]\s*)*. plain-stringz[^~^\\({\[\]%s]+z [~^({\[\]] _constant constant*=_global variable?r<z\S\w*r>)rr)r* routine-name?) abbreviateendif dictionaryifdefiffalseifndefifnotiftrueifv3ifv5releaseserialswitches system_fileversionz(?i)(array|global)\b)rdirective-keyword?rz(?i)attribute\b)ralias?rz (?i)class\b) object-body duplicates class-namez(?i)(constant|default)\b)rrz(?i)(end\b)(.*)z(?i)(extend|verb)\bgrammarz(?i)fake_action\b)rrz (?i)import\bmanifestz(?i)(include|link|origsource)\b)rbefore-plain-string?z(?i)(lowstring|undef)\bz (?i)message\b)r diagnosticz(?i)(nearby|object)\b)r _object-headz(?i)property\b)rrrproperty-keyword*z (?i)replace\b)rrrz(?i)statusline\b)rrz (?i)stub\b)rrz (?i)trace\b)rtrace-keyword?rz(?i)zcharacter\b)rrrrr*z\*"\]rzalias\b)r"rrz#(?=[,;]|(class|has|private|with)\b)r)r"r$r%rz(class|has|private|with)\brclass\bz class-segmentz(has|private|with)\b)r6r%)r"r)r" grammar-linez_directive-keywordrz[/*]z(noun|scope)\bz=routinez (?i)global\br)r"message-string)r"rrr)r"rrz_directive-keyword!)%additivealiasbufferclasscreaturedataerror fatalerrorfirsthasheld individualinitialinitstrlastlongmetamulti multiexcept multiheld multiinsidenounnumberonlyprivatereplacereversescopescorespecialr;table terminatingtimetopicwarningwithzstatic\bz[%s]{1,2}>|[+=]rr)rrrz\b(?=(\s*|(![^z]))*[_a-zA-Z])r) assemblyr expressionslineslinkerobjectsoffonsymbolstokensverbsr)z[;{}])boxbreakcontinuergive inversionnew_linequitreadremovereturnrfalsertruespacesr;untilz (do|else)\bz(font|style)\b)rmiscellaneous-keyword?zfor\b)for(?z(if|switch|while))r$r%rz(jump|save|restore)\b)rr,z objectloop\b)r4rrzprint(_ret)?\b|(?=[%s])z print-listz\.@opcodez#(?![agrnw]\$|#)zmove\b)rr4r%rz:(bold|fixed|from|near|off|on|reverse|roman|to|underline)\bzX(a|A|an|address|char|name|number|object|property|string|the|The)\b(?=(\s+|(![^%s]*))*\))z (?=(\s+|(![^z]*))*\))rr)r1r%)r5r%r5formr)r"r)operandsrr )r-r%c#Kg}d}d}tj||D]\}}}|tjur|dk(r |||gg}d}nl|dkDr*|tvr |t vr|dz}|j |||fn=|dk(r1|dddk(r t|dd<|r|jd|rd}|||f|tvs|t vs|}|r|jd|ryyw)Ninr)) rget_tokens_unprocessedrVariabler r appendr pop)rtextobjectloop_queueobjectloop_token_countprevious_tokenindextokenr&s =/usr/lib/python3/dist-packages/pygments/lexers/int_fiction.pyr'z#Inform6Lexer.get_tokens_unprocesseds$ !##-#D#DTEI$K ' E5%.5D=%*E5$9#: )*&'!+'E,=*a/* ''u(=>)Q.'+A.#518(+A.*.22155+-/*UE))G#T(9!&% '&"&&q) )sB&C")C";C"C" C"c^d}tjd|tjr|dz }|S)zWe try to find a keyword which seem relatively common, unfortunately there is a decent overlap with Smalltalk keywords otherwise here..rz origsourceg?)research IGNORECASEr+results r1 analyse_textzInform6Lexer.analyse_texts, 99%tR]] ; dNF N)5__name__ __module__ __qualname____doc__rurlaliases filenamesr3 MULTILINEDOTALLflags_name_dash_dquote_squote_newliner Preprocrr Singlerrr WordrLabelrr Pseudo DeclarationrCharrEscapeDoublerFloatHexBinIntegerr(GlobalFunctionBuiltinr ConstantOtherClassr r'r8r9r1rrs D &C$G I LL299 $E E EGG&HF&. 97??   K  F  TN ( "GNN 3 F  M " K / f - ;  1 2  F&  M " $ '*17 ;T  '% / : "U *D& 9  'F6  M " K!> ? K ( K!A B )H 4k B !E )8 4 ; . F N } & :HMM   dO djj( + e  FO 7FX  K!9 :  $  {M : gnn % ; ) L ! ! YFh  K * ; ' L ! iFr  '= 9 L ! sFz  ; ' L ! {FB  w**F 3 & ' CFN  M " ' 16;; G3:G D fkk6==&++ > H'. 8 fkk6==&++ > H w  /J K w  /A BBG O \\6 #  F 3 6::v .  /  %x$'? H U " h 4 4 5v ? #G H U "HXt}}$Ev N 4<x H ]]  w  v 6  eF@  7 *FMM : FMM * FMM " w  v 6  AFN  M " DMM6 * G  OFX  M " ;  ; ) DMM8 , FO  YFf  M " DMM((& 1 G  gFp  M " DJJ ' FO qFz  M " DMM6 * FO {FF # v||V ,% GFL  M " DLL& ) MFX  M " ;  ; ' K A C $*%9i  ! %g 9 ; *L M W 8 : (' % ' '4!8 9 #Wi 8 !7,D E gz 2 / 0 2 '2J K w(A B %w , .  D F w : < '+L M G%A B W < > ' D F DJJ ? @M' YFj  M " DMM6 * FO kFt  M " ; ' K 6==. 1 DMM "  uFD  M " ;  K ( 5M 1 2  EFT  M " "7 8 FO UF`  M " 3T6 B DJJ ' aFj  M " K!F G FO kFt   { + *G,?,? H I  uF~  M " ; ) ;  ,,o > $g&9&9 : 5M 9 : FP  M " 3T6 B DJJ  G   Q F^  M " ; 3 4 K!9 : ( )  _ Fj  M " ; ' k "  {G 4  4 ( )  k Fz  M " ; 0 FO { FF  M " ; ' ;  gy 1 I   G FV  M " w  /I J J K W F`  M " w  /G H FO! a Fj  v}} % N # k Fv  M " C LQ R f  ' " % 'f = w FN  ) * G  O FV  ) * FO W F^  M " 5AI8TV   FO  _ Fl  M " FNSUf  FO  m F@  M " K ( { # -6;<i  ! W %  2 4 w . !7 0 2 %w0E F g 7 9 '' 17L I DJJ ) 7H % +{ ; ; *  > @ E F3 A Fv ! M " J f -/789@  -28 r9rcX eZdZdZdZdZddgZddgZejejzZ e jZ e jZe jZdezZiZgd ZeD]Zid ee j"d d d e jzej,dfgd defdej0dfdezej4dfedgddezej4fdezej4dfgddej0dfdededej4fdezej4dfdedededed fd!ezedfd"ezej4fgd#d$ed%edefdezej:d&fd'ed(fd)ed*fdej0dfd+e d,e d-eee e!d.d/0efd1ed2ed3ed4ed5fd6ezefgd(d7efdej0dfd+e d,e d-eee e!d8d90edfedgd*d7efdej0dfd+e d,e d-eee e!d.d:0edfedgdd;ej0fdej0dezej:fd?ejDfdezej:dfgd5defdej0dfd@e zedAfdBe zefdCezej4dfedgdAd7efdej0dfdDedEfedgdEd7efdej0dfdFe zedGfedHgdGdIedJedKej4fdIedLedKejFfdMedNedOe e!d#PfdedQedRefdej0dfgd/d1edSedTej,fd1edUe dVedKej,fd1edWedTej4dXfgd:e$d/dYeeeefgd9dZeee e!d#Pefgd[e zeeejJefd\e zeee&eeed]fd^e zeee&eeefd_eee e!d#Pefgd`ej,fd1edSedTej,dfd1edUe daej,fd1edWedTej4fdbej,fgd1edSedTej,fd1edUe dcedKej,fd1edWedTej4dXfd1eddede&fdeezejJfdfe zeee&edfdgezefgdhee<e j"D]NZ'e'd k(r ee j"e'eee'<e'jQdir6e$dje$egeee'dkdlPdmZ)yk)nrz> For Inform 7 source code. .. versionadded:: 2.0 zInform 7zhttp://inform7.com/inform7i7z*.niz*.i7xz \A|(?<=[%s]))+i6t-not-inline +i6t-inline+i6t-use-option+i6-rootr +i6t-rootz[^%s]*)r+pz(\|?\s)+r!z+commentr9)+main+titling+titling-string)rf +heading?rhz[^%s]+r"rgz[^z.;:|z]+r7z ]{2}|(?<=[\sz])\|[\sr8)r"riz[.;:]|(?<=[\s%s])\|z[|%s]rfz(?i)[^z:a\[(|z+textr3z+phrase-definitionz (?i)\bas\bz +use-optionz(\([z ])(.*?)([z]\)))rcrr`)statei6t(z |(?<=[\s;:.z ]))\|\s|[z]{2,}riz (?i)[a(|%s]r)rcrrr)rarbz[^\[\]]+r.rz[^\[%s]+z\[.*?\]z [%s]{4}\s+z+documentation-headingz [%s]{1,3}z.(?i)(volume|book|part|chapter|section)\b[^%s]*z(?i)documentation\s+z+documentation-heading2z [%s]{4}\sz+documentationr2z(?i)(z)\s*(chapter|example)\s*:[^z]*z)\s*section\s*:[^z((z)\t.*?[rrjz\[]+|[z\[]z )@c( .*?)?([z]|\Z)z)@([z]+|Purpose:)[^z )@p( .*?)?([rez (\{)(N)(\})z(\{)(\S[^}]*)?(\})z(\{[%s])(![^}]*)(\}?)z(\{[%s])(lines)(:)([^}]*)(\}?)+linesz (\{[%s])([^:}]*)(:?)([^}]*)(\}?)z(\(\+)(.*?)(\+\)|\Z)z[^@]+z ]|Purpose:)rz ]|Purpose:)[^z)@\w*[ r z(\{)([%s]endlines)(\})z[^@!{]+?([%s]|\Z)|.)+i6trern_roNrc |jdd}||jvr!|jj||_n|j||_t j |fi|y)Nrkr`)get _all_tokens __class__process_tokendef_tokensr__init__)roptionslevels r1rwzInform7Lexer.__init__s\ E#45 (( (>>::5ADL++E2DLD,G,r9)*r:r;r<r=rr>r?r@r3rArBrCrrErFrH_startr token_variantsrylistr rIr MultilinerHeadingrrrQrrrrInterpol SubheadingrrJr r0 startswithrwr\r9r1rrs D C$G!I LL299 $E   E""G$$H x 'FFJNfMX \0089X \222GOO$&X d#)):67"GOO9;./  X  W$goo67"GOOV< X " )):6$+X6H7"GOO5FG3;WgN,.''14@H$goo6#X 4 *18! (iX t ($%,__64:HE##%(.9t7+-'/:DA)):6 uX H .4h?"395(K".4h?$(  IX X )*+t[!IJ YX ` &+uT'A%'(aX l*E1+w~~{CE2U:+w T%'(025u<+w T%'()+uT'A%'( 7??+.4h?&*,2E:GOOL.4h?"w'/5h?"28%J".4h?$(%+X6@h&7*U2+w ded:feded(gd?d@efded*fd+ed(fdAe!jDfdeded1eejFeedefedgded?d"edBfgdCdDe$jJd(fed?d"edEfgd$geddFed7fdGedHfdedIfdJed(fdKe&jNd(fdLe&jPd(fdMe&jRd(fdNe&jTd(fdOe$jVdPfdQe$jXdRfdSe$jVdTfdUe$jXdVfdWe$jZdXfdYe$jZdZfd[e$jZd\fd]e$jZd^fd_ezee!jDeede!jDfd`ezee!jDeededafdbezee!jDeede!jDdcfddezee!jDeedfdeezee!jDeede!jDdffdgezee!eede!jDdhfdiej\d(fdje!jDdkfdle!jDfdme!jDdnfdoe!jDdpfdqe!jDd(fdre!jDdsfdte!jDdufdve!jDdwfdxe!jDdyfdze!jDd{fd|e!jDd}fd~e!jDdfde!jDdfde!jDd(fde!jDdfde!j^d(fde!jDd=fde!jDdfde!jDdfdej\j`d(fde!jDdffdezee1jdeede1dfde1jdfdej\d(fd4ed$eed(fed(gddFedfdGedBfdefded4fded(fedee1d4fde1dfdezee1jdeede1jdfdefg deded(gdde1d(fedgddDe$jJd8fedgddFedyfde!jDdfed4gidd+ed(fdedfde!dfedgdeej@d(fedgddedfedgdded4fedgddededeej@eedd(fdededed eejfeedej@d(fdefed$eej@d(fed(gddezeeeedfdefdedfdedfdedfedgdded(fedgdde!d(feded(gddedfde1d(fedgdde!d(fedgddefeejhdfedgdedde!dsfedsgddefdFedfd,edfeejffedgdedde$jjd(fgdedīeddezeeeede!d4fdezefeej^fed8gd,d,ed(fgdde$jJfdeded˝ed(feej4d(fedgiddedfedeejfd(fed(gdde1jdd(fedee1fed(gddFedfded)fedgdded(fedīd~e!jDfeddezefeej@fgddJed(fde!jDd(fde!jDfeejfd(feded(gddedfedded(fed(gddefd'ed(fde!jDfeej^fedgdeejFd(feded(gddefded(fedeej@fgddede de6jnfe e6jXfe e6jpfdezefgddOe$jVdfdQe$jXdfdSe$jVdfdUe$jXdfgdde ze$jrfgdde$jJfde de de$jJdfgddejtfgdedddedddeddidedddeddddeddddeddddeddddeddddeddddeddddeddddedddedddedddedddedSdddedSdddedSdddedSddedUddedUddedUddedUddeeddeeddeeddeeddde$jZfde$jZfde$jZd(fdSe$jZfgd e$jZfd e$jZfd e$jZd(fdUe$jZfgde$jZfd e$jZfdSe$jZd(fgd e$jZfd e$jZfdUe$jZd(fgd Z;dZ<dZ=y(rz! For TADS 3 source code. zTADS 3tads3z*.tz(?://(?:[^\\\n]|\\+[\w\W])*$)z(?:/\*(?:[^*]|\*(?!/))*\*/)zM(?:\\(?:[\n\\<>"\'^v bnrt]|u[\da-fA-F]{,4}|x[\da-fA-F]{,2}|[0-3]?[0-7]{1,2}))z(?:[_a-zA-Z]\w*)z (?=\s|\\?>)zD(?:&&|\|\||\+\+|--|\?\?|::|[.,@\[\]~]|(?:[=+\-*/%!&|^]|<>?>?)=?)z (?:\\|\s||r&z(?:\\\n|[^\S\n]|Nc |rhdj|Dcgc]M}dtj|jdtj|j dOc}}|rdnd}|rt j nt j}|r d|d|d nd}|rd nd|rd nd }d |z} g} |r$| d|z|dfd|zt jf||fgz } n| j||df| tdd|z|fgz } |r0| jd|d|dtjdd|z| ffnz| d|d||d|dtjfdtjdd|z| ffdtjdd|z| ffd|d||d|dtj| ftd gz } | td!d"|d||d|d#t jfd$|fgz } | Scc}w)%Nz(?:rr&r'+|(?!{2})tdsz%sqtz%s{3,}r"z\\%s+ s/verbatimz [^\\<&{}%s]+z\\?<(/|\\\\|(?!z)\\)z (?=[\s=>])z%sqsz \\?<\\ ]|<(?!<)|\\z|\\.)*>?z(?i)\\?]|\\>)z %sqs/listingz(?i)\\?]|\\>)z%sqs/xmpz\\?<([^\s=><\\z|\\.)*s/entitys/escape \{([^}<\\|\\.)*\}z[\\&{}<])joinr3escapelowerupperrrQrJrPr)rrTagr r}r) tripledoubleverbatim_escapeccharr0escaped_quotesr~tag_state_namerjs r1_make_string_statezTads3Lexer._make_string_states% ww)1 3$%02yy/C/1yy/C!E 34Ht4!' V]]BD-txx*v-~>@ng78<! #  E  J D.'34:OO E %     ] 3sAG!cP|rdnd}|rdnd}|rdnd|rdndd}|rtjntj}|r d |d |d nd}|||d fd tfdt t tjd|zfdt t tjd|zfdt d|zfdt jdfd|d||d|dtjfd|d||d|dt jftdtdtddt jfg S) Nrr{3,}rrrrqtrrrr2z (\s|\\\n)+z (=)(\\?")zdqs/%sz (=)(\\?')zsqs/%srzuqs/%sz\\?>r"rrrrz ([^\s=><\\z|\\.)+rrrz[\\{}&]) rrQrJr rrrrr Attributer)rrrr quantifier state_namer0rs r1_make_tag_statezTads3Lexer._make_tag_stateBst4 &WC (.B!6v38NO !' V]]rz ["\'\s&{<}\\])rrQrJrZrr) terminator host_triple host_doublerr0 host_charhost_quantifier host_tokenrs r1_make_attribute_value_statez&Tads3Lexer._make_attribute_value_state[s","4","4&,, 'DT %0'c&1V]]v}} (/8C.1 "? 3Z J$ 4&@* M F  L ! J NG=>Doo O #u /Dt# N   J  u %  r9ruz\{rz;+z(?=(argcount|break|case|catch|continue|default|definingobj|delegated|do|else|for|foreach|finally|goto|if|inherited|invokee|local|nil|new|operator|replaced|return|self|switch|targetobj|targetprop|throw|true|try|while)\b)blockrlz)(z*)(\() whitespacerm) block?/rootmore/parametersmain/parametersz\++z[^\s!"%-(*->@-_a-z{-~]+z(?!\Z)z main/rootz main/basic)r"object-body/no-bracesclassesrrr/r")r"rr.z\}r3)rrz?)()block?rrz*)(\{)z*)(:))rrrz->|%smainzmain/object-bodyz*)(=?))r"morerr2r)r"rz(?=[\[\'"<(:]))r"rr grammar-rules)r"rrz block/basicz[;:]+z default\b)rr block/embedz>>) more/embedrr'r!)r" more/listr)r" more/inner main/innerrrz\*|\.{3}z(?i)0x[\da-f]+z5(\d+\.(?!\.)\d*|\.\d+)([eE][-+]?\d+)?|\d+[eE][-+]?\d+z0[0-7]+z\d+z""")r"tdqsz''')r"tsqsr)r"dqsr)r"sqszR""")r"tdqrzR''')r"tsqrzR")r"dqrzR')r"sqrz(extern)(%s+)(object\b)z(function|method)(%s*)(\())r"rrrz(modify)(%s+)(grammar\b))r"rr3rz#(new)(%s+(?=(?:function|method)\b))z(object)(%s+)(template\b))r"templatez(string)(%s+)(template\b))r" function-namez>(argcount|definingobj|invokee|replaced|targetobj|targetprop)\bz(break|continue|goto)\b)r"labelz0(case|extern|if|intrinsic|return|static|while)\bzcatch\b)r"catchr)r"rrz(default|do|else|finally|try)\bz(dictionary|property)\b)r" constantszenum\b)r"enumzexport\b)r"rz(for|foreach)\b)r"rrz(function|method)\b)r"rrz grammar\b)r"rrz inherited\b)r" inheritedzlocal\b)r" more/local main/localz)(modify|replace|switch|throw|transient)\bznew\b)r"rz (nil|true)\bzobject\bz operator\b)r"operatorz propertyset\b)r" propertysetrzself\bz template\bz(__objref|defined)(%s*)(\())r" more/__objrefrz delegated\ba*(__DATE__|__DEBUG|__LINE__|__FILE__|__TADS_MACRO_FORMAT_VERSION|__TADS_SYS_\w*|__TADS_SYSTEM_NAME|__TADS_VERSION_MAJOR|__TADS_VERSION_MINOR|__TADS3|__TIME__|construct|finalize|grammarInfo|grammarTag|lexicalParent|miscVocab|sourceTextGroup|sourceTextGroupName|sourceTextGroupOrder|sourceTextOrder)\bz more/basic)rrz\.{3}z->|\.\.z (?=;)|[:)\]]z\?)rmore/conditionalrz(is|not)(%s+)(in\b)z[^\s!"%-_a-z{-~]+rrz:(?!:)rr)r"rrr+z (in|step)\brrrz[,:]rz*)(?=:)z+)(z\[+rz(:)(%s*(?=[?=,:)]))z[?\]]+z[:)])r" multimethod?r)more/parameterrrz(?=[,)])rz multimethod\brmoder(z(error|warn)\brz\(+)r" variablesrztoken\brz\)+z grammar-tagra!"""([^\\"<]|""?(?!")|\\"+|\\.|<(?!<))+("{3,}|<<)|R"""([^\\"]|""?(?!")|\\"+|\\.)+"{3,}|'''([^\\'<]|''?(?!')|\\'+|\\.|<(?!<))+('{3,}|<<)|R'''([^\\']|''?(?!')|\\'+|\\.)+'{3,}|"([^\\"<]|\\.|<(?!<))+("|<<)|R"([^\\"]|\\.)+"|'([^\\'<]|\\.|<(?!<))+('|<<)|R'([^\\']|\\.)+'|([^)\s\\/]|/(?![/*]))+|\)r;z(\[)(%s*)(badness)z ->|%s|[()]rz(<<([^>]|>>>|>(?!>))*>>)+z(?=?z*[({])rr#)r"rrrznegate\br)rrrz(?=;)z->|\?|%srz transient\brz[:,]rrz,+z property\brr^z*#(z|[^\n]|(?<=\\)\n)*\n?z\\+\n+%s*#?|\n+|([^\S\n]|\\)+rrrrrz \{\{|\}\}|%srz<<\s*(as\s+decreasingly\s+likely\s+outcomes|cycling|else|end|first\s+time|one\s+of|only|or|otherwise|(sticky|(then\s+)?(purely\s+)?at)\s+random|stopping|(then\s+)?(half\s+)?shuffled|\|\|)\s*>>z<<(%(_(z$|\\?.)|[\-+ ,#]|\[\d*\]?)*\d*\.?\d*(z/|\\?.)|\s*((else|otherwise)\s+)?(if|unless)\b)?)rrrrz'(?i)&(#(x[\da-f]+|\d+)|[a-z][\da-z]*);?TFz tdqs/listinglistingz tsqs/listingz dqs/listingz sqs/listingztdqs/xmpxmpztsqs/xmpzdqs/xmpzsqs/xmptdqttsqtdqtsqtzdqs/tdqtzdqs/tsqtzdqs/dqtzdqs/sqtz[^\\"]+z\\"*z"{3,}z[^\\']+z\\'*z'{3,}z\\"?z\\'?) zsqs/tdqtzsqs/tsqtzsqs/dqtzsqs/sqtzuqs/tdqtzuqs/tsqtzuqs/dqtzuqs/sqtrrrrc + Kd|jd|jd}d}tj||fi|D]\}}}|dk(rH|tjurt j |d|jd|jd|rzd}nw|tjur_|dk(rt j d |z|rd}nDt j d |z|r|dz }n%t j d |z|r |dz}nt}|||fyw) Nrz*#*rifz+(0|nil)z*$\n?r%z %sel(if|se)\bz%sifz %sendif\b)_ws_pprr'r rIr3match)rr+kwargsppif_false_levelr/r0r&s r1r'z!Tads3Lexer.get_tokens_unprocessedCs KK 5  - -dD CF C & E5%"W__,HH $++t{{<=BD%&NGOO+&!+((#3b#8%@)*'B,6&!+,"3U;&!+#E% %% &sD Dc>d}d|vsd|vr|dz }d|vr d|vr|dz }|S)zThis is a rather generic descriptive language without strong identifiers. It looks like a 'GameMainDef' has to be present, and/or a 'versionInfo' with an 'IFID' field.r__TADS GameMainDefg? versionInfoIFIDg?r\r6s r1r8zTads3Lexer.analyse_textZs? t }4 cMF D Vt^ cMF r9)>r:r;r<r=rr?r@r3rBrArC_comment_single_comment_multilinerrD _no_quote _operator_wsrrrrr rrrrWrrrrrr(r ReservedrLrrrrSrROctrUrQrJRegexrXrYrMr rKr[ ExceptionrZr rIr}rPEntityr r'r8r\r9r1rrs DiGI II $E6O7%G EI3I /1C DC*9;M NF48'0d18 4-4 .O t  K / K >@DW N"' , dmmU4|%D!# B D L ! [ ! ' / k * O$  L ! I J %O, ; ' K!8 9 M "" -O6  ;  K ) K ( ; 4 5"' - dmmU4|%D!# = ?"' , dmmU4|%D!#$+ -!&s + dmmU4|%D!# : < L !  !; 7 & '% 7O^  L !!& , dmmU4|%D!#$< > H   _Ol  K!2 3 L !  J L 5 6  mO|  K!2 3 L ! FO }OF  { # K ) K ( 7++ , %s + djj%L"A!# $ L !  GOZ  M " . / [Ob  FOOV , M " 4 5 cOl U L !U K!9 :U K!> ?U K"H I U +v . U  F 3U F \\6 #U V ,U V^^V ,U V]]$4 5U V]]$4 5U 6==/ 2U 6==/ 2U fll$4 5!U "fll$4 5#U $FLL/ 2%U &FLL/ 2'U *(# - g&&d,(G&&( )+U 0+S 0 g&&d,(G!# E G1U 8)3 . g&&d,(G&&( > @9U @4c 9 g&&d,(G H JAU D*C / g&&d,(G&&()= ?EU J*C / guT>&&()B DKU RO \\6 #SU V()9)9;L MWU XA    YU \))+< =]U ^)) 7 9_U b01A1A6 JcU d()9)9 " $eU h((*: ;iU j'**,< =kU l !1!1 1 3mU p$W%5%5 0 2qU t7++ 9 ;uU xW--/D EyU z)) 1 3{U ~:7;K;K  U Bw''): ;CU Dg.. 7EU F'**,M NGU HG,,.B CIU Jw// , .KU N ++V 4OU PG,,.B CQU T,c 1 hmmU4|%D !B DUU ZX]] +[U ^8 :>v  O_U mOX  L ! D& ! FO YOb  K!6 7 K!1 2 { # f - k6 2 L ! & ) HB C #c ) hmmU4|%Dmm% &"5 )  cO~  L ! FO OH  & ) FO IOR  FOOX . FO SO\  K!E F ))+A B FO ]Of  K ( ; - Wl 3 FO  gOt  DMM6 * L ! uO|  ; - FO }OF  k6 * FO GOP "' - dmmU4|%D Ev O!&U 3 djj%L"Amm%&, .[ ! L ! DMM6 * FO  QOf  #c ) k5\#B C E  $ k#; < ; 1 2 ; : ; FO gOx  $ ' FO yO@  w / L ! FO AON  ; ' Hf % FO OOX   0 L ! YO`  [ ! DNN$9 : L ! aOj  L ! "7 8 ) * kOt  [ ! K / ; 0 DJJ  L !  uOB  L !* ,2<<  A  C OV  H  L ! "S ( k5\#BG L  Y & 4 DMM " H   W Oj ; ' k Op  )6?? ;"' -tV < DMM6 * L !  q O|  ; < = L ! DJJ ' FO  } OH  (-- 0 L !  ! FO  I OT  K!G H K!8 9 L ! U O^  tV $ H  W-- . L ! 9 $k 2 DMM "  _ Or  +v . '**F 3 W-- . DJJ ' L ! FO  s OB  k7 + L ! ; ' FO  C ON  K ; ' G,, - DMM " L !  O O\  DJJ ' L ! FO ] Of  K K ( L ! DMM "  g Ov 179K L __  gnn - !2!2 3 - 6 =  w OH  V]]F + V]]F + 6==% ( 6==% (  I OT  w & 6 U OZ 8:@ J =DWN __C E  [ Ol  7 E m Or "4.s Ot "4/u Ov !%.w Ox !%/y Oz *4yA{ O| *4 B} O~ )%yA O@ )% BA OB &tT59C OD &tUE:E OF %eT59G OH %eUE:I ON d+O OP e,Q OR ud+S OT ue,U OV /dDAW OX /dEBY OZ .tUDA[ O\ .tUEB] O^ 0dDA/dEB.tUDA.tUEB/ 4F/ 4G.y%F.y%G & fll # v||V , 6<<   & fll # v||V , 6<<   & fll # 6<< (  & fll # 6<< ( UOFb&. r9r)r=r3pygments.lexerrrrrrrr pygments.tokenr r r r rrrrrr__all__rrrrr\r9r1rsn ((( F:FRI-:I-X F< Fl l r9