
    Mh                        d Z ddlmZmZmZmZmZmZmZ ddl	m
Z
mZmZmZmZmZmZmZmZ g dZ G d de          Z G d de          Z G d	 d
e          Z G d de          Zd Zd Z G d de          Z G d de          ZdS )z
    pygments.lexers.graphics
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for computer graphics and plotting related languages.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerwordsincludebygroupsusingthisdefault)	TextCommentOperatorKeywordNameNumberPunctuationString
Whitespace)GLShaderLexerPostScriptLexerAsymptoteLexerGnuplotLexerPovrayLexerHLSLShaderLexerc                      e Zd ZdZdZdgZg dZdgZdZdZ	dd	e
j        fd
e
j        fde
j        fdefdef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 eddd          ef eddd          ej        f eddd          ej        f eddd          ej        fdej        fdefdefdefgiZdS ) r   z%
    GLSL (OpenGL Shader) lexer.
    GLSLglsl)z*.vertz*.fragz*.geoztext/x-glslsrcz"https://www.khronos.org/api/openglz1.1root#(?:.*\\\n)*.*$//.*$/(\\\n)?[*](.|\n)*?[*](\\\n)?/0\+|-|~|!=?|\*|/|%|<<|>>|<=?|>=?|==?|&&?|\^|\|\|?[?:]\bdefined\bz[;{}(),\[\]]z[+-]?\d*\.\d+([eE][-+]?\d+)?z[+-]?\d+\.\d*([eE][-+]?\d+)?0[xX][0-9a-fA-F]*0[0-7]*[1-9][0-9]*))	attributeconstuniformvaryingbuffersharedinoutlayoutflatsmoothnoperspectivecentroidsamplepatchinoutlowpmediumphighp	precision	invariantprecisecoherentvolatilerestrictreadonly	writeonlybreakcontinuedoforwhileswitchcaser	   ifelse
subroutinediscardreturnstruct\bprefixsuffixtruefalse)wvoidatomic_uintfloatvec2vec3vec4doubledvec2dvec3dvec4intivec2ivec3ivec4uintuvec2uvec3uvec4boolbvec2bvec3bvec4mat2mat3mat4dmat2dmat3dmat4mat2x2mat2x3mat2x4dmat2x2dmat2x3dmat2x4mat3x2mat3x3mat3x4dmat3x2dmat3x3dmat3x4mat4x2mat4x3mat4x4dmat4x2dmat4x3dmat4x4	sampler1D	sampler2D	sampler3DsamplerCubesampler1DArraysampler2DArraysamplerCubeArraysampler2DRectsamplerBuffersampler2DMSsampler2DMSArraysampler1DShadowsampler2DShadowsamplerCubeShadowsampler1DArrayShadowsampler2DArrayShadowsamplerCubeArrayShadowsampler2DRectShadow
isampler1D
isampler2D
isampler3DisamplerCubeisampler1DArrayisampler2DArrayisamplerCubeArrayisampler2DRectisamplerBufferisampler2DMSisampler2DMSArray
usampler1D
usampler2D
usampler3DusamplerCubeusampler1DArrayusampler2DArrayusamplerCubeArrayusampler2DRectusamplerBufferusampler2DMSusampler2DMSArrayimage1Dimage2Dimage3D	imageCubeimage1DArrayimage2DArrayimageCubeArrayimage2DRectimageBuffer	image2DMSimage2DMSArrayiimage1Diimage2Diimage3D
iimageCubeiimage1DArrayiimage2DArrayiimageCubeArrayiimage2DRectiimageBuffer
iimage2DMSiimage2DMSArrayuimage1Duimage2Duimage3D
uimageCubeuimage1DArrayuimage2DArrayuimageCubeArrayuimage2DRectuimageBuffer
uimage2DMSuimage2DMSArray)'common	partitionactiveasmclassunionenumtypedeftemplater   resourcegotoinlinenoinlinepublicstaticexternexternal	interfacelongshorthalffixedunsignedsuperpinputoutputhvec2hvec3hvec4fvec2fvec3fvec4sampler3DRectfiltersizeofcast	namespacer   zgl_\w*[a-zA-Z_]\w*z\.\s+N)__name__
__module____qualname____doc__namealiases	filenames	mimetypesurlversion_addedr   PreprocSingle	Multiliner   r   r   FloatHexOctIntegerr   r   ConstantTypeReservedr   Builtinr   tokens     X/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/graphics.pyr   r      s         DhG---I!"I
.CM 	1w~&.0AB@hX&k*,fl;,fl;!6:.$V^,U /0 U1, , ,2 34 U ! U, , , 	
 U 11d Ue2, 2, 2,f \g3h U 	& U
