
    ,hU                     z   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 ddlmZmZ ddlmZ ddlmZ ddlmZmZmZ dd	lm Z  g d
Z! G d de      Z" G d de      Z# G d de      Z$ G d de$      Z% G d de      Z& G d de      Z' G d de      Z(e(Z) G d de      Z* G d de"      Z+y)z
    pygments.lexers.html
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for HTML, XML and related markup.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerExtendedRegexLexerincludebygroupsdefaultusinginheritthis)TextCommentOperatorKeywordNameStringPunctuation
Whitespace)looks_like_xmlhtml_doctype_matches)JavascriptLexer)
ScalaLexer)CssLexer_indentation_starts_block)	RubyLexer)		HtmlLexerDtdLexerXmlLexer	XsltLexer	HamlLexer
ScamlLexerPugLexerVueLexerUrlEncodedLexerc                      e Zd ZdZdZdZdgZg dZddgZdZ	e
j                  e
j                  z  Z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eeej,                  e      dfd eeeej,                  e      dfd eeeej,                        dfd eeeeeej,                  ee      fg
defd eej.                  ee      dfdej.                  fd eeee      dfgd eeeeeej,                  ee      dfd ee      fd ee      dfd ee      dfgd  eeeeeej,                  ee      dfd! ee      fd ee      dfd ee      dfgd"edfd#edfd$edfgd%Zd& Zy')(r   zo
    For HTML 4 and XHTML 1 markup. Nested JavaScript and CSS is highlighted
    by the appropriate lexer.
    HTMLzhttps://html.spec.whatwg.org/html)z*.htmlz*.htmz*.xhtml*.xsltz	text/htmlzapplication/xhtml+xml z[^<&]+&\S*?;\<\!\[CDATA\[.*?\]\]\>
