
xi\c           @   s  d  Z  d d l 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 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 m Z d d l m Z d d d	 d
 d d d d g Z e j d  Z  d e f d     YZ! d
 e f d     YZ" d e f d     YZ# d	 e f d     YZ$ d e f d     YZ% d e f d     YZ& d e f d     YZ' d e! f d     YZ( d S(   s   
    pygments.lexers.python
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Python and related languages.

    :copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
iN(	   t   Lexert
   RegexLexert   includet   bygroupst   usingt   defaultt   wordst   combinedt   do_insertions(   t   get_bool_optt   shebang_matches(   t   Textt   Commentt   Operatort   Keywordt   Namet   Stringt   Numbert   Punctuationt   Generict   Othert   Error(   t	   unistringt   PythonLexert   PythonConsoleLexert   PythonTracebackLexert   Python3Lexert   Python3TracebackLexert   CythonLexert   DgLexert
   NumPyLexers   .*?
c        a   B   sj  e  Z d  Z d Z d d d g Z d d d d d	 d
 d g Z d d g Z d   Z i d e f d e	 e e
 j e
 j  f d e	 e e
 j e
 j  f d e f d e j f d e j f d e f d e f d e f d e j f d e f e d  d e	 e e  d f d e	 e e  d f d e	 e j e  d  f d! e	 e j e  d" f e d#  e d$  e d%  e d&  d' e	 e
 j e
 j  d( f d) e	 e
 j e
 j  d* f d+ e	 e
 j e
 j  d, f d- e	 e
 j e
 j  d. f d/ e	 e
 j e
 j  e d0 d(  f d1 e	 e
 j e
 j  e d0 d*  f d2 e	 e
 j e
 j  e d0 d,  f d3 e	 e
 j e
 j  e d0 d.  f e d4  e d5  g d6 6e dbdN dO e f g d 6e dcd d dN dO e j f d e j j f e ddd d dN dO e j f g d# 6e dedN dO e j j f g d$ 6e dfdN dO e j j f g d% 6dFe  j! f dGe  j! f dHe  j" f dIe  j# f dJe  j$ f dKe  j% j& f dLe  j% f g d5 6dMe
 j' f g d& 6dNe j( f dOe f g d4 6e d$  dOe j dPf e) dP g d 6dOe j* dPf g d 6dQe f dRe j f dSe f dTe j f e) dP g d" 6dQe f dUe j dPf dVe j j dPf dWe j f e) dP g d  6dXe
 j+ f g d0 6e e
 j  dY6e e
 j  dZ6d[e
 j dPf d\e
 j+ f e dZ g d, 6d]e
 j dPf d^e
 j+ f e dY g d. 6d_e
 j dPf e dZ d e
 j f g d( 6d`e
 j dPf e dY d e
 j f g d* 6Z, da  Z- RS(g  s<   
    For `Python <http://www.python.org>`_ source code.
    t   Pythont   pythont   pyt   sages   *.pys   *.pyws   *.sct
   SConstructt
   SConscripts   *.tacs   *.sages   text/x-pythons   application/x-pythonc         C   s+   d t  j f d |  f d |  f d |  f g S(   NsG   %(\(\w+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]s   [^\\\'"%\n]+s   [\'"\\]t   %(   R   t   Interpol(   t   ttype(    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyt   innerstring_rules&   s
    			s   \ns&   ^(\s*)([rRuUbB]{,2})("""(?:.|\n)*?""")s&   ^(\s*)([rRuUbB]{,2})('''(?:.|\n)*?''')s   [^\S\n]+s   \A#!.+$s   #.*$s   []{}:(),;[]s   \\\ns   \\s   (in|is|and|or|not)\bs   !=|==|<<|>>|[-~+/*%=<>&^|.]t   keywordss   (def)((?:\s|\\\s)+)t   funcnames   (class)((?:\s|\\\s)+)t	   classnames   (from)((?:\s|\\\s)+)t
   fromimports   (import)((?:\s|\\\s)+)t   importt   builtinst
   magicfuncst	   magicvarst   backticks!   ([rR]|[uUbB][rR]|[rR][uUbB])(""")t   tdqss!   ([rR]|[uUbB][rR]|[rR][uUbB])(''')t   tsqss   ([rR]|[uUbB][rR]|[rR][uUbB])(")t   dqss   ([rR]|[uUbB][rR]|[rR][uUbB])(')t   sqss   ([uUbB]?)(""")t   stringescapes   ([uUbB]?)(''')s   ([uUbB]?)(")s   ([uUbB]?)(')t   namet   numberst   roott   assertt   breakt   continuet   delt   elift   elset   exceptt   exect   finallyt   fort   globalt   ift   lambdat   passt   printt   raiset   returnt   tryt   whilet   yields
   yield fromt   ast   witht   suffixs   \bt
   __import__t   abst   allt   anyt   applyt
   basestringt   bint   boolt   buffert	   bytearrayt   bytest   callablet   chrt   classmethodt   cmpt   coercet   compilet   complext   delattrt   dictt   dirt   divmodt	   enumeratet   evalt   execfilet   exitt   filet   filtert   floatt	   frozensett   getattrt   globalst   hasattrt   hasht   hext   idt   inputt   intt   internt
   isinstancet
   issubclasst   itert   lent   listt   localst   longt   mapt   maxt   mint   nextt   objectt   octt   opent   ordt   powt   propertyt   ranget	   raw_inputt   reducet   reloadt   reprt   reversedt   roundt   sett   setattrt   slicet   sortedt   staticmethodt   strt   sumt   supert   tuplet   typet   unichrt   unicodet   varst   xranget   zipt   prefixs   (?<!\.)s;   (?<!\.)(self|None|Ellipsis|NotImplemented|False|True|cls)\bt   ArithmeticErrort   AssertionErrort   AttributeErrort   BaseExceptiont   DeprecationWarningt   EOFErrort   EnvironmentErrort	   Exceptiont   FloatingPointErrort   FutureWarningt   GeneratorExitt   IOErrort   ImportErrort   ImportWarningt   IndentationErrort
   IndexErrort   KeyErrort   KeyboardInterruptt   LookupErrort   MemoryErrort   ModuleNotFoundErrort	   NameErrort   NotImplementedt   NotImplementedErrort   OSErrort   OverflowErrort   OverflowWarningt   PendingDeprecationWarningt   RecursionErrort   ReferenceErrort   RuntimeErrort   RuntimeWarningt   StandardErrort   StopIterationt   StopAsyncIterationt   SyntaxErrort   SyntaxWarningt   SystemErrort
   SystemExitt   TabErrort	   TypeErrort   UnboundLocalErrort   UnicodeDecodeErrort   UnicodeEncodeErrort   UnicodeErrort   UnicodeTranslateErrort   UnicodeWarningt   UserWarningt
   ValueErrort   VMSErrort   Warningt   WindowsErrort   ZeroDivisionErrort   __abs__t   __add__t   __and__t   __call__t   __cmp__t
   __coerce__t   __complex__t   __contains__t   __del__t   __delattr__t
   __delete__t   __delitem__t   __delslice__t   __div__t
   __divmod__t	   __enter__t   __eq__t   __exit__t	   __float__t   __floordiv__t   __ge__t   __get__t   __getattr__t   __getattribute__t   __getitem__t   __getslice__t   __gt__t   __hash__t   __hex__t   __iadd__t   __iand__t   __idiv__t   __ifloordiv__t   __ilshift__t   __imod__t   __imul__t	   __index__t   __init__t   __instancecheck__t   __int__t
   __invert__t   __iop__t   __ior__t   __ipow__t   __irshift__t   __isub__t   __iter__t   __itruediv__t   __ixor__t   __le__t   __len__t   __long__t
   __lshift__t   __lt__t   __missing__t   __mod__t   __mul__t   __ne__t   __neg__t   __new__t   __nonzero__t   __oct__t   __op__t   __or__t   __pos__t   __pow__t   __radd__t   __rand__t   __rcmp__t   __rdiv__t   __rdivmod__t   __repr__t   __reversed__t   __rfloordiv__t   __rlshift__t   __rmod__t   __rmul__t   __rop__t   __ror__t   __rpow__t   __rrshift__t
   __rshift__t   __rsub__t   __rtruediv__t   __rxor__t   __set__t   __setattr__t   __setitem__t   __setslice__t   __str__t   __sub__t   __subclasscheck__t   __truediv__t   __unicode__t   __xor__t	   __bases__t	   __class__t   __closure__t   __code__t   __defaults__t   __dict__t   __doc__t   __file__t   __func__t   __globals__t   __metaclass__t
   __module__t   __mro__t   __name__t   __self__t	   __slots__t   __weakref__s'   (\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?j?s   \d+[eE][+-]?[0-9]+j?s	   0[0-7]+j?s
   0[bB][01]+s   0[xX][a-fA-F0-9]+s   \d+Ls   \d+j?s   `.*?`s   @[\w.]+s   [a-zA-Z_]\w*s   #pops   (?:[ \t]|\\\n)+s   as\bt   ,s   [a-zA-Z_][\w.]*s   import\bs   None\bs   [a-zA-Z_.][\w.]*sY   \\([\\abfnrtv"\']|\n|N\{.*?\}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|x[a-fA-F0-9]{2}|[0-7]{1,3})s   strings-singles   strings-doublet   "s   \\\\|\\"|\\\nt   's   \\\\|\\'|\\\ns   """s   '''c         C   s   t  |  d  p d |  d  k S(   Ns   pythonw?(2(\.\d)?)?s   import i  (   R
   (   t   text(    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyt   analyse_text   s    (   R:   R;   R<   R=   R>   R?   R@   RA   RB   RC   RD   RE   RF   RG   RH   RI   RJ   RK   RL   RM   s
   yield fromRN   RO   (N   RQ   RR   RS   RT   RU   RV   RW   RX   RY   RZ   R[   R\   R]   R^   R_   R`   Ra   Rb   Rc   Rd   Re   Rf   Rg   Rh   Ri   Rj   Rk   Rl   Rm   Rn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rw   Rx   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   (5   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   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   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  R  R  R  R  R  R   R!  R"  R#  R$  R%  R&  R'  R(  R)  R*  R+  R,  R-  R.  R/  R0  R1  R2  R3  (   R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R>  R?  R@  RA  RB  RC  RD  (.   RA  R?  R:  R7   t   aliasest	   filenamest	   mimetypesR(   R   R   R   t   Affixt   DocR   t   Hashbangt   SingleR   R   t   WordR   R   t	   Namespacet   DoubleR   R   R   t   Builtint   PseudoR   t   Functiont   Magict   VariableR   t   Floatt   Octt   Bint   Hext   Integert   Longt   Backtickt	   DecoratorR   t   Classt   Escapet   tokensRI  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR      s6  													             	                                 						c        `   B   s  e  Z d  Z d Z d d g Z g  Z d d g Z e j e j	 BZ
 d e j e j f Z d   Z e j j   Z e d7d  d! e f e d8d  d! e j f g e d% <e d9dg dh d  d! e j f di e j j f e d:dg dh d  d! e j f g e d <e d;d  d! e j j f g e d
<e d<d  d! e j j f g e d<d e j f d!e j f d"e j f d#e j  f d$e j! f d%e j" f g e d&<g  e d'<d(e j# f d)e$ f e e f g e d*<e e j d+f g e d,<e e j% d+f g e d-<d.e& e' e e'  f d/e j( f e e j( f d0e& e' e$ e'  f e) d+ g e d1<d2e& e' e  d+f d/e j( f e e j( f e) d+ g e d3<e e* j+  e d4<e e* j,  e d5<d6  Z- RS(=  sf   
    For `Python <http://www.python.org>`_ source code (version 3.0).

    .. versionadded:: 0.10
    s   Python 3t   python3t   py3s   text/x-python3s   application/x-python3s	   [%s][%s]*c         C   s7   d t  j f d t  j f d |  f d |  f d |  f g S(   NsH   %(\(\w+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsaux%]sg   \{((\w+)((\.\w+)|(\[[^\]]+\]))*)?(\![sra])?(\:(.?[<>=\^])?[-+ ]?#?0?(\d+)?,?(\.\d+)?[E-GXb-gnosx%]?)?\}s   [^\\\'"%{\n]+s   [\'"\\]s   %|(\{{1,2})(   R   R&   (   R'   (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR(     s    				R:   t   asynct   awaitR;   R<   R=   R>   R?   R@   RB   RC   RD   RE   RF   RG   RI   t   nonlocalRJ   RK   RL   RM   s
   yield fromRN   RO   RP   s   \bt   Truet   Falset   NoneR)   RQ   RR   RS   RT   RW   RX   RZ   R[   R]   R^   R_   Ra   Rb   Rc   Rd   Re   Rf   Rg   Rh   Rl   Rm   t   formatRn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rx   Ry   Rz   R{   R|   R}   R   R   t
   memoryviewR   R   R   R   R   R   R   RH   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   s   (?<!\.)s+   (?<!\.)(self|Ellipsis|NotImplemented|cls)\bR   R   R   R   t   BufferErrort   BytesWarningR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   t   ResourceWarningR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   t   BlockingIOErrort   ChildProcessErrort   ConnectionErrort   BrokenPipeErrort   ConnectionAbortedErrort   ConnectionRefusedErrort   ConnectionResetErrort   FileExistsErrort   FileNotFoundErrort   InterruptedErrort   IsADirectoryErrort   NotADirectoryErrort   PermissionErrort   ProcessLookupErrort   TimeoutErrorR.   R   R   t
   __aenter__t	   __aexit__t	   __aiter__R   t	   __anext__t	   __await__t   __bool__t	   __bytes__R   R   R   R   R   R   R   t   __dir__R   R   R   R   R   R   t
   __format__R   R   R   R   R   R   R   R   R   R   R   t   __imatmul__R   R   R   R   R   R   R   R   R   R  R  R  R  R  R  R  t   __length_hint__R	  R
  t
   __matmul__R  R  R  R  R  R  t   __next__R  R  R  t   __prepare__R  R  R  R  R  R  R  t   __rmatmul__R   R!  R#  t	   __round__R$  R%  R&  R'  R(  R)  R*  R+  R,  R.  R/  R0  R1  R3  R/   t   __annotations__R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  t   __kwdefaults__R?  R@  RA  t   __objclass__t   __qualname__RB  RC  RD  R0   sT   (\d(?:_?\d)*\.(?:\d(?:_?\d)*)?|(?:\d(?:_?\d)*)?\.\d(?:_?\d)*)([eE][+-]?\d(?:_?\d)*)?s!   \d(?:_?\d)*[eE][+-]?\d(?:_?\d)*j?s   0[oO](?:_?[0-7])+s   0[bB](?:_?[01])+s   0[xX](?:_?[a-fA-F0-9])+s   \d(?:_?\d)*R8   R1   s   @\w+t   @R7   s   #popR*   R+   s   (\s+)(as)(\s+)s   \.s   (\s*)(,)(\s*)R-   s   (\s+)(import)\bR,   s   strings-singles   strings-doublec         C   s   t  |  d  S(   Ns   pythonw?3(\.\d)?(   R
   (   RH  (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyRI    s    (   R:   Rf  Rg  R;   R<   R=   R>   R?   R@   RB   RC   RD   RE   RF   RG   RI   Rh  RJ   RK   RL   RM   s
   yield fromRN   RO   (   Ri  Rj  Rk  (A   RQ   RR   RS   RT   RW   RX   RZ   R[   R]   R^   R_   Ra   Rb   Rc   Rd   Re   Rf   Rg   Rh   Rl   Rm   Rl  Rn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rx   Ry   Rz   R{   R|   R}   R   R   Rm  R   R   R   R   R   R   R   RH   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   (A   R   R   R   R   Rn  Ro  R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   Rp  R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   Rq  Rr  Rs  Rt  Ru  Rv  Rw  Rx  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   R  R   RQ   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#  R  R$  R%  R&  R'  R(  R)  R*  R+  R,  R.  R/  R0  R1  R3  (   R  R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R  R?  R@  RA  R  R  RB  RC  RD  (.   RA  R?  R:  R7   RJ  RK  RL  t   ret	   MULTILINEt   UNICODEt   flagst   unit	   xid_startt   xid_continuet   uni_nameR(   R   Rc  t   copyR   R   t   ConstantR   RT  RU  R   RV  RW  RX  R   RY  RZ  R[  R\  R]  R`  R   Ra  R   R   RR  R   R   RP  RS  RI  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR      s   	           	                                       	
	c           B   s8   e  Z d  Z d Z d g Z d g Z d   Z d   Z RS(   s  
    For Python console output or doctests, such as:

    .. sourcecode:: pycon

        >>> a = 'foo'
        >>> print a
        foo
        >>> 1 / 0
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
        ZeroDivisionError: integer division or modulo by zero

    Additional options:

    `python3`
        Use Python 3 lexer for code.  Default is ``False``.

        .. versionadded:: 1.0
    s   Python console sessiont   pycons   text/x-python-doctestc         K   s)   t  | d t  |  _ t j |  |  d  S(   NRd  (   R	   Rj  Rd  R    R   (   t   selft   options(    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR     s    c         c   s  |  j  r* t |  j   } t |  j   } n t |  j   } t |  j   } d } g  } d } d } d } xt j |  D]}	 |	 j   }
 |
 j	 d  s |
 j	 d  r d } | j
 t |  d t j |
 d  f g f  | |
 d 7} qv |
 j   d k r;| r;| j
 t |  d t j d f g f  | |
 d 7} qv | rxx% t | | j |   D] } | VqZWd } g  } n  |
 j	 d  st j d	 |
  rd
 } |
 } |	 j   } qv |
 d k r|	 j   t j |
 f Vqv | rR| |
 7} |
 j	 d  p|
 j   d k sid } x2 | j |  D]! \ } } } | | | | f Vq!Wd } qiqv |	 j   t j |
 f Vqv W| rx( t | | j |   D] } | VqWn  | rx5 | j |  D]! \ } } } | | | | f VqWn  d  S(   Nt    i    u   >>> u   ... i   u   ...i   u"   Traceback (most recent call last):u     File "[^"]+", line \d+\n$i   s   KeyboardInterrupt
t    (   Rd  R   R  R   R   R   t   line_ret   finditert   groupt
   startswitht   appendR{   R   t   Promptt   rstripR   t   get_tokens_unprocessedR  t   matcht   startR   Ra  t   stript   Output(   R  RH  t   pylexert   tblexert   curcodet
   insertionst   curtbt   tbindext   tbR  t   linet   itemt   it   tt   v(    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR    sb    			
!	(   RA  R?  R:  R7   RJ  RL  R   R  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR     s   			c           B   s  e  Z d  Z d Z d g Z d g Z d g Z i d e e e	 j
  d f d e	 j
 d f d e f g d	 6d
 e e e j e e e e e  f d e e e j e e e  f d e e e e  e  f d e e e e  f d e e	 j e e e  d f d e e	 j e  d f g d 6Z RS(   s;   
    For Python tracebacks.

    .. versionadded:: 0.7
    s   Python Tracebackt   pytbs   *.pytbs   text/x-python-tracebacks   ^(\^C)?(Traceback.*\n)t   intbs   ^(?=  File "[^"]+", line \d+)s   ^.*\nR9   s0   ^(  File )("[^"]+")(, line )(\d+)(, in )(.+)(\n)s%   ^(  File )("[^"]+")(, line )(\d+)(\n)s   ^(    )(.+)(\n)s   ^([ \t]*)(\.\.\.)(\n)s   ^([^:]+)(: )(.+)(\n)s   #pops   ^([a-zA-Z_]\w*)(:?\n)(   RA  R?  R:  R7   RJ  RK  RL  R   R   R   t	   TracebackR   R   RT  R   R   R   R   R   Rc  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR     s,   			!c           B   s*  e  Z d  Z d Z d g Z d g Z d g Z i d e f d e j	 d f d e j	 f d	 e j	 f d
 e j	 d f g d 6d e
 e e j e e e e e  f d e
 e e j e e e  f d e
 e e e  e  f d e
 e e e  f d e
 e j e e e  d f d e
 e j e  d f g d 6Z RS(   sd   
    For Python 3.0 tracebacks, with support for chained exceptions.

    .. versionadded:: 1.0
    s   Python 3.0 Tracebackt   py3tbs   *.py3tbs   text/x-python3-tracebacks   \ns'   ^Traceback \(most recent call last\):\nR  sH   ^During handling of the above exception, another exception occurred:\n\nsI   ^The above exception was the direct cause of the following exception:\n\ns   ^(?=  File "[^"]+", line \d+)R9   s0   ^(  File )("[^"]+")(, line )(\d+)(, in )(.+)(\n)s%   ^(  File )("[^"]+")(, line )(\d+)(\n)s   ^(    )(.+)(\n)s   ^([ \t]*)(\.\.\.)(\n)s   ^([^:]+)(: )(.+)(\n)s   #pops   ^([a-zA-Z_]\w*)(:?\n)(   RA  R?  R:  R7   RJ  RK  RL  R   R   R  R   R   RT  R   R   R   R   R   Rc  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR     s2   						!c        Q   B   s3  e  Z d  Z d Z d d d g Z d d d g Z d d	 g Z i d
 e f d e e e	 j
  f d e e e	 j
  f d e f d e f d e f d e f d e f d e j f d e e e j e  f d e f d e e e j e e e e e  f e d  d e e e  d f d e e e  d f d e e e  f d e e e  d f d e e e  d f d  e e e  d! f e d"  e d#  d$ e	 d% f d& e	 d' f d( e	 d) f d* e	 d+ f d, e	 e d- d%  f d. e	 e d- d'  f d/ e	 e d- d)  f d0 e	 e d- d+  f e d1  e d2  g d3 6e d dQ dR e f dS e j f g d 6e d d d dQ dR e j f d e j j f e d d d dQ dR e j f g d" 6d e j f d e j f d e j f d e j j f d e j f g d2 6d e	 j f g d# 6d e j  f d e f g d1 6d e j! d f g d 6d e j" f d e f d e e j! e  d f d e e j! e e  f d e d f d e f d e d f d e d f d e j f d e f g
 d 6d e j# d f g d 6d e e e e  f d e j$ f d e e e e  f e% d  g d! 6d e e e  d f d e j$ f e% d  g d 6d e	 j& f g d- 6d e	 j' f d e	 f d e	 f d e	 f g d 6d
 e	 f g d 6d e	 d f d e	 j& f e d  g d) 6d e	 d f d e	 j& f e d  g d+ 6d e	 d f e d  e d  g d% 6d e	 d f e d  e d  g d' 6Z( RS(   s]   
    For Pyrex and `Cython <http://cython.org>`_ source code.

    .. versionadded:: 1.1
    t   Cythont   cythont   pyxt   pyrexs   *.pyxs   *.pxds   *.pxis   text/x-cythons   application/x-cythons   \ns   ^(\s*)("""(?:.|\n)*?""")s   ^(\s*)('''(?:.|\n)*?''')s   [^\S\n]+s   #.*$s   []{}:(),;[]s   \\\ns   \\s   (in|is|and|or|not)\bs   (<)([a-zA-Z0-9.?]+)(>)s   !=|==|<<|>>|[-~+/*%=<>&^|.?]s   (from)(\d+)(<=)(\s+)(<)(\d+)(:)R)   s   (def|property)(\s+)R*   s   (cp?def)(\s+)t   cdefs	   (cdef)(:)s   (class|struct)(\s+)R+   s   (from)(\s+)R,   s   (c?import)(\s+)R-   R.   R1   s   (?:[rR]|[uU][rR]|[rR][uU])"""R2   s   (?:[rR]|[uU][rR]|[rR][uU])'''R3   s   (?:[rR]|[uU][rR]|[rR][uU])"R4   s   (?:[rR]|[uU][rR]|[rR][uU])'R5   s   [uU]?"""R6   s   [uU]?'''s   [uU]?"s   [uU]?'R7   R8   R9   R:   R;   t   byR<   t   ctypedefR=   R>   R?   R@   s   except?RA   RB   RC   t   fusedt   gilRD   RE   R   RF   t   nogilRG   RH   RI   RJ   RK   RL   RM   RN   RO   RP   s   \bs   (DEF|IF|ELIF|ELSE)\bRQ   RR   RS   RT   RU   RV   RW   RX   RY   RZ   R[   R\   R]   R^   R_   R`   Ra   Rb   Rc   Rd   Re   Rf   Rg   Rh   Ri   Rj   Rk   Rl   Rm   Rn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rw   Rx   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   t   unsignedR   R   R   R   s   (?<!\.)s<   (?<!\.)(self|None|Ellipsis|NotImplemented|False|True|NULL)\bR   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   R   R   R   R   R   R   s&   (\d+\.?\d*|\d*\.\d+)([eE][+-]?[0-9]+)?s   0\d+s   0[xX][a-fA-F0-9]+s   \d+Ls   \d+s   `.*?`s   @\w+s   [a-zA-Z_]\w*s   #pops%   (public|readonly|extern|api|inline)\bs   (struct|enum|union|class)\bs   ([a-zA-Z_]\w*)(\s*)(?=[(:#=]|$)s   ([a-zA-Z_]\w*)(\s*)(,)s   from\bs   as\bt   :s	   (?=["\'])t   .s   (\s+)(as)(\s+)s   [a-zA-Z_][\w.]*s   (\s*)(,)(\s*)s   (\s+)(c?import)\bs   [a-zA-Z_.][\w.]*sY   \\([\\abfnrtv"\']|\n|N\{.*?\}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|x[a-fA-F0-9]{2}|[0-7]{1,3})sP   %(\([a-zA-Z0-9]+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]s   [^\\\'"%\n]+s   [\'"\\]R%   t   stringst   nlRF  s   \\\\|\\"|\\\nRG  s   \\\\|\\'|\\\ns   """s   '''(   R:   R;   R  R<   R  R=   R>   R?   R@   s   except?RA   RB   RC   R  R  RD   RE   R   RF   R  RG   RH   RI   RJ   RK   RL   RM   RN   RO   (O   RQ   RR   RS   RT   RU   RV   RW   RX   RY   RZ   R[   R\   R]   R^   R_   R`   Ra   Rb   Rc   Rd   Re   Rf   Rg   Rh   Ri   Rj   Rk   Rl   Rm   Rn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rw   Rx   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   (0   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   R   R   R   R   R   R   R   ()   RA  R?  R:  R7   RJ  RK  RL  R   R   R   RN  R   R   R   RQ  R   t   TypeR   R]  R   R   R   R   t   PreprocRT  RU  R   RY  RZ  R\  R^  R_  R`  RV  t   ReservedRa  RR  R   Rb  R&   Rc  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR   ;  s   											              	             							c        O   B   sL  e  Z d  Z d Z d g Z d g Z d g Z i 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 e d d d  f d e e d d d  f d e e d d d  f d e e d d d  f d e f d e j f d e f e d d2 d3 d4 d5 e j f e d d2 d3 d4 d5 e j f dr e j j f ds e j f dt e j f du e j f dv e f dw e j f dx e f dy e f dz e f g d{ 6d| e j f g d 6d} e j f d~ e f d e f d e f d e f g d 6d e d f g d 6d e d f g d 6d e d f g d 6d e d f g d 6Z  RS(   s   
    Lexer for `dg <http://pyos.github.com/dg>`_,
    a functional and object-oriented programming language
    running on the CPython 3 VM.

    .. versionadded:: 1.6
    t   dgs   *.dgs	   text/x-dgs   \s+s   #.*?$s   (?i)0b[01]+s   (?i)0o[0-7]+s   (?i)0x[0-9a-f]+s(   (?i)[+-]?[0-9]+\.[0-9]+(e[+-]?[0-9]+)?j?s   (?i)[+-]?[0-9]+e[+-]?\d+j?s   (?i)[+-]?[0-9]+j?s   (?i)(br|r?b?)'''R6   R3   t   strings   (?i)(br|r?b?)"""R2   s   (?i)(br|r?b?)'R5   s   (?i)(br|r?b?)"R4   s   `\w+'*`s   \b(and|in|is|or|where)\bs   [!$%&*+\-./:<-@\\^|~;,]+RX   RZ   R[   R^   Rb   Rd   s   dict'Rm   Rn   Rv   R|   s   list'Rm  R   R   R   R   s   set'R   R   R   R   R   s   tuple'R   R   s   (?<!\.)RP   s
   (?![\'\w])RQ   RR   RS   RT   RW   t   bindR]   R_   Ra   Rc   Re   Rf   t   dropt	   dropwhileRg   Rh   t   exhaustRl   t   flips   foldl1?Rl  t   fstRo   Rp   Rq   Rr   t   headRs   Rt   t   initRu   Rx   Ry   Rz   t   iteratet   lastR{   R}   R   R   R   R   R   R   R   R   RH   R   R   R   R   s   scanl1?t   sndR   R   t   tailt   taket	   takewhileR   R   s>   (?<!\.)(self|Ellipsis|NotImplemented|None|True|False)(?!['\w])s3   (?<!\.)[A-Z]\w*(Error|Exception|Warning)'*(?!['\w])sT   (?<!\.)(Exception|GeneratorExit|KeyboardInterrupt|StopIteration|SystemExit)(?!['\w])s_   (?<![\w.])(except|finally|for|if|import|not|otherwise|raise|subclass|while|with|yield)(?!['\w])s   [A-Z_]+'*(?!['\w])s   [A-Z]\w+'*(?!['\w])s   \w+'*s   [()]R  R9   sY   \\([\\abfnrtv"\']|\n|N\{.*?\}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|x[a-fA-F0-9]{2}|[0-7]{1,3})sG   %(\(\w+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]s   [^\\\'"%\n]+s   [\'"\\]R%   s   \nRF  s   #popRG  s   """s   '''(   RX   RZ   R[   R^   Rb   Rd   s   dict'Rm   Rn   Rv   R|   s   list'Rm  R   R   R   R   s   set'R   R   R   R   R   s   tuple'R   (=   RQ   RR   RS   RT   RW   R  R]   R_   Ra   Rb   Rc   Re   Rf   R  R  Rg   Rh   R  Rl   R  s   foldl1?Rl  R  Ro   Rp   Rq   Rr   R  Rs   Rt   R  Ru   Rx   Ry   Rz   R  R  R{   R}   R   R   R   R   R   R   R   R   RH   R   R   R   R   s   scanl1?R  R   R   R  R  R  R   R   (!   RA  R?  R:  R7   RJ  RK  RL  R   R   RP  R   R[  RZ  R\  RY  R]  R   R   R   RQ  R   R   RT  RU  R   R   R  R  R   R   Rb  R&   Rc  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR     s   						   	       											c          B   sG   e  Z d  Z d Z d g Z g  Z g  Z e d Z d  Z	 d  Z
 RS(  s[   
    A Python lexer recognizing Numerical Python builtins.

    .. versionadded:: 0.10
    t   NumPyt   numpyRR   t   absolutet
   accumulatet   addt   alenRS   t   allcloset   alltruet   alterdott   amaxt   amint   angleRT   R  t   apply_along_axist   apply_over_axest   aranget   arccost   arccosht   arcsint   arcsinht   arctant   arctan2t   arctanht   argmaxt   argmint   argsortt   argwheret   aroundt   arrayt   array2stringt   array_equalt   array_equivt
   array_reprt   array_splitt	   array_strt
   arrayranget
   asanyarrayt   asarrayt   asarray_chkfinitet   ascontiguousarrayt   asfarrayt   asfortranarrayt   asmatrixt   asscalart   astypet
   atleast_1dt
   atleast_2dt
   atleast_3dt   averaget   bartlettt	   base_reprt   betat   binary_reprt   bincountt   binomialt   bitwise_andt   bitwise_nott
   bitwise_ort   bitwise_xort   blackmant   bmatt	   broadcastt   byte_boundsR[   t   byteswapt   c_t   can_castt   ceilt   chooset   clipt   column_stackt   common_typet   compare_chararrayst   compresst   concatenatet   conjt	   conjugatet   convolveR  t   corrcoeft	   correlatet   cost   cosht   covt   crosst   cumprodt
   cumproductt   cumsumt   deletet	   deprecatet   diagt   diagflatt   diagonalt   difft   digitizet   dispt   dividet   dott   dsplitt   dstackt   dtypet   dumpt   dumpst   ediff1dt   emptyt
   empty_liket   equalt   expt   expand_dimst   expm1t   extractt   eyet   fabst   fastCopyAndTransposet   fftt   fftfreqt   fftshiftt   fillt   finfot   fixt   flatt   flatnonzerot   flattent   fliplrt   flipudt   floort   floor_dividet   fmodt   frexpt
   fromarrayst
   frombuffert   fromfilet   fromfunctiont   fromitert
   frompyfunct
   fromstringt   generict   get_array_wrapt   get_includet   get_numarray_includet   get_numpy_includet   get_printoptionst	   getbuffert
   getbufsizet   geterrt
   geterrcallt	   geterrobjt   getfieldt   gradientt   greatert   greater_equalt   gumbelt   hammingt   hanningt	   histogramt   histogram2dt   histogramddt   hsplitt   hstackt   hypott   i0t   identityt   ifftt   imagt	   index_expt   indicest   inft   infot   innert   insertt   int_asbuffert   interpt   intersect1dt   intersect1d_nut   invt   invertt	   iscomplext   iscomplexobjt   isfinitet	   isfortrant   isinft   isnant   isneginft   isposinft   isrealt	   isrealobjt   isscalart   issctypet   issubclass_t
   issubdtypet   issubsctypeR  t   itemsett   iterablet   ix_t   kaisert   kront   ldexpt
   left_shiftt   lesst
   less_equalt   lexsortt   linspacet   loadt   loadst   loadtxtt   logt   log10t   log1pt   log2t   logical_andt   logical_nott
   logical_ort   logical_xort   logspacet   lstsqt   matt   matrixR   t   maximumt   maximum_sctypet   may_share_memoryt   meant   mediant   meshgridt   mgridR   t   minimumt   mintypecodet   modt   modft   msortt   multiplyt   nant
   nan_to_numt	   nanargmaxt	   nanargmint   nanmaxt   nanmint   nansumt   ndenumeratet   ndimt   ndindext   negativet   newaxist	   newbuffert   newbyteordert   nonzerot	   not_equalt
   obj2sctypet   ogridt   onest	   ones_liket   outert   permutationt	   piecewiset   pinvt   pkgloadt   placet   poissont   polyt   poly1dt   polyaddt   polydert   polydivt   polyfitt   polyintt   polymult   polysubt   polyvalt   powert   prodt   productt   ptpt   putt   putmaskt   r_t   randintt   random_integerst   random_samplet   ranft   rankt   ravelt   realt   real_if_closet   recarrayt
   reciprocalR   t	   remaindert   repeatt   requiret   reshapet   resizet
   restoredott   right_shiftt   rintt   rollt   rollaxist   rootst   rot90R   t   round_t	   row_stackt   s_t   samplet   savetxtt   sctype2chart   searchsortedt   seedt   selectt   set_numeric_opst   set_printoptionst   set_string_functiont
   setbufsizet	   setdiff1dt   seterrt
   seterrcallt	   seterrobjt   setfieldt   setflagst   setmember1dt   setxor1dt   shapet   show_configt   shufflet   signt   signbitt   sint   sinct   sinht   sizeR   t   solvet   sometruet   sortt   sort_complext   sourcet   splitt   sqrtt   squaret   squeezet   standard_normalt   stdt   subtractR   t   svdt   swapaxesR  t   tant   tanht	   tensordott   testt   tilet   tofilet   tolistt   tostringt   tracet	   transposet   trapzt   trit   trilt
   trim_zerost   triut   true_dividet   typeDictt   typenamet   uniformt   union1dt   uniquet   unique1dt   unravel_indext   unwrapt   vandert   vart   vdott	   vectorizet   viewt   vonmisest   vsplitt   vstackt   weibullt   wheret   whot   zerost
   zeros_likec         c   sg   x` t  j |  |  D]L \ } } } | t k rQ | |  j k rQ | t j | f Vq | | | f Vq Wd  S(   N(   R   R  R   t   EXTRA_KEYWORDSR   RU  (   R  RH  t   indext   tokent   value(    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR    s
    c         C   s5   t  |  d  s d |  d  k o4 d |  k p4 d |  k S(   Ns   pythonw?(2(\.\d)?)?s   import i  s   import numpys   from numpy import(   R
   (   RH  (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyRI    s    (  RR   R  R  R  R  RS   R  R  R  R  R  R  RT   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  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/  R0  R1  R2  R3  R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R>  R?  R@  RA  RB  RC  RD  RE  RF  RG  RH  RI  RJ  RK  RL  RM  RN  RO  RP  RQ  RR  RS  RT  RU  RV  RW  RX  RY  RZ  R[  R\  R]  R^  R_  R`  Ra  Rb  Rc  Rd  Re  Rf  Rg  Rh  Ri  Rj  Rk  Rl  Rm  Rn  Ro  Rp  Rq  Rr  Rs  Rt  Ru  Rv  Rw  Rx  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  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  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  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  R  R  R  R  R  R  R   R!  R"  R#  R$  R   R%  R&  R'  R(  R)  R*  R+  R,  R-  R.  R/  R0  R   R1  R2  R  R3  R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R>  R?  R@  RA  RB  RC  RD  RE  RF  RG  RH  RI  RJ  RK  RL  RM  RN  RO  RP  RQ  RR  RS  RT  RU  RV  RW  (   RA  R?  R:  R7   RJ  RL  RK  R   RX  R  RI  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyR   Q  s   	                                                               		()   R:  R  t   pygments.lexerR    R   R   R   R   R   R   R   R   t   pygments.utilR	   R
   t   pygments.tokenR   R   R   R   R   R   R   R   R   R   R   t   pygmentsR   R  t   __all__Ra   R  R   R   R   R   R   R   R   R   (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/python.pyt   <module>
   s"   @L		X''c