+
    IV-j‘(  ã                   ó’   € R t ^ RIt^ RIHtHtHtHtHtHt ^ RI	H
t
HtHtHtHtHtHtHtHt RR.t ! R R]4      t ! R R]4      tR# )z¿
pygments.lexers.fortran
~~~~~~~~~~~~~~~~~~~~~~~

Lexers for Fortran languages.

:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
N)Ú
RegexLexerÚbygroupsÚincludeÚwordsÚusingÚdefault)	ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚGenericÚFortranLexerÚFortranFixedLexerc                   ó®  € ] tR t^tRtRtRtRR.t. R"OtR.t	Rt
]P                  ]P                  ,          tRR	]P                   3R
]3]! R4      ]! R4      R]3]! R4      R]P(                  3.RR]! ]]P(                  ]4      3R]! ]]P(                  ]4      3]! R#RRR7      ]3]! R$RRR7      ]P0                  3R]3R]P4                  3R]3]! R%RRR7      ]P8                  3R]P8                  3R]P:                  3.
RR]P>                  3R]P@                  3.RR]!PD                  3R]!PF                  3R]!PF                  3R]!PF                  3./t$R t%R!# )&r   z
Lexer for FORTRAN 90 code.
ÚFortranúhttps://fortran-lang.org/ÚfortranÚf90ztext/x-fortranz0.10Úrootz^#.*\nz!.*\nÚstringsÚcorez[a-z][\w$]*Únumsz[\s]+z\b(DO)(\s+)(CONCURRENT)\bz\b(GO)(\s*)(TO)\bz\bz\s*\b)ÚprefixÚsuffixz$(\*\*|\*|\+|-|\/|<|>|<=|>=|==|\/=|=)z(::)z[()\[\],:&%;.]z\.(true|false)\.z+\.(eq|ne|lt|le|gt|ge|not|and|or|eqv|neqv)\.z"(\\[0-7]+|\\[^0-7]|[^"\\])*"z'(\\[0-7]+|\\[^0-7]|[^'\\])*'z\d+(?![.e])(_([1-9]|[a-z]\w*))?z0[+-]?\d*\.\d+([ed][-+]?\d+)?(_([1-9]|[a-z]\w*))?z0[+-]?\d+\.\d*([ed][-+]?\d+)?(_([1-9]|[a-z]\w*))?z0[+-]?\d+(\.\d*)?[ed][-+]?\d+(_([1-9]|[a-z]\w*))?© N)z*.f03z*.f90z*.F03z*.F90)ÚABSTRACTÚACCEPTÚALLÚALLSTOPÚALLOCATABLEÚALLOCATEÚARRAYÚASSIGNÚ	ASSOCIATEÚASYNCHRONOUSÚ	BACKSPACEÚBINDÚBLOCKÚ	BLOCKDATAÚBYTEÚCALLÚCASEÚCLASSÚCLOSEÚCODIMENSIONÚCOMMONÚ
CONTIGUOUSÚCONTAINSÚCONTINUEÚCRITICALÚCYCLEÚDATAÚ
DEALLOCATEÚDECODEÚDEFERREDÚ	DIMENSIONÚDOÚ	ELEMENTALÚELSEÚELSEIFÚENCODEÚENDÚENDASSOCIATEÚENDBLOCKÚENDDOÚENDENUMÚ	ENDFORALLÚENDFUNCTIONÚENDIFÚENDINTERFACEÚ	ENDMODULEÚ
ENDPROGRAMÚ	ENDSELECTÚENDSUBMODULEÚENDSUBROUTINEÚENDTYPEÚENDWHEREÚENTRYÚENUMÚ
ENUMERATORÚEQUIVALENCEz
ERROR STOPÚEXITÚEXTENDSÚEXTERNALÚ	EXTRINSICÚFILEÚFINALÚFORALLÚFORMATÚFUNCTIONÚGENERICÚIFÚIMAGESÚIMPLICITÚIMPORTÚIMPUREÚINCLUDEÚINQUIREÚINTENTÚ	INTERFACEÚ	INTRINSICÚISÚLOCKÚMEMORYÚMODULEÚNAMELISTÚNULLIFYÚNONEÚNON_INTRINSICÚNON_OVERRIDABLEÚNOPASSÚONLYÚOPENÚOPTIONALÚOPTIONSÚ	PARAMETERÚPASSÚPAUSEÚPOINTERÚPRINTÚPRIVATEÚPROGRAMÚ	PROCEDUREÚ	PROTECTEDÚPUBLICÚPUREÚREADÚ	RECURSIVEÚRESULTÚRETURNÚREWINDÚSAVEÚSELECTÚSEQUENCEÚSTOPÚ	SUBMODULEÚ
SUBROUTINEÚSYNCÚSYNCALLÚ
SYNCIMAGESÚ
SYNCMEMORYÚTARGETÚTHENÚTYPEÚUNLOCKÚUSEÚVALUEÚVOLATILEÚWHEREÚWRITEÚWHILE)%Ú	CHARACTERÚCOMPLEXzDOUBLE PRECISIONzDOUBLE COMPLEXÚINTEGERÚLOGICALÚREALÚC_INTÚC_SHORTÚC_LONGÚC_LONG_LONGÚC_SIGNED_CHARÚC_SIZE_TÚC_INT8_TÚ	C_INT16_TÚ	C_INT32_TÚ	C_INT64_TÚC_INT_LEAST8_TÚC_INT_LEAST16_TÚC_INT_LEAST32_TÚC_INT_LEAST64_TÚC_INT_FAST8_TÚC_INT_FAST16_TÚC_INT_FAST32_TÚC_INT_FAST64_TÚ
C_INTMAX_TÚ
C_INTPTR_TÚC_FLOATÚC_DOUBLEÚC_LONG_DOUBLEÚC_FLOAT_COMPLEXÚC_DOUBLE_COMPLEXÚC_LONG_DOUBLE_COMPLEXÚC_BOOLÚC_CHARÚC_PTRÚC_FUNPTR(1  ÚAbortÚAbsÚAccessÚACharÚACosÚACosHÚAdjustLÚAdjustRÚAImagÚAIntÚAlarmÚAllÚ	AllocatedÚALogÚAMaxÚAMinÚAModÚAndÚANIntÚAnyÚASinÚASinHÚ
AssociatedÚATanÚATanHÚAtomic_DefineÚ
Atomic_RefÚBesJÚBesJNÚ	Bessel_J0Ú	Bessel_J1Ú	Bessel_JNÚ	Bessel_Y0Ú	Bessel_Y1Ú	Bessel_YNÚBesYÚBesYNÚBGEÚBGTÚBLEÚBLTÚBit_SizeÚBTestÚCAbsÚCCosÚCeilingÚCExpÚCharÚChDirÚChModÚCLogÚCmplxÚCommand_Argument_CountÚComplexÚConjgÚCosÚCosHÚCountÚCPU_TimeÚCShiftÚCSinÚCSqRtÚCTimeÚC_LocÚC_AssociatedÚ
C_Null_PtrÚC_Null_FunptrÚC_F_PointerÚC_F_ProcPointerÚC_Null_CharÚC_AlertÚC_BackspaceÚC_Form_FeedÚC_FunLocÚC_SizeofÚ
C_New_LineÚC_Carriage_ReturnÚC_Horizontal_TabÚC_Vertical_TabÚDAbsÚDACosÚDASinÚDATanÚDate_and_TimeÚDbesJÚDbesJNÚDbesYÚDbesYNÚDbleÚDCosÚDCosHÚDDiMÚDErFÚDErFCÚDExpÚDigitsÚDiMÚDIntÚDLogÚDMaxÚDMinÚDModÚDNIntÚDot_ProductÚDProdÚDSignÚDSinHÚDShiftLÚDShiftRÚDSinÚDSqRtÚDTanHÚDTanÚDTimeÚEOShiftÚEpsilonÚErFÚErFCÚErFC_ScaledÚETimeÚExecute_Command_LineÚExitÚExpÚExponentÚExtends_Type_OfÚFDateÚFGetÚFGetCÚFindLocÚFloatÚFloorÚFlushÚFNumÚFPutCÚFPutÚFractionÚFSeekÚFStatÚFTellÚGammaÚGErrorÚGetArgÚGet_CommandÚGet_Command_ArgumentÚGet_Environment_VariableÚGetCWDÚGetEnvÚGetGIdÚGetLogÚGetPIdÚGetUIdÚGMTimeÚHostNmÚHugeÚHypotÚIAbsÚIACharÚIAllÚIAndÚIAnyÚIArgCÚIBClrÚIBitsÚIBSetÚICharÚIDateÚIDiMÚIDIntÚIDNIntÚIEOrÚIErrNoÚIFixÚImagÚImagPartÚImage_IndexÚIndexÚIntÚIOrÚIParityÚIRandÚIsaTtyÚIShftÚIShftCÚISignÚIso_C_BindingÚIs_ContiguousÚIs_Iostat_EndÚIs_Iostat_EorÚITimeÚKillÚKindÚLBoundÚLCoBoundÚLenÚLen_TrimÚLGeÚLGtÚLinkÚLLeÚLLtÚLnBlnkÚLocÚLogÚ	Log_GammaÚLogicalÚLongÚLShiftÚLStatÚLTimeÚMaskLÚMaskRÚMatMulÚMaxÚMaxExponentÚMaxLocÚMaxValÚMClockÚMergeÚ
Merge_BitsÚ
Move_AllocÚMinÚMinExponentÚMinLocÚMinValÚModÚModuloÚMvBitsÚNearestÚNew_LineÚNIntÚNorm2ÚNotÚNullÚ
Num_ImagesÚOrÚPackÚParityÚPErrorÚ	PrecisionÚPresentÚProductÚRadixÚRandÚRandom_NumberÚRandom_SeedÚRangeÚRealÚRealPartÚRenameÚRepeatÚReshapeÚ	RRSpacingÚRShiftÚSame_Type_AsÚScaleÚScanÚSecondÚSelected_Char_KindÚSelected_Int_KindÚSelected_Real_KindÚSet_ExponentÚShapeÚShiftAÚShiftLÚShiftRÚShortÚSignÚSignalÚSinHÚSinÚSleepÚSnglÚSpacingÚSpreadÚSqRtÚSRandÚStatÚStorage_SizeÚSumÚSymLnkÚSystemÚSystem_ClockÚTanÚTanHÚTimeÚ
This_ImageÚTinyÚTrailZÚTransferÚ	TransposeÚTrimÚTtyNamÚUBoundÚUCoBoundÚUMaskÚUnlinkÚUnpackÚVerifyÚXOrÚZAbsÚZCosÚZExpÚZLogÚZSinÚZSqRt)&Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedÚreÚ
IGNORECASEÚ	MULTILINEÚflagsr	   ÚPreprocr   r   r   Ú
Whitespacer   r   r   ÚTyper
   ÚDeclarationr   ÚBuiltinÚWordr   ÚDoubleÚSingler   ÚIntegerrA  ÚtokensÚ__static_attributes__r   ó    Úh/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pygments/lexers/fortran.pyr   r      sÏ  † ñð €DØ
