§
    XŠtjÅ  ã                   ól   — d Z ddlZddl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.urbi
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for UrbiScript language.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)ÚExtendedRegexLexerÚwords)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚUrbiscriptLexerc                   ó  — e Zd ZdZdZdgZdgZdgZdZdZ	e
j        Zd„ Zd	efd
efdej        dfdef edd¬¦  «        ef edd¬¦  «        ej        fdefdefdej        fdej        f edd¬¦  «        ej        fdej        j        fdefdej        fdefdefdej        fdej        fdej        fde j!        d fd!e j"        d"fgd#efd$e j!        d%fgd&efd'e j"        d%fgd(ej        fdej        d)fd*ej        d%fd+ej        fgd,œZ#d-„ Z$d.S )/r   z%
    For UrbiScript source code.
    Ú
UrbiScriptÚ
urbiscriptz*.uzapplication/x-urbiscriptz!https://github.com/urbiforge/urbiz1.5c              #   óî  K  — |                      d¦  «        }|                      d¦  «        }|                      d¦  «        }t          |¦  «        }|                     ¦   «         t          |fV — |xj        t          |¦  «        z  c_        |j        |                     ¦   «         |z            dk    rEd|z   dz   }|                     ¦   «         t          |fV — |xj        t          |¦  «        z  c_        d S ||j        |                     ¦   «         |                     ¦   «         |z   …         z   dz   }|                     ¦   «         t          j        |fV — |                     ¦   «         |z   dz   |_        d S )Né   é   é   ú)z\B(z)()	ÚgroupÚintÚstartr
   ÚposÚlenÚtextÚendÚEscape)	ÚlexerÚmatchÚctxÚtext_before_blobÚ
