i7i|dZddlZddlmZmZmZmZmZmZm Z m Z m Z ddl m Z mZmZmZmZmZmZmZmZgdZGddeZGdd eZGd d eZeZGd d eZGddeZGddeZGddeZGddeZGddeZ GddeZ!GddeZ"GddeZ#y)z pygments.lexers.dsls ~~~~~~~~~~~~~~~~~~~~ Lexers for various domain-specific languages. :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N) ExtendedRegexLexer RegexLexerbygroupswordsincludedefaultthisusingcombined) TextCommentOperatorKeywordNameStringNumber Punctuation Whitespace) ProtoBufLexer ZeekLexer PuppetLexerRslLexer MscgenLexerVGLLexer AlloyLexerPanLexer CrmshLexer ThriftLexer FlatlineLexer SnowballLexerceZdZdZdZdZddgZdgZdZde fd e fd e jfd e jfed d d efedd ej fdej"fdeej&e dfdeej(e dfdeej(e dfdefdefdej.fdej.fdej.fdej0fdej2fdej4fd efd!eej:e efd"efgd#ej&d$fed$gd#ej>d$fed$gd#ed$fed$gd%Z y&)'rz5 Lexer for Protocol Buffer definition files. zProtocol Bufferz/https://developers.google.com/protocol-buffers/protobufprotoz*.protoz1.4z[ \t]+z[,;{}\[\]()<>]z/(\\\n)?/(\n|(.|\n)*?[^\\]\n)z/(\\\n)?\*(.|\n)*?\*(\\\n)?/)importoptionoptionalrequiredrepeatedreservedrpackedctype extensionstomaxrpcreturnsoneofsyntax\bprefixsuffix)int32int64uint32uint64sint32sint64fixed32fixed64sfixed32sfixed64floatdoubleboolstringbytesr6(true|false)\bz(package)(\s+)packagez(message|extend)(\s+)messagez(enum|group|service)(\s+)typez\".*?\"z\'.*?\'z'(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[LlUu]*z(\d+\.\d*|\.\d+|\d+[fF])[fF]?z(\-?(inf|nan))\bz0x[0-9a-fA-F]+[LlUu]*z0[0-7]+[LlUu]*z \d+[LlUu]*z[+-=]z([a-zA-Z_][\w.]*)([ \t]*)(=)z[a-zA-Z_][\w.]* [a-zA-Z_]\w*#pop)rootrHrIrJN)!__name__ __module__ __qualname____doc__nameurlaliases filenames version_addedrrr Single MultilinerrTypeConstantr Namespace DeclarationrrFloatHexOctIntegerrr AttributerClasstokens]/mnt/ssd/data/python-lab/ChefSystem/venv/lib/python3.12/site-packages/pygments/lexers/dsls.pyrrs D ;C7#G IM #  , -w~~ > ,g.?.? @ <EJRWY   >GLM\\    0 0 1 ):):J G S % g)): 6  C ) g)): 6 @   7 F -v|| < &,, / %vzz 2  + FNN + x , dnnj( ; =  &A! Fdnnf 5 FO djj& 1 FO dF + FO W/FrerceZdZdZdZdZdgZdgZdgZdZ e de d d e je d d fd e je d dfdeej"edfdeej&edfdeeeej.eefe de ddefdefdefg defdefgdefdefdej6fgde j8fgd e jdfd e jfgd!e jdfd"e jfgd#ej"dfedgd$ej<dfedgd%efd&ej>fd'ej&fe d(d)*ej"fe d+d)*ejBfe d,d)d)-ejDfgd.e#jHfd/e#jJfd0e#jLfgd1 Z'y2)3rz+ For Thrift interface definitions. Thriftzhttps://thrift.apache.org/thriftz*.thriftzapplication/x-thrift2.1 whitespacecomments" stringescapedqsz\'sqsz(namespace)(\s+) namespacez*(enum|union|struct|service|exception)(\s+)classzE((?:(?:[^\W\d]|\$)[\w.\[\]$<>]*\s+)+?)((?:[^\W\d]|\$)[\w$]*)(\s*)(\()keywordsnumbersz[&=]z[:;,{}()<>\[\]]z[a-zA-Z_](\.\w|\w)*\n\s+#.*$z//.*?\n/\*[\w\W]*?\*/z\\([\\nrt"\'])rLz [^\\"\n]+'z [^\\\'\n]+z[a-z*](\.\w|\w)*rKz1(async|oneway|extends|throws|required|optional)\brGz(const|typedef)\b) cpp_namespace cpp_includecpp_type java_package cocoa_prefixcsharp_namespacedelphi_namespace php_namespace py_module perl_packageruby_namespacesmalltalk_categorysmalltalk_prefixxsd_all xsd_optional xsd_nillable xsd_namespace xsd_attrsrr3rF)voidrCbytei16i32i64rBrDbinarymaplistsetslistsenum)eBEGINEND __CLASS____DIR____FILE__ __FUNCTION____LINE__ __METHOD__ __NAMESPACE__abstractaliasandargsasassertbeginbreakcasecatchrrclonecontinuedeclaredefrdeldeletedodynamicelifelseelseifelsifend enddeclareendfor endforeachendif endswitchendwhileensureexceptexecfinallyrAforforeachfunctionglobalgotoif implementsr$ininline instanceof interfaceislambdamodulenativenewnextnilnotorpasspublicprintprivate protectedraiseredorescueretryregisterreturnselfsizeofstaticsuperswitch synchronizedthenr throw transienttryundefunlessunsigneduntilusevarvirtualvolatilewhenwhilewithxoryieldr4z1[+-]?(\d+\.\d+([eE][+-]?\d+)?|\.?\d+[eE][+-]?\d+)z[+-]?0x[0-9A-Fa-f]+z [+-]?[0-9]+) rMrkrlrnrorprqrrrsrtN)(rNrOrPrQrRrSrTrU mimetypesrVrrDoubler rWrrr[rr\r r rFunctionrrr rXEscaperrbrZrrYReservedrr]r^r`rcrdrerfrrTs D &CjG I'(IM L ! J  6==(>5"A B FMM8NE#B C **J7 F :,,j97 DeDk4==*h G I J  I  h   - #T *# (J  Z  g   !  1 1 2  . 6==& ) 6== ) 6==& ) FMM * !$..& 9 FO djj& 1 FO B7 K  0 0 1 !7#6#6 7 ( 16 7   "'(\\   E$U%,&  ' #% NB6<< P #VZZ 0 V^^ , m[Frerc$eZdZdZdZdZddgZddgZdZd Z d Z d Z e d e d e de de de de de de dde jfe dg defdefdeeefgdefgdej&fdej&fdeej&eej&fgeddd !ej,fged"d #ej.fd$eej.eej2eej.fd%eeee j4eeeej.fd&eeee eefd'eeeej.ee j4fged(d #efd)efd*ej6fd+eej8ee j8fgd,ed-fd.ej<d/fd0ej>fd1e fd2e fd3e fd4e zd5ze jBfe d6ze jDfe d ze jDfd7e jFfe d8ze zd9zefg d:efd;efde$fd?e$fgd@ee e$fdAe fgdBejJfdCejJfd,edDfdEefgdBejJfdFej<dDfdEej<fgdG Z&yH)Irz For Zeek scripts. Zeekzhttps://www.zeek.org/zeekbroz*.zeekz*.broz2.5z [0-9a-fA-F]z(((\d*\.?\d+)|(\d+\.?\d*))([eE][-+]?\d+)?z[A-Za-z0-9][-A-Za-z0-9]*rkrl directives attributestypesrsliterals operators punctuationz2((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)(?=\s*\() identifiersrurvz(\\)(\n)rwz)@(load-plugin|load-sigs|load|unload)\b.*$z=@(DEBUG|DIR|FILENAME|deprecated|if|ifdef|ifndef|else|endif)\bz(@prefixes)(\s*)((\+?=).*)$)redefprioritylogr&radd_func delete_func expire_func read_expire write_expire create_expirer persistentrotate_interval rotate_sizeencrypt raw_output mergeable error_handler type_column deprecated&r3r4)anyenumrecordrtablevectorrhookeventaddrrCcountrBfileintintervalpatternportrDsubnettimerFzA(opaque)(\s+)(of)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)\bzR(type)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)(\s*)(:)(\s*)\b(record|enum)\bz<(type)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)(\s*)(:)zI(redef)(\s+)(record|enum)(\s+)((?:[A-Za-z_]\w*)(?:::(?:[A-Za-z_]\w*))*)\b)rexportrrrrrrrr fallthroughrrraddrrtimeoutschedulez (print)\bz(global|local|const|option)\bz4(module)(\s+)(([A-Za-z_]\w*)(?:::([A-Za-z_]\w*))*)\brmrDz/(?=.*/)regexz(T|F)\bz \d{1,5}/(udp|tcp|icmp|unknown)\bz(\d{1,3}.){3}(\d{1,3})\bzH\[([0-9a-fA-F]{0,4}:){2,7}([0-9a-fA-F]{0,4})?((\d{1,3}.){3}(\d{1,3}))?\]z0[xX]z+\bz!\s*(day|hr|min|sec|msec|usec)s?\bz(\d+)\bz(\.z)+z[!%*/+<=>~|&^-]z([-+=&|]{2}|[+=!><-]=)z(in|as|is|of)\bz\??\$z [{}()\[\],;.]z[?:]z([a-zA-Z_]\w*)(::)rKz\\.z%-?[0-9]*(\.[0-9]+)?[DTd-gsx]rL./) rMrkrlrrrrsrrrrrDr/N)'rNrOrPrQrRrSrTrUrV_hex_float_hrrrrrr r PreprocrrPseudorYrWordrbr\r[rRegexrZrr^r]r`rrrcrdrerfrrs D !CuoG7#IM D 8F $B L ! J  L ! L ! G  J  J  K M " B   M "  J  Z (44 5 g  :7?? K Mw _ +XgooGOO.- . 1 E + ^^   C   \\  Rz8==*gll[ ]c*djj*hPZ\c\h\hi kM*dJI KZ*gllJ S U% .3     7 # -w/B/B C D**JG I  68 $ &,, 0 )) *1& 9)& 1YZ` a_v %vzz 2 : :FLL I e^V\\ *  (&[2  %v .5 <  * & 1  / x  { + k "  #HT;$? @ d # V]] # -v}} = 66 " 6N  V]] # 6<< ( 6<<  QMFrerc eZdZdZdZdZdgZdgZdZe de de d e d e d e d d e fde fgde e e fde jfgdefdej fgdej$fde ej&e ee fdej&fgdej,fdej,fdej.fdej0fdej2j4fdej2fgedddefgd efd!efgd"Zy#)$rz' For Puppet configuration DSL. Puppetzhttps://puppet.com/puppetz*.pp1.6rlrsnamesrtrstringsz []{}:(),;[]rvz (\s*)(#.*)$z/(\\\n)?[*](.|\n)*?[*](\\\n)?/z(=>|\?|<|>|=|\+|-|/|\*|~|!|\|)z(in|and|or|not)\brKz(\$\S+)(\[)(\S+)(\])z\$\S+z'(\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?j?z\d+[eE][+-]?[0-9]+j?z 0[0-7]+j?z0[xX][a-fA-F0-9]+z\d+Lz\d+j?)mabsentalertrauditaugeasbeforercheckrrcomputer configured containedcreate_resourcescritcrondebugrdefinedefined directoryrremergerrr extlookupfailfalser# filebucket fqdn_randgeneratehostrr$rinfoinheritsinline_template installedrk5loginlatestlinkloglevelmacauthorization mailaliasmaillistmcxmd5mountmountednagios_commandnagios_contactnagios_contactgroup nagios_hostnagios_hostdependencynagios_hostescalationnagios_hostextinfonagios_hostgroupnagios_servicenagios_servicedependencynagios_serviceescalationnagios_serviceextinfonagios_servicegroupnagios_timeperiodnodenoopnoticenotifyrHpresentpurgedrealizeregsubst resourcesrolerouterrunningr.scheduled_tasksearch selboolean selmoduleservicesha1 shellquotesplitsprintfssh_authorized_keysshkeystagestopped subscribetagtaggedtemplatetidytruer unmounteduser versioncmpvlanwarningyumrepozfszonezpoolz(?i)r3r4z "([^"])*"z '(\\'|[^'])*')rMrlrr=rtrsr>N)rNrOrPrQrRrSrTrUrVrrrrr rXrr7rraVariablerrr]r_r^r`Longrrrcrdrerfrr^s D CjGIM J  J  G  I  K I  [ ) Z   Xj': ; .0A0A B / 9 !8== 1 dnn - $ht}}k/5{'D E t}} %  8 F $fll 3 6:: & !6:: . fnn)) * v~~ & ,"(-7./  <6 " v & KJFrerceZdZdZdZdZdgZdgZdgZdZ e je jzZ ded d d efd ej fd efdefdefdefdeeej*eej*fdeeej*eeeefdej.fdej0fdefdej4fdefdej:fdej<fdej>fdefdefgiZ dZ!y)rz RSL is the formal specification language used in RAISE (Rigorous Approach to Industrial Software Engineering) method. RSLz"http://en.wikipedia.org/wiki/RAISErslz*.rslztext/rsl2.0rM)JBoolCharIntNatRealr Unitabsallalwaysrraxiomcardrchannelchaosrr devt_relationdomelemsrrrexistsextendrSrhdhiderrrinds initialiser$interisinlenletlocal ltl_assertionobjectofoutpostprereadrealrngschemeskipstopswaprtheory test_casetltransition_systemrrJunionrrvaluevariablerrwritez~isinz-inflistz-infsetz-listz-setr3r4z(variable|value)\bz--.*?\nz<:.*?:>z \{!.*?!\} /\*.*?\*/z^([ \t]*)([\w]+)([ \t]*)(:[^:])z5(^[ \t]*)([\w]+)([ \t]*)(\([\w\s,]*\))([ \t]*)(is|as)z \b[A-Z]\w*\brGz".*"z\'.\'zq(><|->|-m->|/\\|<=|<<=|<\.|\|\||\|\^\||-~->|-~m->|\\/|>=|>>|\.>|\+\+|-\\|<->|=>|:-|~=|\*\*|<<|>>=|\+>|!!|\|=\||#)z [0-9]+\.[0-9]+([eE][0-9]+)?[fd]?z 0x[0-9a-f]+[0-9]+rvr0cPtjd|tjyy)zP Check for the most common text in the beginning of a RSL file. zscheme\s*.*?=\s*class\s*typeNg?)rerI)texts rf analyse_textzRslLexer.analyse_texts% 994dBDD A M NreN)"rNrOrPrQrRrSrTrUrrVr MULTILINEDOTALLflagsrrr\r rrrrr rYrZrrrrr]r^r`rcrrdrerfrrsY D .CgG I IM LL299 $E   !&e 5 #G$7$7 8  !  ! 7 # 7 # /* z4==2: ; E j$--TW& 'gll +  0 0 1 f  v{{ #F  1&,, ? VZZ (  ' Z 4LG$ &FPrerc teZdZdZdZdZddgZdgZdZdZ d e jfd e jfd ejfd e fd efde j fe e j"fdedfdefedg dedfe dze zee j*eeeefdefedgdej2fdej4fdefgdZy)rz For Mscgen files. Mscgenz!http://www.mcternan.me.uk/mscgen/mscgenmscz*.mscr<z(\w+|"(?:\\"|[^"])*")zmsc\bzO(hscale|HSCALE|width|WIDTH|wordwraparcs|WORDWRAPARCS|arcgradient|ARCGRADIENT)\bz)(abox|ABOX|rbox|RBOX|box|BOX|note|NOTE)\bz (\.|-|\|){3}zT(?:-|=|\.|:){2}|<<=>>|<->|<=>|<<>>|<:>|->|=>>|>>|=>|:>|-x|-X|<-|<<=|<<|<=|<:|x-|X-|=z\*z\[attrsz \{|\}|,|;rlz\]rLz (\s*)(=)(\s*),z (?://|#).*?\nz/\*(?:.|\n)*?\*/z [ \t\r\n]+)rMrrlN)rNrOrPrQrRrSrTrUrV_varrrYrPropertyrr7Builtinrrrrrarrr rWrXrcrdrerfrrs( D -CG IM #Dw|| $,-1]] <:8== I g &)+3 4 DLL ! 4== ! K ) ; ' J % *K ( $ $t + dnnj(J ;  J   w~~ . '"3"3 4 J ' ;"Frerc eZdZdZdZdZdgZdgZdZe je jze jzZ ddejfd ej"fd efd ej"fd efd efdeeej,fdefdefdefdefg iZy)rz, For SampleManager VGL source code. VGLz-http://www.thermoscientific.com/samplemanagervglz*.rpfr<rMz \{[^}]*\}rz(if|then|else|endif|while|do|endwhile|and|or|prompt|object|create|on|line|with|global|routine|value|endroutine|constant|global|set|join|library|compile_option|file|exists|create|copy|delete|enable|windows|name|notprotected)(?! *[=<>.,()])z$(true|false|null|empty|error|locked)z[~^*#!%&\[\]()<>|+=:;,./?-]z"[^"]*"z(\.)([a-z_$][\w$]*)z&[0-9][0-9]*(\.[0-9]+(e[+\-]?[0-9]+)?)?z [a-z_$][\w$]*z[\r\n]+rvN)rNrOrPrQrRrSrTrUrVrrr IGNORECASErr rXrrZrrrrrarrrcrdrerfrr%s D 9CgG IM LL299 $r}} 4E  7,, - )) *I   5g6F6F G +X 6  #Xh%G H 6 ? t $  $ Z  FrercJeZdZdZdZdZdgZdgZdgZdZ e je jzZ dZd Zd efZd ed feefed efded fgeeed fgeded feed fgedeed fgdej2fdej2fdej4fedeej8edfdeej:edfdej<fdej>fdefdefdefdefdefdej@fdeeedfd eeed!fd"efd#efeefd$efd%e!jDfeefd&efgd'Z#y())rz For Alloy source code. Alloyzhttp://alloy.mit.edualloyz*.alsz text/x-alloyrz[a-zA-Z_][\w]*"*z"\b(\\\\|\\[^\\]|[^"\\])*"z[^\S\n]+z (extends)\brLr\{funz--.*?$z//.*?$rz(module|open)(\s+)rz(sig|enum)(\s+)sigz(iden|univ|none)\bz (int|Int)\bz2(var|this|abstract|extends|set|seq|one|lone|let)\bz"(all|some|no|sum|disj|when|else)\bz-(run|check|for|but|exactly|expect|as|steps)\bz)(always|after|eventually|until|release)\bz,(historically|before|once|since|triggered)\bz(and|or|implies|iff|in)\bz(fun|pred|assert)(\s+)z (fact)(\s+)factz&!|#|&&|\+\+|<<|>>|>=|<=>|<=|\.\.|\.|->z[-+/*%=<>&!^|~{}\[\]().\';]z[:,]rru)rrrrrMN)$rNrOrPrQrRrSrTrUrrVrrrriden_rex string_rexr text_tuplerrrrrrr rWrXrr[r\rZrYr7rr`rcrdrerfrrFs D CiG I IM LL299 $E"H.Jz*JWf - t   ;  Hf %    tV $  Hf % tV $ EN  (  '  ' 7,, -  "HW->-> $K  '*=*=z!JE R "G$4$4 5 W\\ * BG L 2G < =w G 97 C feej>feej>feej>fdej@fdedeeeefd ed!eeeej>fd"efd#efgiZ!y$)%rzE Lexer for crmsh configuration files for Pacemaker clusters. Crmshzhttp://crmsh.github.io/crmshpcmkz*.crmshz*.pcmkrj)ru primitivegrouprmslocation colocationorderfencing_topology rsc_ticket rsc_templateproperty rsc_defaults op_defaults acl_target acl_grouprr~rz (?![\w#$-])rF)paramsmeta operationsopruler utilization)rrdeny)rr)rM not_defined)in_rangedatespecrz*(?:tag|ref|reference|attribute|type|xpath)z(?:lt|gt|lte|gte|eq|ne)z(?:string|version|number)z:(?:Master|Started|Slave|Stopped|start|promote|demote|stop)rMz ^(#.*)(\n)?z!([\w#$-]+)(=)("(?:""|[^"])*"|\S+)z(node)(\s+)([\w#$-]+)(:)z([+-]?([0-9]+|inf)):z(?:z:)?(z )(?![\w#$-])z#[a-z]+(?![\w#$-])(z)(:)("(?:""|[^"])*"|\S+)z([\w#$-]+)(?:(:)(z))?(?![\w#$-])z(\\(?=\n)|[\[\](){}/:@])z\s+|\nN)"rNrOrPrQrRrSrTrUrrVrelemsubaclbin_relun_opsdate_expacl_modbin_opsval_qualrsc_role_actionrr rrrarrrrrr7rrcrdrerfrrs D #CGH%IIM  &  'D %-; =C ). ACM.9G -n EF7OHz>=racosrzall-butzall-with-defaultszall-with-numeric-defaultrasinatanavgz avg-windowz bin-centerz bin-countcallzcategory-countceilcondz cond-windowconscoscoshr"z diff-windowdivz ensure-valuezensure-weighted-valueepochz epoch-dayz epoch-fieldsz epoch-hourzepoch-millisecondz epoch-minutez epoch-monthz epoch-secondz epoch-weekdayz epoch-yearexpffieldz field-propfieldsfilterrfloorheadrrintegerlanguager levenshteinzlinear-regressionrlnr log10rrzmatches?r.maximumrdmeanmedianminminimummissingz missing-countzmissing? missing_countmodmode normalizernth occurrencesr percentilezpercentile-label populationzpopulation-fractionpow preferredz preferred?zquantile-labelrandzrand-intz random-valuezre-quoterrz replace-firstrestroundz row-numberz segment-labelrsha256sinsinhsqrtsquarezstandard-deviationstandard_deviationstrsubssumz sum-squaresz sum-window sum_squaressummaryz summary-noz summary-strtailtantanhz to-degreesz to-radiansvariance vectorizezweighted-random-valuewindowwinnowzwithin-percentiles?zz-scorez(?!#)[\w!$%*+<=>?/.#-]+rMz[,]+rvz -?\d+\.\d+z-?\d+z 0x-?[a-f\d]+z"(\\\\|\\[^\\]|[^"\\])*"z \\(.|[a-z]+)_ rFz(?<=\()z(\(|\))N)rNrOrPrQrRrSrTrUrrV special_formsbuiltins valid_namer rrr]r`r^rrSymbolrrrrrrrrcrdrerfrrs D 0ClGI"#IMMH2,J  dO Z FLL ) v~~ & fjj ))& 1 fkk *6== != -w 78C ($,, 7* $dmm 4 ' %= !FrerceZdZdZdZdZdgZdgZdZdZ dZ d Z d Z d Z d ejfd ej"fedgde defdej*fdej.dfdefdej4fdej.fdefeddej:feddej:dfeddej"feddejfde d e d!eej:eej>fd"e d#e d$e fd%efgd&ed'fed(ded)fedgd*e d+fgd*e d,fgd-Z d0d/Z!y.)1r z) Lexer for Snowball source code. Snowballzhttps://snowballstem.org/snowballz*.sblrZz\n\r\t c P|jtj|fi|yN)_reset_stringescapesr__init__)roptionss rfrzSnowballLexer.__init__ls! !!###D4G4rec d|_d|_y)Nry)_start_end)rs rfrz"SnowballLexer._reset_stringescapesps  recfd}|S)Nc3K|j}|j}tjdtj|j dj }tjdtj|jdj }d} }|t|kry|r|||}||jdztj|jdf|jddk(rQ||jdztj|jdf|jjn||jdztj|jdf|j}|||}||jztj|jf|jd|jk7rd|jd<n"|j}d }|t|kry||jz|_yw) Nz([^]*)(.)rryrT)startr4rcompilerrrrrrrWstackpoprrpos) lexerrctxsrrDrr do_stringdo_string_firsts rfcallbackz'SnowballLexer._string..callbackus A;;=DZZ3ryy'>&?v FGMMFZZ3ryy'<&=V DEKKFC'ID /"4-Eekk!n,fmmU[[^KK{{1~,%++a.0&--QOO ekk!n,fmmU[[^KK))+CtS)%++-' EE;;q>UZZ/$,CIIbMiik !D /"%))+oCGs H+I 0I rd)rrs` rf_stringzSnowballLexer._stringts &2rec|jd|_|jd|_ttj t tjt tj|||S)N) r4rrrrrrrr)rrrs rf_stringescapeszSnowballLexer._stringescapessV{{1~ [[^ 'x((*fmmZ '',eS: :rezlen\bzlenof\broot1[z]+z\d+ryrDz[()]rxz//.*z)[!*+\-/<=>]=|[-=]>|<[+-]|[$*+\-/<=>?\[\]])rgethexamongrLdecimal backwardmoder3rF)r>booleansintegersroutines externals groupingsr)!rrrrhopnonrrrrRrlooprtestrrSunsetatmarkattachrgopastinsertrepeatrtomarkatleastatlimitreversesetmarktolimitsetlimit backwards substring)sizelimitcursormaxintminintz(stringdef\b)([z]*)([^z]+)z(stringescapes\b)([z]*)(.)([rz [A-Za-z]\w*r.rL)rlenof)rrz[^']*'TF)rMrrrDrNcP|jtj|||Sr)rrget_tokens_unprocessed)rrcontexts rfrz$SnowballLexer.get_tokens_unprocesseds# !!#!88tWMMre)NN)"rNrOrPrQrRrSrTrUrV_wsrrrrrrrr7rrrr`rrWrr rXrrrrrrcrrdrerfr r _s D %ClG IM C58:t|| $  ' G  #b\: & V^^ $ 6==( + k "  1 1 2 gnn % 98 D $,13    !).0   } .. 7< = ]]  B! \\  uF3%s 3 g&& FMM B D#C5V <   T "9 >K ( #E 2D % ' G    &  ' [0FdNrer )$rQrpygments.lexerrrrrrrr r r pygments.tokenr r rrrrrrr__all__rrrBroLexerrrrrrrrrr rdrerfrs ,,,$$$ J :J:zf*fR[ [| T*Tn<z<~.*.bzBAAHAzAHBBJIJIXkN&kNre