
xi\c           @   s8  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
 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 j Z d d d d	 d
 d d d d d d g Z d e j d d d d d d  d Z d e j d d d d d d d d d d 
 d Z e d e 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 e f d)     YZ( d e f d*     YZ) d e f d+     YZ* d S(,   s   
    pygments.lexers.javascript
    ~~~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for JavaScript and related languages.

    :copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
iN(   t
   RegexLexert   includet   bygroupst   defaultt   usingt   thist   wordst   combined(	   t   Textt   Commentt   Operatort   Keywordt   Namet   Stringt   Numbert   Punctuationt   Other(   t   get_bool_optt	   iteritemst   JavascriptLexert   KalLexert   LiveScriptLexert	   DartLexert   TypeScriptLexert
   LassoLexert   ObjectiveJLexert   CoffeeScriptLexert	   MaskLexert   EarlGreyLexert   JuttleLexers   (?:[$_t   Lut   Llt   Ltt   Lmt   Lot   Nls   ]|\\u[a-fA-F0-9]{4})s   (?:[$t   Mnt   Mct   Ndt   Pcu   ‌‍]|\\u[a-fA-F0-9]{4})s   (?:s   )*c           B   sG  e  Z d  Z d Z d d g Z d d g Z d d d d	 g Z e j e j	 Be j
 BZ i d
 e f d e f d e j f d e j f g d 6e d  d e j d f d e d1 f e d  g d 6d e d f g d 6d e j f d e d f e d  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 d f d e d f d e f d  e d f d! e j d f d" e j f d# e j  f d$ e! j" f e# e! j$ f d% e j% f d& e j f d' e j& d( f g d) 6d' e j& d f d* e j& f d+ e j& f d, e j' d- f d. e j& f d/ e j& f g d( 6d0 e j' d f e d)  g d- 6Z( RS(2   s%   
    For JavaScript source code.
    t
   JavaScriptt   jst
   javascripts   *.jss   *.jsms   application/javascripts   application/x-javascripts   text/x-javascripts   text/javascripts   \s+s   <!--s   //.*?\ns	   /\*.*?\*/t   commentsandwhitespaces5   /(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gimuy]+\b|\B)s   #pops   (?=/)t   badregext   slashstartsregexs   \ns   \A#! ?/.*?\ns   ^(?=\s|/|<!--)s(   (\.\d+|[0-9]+\.[0-9]*)([eE][-+]?[0-9]+)?s
   0[bB][01]+s   0[oO][0-7]+s   0[xX][0-9a-fA-F]+s   [0-9]+s	   \.\.\.|=>s@   \+\+|--|~|&&|\?|:|\|\||\\(?=\n)|(<<|>>>?|==?|!=?|[-<>+*%&|^/])=?s   [{(\[;,]s   [})\].]s   (for|in|while|do|break|return|continue|switch|case|default|if|else|throw|try|catch|finally|new|delete|typeof|instanceof|void|yield|this|of)\bs   (var|let|with|function)\bs   (abstract|boolean|byte|char|class|const|debugger|double|enum|export|extends|final|float|goto|implements|import|int|interface|long|native|package|private|protected|public|short|static|super|synchronized|throws|transient|volatile)\bs*   (true|false|null|NaN|Infinity|undefined)\bs   (Array|Boolean|Date|Error|Function|Math|netscape|Number|Object|Packages|RegExp|String|Promise|Proxy|sun|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|Error|eval|isFinite|isNaN|isSafeInteger|parseFloat|parseInt|document|this|window)\bs   "(\\\\|\\"|[^"])*"s   '(\\\\|\\'|[^'])*'t   `t   interpt   roots   \\\\s   \\`s   \$\{s   interp-insides   \$s   [^`\\$]+s   \}(   s   #popR,   ()   t   __name__t
   __module__t   __doc__t   namet   aliasest	   filenamest	   mimetypest   ret   DOTALLt   UNICODEt	   MULTILINEt   flagsR   R	   t   Singlet	   MultilineR   R   t   RegexR   t   HashbangR   t   Floatt   Bint   Octt   Hext   IntegerR   R
   R   t   Declarationt   Reservedt   ConstantR   t   Builtint   JS_IDENTR   t   Doublet   Backtickt   Interpolt   tokens(    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR   !   sf   										c           B   s  e  Z d  Z d Z d g Z d g Z d d g Z e j Z	 i d e
 f d e j f d e j f g d	 6d
 e j d f e d	  g d 6d e f d e j d f d
 e j f e d	  g d 6d e d f d e f e d  g d 6d e d f d e f e d  g d 6e d	  d e j f d e f d e j f d e j f d e f d e d f d e f d e j d f d e j d f d  e d f d! e j 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 d* f d+ e d, f d- e d. f d/ e d0 f g d 6d1 e f g d2 6d3 e j! d f e d  g d4 6d- e d f d5 e f d6 e j! d4 f e d2  g d. 6d/ e d f d7 e f e d2  g d0 6d) e d f d8 e f d6 e j! d4 f e d2  g d* 6d+ e d f d9 e f e d2  g d, 6Z" RS(:   sk   
    For `Kal`_ source code.

    .. _Kal: http://rzimmerman.github.io/kal


    .. versionadded:: 2.0
    t   Kalt   kals   *.kals   text/kals   application/kals   \s+s   ###[^#].*?###s   #(?!##[^#]).*?\nR+   s   [$a-zA-Z_][\w$]*\s*s   #popt   functiondefs   \binherits\s+from\bs   [$a-zA-Z_][\w$]*\s*\nt   classdefs   \]s   \b(property|value)\bR0   t   listcomprehensions   \ns   \bfrom\bt   waitfors8   /(?! )(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)s%   \?|:|_(?=\n)|==?|!=|-(?!>)|[<>+*/-]=?sE   \b(and|or|isnt|is|not|but|bitwise|mod|\^|xor|exists|doesnt\s+exist)\bs   (?:\([^()]+\))?\s*>s   [{(]s   \[s   [})\].,]s   \b(function|method|task)\bs	   \bclass\bs   \b(safe\s+)?wait\s+for\bs#   \b(me|this)(\.[$a-zA-Z_][\w.$]*)?\bs   (?<![.$])(for(\s+(parallel|series))?|in|of|while|until|break|return|continue|when|if|unless|else|otherwise|except\s+when|throw|raise|fail\s+with|try|catch|finally|new|delete|typeof|instanceof|super|run\s+in\s+parallel|inherits\s+from)\bsN   (?<![.$])(true|false|yes|no|on|off|null|nothing|none|NaN|Infinity|undefined)\bs   (Array|Boolean|Date|Error|Function|Math|netscape|Number|Object|Packages|RegExp|String|sun|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|isSafeInteger|parseFloat|parseInt|document|window|print)\bs%   [$a-zA-Z_][\w.$]*\s*(:|[+\-*/]?\=)?\bs%   [0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?s   0x[0-9a-fA-F]+s   [0-9]+s   """t   tdqss   '''t   tsqst   "t   dqst   't   sqss
   [^#\\\'"]+t   stringss   \}t   interpoling_strings   \\.|\'s   #\{s   #|\\.|"s   \\.|\'|"s
   #|\\.|\'|"(#   R1   R2   R3   R4   R5   R6   R7   R8   R9   R<   R   R	   R>   R=   R   t   FunctionR   R   t   ClassR   R   R?   R
   t   WordRF   t   Variablet   InstanceRH   RI   R   RA   RD   RE   RM   RN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR   q   s   																		c           B   s  e  Z d  Z d Z d d g Z d g Z d g Z e j Z	 i
 d e
 f d e j f d e j f g d	 6e d	  d
 e j d f d e j f d e j f g d 6e d	  d e j d4 f d e j d f e d  g d 6e d	  d e j f d e d f d e d f d e f d e d f d e j f d e j f d e j d f d e j j d f d e j d f d e j d f d e j f d e j f d e d  f d! e d" f d# e d$ f d% e d& f d' e f d( e f g d) 6d* e f g d+ 6d, e j d f e d)  g d- 6d# e d f d. e f d/ e j d- f d0 e f e d+  g d$ 6d% e d f d1 e f e d+  g d& 6d e d f d2 e f d/ e j d- f d0 e f e d+  g d  6d! e d f d3 e f e d+  g d" 6Z  RS(5   sz   
    For `LiveScript`_ source code.

    .. _LiveScript: http://gkz.github.com/LiveScript/

    .. versionadded:: 1.6
    t
   LiveScripts   live-scriptt
   livescripts   *.lss   text/livescripts   \s+s	   /\*.*?\*/s   #.*?\nR+   s   //([gim]+\b|\B)s   #popt   /s   [^/#]+t   multilineregexs   //s8   /(?! )(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)R-   s?   (?:\([^()]+\))?[ ]*[~-]{1,2}>|(?:\(?[^()\n]+\)?)?[ ]*<[~-]{1,2}s   \+\+|&&|(?<![.$])\b(?:and|x?or|is|isnt|not)\b|\?|:|=|\|\||\\(?=\n)|(<<|>>>?|==?|!=?|~(?!\~?>)|-(?!\-?>)|<(?!\[)|(?<!\])>|[+*`%&|^/])=?s   [{(\[;,]s   [})\].]s   (?<![.$])(for|own|in|of|while|until|loop|break|return|continue|switch|when|then|if|unless|else|throw|try|catch|finally|new|delete|typeof|instanceof|super|extends|this|class|by|const|var|to|til)\bsF   (?<![.$])(true|false|yes|no|on|off|null|NaN|Infinity|undefined|void)\bs   (Array|Boolean|Date|Error|Function|Math|netscape|Number|Object|Packages|RegExp|String|sun|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|document|window)\bs   [$a-zA-Z_][\w.\-:$]*\s*[:=]\ss   @[$a-zA-Z_][\w.\-:$]*\s*[:=]\st   @s   @?[$a-zA-Z_][\w-]*s/   [0-9]+\.[0-9]+([eE][0-9]+)?[fd]?(?:[a-zA-Z_]+)?s"   [0-9]+(~[0-9a-z]+)?(?:[a-zA-Z_]+)?s   """RU   s   '''RV   RW   RX   RY   RZ   s   \\\S+s	   <\[.*?\]>R0   s
   [^#\\\'"]+R[   s   \}R\   s   \\.|\'s   #\{t   #s   #|\\.|"s   \\.|\'|"s
   #|\\.|\'|"(   s   #popRe   (!   R1   R2   R3   R4   R5   R6   R7   R8   R9   R<   R   R	   R>   R=   R   R   R?   R   R   R]   R
   R   R   RH   RI   R`   Ra   R   R   RA   RE   RM   RN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR      s   																				c           B   s  e  Z d  Z d Z d g Z d g Z d g Z e j e j	 BZ
 i	 e d  d e j f d e d f d	 e f d
 e f d e j f d e j f d e e j e  d f d e f d e j f d e j f d e j f d e f d e j f d e f d e f d e j f d e f d e f d e f g d 6d e j d f g d 6e d  d e f d e f d e f d e f d  e d f g d 6d! e j f d" e j f d# e j f d$ e j f d% e j d& f d' e j d( f d) e j d* f d+ e j d, f g d 6d- e j f d. e e j  e  f d/ e e j  e! e"  e j   f g d0 6d) e j d f d1 e j f e d0  d2 e j f g d* 6d% e j d f d3 e j f e d0  d4 e j f g d& 6d+ e j d f d5 e j f e d0  d2 e j f g d, 6d' e j d f d6 e j f e d0  d7 e j f g d( 6Z# RS(8   sT   
    For `Dart <http://dartlang.org/>`_ source code.

    .. versionadded:: 1.5
    t   Dartt   darts   *.darts   text/x-dartt   string_literals   #!(.*?)$s   \b(import|export)\bt   import_decls!   \b(library|source|part of|part)\bs   [^\S\n]+s   //.*?\ns	   /\*.*?\*/s   \b(class)\b(\s+)t   classsx   \b(assert|break|case|catch|continue|default|do|else|finally|for|if|in|is|new|return|super|switch|this|throw|try|while)\bs|   \b(abstract|async|await|const|extends|factory|final|get|implements|native|operator|set|static|sync|typedef|var|with|yield)\bs4   \b(bool|double|dynamic|int|num|Object|String|void)\bs   \b(false|null|true)\bs   [~!%^&*+=|?:<>/-]|as\bs   [a-zA-Z_$]\w*:s   [a-zA-Z_$]\w*s   [(){}\[\],.;]s   0[xX][0-9a-fA-F]+s   \d+(\.\d*)?([eE][+-]?\d+)?s   \.\d+([eE][+-]?\d+)?s   \nR0   s   #pops   \s+s   \b(as|show|hide)\bs   \,s   \;s   r"""([\w\W]*?)"""s   r'''([\w\W]*?)'''s   r"(.*?)"s   r'(.*?)'s   """t   string_double_multilines   '''t   string_single_multilineRW   t   string_doubleRY   t   string_singlesA   \\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\{[0-9A-Fa-f]*\}|[a-z'\"$\\])s   (\$)([a-zA-Z_]\w*)s   (\$\{)(.*?)(\})t   string_commons
   [^"$\\\n]+s   \$+s   [^"$\\]+s   (\$|\")+s
   [^'$\\\n]+s	   [^\'$\\]+s   (\$|\')+($   R1   R2   R3   R4   R5   R6   R7   R8   R;   R9   R<   R   R	   t   PreprocR   R   R=   R>   R   RF   t   TypeRH   R
   R   t   LabelR   R   RD   R^   R   RK   t   EscapeRM   R   R   RN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR   U  s   																		%				c           B   s  e  Z d  Z d Z d d g Z d d g Z d g Z e j e j	 BZ
 d Z i d e f d	 e f d
 e j f d e j f g d 6e d  d e j d f d e d3 f e d  g d 6d e d f g d 6d e d f e d  d e d f d e d f d e f d e d f d e j d f d e j f d e j f d e j f d e e j e e j e  d f d e j f d e j f d e e j e  d f d  e j d f d! e e j e 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 j f g d+ 6d( e j$ d f d, e j$ f d- e j$ f d. e j% d/ f d0 e j$ f d1 e j$ f g d) 6d2 e j% d f e d+  g d/ 6Z& RS(4   s`   
    For `TypeScript <http://typescriptlang.org/>`_ source code.

    .. versionadded:: 1.6
    t
   TypeScriptt   tst
   typescripts   *.tss   *.tsxs   text/x-typescriptg      ?s   \s+s   <!--s   //.*?\ns	   /\*.*?\*/R+   s3   /(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)s   #pops   (?=/)R,   R-   s   \ns   ^(?=\s|/|<!--)s@   \+\+|--|~|&&|\?|:|\|\||\\(?=\n)|(<<|>>>?|==?|!=?|[-<>+*%&|^/])=?s   [{(\[;,]s   [})\].]s   (for|in|while|do|break|return|continue|switch|case|default|if|else|throw|try|catch|finally|new|delete|typeof|instanceof|void|of|this)\bs   (var|let|with|function)\bs   (abstract|boolean|byte|char|class|const|debugger|double|enum|export|extends|final|float|goto|implements|import|int|interface|long|native|package|private|protected|public|short|static|super|synchronized|throws|transient|volatile)\bs*   (true|false|null|NaN|Infinity|undefined)\bs   (Array|Boolean|Date|Error|Function|Math|netscape|Number|Object|Packages|RegExp|String|sun|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|Error|eval|isFinite|isNaN|parseFloat|parseInt|document|this|window)\bs(   \b(module)(\s*)(\s*[\w?.$][\w?.$]*)(\s*)s   \b(string|bool|number)\bs)   \b(constructor|declare|interface|as|AS)\bs    (super)(\s*)(\([\w,?.$\s]+\s*\))s   ([a-zA-Z_?.$][\w?.$]*)\(\) \{s+   ([\w?.$][\w?.$]*)(\s*:\s*)([\w?.$][\w?.$]*)s   [$a-zA-Z_]\w*s%   [0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?s   0x[0-9a-fA-F]+s   [0-9]+s   "(\\\\|\\"|[^"])*"s   '(\\\\|\\'|[^'])*'R.   R/   s   @\w+R0   s   \\\\s   \\`s   \$\{s   interp-insides   \$s   [^`\\$]+s   \}(   s   #popR,   ('   R1   R2   R3   R4   R5   R6   R7   R8   R9   R;   R<   t   priorityR   R	   R=   R>   R   R   R?   R   R
   R   R   RF   RG   RH   R   RI   R   R   Rs   R   RA   RD   RE   RK   RL   RM   RN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     sr   										c        (   B   sc  e  Z d  Z d Z d d g Z d d g Z d d d g Z d	 g Z e j	 e j
 Be j BZ i d
 e j d f d e d f d e f e dc  g d 6d e j d f d e j d f d e j d f d e j d f d e f d e f g d 6d e j d f d e f d e j d f d e f d e f g d 6d e j d f d e f d e f g d 6d e j d f e d  g d 6d e j d f e d  g d 6d e j d f e d  g d 6d e f d  e j f d! e j f d" e j f g d# 6e d#  d$ e j f d% e j f d& e j f d' e f d( e j d) f d* e j d+ f d, e j f d- e j f d. e j j f d/ e  e j! j" e j j#  f d0 e  e j! j" e$ e j j#  f d1 e  e j! j" e j j%  f d2 e  e$ e j j%  f d3 e j! j" f d4 e j& f d5 e j' f d6 e j( f d7 e  e) j* e e j# e$ e)  f d8 e  e) j* e e j# e$ e j+  d9 f d: e  e) j* e e j+  d9 f d; e  e) e e j+  d9 f d< e  e) e e j+  f d= e) j, f d> e) j* f d? e) j- f d@ e  e e e)  f dA e  e) e e  f dB e) dC f dD e  e. e) j/  f dE e  e. e)  f dF e. dG f dH e$ j0 f dI e  e e j' e$  f dJ e  e. e j  f dK e  e$ e$ j0  f dL e$ f dM e. f g& d 6d( e j d f dN e j f e dO  dP e j f g d) 6d* e j d f dQ e j f e dO  dP e j f g d+ 6dR e j1 f g dO 6dS e$ d f dT e. d f dU e. dV f e d  g d9 6dT e. d f dW e j& d f dX e j! j" f e d  g dV 6dY e dZ f d[ e f d\ e d f d5 e j' f dF e. f e d#  g dC 6d] e. d f dT e. d^ f dW e j& f d5 e j' f dX e j! j" f dU e. f e d#  g dZ 6d_ e j+ d9 f e d#  e d  g dG 6Z2 d`   Z3 da   Z4 db   Z5 RS(d   s  
    For `Lasso <http://www.lassosoft.com/>`_ source code, covering both Lasso 9
    syntax and LassoScript for Lasso 8.6 and earlier. For Lasso embedded in
    HTML, use the `LassoHtmlLexer`.

    Additional options accepted:

    `builtinshighlighting`
        If given and ``True``, highlight builtin types, traits, methods, and
        members (default: ``True``).
    `requiredelimiters`
        If given and ``True``, only highlight code between delimiters as Lasso
        (default: ``False``).

    .. versionadded:: 1.6
    t   Lassot   lassot   lassoscripts   *.lassos   *.lasso[89]s   *.incls   *.incs   *.lass   text/x-lassos   ^#![ \S]+lasso9\bs   (?=\[|<)t
   delimiterss   \s+t	   lassofileR0   s   \[no_square_brackets\]t   nosquarebracketss   \[noprocess\]t	   noprocesss   \[t   squarebracketss   <\?(lasso(script)?|=)t   anglebracketss   <(!--.*?-->)?s   [^[<]+s   \[/noprocess\]s   #pops   [^[]s   \]s   \?>s   \]|\?>s   //.*?\ns   /\*\*!.*?\*/s	   /\*.*?\*/t   whitespacecommentss   \d*\.\d+(e[+-]?\d+)?s
   0x[\da-f]+s   \d+s   (infinity|NaN)\bRY   t   singlestringRW   t   doublestrings   `[^`]*`s   \$[a-z_][\w.]*s   #([a-z_][\w.]*|\d+\b)s   (\.\s*)('[a-z_][\w.]*')s    (self)(\s*->\s*)('[a-z_][\w.]*')s!   (\.\.?\s*)([a-z_][\w.]*(=(?!=))?)s&   (->\\?\s*|&\s*)([a-z_][\w.]*(=(?!=))?)s3   (?<!->)(self|inherited|currentcapture|givenblock)\bs   -(?!infinity)[a-z_][\w.]*s   ::\s*[a-z_][\w.]*s  (error_(code|msg)_\w+|Error_AddError|Error_ColumnRestriction|Error_DatabaseConnectionUnavailable|Error_DatabaseTimeout|Error_DeleteError|Error_FieldRestriction|Error_FileNotFound|Error_InvalidDatabase|Error_InvalidPassword|Error_InvalidUsername|Error_ModuleNotFound|Error_NoError|Error_NoPermission|Error_OutOfMemory|Error_ReqColumnMissing|Error_ReqFieldMissing|Error_RequiredColumnMissing|Error_RequiredFieldMissing|Error_UpdateError)\bs:   (define)(\s+)([a-z_][\w.]*)(\s*=>\s*)(type|trait|thread)\bs=   (define)(\s+)([a-z_][\w.]*)(\s*->\s*)([a-z_][\w.]*=?|[-+*/%])t	   signatures   (define)(\s+)([a-z_][\w.]*)sJ   (public|protected|private|provide)(\s+)(([a-z_][\w.]*=?|[-+*/%])(?=\s*\())s5   (public|protected|private|provide)(\s+)([a-z_][\w.]*)s)   (true|false|none|minimal|full|all|void)\bs(   (local|var|variable|global|data(?=\s))\bs   (array|date|decimal|duration|integer|map|pair|string|tag|xml|null|boolean|bytes|keyword|list|locale|queue|set|stack|staticarray)\bs   ([a-z_][\w.]*)(\s+)(in)\bs   (let|into)(\s+)([a-z_][\w.]*)s	   require\bt   requiresections   (/?)(Namespace_Using)\bs  (/?)(Cache|Database_Names|Database_SchemaNames|Database_TableNames|Define_Tag|Define_Type|Email_Batch|Encode_Set|HTML_Comment|Handle|Handle_Error|Header|If|Inline|Iterate|LJAX_Target|Link|Link_CurrentAction|Link_CurrentGroup|Link_CurrentRecord|Link_Detail|Link_FirstGroup|Link_FirstRecord|Link_LastGroup|Link_LastRecord|Link_NextGroup|Link_NextRecord|Link_PrevGroup|Link_PrevRecord|Log|Loop|Output_None|Portal|Private|Protect|Records|Referer|Referrer|Repeating|ResultSet|Rows|Search_Args|Search_Arguments|Select|Sort_Args|Sort_Arguments|Thread_Atomic|Value_List|While|Abort|Case|Else|Fail_If|Fail_IfNot|Fail|If_Empty|If_False|If_Null|If_True|Loop_Abort|Loop_Continue|Loop_Count|Params|Params_Up|Return|Return_Value|Run_Children|SOAP_DefineTag|SOAP_LastRequest|SOAP_LastResponse|Tag_Name|ascending|average|by|define|descending|do|equals|frozen|group|handle_failure|import|in|into|join|let|match|max|min|on|order|parent|protected|provide|public|require|returnhome|skip|split_thread|sum|take|thread|to|trait|type|where|with|yield|yieldhome)\bt   ,t   commamembers   (and|or|not)\bs0   ([a-z_][\w.]*)(\s*::\s*[a-z_][\w.]*)?(\s*=(?!=))s   (/?)([\w.]+)s,   (=)(n?bw|n?ew|n?cn|lte?|gte?|n?eq|n?rx|ft)\bs   :=|[-+*/%=<>&|!?\\]+s   [{}():;,@^]s   [^'\\]+t   escapes   \\s   [^"\\]+sS   \\(U[\da-f]{8}|u[\da-f]{4}|x[\da-f]{1,2}|[0-7]{1,3}|:[^:\n\r]+:|[abefnrtv?"\'\\]|$)s   =>s   \)s   [(,]t	   parameters   -?[a-z_][\w.]*s   \.\.\.s#   (([a-z_][\w.]*=?|[-+*/%])(?=\s*\())t   requiresignatures3   (([a-z_][\w.]*=?|[-+*/%])(?=(\s*::\s*[\w.]+)?\s*,))s   [a-z_][\w.]*=?|[-+*/%]s   (\)(?=(\s*::\s*[\w.]+)?\s*,))s   #pop:2sR   (([a-z_][\w.]*=?|[-+*/%])(?=\s*(\(([^()]*\([^()]*\))*[^)]*\)\s*)?(::[\w.\s]+)?=>))c         K   s   t  | d t  |  _ t  | d t  |  _ t   |  _ t   |  _ |  j r d d l m	 } m
 } x* t |  D] \ } } |  j j |  qn Wx- t |  D] \ } } |  j j |  q Wn  t j |  |  d  S(   Nt   builtinshighlightingt   requiredelimitersi(   t   BUILTINSt   MEMBERS(   R   t   TrueR   t   FalseR   t   sett	   _builtinst   _memberst   pygments.lexers._lasso_builtinsR   R   R   t   updateR    t   __init__(   t   selft   optionsR   R   t   keyt   value(    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     s    	c         c   s   d g } |  j  r" | j d  n  x t j |  | |  D] \ } } } | t j k rk | j   |  j k s | t j j k r | j   j	 d  |  j
 k r | t j | f Vq8 n  | | | f Vq8 Wd  S(   NR0   R}   t   =(   R   t   appendR    t   get_tokens_unprocessedR   R   t   lowerR   t   Membert   rstripR   RI   (   R   t   textt   stackt   indext   tokenR   (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     s    		"$c         C   sm   d } d |  k r | d 7} n  t  j d |  t  j  rD | d 7} n  t  j d |  t  j  ri | d 7} n  | S(   Ng        s
   bin/lasso9g?s   <\?lassog?s   local\((   R8   t   searcht   I(   R   t   rv(    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyt   analyse_text  s    (   R}   R~   (6   R1   R2   R3   R4   R5   R6   t   alias_filenamesR7   R8   t
   IGNORECASER9   R;   R<   R	   Rr   R   R   R   R   R=   R   t   DocR>   R   RA   RD   RE   RK   RL   R   R`   Ra   R   RI   t   PseudoR^   R
   R   t	   AttributeRt   t	   ExceptionR   RF   R]   RH   Rs   R   t	   NamespaceR_   Ru   RN   R   R   R   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     s  																				c           B   sY  e  Z d  Z d Z d d d d g Z d g Z d g Z d Z e j	 e j
 BZ i e d	  d
 e d e d e d e e e  e e d d e e   f d e e e  d f d e e e  d f d e e e e  f e d  d e f d e f g d 6d e e j e e j  f d e e j e e j  f d e e j e e j  f d e e j e e j  f d e j d f d e j d  f d! e f d" e f d# e f d$ e j f d% e j f d& e f g d	 6e d	  d' e j d( f d) e dk f e d(  g d+ 6d! e d( f g d* 6d, e d- f d. e j f d/ e j f d0 e j f d1 e j f d2 e j f d3 e j f d4 e j f d5 e j  f d6 e d+ f d7 e! d+ f d8 e d+ f d9 e f d: e d+ f d; e j" d+ f d< e f d= e j# f d> e$ j% f d? e j& f d@ e j& f dA e j& f dB e$ j% f dC e dD e e$ j' e e   f dE e$ f g d 6dF e dG e dH e e$ j( e e  e$ j(  d( f dF e dI e e$ j( e e  e$ j) e  d( f dJ e$ j( d( f g d 6dK e e$ j( e  dL f dM e e$ j( e  d( f g d 6e d	  dN e dO e dP e dQ e dR e e e  e j# e e  e$ j'  dS f dN e dO e dP e dT e e e  e j# e e  e$ j'  d( f dU e dR e e$ j'  dS f dV e e$ j'  d( f e d(  g d 6e d	  dN e dW e dP e dT e e e  e j# e e  e  f dU e dR e$ j' f dX e$ j' f dY e dZ e e  f dV e f g dS 6d[ e e$ j' e  f d\ e d( f g d] 6d^ e d( f d_ e j* f d` e f d# e f da e f g d- 6db e j f dc e j f dd e j d( f de e j f df e j f d! e j d( f g d  6dg e j dL f dh e j d( f di e f g d 6Z+ dj   Z, RS(l   s^   
    For Objective-J source code with preprocessor directives.

    .. versionadded:: 1.3
    s   Objective-Js   objective-jt
   objectivejs   obj-jt   objjs   *.js   text/x-objective-js   (?:\s|//.*?\n|/[*].*?[*]/)*t
   whitespaces   ^(s   [+-]s   )([(a-zA-Z_].*?[^(])(s   \{)t   statet   function_signatures!   (@interface|@implementation)(\s+)t	   classnames   (@class|@protocol)(\s*)t   forward_classnames   (\s*)(@end)(\s*)t
   statementss   [{()}]t   ;R0   s$   (@import)(\s+)("(?:\\\\|\\"|[^"])*")s$   (@import)(\s+)(<(?:\\\\|\\>|[^>])*>)s0   (#(?:include|import))(\s+)("(?:\\\\|\\"|[^"])*")s0   (#(?:include|import))(\s+)(<(?:\\\\|\\>|[^>])*>)s   #if\s+0t   if0Rg   t   macros   \ns   \s+s   \\\ns   //(\n|(.|\n)*?[^\\]\n)s   /(\\\n)?[*](.|\n)*?[*](\\\n)?/s   <!--s3   /(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)s   #pops   (?=/)R,   R-   s   (L|@)?"t   strings8   (L|@)?'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,2}|[^\\\'\n])'s   "(\\\\|\\"|[^"])*"s   '(\\\\|\\'|[^'])*'s%   (\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[lL]?s   (\d+\.\d*|\.\d+|\d+[fF])[fF]?s   0x[0-9a-fA-F]+[Ll]?s   0[0-7]+[Ll]?s   \d+[Ll]?s   ^(?=\s|/|<!--)s@   \+\+|--|~|&&|\?|:|\|\||\\(?=\n)|(<<|>>>?|==?|!=?|[-<>+*%&|^/])=?s   [{(\[;,]s   [})\].]s   (for|in|while|do|break|return|continue|switch|case|default|if|else|throw|try|catch|finally|new|delete|typeof|instanceof|void|prototype|__proto__)\bs   (var|with|function)\bs   (@selector|@private|@protected|@public|@encode|@synchronized|@try|@throw|@catch|@finally|@end|@property|@synthesize|@dynamic|@for|@accessors|new)\bst   (int|long|float|short|double|char|unsigned|signed|void|id|BOOL|bool|boolean|IBOutlet|IBAction|SEL|@outlet|@action)\bs   (self|super)\bs"   (TRUE|YES|FALSE|NO|Nil|nil|NULL)\bs*   (true|false|null|NaN|Infinity|undefined)\bs   (ABS|ASIN|ACOS|ATAN|ATAN2|SIN|COS|TAN|EXP|POW|CEIL|FLOOR|ROUND|MIN|MAX|RAND|SQRT|E|LN2|LN10|LOG2E|LOG10E|PI|PI2|PI_2|SQRT1_2|SQRT2)\bs   (Array|Boolean|Date|Error|Function|Math|netscape|Number|Object|Packages|RegExp|String|sun|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|Error|eval|isFinite|isNaN|parseFloat|parseInt|document|this|window)\bs   ([$a-zA-Z_]\w*)(s   )(?=\()s   [$a-zA-Z_]\w*s   ([a-zA-Z_]\w*)(t   :s   )([a-zA-Z_]\w*)?s   \()([a-zA-Z_]\w*)(\))s   ([a-zA-Z_]\w*)s   ([a-zA-Z_]\w*)(\s*,\s*)s   #pushs   ([a-zA-Z_]\w*)(\s*;?)s   (\(s   )([a-zA-Z_]\w+)(s   \)s   )([$a-zA-Z_]\w+s   :)t   function_parameterss   )([$a-zA-Z_]\w+)s   ([$a-zA-Z_]\w+s   ([$a-zA-Z_]\w+)s	   )([^)]+)(s   (:)s   (,s   \.\.\.)s   ([$a-zA-Z_]\w*)(\()s   (\))t
   expressionRW   s/   \\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})s	   [^\\"\n]+s   \\s   [^/\n]+s   /[*](.|\n)*?[*]/s   //.*?\nRd   s	   (?<=\\)\ns   ^\s*#if.*?(?<!\\)\ns   ^\s*#endif.*?(?<!\\)\ns   .*?\nc         C   s    t  j d |  t  j  r t St S(   Ns   ^\s*@import\s+[<"](   R8   R   R;   R   R   (   R   (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     s    (   s   #popR,   (-   R1   R2   R3   R4   R5   R6   R7   t   _wsR8   R9   R;   R<   R   R   R   R   R   R   R   R	   Rr   R   RK   R=   R>   R?   R   t   CharR   RA   RD   RC   RE   R
   RF   Rs   R   RI   RH   R]   R^   Rt   Ru   RN   R   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     s   																!$	#	$				c           B   s  e  Z d  Z d Z d d d g Z d g Z d g Z d Z e j	 Z
 i
 d e f d	 e j f d
 e j f g d 6d e j f d e j d f d e j d f d e j f g d 6e d  d e j d6 f d e j d f d e f e d  g d 6e d  d e d f e e d f d e j d f d e d f d e f d e d f d e j f d e j f d e j d f d e j j d f d  e j d f d! e j f d" e j f d# e j  f d$ e j! f d% e d& f d' e d( f d) e d* f d+ e d, f g d- 6d. e f g d/ 6d0 e j d f e d-  g d 6d) e d f d1 e f d e j d f d2 e f e d/  g d* 6d+ e d f d3 e f e d/  g d, 6d% e d f d4 e f d e j d f d2 e f e d/  g d& 6d' e d f d5 e f e d/  g d( 6Z" RS(7   st   
    For `CoffeeScript`_ source code.

    .. _CoffeeScript: http://coffeescript.org

    .. versionadded:: 1.3
    t   CoffeeScripts   coffee-scriptt   coffeescriptt   coffees   *.coffees   text/coffeescriptsy   \+\+|~|&&|\band\b|\bor\b|\bis\b|\bisnt\b|\bnot\b|\?|:|\|\||\\(?=\n)|(<<|>>>?|==?(?!>)|!=?|=(?!>)|-(?!>)|[<>+*`%&\|\^/])=?s   \s+s   ###[^#].*?###s   #(?!##[^#]).*?\nR+   s   [^/#]+s   ///([gim]+\b|\B)s   #pops   #\{R\   s   [/#]Re   s   ///s8   /(?! )(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)Rd   R-   s	   ^(?=\s|/)s   (?:\([^()]*\))?\s*[=-]>s   [{(\[;,]s   [})\].]s   (?<![.$])(for|own|in|of|while|until|loop|break|return|continue|switch|when|then|if|unless|else|throw|try|catch|finally|new|delete|typeof|instanceof|super|extends|this|class|by)\bsA   (?<![.$])(true|false|yes|no|on|off|null|NaN|Infinity|undefined)\bs   (Array|Boolean|Date|Error|Function|Math|netscape|Number|Object|Packages|RegExp|String|sun|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|document|window)\bs   [$a-zA-Z_][\w.:$]*\s*[:=]\ss   @[$a-zA-Z_][\w.:$]*\s*[:=]\sRf   s   @?[$a-zA-Z_][\w$]*s%   [0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?s   0x[0-9a-fA-F]+s   [0-9]+s   """RU   s   '''RV   RW   RX   RY   RZ   R0   s
   [^#\\\'"]+R[   s   \}s   \\.|\'Rg   s   #|\\.|"s   \\.|\'|"s
   #|\\.|\'|"(   s   #popRe   (#   R1   R2   R3   R4   R5   R6   R7   t   _operator_reR8   R9   R<   R   R	   R>   R=   R   R?   RM   R   R
   R   R   R]   R   R   RH   RI   R`   Ra   R   R   RA   RD   RE   RN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     s   																		c           B   s  e  Z d  Z d Z d g Z d g Z d g Z e j e j	 Be j
 BZ i d e f d e j f d e j f d e f d	 e d
 f d e d f d e d f d e d f d e j d f d e j d f d e j d f d e j j d f g d 6d e j f d e j d f d e j f g d 6d e j d f e d  g d 6d e j d f e d  g d 6d	 e j d f e d  g d
 6d e j d f e d  g d 6d e j d f d e j d f d  e j f d! e j f g d 6d! e e  d f g d 6d e f d" e j j d# f d$ e j d% f d& e j d' f d( e j d) f d* e j f d+ e d f g d 6d, e j j f d e j d f e d  g d# 6d, e j f d e j d f e d  g d% 6d e f d- e j d f d e d. f d e d/ f e d  g d) 6d e f d e j d0 f d e j d1 f e d)  g d' 6d e f d2 e f d3 e j f g d4 6e d4  d e j d5 f d6 e j  f g d0 6e d4  d e j d5 f d7 e j  f g d1 6d e j d5 f e d  g d. 6d e j d5 f e d  g d/ 6Z! RS(8   s[   
    For `Mask <http://github.com/atmajs/MaskJS>`__ markup.

    .. versionadded:: 2.0
    t   Maskt   masks   *.masks   text/x-masks   \s+s   //.*?\ns	   /\*.*?\*/s   [{};>]s   '''s   string-trpl-singles   """s   string-trpl-doubleRY   s   string-singleRW   s   string-doubles   ([\w-]+)t   nodes   ([^.#;{>\s]+)s	   (#[\w-]+)s
   (\.[\w-]+)R0   s   \\.s   ~\[t   interpolationt   .s   string-bases   #pops   \]s   \s*:R   s   \s*\w+:s   [^\]]+s   \.s
   node-classs   \#s   node-ids   style[ \t]*=s   node-attr-style-values   [\w:-]+[ \t]*=s   node-attr-values   [\w:-]+s   [>{;]s   [\w-]+s   \w+s   string-single-pop2s   string-double-pop2s   css-single-ends   css-double-endR   s   [\w\-]+\s*:s   css-bases   #pop:2s   [^;']+s   [^;"]+("   R1   R2   R3   R4   R5   R6   R7   R8   R;   R   R9   R<   R   R	   R=   R>   R   R   R   t   TagR^   R]   R`   Ru   RM   R   R   R   R   R   R   RI   t   EntityRN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR   p  s   												c           B   s  e  Z d  Z d Z d d d g Z d g Z d g Z i d e f e d  d	 e f d
 e	 f d e
 f d e f d e f e d  e d d d d d e j f d e j f d e j f d e j f d  e f d! e j f e d"  e d#  e d$  d% e e
 e j e
 e j j  d& f d' e j d( f d) e j d* f d+ e j f e d,  d- e e d. d/  f d0 e e d. d1  f d2 e e d. d3  f e d4  e d5  e d6  e d7  g d8 6d9 e e
 e j j  f d: e e
 e j j e
  f d; e f d< e j d= f g d& 6d> e e j e  f g d5 6d? e e
 e j  f g d$ 6e d d dC d dD e j f dE e j f g d 6dF e j f dG e j f dH e e e j e
  f dI e e e j e
  f g d 6dJ e e
 e j  f dK e e
 e j   f dL e e
 e j  f g d, 6e d d dC d dD e j! f e d d dC d de e j" f e d d dC d de e j# f g d" 6e d d d d d e j$ f e d d dC d dD e j" f g d# 6d e j j% f d e e j e j  f g d6 6d e j& f g d4 6d e j' d= f e d8  g d 6d e j( f g d. 6d e f d e f d e f g d 6d e d= f d e j( f e d  g d/ 6d e d= f d e j( f d e j' d f e d  g d1 6d2 e d= f e d  g d3 6d e j d= f d e j f d e j( f d e j f g d( 6d e j d= f d e j f d e j( f d e j f g d* 6d 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 g d7 6Z0 RS(   s{   
    For `Earl-Grey`_ source code.

    .. _Earl-Grey: https://breuleux.github.io/earl-grey/

    .. versionadded: 2.1
    s	   Earl Greys	   earl-greyt   earlgreyt   egs   *.egs   text/x-earl-greys   \nt   controls   [^\S\n]+s   ;;.*\ns   [\[\]{}:(),;]s   \\\ns   \\t   errorst   witht   wheret   whent   andt   nott   ort   int   ast   oft   ist   prefixs
   (?<=\s|\[)t   suffixs   (?![\w$\-])s   [*@]?->s   [+\-*/~^<>%&|?!@#.]*=s   \.{2,3}s+   ([+*/~^<>&|?!]+)|([#\-](?=\s))|@@+(?=\s)|=+s   (?<![\w$\-])(var|let)(?:[^\w$])t   keywordst   builtinst
   assignments   (?x)
                (?:()([a-zA-Z$_](?:[\w$\-]*[\w$])?)|
                   (?<=[\s{\[(])(\.)([a-zA-Z$_](?:[\w$\-]*[\w$])?))
                (?=.*%)t   dbss   [rR]?`t   bts   [rR]?```t   tbts=   (?<=[\s\[{(,;])\.([a-zA-Z$_](?:[\w$\-]*[\w$])?)(?=[\s\]}),;])t   nesteds   (?:[rR]|[rR]\.[gmi]{1,3})?"t   stringescapeRX   s   (?:[rR]|[rR]\.[gmi]{1,3})?\'RZ   s   """RU   t   tuplet   import_pathsR4   t   numbersR0   s-   (\.)([a-zA-Z$_](?:[\w$\-]*[\w$])?)(?=[.\[\s])s+   (\[)([\^#][a-zA-Z$_](?:[\w$\-]*[\w$])?)(\])s   \s+t   %s   #pops>   (?<=[\s:;,])(\.{1,3}(?:[\w\-]*/)*)(\w(?:[\w\-]*\w)*)(?=[\s;,])sB   (\.)?([a-zA-Z$_](?:[\w$\-]*[\w$])?)(?=\s+[+\-*/~^<>%&|?!@#.]*\=\s)t   Errort	   TypeErrort   ReferenceErrors   (?<![\w\-$.])s   (?![\w\-$.])s   (?x)
                (?<![\w$])
                E\.[\w$](?:[\w$\-]*[\w$])?
                (?:\.[\w$](?:[\w$\-]*[\w$])?)*
                (?=[({\[?!\s])s   (?x)
                ([a-zA-Z$_](?:[\w$-]*[\w$])?)
                (?!\n)\s+
                (?!and|as|each\*|each|in|is|mod|of|or|when|where|with)
                (?=(?:[+\-*/~^<>%&|?!@#.])?[a-zA-Z$_](?:[\w$-]*[\w$])?)s5   ([a-zA-Z$_](?:[\w$-]*[\w$])?)(?!\n)\s+(?=[\'"\d{\[(])s   (?x)
                (?:
                    (?<=[%=])|
                    (?<=[=\-]>)|
                    (?<=with|each|with)|
                    (?<=each\*|where)
                )(\s+)
                ([a-zA-Z$_](?:[\w$-]*[\w$])?)(:)sc   (?x)
                (?<![+\-*/~^<>%&|?!@#.])(\s+)
                ([a-zA-Z$_](?:[\w$-]*[\w$])?)(:)sz   (?x)
                (?<=[\w$\]})])(\.)
                ([a-zA-Z$_](?:[\w$-]*[\w$])?)
                (?=\s+with(?:\s|\n))so   (?x)
                (?<!\s)(\.)
                ([a-zA-Z$_](?:[\w$-]*[\w$])?)
                (?=[}\]).,;:\s])sq   (?x)
                (?<=[\w$\]})])(\.)
                ([a-zA-Z$_](?:[\w$-]*[\w$])?)
                (?=[\[{(:])t   eachs   each*t   modt   awaitt   breakt   chaint   continuet   elifs
   expr-valuet   ift   matcht   returnt   yieldt   passt   elset   requiret   vart   lett   asynct   methodt   genR   R   Rf   s   (?![\w\-$])R]   t   Objectt   ArrayR   R   t   Booleant   ErrorFactoryt   ENodet   Promiset   sendt   objectt   keyst   itemst	   enumeratet   zipt   productt
   neighbourst	   predicatet   equalt   nequalt   containst   reprt   clonet   ranget
   getCheckers   get-checkert   getPropertys   get-propertyt   getProjectors   get-projectort   consumet   taket	   promisifyt   spawnt   constructors   (?<![\w\-#.])s   (?![\w\-.])t   truet   falset   nullt	   undefineds   @([a-zA-Z$_](?:[\w$-]*[\w$])?)s)   ([a-zA-Z$_](?:[\w$-]*[\w$])?)(\+\+|\-\-)?s   #[a-zA-Z_][\w\-]*(?=[\s{(,;])s   \}R\   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   [^\\\'"]s   [\'"\\]R[   RW   s   \\\\|\\"|\\\nRY   s   \\\\|\\'|\\\ns   \{R.   s   (?<!`)\ns   \^=?s   .+s   ```s   [^`]+s    \d+\.(?!\.)\d*([eE][+-]?[0-9]+)?s   \d+[eE][+-]?[0-9]+s   8r[0-7]+s   2r[01]+s   16r[a-fA-F0-9]+s5   ([3-79]|[12][0-9]|3[0-6])r[a-zA-Z\d]+(\.[a-zA-Z\d]+)?s   \d+(
   R   R   R   R   R   R   R   R   R   R   (   R   R   R   (   R   s   each*R   R   R   R   R   R   s
   expr-valueR   R   R   R   R   R   R   R   R   R   R   R   (   R   R   Rf   (	   R]   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   get-checkerR  s   get-propertyR  s   get-projectorR  R  R  R  R  (   R  R  R  R   (1   R1   R2   R3   R4   R5   R6   R7   R   R   R	   R   R   R
   R_   R   R]   R   RF   R   R   R^   t   StartR   RL   t   SymbolR   t   DBSR   t
   WhitespaceR`   R   t   Controlt   FieldR   RH   Rs   RI   Ra   R   RM   Ru   R   RA   RC   RB   RD   t   RadixRE   RN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     s
  										 					!										   			      			c           B   s  e  Z d  Z d Z d d g Z d g Z d d d d g Z e j e j	 Be j
 BZ i d e f d	 e j f d
 e j f g d 6e d  d e j d f d e d$ f e d  g d 6d e d f g d 6d e d f e d  d e j f d e j f d e j f d e j f d e d f d e d f d e f d e d f d e j d f d e j f d e j f d e j f e e j f d e j  f d  e j! f d! e j" f d" e j f g d# 6Z# RS(%   sW   
    For `Juttle`_ source code.

    .. _Juttle: https://github.com/juttle/juttle

    t   Juttlet   juttles   *.juttles   application/juttles   application/x-juttles   text/x-juttles   text/juttles   \s+s   //.*?\ns	   /\*.*?\*/R+   s3   /(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)s   #pops   (?=/)R,   R-   s   \ns	   ^(?=\s|/)s   :\d{2}:\d{2}:\d{2}(\.\d*)?:sY   :(now|beginning|end|forever|yesterday|today|tomorrow|(\d+(\.\d*)?|\.\d+)(ms|[smhdwMy])?):sN   :\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d*)?)?(Z|[+-]\d{2}:\d{2}|[+-]\d{4})?:s   :((\d+(\.\d*)?|\.\d+)[ ]+)?(millisecond|second|minute|hour|day|week|month|year)[s]?(([ ]+and[ ]+(\d+[ ]+)?(millisecond|second|minute|hour|day|week|month|year)[s]?)|[ ]+(ago|from[ ]+now))*:s8   \+\+|--|~|&&|\?|:|\|\||\\(?=\n)|(==?|!=?|[-<>+*%&|^/])=?s   [{(\[;,]s   [})\].]s"   (import|return|continue|if|else)\bs(   (var|const|function|reducer|sub|input)\bs{   (batch|emit|filter|head|join|keep|pace|pass|put|read|reduce|remove|sequence|skip|sort|split|tail|unbatch|uniq|view|write)\bs   (true|false|null|Infinity)\bs6   (Array|Date|Juttle|Math|Number|Object|RegExp|String)\bs%   [0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?s   [0-9]+s   "(\\\\|\\"|[^"])*"s   '(\\\\|\\'|[^'])*'R0   (   s   #popR,   ($   R1   R2   R3   R4   R5   R6   R7   R8   R9   R:   R;   R<   R   R	   R=   R>   R   R   R?   R   t   MomentR
   R   R   RF   RG   RH   R   RI   RJ   R   R   RA   RE   RK   RN   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyR     sR   										(+   R3   R8   t   pygments.lexerR    R   R   R   R   R   R   R   t   pygments.tokenR   R	   R
   R   R   R   R   R   R   t   pygments.utilR   R   t   pygments.unistringt	   unistringt   unit   __all__t   combinet   JS_IDENT_STARTt   JS_IDENT_PARTRJ   R   R   R   R   R   R   R   R   R   R   R   (    (    (    s9   lib/python2.7/site-packages/pygments/lexers/javascript.pyt   <module>
   s2   :@	+Puoed rs