<!--.*?-->	<\?.*?\?><![^>]*>z(<)(\s*)(script)(\s*))script-contenttagz(<)(\s*)(style)(\s*))style-contentr/   z(<)(\s*)([\w:.-]+)r/   z"(<)(\s*)(/)(\s*)([\w:.-]+)(\s*)(>)\s+([\w:-]+\s*)(=)(\s*)attr[\w:-]+(/?)(\s*)(>)#popz (<)(\s*)(/)(\s*)(script)(\s*)(>)z.+?(?=<\s*/\s*script\s*>)z.+?\nz.+z(<)(\s*)(/)(\s*)(style)(\s*)(>)z.+?(?=<\s*/\s*style\s*>)".*?"'.*?'[^\s>]+)rootr/   r.   r0   r3   c                     t        |       ryy )Ng      ?)r   texts    V/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/pygments/lexers/html.pyanalyse_textzHtmlLexer.analyse_textf   s    % &    N)__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesversion_addedre
IGNORECASEDOTALLflagsr   r   Entityr   Preproc	Multiliner   r   Tag	Attributer   r   r   r   r   tokensr?    r@   r>   r   r      s8   
 D
)ChG8I56IMMMBII%E t$&8G--.7??+)%k448&( %k448%'
 #k42E;2k4dDHHd!#$#
, TN$ht~~x&N(h{D+FO
 1k4dDHHd!#$*, *5+AB
 u_-v6E/*F3
 0k4dDHHd!##)+ )%/:
 uX/E(OV,
 ff%ff%(
k:Fxr@   r   c                      e Zd ZdZej
                  ej                  z  ZdZdgZ	dgZ
dgZdZdZ ed      d	 eeeej&                        d
fd eeeej&                        dfd eeeej(                        dfd eeeej&                        dfd eeej(                  ee      fd eeeej&                        fdej*                  fdefg	defdej(                  fdedfdefdej2                  fdej4                  fgdefdedfdefg ed      d ej*                  fd!ej&                  fd"edfg ed      d#ej*                  fd$ej*                  fd%ej6                  fd!ej8                  fd"edfg ed      d&ej*                  fd!ej(                  fd"edfg ed      d'ej*                  fd!ej8                  fd"edfgd(Zd) Zy*)+r   z7
    A lexer for DTDs (Document Type Definitions).
    DTDdtdz*.dtdzapplication/xml-dtdz6https://en.wikipedia.org/wiki/Document_type_definitionz1.5commonz(<!ELEMENT)(\s+)(\S+)elementz(<!ATTLIST)(\s+)(\S+)attlistz(<!ENTITY)(\s+)(\S+)entityz(<!NOTATION)(\s+)(\S+)notationz(<!\[)([^\[\s]+)(\s*)(\[)z(<!DOCTYPE)(\s+)([^>\s]+)zPUBLIC|SYSTEMz[\[\]>]r1   z(%|&)[^;]*;z<!--commentz	[(|)*,?+]z"[^"]*"z
\'[^\']*\'z[^-]+z-->r6   -zEMPTY|ANY|#PCDATAz[^>\s|()?+*,]+>z?CDATA|IDREFS|IDREF|ID|NMTOKENS|NMTOKEN|ENTITIES|ENTITY|NOTATIONz#REQUIRED|#IMPLIED|#FIXEDzxml:space|xml:langzSYSTEM|PUBLIC|NDATAzSYSTEM|PUBLIC)r:   rY   r^   rZ   r[   r\   r]   c                 6    t        |       sd| v sd| v sd| v ryy y )Nz	<!ELEMENTz	<!ATTLISTz<!ENTITY皙?r   r<   s    r>   r?   zDtdLexer.analyse_text   s.    d#4;$#6*:L ;M $r@   N)rA   rB   rC   rD   rK   	MULTILINErM   rN   rE   rG   rH   rI   rF   rJ   r   r   r   r   r   rR   rO   Constantr   r   r   DoubleSingleReservedrS   rT   r?   rU   r@   r>   r   r   k   s`    LL299$EDgG	I&'I
BCM H%$19>%$19>$$4h@&$1:?)$++tW=? *$13w//0!#
* TNT[[)Wi(8$'FMM*
 gGV$'N
 H!7#3#34)7F#	
 HO)7+;+;<"G$4$45/7F#
 H#W%5%56,7F#	
 Hw//0/7F#	
yBFHr@   r   c            
          e Zd ZdZej
                  ej                  z  ZdZdgZ	g dZ
g dZdZdZde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j*                  fg	defdej,                  dfdej*                  dfgdefdedfdedfdedfgdZd Zy)r   z=
    Generic lexer for XML (eXtensible Markup Language).
    XMLxml)z*.xml*.xslz*.rssr'   z*.xsdz*.wsdlz*.wsf)ztext/xmlzapplication/xmlzimage/svg+xmlzapplication/rss+xmlzapplication/atom+xmlzhttps://www.w3.org/XMLr(   z[^<&\s]+z[^<&\S]+r)   r*   r+   r,   r-   z<\s*[\w:.-]+r/   z<\s*/\s*[\w:.-]+\s*>r1   z[\w.:-]+\s*=r3   z/?\s*>r6   r7   r8   r9   )r:   r/   r3   c                     t        |       ryy )Ng?rc   r<   s    r>   r?   zXmlLexer.analyse_text   s    $  r@   N)rA   rB   rC   rD   rK   rd   rM   rN   rE   rG   rH   rI   rF   rJ   r   r   r   rO   r   rP   rQ   rR   rS   r   rT   r?   rU   r@   r>   r   r      s    LL299$EDgG$I@I
"CM $*%$&8G--.7??+)dhh.$dhh/

 Z dnnf5&)
 Z ff%ff%(	
#F2r@   r   c                   F    e Zd ZdZdZdgZg dZddgZdZdZ	h d	Z
d
 Zd Zy)r   z
    A lexer for XSLT.
    XSLTxslt)rl   r'   z*.xplzapplication/xsl+xmlzapplication/xslt+xmlzhttps://www.w3.org/TR/xslt-30z0.10>#   copy-offor-eachvalue-of
