Ë
    !täiÄ5  ã                   óÐ   — d Z ddlZddl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mZ ddlmZ ddlmZ g d¢Z G d„ d	e«      Z G d
„ de«      Z G d„ de«      Z G d„ de«      Zy)zÖ
    pygments.lexers.modeling
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for modeling languages.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚbygroupsÚusingÚdefault)	ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
Whitespace)Ú	HtmlLexer)Ú_stan_builtins)ÚModelicaLexerÚ	BugsLexerÚ	JagsLexerÚ	StanLexerc                   óÆ  — e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  ZdZd	efd
ej"                  fdej$                  fg ed«      dej*                  dfdefdefdej2                  fdej4                  fdej8                  fdej<                  fdej>                  fdej<                  dfdej@                  fdej<                  dfeefg ed«      dej<                  fdej<                  dfeejB                  df e"d«      g ed«      eejF                  df e"d«      gdej*                  dfdejH                  fd e%e&«      fd ej*                  fgd!œZ'y")#r   z#
    For Modelica source code.
    ÚModelicazhttp://www.modelica.org/Úmodelicaz*.moztext/x-modelicaz1.1z"(?:'(?:[^\\']|\\.)+'|[a-zA-Z_]\w*)z[\s\ufeff]+z//[^\n]*\n?z	/\*.*?\*/Ú
whitespaceÚ"Ústringz[()\[\]{},;]+z\.?[*^/+-]|\.|<>|[<>:=]=?z\d+(\.?\d*[eE][-+]?\d+|\.\d*)z\d+al  (abs|acos|actualStream|array|asin|assert|AssertionLevel|atan|atan2|backSample|Boolean|cardinality|cat|ceil|change|Clock|Connections|cos|cosh|cross|delay|diagonal|div|edge|exp|ExternalObject|fill|floor|getInstanceName|hold|homotopy|identity|inStream|integer|Integer|interval|inverse|isPresent|linspace|log|log10|matrix|max|min|mod|ndims|noClock|noEvent|ones|outerProduct|pre|previous|product|Real|reinit|rem|rooted|sample|scalar|semiLinear|shiftSample|sign|sin|sinh|size|skew|smooth|spatialDistribution|sqrt|StateSelect|String|subSample|sum|superSample|symmetric|tan|tanh|terminal|terminate|time|transpose|vector|zeros)\bak  (algorithm|annotation|break|connect|constant|constrainedby|der|discrete|each|else|elseif|elsewhen|encapsulated|enumeration|equation|exit|expandable|extends|external|firstTick|final|flow|for|if|import|impure|in|initial|inner|input|interval|loop|nondiscrete|outer|output|parameter|partial|protected|public|pure|redeclare|replaceable|return|stream|then|when|while)\bz(and|not|or)\bzI(block|class|connector|end|function|model|operator|package|record|type)\bÚclassz(false|true)\bzwithin\búpackage-prefixz(function|record)\bz(if|for|when|while)\bz#popz\\[\'"?\\abfnrtv]z6(?i)<\s*html\s*>([^\\"]|\\.)+?(<\s*/\s*html\s*>|(?="))z<|\\?[^"\\<]+)r   Úrootr   r   r   N)(Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedÚreÚDOTALLÚ	MULTILINEÚflagsÚ_namer   r	   ÚSingleÚ	Multiliner   r   ÚDoubler   r
   r   ÚFloatÚIntegerr   ÚBuiltinr   ÚReservedÚWordÚConstantÚClassr   Ú	NamespaceÚEscaper   r   Útokens© ó    úg/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/pygments/lexers/modeling.pyr   r      sÐ  „ ñð €DØ
$€CØˆl€GØ�€IØ"Ð#€IØ€Mà�I‰I˜Ÿ™Ñ$€Eà1€Eð ˜TÐ"Ø˜WŸ^™^Ð,Ø˜7×,Ñ,Ð-ð
ñ �LÓ!Ø�6—=‘= (Ð+Ø˜{Ð+Ø)¨8Ð4Ø-¨v¯|©|Ð<Ø�V—^‘^Ð$ð
*ð ,0¯<©<ð
9ð=ð ×Ñðð  §¡Ð.ðØ '× 0Ñ 0°'ð;à × 0Ñ 0Ð1Ø˜'×*Ñ*Ð,<Ð=Ø�DˆMð=
ñB �LÓ!Ø# W×%5Ñ%5Ð6Ø% w×'7Ñ'7¸Ð@Ø�D—J‘J Ð'Ù�F‹Oð
ñ �LÓ!Ø�D—N‘N FÐ+Ù�F‹Oð
ð �6—=‘= &Ð)Ø! 6§=¡=Ð1ØFÙ�9Óðà˜vŸ}™}Ð-ð
ñe9�Fr=   r   c                   óH  — e Zd ZdZdZg d¢ZdgZdZdZdZ		 dZ
	 d	efgd
