o
    ‡ÎÖaë  ã                   @   s2  d Z ddlZddlmZ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mZmZ ddlmZ g d¢Ze d¡ZG dd	„ d	eƒZG d
d„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZ G dd„ de ƒZ!G dd„ de ƒZ"G dd„ de ƒZ#G dd„ de ƒZ$G dd„ deƒZ%dS )zÜ
    pygments.lexers.haskell
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Haskell and related languages.

    :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)ÚLexerÚ
RegexLexerÚbygroupsÚdo_insertionsÚdefaultÚincludeÚinherit)
ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚGenericÚ
Whitespace)Ú	unistring)
ÚHaskellLexerÚ
HspecLexerÚ
IdrisLexerÚ	AgdaLexerÚCryptolLexerÚLiterateHaskellLexerÚLiterateIdrisLexerÚLiterateAgdaLexerÚLiterateCryptolLexerÚ	KokaLexerz.*?
c                   @   s”  e Zd ZdZdZddgZdgZdgZej	ej
B ZdZdZg d	ef‘d
ejf‘dejdf‘dejdf‘dejdf‘dejf‘dd e¡ ejf‘dejf‘dej d ejf‘dej d ef‘dej d ejf‘dej d ej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‘d!e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‘d(e j$f‘d)e j%f‘d*ejd+f‘d,ed-f‘d.ejf‘d/ej&f‘d0e'f‘d	efd,ed-fd1e'd2fd3efd4ej d5 ej d6 e(ej)eeeeƒd2fd4ej d7 e(ej)eeee'ƒd8fd4ej d9 e(ej)ee'ƒd8fd:ej)d2fgd	efd4ej d9 e(ej)ee'ƒd8fd;ej d< ej)d2fgd	efd;ej d= ejfd>ej d? ejfd
ejfdejdfd@e'fd!efdAe'dBfd1e'dCfg	dDejfdejdEfdFejd2fdGejfgdHejd2fdIej*dJfd*ejd2fgdKefdIej*dJfd,ed2fgdLej*d2fdMej dN ej*d2fd e¡ej*d2fdOej*d2fdPej*d2fdQej*d2fdRe(eej*ƒd2fgdSœZ+dTS )Ur   zk
    A Haskell lexer based on the lexemes defined in the Haskell 98 Report.

    .. versionadded:: 0.8
    ÚHaskellÚhaskellÚhsz*.hsztext/x-haskell)ÚcaseÚclassÚdatar   ÚderivingÚdoÚelseÚfamilyÚifÚinú
