
    5h&                         S r SSKrSSKJrJrJrJrJr  SSKJ	r	J
r
JrJrJrJrJrJrJrJr  / SQr " S S\5      r " S S	\5      r " S
 S\5      r " S S\5      r " S S\5      rg)z
pygments.lexers.algebra
~~~~~~~~~~~~~~~~~~~~~~~

Lexers for computer algebra systems.

:copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    N)Lexer
RegexLexerbygroupsdo_insertionswords)
TextCommentOperatorKeywordNameStringNumberPunctuationGeneric
Whitespace)GAPLexerGAPConsoleLexerMathematicaLexer
MuPADLexerBCLexerc                       \ rS rSrSrSrSrS/r/ SQrSr	SS	\
R                  4S
\4S\4S\4S\R                   4S\R"                  4S\4S\R&                  4S\R(                  4S\4S\4S\4/0rS rSrg)r      z
For GAP source code.
GAPhttps://www.gap-system.orggap)z*.gz*.gdz*.giz*.gap2.0rootz#.*$"(?:[^"\\]|\\.)*"\(|\)|\[|\]|\{|\}aV  (?x)\b(?:
                if|then|elif|else|fi|
                for|while|do|od|
                repeat|until|
                break|continue|
                function|local|return|end|
                rec|
                quit|QUIT|
                IsBound|Unbind|
                TryNextMethod|
                Info|Assert
              )\bzD(?x)\b(?:
                true|false|fail|infinity
              )\bzx(?x)\b(?:
                (Declare|Install)([A-Z][A-Za-z]+)|
                   BindGlobal|BIND_GLOBAL
              )\bz\.|,|:=|;|=|\+|-|\*|/|\^|>|<z=(?x)\b(?:
                and|or|not|mod|in
              )\bzC(?x)
              (?:\w+|`[^`]*`)
              (?:::\w+|`[^`]*`)*[0-9]+(?:\.[0-9]*)?(?:e[0-9]+)?\.[0-9]+(?:e[0-9]+)?.c                     Sn[         R                  " SU 5      (       a  US-  n[         R                  " SU 5      (       a  US-  n[        US5      $ )N        zl(InstallTrueMethod|Declare(Attribute|Category|Filter|Operation|GlobalFunction|Synonym|SynonymAttr|Property))gffffff?zm(DeclareRepresentation|Install(GlobalFunction|Method|ImmediateMethod|OtherMethod)|New(Family|Type)|Objectify)g      ?)researchmin)textscores     b/var/www/html/cementerio_25MayoBackend/env/lib/python3.13/site-packages/pygments/lexers/algebra.pyanalyse_textGAPLexer.analyse_textG   s`     99>?C
 
 SLE 99HIM
 
 SLE5#     N)__name__
__module____qualname____firstlineno____doc__nameurlaliases	filenamesversion_addedr	   Singler   r   r   r   ConstantBuiltinr
   WordVariabler   r   tokensr+   __static_attributes__r.   r-   r*   r   r      s     D
&CgG0IM 	gnn%!6*!;/  ]] \\	
 -h7 ]]$%)]]4 08$f-4LG$
&FPr-   r   c                   B    \ rS rSrSrSrSS/rS/rSrSr	S	r
S
 rS rSrg)r   [   z<
For GAP console sessions. Modeled after JuliaConsoleLexer.
zGAP sessionzgap-consolezgap-replz*.tstr   z2.14zgap-repl/euclidean.tstc           	   #   b  #    [        S0 U R                  D6nSnSn/ nSnSnUR                  SS9 GHJ  nUR                  S5      (       d  UR                  S5      (       a=  UR	                  [        U5      S[        R                  US S 4/45        XHSS  -  nSnSnOU(       dO  UR                  S	5      (       a9  UR	                  [        U5      S[        R                  US S
 4/45        XHS
S  -  nOyU(       a&  [        XRR                  U5      5       S h  vN   Sn/ nUR                  S5      (       d  U(       a  U[        R                  U4v   SnOU[        R                  U4v   SnU[        U5      -  nGMM     U(       a#  [        XRR                  U5      5       S h  vN   g g  N N7f)Nr    FT)keependszgap> zbrk>    z>    zError, r.   )r   options
splitlines
startswithappendlenr   Promptr   get_tokens_unprocessedErrorOutput)	selfr(   gaplexerstartcurcode
insertionsoutputerrorlines	            r*   rM   &GAPConsoleLexer.get_tokens_unprocessedf   s    +dll+
OOTO2Dw''4??7+C+C!!3w<1gnnd2Ah2O1P"QR8# 5 5!!3w<1gnnd2Ah2O1P"QR8#,"$C$CG$L N N N G!#J??9--44 E55SYE+ 3. $;;GDF F F NFs%   DF/F+BF/$F-%F/-F/c                 >    [         R                  " SU 5      (       a  gg)Nz^gap> g?r$   )r%   r&   )r(   s    r*   r+   GAPConsoleLexer.analyse_text   s    
 99Y%%r-   r.   N)r/   r0   r1   r2   r3   r4   r6   r7   r5   r8   _examplerM   r+   r?   r.   r-   r*   r   r   [   s:     Dj)G	I
&CM'H!FHr-   r   c                   >   \ rS rSrSrSrSr/ SQr/ SQr/ SQr	Sr
S	rS
rS rSS\4S\R                   4S\R"                  4S\R"                  4S\4S\R&                  4S\R&                  4S\R(                  4\" \5      \4\" \5      \4S\4S\R4                  4/0rSrg)r      z$
Lexer for Mathematica source code.
Mathematicaz#http://www.wolfram.com/mathematica/)mathematicammanb)z*.nbz*.cdfz*.nbpz*.ma)zapplication/mathematicaz#application/vnd.wolfram.mathematicaz+application/vnd.wolfram.mathematica.packagezapplication/vnd.wolfram.cdfr   ) z;;=z=.z!===z:=z->z:>z/.+-*/^z&&z||!z<>|z/;?@z//z/@z@@z@@@z~~z===&<>z<=z>=),;()[]{}c                 P    SR                  SR                  S U  5       5      5      $ )Nz({})ri   c              3   L   #    U H  n[         R                  " U5      v   M     g 7f)N)r%   escape).0entrys     r*   	<genexpr>1MathematicaLexer._multi_escape.<locals>.<genexpr>   s     %LG5bii&6&6Gs   "$)formatjoin)entriess    r*   _multi_escapeMathematicaLexer._multi_escape   s     }}SXX%LG%LLMMr-   r   z(?s)\(\*.*?\*\)z([a-zA-Z]+[A-Za-z0-9]*`)z([A-Za-z0-9]*_+[A-Za-z0-9]*)z#\d*z([a-zA-Z]+[a-zA-Z0-9]*)z
-?\d+\.\d*z
-?\d*\.\d+z-?\d+z".*?"\s+r.   N)r/   r0   r1   r2   r3   r4   r5   r6   r7   	mimetypesr8   	operatorspunctuationr   r	   r   	Namespacer=   r   FloatIntegerr   r
   r   r   r   r   r>   r?   r.   r-   r*   r   r      s     D