ej                  fg ed«       ed«      d eej"                  ee«      fdej&                  fdj)                  dj+                  e	e
z   «      «      ej.                  fdefdefdefdefdefdefgdœZd„ Zy)r   z=
    Pygments Lexer for OpenBugs and WinBugs
    models.
    ÚBUGS)ÚbugsÚwinbugsÚopenbugsú*.bugz4https://www.mrc-bsu.cam.ac.uk/software/bugs/openbugsú1.6)>ÚabsÚarccosÚarccoshÚarcsinÚarcsinhÚarctanÚarctanhÚcloglogÚcosÚcoshÚ
cumulativeÚcutÚdensityÚdevianceÚequalsÚexprÚgammapÚilogitÚicloglogÚintegralÚlogÚlogfactÚloggamÚlogitÚmaxÚminÚphizpost.p.valueÚpowzprior.p.valueÚprobitzreplicate.postzreplicate.priorÚroundÚsinÚsinhÚsolutionÚsqrtÚstepÚtanÚtanhÚtruncÚinprodú
interp.linÚinverseÚlogdetÚmeanz
eigen.valsÚodeÚprodzp.valueMÚrankÚrankedzreplicate.postMÚsdÚsortÚsumÚDÚIÚFÚTÚC)ÚdbernÚdbinÚdcatÚdnegbinÚdpoisÚdhyperÚdbetaÚdchisqrÚddexpÚdexpÚdflatÚdgammaÚdgevÚdfÚdggammaÚdgparÚdloglikÚdlnormÚdlogisÚdnormÚdparÚdtÚdunifÚdweibÚdmultiÚddirchÚdmnormÚdmtÚdwishú\s+ú#.*$Úcommentsr   z(model)(\s+)(\{)ú(for|in)(?![\w.])ú({})(?=\s*\()Ú|z[A-Za-z][\w.]*ú&[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?ú\[|\]|\(|\)|:|,|;ú<-|~z	\+|-|\*|/ú[{}]©r   rœ   r   c                 óP   — t        j                  d| t         j                  «      ryy)Nz^\s*model\s*{gffffffæ?ç        ©r*   ÚsearchÚM©Útexts    r>   Úanalyse_textzBugsLexer.analyse_textº   s   € Ü�9‰9Ð% t¬R¯T©TÔ2Øàr=   N)r    r!   r"   r#   r$   r&   r'   r%   r)   Ú
_FUNCTIONSÚ_DISTRIBUTIONSr   r	   r/   r   r   r   r9   r   r5   ÚformatÚjoinr   r4   r   r
   r;   r¬   r<   r=   r>   r   r   b   s  „ ñð
 €DÚ-€GØ�	€IØ
@€CØ€Mð!€Jðð&€Nðð �TˆNð
ð
 �g—n‘nÐ%ð