infix[lr]?ÚinstanceÚletÚnewtypeÚofÚthenÚtypeÚwhereÚ_©ÚNULÚSOHz[SE]TXÚEOTÚENQÚACKÚBELÚBSÚHTÚLFÚVTÚFFÚCRzS[OI]ÚDLEzDC[1-4]ÚNAKÚSYNÚETBÚCANÚEMÚSUBÚESCz[FGRU]SÚSPÚDELú\s+ú!--(?![!#$%&*+./<=>?@^|_~:\\]).*?$ú\{-Úcommentú
\bimport\bÚimportú
\bmodule\bÚmoduleú	\berror\bú\b(%s)(?!\')\bú|z'[^\\]'z^[_z][\w\']*z'?[_z][\w']*z('')?[z(')[z(')\[[^\]]*\]z(')\([^)]*\)z(')[:!#$%&*+.\\/<=>?@^|~-]+ú\\(?![:!#$%&*+.\\/<=>?@^|~-]+)ú+(<-|::|->|=>|=)(?![:!#$%&*+.\\/<=>?@^|~-]+)ú:[:!#$%&*+.\\/<=>?@^|~-]*ú[:!#$%&*+.\\/<=>?@^|~-]+z40[xX]_*[\da-fA-F](_*[\da-fA-F])*_*[pP][+-]?\d(_*\d)*zR0[xX]_*[\da-fA-F](_*[\da-fA-F])*\.[\da-fA-F](_*[\da-fA-F])*(_*[pP][+-]?\d(_*\d)*)?z\d(_*\d)*_*[eE][+-]?\d(_*\d)*z+\d(_*\d)*\.\d(_*\d)*(_*[eE][+-]?\d(_*\d)*)?z0[bB]_*[01](_*[01])*z0[oO]_*[0-7](_*[0-7])*z 0[xX]_*[\da-fA-F](_*[\da-fA-F])*z	\d(_*\d)*ú'Ú	characterú"Ústringú\[\]ú\(\)ú[][(),;`{}]ú\)ú#popúqualified\bz([z][\w.]*)(\s+)(as)(\s+)([z][\w.]*)z][\w.]*)(\s+)(hiding)(\s+)(\()Úfunclistz][\w.]*)(\s+)(\()ú[\w.]+ú[z][\w.]*z]\w*z(_[\w\']+|[z	][\w\']*)ú,ú\(©rc   rc   ú#pop:2ú[^-{}]+ú#pushú-\}ú[-{}]ú[^\\']'ú\\Úescapeú[^\\"]+ú[abfnrtv"\'&\\]z\^[][z@^_]úo[0-7]+úx[\da-fA-F]+ú\d+ú	(\s+)(\\)©ÚrootrO   rQ   rc   rM   rZ   r\   rp   N),Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚreÚ	MULTILINEÚUNICODEÚflagsÚreservedÚasciir   r
   ÚSingleÚ	Multiliner   ÚReservedr   Ú	ExceptionÚjoinr   ÚCharÚuniÚLlÚFunctionÚLuÚTyper   ÚWordr   ÚFloatÚBinÚOctÚHexÚIntegerÚBuiltinr   r   Ú	NamespaceÚEscapeÚtokens© rœ   rœ   ú9/usr/lib/python3/dist-packages/pygments/lexers/haskell.pyr      s   þü
û
ø
	÷
öõôóòñðïîíëêéèæÿåãâá à!ß"Þ
$Ü%Û'Ù(Ø)×-ÿÿÿ
ïÿü
ö

û
	

ü
ý



ù
›r   c                   @   s\   e Zd ZdZdZdgZg Zg Zddee	e
ejƒfdee	e
ejƒfdee	e
ejƒfegiZdS )	r   zY
    A Haskell lexer with support for Hspec constructs.

    .. versionadded:: 2.4.0
    ÚHspecÚhspecrx   z(it)(\s*)("[^"]*")z(describe)(\s*)("[^"]*")z(context)(\s*)("[^"]*")N)ry   rz   r{   r|   r}   r~   r   r€   r   r	   r   r   ÚDocr   r›   rœ   rœ   rœ   r�   r   ¡   s    üÿr   c                   @   s0  e Zd ZdZdZddgZdgZdgZdZdZ	d	Z
d
d e
¡ eeejƒfdeeejƒfdeeejƒfdeeejƒdfdeeejeejeƒfdd e¡ ejfdeejeƒdfdejfde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dejdfdedfd efd!efgd"efd#eejee ƒd$fd%ejd&fgd"efd'ejfd(ejfd)ejfd*ejdfd+e fd,efd-e d.fd/e d0fg	d1ejfd*ejd2fd3ejd&fd4ejfgd5ejfd6ej!d7fdejd&fgd8efd6ej!d7fded&fgd9ej!d&fd:ej!d&fd e	¡ej!d&fd;ej!d&fd<ej!d&fdej!d&fd=eeej!ƒd&fgd>œZ"d?S )@r   zŒ
    A lexer for the dependently typed programming language Idris.

    Based on the Haskell and Agda Lexer.

    .. versionadded:: 2.0
    ÚIdrisÚidrisÚidrz*.idrztext/x-idris)3r!   r"   r#   r   Úusingr%   r&   r(   r)   r*   r+   ÚrewriteÚautoÚ	namespaceÚcodataÚmutualÚprivateÚpublicÚabstractÚtotalÚpartialÚ	interfaceÚimplementationÚexportÚcoveringÚconstructorr,   Úproofr.   r/   Ústaticr1   r2   ÚwithÚpatternÚtermÚsyntaxÚprefixÚ	postulateÚ
parametersÚrecordÚdslÚ
impossibleÚimplicitÚtacticsÚintrosÚintroÚcomputeÚrefineÚexactÚtrivialr3   )ÚlibÚlinkÚflagr   ÚhideÚfreezeÚaccessr   ÚloggingÚdynamicr}   Úerror_handlersÚlanguagez^(\s*)(%%(%s))rT   z((\s*)(--(?![!#$%&*+./<=>?@^|_~:\\]).*?)$z(\s*)(\|{3}.*?)$z
(\s*)(\{-)rM   ú^(\s*)([^\s(){}]+)(\s*)(:)(\s*)rS   ú(import|module)(\s+)rQ   ú('')?[A-Z][\w\']*z[a-z][\w\']*z(<-|::|->|=>|=)z"([(){}\[\]:!#$%&*+.\\/<=>?@^|~-]+)ú\d+[eE][+-]?\d+ú\d+\.\d+([eE][+-]?\d+)?ú0[xX][\da-fA-F]+ru   rY   rZ   r[   r\   ú
[^\s(){}]+ú\s+?rJ   ú([A-Z][\w.]*)(\s+)(\()rc   ú[A-Z][\w.]*ra   ú[A-Z]\w*ú(_[\w\']+|[a-z][\w\']*)z--.*$rL   rf   rX   rg   rh   r`   ri   rj   rk   rl   rm   z[^\\']ro   rp   rq   rr   ú\^[][A-Z@^_]rs   rt   rv   )rx   rQ   rc   rM   rZ   r\   rp   N)#ry   rz   r{   r|   r}   r~   r   r€   r…   r†   Ú
directivesr‹   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   ·   sŽ    

ÿÿ
åÿ
ü
ö

û	

ü
ý




ù
¼r   c                   @   s>  e Zd ZdZdZdgZdgZdgZg d¢Zde	e
eje
eje
ƒfdejfd	ejd
fdejdfdd e¡ ejfde	eje
ƒdfdejfdefdejfdejfdejfdejfdejfdejdfdedfdefde
fgdejfdejdfd ejd!fd"ejfgd	ejd
fd#ed!fd$efgejd
 ejd ejd ejd% d&œZd'S )(r   z°
    For the `Agda <http://wiki.portal.chalmers.se/agda/pmwiki.php>`_
    dependently typed functional programming language and proof assistant.

    .. versionadded:: 2.0
    ÚAgdaÚagdaz*.agdaztext/x-agda)"r¬   r¨   Úcoinductiver³   r#   ÚfieldÚforallÚhidingr)   Ú	inductiveÚinfixÚinfixlÚinfixrr+   r,   r©   Úopenr·   r»   Ú	primitiverª   ÚquoteÚ	quoteGoalÚ	quoteTermr½   Úrenamingr¥   r¹   ÚtacticÚunquoteÚunquoteDeclr¤   r1   r¶   rÒ   rK   rL   rM   z\{!ÚholerS   rT   rÓ   rQ   z\b(Set|Prop)[\u2080-\u2089]*\bz(\(|\)|\{|\})z((\.{1,3}|\||\u03BB|\u2200|\u2192|:|=|->)rÕ   rÖ   r×   ru   rY   rZ   r[   r\   rØ   rÙ   z[^!{}]+rk   z!\}ra   z[!{}]z[a-zA-Z][\w.]*z	[\W0-9_]+rp   )rx   ró   rQ   rM   rZ   r\   rp   N) ry   rz   r{   r|   r}   r~   r   r€   r…   r   r   r   r�   r   r’   r
   r‡   rˆ   Ú	Directiver‹   r   r‰   r‘   r   r“   r–   r—   r   rŒ   r	   r   r›   rœ   rœ   rœ   r�   r   &  sR    ÿ


æ

û
ý
Ôr   c                   @   s„  e Zd ZdZdZddgZdgZdgZdZdZ	d	e
fd
ejfdejdfdejdfdejdfdejfdd e¡ ejfdejfdefdejfdejfdejfdejfdefdejfdejfdejfdejfdejfd ejd!fd"ed#fd$ejfd%ejfd&efgd	e
fd"ed#fd'ed(fd)efd*e ej!e
ee
eƒd(fd+e ej!e
ee
eƒd,fd-e ej!e
eƒd,fd.ej!d(fgd	e
fd-e ej!e
eƒd,fd/ej!d(fgd	e
fd0ejfd1ejfd2efdefd3ed4fd'ed5fgd6ejfdejd7fd8ejd(fd9ejfgd:ejd(fd;ej"d<fd ejd(fgd=efd;ej"d<fd"ed(fgd>ej"d(fd?ej"d(fd e	¡ej"d(fd@ej"d(fdAej"d(fdej"d(fdBe e
ej"ƒd(fgdCœZ#h dD£Z$dEdF„ Z%dGS )Hr   zs
    FIXME: A Cryptol2 lexer based on the lexemes defined in the Haskell 98 Report.

    .. versionadded:: 2.0
    ÚCryptolÚcryptolÚcryz*.cryztext/x-cryptol)ÚArithÚBitÚCmpÚFalseÚInfÚTruer&   r±   ÚexternÚfinr(   rO   ÚinfÚlg2ÚmaxÚminrQ   r-   ÚpragmaÚpropertyr/   r0   r1   Úwidthr3   rJ   ú//.*$ú/\*rM   rN   rO   rP   rQ   rR   rS   rT   z^[_a-z][\w\']*z'?[_a-z][\w']*rÔ   rU   rV   rW   rX   rÕ   rÖ   z0[oO][0-7]+r×   ru   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   z(([A-Z][\w.]*)(\s+)(as)(\s+)([A-Z][\w.]*)z#([A-Z][\w.]*)(\s+)(hiding)(\s+)(\()rc   rÚ   rd   rÛ   rÜ   rÝ   rf   rg   rh   ri   ú[^/*]+rk   ú\*/ú[*/]rn   ro   rp   rq   rr   rÞ   rs   rt   rv   rw   >   ú<<ú>>ú<<<ú>>>ÚparÚregÚseqr‹   ÚtailÚconstÚerrorÚsplitÚtracer  ÚASSERTÚlengthÚreverseÚ	transposeÚ	undefinedc                 c   sT   � dg}t  | ||¡D ]\}}}|tu r!|| jv r!|tj|fV  q|||fV  qd S )Nrx   )r   Úget_tokens_unprocessedr   ÚEXTRA_KEYWORDSr˜   )ÚselfÚtextÚstackÚindexÚtokenÚvaluerœ   rœ   r�   r  ê  s   €ÿûz#CryptolLexer.get_tokens_unprocessedN)&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   k  s¬    



à$ÿÿÿ
ïÿ
üõ

û
	

ü
ý




ù¥fr   c                   @   s*   e Zd ZdZe d¡Zdd„ Zdd„ ZdS )ÚLiterateLexera•  
    Base class for lexers of literate file formats based on LaTeX or Bird-style
    (prefixing each code line with ">").

    Additional options accepted:

    `litstyle`
        If given, must be ``"bird"`` or ``"latex"``.  If not given, the style
        is autodetected: if the first non-whitespace character in the source
        is a backslash or percent character, LaTeX is assumed, else Bird.
    z(>[ \t]*)(.*\n)c                 K   s   || _ tj| fi |¤Ž d S )N)Ú	baselexerr   Ú__init__)r  r&  Úoptionsrœ   rœ   r�   r'    s   zLiterateLexer.__init__c              	   c   sš  � | j  d¡}|d u r| ¡ dd… dv rdpd}d}g }|dkr\t |¡D ]4}| ¡ }| j |¡}|rM| t	|ƒdt
j| d¡fgf¡ || d¡7 }q&| t	|ƒdt|fgf¡ q&ncdd	lm} |di | j ¤Ž}	d}
d}t |¡D ]=}| ¡ }|
rŽ| ¡  d
¡r‰d}
||7 }qs||7 }qs| ¡  d¡r¬d}
||7 }| t	|ƒt|	 |¡ƒf¡ d}qs||7 }qs| t	|ƒt|	 |¡ƒf¡ t|| j |¡ƒE d H  d S )NÚlitstyler   é   z%\ÚlatexÚbirdÚ é   )ÚTexLexerz
\end{code}z\begin{code}rœ   )r(  ÚgetÚlstripÚline_reÚfinditerÚgroupÚbird_reÚmatchÚappendÚlenr
   ÚSpecialr	   Úpygments.lexers.markupr/  Ú
startswithÚlistr  r   r&  )r  r   ÚstyleÚcodeÚ
insertionsr6  ÚlineÚmr/  ÚlxlexerÚ	codelinesr+  rœ   rœ   r�   r    sP   €
ÿø