with-paramstrip-spaceapply-importsattribute-setcall-templatedecimal-formatpreserve-spaceapply-templatesnamespace-aliasprocessing-instructionifkeycopysortr=   whenparamchooseimportnumberoutputr^   rZ   r   messagefallbacktemplatevariable	attribute	otherwise	transform
stylesheetc              #      K   t         j                  | |      D ]`  \  }}}t        j                  d|      }|t        j
                  u r+|r)|j                  d      | j                  v r|t        |f Z|||f b y w)Nz</?xsl:([^>]*)/?>?   )	r   get_tokens_unprocessedrK   matchr   rR   groupEXTRA_KEYWORDSr   )selfr=   indextokenvaluems         r>   r   z XsltLexer.get_tokens_unprocessed  sw     #+#B#B4#N 	*E5%-u5A Q1771:9L9L+LWe++UE))	*s   A;A=c                 &    t        |       rd| v ryy y )Nz<xslrb   rc   r<   s    r>   r?   zXsltLexer.analyse_text  s    $FdN %3r@   N)rA   rB   rC   rD   rE   rG   rH   rI   rF   rJ   r   r   r?   rU   r@   r>   r   r      s@     DhG,I&(>?I
)CM	N*r@   r   c                      e Zd ZdZdZdgZdgZdgZdZdZ	e
j                  ZdZd	ez   d
z   Zdefdefgdej$                  dfdej&                  dfgdedfdez   dz    ee ee            df ed      g ed      dej4                  dfdez   dz   ej6                  dfdez   dz   ez   dz    eeej:                  e      dfdez   dz    eed      dfdez   dz    eej>                  d      dfd ez   dz    ee ee            dfd!ez   dz    eej@                  d"      df ed#      g	 ed      d$ez   d%z    ee      fd&ez   d'z    ee      fd(ed)fd*ed+fd,ef ed#      gd-efd.ez   d/z    ee!jD                   ee      e!jD                        fd0edfgd1efd2ejF                  d3fd4ejF                  fd5edfgd6efd7ejH                  dfd8ejH                  jJ                  dfd9ejH                  jL                  dfd:e!dfd;e!dfged<z   efd0edfged<z   ej>                  fd0edfgd-ej@                  fd.ez   d/z    ee!jD                   ee      e!jD                        fd0edfgd=Z'y>)?r   z
    For Haml markup.
    Hamlhamlz*.hamlztext/x-hamlzhttps://haml.infoz1.3z(?: \|\n(?=.* \|)|.)z
(?:,\s*\n|)[ \t]*\n[ \t]*	\.[\w:-]+r/   	\#[\w:-]+[&!]?==plain([&!]?[=~])(*\n)r:   css%[\w:-]+!!!*\nr6   (/)(\[*?\])(/html-comment-block-#haml-comment-block(-)(:filter-blockeval-or-plain\{(,\n|)*?\}\[*?\]\(html-attributes	/[ \t]*\n#pop:2[<>]{1,2}(?=[ \t=])([^#\n]|#[^{\n]|(\\\\)*\\#\{)+(#\{)(*?)(\})\nr1   [\w:-]+[ \t]*=html-attribute-valuer4   \)[ \t]+\w+@\w+\$\w+'(\\\\|\\[^\\]|[^'\\\n])*'"(\\\\|\\[^\\]|[^"\\\n])*"+)r:   r   r   contentr/   r   r   r   r   r   r   N)(rA   rB   rC   rD   rE   rG   rH   rI   rF   rJ   rK   rL   rN   _dot
_comma_dotr   r   r   ClassFunctionr   r   r   r   r   r   rR   	Namespacer   Specialr   rP   	Decoratorr   InterpolrS   VariableInstanceGlobalrT   rU   r@   r>   r   r     s    DhG
II
CMMME #D %+J $%
 4::u-4==%0
 g.z)G3k5#34 G
 EN$((E*d]V#T^^V<	)D07:gw8 D[6!=:N#OT\F"M'//2F%HIOQz!G+k5#34 D[6!=#PO$!
( EN$)5+;<T\G#U9%56D+,;1#[1O$
 /5
*foouY'7IKD&!	
 TN0FG(D&!	
 T]]F+dmm,,f5t}}++V4*FF;*FF;!
 CZ!D&!
 CZ)D&!
 /?
