ó
    öÞ j4  ã                   ó�   • S r SSKJrJrJrJrJrJrJr  SSK	J
r
JrJrJrJrJrJrJrJrJr  SS/r " S S\5      r " S S\5      rg)	zÂ
pygments.lexers.varnish
~~~~~~~~~~~~~~~~~~~~~~~

Lexers for Varnish configuration

:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
é    )Ú
RegexLexerÚincludeÚbygroupsÚusingÚthisÚinheritÚwords)
ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚLiteralÚ
WhitespaceÚVCLLexerÚVCLSnippetLexerc                   óN  • \ rS rSrSrSrS/rS/rS/rSr	Sr
S	 r\" S
5      \" S5      S\" \R                  \\" \5      \5      4S\S4/\" S
5      \" S5      S\4S\4S\4S\S4/\" S
5      S\" \R                  \\R*                  R,                  \5      4S\" \R                  \\5      S4S\" \R                  \\" \5      \5      4S\S4S\S4/S\R0                  4S\R0                  4S\R2                  4S\R4                  4S\R*                  4\" SSS9\R*                  4S \4S!\4S"\4\" S#SS9\4S$\R*                  4\" S%5      \R:                  4S&\4S'\" \\R*                  R,                  \5      S(4S)\" \\R*                  R,                  \5      S4S*\" \\R*                  R,                  \5      S+4S,\" \R<                  \R4                  \5      4S-\" \\R2                  \5      4S.\" \R2                  \\R2                  \" \5      5      4S/\4/S0\R@                  4S1\R@                  S4S2\R@                  S4S3\R@                  4/S4\4S1\R@                  S54S6\4/S7\!S4S8\!4/S9\!4S:\!S4S;\!4/S<\!S=4S>\!S?4S@\"4SA\"4SB\#4/\" S
5      \" S5      \" SC5      SA\"4/SD.
r$SEr%gF)Gr   é   z+
For Varnish Configuration Language (VCL).
ÚVCLÚvclz*.vclztext/x-vclsrcúXhttps://www.varnish-software.com/developers/tutorials/varnish-configuration-language-vclú2.2c                 óF   • U R                  S5      (       a  gSU S S ;   a  gg )Nzvcl 4.0;g      ð?z	
vcl 4.0;iè  gÍÌÌÌÌÌì?)Ú
startswith©Útexts    ÚQ/var/www/html/gaurav/venv/lib/python3.13/site-packages/pygments/lexers/varnish.pyÚanalyse_textÚVCLLexer.analyse_text   s.   € ð �?‰?˜:×&Ñ&Øð ˜T % 4˜[Ó(Øð )ó    Ú
whitespaceÚcommentsz(\.\w+)(\s*=\s*)([^;]*)(;)z\}z#popz[!/]+Ú;z\d+z(\.probe)(\s*=\s*)(\w+)(;)z(\.probe)(\s*=\s*)(\{)Úprobez!(\.\w+\b)(\s*=\s*)([^;\s]*)(\s*;)z\{z#pushz(\d\.)?\d+[sdwhmy]z(\d\.)?\d+msz£(vcl_pass|vcl_hash|vcl_hit|vcl_init|vcl_backend_fetch|vcl_pipe|vcl_backend_response|vcl_synth|vcl_deliver|vcl_backend_error|vcl_fini|vcl_recv|vcl_purge|vcl_miss)\bzV(pipe|retry|hash|synth|deliver|purge|abandon|lookup|pass|fail|ok|miss|fetch|restart)\bz8(beresp|obj|resp|req|req_top|bereq)\.http\.[a-zA-Z_-]+\b)?z
obj.statuszreq.hash_always_misszberesp.backendzreq.esi_levelzreq.can_gzipz
beresp.ttlzobj.uncacheablezreq.ttlzobj.hitszclient.identityzreq.hash_ignore_busyz
obj.reasonzreq.xidzreq_top.protoz
beresp.agez	obj.protozobj.agezlocal.ipzberesp.uncacheablez
req.methodzberesp.backend.ipÚnowz	obj.gracezreq.restartszberesp.keepz	req.protoz
resp.protoz	bereq.xidzbereq.between_bytes_timeoutzreq.esizbereq.first_byte_timeoutzbereq.methodzbereq.connect_timeoutzberesp.do_gzipzresp.statuszberesp.do_gunzipzberesp.storage_hintzresp.is_streamingzberesp.do_streamzreq_top.methodzbereq.backendzberesp.backend.namezberesp.statuszreq.urlzobj.keepzobj.ttlzberesp.reasonzbereq.retrieszresp.reasonz	bereq.urlzberesp.do_esizberesp.protoz	client.ipzbereq.protozserver.hostnamez	remote.ipzreq.backend_hintzserver.identityzreq_top.urlzberesp.gracezberesp.was_304z	server.ipzbereq.uncacheablez\b)Úsuffixz[!%&+*\-,/<.}{>=|~]+z[();]z[,]+)Ú	hash_dataÚregsubÚ	regsuballÚifÚelseÚelsifÚelifÚsynthÚ	syntheticÚbanÚreturnÚsetÚunsetÚimportr   ÚnewÚrollbackÚcallzstorage\.\w+\.\w+\b)ÚtrueÚfalsez\d+\bz(backend)(\s+\w+)(\s*\{)Úbackendz(probe\s)(\s*\w+\s)(\{)z(acl\s)(\s*\w+\s)(\{)Úaclz(vcl )(4.0)(;)$z(sub\s+)([a-zA-Z]\w*)(\s*\{)z+([a-zA-Z_]\w*)(\.)([a-zA-Z_]\w*)(\s*\(.*\))z[a-zA-Z_]\w*z[^*/]+z/\*z\*/z[*/]z#.*$Úcommentz//.*$Ú"z[^"\n]+z[^"}]z"\}z["}]zL?"Ústringz\{"Úmultistringz\nz\s+z\\\nÚ
statements)
r'   r>   r=   rC   r?   r%   rA   rB   r$   Úroot© N)&Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedr!   r   r   r   Ú	Attributer   r   r   r   r   ÚVariableÚGlobalr   ÚDateÚFunctionÚConstantr	   r   ÚBuiltinÚReservedr   Ú	Multiliner   r   r
   ÚtokensÚ__static_attributes__rE   r#   r    r   r      sÏ  † ñð €DØˆg€GØ�	€IØ Ð!€IØ
d€CØ€Mò	ñ �LÓ!Ù�JÓØ*Ù�d—n‘n h±°d³¸[ÓIðKà�K Ð(ð
ñ �LÓ!Ù�JÓØ�xÐ Ø�;ÐØ�VÐØ�K Ð(ð
ñ �LÓ!Ø*Ù�d—n‘n h°·±×0DÑ0DÀkÓRðTà&Ù�d—n‘n h°Ó<¸gðGà1Ù�d—n‘n h±°d³¸[ÓIðKà�K Ð)Ø�K Ð(ð

ð # G§L¡LÐ1Ø˜gŸl™lÐ+ð8à9=¿¹ðHð&Ø'+§}¡}ð6àHÈ$Ï-É-ÐXÙð 2ð  ;@ñ!Að" �]‰]ð#ð$ % hÐ/Ø�{Ð#à�kÐ"Ùð (ð 16ñ7ð ð	ð
 $ T§]¡]Ð3ÙÐ$Ó% t§|¡|Ð4Ø�vÐØ(Ù�g˜tŸ}™}×3Ñ3°[ÓAÀ9ðNà'Ù�g˜tŸ}™}×3Ñ3°[ÓAÀ7ðLà%Ù�g˜tŸ}™}×3Ñ3°[ÓAÀ5ðJàÙ�g×&Ñ&¨¯©°{ÓCðEà,Ù˜ $§-¡-°Ó=ð?ðñ �d—m‘m [°$·-±-ÁÀtÃÓMð	Oð
 ˜dÐ#ðm7
ðr ˜×)Ñ)Ð*Ø�W×&Ñ&¨Ð0Ø�W×&Ñ&¨Ð/Ø�g×'Ñ'Ð(ð	
ð �gÐØ�W×&Ñ&¨	Ð2Ø�wÐð
ð �6˜6Ð"Ø˜Ð ð
ð
 �vÐØ�V˜VÐ$Ø�fÐð
ð �V˜XÐ&Ø�V˜]Ð+Ø�JÐØ�ZÐ Ø�dˆOð
ñ �LÓ!Ù�JÓÙ�LÓ!Ø�ZÐ ð	
ñ]tƒFr#   c                   ó    • \ rS rSrSrSrSS/rS/r/ rSr	Sr
S	 rS
\4S\R                  4/S\R                   4/\" S5      \\" S5      /S.rSrg)r   é    z.
For Varnish Configuration Language snippets.
ÚVCLSnippetsÚvclsnippetsÚ
vclsnippetztext/x-vclsnippetr   r   c                 ó   • g)Nr   rE   r   s    r    r!   ÚVCLSnippetLexer.analyse_text«   s   € àr#   z\.\.\.+zN(bereq|req|req_top|resp|beresp|obj|client|server|local|remote|storage)($|\.\*)z(backend)\bÚsnippetspreÚsnippetspost)rc   rd   rD   rE   N)rF   rG   rH   rI   rJ   rK   rL   rN   rM   rO   rP   r!   r   r   rR   r   rX   r   r   rZ   r[   rE   r#   r    r   r       sŠ   † ñð €DØ˜lÐ+€GØ$Ð%€IØ€IØ
d€CØ€Mòð ˜Ð!ð!Ø"&§-¡-ð1ð
ð ˜W×-Ñ-Ð.ð
ñ �MÓ"ØÙ�NÓ#ð
ñƒFr#   N)rJ   Úpygments.lexerr   r   r   r   r   r   r	   Úpygments.tokenr
   r   r   r   r   r   r   r   r   r   Ú__all__r   r   rE   r#   r    Ú<module>rh      sP   ðñ÷÷ ñ ÷-÷ -÷ -ð Ð(Ð
)€ôJˆzô JôZ�hõ r#   