ÿ

ÿz$LiterateLexer.get_tokens_unprocessedN)	ry   rz   r{   r|   r�   Úcompiler5  r'  r  rœ   rœ   rœ   r�   r%  ô  s
    
r%  c                   @   ó0   e Zd ZdZdZg d¢ZdgZdgZdd„ ZdS )	r   an  
    For Literate Haskell (Bird-style or LaTeX) source.

    Additional options accepted:

    `litstyle`
        If given, must be ``"bird"`` or ``"latex"``.  If not given, the style
        is autodetected: if the first non-whitespace character in the source
        is a backslash or percent character, LaTeX is assumed, else Bird.

    .. versionadded:: 0.9
    zLiterate Haskell)zliterate-haskellÚlhaskellÚlhsz*.lhsztext/x-literate-haskellc                 K   ó&   t di |¤Ž}tj| |fi |¤Ž d S ©Nrœ   )r   r%  r'  ©r  r(  Úhslexerrœ   rœ   r�   r'  F  ó   zLiterateHaskellLexer.__init__N©	ry   rz   r{   r|   r}   r~   r   r€   r'  rœ   rœ   rœ   r�   r   4  ó    r   c                   @   rE  )	r   al  
    For Literate Idris (Bird-style or LaTeX) source.

    Additional options accepted:

    `litstyle`
        If given, must be ``"bird"`` or ``"latex"``.  If not given, the style
        is autodetected: if the first non-whitespace character in the source
        is a backslash or percent character, LaTeX is assumed, else Bird.

    .. versionadded:: 2.0
    zLiterate Idris)zliterate-idrisÚlidrisÚlidrz*.lidrztext/x-literate-idrisc                 K   rH  rI  )r   r%  r'  rJ  rœ   rœ   r�   r'  ]  rL  zLiterateIdrisLexer.__init__NrM  rœ   rœ   rœ   r�   r   K  rN  r   c                   @   s0   e Zd ZdZdZddgZdgZdgZdd„ Zd	S )