ñ �JÓÙ�LÓ!à Ù�g×'Ñ'¨¨{Ó;ð=ð " 7×#3Ñ#3Ð4à×$Ñ$ T§Y¡Y¨z¸NÑ/JÓ%KÓLØ�\‰\ðð  Ð%à6¸Ð?à! ;Ð/ð �hÐà˜8Ð$à�kÐ"ð1
ñ"€FóHr=   r   c                   ó¬  — e Zd ZdZdZdgZddgZdZdZdZ	 e
d	„ d
D «       «      ZdZdefgdefgdej                   fdej"                  fg ed«       ed«      d eej*                  ee«      fdej.                  fdej0                  fdj3                  dj5                  e	ez   ez   «      «      ej6                  f ed«      defdefdefdefdefgdœZd„ Zy) r   z"
    Pygments Lexer for JAGS.
    ÚJAGSÚjagsz*.jagrD   z https://mcmc-jags.sourceforge.iorE   )2rF   rG   rH   rI   rJ   rK   rL   rN   rO   rM   rT   ÚexprX   ÚifelserW   rZ   r[   r\   r]   r`   ra   rb   rc   rd   re   rg   rh   ri   rj   rk   rl   rm   ro   r^   rp   r_   rr   rw   ru   rn   rs   rv   ÚtÚacosÚacoshÚasinÚasinhÚatanr{   ry   c              #   ó&   K  — | ]	  }d |› �–— Œ y­w)z[dpq]Nr<   )Ú.0Úxs     r>   Ú	<genexpr>zJagsLexer.<genexpr>Ø   s%   è ø€ ð QñPð ,-˜U 1 #œ;ñPùs   ‚)ÚbernÚbetaÚdchiqsqrr…   r†   rŠ   Úgammaz	gen.gammaÚlogisÚlnormÚnegbinÚnchisqrÚnormÚparÚpoisÚweib)r’   r“   Údbetabinr}   r~   r   r‚   r–   r—   r™   r˜   r•   ÚdbinomÚdchisqÚdnbinomÚdweibullÚddirichrš   z[a-zA-Z][\w.]*\bú(?s)/\*.*?\*/r›   rœ   r   z(model|data)(\s+)(\{)zvar(?![\w.])r�   rž   rŸ   Únamesr    r¡   r¢   z&\+|-|\*|\/|\|\|[&]{2}|[<>=]=?|\^|%.*?%r£   )r   rÓ   rœ   r   c                 óè   — t        j                  d| t         j                  «      rMt        j                  d| t         j                  «      ryt        j                  d| t         j                  «      ryyy)Nz^\s*model\s*\{z^\s*data\s*\{gÍÌÌÌÌÌì?z^\s*varg333333Ó?r   r§   rª   s    r>   r¬   zJagsLexer.analyse_text  sL   € Ü�9‰9Ð&¨¬b¯d©dÔ3Ü�y‰yÐ)¨4´·±Ô6ØÜ—‘˜: t¬R¯T©TÔ2Øààr=   N) r    r!   r"   r#   r$   r&   r'   r%   r)   r­   Útupler®   Ú_OTHER_DISTRIBUTIONSr   r   r	   r0   r/   r   r   r   r9   r   ÚDeclarationr5   r¯   r°   r4   r   r
   r;   r¬   r<   r=   r>   r   r   Á   s_  „ ñð €DØˆh€GØ˜'Ð"€IØ
,€CØ€Mð	€Jñ ñ QñPóQó Q€Nð
*Ðð �TˆNð
ð
 ! $Ð'ð
ð ˜w×0Ñ0Ð1à�g—n‘nÐ%ð	
ñ �JÓÙ�LÓ!à%Ù�g×'Ñ'¨¨{Ó;ð=à˜g×1Ñ1Ð2à! 7×#3Ñ#3Ð4ð ×$Ñ$ T§Y¡Y¨zØ,:ñ0;à,@ñ0Aó &Bó Cð �\‰\ðñ
 �GÓà6¸Ð?Ø! ;Ð/à�hÐà6¸ÐAØ�kÐ"ð3
ñ)€FóV	r=   r   c                   óX  — e Zd ZdZdZdgZdgZdZdZde	fgde
j                  fd	e
j                  fgd
ef ed«       ed«      dj                  dj!                  d«      «       eej&                  e	e«      fdefdefdj                  dj!                  ej,                  «      «      efdefdj                  dj!                  ej.                  «      «      ej0                  fd eeeeee«      fd eeeeee«      fdefdj                  dj!                  ej6                  «      «      ej:                  fdj                  dj!                  ej<                  «      «       eeeej:                  «      fdej:                  j>                  fdj                  dj!                  ej@                  «      «      ejB                  fdejD                  fde#jH                  fde#jH                  fde#jH                  fde#jH                  fde#jH                  fd e#jJ                  fd!efd"efd#efd$efd%efgd&œZ&d'„ Z'y())r   a  Pygments Lexer for Stan models.

    The Stan modeling language is specified in the *Stan Modeling Language
    User's Guide and Reference Manual, v2.17.0*,
    `pdf <https://github.com/stan-dev/stan/releases/download/v2.17.0/stan-reference-2.17.0.pdf>`__.
    ÚStanÚstanz*.stanzhttps://mc-stan.orgrE   rš   rÒ   z	(//|#).*$z"[^"]*"rœ   r   z({})(\s*)(\{{)rŸ   )Ú	functionsÚdataztransformed\s+?dataÚ
parametersztransformed\s+parametersÚmodelzgenerated\s+quantitiesztarget\s*\+=zjacobian\s*\+=z({})\bz
T(?=\s*\[)z/(<)(\s*)(upper|lower|offset|multiplier)(\s*)(=)z(,)(\s*)(upper)(\s*)(=)z
[;,\[\]()]rž   z(~)(\s*)({})(?=\s*\()z[A-Za-z]\w*__\bz[A-Za-z]\w*(?=\s*\()]z$[0-9]+(\.[0-9]*)?([eE][+-]?[0-9]+)?iz\.[0-9]+([eE][+-]?[0-9]+)?iz[0-9]+iz#[0-9]+(\.[0-9]*)?([eE][+-]?[0-9]+)?z\.[0-9]+([eE][+-]?[0-9]+)?z[0-9]+z[A-Za-z]\w*\bz<-|(?:\+|-|\.?/|\.?\*|=)?=|~z;\+|-|\.?\*|\.?/|\\|'|\.?\^|!=?|<=?|>=?|\|\||&&|%|\?|:|%/%|!r£   z\|r¤   c                 óP   — t        j                  d| t         j                  «      ryy)Nz^\s*parameters\s*\{g      ð?r¦   r§   rª   s    r>   r¬   zStanLexer.analyse_textl  s   € Ü�9‰9Ð+¨T´2·4±4Ô8Øàr=   N)(r    r!   r"   r#   r$   r&   r'   r%   r)   r   r	   r0   r/   r   r   r¯   r°   r   r   r9   r   r   ÚKEYWORDSÚTYPESÚTyper
   r   Ú	FUNCTIONSr   r4   ÚDISTRIBUTIONSÚPseudoÚRESERVEDr5   ÚFunctionr   r2   r3   r;   r¬   r<   r=   r>   r   r     sk  „ ñð €DØˆh€GØ�
€IØ
€CØ€Mð �TˆNð
ð ˜w×0Ñ0Ð1à˜7Ÿ>™>Ð*ð
ð ˜Ð á�JÓá�LÓ!à×%Ñ% d§i¡ið 1<ó '=ó >ñ �g×'Ñ'¨¨{Ó;ð=ð
 ˜gÐ&à Ð(à×Ñ˜dŸi™i¨×(?Ñ(?Ó@ÓAÀ7ÐKà˜GÐ$à×Ñ˜dŸi™i¨×(<Ñ(<Ó=Ó>ÀÇÁÐMð @Ù�h 
¨G°ZÀÓMðOà'Ù�k :¨w¸
ÀKÓPðRð ˜KÐ(à×$Ñ$ S§X¡X¨n×.FÑ.FÓ%GÓHÈ$Ï,É,ÐWØ%×,Ñ,¨S¯X©X°n×6RÑ6RÓ-SÓTÙ˜ :¨t¯|©|Ó<ð>ð   §¡×!4Ñ!4Ð5Ø×Ñ˜dŸi™i¨×(?Ñ(?Ó@ÓAÀ7×CSÑCSÐTà% t§}¡}Ð5à4°f·l±lÐCØ+¨V¯\©\Ð:Ø˜Ÿ™Ð&à3°V·\±\ÐBØ*¨F¯L©LÐ9à˜Ÿ™Ð'à˜tÐ$à,¨hÐ7àKÈXÐVà�kÐ"à�KÐ ðq9
ñC€FóJr=   r   )r#   r*   Úpygments.lexerr   r   r   r   r   Úpygments.tokenr   r	   r
   r   r   r   r   r   r   Úpygments.lexers.htmlr   Úpygments.lexersr   Ú__all__r   r   r   r   r<   r=   r>   Ú<module>rí      sl   ðñó 
ç HÕ H÷$÷ $õ $õ +Ý *â
B€ôH�Jô HôV\�
ô \ô~U�
ô UôpW�
õ Wr=   