blob_startÚblob_size_strÚ	blob_sizeÚresultÚ	blob_texts	            úR/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pygments/lexers/urbi.pyÚblob_callbackzUrbiscriptLexer.blob_callback&   sH  è è € Ø Ÿ;š; q™>œ>ÐØ—[’[ ‘^”^ˆ
ØŸš A™œˆÝ˜Ñ&Ô&ˆ	Ø�kŠk‰mŒm�VÐ%5Ð5Ð5Ð5Ð5ØˆŒ•3Ð'Ñ(Ô(Ñ(ˆŒð Œ8�E—I’I‘K”K )Ñ+Ô,°Ò3Ð3Ø˜mÑ+¨dÑ2ˆFØ—+’+‘-”-¥¨Ð/Ð/Ð/Ð/ØˆGŒG•s˜6‘{”{Ñ"ˆGŒGØˆFð  ¤¨%¯)ª)©+¬+°e·i²i±k´kÀ)Ñ6KÐ*KÔ!LÑLÈsÑRˆ	Ø�kŠk‰mŒm�Vœ]¨IÐ5Ð5Ð5Ð5Ø—)’)‘+”+ 	Ñ)¨AÑ-ˆŒˆˆó    z\s+z//.*?\nz/\*Úcommentz"(every|for|loop|while)(?:;|&|\||,))ÚassertÚatÚbreakÚcaseÚcatchÚclosureÚcomplÚcontinueÚdefaultÚelseÚenumÚeveryÚexternalÚfinallyÚforÚfreezeifÚifÚnewÚonleaveÚreturnÚstopifÚswitchÚthisÚthrowÚtimeoutÚtryÚ	waituntilÚwheneverÚwhilez\b)Úsuffix)$ÚasmÚautoÚboolÚcharÚ
const_castÚdeleteÚdoubleÚdynamic_castÚexplicitÚexportÚexternÚfloatÚfriendÚgotoÚinliner   ÚlongÚmutableÚ	namespaceÚregisterÚreinterpret_castÚshortÚsignedÚsizeofÚstatic_castÚstructÚtemplateÚtypedefÚtypeidÚtypenameÚunionÚunsignedÚusingÚvirtualÚvolatileÚwchar_tz&(emit|foreach|internal|loopn|static)\bz(private|protected|public)\bz(var|do|const|function|class)\bz(true|false|nil|void)\b)EÚBarrierÚBinaryÚBooleanÚCallMessageÚChannelÚCodeÚ
ComparableÚ	ContainerÚControlÚDateÚ
DictionaryÚ	DirectoryÚDurationÚEnumerationÚEventÚ	ExceptionÚ
ExecutableÚFileÚFinalizableÚFloatÚ
FormatInfoÚ	FormatterÚGlobalÚGroupÚHashÚInputStreamÚ	IoServiceÚJobÚKernelÚLazyÚListÚLoadableÚLobbyÚLocationÚLoggerÚMathÚMutexÚnilÚObjectÚ	OrderableÚOutputStreamÚPairÚPathÚPatternÚPositionÚ	PrimitiveÚProcessÚProfileÚ
PseudoLazyÚPubSubÚRangeIterableÚRegexpÚ	SemaphoreÚServerÚ	SingletonÚSocketÚ
StackFrameÚStreamr
   ÚSystemÚTagÚTimeoutÚ	TraceableÚTrajectoryGeneratorÚTripletÚTupleÚUObjectÚUValueÚUVarz
(?:this)\bz(?:[-=+*%/<>~^:]+|\.&?|\|\||&&)z?(?:and_eq|and|bitand|bitor|in|not|not_eq|or_eq|or|xor_eq|xor)\bz[{}\[\]()]+z(?:;|\||,|&|\?|!)+z[$a-zA-Z_]\w*z0x[0-9a-fA-F]+zV(?:[0-9]+(?:(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?)?((?:rad|deg|grad)|(?:ms|s|min|h|d))?)\bú"ústring.doubleú'ústring.singlez%((?:\\\\|\\"|[^"])*?)(\\B\((\d+)\)\()z(\\\\|\\[^\\]|[^"\\])*?"z#popz%((?:\\\\|\\'|[^'])*?)(\\B\((\d+)\)\()z(\\\\|\\[^\\]|[^'\\])*?'z[^*/]z#pushz\*/z[*/])Úrootr±   r³   r*   c                 ó.   — d}d| v r|dz  }d| v r|dz  }|S )z_This is fairly similar to C and others, but freezeif and
        waituntil are unique keywords.r   r:   gš™™™™™©?rE   © )r   r%   s     r'   Úanalyse_textzUrbiscriptLexer.analyse_text†   s6   € ð ˆà˜ÐÐØ�d‰NˆFà˜$ÐÐØ�d‰NˆFàˆr)   N)%Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedÚreÚDOTALLÚflagsr(   r   r   Ú	Multiliner   r   ÚReservedÚDeclarationÚConstantr	   ÚBuiltinÚPseudor   ÚWordr   ÚOtherr   ÚHexr   r
   ÚDoubleÚSingleÚtokensr·   r¶   r)   r'   r   r      s7  € € € € € ðð ð €DØˆn€GØ�€IØ+Ð,€IØ
-€CØ€MàŒI€Eð.ð .ð .ð. �TˆNà˜Ð!Ø�WÔ&¨	Ð2Ø2°GÐ<ØˆUð 2ð
 ;@ðAñ Aô Að ðð ˆUð Gð PUðVñ Vô Vð Ôðð 7¸Ð@à,¨gÐ6Ø/°Ô1DÐEØ'¨Ô)9Ð:ØˆUð "ð +0ð1ñ 1ô 1ð Œ\ðð ˜DœLÔ/Ð0à/°Ð:ØOØŒ]ðà˜[Ð)Ø" KÐ0Ø˜tœzÐ*Ø ¤
Ð+ð8Ø9?¼ðGð �6”= /Ð2Ø�6”= /Ð2ðo8
ðt 6°}ÐEØ(¨&¬-¸Ð@ð
ð
 6°}ÐEØ(¨&¬-¸Ð@ð
ð �wÔ(Ð)Ø�WÔ&¨Ð0Ø�WÔ&¨Ð/Ø�gÔ'Ð(ð	
ðGIð I€FðVð ð ð ð r)   )r»   rÂ   Úpygments.lexerr   r   Úpygments.tokenr   r   r   r   r	   r
   r   r   Ú__all__r   r¶   r)   r'   ú<module>rÔ      sß   ððð ð 
€	€	€	à 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð Ð
€ð}ð }ð }ð }ð }Ð(ñ }ô }ð }ð }ð }r)   