%€CØ˜%Ð €GÚ4€IØ!Ð"€IØ€MØ�M‰M˜BŸL™LÕ(€Eð 	Ø˜Ÿ™Ð(Ø�wÐÙ�IÓÙ�F‹OØ˜TÐ"Ù�F‹OØ�t—‘Ð'ð
ð 	ð *©8°G¸T¿_¹_ÈgÓ+VÐWØ!¡8¨G°T·_±_ÀgÓ#NÐOáð 7ð* @EÈXô+Wð, ð-ñ2 ð Rð  ¨ô	2ð �\‰\ð
ð 5°hÐ?à�g×)Ñ)Ð*à Ð,áð 2)ðd 27¸xôe2Iðf �\‰\ðg3ðl ! $§,¡,Ð/à;¸X¿]¹]ÐKðUk
ðZ 	Ø-¨v¯}©}Ð=Ø-¨v¯}©}Ð=ð
ð
 	Ø/°·±Ð@Ø@À&Ç,Á,ÐOØ@À&Ç,Á,ÐOØ@À&Ç,Á,ÐOð	
ðyB„Fr  c                   óT  a € ] tR t^¬t o RtRtR.tRR.tRtRt	]
P                  tRR	 ltR
R]3R]P                  3R]3R]P"                  R3R]! ]4      3.RR]R3R]R3R]P,                  R3.RR]! ]]]P0                  4      R
3R]! ]]P0                  4      R
3]! R
4      ./tRtV tR# )r   z!
Lexer for fixed format Fortran.
ÚFortranFixedÚfortranfixedz*.fz*.Fr   z2.1Nc              #  óÊ   "  € \        4       pVP                  ^ 4      R,           pVP                  V4       F'  w  rVpVP                  RR4      pVR8w  g   K!  WVV3x € K)  	  R# 5i)z8Lex a line just as free form fortran without line break.Ú
Ú N)r   ÚgroupÚget_tokens_unprocessedÚreplace)ÚselfÚmatchÚctxÚlexerÚtextÚindexÚtokenÚvalues   &&&     r  Ú_lex_fortranÚFortranFixedLexer._lex_fortran¸   s[   é € ä“ˆØ�{‰{˜1‹~ Õ$ˆØ#(×#?Ñ#?ÀÖ#EÑˆE˜%Ø—M‘M $¨Ó+ˆEØ˜Ž{Ø EÐ)Ô)ó $Fùs   ‚AA#ÁA#r   z[C*].*\nz#.*\nz {0,4}!.*\nz(.{5})z	cont-charz.*\nÚ ÚcodeÚ0Ú.z(.{66})(.*)(\n)z(.*)(\n)r   )N)rñ  rò  ró  rô  rõ  rö  rø  rù  r÷  rû  rü  rý  rÿ  r  r	   r   r   ÚLabelr   r   r   r   ÚStrongr   r  r   r	  r
  Ú__classdictcell__)Ú__classdict__s   @r  r   r   ¬   sï   ø‡ € ñð €DØÐ€GØ˜�€IØ
%€CØ€Mà�M‰M€Eô*ð 	Ø˜'Ð"Ø�w—‘Ð'Ø˜WÐ%Ø˜Ÿ
™
 KÐ0Ø‘e˜LÓ)Ð*ð
ð 	Ø�$˜ÐØ�'˜6Ð"Ø�'—.‘. &Ð)ð
ð
 	ØÙ�l G¨T¯_©_Ó=¸vðGà™( <°·±ÓAÀ6ÐJÙ�F‹Oð	
ð†Fr  )rõ  rü  Úpygments.lexerr   r   r   r   r   r   Úpygments.tokenr   r	   r
   r   r   r   r   r   r   Ú__all__r   r   r   r  r  Ú<module>r+     sL   ðñó 
ç O× O÷!÷ !õ !ð Ð.Ð
/€ôU�:ô Uôp(˜
ö (r  