HEX
Server: Apache/2.4.67 (Debian)
System: Linux vps-b2547eb4 6.1.0-41-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.158-1 (2025-11-09) x86_64
User: root (0)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/pygments/lexers/__pycache__/algebra.cpython-311.pyc
�

�E�c�&����dZddlZddlmZmZmZmZmZddlm	Z	m
Z
mZmZm
Z
mZmZmZmZmZgd�ZGd�de��ZGd�d	e��ZGd
�de��ZGd�d
e��ZGd�de��ZdS)z�
    pygments.lexers.algebra
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for computer algebra systems.

    :copyright: Copyright 2006-2022 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��eZdZdZdZdZdgZgd�Zddej	fde
fd	efd
efde
jfde
jfd
efdejfde
jfdefdefdefgiZd�ZdS)rz9
    For GAP source code.

    .. versionadded:: 2.0
    �GAPzhttp://www.gap-system.org�gap)z*.gz*.gdz*.giz*.gap�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��d}tjd|��r|dz
}tjd|��r|dz
}t|d��S)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  �9/usr/lib/python3/dist-packages/pygments/lexers/algebra.py�analyse_textzGAPLexer.analyse_textHsh�����9�
>�?C�
�
�	�
�S�L�E��9�
H�IM�
�
�	�
�S�L�E��5�#����N)�__name__�
__module__�__qualname__�__doc__�name�url�aliases�	filenamesr	�Singler
rrr�Constant�Builtinr
�Word�Variablerr�tokensr(�r)r'rrs���������
�D�
%�C��g�G�0�0�0�I�	�
�g�n�%�
!�6�*�
!�;�/���
���]�
���\�	
�
-�h�7���]�
�$�%)�]�
4�0��8�
$�f�-�
�4�L�G$
�&�F�P����r)rc�0�eZdZdZdZddgZdgZd�Zd�ZdS)	rz`
    For GAP console sessions. Modeled after JuliaConsoleLexer.

    .. versionadded:: 2.14
    zGAP sessionzgap-consolezgap-replz*.tstc	#�xK�tdi|j��}d}d}g}d}d}|�d���D�]W}|�d��s|�d��rL|�t|��dtj|dd�fgf��||dd�z
}d}d}n�|s]|�d	��rH|�t|��dtj|dd
�fgf��||d
d�z
}nm|r-t||�	|����Ed{V��d}g}|�d��s|r|tj
|fV�d}n|tj|fV�d}|t|��z
}��Y|r+t||�	|����Ed{V��dSdS)
Nr�FT)�keependszgap> zbrk> �z> �zError, r8)r�options�
splitlines�
startswith�append�lenr�Promptr�get_tokens_unprocessed�Error�Output)	�selfr%�gaplexer�start�curcode�
insertions�output�error�lines	         r'rEz&GAPConsoleLexer.get_tokens_unprocessedfsY�����+�+�d�l�+�+�������
������O�O�T�O�2�2�	�	�D����w�'�'�
�4�?�?�7�+C�+C�
��!�!�3�w�<�<�1�g�n�d�2�A�2�h�2O�1P�"Q�R�R�R��4����8�#��������
����� 5� 5�
��!�!�3�w�<�<�1�g�n�d�2�A�2�h�2O�1P�"Q�R�R�R��4����8�#����$�,�"�H�$C�$C�G�$L�$L� N� N�N�N�N�N�N�N�N� �G�!#�J��?�?�9�-�-�6��6�����4�4�4�4� �E�E�����5�5�5�5����S��Y�Y��E�E��	F�$��H�;�;�G�D�D�F�F�
F�
F�
F�
F�
F�
F�
F�
F�
F�	F�	Fr)c�4�tjd|��rdSdS)Nz^gap> g�������?r!)r"r#)r%s r'r(zGAPConsoleLexer.analyse_text�s"��
�9�Y��%�%�	��3��3r)N)	r*r+r,r-r.r0r1rEr(r8r)r'rr\sX��������
�D��j�)�G��	�I�!F�!F�!F�H����r)rc��eZdZdZdZdZgd�Zgd�Zgd�ZdZ	dZ
d	�Zd
defde
jfd
e
jfde
jfde
fdejfdejfdejfee	��efee
��efdefdejfgiZdS)rzG
    Lexer for Mathematica source code.

    .. versionadded:: 2.0
    �Mathematicaz#http://www.wolfram.com/mathematica/)�mathematica�mma�nb)z*.nbz*.cdfz*.nbpz*.ma)zapplication/mathematicaz#application/vnd.wolfram.mathematicaz+application/vnd.wolfram.mathematica.packagezapplication/vnd.wolfram.cdf) z;;�=z=.z!===z:=z->z:>z/.�+�-�*�/�^z&&z||�!z<>�|z/;�?�@z//z/@z@@z@@@z~~z===�&�<�>z<=z>=)�,�;�(�)�[�]�{�}c�F�dd�d�|D����zS)Nz(%s)r]c3�>K�|]}tj|��V��dS)N)r"�escape)�.0�entrys  r'�	<genexpr>z1MathematicaLexer._multi_escape.<locals>.<genexpr>�s,����!H�!H�u�"�)�E�"2�"2�!H�!H�!H�!H�!H�!Hr))�join)�entriess r'�
_multi_escapezMathematicaLexer._multi_escape�s(������!H�!H��!H�!H�!H�H�H�I�Ir)rz(?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+N)r*r+r,r-r.r/r0r1�	mimetypes�	operators�punctuationrsr	r�	Namespacer6r�Float�Integerrr
rr
rrr7r8r)r'rr�s���������
�D�
/�C�*�*�*�G�2�2�2�I�0�0�0�I��I�;�K�J�J�J�	�
��)�
(�$�.�9�
,�d�m�<�
�d�m�$�
'��.�
�F�L�)�
�F�L�)�
�v�~�&�
�U�9�
�
�x�(�
�U�;�
�
��-�
�v��
�T�_�%�
��F�F�Fr)rc�L�eZdZdZdZdZdgZdgZdej	fdej
dfd	efd
efde
fdejfd
ejfdejjfdefdejfdefdeejee��fdejfdefdefdefdefgdej
fdej
dfdej
dfdej
fgd�ZdS)rzv
    A MuPAD lexer.
    Contributed by Christopher Creutzig <christopher@creutzig.de>.

    .. versionadded:: 0.8
    �MuPADzhttp://www.mupad.com�mupadz*.muz//.*?$�/\*�commentrra�(?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#]*|`[^`]*`)*rrrtrz[^/*]+z#push�\*/�#pop�[*/]�rrN)r*r+r,r-r.r/r0r1r	r2�	Multiliner
rrr�Classr3r4�Pseudor
r5rr�Functionrr6rr7r8r)r'rr�sY���������D�
 �C��i�G���I����'�
