Ë
    !täi$i  ã                   óH   — d Z ddlmZmZmZmZ ddlmZ dgZ G d„ de«      Z	y)zÓ
    pygments.lexers.freefem
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for FreeFem++ language.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )ÚCommentÚOperatorÚKeywordÚName)ÚCppLexerÚFreeFemLexerc                   ó|   — e Zd ZdZdZdZdgZdgZdgZdZ	h d£Z
h d	£Zh d
£Zh d£Zh d£Zh d£Zh d£ZdhZh d£Zdd„Zy)r   z|
    For FreeFem++ source.

    This is an extension of the CppLexer, as the FreeFem Language is a superset
    of C++.
    ÚFreefemzhttps://freefem.org/Úfreefemz*.edpztext/x-freefemz2.4>   ú.*ú./ú^-1Ú%Ú'Ú*Ú+Ú-Ú/Ú:Ú^>   ÚintÚboolÚfuncÚmeshÚrealÚvarfÚPmmapÚmacroÚmesh3ÚsolveÚborderÚmatrixÚstringÚcomplexÚdmatrixÚfespaceÚmpiCommÚproblemÚEndMacroÚNewMacroÚifstreamÚmpiGroupÚofstreamÚ	gslsplineÚ
PsemaphoreÚ
mpiRequest>*   ÚP0ÚP1ÚP2ÚP3ÚP4ÚHCTÚP1bÚP2bÚP2hÚRT0ÚRT1ÚRT2ÚBDM1ÚFEQFÚP03dÚP13dÚP1blÚP1dcÚP1ncÚP23dÚP2BRÚP2dcÚP3dcÚP4dcÚP1b3dÚP2pncÚRT03dÚP0EdgeÚP1EdgeÚP1bl3dÚP2EdgeÚP3EdgeÚP4EdgeÚP5EdgeÚEdge03dÚEdge13dÚEdge23dÚP2MorleyÚRT0OrthoÚRT1OrthoÚRT2OrthoÚ	BDM1Ortho>   ÚloadÚIFMACROÚincludeÚ
ENDIFMACRO>p   ÚNÚPÚmÚnÚxÚyÚzÚCGÚLUÚbeÚimÚl1Úl2ÚntÚnvÚpiÚreÚadjÚcinÚmaxÚminÚnbeÚsumÚARGVÚFILEÚLINEÚareaÚcoutÚdiagÚendlÚfindÚgoodÚimaxÚiminÚndofÚqfV1ÚqfV2ÚqfV5ÚsetwÚtrueÚCroutÚGMRESÚfalseÚffindÚfixedÚflushÚlabelÚndofKÚqf1pEÚqf1pTÚqf2pEÚqf2pTÚqf3pEÚqf4pEÚqf5pEÚqf5pTÚqf7pTÚqf9pTÚrfindÚtellpÚappendÚbinaryÚlengthÚlinftyÚmpiLORÚmpiMAXÚmpiMINÚmpiSUMÚnuEdgeÚqfnbpEÚregionÚunusedÚvolumeÚUMFPACKÚdefaultÚlenEdgeÚmeasureÚmpiBANDÚmpiBXORÚmpiLANDÚmpiLXORÚmpiPRODÚmpirankÚmpisizeÚshowposÚversionÚCholeskyÚnTonEdgeÚqf2pT4P1ÚqfV1lumpÚquantileÚshowbaseÚ	hTriangleÚ	noshowposÚ	precisionÚ	qf1pElumpÚ	qf1pTlumpÚ	verbosityÚ
noshowbaseÚ
notaregionÚ
nuTriangleÚ
scientificÚBoundaryEdgeÚInternalEdgeÚmpiAnySourceÚmpiCommWorldÚmpiUndefinedÚsearchMethodÚsparsesolverÚwhoinElementÚbordermeasureÚedgeOrientation>  ÚdÚddÚdxÚdyÚdzÚj0Új1ÚjnÚonÚy0Úy1ÚynÚNaNÚabsrp   ÚargÚchiÚcosÚdxxÚdxyÚdxzÚdyxÚdyyÚdyzÚdzxÚdzyÚdzzÚerfÚexpÚlogrr   rs   ÚpowÚsetÚsinÚtanÚBFGSÚNLCGÚPostÚReadÚRecvÚSentÚWaitÚacosÚasinÚatanÚatofÚatoiÚceilÚconjÚcoshÚcubeÚdfftÚdistÚerfcÚexecÚexitÚfdimÚfmaxÚfminÚfmodÚimagÚjumpÚmeanÚplotÚrintÚsignÚsinhÚsortÚsqrtÚswapÚtanhÚtetgÚIrecvÚIsendÚWriteÚacoshÚasinhÚatan2ÚatanhÚclockÚcmaesÚfloorÚint1dÚint2dÚint3dÚisInfÚisNaNÚlog10ÚlrintÚmeditÚmmg3dÚpolarÚroundÚseekgÚtellgÚtruncÚassertÚchangeÚdiffnpÚlgammaÚlroundÚmshmetÚrandomÚsquareÚsystemÚtgammaÚconvectÚdiffposÚgetARGVÚgetlineÚgslsfCiÚgslsfSiÚinvdiffÚisolineÚmpiRankÚmpiSizeÚmpiWaitÚsavesolÚsavevtkÚsignbitÚsrandomÚAffineCGÚLinearCGÚcopysignÚfreeyamsÚgmshloadÚgslsfChiÚgslsfShiÚgslsfcosÚgslsferfÚgslsfetaÚgslsfexpÚgslsflogÚgslsfpsiÚgslsfsinÚmovemeshÚmpiWtickÚmpiWtimeÚrandinitÚreadmeshÚsavemeshÚ	adaptmeshÚ	broadcastÚ	buildmeshÚ	dimKrylovÚ	dumptableÚ	emptymeshÚ	gmshload3Ú	gslsfbetaÚ	gslsferfQÚ	gslsferfZÚ	gslsferfcÚ	gslsffactÚ	gslsfpochÚ	gslsfpsi1Ú	gslsfpsinÚ	gslsfsincÚ	gslsfzetaÚ	invdiffnpÚ	mpiGatherÚ	mpiReduceÚ	processorÚ	randint31Ú	randint32Ú	randreal1Ú	randreal2Ú	randreal3Ú	randres53Ú	readmesh3Ú	splitCommÚ	splitmeshÚ
EigenValueÚ
gslranbetaÚ
gslranflatÚ
gslranlevyÚ
gslsfdilogÚ
gslsfexpm1Ú
gslsfgammaÚ
gslsfhypotÚ
gslsfhzetaÚ
invdiffposÚ
movemesh23Ú
mpiBarrierÚ
mpiGathervÚ
mpiScatterÚ
mpiWaitAnyÚ
projectionÚ
srandomdevÚAffineGMRESÚLinearGMRESÚbuildlayersÚgslcdfbetaPÚgslcdfbetaQÚgslcdfflatPÚgslcdfflatQÚgslranchisqÚgslranfdistÚgslrangammaÚgslrantdistÚgslsfairyAiÚgslsfairyBiÚgslsfchooseÚgslsfdawsonÚgslsfdebye1Úgslsfdebye2Úgslsfdebye3Úgslsfdebye4Úgslsfdebye5Úgslsfdebye6ÚgslsfetaintÚgslsfexprelÚgslsfhazardÚgslsflnbetaÚgslsflncoshÚgslsflnfactÚgslsflnpochÚgslsflnsinhÚgslsflogabsÚgslsfpowintÚgslsfpsiintÚgslsfzetam1ÚintalledgesÚintallfacesÚinterpolateÚmpiAlltoallÚmpiScattervÚtetgtransfoÚtriangulateÚgslcdfchisqPÚgslcdfchisqQÚgslcdffdistPÚgslcdffdistQÚgslcdfgammaPÚgslcdfgammaQÚgslcdftdistPÚgslcdftdistQÚgslrancauchyÚgslranerlangÚgslranexppowÚgslranlandauÚgslranparetoÚgslsfatanintÚgslsfbetaincÚgslsfclausenÚgslsfellintEÚgslsfellintFÚgslsfexpint3ÚgslsfexpmultÚgslsfexprel2ÚgslsfexprelnÚgslsfhypergUÚgslsflngammaÚgslsflogerfcÚgslsfpochrelÚgslsfpsi1intÚgslsfpsi1piyÚgslsfzetaintÚmpiAllReduceÚmpiAllgatherÚmpiAlltoallvÚcheckmovemeshÚgslcdfcauchyPÚgslcdfcauchyQÚgslcdfexppowPÚgslcdfexppowQÚgslcdfparetoPÚgslcdfparetoQÚgslcdfpascalPÚgslcdfpascalQÚgslranbetapdfÚgslranflatpdfÚgslrangammamtÚgslrangumbel1Úgslrangumbel2ÚgslranlaplaceÚgslranweibullÚgslsfbesselI0ÚgslsfbesselI1ÚgslsfbesselInÚgslsfbesselJ0ÚgslsfbesselJ1ÚgslsfbesselJnÚgslsfbesselK0ÚgslsfbesselK1ÚgslsfbesselKnÚgslsfbesselY0ÚgslsfbesselY1ÚgslsfbesselYnÚgslsfbesselj0Úgslsfbesselj1Úgslsfbesselj2ÚgslsfbesseljlÚgslsfbessely0Úgslsfbessely1Úgslsfbessely2ÚgslsfbesselylÚgslsfellintRCÚgslsfexpintE1ÚgslsfexpintE2ÚgslsfexpintEiÚgslsfexpintEnÚgslsfgammaincÚgslsfgammainvÚgslsflnchooseÚgslsfmultiplyÚmpiAllgathervÚgslcdfbetaPinvÚgslcdfbetaQinvÚgslcdfflatPinvÚgslcdfflatQinvÚgslcdfgumbel1PÚgslcdfgumbel1QÚgslcdfgumbel2PÚgslcdfgumbel2QÚgslcdflaplacePÚgslcdflaplaceQÚgslcdfpoissonPÚgslcdfpoissonQÚgslcdfweibullPÚgslcdfweibullQÚgslinterpakimaÚgslranchisqpdfÚgslranfdistpdfÚgslrangammaintÚgslrangammapdfÚgslrangaussianÚgslranlogisticÚgslranrayleighÚgslrantdistpdfÚgslsfbesselInuÚgslsfbesselJnuÚgslsfbesselKnuÚgslsfbesselYnuÚgslsfconicalP0ÚgslsfconicalP1ÚgslsfgammaincPÚgslsfgammaincQÚgslsfgammastarÚgslsfhyperg0F1Úgslsfhyperg1F1Úgslsfhyperg2F0Úgslsflaguerre1Úgslsflaguerre2Úgslsflaguerre3ÚgslsflaguerrenÚgslsflambertW0Úgslsflog1plusxÚgslsfzetam1intÚprocessorblockÚtetgconvexhullÚStringificationÚgslcdfbinomialPÚgslcdfbinomialQÚgslcdfchisqPinvÚgslcdfchisqQinvÚgslcdffdistPinvÚgslcdffdistQinvÚgslcdfgammaPinvÚgslcdfgammaQinvÚgslcdfgaussianPÚgslcdfgaussianQÚgslcdflogisticPÚgslcdflogisticQÚgslcdfrayleighPÚgslcdfrayleighQÚgslcdftdistPinvÚgslcdftdistQinvÚgslinterplinearÚgslrancauchypdfÚgslranerlangpdfÚgslranexppowpdfÚgslranlandaupdfÚgslranlognormalÚgslranparetopdfÚgslranpascalpdfÚgslranugaussianÚgslsfairyzeroAiÚgslsfairyzeroBiÚgslsfdoublefactÚgslsfgegenpoly1Úgslsfgegenpoly2Úgslsfgegenpoly3ÚgslsfgegenpolynÚgslsfhypergUintÚgslsflambertWm1ÚgslsflegendreP1ÚgslsflegendreP2ÚgslsflegendreP3ÚgslsflegendrePlÚgslsflegendreQ0ÚgslsflegendreQ1ÚgslsflegendreQlÚgslsftransport2Úgslsftransport3Úgslsftransport4Úgslsftransport5ÚgslcdfcauchyPinvÚgslcdfcauchyQinvÚgslcdfgeometricPÚgslcdfgeometricQÚgslcdflognormalPÚgslcdflognormalQÚgslcdfparetoPinvÚgslcdfparetoQinvÚgslcdfugaussianPÚgslcdfugaussianQÚgslinterpcsplineÚgslinterpsteffenÚgslrangammaknuthÚgslrangumbel1pdfÚgslrangumbel2pdfÚgslranlaplacepdfÚgslranpoissonpdfÚgslranweibullpdfÚgslsfairyAiderivÚgslsfairyBiderivÚgslsfbessellnKnuÚgslsfellintDcompÚgslsfellintEcompÚgslsfellintKcompÚgslsfellintPcompÚgslsffermidirac0Úgslsffermidirac1Úgslsffermidirac2ÚgslsflegendreH3dÚgslsflegendrePlmÚgslsflog1plusxmxÚgslsftaylorcoeffÚcomplexEigenValueÚgslcdfgumbel1PinvÚgslcdfgumbel1QinvÚgslcdfgumbel2PinvÚgslcdfgumbel2QinvÚgslcdflaplacePinvÚgslcdflaplaceQinvÚgslcdfweibullPinvÚgslcdfweibullQinvÚgslranbinomialpdfÚgslranexponentialÚgslrangaussianpdfÚgslranlogisticpdfÚgslranrayleighpdfÚgslsfairyAiscaledÚgslsfairyBiscaledÚgslsfbesselzeroJ0ÚgslsfbesselzeroJ1ÚgslsfconicalPhalfÚgslsffermidiracm1ÚgslsfhydrogenicR1Úgslsfhyperg1F1intÚgslsflegendreH3d0ÚgslsflegendreH3d1ÚgslsflndoublefactÚgslsfsynchrotron1Úgslsfsynchrotron2ÚgslcdfexponentialPÚgslcdfexponentialQÚgslcdfgaussianPinvÚgslcdfgaussianQinvÚgslcdflogisticPinvÚgslcdflogisticQinvÚgslcdfrayleighPinvÚgslcdfrayleighQinvÚgslranbernoullipdfÚgslrangaussiantailÚgslrangeometricpdfÚgslranlognormalpdfÚgslranrayleightailÚgslranugaussianpdfÚgslsfbesselzeroJnuÚgslsfconicalPmhalfÚgslsffermidiracintÚtetgreconstructionÚgslcdflognormalPinvÚgslcdflognormalQinvÚgslcdfugaussianPinvÚgslcdfugaussianQinvÚgslinterppolynomialÚgslranugaussiantailÚgslsfbesselI0scaledÚgslsfbesselI1scaledÚgslsfbesselInscaledÚgslsfbesselK0scaledÚgslsfbesselK1scaledÚgslsfbesselKnscaledÚgslsfbesseli0scaledÚgslsfbesseli1scaledÚgslsfbesseli2scaledÚgslsfbesselilscaledÚgslsfbesselk0scaledÚgslsfbesselk1scaledÚgslsfbesselk2scaledÚgslsfbesselklscaledÚgslsfconicalPcylregÚgslsfconicalPsphregÚgslsfexpintE1scaledÚgslsfexpintE2scaledÚgslsfexpintEiscaledÚgslsfexpintEnscaledÚgslsffermidirachalfÚgslsffermidiracinc0ÚgslsflegendresphPlmÚgslranexponentialpdfÚgslranlogarithmicpdfÚgslsfairyzeroAiderivÚgslsfairyzeroBiderivÚgslsfbesselInuscaledÚgslsfbesselKnuscaledÚgslsffermidirac3halfÚgslsffermidiracmhalfÚgslcdfexponentialPinvÚgslcdfexponentialQinvÚgslrangaussiantailpdfÚgslranrayleightailpdfÚgslsfanglerestrictposÚgslinterpakimaperiodicÚgslrangaussianzigguratÚgslranugaussiantailpdfÚgslsfairyAiderivscaledÚgslsfairyBiderivscaledÚgslsfanglerestrictsymmÚgslsflegendrearraysizeÚgslcdfnegativebinomialPÚgslcdfnegativebinomialQÚgslinterpcsplineperiodicÚgslrangaussianratiomethodÚgslrannegativebinomialpdfÚgslranugaussianratiomethod>�   ÚAÚBÚtÚA1ÚB1ÚbbÚbwÚopÚpsÚbinÚcmmÚdimÚepsÚerrÚhsvÚisoÚmemÚncvÚnevÚqfVÚqfeÚqftÚsymÚtgvÚtolÚU2VcÚcoefÚerrgÚfileÚfillÚgreyÚhmaxÚhminÚinitÚmodeÚnbvxÚprevÚsaveÚstopr  ÚvepsÚvisoÚwaitÚanisoÚcloseÚflagsr�   ÚmaxitÚnbisoÚomegaÚorderÚpowerÚratioÚsigmaÚsplitÚvalueÚwhichÚwidthÚcutoffÚflabelÚinsideÚivalueÚmemoryÚmetricÚnbiterÚoptionÚpreconÚrefnumÚreftetÚreftrir¥   ÚrenumvÚsolverÚswitchÚvarrowÚvectorÚzboundÚdistmaxÚdparamsÚfacetclÚfregionÚinquireÚlabelupÚlparamsÚmeditffÚnbarrowÚnbregulÚoptionsÚptmergeÚqforderÚsparamsÚtransfoÚIsMetricÚabserrorÚabsoluteÚbeginendÚboundaryÚdatanameÚdoptionsÚfloatsolÚholelistÚlabelmidÚlevelsetÚloptionsÚnbjacobyÚnbsmoothÚoptimizeÚperiodicÚsplitin2ÚstrategyÚthetamaxÚtolpivotÚ	facemergeÚ	factorizeÚ	floatmeshÚ	gradationÚ	labeldownÚ	maxsubdivÚ	nbofholesÚ	rawvectorÚ	reffaceupÚ	rescalingÚ	smoothingÚ
composanteÚ
reffacelowÚ
reffacemidÚ
regionlistÚ
ridgeangleÚWindowIndexÚaspectratioÚfixedborderÚnboffacetclÚnbofregionsÚorientationÚsplitpbedgeÚtolpivotsymÚdatafilenameÚdisplacementÚsizeofvolumeÚnormalizationÚwithsurfacemeshÚkeepbackverticesÚnomeshgenerationÚ
fixeborder>   ÚasmÚdivÚgradÚthisÚusingÚdoubleÚtypeidÚalignofÚmutableÚdecltypeÚnoexceptÚrestrictÚtemplateÚtypenameÚ	constexprÚ	namespaceÚthread_localÚstatic_assertc              #   óx  K  — t        j                  | ||«      D �]  \  }}}|| j                  v r|t        |f–— Œ"|| j                  v r|t
        j                  |f–— ŒF|| j                  v r|t        j                  |f–— Œj|| j                  v r|t        j                  |f–— ŒŽ|| j                  v r|t
        j                  |f–— Œ²|| j                  v r|t        j                   |f–— ŒÖ|| j"                  v r|t
        j$                  |f–— Œú|| j&                  v r|t        |f–— �Œ|||f–— �Œ y ­w)N)r   Úget_tokens_unprocessedÚ	operatorsr   Útypesr   ÚTypeÚfespacesr   ÚClassÚpreprocessorr   ÚPreprocÚkeywordsÚReservedÚ	functionsÚFunctionÚ