*foouY'7IKD&!	
cWFr@   r   c                      e Zd ZdZdZdgZdgZdgZdZdZ	e
j                  ZdZd	efd
efgdej"                  dfdej$                  dfgdedfdez   dz    ee ee            df ed      g ed      dej2                  dfdez   dz   ej4                  dfdez   dz   ez   dz    eeej8                  e      dfdez   dz    eed      dfdez   dz    eej<                  d      dfdez   dz    eee ee            dfdez   dz    ee ee            dfd ez   dz    eej@                  d!      df ed"      g
 ed      d#ez   d$z    ee      fd%ez   d&z    ee      fd'ed(fd)ed*fd+ef ed"      gd,efd-ez   d.z    ee!jD                   ee      e!jD                        fd/edfgd0efd1ejF                  d2fd3ejF                  fd4edfgd5efd6ejH                  dfd7ejH                  jJ                  dfd8ejH                  jL                  dfd9e!dfd:e!dfged;z   efd/edfged;z   ej<                  fd/edfgd,ej@                  fd-ez   d.z    ee!jD                   ee      e!jD                        fd/edfgd<Z'y=)>r    z5
    For Scaml markup.  Scaml is Haml for Scala.
    Scamlscamlz*.scamlztext/x-scamlz"https://scalate.github.io/scalate/1.4.r   r   r   r/   r   r   r   r   r   r:   r   r   r   r   r6   r   r   r   r   r   scaml-comment-block(-@\s*)(import)?(r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r1   r   r   r4   r   r   r   r   r   r   r   r   r:   r   r   r   r/   r   r   r   r   r   r   N)(rA   rB   rC   rD   rE   rG   rH   rI   rF   rJ   rK   rL   rN   r   r   r   r   r   r   r   r   r   r   r   r   rR   r   r   r   r   rP   r   r   r   r   rS   r   r   r   rT   rU   r@   r>   r    r      s    DiGI I
.CMMME
 D $%
 4::u-4==%0
 g.t#g-k5#45 G
 EN$((E*d]V#T^^V<	)D07:gw8 D[6!=:N#OT\F"M'//2G%IJPR!D(72k7E*,=> t^g%k5#45 D[6!=#PO$'
. EN$)5+<=T\G#U:%67D+,;1#[1O$
 /5
*foouZ'8&//JLD&!	
 TN0FG(D&!	
 T]]F+dmm,,f5t}}++V4*FF;*FF;!
 CZ!D&!
 CZ)D&! 
 /?
*foouZ'8&//JLD&!	
iZFr@   r    c                      e Zd ZdZdZddgZddgZddgZd	Zd
Z	e
j                  ZdZdefdefgdej"                  dfdej$                  dfgdedfdez   dz    ee ee            df ed      g ed      dez   dz   ej2                  dfdez   dz   ez   dz    eeej6                  e      dfdez   dz    eed      dfdez   dz    eej:                  d      dfd ez   dz    eee ee            dfd!ez   dz    ee ee            dfd"ez   dz    eej>                  d#      dfd$ej@                  dfd%ed&fg
 ed      d'ez   d(z    ee      fd)ez   d*z    ee      fd+ed,fd-ed.fd/ef ed&      gd0efd1ez   d2z    ee!jD                   ee      e!jD                        fd3edfgd4efd5ejF                  d6fd$ejF                  fd7edfgd8efd9ejH                  dfd:ejH                  jJ                  dfd;ejH                  jL                  dfd<e!dfd=e!dfged>z   efd3edfged>z   ej:                  fd3edfgd0ej>                  fd1ez   d2z    ee!jD                   ee      e!jD                        fd3edfgd?Z'y@)Ar!   z
    For Pug markup.
    Pug is a variant of Scaml, see:
    http://scalate.fusesource.org/documentation/scaml-reference.html
    Pugpugjadez*.pugz*.jadez
