Ë
    !täiÄH  ã                   ó¢   — d Z ddlZddlmZmZ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 g d¢Z G d„ de«      Z G d„ d	e«      Z G d
„ de«      Zy)zñ
    pygments.lexers.unicon
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for the Icon and Unicon languages, including ucode VM.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚbygroupsÚwordsÚusingÚthis)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuation)Ú	IconLexerÚ
UcodeLexerÚUniconLexerc                   ó  — 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efd	ej                  fdefd
ej"                  dfd eej"                  eej&                  «      dfdej(                  fdej*                  fdej,                  fdej,                  fdej,                  fdej"                  f eddd¬«      ej,                  f eddd¬«      ej2                  f ed«      defdefdej:                  fdefdefd ee ee«      «      fde fd e fd!efgd"e!jD                  fd#e!jF                  fd$e!jH                  fgd%e d&fd'e d(fd)ej2                  f ed*«      gd%e d+fgd,e d(fd-ejJ                  fd.e fd/ej,                  f ed*«      gd0œZ&y1)2r   z!
    For Unicon source code.
    ÚUniconÚuniconz*.icnztext/uniconzhttps://www.unicon.orgú2.4ú[^\S\n]+ú#.*?\núclass|method|procedureÚ
subprogramú(record)(\s+)(\w+)Útype_defú^(#line|\$C|\$Cend|\$define|\$else|\$endif|\$error|\$ifdef|\$ifndef|\$include|\$line|\$undef)\bú(&null|&fail)\báù  &allocated|&ascii|&clock|&collections|&column|&col|&control|&cset|&current|&dateline|&date|&digits|&dump|&errno|&errornumber|&errortext|&errorvalue|&error|&errout|&eventcode|&eventvalue|&eventsource|&e|&features|&file|&host|&input|&interval|&lcase|&letters|&level|&line|&ldrag|&lpress|&lrelease|&main|&mdrag|&meta|&mpress|&mrelease|&now|&output|&phi|&pick|&pi|&pos|&progname|&random|&rdrag|&regions|&resize|&row|&rpress|&rrelease|&shift|&source|&storage|&subject|&time|&trace|&ucase|&version|&window|&x|&yú(by|of|not|to)\bz (global|local|static|abstract)\bzpackage|link|import)ÚbreakÚcaseÚcreateÚcriticalÚdefaultÚendÚallÚdoÚelseÚeveryÚfailÚifÚimportÚinitialÚ	initiallyÚ	invocableÚnextÚrepeatÚreturnÚsuspendÚthenÚthreadÚuntilÚwhileú\b©ÚprefixÚsuffix(+  ÚAbortÚabsÚacosÚActiveÚAlertÚanyÚAnyÚArbÚArbnoÚargsÚarrayÚasinÚatanÚatanhÚAttribÚBalÚbalÚBgÚBreakÚBreakxÚcalloutÚcenterÚcharÚchdirÚchmodÚchownÚchrootÚ	classnameÚClipÚCloneÚcloseÚcofailÚcollectÚColorÚ
ColorValueÚcondvarÚconstructorÚcopyÚCopyAreaÚcosÚCoupleÚcryptÚcsetÚctimeÚ	dbcolumnsÚdbdriverÚdbkeysÚdblimitsÚ	dbproductÚdbtablesÚdelayÚdeleteÚdetabÚdisplayÚDrawArcÚ
DrawCircleÚDrawCubeÚ	DrawCurveÚDrawCylinderÚDrawDiskÚ	DrawImageÚDrawLineÚ	DrawPointÚDrawPolygonÚDrawRectangleÚDrawSegmentÚ
DrawSphereÚ
DrawStringÚ	DrawTorusÚdtorÚentabÚ	EraseAreaÚ
errorclearÚEventÚ	eventmaskÚEvGetÚEvSendÚexecÚexitÚexpÚEyeÚFailÚfcntlÚfdupÚFenceÚfetchÚFgÚ
fieldnamesÚfilepairÚFillArcÚ
FillCircleÚFillPolygonÚFillRectangleÚfindÚflockÚflushÚFontÚforkÚ	FreeColorÚ	FreeSpaceÚfunctionÚgetÚgetchÚgetcheÚgetegidÚgetenvÚgeteuidÚgetgidÚgetgrÚgethostÚgetpgrpÚgetpidÚgetppidÚgetpwÚ	getrusageÚgetservÚGetSpaceÚgettimeofdayÚgetuidÚglobalnamesÚGotoRCÚGotoXYÚgtimeÚhardlinkÚiandÚicomÚIdentityMatrixÚimageÚInPortÚinsertÚInt86ÚintegerÚioctlÚiorÚishiftÚistateÚixorÚkbhitÚkeyÚkeywordÚkillÚleftÚLenÚlistÚloadÚloadfuncÚ
localnamesÚlockÚlogÚLowerÚlstatÚmanyÚmapÚmatchÚ
MatrixModeÚmaxÚmemberÚmembernamesÚmethodnamesÚmethodsÚminÚmkdirÚmoveÚ
MultMatrixÚmutexÚnameÚNewColorÚNormalsÚNotAnyÚnumericÚopenÚopenclÚoprecÚordÚOutPortÚPaletteCharsÚPaletteColorÚ
PaletteKeyÚ
paramnamesÚparentÚPatternÚPeekÚPendingÚpipeÚPixelÚ	PlayAudioÚPokeÚpopÚ	PopMatrixÚPosÚposÚprocÚpullÚpushÚ
PushMatrixÚ
PushRotateÚ	PushScaleÚPushTranslateÚputÚQueryPointerÚRaiseÚreadÚ	ReadImageÚreadlinkÚreadsÚreadyÚrealÚreceiveÚRefreshÚRemÚremoveÚrenameÚreplÚreverseÚrightÚrmdirÚRotateÚRposÚRtabÚrtodÚrunerrÚsaveÚScaleÚseekÚselectÚsendÚseqÚserialÚsetÚsetenvÚsetgidÚsetgrentÚ
sethostentÚsetpgrpÚsetpwentÚ
setserventÚsetuidÚsignalÚsinÚsortÚsortfÚSpanÚspawnÚsqlÚsqrtÚstatÚstaticnamesÚstopÚ	StopAudioÚstringÚ	structureÚSucceedÚSwiÚsymlinkÚ
sys_errstrÚsystemÚsyswriteÚTabÚtabÚtableÚtanÚTexcoordÚTextureÚ	TextWidthÚ	TranslateÚtrapÚtrimÚtruncateÚtrylockÚtypeÚumaskÚUncoupleÚunlockÚuptoÚutimeÚvariableÚVAttribÚwaitÚWAttribÚWDefaultÚWFlushÚwhereÚWinAssociateÚ	WinButtonÚWinColorDialogÚWindowContentsÚWinEditRegionÚWinFontDialogÚ
WinMenuBarÚWinOpenDialogÚWinPlayMediaÚWinSaveDialogÚWinScrollBarÚWinSelectDialogÚwriteÚ
WriteImageÚwritesÚWSectionÚWSyncÚnumberszc<@|<<@|>@|>>@|\.>|->|===|~===|\*\*|\+\+|--|\.|~==|~=|<=|>=|==|=|<<=|<<|>>=|>>|:=:|:=|->|<->|\+:=|\|ú"(?:[^\\"]|\\.)*"ú'(?:[^\\']|\\.)*'ú[*<>+=/&!?@~\\-]z\^ú(\w+)(\s*|[(,])ú[\[\]]z<>|=>|[()|:;,.'`{}%&?]ú\n+ú3\b([+-]?([2-9]|[12][0-9]|3[0-6])[rR][0-9a-zA-Z]+)\bú'[+-]?[0-9]*\.([0-9]*)([Ee][+-]?[0-9]*)?ú\b([+-]?[0-9]+[KMGTPkmgtp]?)\bú\(©ú#popÚformal_partÚ;ru  ú"[^"]+"|\w+Úrootrv  ú\)ú\w+Ú,ú(:string|:integer|:real)\b©ry  ri  r   r   rv  N©'Ú__name__Ú
__module__Ú__qualname__Ú__doc__rã   ÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedÚreÚ	MULTILINEÚflagsr	   r
   ÚSingler   ÚDeclarationr   ÚTypeÚPreProcÚConstantÚReservedr   r   ÚFunctionr   r   r   Ú	Characterr   r   r   r   ÚHexÚFloatÚIntegerÚVariableÚtokens© ó    úe/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/pygments/lexers/unicon.pyr   r      sT  „ ñð €DØˆj€GØ�	€IØ�€IØ