, 
, 
,  %d#K Z es
uFFFr
  r   c                   h   e Zd ZdZdZdgZddgZdgZdZdZ	d	e
j        fd
e
j        fde
j        fdefdef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df eddd          ef eddd          ej        f eddd          ej        f eddd          ej        f eddd          ej        f eddd          ej        f ed dd          ej        fd!ej        f ed"dd          ej        fd#efd$e
j        fd%efgded&fd'ej        fd(efd)efd*efgd+Z d,S )-r   z1
    HLSL (Microsoft Direct3D Shader) lexer.
    HLSLhlslz*.hlslz*.hlsliztext/x-hlslzMhttps://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlslz2.3r   r   r   r    r!   r"   z[;{}(),.\[\]]z[+-]?\d*\.\d+([eE][-+]?\d+)?f?z[+-]?\d+\.\d*([eE][-+]?\d+)?f?r#   r$   r%   "string)?r   asm_fragmentrA   rG   cbufferr2   r   column_majorcompilecompile_fragmentr'   rB   r	   rK   rC   rI   exportr   rD   fxgroupgloballycoherentgroupsharedrH   r,   r   r5   r   linelineadjlinearr   nointerpolationr1   NULLr-   
packoffsetpasspixelfragmentpointr;   rL   register	row_majorr3   samplerr+   
stateblockstateblock_stater   rM   rF   tbuffer	techniquetechnique10technique11texturer   triangletriangleadjr(   vertexfragmentr=   rE   rN   rO   rR   )autocatchchar
const_castdeletedynamic_castr   explicitfriendr   r   mutablenewoperatorprivate	protectedr   reinterpret_castr   signedr   static_castr   r   throwtrytypenamer   r   r   virtual)6dwordmatrixsnormr  unormr   rU   vector
BlendStateBufferByteAddressBufferComputeShaderDepthStencilStateDepthStencilViewDomainShaderGeometryShader
HullShader
InputPatch
LineStreamOutputPatchPixelShaderPointStreamRasterizerStateRenderTargetViewRasterizerOrderedBuffer"RasterizerOrderedByteAddressBuffer!RasterizerOrderedStructuredBufferRasterizerOrderedTexture1DRasterizerOrderedTexture1DArrayRasterizerOrderedTexture2DRasterizerOrderedTexture2DArrayRasterizerOrderedTexture3DRWBufferRWByteAddressBufferRWStructuredBufferRWTexture1DRWTexture1DArrayRWTexture2DRWTexture2DArrayRWTexture3DSamplerStateSamplerComparisonStateStructuredBuffer	Texture1DTexture1DArray	Texture2DTexture2DArrayTexture2DMSTexture2DMSArray	Texture3DTextureCubeTextureCubeArrayTriangleStreamVertexShader)rg   r[   rW   r_   r   
min16float
min10floatmin16intmin12int	min16uintrc   z([1-4](x[1-4])?)?\b)abortabsacosallAllMemoryBarrierAllMemoryBarrierWithGroupSyncanyAppendStructuredBufferasdoubleasfloatasinasintasuintr  atanatan2ceilCheckAccessFullyMappedclampclipCompileShaderConsumeStructuredBuffercoscosh	countbitscrossD3DCOLORtoUBYTE4ddx
ddx_coarseddx_fineddy
ddy_coarseddy_finedegreesdeterminantDeviceMemoryBarrier DeviceMemoryBarrierWithGroupSyncdistancedotdsterrorfEvaluateAttributeAtCentroidEvaluateAttributeAtSampleEvaluateAttributeSnappedexpexp2f16tof32f32tof16faceforwardfirstbithighfirstbitlowfloorfmafmodfracfrexpfwidthGetRenderTargetSampleCountGetRenderTargetSamplePositionGlobalOrderedCountIncrementGroupMemoryBarrierGroupMemoryBarrierWithGroupSyncInterlockedAddInterlockedAndInterlockedCompareExchangeInterlockedCompareStoreInterlockedExchangeInterlockedMaxInterlockedMinInterlockedOrInterlockedXorisfiniteisinfisnanldexplengthlerplitloglog10log2madmaxminmodfmsad4mulnoise	normalizepowprintfProcess2DQuadTessFactorsAvgProcess2DQuadTessFactorsMaxProcess2DQuadTessFactorsMinProcessIsolineTessFactorsProcessQuadTessFactorsAvgProcessQuadTessFactorsMaxProcessQuadTessFactorsMinProcessTriTessFactorsAvgProcessTriTessFactorsMaxProcessTriTessFactorsMinQuadReadLaneAt	QuadSwapX	QuadSwapYradiansrcpreflectrefractreversebitsroundrsqrtsaturatesignsinsincossinh
smoothstepsqrtsteptantanhtex1Dr  	tex1Dbias	tex1Dgradtex1Dlod	tex1Dprojtex2Dr  	tex2Dbias	tex2Dgradtex2Dlod	tex2Dprojtex3Dr  	tex3Dbias	tex3Dgradtex3Dlod	tex3DprojtexCUBEr  texCUBEbiastexCUBEgrad
texCUBElodtexCUBEproj	transposetruncWaveAllBitAnd
WaveAllMax
WaveAllMinWaveAllBitOrWaveAllBitXorWaveAllEqualWaveAllProduct
WaveAllSumWaveAllTrueWaveAnyTrue
WaveBallotWaveGetLaneCountWaveGetLaneIndexWaveGetOrderedIndexWaveIsHelperLaneWaveOnceWavePrefixProductWavePrefixSumWaveReadFirstLaneWaveReadLaneAt)SV_ClipDistanceSV_ClipDistance0SV_ClipDistance1SV_CulldistanceSV_CullDistance0SV_CullDistance1SV_CoverageSV_DepthSV_DepthGreaterEqualSV_DepthLessEqualSV_DispatchThreadIDSV_DomainLocation
SV_GroupIDSV_GroupIndexSV_GroupThreadIDSV_GSInstanceIDSV_InnerCoverageSV_InsideTessFactorSV_InstanceIDSV_IsFrontFaceSV_OutputControlPointIDSV_PositionSV_PrimitiveIDSV_RenderTargetArrayIndexSV_SampleIndexSV_StencilRefSV_TessFactorSV_VertexIDSV_ViewportArrayIndexz\bSV_Target[0-7]?\b)allow_uav_conditionbranchcalldomainearlydepthstencilfastoptflatten	forcecaseinstanceloopmaxtessfactor
numthreadsoutputcontrolpointsoutputtopologypartitioningpatchconstantfuncunrollr   z\\$r   #popzO\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|[0-7]{1,3})	[^\\"\n]+\\\n\\)r   r  N)!r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r   r   r   r  r  r  r   r  	Decoratorr   Escaper  r	  r
  r  r   r      s         DhG9%II