r   aU  
    For Literate Agda source.

    Additional options accepted:

    `litstyle`
        If given, must be ``"bird"`` or ``"latex"``.  If not given, the style
        is autodetected: if the first non-whitespace character in the source
        is a backslash or percent character, LaTeX is assumed, else Bird.

    .. versionadded:: 2.0
    zLiterate Agdazliterate-agdaÚlagdaz*.lagdaztext/x-literate-agdac                 K   s*   t di |¤Ž}tj| |fddi|¤Ž d S )Nr)  r+  rœ   )r   r%  r'  )r  r(  Ú	agdalexerrœ   rœ   r�   r'  t  s   zLiterateAgdaLexer.__init__NrM  rœ   rœ   rœ   r�   r   b  rN  r   c                   @   rE  )	r   an  
    For Literate Cryptol (Bird-style or LaTeX) source.

    Additional options accepted:

    `litstyle`
        If given, must be ``"bird"`` or ``"latex"``.  If not given, the style
        is autodetected: if the first non-whitespace character in the source
        is a backslash or percent character, LaTeX is assumed, else Bird.

    .. versionadded:: 2.0
    zLiterate Cryptol)zliterate-cryptolÚlcryptolÚlcryz*.lcryztext/x-literate-cryptolc                 K   rH  rI  )r   r%  r'  )r  r(  Úcrylexerrœ   rœ   r�   r'  ‹  rL  zLiterateCryptolLexer.__init__NrM  rœ   rœ   rœ   r�   r   y  rN  r   c                   @   s”  e Zd ZdZdZdgZddgZdgZg d¢Zg d¢Z	g d	¢Z
