U
    luf                     @   sZ   d Z ddl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 dgZG dd deZdS )z
    pygments.lexers.teal
    ~~~~~~~~~~~~~~~~~~~~

    Lexer for TEAL.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupsincludewords)CommentNameNumberStringTextKeyword
Whitespace	TealLexerc                M   @   s  e Zd ZdZdZdZdgZdgZeddddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPhLdQdRZ	dSZ
dTZedUdVe ejfdWe
 dX dY dZ eejejfe
ejd[fgedUd\ed]fd^eejejfd_efd`ejfdaejfe	efe
ejfeedbfg	dcejfddefd\edbfgdeefdfejfgdgZdhS )ir   z
    For the Transaction Execution Approval Language (TEAL)

    For more information about the grammar, see:
    https://github.com/algorand/go-algorand/blob/master/data/transactions/logic/assembler.go

    .. versionadded:: 2.9
    ZtealzAhttps://developer.algorand.org/docs/reference/teal/specification/z*.tealZSenderZFeeZ
FirstValidZFirstValidTimeZ	LastValidZNoteZLeaseZReceiverZAmountZCloseRemainderToZVotePKZSelectionPKZ	VoteFirstZVoteLastZVoteKeyDilutionTypeZTypeEnumZ	XferAssetZAssetAmountZAssetSenderZAssetReceiverZAssetCloseToZ
GroupIndexZTxIDZApplicationIDZOnCompletionZApplicationArgsZ
NumAppArgsZAccountsZNumAccountsZApprovalProgramZClearStateProgramZRekeyToZConfigAssetZConfigAssetTotalZConfigAssetDecimalsZConfigAssetDefaultFrozenZConfigAssetUnitNameZConfigAssetNameZConfigAssetURLZConfigAssetMetadataHashZConfigAssetManagerZConfigAssetReserveZConfigAssetFreezeZConfigAssetClawbackZFreezeAssetZFreezeAssetAccountZFreezeAssetFrozenZNoOpZOptInZCloseOutZ
ClearStateZUpdateApplicationZDeleteApplicationZ	MinTxnFeeZ
MinBalanceZ
MaxTxnLifeZZeroAddressZ	GroupSizeZLogicSigVersionZRoundZLatestTimestampZCurrentApplicationIDZAssetBalanceZAssetFrozenZ
AssetTotalZAssetDecimalsZAssetDefaultFrozenZAssetUnitNameZ	AssetNameZAssetURLZAssetMetadataHashZAssetManagerZAssetReserveZAssetFreezeZAssetClawbackz\b)suffixz[^ \t\n]+(?=\/\/)|[^ \t\n]+z\r?\n
whitespacez^#pragma .*(:)z([ 	].*)function-args"stringz-(b(?:ase)?(?:32|64) ?)(\(?[a-zA-Z0-9+/=]+\)?)z[A-Z2-7]{58}z0x[\da-fA-F]+z\d+z#popz\\(?:["nrt\\]|x\d\d)z
[^\\\"\n]+z[ \t]+z//[^\n]+)rootr   r   r   N) __name__
__module____qualname____doc__nameurlaliases	filenamesr   keywords
identifiernewliner   r   Z	Directiver   r   ZLabelSingleZFunctionr	   ZAffixZOtherr   ZHexZIntegerr   Z
Attributesr
   ZEscaper   tokens r%   r%   8/tmp/pip-unpacked-wheel-7eq1ciah/pygments/lexers/teal.pyr      s                                                           
N)r   Zpygments.lexerr   r   r   r   Zpygments.tokenr   r   r   r	   r
   r   r   __all__r   r%   r%   r%   r&   <module>   s   
$