YCM  1w~&.0AB@hX&{+.=.=!6:.$V^,68$U ? U, , ,  U#E%@@@U 6 U, , ,  U R" U#, , ,$ \%& U : %;= = = \	
 U '"P UQ(, (, (,R \S)T U 
) U, , , ^ $T^4U .
 U, , , ^ d#W_%Z CB
H 66"<=C]L6"fFO
IL LFFFr
  r   c                      e Zd ZdZdZdZddgZddgZdgZd	Z	d
Z
de
 dZde
 dZe de Zdej        fdej        fdej        fdej        fdedfdefdez   ej        fdez   ej        fdez   ej        fdez   ej        fde ej        feej        fdez   ej        fdez   ej        f e de          ej!        fd e"fgd!efd"ej#        d#fded$fd%ed&fgd'ej#        d&f e$d&          gd(Z%d)S )*r   z%
    Lexer for PostScript files.
    
PostScriptz(https://en.wikipedia.org/wiki/PostScript
postscriptpostscrz*.psz*.epszapplication/postscriptz1.4z()<>\[\]{}/%\sz(?=[z])z[^]+z^%!.+$z%%.*$z(^%.*\n){2,}z%.*$z\(stringliteralz
[{}<>\[\]]z<[0-9A-Fa-f]+>zG[0-9]+\#(\-|\+)?([0-9]+\.?|[0-9]*\.[0-9]+|[0-9]+\.[0-9]*)((e|E)[0-9]+)?z?(\-|\+)?([0-9]+\.?|[0-9]*\.[0-9]+|[0-9]+\.[0-9]*)((e|E)[0-9]+)?z(\-|\+)?[0-9]+z\/z(false|true)z6(eq|ne|g[et]|l[et]|and|or|not|if(?:else)?|for(?:all)?))lr}  addaloadarcarcnarrayr  beginbindceilingcharpathr  	closepathconcatconcatmatrixcopyr  currentlinewidthcurrentmatrixcurrentpointcurvetocvicvsdefdefaultmatrixdictdictstackoverflowdiv
dtransformdupendexchexecexitr  fillfindfontr  getgetintervalgrestoregsavegtidentmatrixidividtransformindexinvertmatrix
itransformr  linetolnloadr  rD  rE  modmovetor  negnewpath
pathforallpathbboxpopprintpstackputquitrand
rangecheckrcurvetorepeatrestorerlinetormovetorollrotater  runsavescale	scalefontsetdashsetfontsetgray
setlinecapsetlinejoinsetlinewidth	setmatrixsetrgbcolorshfillshowshowpager  r  stackstringwidthstroke
strokepathsubsyntaxerror	transform	translatetruncate	typecheck	undefinedundefinedfilenameundefinedresultrQ   r   z[^()\\]+rO  escape#push\)rL  z[0-8]{3}|n|r|t|b|f|\\|\(|\))r   rX  r  N)&r   r   r   r   r   r   r   r   r   r   	delimiterdelimiter_endvalid_name_chars
valid_namer   r   Specialr   r   r   r   r   r  r  r   r  r   VariableFunctionr   r  r  r   r  r   rQ  r	   r  r	  r
  r  r   r   1  s         D
4CY'G!I)*IM!I)I)))M)Y)))%7777J
 (w'g/0gn% FO,K( .
;!./06
<O$l,.?  :/ ' },g.>? G%.0 U 8$ AN%O O O& \'* Z w<
~ &!FM8,FG$FF#	
 ,V]FCGFOO
MJ JFFFr
  r   c                       e Zd ZdZdZdZddgZdgZdgZdZ	d	Z
d
efdefd eee          fdefdefgdefdedfdej        fdej        fdej        fdej        fdej        fdefdefd ee ee          e          fdefdej        fdej        fdej        fdefg ed          d e
z   d!z    e ee          ej         ee           ee          e          d"fd e
z   d#z    e ee          ej         ee           ee          e          f ed$          g ed           ed%          d&efd'ed(fg ed           ed%          d'efd)ed*fd+ed(fgded(fd,ej         fd
efd-efd.efd/efd0efgd1Z!d2 Z"d3S )4r   z$
    For Asymptote source code.
    	Asymptotezhttp://asymptote.sf.net/	asymptoteasyz*.asyztext/x-asymptotez1.2z(?:\s|//.*?\n|/\*.*?\*/)+\nr   (\\)(\n)z//(\n|(.|\n)*?[^\\]\n)z/(\\\n)?\*(.|\n)*?\*(\\\n)?/"(\\\\|\\[^\\]|[^"\\])*"'r  z%(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[lL]?z(\d+\.\d*|\.\d+|\d+[fF])[fF]?z0x[0-9a-fA-F]+[Ll]?z0[0-7]+[Ll]?z\d+[Ll]?z[~!%^&*+=|?:<>/-]z
[()\[\],.]z\b(case)(.+?)(:)z(and|controls|tension|atleast|curl|if|else|while|for|do|return|break|continue|struct|typedef|new|access|import|unravel|from|include|quote|static|public|private|restricted|this|explicit|true|false|null|cycle|newframe|operator)\ba?  (Braid|FitResult|Label|Legend|TreeNode|abscissa|arc|arrowhead|binarytree|binarytreeNode|block|bool|bool3|bounds|bqe|circle|conic|coord|coordsys|cputime|ellipse|file|filltype|frame|grid3|guide|horner|hsv|hyperbola|indexedTransform|int|inversion|key|light|line|linefit|marginT|marker|mass|object|pair|parabola|path|path3|pen|picture|point|position|projection|real|revolution|scaleT|scientific|segment|side|slice|splitface|string|surface|tensionSpecifier|ticklocate|ticksgridT|tickvalues|transform|transformation|tree|triangle|trilinear|triple|vector|vertex|void)(?=\s+[a-zA-Z])z(Braid|FitResult|TreeNode|abscissa|arrowhead|block|bool|bool3|bounds|coord|frame|guide|horner|int|linefit|marginT|pair|pen|picture|position|real|revolution|slice|splitface|ticksgridT|tickvalues|tree|triple|vertex|void)\bz[a-zA-Z_]\w*:(?!:)r   
whitespacez6((?:[\w*\s])+?(?:\s|\*))([a-zA-Z_]\w*)(\s*\([^;]*?\))(z)(\{)functionz)(;)	statement
statementsz[{}];rL  z\{r  z\}z0\\([\\abfnrtv"\'?]|x[a-fA-F0-9]{2,4}|[0-7]{1,3})	[^\\'\n]+rN  z\\nrO  )r  r  r   r  r  r  c              #      K   ddl m}m} t          j        | |          D ]@\  }}}|t
          u r||v rt
          j        }n|t
          u r||v rt
          j        }|||fV  Ad S )Nr   )ASYFUNCNAME