"€CØ€Mà�L‰L€Eð ˜$ÐØ˜Ÿ™Ð'Ø˜$ÐØ&¨×(;Ñ(;¸\ÐJØ"Ù�g×)Ñ)¨4°·±Ó>À
ðLð5Ø6=·o±oðGà ×!1Ñ!1Ð2ðð  '×/Ñ/ð1ð ! '×"2Ñ"2Ð3Ø0°'×2BÑ2BÐCØ# W×%8Ñ%8Ð9Ùð 4ð
 =BÈ%ôQð ×Ñðñ ð =ðz "'¨uô{=6ð| �]‰]ð}>ñ~ �IÓð6Ø7?ðAà! 6Ð*Ø! 6×#3Ñ#3Ð4Ø  (Ð+Ø�HÐØ¡¨$±°d³Ó!<Ð=Ø˜Ð$Ø&¨Ð4Ø�TˆNðSj
ðX DÀVÇZÁZÐPØ7¸¿¹ÐFØ.°·±Ð?ð
ð �KÐ!8Ð9Ø�; Ð'Ø˜TŸ]™]Ð+Ù�F‹Oð	
ð �K Ð/ð
ð �K Ð(Ø�T—]‘]Ð#Ø�;ÐØ*¨G×,<Ñ,<Ð=Ù�F‹Oð
ñuA�Frš  r   c                   ó  — e Zd ZdZdZdgZddgZg ZdZdZ	e
j                  Zdefd	ej                  fdefd
ej"                  dfd eej"                  eej&                  «      dfdej(                  fdej*                  fdej,                  fdej,                  fdej,                  fdej"                  f eddd¬«      ej,                  f eddd¬«      ej2                  f ed«      defdefdej:                  fdefd ee ee«      «      fde fde fd efgd!e!jD                  fd"e!jF                  fd#e!jH                  fgd$e d%fd&e d'fd(ej2                  f ed)«      gd$e d*fgd+e d'fd,ejJ                  fd-e fd.ej,                  f ed)«      gd/œZ&y0)1r   z
    Lexer for Icon.
    ÚIconÚiconz*.iconz*.ICONz https://www2.cs.arizona.edu/iconz1.6r   r   r   r   r   r   r   r   r    r!   z(global|local|static)\bÚlink)r"   r#   r$   r&   r'   r(   r)   r*   r+   r,   r-   r/   r1   r2   r3   r4   r5   r6   r8   r9   r:   r;   )ÿr?   r@   rA   rB   rC   rG   rH   rI   rJ   rK   rL   rN   rO   rR   rS   rT   rU   rV   rW   rX   rZ   r[   r\   r]   r^   r_   r`   ra   rc   rd   re   rf   rg   rh   ri   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r€   r�   r‚   rƒ   r„   r…   r†   r‡   rˆ   r‰   rŠ   r‹   rŒ   r�   rŽ   r�   r‘   r“   r”   r•   r—   r˜   r™   rš   r›   rœ   r�   rž   r    r¡   r¢   r£   r¤   r¥   r§   r²   r³   r´   rµ   r¶   r·   r¸   r¹   rº   r»   r¼   r½   r¾   r¿   rÀ   rÁ   rÂ   rÃ   rÄ   rÅ   rÆ   rÇ   rÈ   rÉ   rÊ   rË   rÌ   rÍ   rÎ   rÏ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rØ   rÙ   rÚ   rÛ   rÜ   rÝ   rÞ   rß   rà   rá   râ   rã   rä   rå   rç   rè   ré   rê   rë   rì   rí   rî   rï   rð   rñ   rò   ró   rô   rõ   rö   rø   rù   rú   rû   rü   rý   rþ   rÿ   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r"  r#  r*  r+  r,  r-  r.  r0  r1  r2  r3  r4  r5  r7  r8  r:  r;  r<  r=  r>  r@  rA  rB  rC  rD  rE  rF  rG  rH  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  rS  rT  rU  rV  rW  rX  rY  rZ  r[  r\  r]  r^  r_  r`  ra  rb  rc  rd  re  rf  rg  rh  ri  zS===|~===|\*\*|\+\+|--|\.|==|~==|<=|>=|=|~=|<<=|<<|>>=|>>|:=:|:=|<->|<-|\+:=|\|\||\|rj  rk  rl  rm  rn  z<>|=>|[()|:;,.'`{}%\^&?]ro  rp  rq  rr  rs  rt  rw  ru  rx  ry  rv  rz  r{  r|  r}  r~  Nr  r™  rš  r›  r   r   ¦   sK  „ ñð €DØˆh€GØ˜8Ð$€IØ€IØ
,€CØ€Mà�L‰L€Eð ˜$ÐØ˜Ÿ™Ð'Ø˜$ÐØ&¨×(;Ñ(;¸\ÐJØ"Ù�g×)Ñ)¨4°·±Ó>À
ðLð5Ø6=·o±oðGà ×!1Ñ!1Ð2ðð  '×/Ñ/ð1ð ! '×"2Ñ"2Ð3Ø'¨×)9Ñ)9Ð:Ø�g×)Ñ)Ð*Ùð *ð
 38ÀôGð ×Ñðñ ð :ðt "'¨uôu:6ðv �]‰]ðw;ñx �IÓð+Ø,4ð6à! 6Ð*Ø! 6×#3Ñ#3Ð4Ø  (Ð+Ø¡¨$±°d³Ó!<Ð=Ø˜Ð$Ø(¨+Ð6Ø�TˆNðKf
ðP DÀVÇZÁZÐPØ7¸¿¹ÐFØ.°·±Ð?ð
ð �KÐ!8Ð9Ø�; Ð'Ø˜TŸ]™]Ð+Ù�F‹Oð	
ð �K Ð/ð
ð �K Ð(Ø�T—]‘]Ð#Ø�;ÐØ*¨G×,<Ñ,<Ð=Ù�F‹Oð
ñm}�Frš  r   c                   óV  — e Zd ZdZdZdgZg d¢Zg ZdZdZ	e
j                  Zddef edd	d	¬
«      ej                   f edd	d	¬
«      ef edd	d	¬
«      ej$                  f edd	d	¬
«      ej&                  fdej*                  fdej,                  fdej,                  fdefdefdefgiZd„ Zy)r   z%
    Lexer for Icon ucode files.
    Úucode)z*.uz*.u1z*.u2zhttp://www.unicon.orgr   ry  z(#.*\n))ÚconÚdeclendr'   ÚglobalÚimplr1   ÚlabrŸ  ÚlocalÚrecordÚuidÚunionsÚversionr:   r;   )ÚcolmÚfilenÚlineÚsynt)YÚasgnÚbangÚbscanÚcatÚccaseÚchfailÚcoactr]   ÚcomplÚcoretr$   rh   ÚdiffÚdivÚdupÚefailÚeinitr'   ÚeqvÚeretÚerrorÚescanÚesuspÚfieldÚgotoÚinitÚintÚinterÚinvokeÚkeywdÚlconcatÚlexeqÚlexgeÚlexgtÚlexleÚlexltÚlexneÚlimitÚllistÚlsuspÚmarkÚmark0ÚminusÚmodÚmultÚnegÚneqvÚnonnullÚnoopÚnullÚnumberÚnumeqÚnumgeÚnumgtÚnumleÚnumltÚnumneÚpfailÚplusÚpnullrù   ÚpowerÚpretrý   ÚpsuspÚpush1Úpushn1ÚrandomÚrasgnÚrcvÚrcvbkr  ÚrefreshÚrswapÚsdupÚsectÚsizeÚsndÚsndbkÚstrÚsubscÚswapÚtabmatÚtallyÚtobyÚtraceÚunmarkÚvalueÚvar)rC   r#   ÚendcaseÚendeveryÚendifÚ	endifelseÚ	endrepeatÚ