/C*G2I0I MI ;KN 	)($..9,dmm<dmm$'.FLL)FLL)v~~&9x(;-vT__%
Fr-   r   c                      \ rS rSrSrSrSrS/rS/rSr	S\
R                  4S	\
R                  S
4S\4S\4S\4S\R"                  4S\R$                  4S\R&                  R(                  4S\4S\R,                  4S\4S\" \R2                  \\5      4S\R6                  4S\4S\4S\4S\4/S\
R                  4S	\
R                  S4S\
R                  S4S\
R                  4/S.rS rg!)"r      zO
A MuPAD lexer.
Contributed by Christopher Creutzig <christopher@creutzig.de>.
MuPADzhttp://www.mupad.commupadz*.muz0.8z//.*?$/\*commentr   r   a  (?x)\b(?:
                next|break|end|
                axiom|end_axiom|category|end_category|domain|end_domain|inherits|
                if|%if|then|elif|else|end_if|
                case|of|do|otherwise|end_case|
                while|end_while|
                repeat|until|end_repeat|
                for|from|to|downto|step|end_for|
                proc|local|option|save|begin|end_proc|
                delete|frame
              )\baU  (?x)\b(?:
                DOM_ARRAY|DOM_BOOL|DOM_COMPLEX|DOM_DOMAIN|DOM_EXEC|DOM_EXPR|
                DOM_FAIL|DOM_FLOAT|DOM_FRAME|DOM_FUNC_ENV|DOM_HFARRAY|DOM_IDENT|
                DOM_INT|DOM_INTERVAL|DOM_LIST|DOM_NIL|DOM_NULL|DOM_POLY|DOM_PROC|
                DOM_PROC_ENV|DOM_RAT|DOM_SET|DOM_STRING|DOM_TABLE|DOM_VAR
              )\bz(?x)\b(?:
                PI|EULER|E|CATALAN|
                NIL|FAIL|undefined|infinity|
                TRUE|FALSE|UNKNOWN
              )\bz\b(?:dom|procname)\bz-\.|,|:|;|=|\+|-|\*|/|\^|@|>|<|\$|\||!|\'|%|~=z(?x)\b(?:
                and|or|not|xor|
                assuming|
                div|mod|
                union|minus|intersect|in|subset
              )\bz \b(?:I|RDN_INF|RD_NINF|RD_NAN)\bzi(?x)
              ((?:[a-zA-Z_#][\w#]*|`[^`]*`)
              (?:::[a-zA-Z_#][\w#]*|`[^`]*`)*)(\s*)([(])z](?x)
              (?:[a-zA-Z_#][\w#]*|`[^`]*`)
              (?:::[a-zA-Z_#][\w#]*|`[^`]*`)*r    r!   r   r"   z[^/*]+z#push\*/#pop[*/]r   r   r.   N)r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r	   r9   	Multiliner   r   r   r   Classr:   r;   Pseudor
   r<   r   r   Functionr   r=   r   r>   r?   r.   r-   r*   r   r      sc    D
 CiGIM 'W&&	2!6*!;/
 

 jj"
 ]] %dll&9&9:=xH ]] 1&9< dmmT;79126--A 08$f-Z 4Lc2
h ))*W&&0W&&/g''(	
i:Fr-   r   c            	           \ rS rSrSrSrSrS/rS/rSr	S\
R                  S	4S
\4S\4\" SSS9\4S\4S\4S\4S\4/S\
R                  4S\
R                  S4S\
R                  4/S.rSrg)r   i  z
A BC lexer.
BCz https://www.gnu.org/software/bc/bcz*.bcz2.1r   r   r   z[{}();,])ifelsewhileforbreakcontinuehaltreturndefineautoprintreadlengthscalesqrtlimitsquitwarrantyz\b)suffixz!\+\+|--|\|\||&&|([-<>+*%\^/!=])=?z[0-9]+(\.[0-9]*)?z\.[0-9]+r"   z[^*/]+r   r   r   r   r.   N)r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r	   r   r   r   r   r   r
   r   r   r>   r?   r.   r-   r*   r   r     s     D
,CfGIM W&&	2!6*+&   )./ 189"#+- "6*&!4L
  ))*W&&/g''(
!Fr-   r   )r3   r%   pygments.lexerr   r   r   r   r   pygments.tokenr   r	   r
   r   r   r   r   r   r   r   __all__r   r   r   r   r   r.   r-   r*   <module>r      so    
 L L- - -Cz CL7e 7t,z ,^E EPj r-   