ASYVARNAME)pygments.lexers._asy_builtinsr  r  r   get_tokens_unprocessedr   r  r  )selftextr  r  r  tokenvalues          r  r  z%AsymptoteLexer.get_tokens_unprocessed  s      IIIIIIII1$==	& 	&E5%}}+!5!5$5J#6#6%%%%%	& 	&r
  N)#r   r   r   r   r   r   r   r   r   r   _wsr   r   r
   r   r   r   r   r  r  r  r   r   r   r   r   r  r   Labelr   r  r	   rQ  r  r  r	  r
  r  r   r     s         D
$CE"G	I#$IM 'C JZ ((4445&0,g6
 )&168$5v|D-v|<#VZ0fj)&.)!8,K( ((7EE$KK"F"FGI KRS	, .5\	;6 8?|E #DJ/d#O(
T GL!!  ## XeeDkk4=%%++uuT{{!# #  "" XeeDkk4=%%++uuT{{!# #	$ GK  #
( GL!!GL!![!+v&	
 GL!!GL!!+K)K(
 66"@&-PFO6"fVFO
cZ ZFx& & & & &r
  r   c                                            d          d                     fdt          t                     d          D                       S )N$|c              3   N   K   | ]}d          dz   |         z   dz   V   d S )N   rN   r	  ).0idposwords     r  	<genexpr>z_shortened.<locals>.<genexpr>  sU       9 9 $K$tAvax.058 9 9 9 9 9 9r
  )findjoinrangelen)r  r  s   `@r  
_shortenedr    sf    99S>>D88 9 9 9 9 9"3t99dB779 9 9 9 9 9r
  c                  R    d                     t          t          |                     S )Nr  )r  mapr  )r   s    r  _shortened_manyr  
  s    88C
E**+++r
  c                   <   e Zd ZdZdZdZdgZddgZdgZdZ	 e
d	           ed
          edf edd          edf ed          edfd eeee          dfdef ed          edf eddd          edf ed          edf ed          edf edd          ed f ed!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1          ed2f ed+d,d-d.d/d3          ed4fd5 eej        ee          d2fd6 eej        eeeeee          d2fd7ej        fd8efgd9efd:efd;ef ed<          gd=ed>fd?efg e
d	          d8ed<fd@ed<fgdAed<fdBej        fdCefd:efd;efd@ed<fgdDefdEed<fdFefd:efd;efd@ed<fg e
d4          dAedGfdEedHfdIej        fdJej        fdKej        fdLefdMefdNej        fdO eej        ee          fdPefd7ej        fdQ eee          fg e
d	           edR ej        d<fgdSed<f edT          ej        f e
d2          gdUef e
d4          gdVej        f e
d          gdWed<f e
d2          gdXej        f edY          ej        f e
d2          g edZd[d\d]d^d_d`dadbdcddde          ej        f e
d2          g edfdgdhdi          ej        f e
d2          gdjZ dkS )lr   z'
    For Gnuplot plotting scripts.
    Gnuplotzhttp://gnuplot.info/gnuplotz*.plotz*.pltztext/x-gnuplot0.11r  zbi$ndr_  zex$itzq$uitr  zf$itfitz(if)(\s*)(\()rH   zelse\bzpa$usepausep$lotzrep$lotzsp$lotplotzsa$ver  zse$t)genericargs	optionargzsh$owzuns$et)noargsr  zlow$erzra$isezca$llzcd$zcl$earzh$elpz\?$zhi$storyzl$oadpr$intzpwd$zre$readzres$etzscr$eendumpzshe$llzsy$stemzup$dater  ztest$r  z([a-zA-Z_]\w*)(\s*)(=)z(([a-zA-Z_]\w*)(\s*)(\()(.*?)(\))(\s*)(=)z@[a-zA-Z_]\w*r  z[^\\\n]+rN  rO  rL  #commentz
