§
    XŠtj	  ã                   óª   — d Z ddlZddl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dS )zÎ
    pygments.lexers.diff
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for diff/patch formats.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚbygroups)ÚTextÚCommentÚOperatorÚKeywordÚNameÚGenericÚLiteralÚ
Whitespace)Ú	DiffLexerÚDarcsPatchLexerÚ
WDiffLexerc                   óR  — e Zd ZdZdZddgZddgZddgZd	Zd
Z	dd e
eee¦  «        fd e
ej        e¦  «        fd e
ej        e¦  «        fd e
ej        e¦  «        fd e
ej        e¦  «        fd e
ej        e¦  «        fd e
ej        e¦  «        fd e
ee¦  «        fgiZd„ ZdS )r   z>
    Lexer for unified or context-style diffs or patches.
    ÚDiffÚdiffÚudiffz*.diffz*.patchztext/x-diffztext/x-patchz"https://en.wikipedia.org/wiki/DiffÚ Úrootz( )(.*)(\n)z(!.*|---)(\n)z((?:< |-).*)(\n)z((?:> |\+).*)(\n)z*(@.*|\d(?:,\d+)?(?:a|c|d)\d+(?:,\d+)?)(\n)z((?:[Ii]ndex|diff).*)(\n)z	(=.*)(\n)ú(.*)(\n)c                 óf   — | d d…         dk    rdS | d d…         dk    rdS | d d…         dk    rdS d S )	Né   zIndex: Té   zdiff é   z--- gÍÌÌÌÌÌì?© )Útexts    úR/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pygments/lexers/diff.pyÚanalyse_textzDiffLexer.analyse_text0   sR   € Ø���Œ8�yÒ Ð Ø�4Ø���Œ8�wÒÐØ�4Ø���Œ8�vÒÐØ�3ð Ðó    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedr   r   r   r   ÚStrongÚDeletedÚInsertedÚ