g d
¢ZdZde d ZdZejZejZejZedƒde edfdeeeeƒdfdeeeeƒdfdd e	¡ d eeeeƒdfdeeeeeejƒfdeeeejeeeeeejƒ	fde d eeeeeejƒfde d eeeeeeeejƒfdd e
¡ e ejfdd e¡ e efdd e¡ e ejfde efdeejeƒfd eejeƒfd!e d eejeƒfd"ej fd#e!j"d$fed% e#fd&e#fd'e$fd(e%j&fd)e%j'fd*e%j(fd+e!j)d,fd-e!j"d.fgd/efedƒgd0e$d1fedƒgd2ed3fed4ƒgd5ed1fd2ed3fd6efd7eeeeƒfed4ƒgedƒdd e
¡ e efd8d e¡ e d9 ed1fd:e efd;efd"ej fdeejeƒfd<eejeƒfd=efe*d1ƒg
d>eee+j,ƒfd?efd@e+j-dAfdBe+j.fgdCe+j-fd@e+j-dDfdEe+j-d1fdFe+j-fgdGe!j"fdHe!j/fd-e!j"d1fgdIe!j"fedJƒdKe!j"d1fgdLe!j)fedJƒdMe!j)d1fgdNe!j/fdOe!j/fdPe!j/fdQe!j/fgdRœZ0dSS )Tr   zc
    Lexer for the `Koka <http://koka.codeplex.com>`_
    language.

    .. versionadded:: 1.6
    ÚKokaÚkokaz*.kkz*.kkiztext/x-koka)"rç   ré   rè   r0   ÚcotypeÚrectypeÚaliasÚstructÚconÚfunÚfunctionÚvalÚvarÚexternalr(   r/   r&   ÚelifÚreturnr6  rª   r«   rª   rQ   rO   Úasr   ÚinlineÚrecÚtryÚyieldÚenumr¯   r+   )r0   rX  rY  rZ  r[  ri  )rä   ÚexistsÚsomer¶   )ÚforÚwhileÚrepeatÚforeachzforeach-indexedr  ÚcatchÚfinallyÚcsÚjsÚfileÚrefÚassignedz[$%&*+@!/\\^~=.:\-?|<>]+z(?!ú)z	(?![\w/])Ú