[ \t\v\f]+r  r  z/\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})rM  z''r  r  dqstringsqstringz (\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+z(\d+\.\d*|\.\d+)z-?\d+z[,.~!%^&*+=|?:<>/-]z
[{}()\[\]]z	(eq|ne)\bz([a-zA-Z_]\w*)(\s*)(\()r   r  )za$llzan$gleszar$rowz
au$toscalezb$arszbor$derz	box$widthzcl$abelzc$lipz
cn$trparamzco$ntourzda$taz	data$filezdg$rid3dzdu$mmyz	enc$odingzdec$imalsignzfit$z	font$pathzfo$rmatz	fu$nctionz
fu$nctionszg$ridz	hid$den3dzhis$torysizezis$osampleszk$eyz	keyt$itlezla$belz
li$nestylezls$z	loa$dpathzloc$alez	log$scalezmac$roszmap$pingz
map$ping3dzmar$ginzlmar$ginzrmar$ginztmar$ginzbmar$ginzmo$usez
multi$plotzmxt$icsz	nomxt$icszmx2t$icsz
nomx2t$icszmyt$icsz	nomyt$icszmy2t$icsz
nomy2t$icszmzt$icsz	nomzt$icszmcbt$icsz
nomcbt$icszof$fsetszor$iginzo$utputzpa$rametriczpm$3dzpal$ettez	colorb$oxr  z
poi$ntsizezpol$arr  zobj$ectzsa$mpleszsi$zezst$ylezsu$rfaceztable$	t$erminalztermo$ptionszti$csz	ticsc$alez
ticsl$evelztimef$mtz
tim$estampztit$le
v$ariableszve$rsionzvi$ewzxyp$lanezxda$tazx2da$tazyda$tazy2da$tazzda$tazcbda$tazxl$abelzx2l$abelzyl$abelzy2l$abelzzl$abelzcbl$abelzxti$csznoxti$cszx2ti$csz	nox2ti$cszyti$csznoyti$cszy2ti$csz	noy2ti$cszzti$csznozti$cszcbti$csz	nocbti$cszxdti$csz	noxdti$cszx2dti$csz
nox2dti$cszydti$csz	noydti$cszy2dti$csz
noy2dti$cszzdti$csz	nozdti$cszcbdti$csz
nocbdti$cszxmti$csz	noxmti$cszx2mti$csz
nox2mti$cszymti$csz	noymti$cszy2mti$csz
noy2mti$cszzmti$csz	nozmti$cszcbmti$csz
nocbmti$cszxr$angezx2r$angezyr$angezy2r$angezzr$angezcbr$angezrr$angeztr$angezur$angezvr$angez
xzeroa$xiszx2zeroa$xisz
yzeroa$xiszy2zeroa$xisz
zzeroa$xisz	zeroa$xiszz$ero!zall$windowsz	gnuplot\bzvia\br  z%(mouse|any|button1|button2|button3)\bz	key$presszax$eszaxi$szbin$aryzev$eryzi$ndexzmat$rixzs$moothzthru$zt$itleznot$itlezu$singzw$ithz
f$unctionszs$etr  r  )r   r  r  r  r  r  r  r  r_  r  r  rH   r  r  r  N)!r   r   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  Wordr  r  r	  r
  r  r   r     s         D
 CkG7#I!"IM GL!!Z  '62_Wg..@Z%0xx{CCTJ Z!!7G4_Wi::GVLZ  '62Z*FG_Wh//-/_Xx%$fj'8#Y-%y)= = m	%
 _VY-%w0 0h  'XdmZ::MK8XdmZKX? ?@MO t}-7O7