SubheadingÚHeadingÚtokensr   r   r    r   r   r      s"  € € € € € ðð ð €DØ�wÐ€GØ˜9Ð%€IØ Ð/€IØ
.€CØ€Mð 	Ø˜X˜X j°$¸
ÑCÔCÐDØ˜x˜x¨¬¸
ÑCÔCÐDØ  ( (¨7¬?¸JÑ"GÔ"GÐHØ! 8 8¨GÔ,<¸jÑ#IÔ#IÐJà=Ø�˜Ô+¨ZÑ8Ô8ðð *¨8¨8°G´OÀZÑ+PÔ+PÐQØ˜8˜8 G¤O°ZÑ@Ô@ÐAØ˜(˜( 4¨Ñ4Ô4Ð5ð
ð€Fð ð ð ð ð r    r   c                   ó  — e Zd ZdZdZdgZddgZdZdZdZ	d	e
fd
e
fde
fde
fd ee
eeeee
ej        ee
¦	  «	        fd ee
eeeee
ej        e¦  «        dfdej        fdej        fdej        fd                     d                     e	¦  «        ¦  «         eeeee¦  «        fdej        dfdej        dfd eee¦  «        fgdefde
dfgdedfde
fg ed¦  «        d ej        fd!ej        fg ed¦  «        d ej        fd!ej        fgd"œZd#S )$r   zÈ
    DarcsPatchLexer is a lexer for the various versions of the darcs patch
    format.  Examples of this format are derived by commands such as
    ``darcs annotate --patch`` and ``darcs send``.
    zDarcs PatchÚdpatchz*.dpatchz*.darcspatchzhttps://darcs.netz0.10)ÚhunkÚaddfileÚadddirÚrmfileÚrmdirÚmoveÚreplaceú<ú>z\{z\}z/(\[)((?:TAG )?)(.*)(\n)(.*)(\*\*)(\d+)(\s?)(\])z+(\[)((?:TAG )?)(.*)(\n)(.*)(\*\*)(\d+)(\s?)ÚcommentzNew patches:zContext:zPatch bundle hash:z(\s*)({})(.*)(\n)ú|z\+Úinsertú-Údeleter   z	[^\]].*\nz\]ú#popz\nz
\[_[^_]*_]ÚspecialTextz\[z[^\n\[]+)r   r<   rB   r>   r@   N)r!   r"   r#   r$   r%   r&   r'   r)   r*   ÚDPATCH_KEYWORDSr   r   r	   r
   r   r   ÚDater   r/   ÚformatÚjoinr   r-   r,   r   r   r0   r   r    r   r   r   9   s×  € € € € € ðð ð €DØˆj€GØ˜^Ð,€IØ
€CØ€Mð"€Oð
 �8ÐØ�8ÐØ�HÐØ�HÐØ?ØˆX�h ¨¨z¸4ÀØ”l J°ñ:ô :ð;ð <ØˆX�h ¨¨z¸4ÀØ”l Jñ0ô 0Ø1:ð<ð ˜gœoÐ.Ø˜'œ/Ð*Ø" G¤OÐ4Ø!×(Ò(¨¯ª°/Ñ)BÔ)BÑCÔCØ�˜ W¨d°JÑ?Ô?ðAà�GÔ$ hÐ/Ø�7”? HÐ-Ø˜(˜( 4¨Ñ4Ô4Ð5ð%
ð* ˜7Ð#Ø�H˜fÐ%ð
ð
 �J Ð'Ø˜HÐ%ð
ð
 ˆG�MÑ"Ô"Ø�GÔ$Ð%Ø˜'Ô*Ð+ð
ð ˆG�MÑ"Ô"Ø�G”OÐ$Ø˜'œ/Ð*ð
ðE'ð '€F€F€Fr    r   c            	       ól  — e Zd ZdZdZdZdgZdgZg ZdZ	e
j        e
j        z  ZdZdZd	Zd
ZdZeej        dfeej        dfeefdefgeej        dfeej        dfeej        dfeej        dfeej        fdej        fgeej        dfeej        dfeej        dfeej        dfeej        fdej        fgdœZdS )r   zï
    A wdiff lexer.

    Note that:

    * It only works with normal output (without options like ``-l``).
    * If the target files contain "[-", "-]", "{+", or "+}",
      especially they are unbalanced, the lexer will get confused.
    ÚWDiffz#https://www.gnu.org/software/wdiff/Úwdiffz*.wdiffz2.2z\{\+z\+\}z\[\-z\-\]z[^{}[\]+-]+ÚinsertedÚdeletedú.z#pushrA   )r   rJ   rK   N)r!   r"   r#   r$   r%   r)   r&   r'   r(   r*   ÚreÚ	MULTILINEÚDOTALLÚflagsÚins_opÚins_clÚdel_opÚdel_clÚnormalr   r-   r,   r   r0   r   r    r   r   r   s   s;  € € € € € ðð ð €DØ
/€CØˆi€GØ�€IØ€IØ€MàŒL˜2œ9Ñ$€Eð €FØ€FØ€FØ€FØ€Fð �WÔ% zÐ2Ø�W”_ iÐ0Ø�TˆNØ�4ˆLð	
ð �WÔ% wÐ/Ø�WÔ% wÐ/Ø�WÔ% vÐ.à�WÔ% vÐ.Ø�WÔ%Ð&Ø�7Ô#Ð$ð
ð �W”_ gÐ.Ø�W”_ gÐ.Ø�W”_ fÐ-à�W”_ fÐ-Ø�W”_Ð%Ø�7”?Ð#ð
ð!ð €F€F€Fr    r   )r$   rM   Úpygments.lexerr   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   r   Ú__all__r   r   r   r   r    r   ú<module>rY      s3  ððð ð 
€	€	€	à 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð 9Ð
8Ð
8€ð"ð "ð "ð "ð "�
ñ "ô "ð "ðJ7ð 7ð 7ð 7ð 7�jñ 7ô 7ð 7ðt6ð 6ð 6ð 6ð 6�ñ 6ô 6ð 6ð 6ð 6r    