�W�&�	�2�
!�6�*�
!�;�/�
��

��
�j�
"��
�]�
�%�d�l�&9�:�
=�x�H���]�

�1�&�9�<��X�d�m�T�;�
7�
7�
9�1�26�-�
A�0��8�
$�f�-�
�Z� �
�4�L�c2
�h��)�*�
�W�&��0�
�W�&��/�
�g�'�(�	
�i:�:�F�F�Fr)rc	��eZdZdZdZdZdgZdgZdej	dfde
fd	efed
d���e
fd
efdefdefdefgdej	fdej	dfdej	fgd�ZdS)rz0
    A BC lexer.

    .. versionadded:: 2.1
    �BCz https://www.gnu.org/software/bc/�bcz*.bcr~rrz[{}();,])�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]+rz[^*/]+r�r�r�r�N)r*r+r,r-r.r/r0r1r	r�r
rrrr
rrr7r8r)r'rrs���������
�D�
,�C��f�G���I��W�&�	�2�
!�6�*�
�+�&�
�U� �).�/�/�/�18�
9�"�#+�
-�"�6�*�
�&�!�
�4�L�
� ��)�*�
�W�&��/�
�g�'�(�
�!��F�F�Fr)r)r-r"�pygments.lexerrrrrr�pygments.tokenrr	r
rrr
rrrr�__all__rrrrrr8r)r'�<module>r�s�����
�	�	�	�L�L�L�L�L�L�L�L�L�L�L�L�L�L�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-�����D�D�D�D�D�z�D�D�D�N6�6�6�6�6�e�6�6�6�r-�-�-�-�-�z�-�-�-�`F�F�F�F�F��F�F�F�R � � � � �j� � � � � r)