< '"gGGFOO
 '9%J'

 GL!!;'J'	
 66"?O6"fFOJ'
 FO66"6"fFOJ'
 GH6:&6:&0&,? &,/v~&"H-K(8=)'XdmT;779d#t}-((4445
" GL!!_ 4 48 6:\69K
B '6"Z&&5GM""
 7#GH

 t|$GFOO

 K(GM""

 6t|DZ$$dl3GM""
 _Wgy(H&	7H'7< < \ GM""
 _\6;MM\GM""
YQ QFFFr
  r   c                   4   e Zd ZdZdZdZdgZddgZdgZdZ	d	d
e
j        fde
j        fdej        f eddd          e
j        f eddd          ef edd          ej        fdej        j        fdefdej        fdej        fdefdefdefdefgiZd ZdS )r   z4
    For Persistence of Vision Raytracer files.
    POVRayzhttp://www.povray.org/povz*.povz*.incztext/x-povrayr  r   z/\*[\w\W]*?\*/r   z(?s)"(?:\\.|[^"\\])+")rA   rG   debugdeclarer	   definerI   elseifrs  errorfclosefopenrD   rH   ifdefifndefr   localmacror  readrender
statisticsrF   undefversionwarningrE   writer  rN   rO   (9  aa_levelaa_thresholdr}  r~  acoshadaptiveadc_bailoutagate
agate_turbr  alphaambientambient_lightangleaperture	arc_angle
area_lightascr  asinhassumed_gammar  r  atanh
atmosphereatmospheric_attenuationattenuatingaverage
background
black_holeblueblur_samples
bounded_bybox_mappingbozorA   brick
brick_size
brightness
brilliancebumpsbumpy1bumpy2bumpy3bump_map	bump_sizerG   causticsr  checkerchr
clipped_byclockcolor	color_mapcolour
colour_map	component	compositerc  
confidenceconic_sweepconstantcontrol0control1r  r  countcracklecrandcubecubic_splinecylindrical_mappingr  r  r	   r  dentsdiffuse	directionr  distance_maximumrp  dust	dust_typeeccentricityrI   emittingrs  r	  error_boundr  exponentfade_distance
fade_powerfallofffalloff_anglerT   file_existsr   finishfisheyeflatnessflipr  focal_pointfogfog_alt
fog_offsetfog_type	frequencygifglobal_settingsglowinggradientgranitegray_thresholdgreenhalohexagon
hf_gray_16	hierarchyhollowhypercomplexrH   r  iff	image_map	incidencer   r_   interpolateinverseioriridirid_wavelengthjitterlambdaleopardr  linear_splinelinear_sweeplocationr  
looks_likelook_atlow_error_factormandelmap_typemarblematerial_maprE  r  max_intersectionsmax_iterationmax_trace_level	max_valuemetallicr  minimum_reuser  mortarnearest_countnonormal
normal_map	no_shadownumber_of_wavesoctavesoffoffsetomegaomnimaxononceonionopenorthographic	panoramicpattern1pattern2pattern3perspectivepgmphasephong
phong_sizepipigmentpigment_mapplanar_mappingpngpoint_atpotr  ppmr9   pwrquadratic_spline
quaternionquick_colorquick_colourquiltedradialr  	radiosityradiusrainbow	ramp_waver  r  
reciprocalrecursion_limitred
reflection
refractionr  r  rgbrgbfrgbftrgbtrightripplesr  	roughnesssamplesr  scallop_wave
scatteringseed
shadowlessr  	sine_waver  sky
sky_sphereslice	slope_mapr0   specularspherical_mappingspiralspiral1spiral2	spotlightspottedsqrr  r  strstrcmpstrengthstrlenstrlwrstruprsturmsubstrrF   systr  r  test_camera_1test_camera_2test_camera_3test_camera_4r,  texture_maptga	thickness	threshold	tightnesstile2tilestrackr  r  transmittriangle_waverS   ttf
turbulence
turb_depthtypeultra_wide_angleup	use_color
use_colour	use_indexu_stepsvalvariancevaxis_rotatevcrossvdotr  vlength
vnormalizevolume_objectvolume_renderedvol_with_lightvrotatev_stepsr  warpwater_levelwavesrE   widthwoodwrinklesyes)bicubic_patchblobboxcameraconecubiccylinder
differencedischeight_fieldintersectionjulia_fractallathelight_sourcemergemeshobjectplanepolypolygonprismquadricquarticsmooth_trianglesorspheresuperellipsoidr  torusr-  r   r  z\b(x|y|z|u|v)\br   z[0-9]*\.[0-9]+z[0-9]+z[\[\](){}<>;,]z[-+*/=.|&]|<=|>=|!=r  r   c                 R    d}d| v r|dz  }d| v r|dz  }d| v r|dz  }d| v r|dz  }|S )at  POVRAY is similar to JSON/C, but the combination of camera and
        light_source is probably not very likely elsewhere. HLSL or GLSL
        are similar (GLSL even has #version), but they miss #declare, and
        light_source/camera are not keywords anywhere else -- it's fair
        to assume though that any POVRAY scene must have a camera and
        lightsource.r   z#versiong?z#declarer  r"  g?r	  )r  results     r  analyse_textzPovrayLexer.analyse_text	  s^     dNFdNFtdNFT!!cMFr
  N)r   r   r   r   r   r   r   r   r   r   r   r   r   r   Doubler   r   r   r   r  Pseudor   r   r  r   r   r   r  r3  r	  r
  r  r   r     sf         D
"CgG'"I !IM 	 12w~&%v}5U 
 "&e5 5 5 _ U 0+` 49a0H 0H 0Hb c1d U 6
 ?DE E E \  !45d#-',#X.(&1Z WL
NF`    r
  r   N)r   pygments.lexerr   r   r   r   r   r   r	   pygments.tokenr
   r   r   r   r   r   r   r   r   __all__r   r   r   r   r  r  r   r   r	  r
  r  <module>r9     sC                    , , , , , , , , , , , , , , , , , , , , , ,- - -@ @ @ @ @J @ @ @FW W W W Wj W W Wt[ [ [ [ [j [ [ [|r& r& r& r& r&Z r& r& r&j9 9 9, , ,] ] ] ] ]: ] ] ]@l l l l l* l l l l lr
  