whitespacez::?r0   z(alias)(\s+)([a-z]\w*)?ú
alias-typez(struct)(\s+)([a-z]\w*)?ústruct-typez(%s)rT   z(\s+)([a-z]\w*)?z=(module)(\s+)(interface(?=\s))?(\s+)?((?:[a-z]\w*/)*[a-z]\w*)z`(import)(\s+)((?:[a-z]\w*/)*[a-z]\w*)(?:(\s*)(=)(\s*)(qualified)?(\s*)((?:[a-z]\w*/)*[a-z]\w*))?z>^(public|private)?(\s+)?(function|fun|val)(\s+)([a-z]\w*|\((?:z|/)\))zd^(?:(public|private)(?=\s+external))?((?<!^)\s+)?(external)(\s+)(inline(?=\s))?(\s+)?([a-z]\w*|\((?:z::?|:=|\->|[=.]z((?:[a-z]\w*/)*)([A-Z]\w*)z((?:[a-z]\w*/)*)([a-z]\w*)z((?:[a-z]\w*/)*)(\((?:z_\w*z@"Ú	litstringz
|/(?![*/])ú`z[{}()\[\];,]z![0-9]+\.[0-9]+([eE][\-+]?[0-9]+)?z0[xX][0-9a-fA-F]+z[0-9]+rY   Úcharr[   r\   ú=z(?=\((?!,*\)))ra   z[(\[<]útype-nestedútype-contentz[)\]>]rf   z([a-z]\w*)(\s*)(:)(?!:)z(?=((%s)z))z[EPHVX]z[a-z][0-9]*(?![\w/])z((?:[a-z]\w*/)*)([a-z]\w+)z::|->|[.:|]z(\n\s*)(#.*)$rJ   r  rM   r  r	  rk   r
  r  z[^"]+z""z	[^\\"\n]+úescape-sequencez["\n]z
[^\\\'\n]+z[\'\n]z\\[nrt\\"\']z\\x[0-9a-fA-F]{2}z\\u[0-9a-fA-F]{4}z\\U[0-9a-fA-F]{6})rx   ry  rz  r0   r  r€  rx  rM   r{  r\   r}  r�  N)1ry   rz   r{   r|   r}   r~   r   r€   ÚkeywordsÚtypeStartKeywordsÚtypekeywordsÚbuiltinÚsymbolsÚ	sboundaryÚboundaryr   Ú	AttributeÚ	tokenTypeÚClassÚtokenTypeDefr   ÚEmphÚtokenConstructorr   r   r   r   r‹   r™   r�   r‘   ÚPseudoÚVariabler   ÚDoubler   r   r   r“   r–   r—   rŒ   r   r
   ÚPreprocrˆ   r‡   rš   r›   rœ   rœ   rœ   r�   r   �  s   ÿÿÿ
þÿÿýÿÿþÿÿþ

ÿ

ÿ



Æ?þþþ
ÿúÿ

ÿ
ÿé
ü

ü
ý
ý
ýû �
îr   )&r|   r�   Úpygments.lexerr   r   r   r   r   r   r   Úpygments.tokenr	   r
   r   r   r   r   r   r   r   r   Úpygmentsr   r�   Ú__all__rD  r2  r   r   r   r   r   r%  r   r   r   r   r   rœ   rœ   rœ   r�   Ú<module>   s(    
$0
 oE 
@