parametersÚPseudoÚsuppress_highlight)ÚselfÚtextÚstackÚindexÚtokenr  s         úf/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/pygments/lexers/freefem.pyr}  z#FreeFemLexer.get_tokens_unprocessedj  s  è ø€ Ü#+×#BÑ#BÀ4ÈÈu×#UÑˆE�5˜%Ø˜Ÿ™Ñ&ØœX uÐ,Ó,Ø˜$Ÿ*™*Ñ$ØœWŸ\™\¨5Ð0Ó0Ø˜$Ÿ-™-Ñ'ØœTŸZ™Z¨Ð.Ó.Ø˜$×+Ñ+Ñ+ØœWŸ_™_¨eÐ3Ó3Ø˜$Ÿ-™-Ñ'ØœW×-Ñ-¨uÐ4Ó4Ø˜$Ÿ.™.Ñ(ØœTŸ]™]¨EÐ1Ó1Ø˜$Ÿ/™/Ñ)ØœWŸ^™^¨UÐ2Ó2Ø˜$×1Ñ1Ñ1ØœT 5Ð(Ô(à˜U EÐ)Ô)ñ% $Vùs   ‚D8D:N))Úroot)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedr~  r  r�  rƒ  r…  r‡  r‰  Ú
deprecatedr‹  r}  © ó    r‘  r   r      s~   „ ñð €DØ
 €CØˆk€GØ�	€IØ!Ð"€IØ€Mò M€IòI€Eò#€Hò @€Lòq€HòhR€IòjP€Jðf �€JòÐô**rŸ  N)
r–  Úpygments.tokenr   r   r   r   Úpygments.lexers.c_cppr   Ú__all__r   rž  rŸ  r‘  Ú<module>r£     s+   ðñ÷ <Ó ;å *àÐ
€ôk*�8õ k*rŸ  