text/x-pugztext/x-jadezhttps://pugjs.orgr   r   r   r   r   r/   r   r   r   r   r   r:   r   r   r   r6   r   r   r   r   r   r   r   r   r   r   r4   z\|r   r   r   r   r   r   r   r   r   r   r   r   r   r   r1   r   r   r   r   r   r   r   r   r   r   r   N)(rA   rB   rC   rD   rE   rG   rH   rI   rF   rJ   rK   rL   rN   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rP   r   r   rR   r   r   rS   r   r   r   rT   rU   r@   r>   r!   r!     s    DfoG(#I}-I
CMMMED $%
 4::u-4==%0
 g.t#g-k5#45@G	
 ENd]V#T^^V<	)D07:gw8 D[6!=:N#OT\F"M'//2G%IJPR!D(72k7E*,=> t^g%k5#45 D[6!=#P5)D/*'
. EN$)5+<=T\G#U:%67D+,;1#[1O$
 /5
*foouZ'8&//JLD&!	
 TN0FG(D&!	
 T]]F+dmm,,f5t}}++V4*FF;*FF;!
 CZ!D&!
 CZ)D&! 
 /?
*foouZ'8&//JLD&!	
gYFr@   r!   c                   \    e Zd ZdZdZdgZdgZdZdZdd e	e
j                  eee      fgiZy)	r#   z#
    Lexer for urlencoded data
    
urlencodedz!application/x-www-form-urlencodedz.https://en.wikipedia.org/wiki/Percent-encodingz2.16r:   z([^&=]*)(=)([^=&]*)(&?)N)rA   rB   rC   rD   rE   rG   rI   rF   rJ   r   r   rR   r   r   r   rT   rU   r@   r>   r#   r#   c  sO     DnG45I
:CM 	&8V[(YZ
Fr@   r#   c                      e Zd ZdZdZdZdgZdgZg ZdZ	e
j                  e
j                  z  Zd eej                    ee      ej                         fdefegd	efd
 e eedg      ee      dfd eej0                  ee      dfdej0                  fd eeee      dfgdej0                  fdefd eej                    ee      ej                         fgd ee ee      e      dfd ee      dfgdZy)r"   z(
    For Vue Single-File Component.
    Vuez#https://vuejs.org/api/sfc-spec.htmlvuez*.vuez2.19z(\{\{)(.*?)(\}\})z[^<&{]+r1   z0((?:[@:]|v-)(?:[.\w:-]|\[[^\]]*?\])+\s*)(=)(\s*)rE   )stateattr-directiver2   r3   r4   r5   r6   z[\w-]+z[:@.]z(\[)([^\]]*?)(\])z(["\'])(.*?)(\1)r9   )r:   r/   rE   r   N)rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   r   r   rP   r   r   r   r	   r
   r   r   rS   r   r   rT   rU   r@   r>   r"   r"   u  sT    D
/CgG	IIMMMBII%E "8GOO?#W__$6 7	
 TN@eD18TB %ht~~x&N(h{D+FO	
 '{#!8GOO?#W__$6 7
 !(6?#V#-.46/8
/Fr@   r"   ),rD   rK   pygments.lexerr   r   r   r   r   r   r	   r
   pygments.tokenr   r   r   r   r   r   r   r   pygments.utilr   r   pygments.lexers.javascriptr   pygments.lexers.jvmr   pygments.lexers.cssr   r   r   pygments.lexers.rubyr   __all__r   r   r   r   r   r    r!   	JadeLexerr#   r"   rU   r@   r>   <module>r      s    
" " "   > 6 * E E *DL
 L^Uz Up+z +\" "Jl" l^m# m`j! jV 	j $)y )r@   