Ë
    !täiÅ  ã                   ód   — 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y)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.                  j0                  fdefdej4                  fdefdefdej8                  fdej<                  fdej>                  fde jB                  d fd!e jD                  d"fgd#efd$e jB                  d%fgd&efd'e jD                  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$y.)/r   z%
    For UrbiScript source code.
    Ú
UrbiScriptÚ
urbiscriptz*.uzapplication/x-urbiscriptz!https://github.com/urbiforge/urbiz1.5c              #   ó   K  — |j                  d«      }|j                  d«      }|j                  d«      }t        |«      }|j                  «       t        |f–— |xj                  t        |«      z  c_        |j                  |j                  «       |z      dk7  r@d|z   dz   }|j                  «       t        |f–— |xj                  t        |«      z  c_        y ||j                  |j                  «       |j                  «       |z    z   dz   }|j                  «       t        j                  |f–— |j                  «       |z   dz   |_        y ­w)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	            úc/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/pygments/lexers/urbi.pyÚblob_callbackzUrbiscriptLexer.blob_callback&   s  è ø€ Ø Ÿ;™; q›>ÐØ—[‘[ “^ˆ
ØŸ™ A›ˆÜ˜Ó&ˆ	Ø�k‰k‹mœVÐ%5Ð5Ò5Ø�Š”3Ð'Ó(Ñ(�ð �8‰8�E—I‘I“K )Ñ+Ñ,°Ò3Ø˜mÑ+¨dÑ2ˆFØ—+‘+“-¤¨Ð/Ò/Ø�GŠG”s˜6“{Ñ"�GØð  §¡¨%¯)©)«+°e·i±i³kÀ)Ñ6KÐ!LÑLÈsÑRˆ	Ø�k‰k‹mœVŸ]™]¨IÐ5Ò5Ø—)‘)“+ 	Ñ)¨AÑ-ˆ�ùs   ‚EE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   r9   gš™™™™™©?rD   © )r   r%   s     r'   Úanalyse_textzUrbiscriptLexer.analyse_text†   s0   € ð ˆà˜ÑØ�d‰NˆFà˜$ÑØ�d‰NˆFàˆó    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      s  „ ñð €DØˆn€GØ�€IØ+Ð,€IØ
-€CØ€Mà�I‰I€Eò.ð. �TˆNà˜Ð!Ø�W×&Ñ&¨	Ð2Ø2°GÐ<Ùð 2ð
 ;@ôAð ðñ ð Gð PUôVð ×Ñðð 7¸Ð@à,¨gÐ6Ø/°×1DÑ1DÐEØ'¨×)9Ñ)9Ð:Ùð "ð +0ô1ð �\‰\ðð ˜DŸL™L×/Ñ/Ð0à/°Ð:ØOØ�]‰]ðà˜[Ð)Ø" KÐ0Ø˜tŸz™zÐ*Ø §
¡
Ð+ð8Ø9?¿¹ðGð �6—=‘= /Ð2Ø�6—=‘= /Ð2ðo8
ðt 6°}ÐEØ(¨&¯-©-¸Ð@ð
ð
 6°}ÐEØ(¨&¯-©-¸Ð@ð
ð �w×(Ñ(Ð)Ø�W×&Ñ&¨Ð0Ø�W×&Ñ&¨Ð/Ø�g×'Ñ'Ð(ð	
ñG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÷÷ ó ð Ð
€ô}Ð(õ }r·   