endsuspendÚenduntilÚendwhiler+   r-   Úifelser3   r5   r8   r9   z\d+(\s*|\.$|$)z[+-]?\d*\.\d+(E[-+]?\d+)?z[+-]?\d+\.\d*(E[-+]?\d+)?z"(<>|=>|[()|:;,.'`]|[{}]|[%^]|[&?])z\s+\bz[\w-]+c                 ót   — d}d| v r|dz  }d| v r|dz  }d| v r|dz  }d| v r	d| v r|dz  }d	| v r	d
| v r|dz  }|S )z}endsuspend and endrepeat are unique to this language, and
        \self, /self doesn't seem to get used anywhere else either.r   r  gš™™™™™¹?r  z:=g{®Gáz„?Ú	procedurer'   z\selfz/selfg      à?r™  )ÚtextÚresults     r›  Úanalyse_textzUcodeLexer.analyse_text†  sq   € ð ˆà˜4ÑØ�c‰MˆFà˜$ÑØ�c‰MˆFà�4‰<Ø�d‰NˆFà˜$Ñ 5¨D¡=Ø�d‰NˆFð
 �tÑ ¨DÑ 0Ø�c‰MˆFàˆrš  N)r€  r�  r‚  rƒ  rã   r„  r…  r†  r‡  rˆ  r‰  rŠ  r‹  r
   r   r   r’  r   r�  r�  r   r–  r•  r   r	   r˜  r  r™  rš  r›  r   r   3  s  „ ñð €DØˆi€GÚ'€IØ€IØ
!€CØ€Mà�L‰L€Eð 	Ø˜Ð!Ùð ð  Uô,ð �]‰]ð	ñ ð 1à Uô,ð ðñ ð  ð: ).°eô;=ð< × Ñ ð="ñ> ð 
ð  %ô)ð �]‰]ðð  §¡Ð/Ø)¨6¯<©<Ð8Ø)¨6¯<©<Ð8Ø2°KÐ@Ø�tÐØ˜ÐðCB
ðD€FóLrš  r   )rƒ  r‰  Úpygments.lexerr   r   r   r   r   r   Úpygments.tokenr	   r
   r   r   r   r   r   r   Ú__all__r   r   r   r™  rš  r›  Ú<module>r     sW   ðñó 
ç L× L÷÷ ó ò 5€ôO�*ô OôdJ�
ô JôZj�õ jrš  