# algopy.op

## Module Contents

[Section titled “Module Contents”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#module-contents)

### Classes

[Section titled “Classes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#classes)

| [`AcctParamsGet`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.AcctParamsGet) | X is field F from account A. Y is 1 if A owns positive algos, else 0<br>Native TEAL op: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get) |
| --- | --- |
| [`AppGlobal`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.AppGlobal) | Get or modify Global app state<br>Native TEAL ops: [`app_global_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_del), [`app_global_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get), [`app_global_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get_ex), [`app_global_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_put) |
| [`AppLocal`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.AppLocal) | Get or modify Local app state<br>Native TEAL ops: [`app_local_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_del), [`app_local_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get), [`app_local_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get_ex), [`app_local_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_put) |
| [`AppParamsGet`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.AppParamsGet) | X is field F from app A. Y is 1 if A exists, else 0 params: Txn.ForeignApps offset or an _available_ app id. Return: did\_exist flag (1 if the application existed and 0 otherwise), value.<br>Native TEAL op: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get) |
| [`AssetHoldingGet`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.AssetHoldingGet) | X is field F from account A’s holding of asset B. Y is 1 if A is opted into B, else 0 params: Txn.Accounts offset (or, since v4, an _available_ address), asset id (or, since v4, a Txn.ForeignAssets offset). Return: did\_exist flag (1 if the asset existed and 0 otherwise), value.<br>Native TEAL op: [`asset_holding_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_holding_get) |
| [`AssetParamsGet`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.AssetParamsGet) | X is field F from asset A. Y is 1 if A exists, else 0 params: Txn.ForeignAssets offset (or, since v4, an _available_ asset id. Return: did\_exist flag (1 if the asset existed and 0 otherwise), value.<br>Native TEAL op: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get) |
| [`Base64`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Base64) | Available values for the `base64` enum |
| [`Block`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Block) | field F of block A. Fail unless A falls between txn.LastValid-1002 and txn.FirstValid (exclusive)<br>Native TEAL op: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block) |
| [`Box`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Box) | Get or modify box state<br>Native TEAL ops: [`box_create`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_create), [`box_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_del), [`box_extract`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_extract), [`box_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_get), [`box_len`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_len), [`box_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_put), [`box_replace`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_replace), [`box_resize`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_resize), [`box_splice`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_splice) |
| [`EC`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC) | Available values for the `EC` enum |
| [`ECDSA`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA) | Available values for the `ECDSA` enum |
| [`EllipticCurve`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EllipticCurve) | Elliptic Curve functions<br>Native TEAL ops: [`ec_add`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_add), [`ec_map_to`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_map_to), [`ec_multi_scalar_mul`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_multi_scalar_mul), [`ec_pairing_check`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_pairing_check), [`ec_scalar_mul`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_scalar_mul), [`ec_subgroup_check`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_subgroup_check) |
| [`GITxn`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.GITxn) | Get values for inner transaction in the last group submitted<br>Native TEAL ops: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn), [`gitxnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxnas) |
| [`GTxn`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.GTxn) | Get values for transactions in the current group<br>Native TEAL ops: [`gtxns`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxns), [`gtxnsas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxnsas) |
| [`Global`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Global) | Get Global values<br>Native TEAL op: [`global`](https://dev.algorand.co/reference/algorand-teal/opcodes/#global) |
| [`ITxn`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ITxn) | Get values for the last inner transaction<br>Native TEAL ops: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn), [`itxnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxnas) |
| [`ITxnCreate`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ITxnCreate) | Create inner transactions<br>Native TEAL ops: [`itxn_begin`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_begin), [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field), [`itxn_next`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_next), [`itxn_submit`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_submit) |
| [`JsonRef`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.JsonRef) | key B’s value, of type R, from a [valid](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/) utf-8 encoded json object A _Warning_: Usage should be restricted to very rare use cases, as JSON decoding is expensive and quite limited. In addition, JSON objects are large and not optimized for size. Almost all smart contracts should use simpler and smaller methods (such as the [ABI](https://arc.algorand.foundation/ARCs/arc-0004). This opcode should only be used in cases where JSON is only available option, e.g. when a third-party only signs JSON.<br>Native TEAL op: [`json_ref`](https://dev.algorand.co/reference/algorand-teal/opcodes/#json_ref) |
| [`MiMCConfigurations`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.MiMCConfigurations) | Available values for the `Mimc Configurations` enum |
| [`Scratch`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Scratch) | Load or store scratch values<br>Native TEAL ops: [`loads`](https://dev.algorand.co/reference/algorand-teal/opcodes/#loads), [`stores`](https://dev.algorand.co/reference/algorand-teal/opcodes/#stores) |
| [`Txn`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Txn) | Get values for the current executing transaction<br>Native TEAL ops: [`txn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#txn), [`txnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#txnas) |
| [`VoterParamsGet`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.VoterParamsGet) | X is field F from online account A as of the balance round: 320 rounds before the current round. Y is 1 if A had positive algos online in the agreement round, else Y is 0 and X is a type specific zero-value<br>Native TEAL op: [`voter_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#voter_params_get) |
| [`VrfVerify`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.VrfVerify) | Available values for the `vrf_verify` enum |

### Functions

[Section titled “Functions”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#functions)

\| [`addw`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.addw) \| A plus B as a 128-bit result. X is the carry-bit, Y is the low-order 64 bits. \|
\| \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \| \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \| \-\-\- \| \-\-\-\-\-\-\-\-\-\-\-\- \| \-\-\- \| \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \|
\| [`app_opted_in`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.app_opted_in) \| 1 if account A is opted in to application B, else 0

params: Txn.Accounts offset (or, since v4, an _available_ account address), _available_ application id (or, since v4, a Txn.ForeignApps offset). Return: 1 if opted in and 0 otherwise. \|
\| [`arg`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.arg) \| Ath LogicSig argument \|
\| [`balance`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.balance) \| balance for account A, in microalgos. The balance is observed after the effects of previous transactions in the group, and after the fee for the current transaction is deducted. Changes caused by inner transactions are observable immediately following `itxn_submit`

params: Txn.Accounts offset (or, since v4, an _available_ account address), _available_ application id (or, since v4, a Txn.ForeignApps offset). Return: value. \|
\| [`base64_decode`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.base64_decode) \| decode A which was base64-encoded using _encoding_ E. Fail if A is not base64 encoded with encoding E

_Warning_: Usage should be restricted to very rare use cases. In almost all cases, smart contracts should directly handle non-encoded byte-strings. This opcode should only be used in cases where base64 is the only available option, e.g. interoperability with a third-party that only signs base64 strings. \|
\| [`bitlen`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.bitlen) \| The highest set bit in A. If A is a byte-array, it is interpreted as a big-endian unsigned integer. bitlen of 0 is 0, bitlen of 8 is 4

bitlen interprets arrays as big-endian integers, unlike setbit/getbit \|
\| [`bsqrt`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.bsqrt) \| The largest integer I such that I^2 <= A. A and I are interpreted as big-endian unsigned integers \|
\| [`btoi`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.btoi) \| converts big-endian byte array A to uint64. Fails if len(A) > 8. Padded by leading 0s if len(A) < 8.

`btoi` fails if the input is longer than 8 bytes. \|
\| [`bzero`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.bzero) \| zero filled byte-array of length A \|
\| [`concat`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.concat) \| join A and B

`concat` fails if the result would be greater than 4096 bytes. \|
\| [`divmodw`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.divmodw) \| W,X = (A,B / C,D); Y,Z = (A,B modulo C,D)

The notation J,K indicates that two uint64 values J and K are interpreted as a uint128 value, with J as the high uint64 and K the low. \|
\| [`divw`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.divw) \| A,B / C. Fail if C == 0 or if result overflows.

The notation A,B indicates that A and B are interpreted as a uint128 value, with A as the high uint64 and B the low. \|
\| [`ecdsa_pk_decompress`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ecdsa_pk_decompress) \| decompress pubkey A into components X, Y

The 33 byte public key in a compressed form to be decompressed into X and Y (top) components. All values are big-endian encoded. \|
\| [`ecdsa_pk_recover`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ecdsa_pk_recover) \| for (data A, recovery id B, signature C, D) recover a public key

S (top) and R elements of a signature, recovery id and data (bottom) are expected on the stack and used to deriver a public key. All values are big-endian encoded. The signed data must be 32 bytes long. \|
\| [`ecdsa_verify`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ecdsa_verify) \| for (data A, signature B, C and pubkey D, E) verify the signature of the data against the pubkey => {0 or 1}

The 32 byte Y-component of a public key is the last element on the stack, preceded by X-component of a pubkey, preceded by S and R components of a signature, preceded by the data that is fifth element on the stack. All values are big-endian encoded. The signed data must be 32 bytes long, and signatures in lower-S form are only accepted. \|
\| [`ed25519verify`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ed25519verify) \| for (data A, signature B, pubkey C) verify the signature of (“ProgData” \| \| program\_hash \| \| data) against the pubkey => {0 or 1}

The 32 byte public key is the last element on the stack, preceded by the 64 byte signature at the second-to-last element on the stack, preceded by the data which was signed at the third-to-last element on the stack. \|
\| [`ed25519verify_bare`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ed25519verify_bare) \| for (data A, signature B, pubkey C) verify the signature of the data against the pubkey => {0 or 1} \|
\| [`err`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.err) \| Fail immediately. \|
\| [`exit`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.exit) \| use A as success value; end \|
\| [`exp`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.exp) \| A raised to the Bth power. Fail if A == B == 0 and on overflow \|
\| [`expw`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.expw) \| A raised to the Bth power as a 128-bit result in two uint64s. X is the high 64 bits, Y is the low. Fail if A == B == 0 or if the results exceeds 2^128-1 \|
\| [`extract`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.extract) \| A range of bytes from A starting at B up to but not including B+C. If B+C is larger than the array length, the program fails

`extract3` can be called using `extract` with no immediates. \|
\| [`extract_uint16`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.extract_uint16) \| A uint16 formed from a range of big-endian bytes from A starting at B up to but not including B+2. If B+2 is larger than the array length, the program fails \|
\| [`extract_uint32`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.extract_uint32) \| A uint32 formed from a range of big-endian bytes from A starting at B up to but not including B+4. If B+4 is larger than the array length, the program fails \|
\| [`extract_uint64`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.extract_uint64) \| A uint64 formed from a range of big-endian bytes from A starting at B up to but not including B+8. If B+8 is larger than the array length, the program fails \|
\| [`falcon_verify`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.falcon_verify) \| for (data A, compressed-format signature B, pubkey C) verify the signature of data against the pubkey => {0 or 1}

Min AVM version: 12 \|
\| [`gaid`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.gaid) \| ID of the asset or application created in the Ath transaction of the current group

`gaids` fails unless the requested transaction created an asset or application and A < GroupIndex. \|
\| [`getbit`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.getbit) \| Bth bit of (byte-array or integer) A. If B is greater than or equal to the bit length of the value (8\*byte length), the program fails

see explanation of bit ordering in setbit \|
\| [`getbyte`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.getbyte) \| Bth byte of A, as an integer. If B is greater than or equal to the array length, the program fails \|
\| [`gload_bytes`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.gload_bytes) \| Bth scratch space value of the Ath transaction in the current group \|
\| [`gload_uint64`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.gload_uint64) \| Bth scratch space value of the Ath transaction in the current group \|
\| [`itob`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.itob) \| converts uint64 A to big-endian byte array, always of length 8 \|
\| [`keccak256`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.keccak256) \| Keccak256 hash of value A, yields \[32\]byte \|
\| [`mimc`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.mimc) \| MiMC hash of scalars A, using curve and parameters specified by configuration C

A is a list of concatenated 32 byte big-endian unsigned integer scalars. Fail if A’s length is not a multiple of 32 or any element exceeds the curve modulus. \|
\| [`min_balance`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.min_balance) \| minimum required balance for account A, in microalgos. Required balance is affected by ASA, App, and Box usage. When creating or opting into an app, the minimum balance grows before the app code runs, therefore the increase is visible there. When deleting or closing out, the minimum balance decreases after the app executes. Changes caused by inner transactions or box usage are observable immediately following the opcode effecting the change.

params: Txn.Accounts offset (or, since v4, an _available_ account address), _available_ application id (or, since v4, a Txn.ForeignApps offset). Return: value. \|
\| [`mulw`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.mulw) \| A times B as a 128-bit result in two uint64s. X is the high 64 bits, Y is the low \|
\| [`online_stake`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.online_stake) \| the total online stake in the agreement round

Min AVM version: 11 \|
\| [`replace`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.replace) \| Copy of A with the bytes starting at B replaced by the bytes of C. Fails if B+len(C) exceeds len(A)

`replace3` can be called using `replace` with no immediates. \|
\| [`select_bytes`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.select_bytes) \| selects one of two values based on top-of-stack: B if C != 0, else A \|
\| [`select_uint64`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.select_uint64) \| selects one of two values based on top-of-stack: B if C != 0, else A \|
\| [`setbit_bytes`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.setbit_bytes) \| Copy of (byte-array or integer) A, with the Bth bit set to (0 or 1) C. If B is greater than or equal to the bit length of the value (8\*byte length), the program fails

When A is a uint64, index 0 is the least significant bit. Setting bit 3 to 1 on the integer 0 yields 8, or 2^3. When A is a byte array, index 0 is the leftmost bit of the leftmost byte. Setting bits 0 through 11 to 1 in a 4-byte-array of 0s yields the byte array 0xfff00000. Setting bit 3 to 1 on the 1-byte-array 0x00 yields the byte array 0x10. \|
\| [`setbit_uint64`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.setbit_uint64) \| Copy of (byte-array or integer) A, with the Bth bit set to (0 or 1) C. If B is greater than or equal to the bit length of the value (8\*byte length), the program fails

When A is a uint64, index 0 is the least significant bit. Setting bit 3 to 1 on the integer 0 yields 8, or 2^3. When A is a byte array, index 0 is the leftmost bit of the leftmost byte. Setting bits 0 through 11 to 1 in a 4-byte-array of 0s yields the byte array 0xfff00000. Setting bit 3 to 1 on the 1-byte-array 0x00 yields the byte array 0x10. \|
\| [`setbyte`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.setbyte) \| Copy of A with the Bth byte set to small integer (between 0..255) C. If B is greater than or equal to the array length, the program fails \|
\| [`sha256`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.sha256) \| SHA256 hash of value A, yields \[32\]byte \|
\| [`sha3_256`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.sha3_256) \| SHA3\_256 hash of value A, yields \[32\]byte \|
\| [`sha512_256`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.sha512_256) \| SHA512\_256 hash of value A, yields \[32\]byte \|
\| [`shl`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.shl) \| A times 2^B, modulo 2^64 \|
\| [`shr`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.shr) \| A divided by 2^B \|
\| [`sqrt`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.sqrt) \| The largest integer I such that I^2 <= A \|
\| [`substring`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.substring) \| A range of bytes from A starting at B up to but not including C. If C < B, or either is larger than the array length, the program fails \|
\| [`sumhash512`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.sumhash512) \| sumhash512 of value A, yields \[64\]byte

Min AVM version: 13 \|
\| [`vrf_verify`](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.vrf_verify) \| Verify the proof B of message A against pubkey C. Returns vrf output and verification flag.

`VrfAlgorand` is the VRF used in Algorand. It is ECVRF-ED25519-SHA512-Elligator2, specified in the IETF internet draft [draft-irtf-cfrg-vrf-03](https://datatracker.ietf.org/doc/draft-irtf-cfrg-vrf/03/). \|

### API

[Section titled “API”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#api)

#### _class_ algopy.op.AcctParamsGet

[Section titled “class algopy.op.AcctParamsGet”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopacctparamsget)

X is field F from account A. Y is 1 if A owns positive algos, else 0
Native TEAL op: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_auth\_addr

[Section titled “static acct\_auth\_addr”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_auth_addr)

\* _static_ acct\_auth\_addr(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Address the account is rekeyed to.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_balance

[Section titled “static acct\_balance”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_balance)

\* _static_ acct\_balance(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Account balance in microalgos

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_incentive\_eligible

[Section titled “static acct\_incentive\_eligible”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_incentive_eligible)

\* _static_ acct\_incentive\_eligible(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [bool](https://docs.python.org/3/library/functions.html#bool), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Min AVM version: 11

- **Returns tuple\[bool, bool\]:**
Has this account opted into block payouts

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_last\_heartbeat

[Section titled “static acct\_last\_heartbeat”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_last_heartbeat)

\* _static_ acct\_last\_heartbeat(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Min AVM version: 11

- **Returns tuple\[UInt64, bool\]:**
The round number of the last block this account sent a heartbeat.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_last\_proposed

[Section titled “static acct\_last\_proposed”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_last_proposed)

\* _static_ acct\_last\_proposed(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Min AVM version: 11

- **Returns tuple\[UInt64, bool\]:**
The round number of the last block this account proposed.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_min\_balance

[Section titled “static acct\_min\_balance”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_min_balance)

\* _static_ acct\_min\_balance(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Minimum required balance for account, in microalgos

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_apps\_created

[Section titled “static acct\_total\_apps\_created”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_apps_created)

\* _static_ acct\_total\_apps\_created(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The number of existing apps created by this account.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_apps\_opted\_in

[Section titled “static acct\_total\_apps\_opted\_in”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_apps_opted_in)

\* _static_ acct\_total\_apps\_opted\_in(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The number of apps this account is opted into.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_assets

[Section titled “static acct\_total\_assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_assets)

\* _static_ acct\_total\_assets(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The numbers of ASAs held by this account (including ASAs this account created).

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_assets\_created

[Section titled “static acct\_total\_assets\_created”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_assets_created)

\* _static_ acct\_total\_assets\_created(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The number of existing ASAs created by this account.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_box\_bytes

[Section titled “static acct\_total\_box\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_box_bytes)

\* _static_ acct\_total\_box\_bytes(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The total number of bytes used by this account’s app’s box keys and values.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_boxes

[Section titled “static acct\_total\_boxes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_boxes)

\* _static_ acct\_total\_boxes(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The number of existing boxes created by this account’s app.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_extra\_app\_pages

[Section titled “static acct\_total\_extra\_app\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_extra_app_pages)

\* _static_ acct\_total\_extra\_app\_pages(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The number of extra app code pages used by this account.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_num\_byte\_slice

[Section titled “static acct\_total\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_num_byte_slice)

\* _static_ acct\_total\_num\_byte\_slice(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The total number of byte array values allocated by this account in Global and Local States.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

##### _static_ acct\_total\_num\_uint

[Section titled “static acct\_total\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-acct_total_num_uint)

\* _static_ acct\_total\_num\_uint(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

The total number of uint64 values allocated by this account in Global and Local States.

Native TEAL opcode: [`acct_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#acct_params_get)

#### _class_ algopy.op.AppGlobal

[Section titled “class algopy.op.AppGlobal”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopappglobal)

Get or modify Global app state
Native TEAL ops: [`app_global_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_del), [`app_global_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get), [`app_global_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get_ex), [`app_global_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_put)

##### _static_ delete

[Section titled “static delete”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-delete)

\* _static_ delete(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

delete key A from the global state of the current application
params: state key.

Deleting a key which is already absent has no effect on the application global state. (In particular, it does _not_ cause the program to fail.)

Native TEAL opcode: [`app_global_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_del)

##### _static_ get\_bytes

[Section titled “static get\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_bytes)

\* _static_ get\_bytes(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

global state of the key A in the current application
params: state key. Return: value. The value is zero (of type uint64) if the key does not exist.

Native TEAL opcode: [`app_global_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get)

##### _static_ get\_ex\_bytes

[Section titled “static get\_ex\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_ex_bytes)

\* _static_ get\_ex\_bytes(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

X is the global state of application A, key B. Y is 1 if key existed, else 0
params: Txn.ForeignApps offset (or, since v4, an _available_ application id), state key. Return: did\_exist flag (top of the stack, 1 if the application and key existed and 0 otherwise), value. The value is zero (of type uint64) if the key does not exist.

Native TEAL opcode: [`app_global_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get_ex)

##### _static_ get\_ex\_uint64

[Section titled “static get\_ex\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_ex_uint64)

\* _static_ get\_ex\_uint64(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Native TEAL opcode: [`app_global_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get_ex)

##### _static_ get\_uint64

[Section titled “static get\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_uint64)

\* _static_ get\_uint64(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

global state of the key A in the current application
params: state key. Return: value. The value is zero (of type uint64) if the key does not exist.

Native TEAL opcode: [`app_global_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_get)

##### _static_ put

[Section titled “static put”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-put)

\* _static_ put(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

write B to key A in the global state of the current application

Native TEAL opcode: [`app_global_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_global_put)

#### _class_ algopy.op.AppLocal

[Section titled “class algopy.op.AppLocal”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopapplocal)

Get or modify Local app state
Native TEAL ops: [`app_local_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_del), [`app_local_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get), [`app_local_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get_ex), [`app_local_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_put)

##### _static_ delete

[Section titled “static delete”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-delete-1)

\* _static_ delete(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

delete key B from account A’s local state of the current application
params: Txn.Accounts offset (or, since v4, an _available_ account address), state key.

Deleting a key which is already absent has no effect on the application local state. (In particular, it does _not_ cause the program to fail.)

Native TEAL opcode: [`app_local_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_del)

##### _static_ get\_bytes

[Section titled “static get\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_bytes-1)

\* _static_ get\_bytes(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

local state of the key B in the current application in account A
params: Txn.Accounts offset (or, since v4, an _available_ account address), state key. Return: value. The value is zero (of type uint64) if the key does not exist.

Native TEAL opcode: [`app_local_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get)

##### _static_ get\_ex\_bytes

[Section titled “static get\_ex\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_ex_bytes-1)

\* _static_ get\_ex\_bytes(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

X is the local state of application B, key C in account A. Y is 1 if key existed, else 0
params: Txn.Accounts offset (or, since v4, an _available_ account address), _available_ application id (or, since v4, a Txn.ForeignApps offset), state key. Return: did\_exist flag (top of the stack, 1 if the application and key existed and 0 otherwise), value. The value is zero (of type uint64) if the key does not exist.

Native TEAL opcode: [`app_local_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get_ex)

##### _static_ get\_ex\_uint64

[Section titled “static get\_ex\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_ex_uint64-1)

\* _static_ get\_ex\_uint64(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Native TEAL opcode: [`app_local_get_ex`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get_ex)

##### _static_ get\_uint64

[Section titled “static get\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get_uint64-1)

\* _static_ get\_uint64(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Native TEAL opcode: [`app_local_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_get)

##### _static_ put

[Section titled “static put”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-put-1)

\* _static_ put(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

write C to key B in account A’s local state of the current application
params: Txn.Accounts offset (or, since v4, an _available_ account address), state key, value.

Native TEAL opcode: [`app_local_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_local_put)

#### _class_ algopy.op.AppParamsGet

[Section titled “class algopy.op.AppParamsGet”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopappparamsget)

X is field F from app A. Y is 1 if A exists, else 0 params: Txn.ForeignApps offset or an _available_ app id. Return: did\_exist flag (1 if the application existed and 0 otherwise), value.
Native TEAL op: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_address

[Section titled “static app\_address”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_address)

\* _static_ app\_address(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Address for which this application has authority

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_approval\_program

[Section titled “static app\_approval\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_approval_program)

\* _static_ app\_approval\_program(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Bytecode of Approval Program

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_clear\_state\_program

[Section titled “static app\_clear\_state\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_clear_state_program)

\* _static_ app\_clear\_state\_program(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Bytecode of Clear State Program

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_creator

[Section titled “static app\_creator”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_creator)

\* _static_ app\_creator(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Creator address

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_extra\_program\_pages

[Section titled “static app\_extra\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_extra_program_pages)

\* _static_ app\_extra\_program\_pages(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Number of Extra Program Pages of code space

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_global\_num\_byte\_slice

[Section titled “static app\_global\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_global_num_byte_slice)

\* _static_ app\_global\_num\_byte\_slice(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Number of byte array values allowed in Global State

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_global\_num\_uint

[Section titled “static app\_global\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_global_num_uint)

\* _static_ app\_global\_num\_uint(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Number of uint64 values allowed in Global State

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_local\_num\_byte\_slice

[Section titled “static app\_local\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_local_num_byte_slice)

\* _static_ app\_local\_num\_byte\_slice(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Number of byte array values allowed in Local State

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_local\_num\_uint

[Section titled “static app\_local\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_local_num_uint)

\* _static_ app\_local\_num\_uint(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Number of uint64 values allowed in Local State

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

##### _static_ app\_version

[Section titled “static app\_version”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-app_version)

\* _static_ app\_version(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Min AVM version: 12

- **Returns tuple\[UInt64, bool\]:**
Version of the app, incremented each time the approval or clear program changes

Native TEAL opcode: [`app_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_params_get)

#### _class_ algopy.op.AssetHoldingGet

[Section titled “class algopy.op.AssetHoldingGet”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopassetholdingget)

X is field F from account A’s holding of asset B. Y is 1 if A is opted into B, else 0 params: Txn.Accounts offset (or, since v4, an _available_ address), asset id (or, since v4, a Txn.ForeignAssets offset). Return: did\_exist flag (1 if the asset existed and 0 otherwise), value.
Native TEAL op: [`asset_holding_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_holding_get)

##### _static_ asset\_balance

[Section titled “static asset\_balance”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_balance)

\* _static_ asset\_balance(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Amount of the asset unit held by this account

Native TEAL opcode: [`asset_holding_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_holding_get)

##### _static_ asset\_frozen

[Section titled “static asset\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_frozen)

\* _static_ asset\_frozen(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [bool](https://docs.python.org/3/library/functions.html#bool), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Is the asset frozen or not

Native TEAL opcode: [`asset_holding_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_holding_get)

#### _class_ algopy.op.AssetParamsGet

[Section titled “class algopy.op.AssetParamsGet”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopassetparamsget)

X is field F from asset A. Y is 1 if A exists, else 0 params: Txn.ForeignAssets offset (or, since v4, an _available_ asset id. Return: did\_exist flag (1 if the asset existed and 0 otherwise), value.
Native TEAL op: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_clawback

[Section titled “static asset\_clawback”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_clawback)

\* _static_ asset\_clawback(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Clawback address

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_creator

[Section titled “static asset\_creator”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_creator)

\* _static_ asset\_creator(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Creator address

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_decimals

[Section titled “static asset\_decimals”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_decimals)

\* _static_ asset\_decimals(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

See AssetParams.Decimals

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_default\_frozen

[Section titled “static asset\_default\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_default_frozen)

\* _static_ asset\_default\_frozen(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [bool](https://docs.python.org/3/library/functions.html#bool), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Frozen by default or not

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_freeze

[Section titled “static asset\_freeze”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_freeze)

\* _static_ asset\_freeze(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Freeze address

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_manager

[Section titled “static asset\_manager”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_manager)

\* _static_ asset\_manager(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Manager address

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_metadata\_hash

[Section titled “static asset\_metadata\_hash”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_metadata_hash)

\* _static_ asset\_metadata\_hash(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Arbitrary commitment

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_name

[Section titled “static asset\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_name)

\* _static_ asset\_name(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Asset name

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_reserve

[Section titled “static asset\_reserve”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_reserve)

\* _static_ asset\_reserve(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Reserve address

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_total

[Section titled “static asset\_total”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_total)

\* _static_ asset\_total(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Total number of units of this asset

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_unit\_name

[Section titled “static asset\_unit\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_unit_name)

\* _static_ asset\_unit\_name(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Asset unit name

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

##### _static_ asset\_url

[Section titled “static asset\_url”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_url)

\* _static_ asset\_url(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

URL with additional info about the asset

Native TEAL opcode: [`asset_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#asset_params_get)

#### _class_ algopy.op.Base64

[Section titled “class algopy.op.Base64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopbase64)

Available values for the `base64` enum

##### Initialization

[Section titled “Initialization”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#initialization)

Initialize self. See help(type(self)) for accurate signature.

##### \_\_add\_\_

[Section titled “\_\_add\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__add__)

_\_\_add\_\_()_

Return self+value.

##### \_\_contains\_\_

[Section titled “\_\_contains\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__contains__)

_\_\_contains\_\_()_

Return bool(key in self).

##### \_\_delattr\_\_

[Section titled “\_\_delattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__delattr__)

_\_\_delattr\_\_()_

Implement delattr(self, name).

##### \_\_dir\_\_

[Section titled “\_\_dir\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__dir__)

_\_\_dir\_\_()_

Default dir() implementation.

##### \_\_eq\_\_

[Section titled “\_\_eq\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__eq__)

_\_\_eq\_\_()_

Return self==value.

##### \_\_format\_\_

[Section titled “\_\_format\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__format__)

_\_\_format\_\_()_

Return a formatted version of the string as described by format\_spec.

##### \_\_ge\_\_

[Section titled “\_\_ge\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ge__)

_\_\_ge\_\_()_

Return self>=value.

##### \_\_getattribute\_\_

[Section titled “\_\_getattribute\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getattribute__)

_\_\_getattribute\_\_()_

Return getattr(self, name).

##### \_\_getitem\_\_

[Section titled “\_\_getitem\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getitem__)

_\_\_getitem\_\_()_

Return self\[key\].

##### \_\_getstate\_\_

[Section titled “\_\_getstate\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getstate__)

_\_\_getstate\_\_()_

Helper for pickle.

##### \_\_gt\_\_

[Section titled “\_\_gt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__gt__)

_\_\_gt\_\_()_

Return self>value.

##### \_\_hash\_\_

[Section titled “\_\_hash\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__hash__)

_\_\_hash\_\_()_

Return hash(self).

##### \_\_iter\_\_

[Section titled “\_\_iter\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__iter__)

_\_\_iter\_\_()_

Implement iter(self).

##### \_\_le\_\_

[Section titled “\_\_le\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__le__)

_\_\_le\_\_()_

Return self<=value.

##### \_\_len\_\_

[Section titled “\_\_len\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__len__)

_\_\_len\_\_()_

Return len(self).

##### \_\_lt\_\_

[Section titled “\_\_lt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__lt__)

_\_\_lt\_\_()_

Return self<value.

##### \_\_mod\_\_

[Section titled “\_\_mod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mod__)

_\_\_mod\_\_()_

Return self%value.

##### \_\_mul\_\_

[Section titled “\_\_mul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mul__)

_\_\_mul\_\_()_

Return self\*value.

##### \_\_ne\_\_

[Section titled “\_\_ne\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ne__)

_\_\_ne\_\_()_

Return self!=value.

##### \_\_new\_\_

[Section titled “\_\_new\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__new__)

_\_\_new\_\_()_

Create and return a new object. See help(type) for accurate signature.

##### \_\_reduce\_\_

[Section titled “\_\_reduce\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduce__)

_\_\_reduce\_\_()_

Helper for pickle.

##### \_\_reduce _ex_\_

[Section titled “\_\_reduceex\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduceex_)

_\_\_reduceex\_()_

Helper for pickle.

##### \_\_repr\_\_

[Section titled “\_\_repr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__repr__)

_\_\_repr\_\_()_

Return repr(self).

##### \_\_rmod\_\_

[Section titled “\_\_rmod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmod__)

_\_\_rmod\_\_()_

Return value%self.

##### \_\_rmul\_\_

[Section titled “\_\_rmul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmul__)

_\_\_rmul\_\_()_

Return value\*self.

##### \_\_setattr\_\_

[Section titled “\_\_setattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__setattr__)

_\_\_setattr\_\_()_

Implement setattr(self, name, value).

##### \_\_sizeof\_\_

[Section titled “\_\_sizeof\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__sizeof__)

_\_\_sizeof\_\_()_

Return the size of the string in memory, in bytes.

##### \_\_str\_\_

[Section titled “\_\_str\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__str__)

_\_\_str\_\_()_

Return str(self).

##### capitalize

[Section titled “capitalize”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#capitalize)

_capitalize()_

Return a capitalized version of the string.

More specifically, make the first character have upper case and the rest lower
case.

##### casefold

[Section titled “casefold”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#casefold)

_casefold()_

Return a version of the string suitable for caseless comparisons.

##### center

[Section titled “center”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#center)

_center()_

Return a centered string of length width.

Padding is done using the specified fill character (default is a space).

##### count

[Section titled “count”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#count)

_count()_

S.count(sub\[, start\[, end\]\]) -> int

Return the number of non-overlapping occurrences of substring sub in
string S\[start:end\]. Optional arguments start and end are
interpreted as in slice notation.

##### encode

[Section titled “encode”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#encode)

_encode()_

Encode the string using the codec registered for encoding.

encoding
The encoding in which to encode the string.
errors
The error handling scheme to use for encoding errors.
The default is ‘strict’ meaning that encoding errors raise a
UnicodeEncodeError. Other possible values are ‘ignore’, ‘replace’ and
‘xmlcharrefreplace’ as well as any other name registered with
codecs.register\_error that can handle UnicodeEncodeErrors.

##### endswith

[Section titled “endswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#endswith)

_endswith()_

S.endswith(suffix\[, start\[, end\]\]) -> bool

Return True if S ends with the specified suffix, False otherwise.
With optional start, test S beginning at that position.
With optional end, stop comparing S at that position.
suffix can also be a tuple of strings to try.

##### expandtabs

[Section titled “expandtabs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#expandtabs)

_expandtabs()_

Return a copy where all tab characters are expanded using spaces.

If tabsize is not given, a tab size of 8 characters is assumed.

##### find

[Section titled “find”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#find)

_find()_

S.find(sub\[, start\[, end\]\]) -> int

Return the lowest index in S where substring sub is found,
such that sub is contained within S\[start:end\]. Optional
arguments start and end are interpreted as in slice notation.

Return -1 on failure.

##### format

[Section titled “format”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format)

_format()_

S.format(\*args, \*\*kwargs) -> str

Return a formatted version of S, using substitutions from args and kwargs.
The substitutions are identified by braces (‘{’ and ‘}’).

##### format\_map

[Section titled “format\_map”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format_map)

_format\_map()_

S.format\_map(mapping) -> str

Return a formatted version of S, using substitutions from mapping.
The substitutions are identified by braces (‘{’ and ‘}’).

##### index

[Section titled “index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#index)

_index()_

S.index(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### isalnum

[Section titled “isalnum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalnum)

_isalnum()_

Return True if the string is an alpha-numeric string, False otherwise.

A string is alpha-numeric if all characters in the string are alpha-numeric and
there is at least one character in the string.

##### isalpha

[Section titled “isalpha”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalpha)

_isalpha()_

Return True if the string is an alphabetic string, False otherwise.

A string is alphabetic if all characters in the string are alphabetic and there
is at least one character in the string.

##### isascii

[Section titled “isascii”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isascii)

_isascii()_

Return True if all characters in the string are ASCII, False otherwise.

ASCII characters have code points in the range U+0000-U+007F.
Empty string is ASCII too.

##### isdecimal

[Section titled “isdecimal”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdecimal)

_isdecimal()_

Return True if the string is a decimal string, False otherwise.

A string is a decimal string if all characters in the string are decimal and
there is at least one character in the string.

##### isdigit

[Section titled “isdigit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdigit)

_isdigit()_

Return True if the string is a digit string, False otherwise.

A string is a digit string if all characters in the string are digits and there
is at least one character in the string.

##### isidentifier

[Section titled “isidentifier”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isidentifier)

_isidentifier()_

Return True if the string is a valid Python identifier, False otherwise.

Call keyword.iskeyword(s) to test whether string s is a reserved identifier,
such as “def” or “class”.

##### islower

[Section titled “islower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#islower)

_islower()_

Return True if the string is a lowercase string, False otherwise.

A string is lowercase if all cased characters in the string are lowercase and
there is at least one cased character in the string.

##### isnumeric

[Section titled “isnumeric”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isnumeric)

_isnumeric()_

Return True if the string is a numeric string, False otherwise.

A string is numeric if all characters in the string are numeric and there is at
least one character in the string.

##### isprintable

[Section titled “isprintable”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isprintable)

_isprintable()_

Return True if the string is printable, False otherwise.

A string is printable if all of its characters are considered printable in
repr() or if it is empty.

##### isspace

[Section titled “isspace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isspace)

_isspace()_

Return True if the string is a whitespace string, False otherwise.

A string is whitespace if all characters in the string are whitespace and there
is at least one character in the string.

##### istitle

[Section titled “istitle”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#istitle)

_istitle()_

Return True if the string is a title-cased string, False otherwise.

In a title-cased string, upper- and title-case characters may only
follow uncased characters and lowercase characters only cased ones.

##### isupper

[Section titled “isupper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isupper)

_isupper()_

Return True if the string is an uppercase string, False otherwise.

A string is uppercase if all cased characters in the string are uppercase and
there is at least one cased character in the string.

##### join

[Section titled “join”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#join)

_join()_

Concatenate any number of strings.

The string whose method is called is inserted in between each given string.
The result is returned as a new string.

Example: ‘.’.join(\[‘ab’, ‘pq’, ‘rs’\]) -> ‘ab.pq.rs’

##### ljust

[Section titled “ljust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#ljust)

_ljust()_

Return a left-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### lower

[Section titled “lower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lower)

_lower()_

Return a copy of the string converted to lowercase.

##### lstrip

[Section titled “lstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lstrip)

_lstrip()_

Return a copy of the string with leading whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### partition

[Section titled “partition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#partition)

_partition()_

Partition the string into three parts using the given separator.

This will search for the separator in the string. If the separator is found,
returns a 3-tuple containing the part before the separator, the separator
itself, and the part after it.

If the separator is not found, returns a 3-tuple containing the original string
and two empty strings.

##### removeprefix

[Section titled “removeprefix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removeprefix)

_removeprefix()_

Return a str with the given prefix string removed if present.

If the string starts with the prefix string, return string\[len(prefix):\].
Otherwise, return a copy of the original string.

##### removesuffix

[Section titled “removesuffix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removesuffix)

_removesuffix()_

Return a str with the given suffix string removed if present.

If the string ends with the suffix string and that suffix is not empty,
return string\[:-len(suffix)\]. Otherwise, return a copy of the original
string.

##### replace

[Section titled “replace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#replace)

_replace()_

Return a copy with all occurrences of substring old replaced by new.

count
Maximum number of occurrences to replace.
-1 (the default value) means replace all occurrences.

If the optional argument count is given, only the first count occurrences are
replaced.

##### rfind

[Section titled “rfind”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rfind)

_rfind()_

S.rfind(sub\[, start\[, end\]\]) -> int

Return the highest index in S where substring sub is found,
such that sub is contained within S\[start:end\]. Optional
arguments start and end are interpreted as in slice notation.

Return -1 on failure.

##### rindex

[Section titled “rindex”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rindex)

_rindex()_

S.rindex(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### rjust

[Section titled “rjust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rjust)

_rjust()_

Return a right-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### rpartition

[Section titled “rpartition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rpartition)

_rpartition()_

Partition the string into three parts using the given separator.

This will search for the separator in the string, starting at the end. If
the separator is found, returns a 3-tuple containing the part before the
separator, the separator itself, and the part after it.

If the separator is not found, returns a 3-tuple containing two empty strings
and the original string.

##### rsplit

[Section titled “rsplit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rsplit)

_rsplit()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the end of the string and works to the front.

##### rstrip

[Section titled “rstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rstrip)

_rstrip()_

Return a copy of the string with trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### split

[Section titled “split”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#split)

_split()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the front of the string and works to the end.

Note, str.split() is mainly useful for data that has been intentionally
delimited. With natural text that includes punctuation, consider using
the regular expression module.

##### splitlines

[Section titled “splitlines”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#splitlines)

_splitlines()_

Return a list of the lines in the string, breaking at line boundaries.

Line breaks are not included in the resulting list unless keepends is given and
true.

##### startswith

[Section titled “startswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#startswith)

_startswith()_

S.startswith(prefix\[, start\[, end\]\]) -> bool

Return True if S starts with the specified prefix, False otherwise.
With optional start, test S beginning at that position.
With optional end, stop comparing S at that position.
prefix can also be a tuple of strings to try.

##### strip

[Section titled “strip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#strip)

_strip()_

Return a copy of the string with leading and trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### swapcase

[Section titled “swapcase”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#swapcase)

_swapcase()_

Convert uppercase characters to lowercase and lowercase characters to uppercase.

##### title

[Section titled “title”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#title)

_title()_

Return a version of the string where each word is titlecased.

More specifically, words start with uppercased characters and all remaining
cased characters have lower case.

##### translate

[Section titled “translate”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#translate)

_translate()_

Replace each character in the string using the given translation table.

table
Translation table, which must be a mapping of Unicode ordinals to
Unicode ordinals, strings, or None.

The table must implement lookup/indexing via **getitem**, for instance a
dictionary or list. If this operation raises LookupError, the character is
left untouched. Characters mapped to None are deleted.

##### upper

[Section titled “upper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#upper)

_upper()_

Return a copy of the string converted to uppercase.

##### zfill

[Section titled “zfill”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#zfill)

_zfill()_

Pad a numeric string with zeros on the left, to fill a field of the given width.

The string is never truncated.

#### _class_ algopy.op.Block

[Section titled “class algopy.op.Block”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopblock)

field F of block A. Fail unless A falls between txn.LastValid-1002 and txn.FirstValid (exclusive)
Native TEAL op: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_bonus

[Section titled “static blk\_bonus”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_bonus)

\* _static_ blk\_bonus(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_branch

[Section titled “static blk\_branch”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_branch)

\* _static_ blk\_branch(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_fee\_sink

[Section titled “static blk\_fee\_sink”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_fee_sink)

\* _static_ blk\_fee\_sink(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_fees\_collected

[Section titled “static blk\_fees\_collected”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_fees_collected)

\* _static_ blk\_fees\_collected(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_proposer

[Section titled “static blk\_proposer”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_proposer)

\* _static_ blk\_proposer(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_proposer\_payout

[Section titled “static blk\_proposer\_payout”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_proposer_payout)

\* _static_ blk\_proposer\_payout(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_protocol

[Section titled “static blk\_protocol”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_protocol)

\* _static_ blk\_protocol(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_seed

[Section titled “static blk\_seed”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_seed)

\* _static_ blk\_seed(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_timestamp

[Section titled “static blk\_timestamp”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_timestamp)

\* _static_ blk\_timestamp(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

##### _static_ blk\_txn\_counter

[Section titled “static blk\_txn\_counter”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-blk_txn_counter)

\* _static_ blk\_txn\_counter(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Min AVM version: 11

Native TEAL opcode: [`block`](https://dev.algorand.co/reference/algorand-teal/opcodes/#block)

#### _class_ algopy.op.Box

[Section titled “class algopy.op.Box”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopbox)

Get or modify box state
Native TEAL ops: [`box_create`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_create), [`box_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_del), [`box_extract`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_extract), [`box_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_get), [`box_len`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_len), [`box_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_put), [`box_replace`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_replace), [`box_resize`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_resize), [`box_splice`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_splice)

##### _static_ create

[Section titled “static create”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-create)

\* _static_ create(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

create a box named A, of length B. Fail if the name A is empty or B exceeds 32,768. Returns 0 if A already existed, else 1
Newly created boxes are filled with 0 bytes. `box_create` will fail if the referenced box already exists with a different size. Otherwise, existing boxes are unchanged by `box_create`.

Native TEAL opcode: [`box_create`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_create)

##### _static_ delete

[Section titled “static delete”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-delete-2)

\* _static_ delete(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

delete box named A if it exists. Return 1 if A existed, 0 otherwise

Native TEAL opcode: [`box_del`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_del)

##### _static_ extract

[Section titled “static extract”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-extract)

\* _static_ extract(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

read C bytes from box A, starting at offset B. Fail if A does not exist, or the byte range is outside A’s size.

Native TEAL opcode: [`box_extract`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_extract)

##### _static_ get

[Section titled “static get”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-get)

\* _static_ get(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

X is the contents of box A if A exists, else ‘’. Y is 1 if A exists, else 0.
For boxes that exceed 4,096 bytes, consider `box_create`, `box_extract`, and `box_replace`

Native TEAL opcode: [`box_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_get)

##### _static_ length

[Section titled “static length”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-length)

\* _static_ length(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

X is the length of box A if A exists, else 0. Y is 1 if A exists, else 0.

Native TEAL opcode: [`box_len`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_len)

##### _static_ put

[Section titled “static put”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-put-2)

\* _static_ put(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

replaces the contents of box A with byte-array B. Fails if A exists and len(B) != len(box A). Creates A if it does not exist
For boxes that exceed 4,096 bytes, consider `box_create`, `box_extract`, and `box_replace`

Native TEAL opcode: [`box_put`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_put)

##### _static_ replace

[Section titled “static replace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-replace)

\* _static_ replace(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

write byte-array C into box A, starting at offset B. Fail if A does not exist, or the byte range is outside A’s size.

Native TEAL opcode: [`box_replace`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_replace)

##### _static_ resize

[Section titled “static resize”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-resize)

\* _static_ resize(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

change the size of box named A to be of length B, adding zero bytes to end or removing bytes from the end, as needed. Fail if the name A is empty, A is not an existing box, or B exceeds 32,768.

Native TEAL opcode: [`box_resize`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_resize)

##### _static_ splice

[Section titled “static splice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-splice)

\* _static_ splice(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), d: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

set box A to contain its previous bytes up to index B, followed by D, followed by the original bytes of A that began at index B+C.
Boxes are of constant length. If C < len(D), then len(D)-C bytes will be removed from the end. If C > len(D), zero bytes will be appended to the end to reach the box length.

Native TEAL opcode: [`box_splice`](https://dev.algorand.co/reference/algorand-teal/opcodes/#box_splice)

#### _class_ algopy.op.EC

[Section titled “class algopy.op.EC”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopec)

Available values for the `EC` enum

##### Initialization

[Section titled “Initialization”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#initialization-1)

Initialize self. See help(type(self)) for accurate signature.

##### BLS12\_381g1 \*: \[algopy.op.EC\]

[Section titled “BLS12\_381g1 \*: \[algopy.op.EC\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#bls12_381g1--algopyopec)

\_BLS12\_381g1 \_: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)\*\*

Ellipsis

G1 of the BLS 12-381 curve. Points encoded as 48 byte X following by 48 byte Y

##### BLS12\_381g2 \*: \[algopy.op.EC\]

[Section titled “BLS12\_381g2 \*: \[algopy.op.EC\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#bls12_381g2--algopyopec)

\_BLS12\_381g2 \_: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)\*\*

Ellipsis

G2 of the BLS 12-381 curve. Points encoded as 96 byte X following by 96 byte Y

##### BN254g1 \*: \[algopy.op.EC\]

[Section titled “BN254g1 \*: \[algopy.op.EC\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#bn254g1--algopyopec)

\_BN254g1 \_: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)\*\*

Ellipsis

G1 of the BN254 curve. Points encoded as 32 byte X following by 32 byte Y

##### BN254g2 \*: \[algopy.op.EC\]

[Section titled “BN254g2 \*: \[algopy.op.EC\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#bn254g2--algopyopec)

\_BN254g2 \_: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)\*\*

Ellipsis

G2 of the BN254 curve. Points encoded as 64 byte X following by 64 byte Y

##### \_\_add\_\_

[Section titled “\_\_add\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__add__-1)

_\_\_add\_\_()_

Return self+value.

##### \_\_contains\_\_

[Section titled “\_\_contains\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__contains__-1)

_\_\_contains\_\_()_

Return bool(key in self).

##### \_\_delattr\_\_

[Section titled “\_\_delattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__delattr__-1)

_\_\_delattr\_\_()_

Implement delattr(self, name).

##### \_\_dir\_\_

[Section titled “\_\_dir\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__dir__-1)

_\_\_dir\_\_()_

Default dir() implementation.

##### \_\_eq\_\_

[Section titled “\_\_eq\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__eq__-1)

_\_\_eq\_\_()_

Return self==value.

##### \_\_format\_\_

[Section titled “\_\_format\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__format__-1)

_\_\_format\_\_()_

Return a formatted version of the string as described by format\_spec.

##### \_\_ge\_\_

[Section titled “\_\_ge\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ge__-1)

_\_\_ge\_\_()_

Return self>=value.

##### \_\_getattribute\_\_

[Section titled “\_\_getattribute\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getattribute__-1)

_\_\_getattribute\_\_()_

Return getattr(self, name).

##### \_\_getitem\_\_

[Section titled “\_\_getitem\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getitem__-1)

_\_\_getitem\_\_()_

Return self\[key\].

##### \_\_getstate\_\_

[Section titled “\_\_getstate\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getstate__-1)

_\_\_getstate\_\_()_

Helper for pickle.

##### \_\_gt\_\_

[Section titled “\_\_gt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__gt__-1)

_\_\_gt\_\_()_

Return self>value.

##### \_\_hash\_\_

[Section titled “\_\_hash\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__hash__-1)

_\_\_hash\_\_()_

Return hash(self).

##### \_\_iter\_\_

[Section titled “\_\_iter\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__iter__-1)

_\_\_iter\_\_()_

Implement iter(self).

##### \_\_le\_\_

[Section titled “\_\_le\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__le__-1)

_\_\_le\_\_()_

Return self<=value.

##### \_\_len\_\_

[Section titled “\_\_len\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__len__-1)

_\_\_len\_\_()_

Return len(self).

##### \_\_lt\_\_

[Section titled “\_\_lt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__lt__-1)

_\_\_lt\_\_()_

Return self<value.

##### \_\_mod\_\_

[Section titled “\_\_mod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mod__-1)

_\_\_mod\_\_()_

Return self%value.

##### \_\_mul\_\_

[Section titled “\_\_mul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mul__-1)

_\_\_mul\_\_()_

Return self\*value.

##### \_\_ne\_\_

[Section titled “\_\_ne\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ne__-1)

_\_\_ne\_\_()_

Return self!=value.

##### \_\_new\_\_

[Section titled “\_\_new\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__new__-1)

_\_\_new\_\_()_

Create and return a new object. See help(type) for accurate signature.

##### \_\_reduce\_\_

[Section titled “\_\_reduce\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduce__-1)

_\_\_reduce\_\_()_

Helper for pickle.

##### \_\_reduce _ex_\_

[Section titled “\_\_reduceex\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduceex_-1)

_\_\_reduceex\_()_

Helper for pickle.

##### \_\_repr\_\_

[Section titled “\_\_repr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__repr__-1)

_\_\_repr\_\_()_

Return repr(self).

##### \_\_rmod\_\_

[Section titled “\_\_rmod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmod__-1)

_\_\_rmod\_\_()_

Return value%self.

##### \_\_rmul\_\_

[Section titled “\_\_rmul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmul__-1)

_\_\_rmul\_\_()_

Return value\*self.

##### \_\_setattr\_\_

[Section titled “\_\_setattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__setattr__-1)

_\_\_setattr\_\_()_

Implement setattr(self, name, value).

##### \_\_sizeof\_\_

[Section titled “\_\_sizeof\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__sizeof__-1)

_\_\_sizeof\_\_()_

Return the size of the string in memory, in bytes.

##### \_\_str\_\_

[Section titled “\_\_str\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__str__-1)

_\_\_str\_\_()_

Return str(self).

##### capitalize

[Section titled “capitalize”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#capitalize-1)

_capitalize()_

Return a capitalized version of the string.

More specifically, make the first character have upper case and the rest lower
case.

##### casefold

[Section titled “casefold”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#casefold-1)

_casefold()_

Return a version of the string suitable for caseless comparisons.

##### center

[Section titled “center”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#center-1)

_center()_

Return a centered string of length width.

Padding is done using the specified fill character (default is a space).

##### count

[Section titled “count”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#count-1)

_count()_

S.count(sub\[, start\[, end\]\]) -> int

##### encode

[Section titled “encode”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#encode-1)

_encode()_

Encode the string using the codec registered for encoding.

##### endswith

[Section titled “endswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#endswith-1)

_endswith()_

S.endswith(suffix\[, start\[, end\]\]) -> bool

##### expandtabs

[Section titled “expandtabs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#expandtabs-1)

_expandtabs()_

Return a copy where all tab characters are expanded using spaces.

If tabsize is not given, a tab size of 8 characters is assumed.

##### find

[Section titled “find”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#find-1)

_find()_

S.find(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### format

[Section titled “format”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format-1)

_format()_

S.format(\*args, \*\*kwargs) -> str

Return a formatted version of S, using substitutions from args and kwargs.
The substitutions are identified by braces (‘{’ and ‘}’).

##### format\_map

[Section titled “format\_map”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format_map-1)

_format\_map()_

S.format\_map(mapping) -> str

Return a formatted version of S, using substitutions from mapping.
The substitutions are identified by braces (‘{’ and ‘}’).

##### index

[Section titled “index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#index-1)

_index()_

S.index(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### isalnum

[Section titled “isalnum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalnum-1)

_isalnum()_

Return True if the string is an alpha-numeric string, False otherwise.

A string is alpha-numeric if all characters in the string are alpha-numeric and
there is at least one character in the string.

##### isalpha

[Section titled “isalpha”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalpha-1)

_isalpha()_

Return True if the string is an alphabetic string, False otherwise.

A string is alphabetic if all characters in the string are alphabetic and there
is at least one character in the string.

##### isascii

[Section titled “isascii”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isascii-1)

_isascii()_

Return True if all characters in the string are ASCII, False otherwise.

ASCII characters have code points in the range U+0000-U+007F.
Empty string is ASCII too.

##### isdecimal

[Section titled “isdecimal”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdecimal-1)

_isdecimal()_

Return True if the string is a decimal string, False otherwise.

A string is a decimal string if all characters in the string are decimal and
there is at least one character in the string.

##### isdigit

[Section titled “isdigit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdigit-1)

_isdigit()_

Return True if the string is a digit string, False otherwise.

A string is a digit string if all characters in the string are digits and there
is at least one character in the string.

##### isidentifier

[Section titled “isidentifier”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isidentifier-1)

_isidentifier()_

Return True if the string is a valid Python identifier, False otherwise.

Call keyword.iskeyword(s) to test whether string s is a reserved identifier,
such as “def” or “class”.

##### islower

[Section titled “islower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#islower-1)

_islower()_

Return True if the string is a lowercase string, False otherwise.

A string is lowercase if all cased characters in the string are lowercase and
there is at least one cased character in the string.

##### isnumeric

[Section titled “isnumeric”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isnumeric-1)

_isnumeric()_

Return True if the string is a numeric string, False otherwise.

A string is numeric if all characters in the string are numeric and there is at
least one character in the string.

##### isprintable

[Section titled “isprintable”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isprintable-1)

_isprintable()_

Return True if the string is printable, False otherwise.

A string is printable if all of its characters are considered printable in
repr() or if it is empty.

##### isspace

[Section titled “isspace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isspace-1)

_isspace()_

Return True if the string is a whitespace string, False otherwise.

A string is whitespace if all characters in the string are whitespace and there
is at least one character in the string.

##### istitle

[Section titled “istitle”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#istitle-1)

_istitle()_

Return True if the string is a title-cased string, False otherwise.

In a title-cased string, upper- and title-case characters may only
follow uncased characters and lowercase characters only cased ones.

##### isupper

[Section titled “isupper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isupper-1)

_isupper()_

Return True if the string is an uppercase string, False otherwise.

A string is uppercase if all cased characters in the string are uppercase and
there is at least one cased character in the string.

##### join

[Section titled “join”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#join-1)

_join()_

Concatenate any number of strings.

The string whose method is called is inserted in between each given string.
The result is returned as a new string.

Example: ‘.’.join(\[‘ab’, ‘pq’, ‘rs’\]) -> ‘ab.pq.rs’

##### ljust

[Section titled “ljust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#ljust-1)

_ljust()_

Return a left-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### lower

[Section titled “lower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lower-1)

_lower()_

Return a copy of the string converted to lowercase.

##### lstrip

[Section titled “lstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lstrip-1)

_lstrip()_

Return a copy of the string with leading whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### partition

[Section titled “partition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#partition-1)

_partition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing the original string
and two empty strings.

##### removeprefix

[Section titled “removeprefix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removeprefix-1)

_removeprefix()_

Return a str with the given prefix string removed if present.

If the string starts with the prefix string, return string\[len(prefix):\].
Otherwise, return a copy of the original string.

##### removesuffix

[Section titled “removesuffix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removesuffix-1)

_removesuffix()_

Return a str with the given suffix string removed if present.

If the string ends with the suffix string and that suffix is not empty,
return string\[:-len(suffix)\]. Otherwise, return a copy of the original
string.

##### replace

[Section titled “replace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#replace-1)

_replace()_

Return a copy with all occurrences of substring old replaced by new.

count
Maximum number of occurrences to replace.
-1 (the default value) means replace all occurrences.

If the optional argument count is given, only the first count occurrences are
replaced.

##### rfind

[Section titled “rfind”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rfind-1)

_rfind()_

S.rfind(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### rindex

[Section titled “rindex”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rindex-1)

_rindex()_

S.rindex(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### rjust

[Section titled “rjust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rjust-1)

_rjust()_

Return a right-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### rpartition

[Section titled “rpartition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rpartition-1)

_rpartition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing two empty strings
and the original string.

##### rsplit

[Section titled “rsplit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rsplit-1)

_rsplit()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the end of the string and works to the front.

##### rstrip

[Section titled “rstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rstrip-1)

_rstrip()_

Return a copy of the string with trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### split

[Section titled “split”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#split-1)

_split()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the front of the string and works to the end.

##### splitlines

[Section titled “splitlines”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#splitlines-1)

_splitlines()_

Return a list of the lines in the string, breaking at line boundaries.

Line breaks are not included in the resulting list unless keepends is given and
true.

##### startswith

[Section titled “startswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#startswith-1)

_startswith()_

S.startswith(prefix\[, start\[, end\]\]) -> bool

##### strip

[Section titled “strip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#strip-1)

_strip()_

Return a copy of the string with leading and trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### swapcase

[Section titled “swapcase”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#swapcase-1)

_swapcase()_

Convert uppercase characters to lowercase and lowercase characters to uppercase.

##### title

[Section titled “title”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#title-1)

_title()_

Return a version of the string where each word is titlecased.

More specifically, words start with uppercased characters and all remaining
cased characters have lower case.

##### translate

[Section titled “translate”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#translate-1)

_translate()_

Replace each character in the string using the given translation table.

table
Translation table, which must be a mapping of Unicode ordinals to
Unicode ordinals, strings, or None.

##### upper

[Section titled “upper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#upper-1)

_upper()_

Return a copy of the string converted to uppercase.

##### zfill

[Section titled “zfill”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#zfill-1)

_zfill()_

Pad a numeric string with zeros on the left, to fill a field of the given width.

The string is never truncated.

#### _class_ algopy.op.ECDSA

[Section titled “class algopy.op.ECDSA”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopecdsa)

Available values for the `ECDSA` enum

##### Initialization

[Section titled “Initialization”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#initialization-2)

Initialize self. See help(type(self)) for accurate signature.

##### Secp256k1 \*: \[algopy.op.ECDSA\]

[Section titled “Secp256k1 \*: \[algopy.op.ECDSA\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#secp256k1--algopyopecdsa)

\_Secp256k1 \_: [algopy.op.ECDSA](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA)\*\*

Ellipsis

secp256k1 curve, used in Bitcoin

##### Secp256r1 \*: \[algopy.op.ECDSA\]

[Section titled “Secp256r1 \*: \[algopy.op.ECDSA\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#secp256r1--algopyopecdsa)

\_Secp256r1 \_: [algopy.op.ECDSA](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA)\*\*

Ellipsis

secp256r1 curve, NIST standard

##### \_\_add\_\_

[Section titled “\_\_add\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__add__-2)

_\_\_add\_\_()_

Return self+value.

##### \_\_contains\_\_

[Section titled “\_\_contains\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__contains__-2)

_\_\_contains\_\_()_

Return bool(key in self).

##### \_\_delattr\_\_

[Section titled “\_\_delattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__delattr__-2)

_\_\_delattr\_\_()_

Implement delattr(self, name).

##### \_\_dir\_\_

[Section titled “\_\_dir\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__dir__-2)

_\_\_dir\_\_()_

Default dir() implementation.

##### \_\_eq\_\_

[Section titled “\_\_eq\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__eq__-2)

_\_\_eq\_\_()_

Return self==value.

##### \_\_format\_\_

[Section titled “\_\_format\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__format__-2)

_\_\_format\_\_()_

Return a formatted version of the string as described by format\_spec.

##### \_\_ge\_\_

[Section titled “\_\_ge\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ge__-2)

_\_\_ge\_\_()_

Return self>=value.

##### \_\_getattribute\_\_

[Section titled “\_\_getattribute\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getattribute__-2)

_\_\_getattribute\_\_()_

Return getattr(self, name).

##### \_\_getitem\_\_

[Section titled “\_\_getitem\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getitem__-2)

_\_\_getitem\_\_()_

Return self\[key\].

##### \_\_getstate\_\_

[Section titled “\_\_getstate\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getstate__-2)

_\_\_getstate\_\_()_

Helper for pickle.

##### \_\_gt\_\_

[Section titled “\_\_gt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__gt__-2)

_\_\_gt\_\_()_

Return self>value.

##### \_\_hash\_\_

[Section titled “\_\_hash\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__hash__-2)

_\_\_hash\_\_()_

Return hash(self).

##### \_\_iter\_\_

[Section titled “\_\_iter\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__iter__-2)

_\_\_iter\_\_()_

Implement iter(self).

##### \_\_le\_\_

[Section titled “\_\_le\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__le__-2)

_\_\_le\_\_()_

Return self<=value.

##### \_\_len\_\_

[Section titled “\_\_len\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__len__-2)

_\_\_len\_\_()_

Return len(self).

##### \_\_lt\_\_

[Section titled “\_\_lt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__lt__-2)

_\_\_lt\_\_()_

Return self<value.

##### \_\_mod\_\_

[Section titled “\_\_mod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mod__-2)

_\_\_mod\_\_()_

Return self%value.

##### \_\_mul\_\_

[Section titled “\_\_mul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mul__-2)

_\_\_mul\_\_()_

Return self\*value.

##### \_\_ne\_\_

[Section titled “\_\_ne\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ne__-2)

_\_\_ne\_\_()_

Return self!=value.

##### \_\_new\_\_

[Section titled “\_\_new\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__new__-2)

_\_\_new\_\_()_

Create and return a new object. See help(type) for accurate signature.

##### \_\_reduce\_\_

[Section titled “\_\_reduce\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduce__-2)

_\_\_reduce\_\_()_

Helper for pickle.

##### \_\_reduce _ex_\_

[Section titled “\_\_reduceex\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduceex_-2)

_\_\_reduceex\_()_

Helper for pickle.

##### \_\_repr\_\_

[Section titled “\_\_repr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__repr__-2)

_\_\_repr\_\_()_

Return repr(self).

##### \_\_rmod\_\_

[Section titled “\_\_rmod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmod__-2)

_\_\_rmod\_\_()_

Return value%self.

##### \_\_rmul\_\_

[Section titled “\_\_rmul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmul__-2)

_\_\_rmul\_\_()_

Return value\*self.

##### \_\_setattr\_\_

[Section titled “\_\_setattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__setattr__-2)

_\_\_setattr\_\_()_

Implement setattr(self, name, value).

##### \_\_sizeof\_\_

[Section titled “\_\_sizeof\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__sizeof__-2)

_\_\_sizeof\_\_()_

Return the size of the string in memory, in bytes.

##### \_\_str\_\_

[Section titled “\_\_str\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__str__-2)

_\_\_str\_\_()_

Return str(self).

##### capitalize

[Section titled “capitalize”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#capitalize-2)

_capitalize()_

Return a capitalized version of the string.

More specifically, make the first character have upper case and the rest lower
case.

##### casefold

[Section titled “casefold”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#casefold-2)

_casefold()_

Return a version of the string suitable for caseless comparisons.

##### center

[Section titled “center”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#center-2)

_center()_

Return a centered string of length width.

Padding is done using the specified fill character (default is a space).

##### count

[Section titled “count”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#count-2)

_count()_

S.count(sub\[, start\[, end\]\]) -> int

##### encode

[Section titled “encode”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#encode-2)

_encode()_

Encode the string using the codec registered for encoding.

##### endswith

[Section titled “endswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#endswith-2)

_endswith()_

S.endswith(suffix\[, start\[, end\]\]) -> bool

##### expandtabs

[Section titled “expandtabs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#expandtabs-2)

_expandtabs()_

Return a copy where all tab characters are expanded using spaces.

If tabsize is not given, a tab size of 8 characters is assumed.

##### find

[Section titled “find”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#find-2)

_find()_

S.find(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### format

[Section titled “format”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format-2)

_format()_

S.format(\*args, \*\*kwargs) -> str

Return a formatted version of S, using substitutions from args and kwargs.
The substitutions are identified by braces (‘{’ and ‘}’).

##### format\_map

[Section titled “format\_map”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format_map-2)

_format\_map()_

S.format\_map(mapping) -> str

Return a formatted version of S, using substitutions from mapping.
The substitutions are identified by braces (‘{’ and ‘}’).

##### index

[Section titled “index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#index-2)

_index()_

S.index(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### isalnum

[Section titled “isalnum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalnum-2)

_isalnum()_

Return True if the string is an alpha-numeric string, False otherwise.

A string is alpha-numeric if all characters in the string are alpha-numeric and
there is at least one character in the string.

##### isalpha

[Section titled “isalpha”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalpha-2)

_isalpha()_

Return True if the string is an alphabetic string, False otherwise.

A string is alphabetic if all characters in the string are alphabetic and there
is at least one character in the string.

##### isascii

[Section titled “isascii”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isascii-2)

_isascii()_

Return True if all characters in the string are ASCII, False otherwise.

ASCII characters have code points in the range U+0000-U+007F.
Empty string is ASCII too.

##### isdecimal

[Section titled “isdecimal”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdecimal-2)

_isdecimal()_

Return True if the string is a decimal string, False otherwise.

A string is a decimal string if all characters in the string are decimal and
there is at least one character in the string.

##### isdigit

[Section titled “isdigit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdigit-2)

_isdigit()_

Return True if the string is a digit string, False otherwise.

A string is a digit string if all characters in the string are digits and there
is at least one character in the string.

##### isidentifier

[Section titled “isidentifier”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isidentifier-2)

_isidentifier()_

Return True if the string is a valid Python identifier, False otherwise.

Call keyword.iskeyword(s) to test whether string s is a reserved identifier,
such as “def” or “class”.

##### islower

[Section titled “islower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#islower-2)

_islower()_

Return True if the string is a lowercase string, False otherwise.

A string is lowercase if all cased characters in the string are lowercase and
there is at least one cased character in the string.

##### isnumeric

[Section titled “isnumeric”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isnumeric-2)

_isnumeric()_

Return True if the string is a numeric string, False otherwise.

A string is numeric if all characters in the string are numeric and there is at
least one character in the string.

##### isprintable

[Section titled “isprintable”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isprintable-2)

_isprintable()_

Return True if the string is printable, False otherwise.

A string is printable if all of its characters are considered printable in
repr() or if it is empty.

##### isspace

[Section titled “isspace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isspace-2)

_isspace()_

Return True if the string is a whitespace string, False otherwise.

A string is whitespace if all characters in the string are whitespace and there
is at least one character in the string.

##### istitle

[Section titled “istitle”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#istitle-2)

_istitle()_

Return True if the string is a title-cased string, False otherwise.

In a title-cased string, upper- and title-case characters may only
follow uncased characters and lowercase characters only cased ones.

##### isupper

[Section titled “isupper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isupper-2)

_isupper()_

Return True if the string is an uppercase string, False otherwise.

A string is uppercase if all cased characters in the string are uppercase and
there is at least one cased character in the string.

##### join

[Section titled “join”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#join-2)

_join()_

Concatenate any number of strings.

The string whose method is called is inserted in between each given string.
The result is returned as a new string.

Example: ‘.’.join(\[‘ab’, ‘pq’, ‘rs’\]) -> ‘ab.pq.rs’

##### ljust

[Section titled “ljust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#ljust-2)

_ljust()_

Return a left-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### lower

[Section titled “lower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lower-2)

_lower()_

Return a copy of the string converted to lowercase.

##### lstrip

[Section titled “lstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lstrip-2)

_lstrip()_

Return a copy of the string with leading whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### partition

[Section titled “partition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#partition-2)

_partition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing the original string
and two empty strings.

##### removeprefix

[Section titled “removeprefix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removeprefix-2)

_removeprefix()_

Return a str with the given prefix string removed if present.

If the string starts with the prefix string, return string\[len(prefix):\].
Otherwise, return a copy of the original string.

##### removesuffix

[Section titled “removesuffix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removesuffix-2)

_removesuffix()_

Return a str with the given suffix string removed if present.

If the string ends with the suffix string and that suffix is not empty,
return string\[:-len(suffix)\]. Otherwise, return a copy of the original
string.

##### replace

[Section titled “replace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#replace-2)

_replace()_

Return a copy with all occurrences of substring old replaced by new.

count
Maximum number of occurrences to replace.
-1 (the default value) means replace all occurrences.

If the optional argument count is given, only the first count occurrences are
replaced.

##### rfind

[Section titled “rfind”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rfind-2)

_rfind()_

S.rfind(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### rindex

[Section titled “rindex”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rindex-2)

_rindex()_

S.rindex(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### rjust

[Section titled “rjust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rjust-2)

_rjust()_

Return a right-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### rpartition

[Section titled “rpartition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rpartition-2)

_rpartition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing two empty strings
and the original string.

##### rsplit

[Section titled “rsplit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rsplit-2)

_rsplit()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the end of the string and works to the front.

##### rstrip

[Section titled “rstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rstrip-2)

_rstrip()_

Return a copy of the string with trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### split

[Section titled “split”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#split-2)

_split()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the front of the string and works to the end.

##### splitlines

[Section titled “splitlines”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#splitlines-2)

_splitlines()_

Return a list of the lines in the string, breaking at line boundaries.

Line breaks are not included in the resulting list unless keepends is given and
true.

##### startswith

[Section titled “startswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#startswith-2)

_startswith()_

S.startswith(prefix\[, start\[, end\]\]) -> bool

##### strip

[Section titled “strip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#strip-2)

_strip()_

Return a copy of the string with leading and trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### swapcase

[Section titled “swapcase”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#swapcase-2)

_swapcase()_

Convert uppercase characters to lowercase and lowercase characters to uppercase.

##### title

[Section titled “title”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#title-2)

_title()_

Return a version of the string where each word is titlecased.

More specifically, words start with uppercased characters and all remaining
cased characters have lower case.

##### translate

[Section titled “translate”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#translate-2)

_translate()_

Replace each character in the string using the given translation table.

table
Translation table, which must be a mapping of Unicode ordinals to
Unicode ordinals, strings, or None.

##### upper

[Section titled “upper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#upper-2)

_upper()_

Return a copy of the string converted to uppercase.

##### zfill

[Section titled “zfill”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#zfill-2)

_zfill()_

Pad a numeric string with zeros on the left, to fill a field of the given width.

The string is never truncated.

#### _class_ algopy.op.EllipticCurve

[Section titled “class algopy.op.EllipticCurve”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopellipticcurve)

Elliptic Curve functions
Native TEAL ops: [`ec_add`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_add), [`ec_map_to`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_map_to), [`ec_multi_scalar_mul`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_multi_scalar_mul), [`ec_pairing_check`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_pairing_check), [`ec_scalar_mul`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_scalar_mul), [`ec_subgroup_check`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_subgroup_check)

##### _static_ add

[Section titled “static add”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-add)

\* _static_ add(g: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

for curve points A and B, return the curve point A + B
A and B are curve points in affine representation: field element X concatenated with field element Y. Field element `Z` is encoded as follows.
For the base field elements (Fp), `Z` is encoded as a big-endian number and must be lower than the field modulus.
For the quadratic field extension (Fp2), `Z` is encoded as the concatenation of the individual encoding of the coefficients. For an Fp2 element of the form `Z = Z0 + Z1 i`, where `i` is a formal quadratic non-residue, the encoding of Z is the concatenation of the encoding of `Z0` and `Z1` in this order. (`Z0` and `Z1` must be less than the field modulus).

The point at infinity is encoded as `(X,Y) = (0,0)`.
Groups G1 and G2 are denoted additively.

Fails if A or B is not in G.
A and/or B are allowed to be the point at infinity.
Does _not_ check if A and B are in the main prime-order subgroup.

- **Parameters:** **g** ( [_EC_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)) – curve index

Native TEAL opcode: [`ec_add`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_add)

##### _static_ map\_to

[Section titled “static map\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-map_to)

\* _static_ map\_to(g: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

maps field element A to group G
BN254 points are mapped by the SVDW map. BLS12-381 points are mapped by the SSWU map.
G1 element inputs are base field elements and G2 element inputs are quadratic field elements, with nearly the same encoding rules (for field elements) as defined in `ec_add`. There is one difference of encoding rule: G1 element inputs do not need to be 0-padded if they fit in less than 32 bytes for BN254 and less than 48 bytes for BLS12-381. (As usual, the empty byte array represents 0.) G2 elements inputs need to be always have the required size.

- **Parameters:** **g** ( [_EC_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)) – curve index

Native TEAL opcode: [`ec_map_to`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_map_to)

##### _static_ pairing\_check

[Section titled “static pairing\_check”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-pairing_check)

\* _static_ pairing\_check(g: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

1 if the product of the pairing of each point in A with its respective point in B is equal to the identity element of the target group Gt, else 0
A and B are concatenated points, encoded and checked as described in `ec_add`. A contains points of the group G, B contains points of the associated group (G2 if G is G1, and vice versa). Fails if A and B have a different number of points, or if any point is not in its described group or outside the main prime-order subgroup - a stronger condition than other opcodes. AVM values are limited to 4096 bytes, so `ec_pairing_check` is limited by the size of the points in the groups being operated upon.

- **Parameters:** **g** ( [_EC_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)) – curve index

Native TEAL opcode: [`ec_pairing_check`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_pairing_check)

##### _static_ scalar\_mul

[Section titled “static scalar\_mul”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-scalar_mul)

\* _static_ scalar\_mul(g: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

for curve point A and scalar B, return the curve point BA, the point A multiplied by the scalar B.
A is a curve point encoded and checked as described in `ec_add`. Scalar B is interpreted as a big-endian unsigned integer. Fails if B exceeds 32 bytes.

- **Parameters:** **g** ( [_EC_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)) – curve index

Native TEAL opcode: [`ec_scalar_mul`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_scalar_mul)

##### _static_ scalar\_mul\_multi

[Section titled “static scalar\_mul\_multi”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-scalar_mul_multi)

\* _static_ scalar\_mul\_multi(g: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

for curve points A and scalars B, return curve point B0A0 + B1A1 + B2A2 + … + BnAn
A is a list of concatenated points, encoded and checked as described in `ec_add`. B is a list of concatenated scalars which, unlike ec\_scalar\_mul, must all be exactly 32 bytes long.
The name `ec_multi_scalar_mul` was chosen to reflect common usage, but a more consistent name would be `ec_multi_scalar_mul`. AVM values are limited to 4096 bytes, so `ec_multi_scalar_mul` is limited by the size of the points in the group being operated upon.

- **Parameters:** **g** ( [_EC_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)) – curve index

Native TEAL opcode: [`ec_multi_scalar_mul`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_multi_scalar_mul)

##### _static_ subgroup\_check

[Section titled “static subgroup\_check”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-subgroup_check)

\* _static_ subgroup\_check(g: [algopy.op.EC](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

1 if A is in the main prime-order subgroup of G (including the point at infinity) else 0. Program fails if A is not in G at all.

- **Parameters:** **g** ( [_EC_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.EC)) – curve index

Native TEAL opcode: [`ec_subgroup_check`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ec_subgroup_check)

#### _class_ algopy.op.GITxn

[Section titled “class algopy.op.GITxn”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopgitxn)

Get values for inner transaction in the last group submitted
Native TEAL ops: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn), [`gitxnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxnas)

##### _static_ accounts

[Section titled “static accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-accounts)

\* _static_ accounts(t: [int](https://docs.python.org/3/library/functions.html#int), a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
Accounts listed in the ApplicationCall transaction

Native TEAL opcode: [`gitxna`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxna), [`gitxnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxnas)

##### _static_ amount

[Section titled “static amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-amount)

\* _static_ amount(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
microalgos

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ application\_args

[Section titled “static application\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-application_args)

\* _static_ application\_args(t: [int](https://docs.python.org/3/library/functions.html#int), a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Arguments passed to the application in the ApplicationCall transaction

##### _static_ application\_id

[Section titled “static application\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-application_id)

\* _static_ application\_id(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Application:**
ApplicationID from ApplicationCall transaction

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ applications

[Section titled “static applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-applications)

\* _static_ applications(t: [int](https://docs.python.org/3/library/functions.html#int), a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Application:**
Foreign Apps listed in the ApplicationCall transaction

##### _static_ approval\_program

[Section titled “static approval\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-approval_program)

\* _static_ approval\_program(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Approval program

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ approval\_program\_pages

[Section titled “static approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-approval_program_pages)

\* _static_ approval\_program\_pages(t: [int](https://docs.python.org/3/library/functions.html#int), a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Approval Program as an array of pages

##### _static_ asset\_amount

[Section titled “static asset\_amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_amount)

\* _static_ asset\_amount(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
value in Asset’s units

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ asset\_close\_to

[Section titled “static asset\_close\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_close_to)

\* _static_ asset\_close\_to(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ asset\_receiver

[Section titled “static asset\_receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_receiver)

\* _static_ asset\_receiver(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ asset\_sender

[Section titled “static asset\_sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_sender)

\* _static_ asset\_sender(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address. Source of assets if Sender is the Asset’s Clawback address.

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ assets

[Section titled “static assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-assets)

\* _static_ assets(t: [int](https://docs.python.org/3/library/functions.html#int), a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Asset:**
Foreign Assets listed in the ApplicationCall transaction

##### _static_ clear\_state\_program

[Section titled “static clear\_state\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-clear_state_program)

\* _static_ clear\_state\_program(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Clear state program

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ clear\_state\_program\_pages

[Section titled “static clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-clear_state_program_pages)

\* _static_ clear\_state\_program\_pages(t: [int](https://docs.python.org/3/library/functions.html#int), a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
ClearState Program as an array of pages

##### _static_ close\_remainder\_to

[Section titled “static close\_remainder\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-close_remainder_to)

\* _static_ close\_remainder\_to(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset

[Section titled “static config\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset)

\* _static_ config\_asset(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Asset:**
Asset ID in asset config transaction

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_clawback

[Section titled “static config\_asset\_clawback”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_clawback)

\* _static_ config\_asset\_clawback(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_decimals

[Section titled “static config\_asset\_decimals”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_decimals)

\* _static_ config\_asset\_decimals(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of digits to display after the decimal place when displaying the asset

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_default\_frozen

[Section titled “static config\_asset\_default\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_default_frozen)

\* _static_ config\_asset\_default\_frozen(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns bool:**
Whether the asset’s slots are frozen by default or not, 0 or 1

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_freeze

[Section titled “static config\_asset\_freeze”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_freeze)

\* _static_ config\_asset\_freeze(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_manager

[Section titled “static config\_asset\_manager”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_manager)

\* _static_ config\_asset\_manager(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_metadata\_hash

[Section titled “static config\_asset\_metadata\_hash”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_metadata_hash)

\* _static_ config\_asset\_metadata\_hash(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
32 byte commitment to unspecified asset metadata

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_name

[Section titled “static config\_asset\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_name)

\* _static_ config\_asset\_name(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
The asset name

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_reserve

[Section titled “static config\_asset\_reserve”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_reserve)

\* _static_ config\_asset\_reserve(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_total

[Section titled “static config\_asset\_total”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_total)

\* _static_ config\_asset\_total(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Total number of units of this asset created

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_unit\_name

[Section titled “static config\_asset\_unit\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_unit_name)

\* _static_ config\_asset\_unit\_name(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Unit name of the asset

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ config\_asset\_url

[Section titled “static config\_asset\_url”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_url)

\* _static_ config\_asset\_url(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
URL

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ created\_application\_id

[Section titled “static created\_application\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-created_application_id)

\* _static_ created\_application\_id(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Application:**
ApplicationID allocated by the creation of an application (only with `itxn` in v5). Application mode only

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ created\_asset\_id

[Section titled “static created\_asset\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-created_asset_id)

\* _static_ created\_asset\_id(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Asset:**
Asset ID allocated by the creation of an ASA (only with `itxn` in v5). Application mode only

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ extra\_program\_pages

[Section titled “static extra\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-extra_program_pages)

\* _static_ extra\_program\_pages(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of additional pages for each of the application’s approval and clear state programs. An ExtraProgramPages of 1 means 2048 more total bytes, or 1024 for each program.

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ fee

[Section titled “static fee”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-fee)

\* _static_ fee(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
microalgos

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ first\_valid

[Section titled “static first\_valid”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-first_valid)

\* _static_ first\_valid(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
round number

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ first\_valid\_time

[Section titled “static first\_valid\_time”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-first_valid_time)

\* _static_ first\_valid\_time(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
UNIX timestamp of block before txn.FirstValid. Fails if negative

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ freeze\_asset

[Section titled “static freeze\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset)

\* _static_ freeze\_asset(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Asset:**
Asset ID being frozen or un-frozen

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ freeze\_asset\_account

[Section titled “static freeze\_asset\_account”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset_account)

\* _static_ freeze\_asset\_account(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address of the account whose asset slot is being frozen or un-frozen

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ freeze\_asset\_frozen

[Section titled “static freeze\_asset\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset_frozen)

\* _static_ freeze\_asset\_frozen(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns bool:**
The new frozen value, 0 or 1

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ global\_num\_byte\_slice

[Section titled “static global\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-global_num_byte_slice)

\* _static_ global\_num\_byte\_slice(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of global state byteslices in ApplicationCall

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ global\_num\_uint

[Section titled “static global\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-global_num_uint)

\* _static_ global\_num\_uint(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of global state integers in ApplicationCall

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ group\_index

[Section titled “static group\_index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-group_index)

\* _static_ group\_index(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Position of this transaction within an atomic transaction group. A stand-alone transaction is implicitly element 0 in a group of 1

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ last\_log

[Section titled “static last\_log”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-last_log)

\* _static_ last\_log(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
The last message emitted. Empty bytes if none were emitted. Application mode only

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ last\_valid

[Section titled “static last\_valid”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-last_valid)

\* _static_ last\_valid(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
round number

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ lease

[Section titled “static lease”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-lease)

\* _static_ lease(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
32 byte lease value

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ local\_num\_byte\_slice

[Section titled “static local\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-local_num_byte_slice)

\* _static_ local\_num\_byte\_slice(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of local state byteslices in ApplicationCall

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ local\_num\_uint

[Section titled “static local\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-local_num_uint)

\* _static_ local\_num\_uint(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of local state integers in ApplicationCall

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ logs

[Section titled “static logs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-logs)

\* _static_ logs(t: [int](https://docs.python.org/3/library/functions.html#int), a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Log messages emitted by an application call (only with `itxn` in v5). Application mode only

##### _static_ nonparticipation

[Section titled “static nonparticipation”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-nonparticipation)

\* _static_ nonparticipation(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns bool:**
Marks an account nonparticipating for rewards

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ note

[Section titled “static note”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-note)

\* _static_ note(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Any data up to 1024 bytes

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ num\_accounts

[Section titled “static num\_accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_accounts)

\* _static_ num\_accounts(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of Accounts

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ num\_app\_args

[Section titled “static num\_app\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_app_args)

\* _static_ num\_app\_args(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of ApplicationArgs

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ num\_applications

[Section titled “static num\_applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_applications)

\* _static_ num\_applications(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of Applications

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ num\_approval\_program\_pages

[Section titled “static num\_approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_approval_program_pages)

\* _static_ num\_approval\_program\_pages(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of Approval Program pages

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ num\_assets

[Section titled “static num\_assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_assets)

\* _static_ num\_assets(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of Assets

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ num\_clear\_state\_program\_pages

[Section titled “static num\_clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_clear_state_program_pages)

\* _static_ num\_clear\_state\_program\_pages(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of ClearState Program pages

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ num\_logs

[Section titled “static num\_logs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_logs)

\* _static_ num\_logs(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Number of Logs (only with `itxn` in v5). Application mode only

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ on\_completion

[Section titled “static on\_completion”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-on_completion)

\* _static_ on\_completion(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.OnCompleteAction](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.OnCompleteAction)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns OnCompleteAction:**
ApplicationCall transaction on completion action

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ receiver

[Section titled “static receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-receiver)

\* _static_ receiver(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ reject\_version

[Section titled “static reject\_version”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-reject_version)

\* _static_ reject\_version(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Min AVM version: 12

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Application version for which the txn must reject

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ rekey\_to

[Section titled “static rekey\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-rekey_to)

\* _static_ rekey\_to(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte Sender’s new AuthAddr

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ selection\_pk

[Section titled “static selection\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-selection_pk)

\* _static_ selection\_pk(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ sender

[Section titled “static sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-sender)

\* _static_ sender(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Account:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ state\_proof\_pk

[Section titled “static state\_proof\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-state_proof_pk)

\* _static_ state\_proof\_pk(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
State proof public key

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ tx\_id

[Section titled “static tx\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-tx_id)

\* _static_ tx\_id(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
The computed ID for this transaction. 32 bytes.

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ type

[Section titled “static type”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-type)

\* _static_ type(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
Transaction type as bytes

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ type\_enum

[Section titled “static type\_enum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-type_enum)

\* _static_ type\_enum(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.TransactionType](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.TransactionType)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns TransactionType:**
Transaction type as integer

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ vote\_first

[Section titled “static vote\_first”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_first)

\* _static_ vote\_first(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
The first round that the participation key is valid.

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ vote\_key\_dilution

[Section titled “static vote\_key\_dilution”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_key_dilution)

\* _static_ vote\_key\_dilution(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
Dilution for the 2-level participation key

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ vote\_last

[Section titled “static vote\_last”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_last)

\* _static_ vote\_last(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns UInt64:**
The last round that the participation key is valid.

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ vote\_pk

[Section titled “static vote\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_pk)

\* _static_ vote\_pk(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Bytes:**
32 byte address

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

##### _static_ xfer\_asset

[Section titled “static xfer\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-xfer_asset)

\* _static_ xfer\_asset(t: [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

- **Parameters:** **t** ( [_int_](https://docs.python.org/3/library/functions.html#int)) – transaction group index
- **Returns Asset:**
Asset ID

Native TEAL opcode: [`gitxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gitxn)

#### _class_ algopy.op.GTxn

[Section titled “class algopy.op.GTxn”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopgtxn)

Get values for transactions in the current group
Native TEAL ops: [`gtxns`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxns), [`gtxnsas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxnsas)

##### _static_ accounts

[Section titled “static accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-accounts-1)

\* _static_ accounts(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

Accounts listed in the ApplicationCall transaction

Native TEAL opcode: [`gtxna`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxna), [`gtxnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxnas), [`gtxnsa`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxnsa), [`gtxnsas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxnsas)

##### _static_ amount

[Section titled “static amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-amount-1)

\* _static_ amount(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

microalgos

Native TEAL opcode: [`gtxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxn), [`gtxns`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gtxns)

##### _static_ application\_args

[Section titled “static application\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-application_args-1)

\* _static_ application\_args(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Arguments passed to the application in the ApplicationCall transaction

##### _static_ application\_id

[Section titled “static application\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-application_id-1)

\* _static_ application\_id(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

ApplicationID from ApplicationCall transaction

##### _static_ applications

[Section titled “static applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-applications-1)

\* _static_ applications(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

Foreign Apps listed in the ApplicationCall transaction

##### _static_ approval\_program

[Section titled “static approval\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-approval_program-1)

\* _static_ approval\_program(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Approval program

##### _static_ approval\_program\_pages

[Section titled “static approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-approval_program_pages-1)

\* _static_ approval\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Approval Program as an array of pages

##### _static_ asset\_amount

[Section titled “static asset\_amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_amount-1)

\* _static_ asset\_amount(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

value in Asset’s units

##### _static_ asset\_close\_to

[Section titled “static asset\_close\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_close_to-1)

\* _static_ asset\_close\_to(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ asset\_receiver

[Section titled “static asset\_receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_receiver-1)

\* _static_ asset\_receiver(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ asset\_sender

[Section titled “static asset\_sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_sender-1)

\* _static_ asset\_sender(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address. Source of assets if Sender is the Asset’s Clawback address.

##### _static_ assets

[Section titled “static assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-assets-1)

\* _static_ assets(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Foreign Assets listed in the ApplicationCall transaction

##### _static_ clear\_state\_program

[Section titled “static clear\_state\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-clear_state_program-1)

\* _static_ clear\_state\_program(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Clear state program

##### _static_ clear\_state\_program\_pages

[Section titled “static clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-clear_state_program_pages-1)

\* _static_ clear\_state\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

ClearState Program as an array of pages

##### _static_ close\_remainder\_to

[Section titled “static close\_remainder\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-close_remainder_to-1)

\* _static_ close\_remainder\_to(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ config\_asset

[Section titled “static config\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset-1)

\* _static_ config\_asset(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID in asset config transaction

##### _static_ config\_asset\_clawback

[Section titled “static config\_asset\_clawback”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_clawback-1)

\* _static_ config\_asset\_clawback(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ config\_asset\_decimals

[Section titled “static config\_asset\_decimals”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_decimals-1)

\* _static_ config\_asset\_decimals(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of digits to display after the decimal place when displaying the asset

##### _static_ config\_asset\_default\_frozen

[Section titled “static config\_asset\_default\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_default_frozen-1)

\* _static_ config\_asset\_default\_frozen(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

Whether the asset’s slots are frozen by default or not, 0 or 1

##### _static_ config\_asset\_freeze

[Section titled “static config\_asset\_freeze”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_freeze-1)

\* _static_ config\_asset\_freeze(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ config\_asset\_manager

[Section titled “static config\_asset\_manager”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_manager-1)

\* _static_ config\_asset\_manager(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ config\_asset\_metadata\_hash

[Section titled “static config\_asset\_metadata\_hash”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_metadata_hash-1)

\* _static_ config\_asset\_metadata\_hash(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte commitment to unspecified asset metadata

##### _static_ config\_asset\_name

[Section titled “static config\_asset\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_name-1)

\* _static_ config\_asset\_name(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

The asset name

##### _static_ config\_asset\_reserve

[Section titled “static config\_asset\_reserve”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_reserve-1)

\* _static_ config\_asset\_reserve(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ config\_asset\_total

[Section titled “static config\_asset\_total”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_total-1)

\* _static_ config\_asset\_total(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Total number of units of this asset created

##### _static_ config\_asset\_unit\_name

[Section titled “static config\_asset\_unit\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_unit_name-1)

\* _static_ config\_asset\_unit\_name(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Unit name of the asset

##### _static_ config\_asset\_url

[Section titled “static config\_asset\_url”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_url-1)

\* _static_ config\_asset\_url(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

URL

##### _static_ created\_application\_id

[Section titled “static created\_application\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-created_application_id-1)

\* _static_ created\_application\_id(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

ApplicationID allocated by the creation of an application (only with `itxn` in v5). Application mode only

##### _static_ created\_asset\_id

[Section titled “static created\_asset\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-created_asset_id-1)

\* _static_ created\_asset\_id(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID allocated by the creation of an ASA (only with `itxn` in v5). Application mode only

##### _static_ extra\_program\_pages

[Section titled “static extra\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-extra_program_pages-1)

\* _static_ extra\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of additional pages for each of the application’s approval and clear state programs. An ExtraProgramPages of 1 means 2048 more total bytes, or 1024 for each program.

##### _static_ fee

[Section titled “static fee”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-fee-1)

\* _static_ fee(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

microalgos

##### _static_ first\_valid

[Section titled “static first\_valid”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-first_valid-1)

\* _static_ first\_valid(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

round number

##### _static_ first\_valid\_time

[Section titled “static first\_valid\_time”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-first_valid_time-1)

\* _static_ first\_valid\_time(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

UNIX timestamp of block before txn.FirstValid. Fails if negative

##### _static_ freeze\_asset

[Section titled “static freeze\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset-1)

\* _static_ freeze\_asset(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID being frozen or un-frozen

##### _static_ freeze\_asset\_account

[Section titled “static freeze\_asset\_account”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset_account-1)

\* _static_ freeze\_asset\_account(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address of the account whose asset slot is being frozen or un-frozen

##### _static_ freeze\_asset\_frozen

[Section titled “static freeze\_asset\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset_frozen-1)

\* _static_ freeze\_asset\_frozen(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

The new frozen value, 0 or 1

##### _static_ global\_num\_byte\_slice

[Section titled “static global\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-global_num_byte_slice-1)

\* _static_ global\_num\_byte\_slice(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of global state byteslices in ApplicationCall

##### _static_ global\_num\_uint

[Section titled “static global\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-global_num_uint-1)

\* _static_ global\_num\_uint(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of global state integers in ApplicationCall

##### _static_ group\_index

[Section titled “static group\_index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-group_index-1)

\* _static_ group\_index(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Position of this transaction within an atomic transaction group. A stand-alone transaction is implicitly element 0 in a group of 1

##### _static_ last\_log

[Section titled “static last\_log”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-last_log-1)

\* _static_ last\_log(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

The last message emitted. Empty bytes if none were emitted. Application mode only

##### _static_ last\_valid

[Section titled “static last\_valid”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-last_valid-1)

\* _static_ last\_valid(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

round number

##### _static_ lease

[Section titled “static lease”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-lease-1)

\* _static_ lease(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte lease value

##### _static_ local\_num\_byte\_slice

[Section titled “static local\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-local_num_byte_slice-1)

\* _static_ local\_num\_byte\_slice(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of local state byteslices in ApplicationCall

##### _static_ local\_num\_uint

[Section titled “static local\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-local_num_uint-1)

\* _static_ local\_num\_uint(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of local state integers in ApplicationCall

##### _static_ logs

[Section titled “static logs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-logs-1)

\* _static_ logs(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Log messages emitted by an application call (only with `itxn` in v5). Application mode only

##### _static_ nonparticipation

[Section titled “static nonparticipation”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-nonparticipation-1)

\* _static_ nonparticipation(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)\*

Marks an account nonparticipating for rewards

##### _static_ note

[Section titled “static note”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-note-1)

\* _static_ note(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Any data up to 1024 bytes

##### _static_ num\_accounts

[Section titled “static num\_accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_accounts-1)

\* _static_ num\_accounts(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Accounts

##### _static_ num\_app\_args

[Section titled “static num\_app\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_app_args-1)

\* _static_ num\_app\_args(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of ApplicationArgs

##### _static_ num\_applications

[Section titled “static num\_applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_applications-1)

\* _static_ num\_applications(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Applications

##### _static_ num\_approval\_program\_pages

[Section titled “static num\_approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_approval_program_pages-1)

\* _static_ num\_approval\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Approval Program pages

##### _static_ num\_assets

[Section titled “static num\_assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_assets-1)

\* _static_ num\_assets(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Assets

##### _static_ num\_clear\_state\_program\_pages

[Section titled “static num\_clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_clear_state_program_pages-1)

\* _static_ num\_clear\_state\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of ClearState Program pages

##### _static_ num\_logs

[Section titled “static num\_logs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_logs-1)

\* _static_ num\_logs(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Logs (only with `itxn` in v5). Application mode only

##### _static_ on\_completion

[Section titled “static on\_completion”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-on_completion-1)

\* _static_ on\_completion(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.OnCompleteAction](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.OnCompleteAction)\*

ApplicationCall transaction on completion action

##### _static_ receiver

[Section titled “static receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-receiver-1)

\* _static_ receiver(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ reject\_version

[Section titled “static reject\_version”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-reject_version-1)

\* _static_ reject\_version(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Min AVM version: 12

- **Returns UInt64:**
Application version for which the txn must reject

##### _static_ rekey\_to

[Section titled “static rekey\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-rekey_to-1)

\* _static_ rekey\_to(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte Sender’s new AuthAddr

##### _static_ selection\_pk

[Section titled “static selection\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-selection_pk-1)

\* _static_ selection\_pk(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte address

##### _static_ sender

[Section titled “static sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-sender-1)

\* _static_ sender(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

##### _static_ state\_proof\_pk

[Section titled “static state\_proof\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-state_proof_pk-1)

\* _static_ state\_proof\_pk(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

State proof public key

##### _static_ tx\_id

[Section titled “static tx\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-tx_id-1)

\* _static_ tx\_id(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

The computed ID for this transaction. 32 bytes.

##### _static_ type

[Section titled “static type”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-type-1)

\* _static_ type(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Transaction type as bytes

##### _static_ type\_enum

[Section titled “static type\_enum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-type_enum-1)

\* _static_ type\_enum(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.TransactionType](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.TransactionType)\*

Transaction type as integer

##### _static_ vote\_first

[Section titled “static vote\_first”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_first-1)

\* _static_ vote\_first(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

The first round that the participation key is valid.

##### _static_ vote\_key\_dilution

[Section titled “static vote\_key\_dilution”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_key_dilution-1)

\* _static_ vote\_key\_dilution(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Dilution for the 2-level participation key

##### _static_ vote\_last

[Section titled “static vote\_last”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_last-1)

\* _static_ vote\_last(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

The last round that the participation key is valid.

##### _static_ vote\_pk

[Section titled “static vote\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_pk-1)

\* _static_ vote\_pk(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte address

##### _static_ xfer\_asset

[Section titled “static xfer\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-xfer_asset-1)

\* _static_ xfer\_asset(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID

#### _class_ algopy.op.Global

[Section titled “class algopy.op.Global”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopglobal)

Get Global values
Native TEAL op: [`global`](https://dev.algorand.co/reference/algorand-teal/opcodes/#global)

##### asset\_create\_min\_balance \*: \[Final\]

[Section titled “asset\_create\_min\_balance \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#asset_create_min_balance--final)

\_asset\_create\_min\_balance \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The additional minimum balance required to create (and opt-in to) an asset.

##### asset\_opt\_in\_min\_balance \*: \[Final\]

[Section titled “asset\_opt\_in\_min\_balance \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#asset_opt_in_min_balance--final)

\_asset\_opt\_in\_min\_balance \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The additional minimum balance required to opt-in to an asset.

##### caller\_application\_address \*: \[Final\]

[Section titled “caller\_application\_address \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#caller_application_address--final)

\_caller\_application\_address \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

The application address of the application that called this application. ZeroAddress if this application is at the top-level. Application mode only.

##### caller\_application\_id \*: \[Final\]

[Section titled “caller\_application\_id \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#caller_application_id--final)

\_caller\_application\_id \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The application ID of the application that called this application. 0 if this application is at the top-level. Application mode only.

##### creator\_address \*: \[Final\]

[Section titled “creator\_address \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#creator_address--final)

\_creator\_address \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

Address of the creator of the current application. Application mode only.

##### current\_application\_address \*: \[Final\]

[Section titled “current\_application\_address \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#current_application_address--final)

\_current\_application\_address \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

Address that the current application controls. Application mode only.

##### current\_application\_id \*: \[Final\]

[Section titled “current\_application\_id \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#current_application_id--final)

\_current\_application\_id \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\]\*\*

Ellipsis

ID of current application executing. Application mode only.

##### genesis\_hash \*: \[Final\]

[Section titled “genesis\_hash \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#genesis_hash--final)

\_genesis\_hash \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

The Genesis Hash for the network.

##### group\_id \*: \[Final\]

[Section titled “group\_id \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#group_id--final)

\_group\_id \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

ID of the transaction group. 32 zero bytes if the transaction is not part of a group.

##### group\_size \*: \[Final\]

[Section titled “group\_size \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#group_size--final)

\_group\_size \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of transactions in this atomic transaction group. At least 1

##### latest\_timestamp \*: \[Final\]

[Section titled “latest\_timestamp \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#latest_timestamp--final)

\_latest\_timestamp \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Last confirmed block UNIX timestamp. Fails if negative. Application mode only.

##### logic\_sig\_version \*: \[Final\]

[Section titled “logic\_sig\_version \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#logic_sig_version--final)

\_logic\_sig\_version \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Maximum supported version

##### max\_txn\_life \*: \[Final\]

[Section titled “max\_txn\_life \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#max_txn_life--final)

\_max\_txn\_life \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

rounds

##### min\_balance \*: \[Final\]

[Section titled “min\_balance \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#min_balance--final)

\_min\_balance \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

microalgos

##### min\_txn\_fee \*: \[Final\]

[Section titled “min\_txn\_fee \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#min_txn_fee--final)

\_min\_txn\_fee \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

microalgos

##### _static_ opcode\_budget

[Section titled “static opcode\_budget”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-opcode_budget)

\* _static_ opcode\_budget() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

The remaining cost that can be spent by opcodes in this program.

Native TEAL opcode: [`global`](https://dev.algorand.co/reference/algorand-teal/opcodes/#global)

##### payouts\_enabled \*: \[Final\]

[Section titled “payouts\_enabled \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#payouts_enabled--final)

\_payouts\_enabled \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [bool](https://docs.python.org/3/library/functions.html#bool)\]\*\*

Ellipsis

Whether block proposal payouts are enabled.
Min AVM version: 11

##### payouts\_go\_online\_fee \*: \[Final\]

[Section titled “payouts\_go\_online\_fee \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#payouts_go_online_fee--final)

\_payouts\_go\_online\_fee \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The fee required in a keyreg transaction to make an account incentive eligible.
Min AVM version: 11

##### payouts\_max\_balance \*: \[Final\]

[Section titled “payouts\_max\_balance \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#payouts_max_balance--final)

\_payouts\_max\_balance \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The maximum balance an account can have in the agreement round to receive block payouts in the proposal round.
Min AVM version: 11

##### payouts\_min\_balance \*: \[Final\]

[Section titled “payouts\_min\_balance \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#payouts_min_balance--final)

\_payouts\_min\_balance \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The minimum balance an account must have in the agreement round to receive block payouts in the proposal round.
Min AVM version: 11

##### payouts\_percent \*: \[Final\]

[Section titled “payouts\_percent \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#payouts_percent--final)

\_payouts\_percent \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The percentage of transaction fees in a block that can be paid to the block proposer.
Min AVM version: 11

##### round \*: \[Final\]

[Section titled “round \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#round--final)

\_round \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Current round number. Application mode only.

##### zero\_address \*: \[Final\]

[Section titled “zero\_address \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#zero_address--final)

\_zero\_address \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address of all zero bytes

#### _class_ algopy.op.ITxn

[Section titled “class algopy.op.ITxn”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopitxn)

Get values for the last inner transaction
Native TEAL ops: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn), [`itxnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxnas)

##### _static_ accounts

[Section titled “static accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-accounts-2)

\* _static_ accounts(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

Accounts listed in the ApplicationCall transaction

Native TEAL opcode: [`itxna`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxna), [`itxnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxnas)

##### _static_ amount

[Section titled “static amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-amount-2)

\* _static_ amount() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

microalgos

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ application\_args

[Section titled “static application\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-application_args-2)

\* _static_ application\_args(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Arguments passed to the application in the ApplicationCall transaction

##### _static_ application\_id

[Section titled “static application\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-application_id-2)

\* _static_ application\_id() → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

ApplicationID from ApplicationCall transaction

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ applications

[Section titled “static applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-applications-2)

\* _static_ applications(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

Foreign Apps listed in the ApplicationCall transaction

##### _static_ approval\_program

[Section titled “static approval\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-approval_program-2)

\* _static_ approval\_program() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Approval program

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ approval\_program\_pages

[Section titled “static approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-approval_program_pages-2)

\* _static_ approval\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Approval Program as an array of pages

##### _static_ asset\_amount

[Section titled “static asset\_amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_amount-2)

\* _static_ asset\_amount() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

value in Asset’s units

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ asset\_close\_to

[Section titled “static asset\_close\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_close_to-2)

\* _static_ asset\_close\_to() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ asset\_receiver

[Section titled “static asset\_receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_receiver-2)

\* _static_ asset\_receiver() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ asset\_sender

[Section titled “static asset\_sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-asset_sender-2)

\* _static_ asset\_sender() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address. Source of assets if Sender is the Asset’s Clawback address.

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ assets

[Section titled “static assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-assets-2)

\* _static_ assets(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Foreign Assets listed in the ApplicationCall transaction

##### _static_ clear\_state\_program

[Section titled “static clear\_state\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-clear_state_program-2)

\* _static_ clear\_state\_program() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Clear state program

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ clear\_state\_program\_pages

[Section titled “static clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-clear_state_program_pages-2)

\* _static_ clear\_state\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

ClearState Program as an array of pages

##### _static_ close\_remainder\_to

[Section titled “static close\_remainder\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-close_remainder_to-2)

\* _static_ close\_remainder\_to() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset

[Section titled “static config\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset-2)

\* _static_ config\_asset() → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID in asset config transaction

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_clawback

[Section titled “static config\_asset\_clawback”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_clawback-2)

\* _static_ config\_asset\_clawback() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_decimals

[Section titled “static config\_asset\_decimals”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_decimals-2)

\* _static_ config\_asset\_decimals() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of digits to display after the decimal place when displaying the asset

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_default\_frozen

[Section titled “static config\_asset\_default\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_default_frozen-2)

\* _static_ config\_asset\_default\_frozen() → [bool](https://docs.python.org/3/library/functions.html#bool)\*

Whether the asset’s slots are frozen by default or not, 0 or 1

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_freeze

[Section titled “static config\_asset\_freeze”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_freeze-2)

\* _static_ config\_asset\_freeze() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_manager

[Section titled “static config\_asset\_manager”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_manager-2)

\* _static_ config\_asset\_manager() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_metadata\_hash

[Section titled “static config\_asset\_metadata\_hash”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_metadata_hash-2)

\* _static_ config\_asset\_metadata\_hash() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte commitment to unspecified asset metadata

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_name

[Section titled “static config\_asset\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_name-2)

\* _static_ config\_asset\_name() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

The asset name

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_reserve

[Section titled “static config\_asset\_reserve”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_reserve-2)

\* _static_ config\_asset\_reserve() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_total

[Section titled “static config\_asset\_total”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_total-2)

\* _static_ config\_asset\_total() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Total number of units of this asset created

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_unit\_name

[Section titled “static config\_asset\_unit\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_unit_name-2)

\* _static_ config\_asset\_unit\_name() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Unit name of the asset

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ config\_asset\_url

[Section titled “static config\_asset\_url”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-config_asset_url-2)

\* _static_ config\_asset\_url() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

URL

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ created\_application\_id

[Section titled “static created\_application\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-created_application_id-2)

\* _static_ created\_application\_id() → [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\*

ApplicationID allocated by the creation of an application (only with `itxn` in v5). Application mode only

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ created\_asset\_id

[Section titled “static created\_asset\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-created_asset_id-2)

\* _static_ created\_asset\_id() → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID allocated by the creation of an ASA (only with `itxn` in v5). Application mode only

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ extra\_program\_pages

[Section titled “static extra\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-extra_program_pages-2)

\* _static_ extra\_program\_pages() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ fee

[Section titled “static fee”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-fee-2)

\* _static_ fee() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

microalgos

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ first\_valid

[Section titled “static first\_valid”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-first_valid-2)

\* _static_ first\_valid() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

round number

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ first\_valid\_time

[Section titled “static first\_valid\_time”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-first_valid_time-2)

\* _static_ first\_valid\_time() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

UNIX timestamp of block before txn.FirstValid. Fails if negative

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ freeze\_asset

[Section titled “static freeze\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset-2)

\* _static_ freeze\_asset() → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID being frozen or un-frozen

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ freeze\_asset\_account

[Section titled “static freeze\_asset\_account”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset_account-2)

\* _static_ freeze\_asset\_account() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address of the account whose asset slot is being frozen or un-frozen

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ freeze\_asset\_frozen

[Section titled “static freeze\_asset\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-freeze_asset_frozen-2)

\* _static_ freeze\_asset\_frozen() → [bool](https://docs.python.org/3/library/functions.html#bool)\*

The new frozen value, 0 or 1

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ global\_num\_byte\_slice

[Section titled “static global\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-global_num_byte_slice-2)

\* _static_ global\_num\_byte\_slice() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of global state byteslices in ApplicationCall

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ global\_num\_uint

[Section titled “static global\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-global_num_uint-2)

\* _static_ global\_num\_uint() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of global state integers in ApplicationCall

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ group\_index

[Section titled “static group\_index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-group_index-2)

\* _static_ group\_index() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Position of this transaction within an atomic transaction group. A stand-alone transaction is implicitly element 0 in a group of 1

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ last\_log

[Section titled “static last\_log”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-last_log-2)

\* _static_ last\_log() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

The last message emitted. Empty bytes if none were emitted. Application mode only

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ last\_valid

[Section titled “static last\_valid”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-last_valid-2)

\* _static_ last\_valid() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

round number

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ lease

[Section titled “static lease”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-lease-2)

\* _static_ lease() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte lease value

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ local\_num\_byte\_slice

[Section titled “static local\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-local_num_byte_slice-2)

\* _static_ local\_num\_byte\_slice() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of local state byteslices in ApplicationCall

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ local\_num\_uint

[Section titled “static local\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-local_num_uint-2)

\* _static_ local\_num\_uint() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of local state integers in ApplicationCall

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ logs

[Section titled “static logs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-logs-2)

\* _static_ logs(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Log messages emitted by an application call (only with `itxn` in v5). Application mode only

##### _static_ nonparticipation

[Section titled “static nonparticipation”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-nonparticipation-2)

\* _static_ nonparticipation() → [bool](https://docs.python.org/3/library/functions.html#bool)\*

Marks an account nonparticipating for rewards

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ note

[Section titled “static note”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-note-2)

\* _static_ note() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Any data up to 1024 bytes

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ num\_accounts

[Section titled “static num\_accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_accounts-2)

\* _static_ num\_accounts() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Accounts

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ num\_app\_args

[Section titled “static num\_app\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_app_args-2)

\* _static_ num\_app\_args() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of ApplicationArgs

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ num\_applications

[Section titled “static num\_applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_applications-2)

\* _static_ num\_applications() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Applications

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ num\_approval\_program\_pages

[Section titled “static num\_approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_approval_program_pages-2)

\* _static_ num\_approval\_program\_pages() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Approval Program pages

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ num\_assets

[Section titled “static num\_assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_assets-2)

\* _static_ num\_assets() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Assets

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ num\_clear\_state\_program\_pages

[Section titled “static num\_clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_clear_state_program_pages-2)

\* _static_ num\_clear\_state\_program\_pages() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of ClearState Program pages

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ num\_logs

[Section titled “static num\_logs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-num_logs-2)

\* _static_ num\_logs() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Number of Logs (only with `itxn` in v5). Application mode only

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ on\_completion

[Section titled “static on\_completion”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-on_completion-2)

\* _static_ on\_completion() → [algopy.OnCompleteAction](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.OnCompleteAction)\*

ApplicationCall transaction on completion action

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ receiver

[Section titled “static receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-receiver-2)

\* _static_ receiver() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ reject\_version

[Section titled “static reject\_version”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-reject_version-2)

\* _static_ reject\_version() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Min AVM version: 12

- **Returns UInt64:**
Application version for which the txn must reject

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ rekey\_to

[Section titled “static rekey\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-rekey_to-2)

\* _static_ rekey\_to() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte Sender’s new AuthAddr

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ selection\_pk

[Section titled “static selection\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-selection_pk-2)

\* _static_ selection\_pk() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ sender

[Section titled “static sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-sender-2)

\* _static_ sender() → [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ state\_proof\_pk

[Section titled “static state\_proof\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-state_proof_pk-2)

\* _static_ state\_proof\_pk() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

State proof public key

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ tx\_id

[Section titled “static tx\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-tx_id-2)

\* _static_ tx\_id() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

The computed ID for this transaction. 32 bytes.

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ type

[Section titled “static type”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-type-2)

\* _static_ type() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Transaction type as bytes

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ type\_enum

[Section titled “static type\_enum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-type_enum-2)

\* _static_ type\_enum() → [algopy.TransactionType](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.TransactionType)\*

Transaction type as integer

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ vote\_first

[Section titled “static vote\_first”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_first-2)

\* _static_ vote\_first() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

The first round that the participation key is valid.

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ vote\_key\_dilution

[Section titled “static vote\_key\_dilution”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_key_dilution-2)

\* _static_ vote\_key\_dilution() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Dilution for the 2-level participation key

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ vote\_last

[Section titled “static vote\_last”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_last-2)

\* _static_ vote\_last() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

The last round that the participation key is valid.

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ vote\_pk

[Section titled “static vote\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-vote_pk-2)

\* _static_ vote\_pk() → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

32 byte address

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

##### _static_ xfer\_asset

[Section titled “static xfer\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-xfer_asset-2)

\* _static_ xfer\_asset() → [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\*

Asset ID

Native TEAL opcode: [`itxn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn)

#### _class_ algopy.op.ITxnCreate

[Section titled “class algopy.op.ITxnCreate”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopitxncreate)

Create inner transactions
Native TEAL ops: [`itxn_begin`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_begin), [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field), [`itxn_next`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_next), [`itxn_submit`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_submit)

##### _static_ begin

[Section titled “static begin”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-begin)

\* _static_ begin() → [None](https://docs.python.org/3/library/constants.html#None)\*

begin preparation of a new inner transaction in a new transaction group
`itxn_begin` initializes Sender to the application address; Fee to the minimum allowable, taking into account MinTxnFee and credit from overpaying in earlier transactions; FirstValid/LastValid to the values in the invoking transaction, and all other fields to zero or empty values.

Native TEAL opcode: [`itxn_begin`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_begin)

##### _static_ next

[Section titled “static next”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-next)

\* _static_ next() → [None](https://docs.python.org/3/library/constants.html#None)\*

begin preparation of a new inner transaction in the same transaction group
`itxn_next` initializes the transaction exactly as `itxn_begin` does

Native TEAL opcode: [`itxn_next`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_next)

##### _static_ set\_accounts

[Section titled “static set\_accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_accounts)

\* _static_ set\_accounts(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – Accounts listed in the ApplicationCall transaction

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_amount

[Section titled “static set\_amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_amount)

\* _static_ set\_amount(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – microalgos

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_application\_args

[Section titled “static set\_application\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_application_args)

\* _static_ set\_application\_args(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – Arguments passed to the application in the ApplicationCall transaction

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_application\_id

[Section titled “static set\_application\_id”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_application_id)

\* _static_ set\_application\_id(a: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Application_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) _\|_ [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – ApplicationID from ApplicationCall transaction

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_applications

[Section titled “static set\_applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_applications)

\* _static_ set\_applications(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Foreign Apps listed in the ApplicationCall transaction

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_approval\_program

[Section titled “static set\_approval\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_approval_program)

\* _static_ set\_approval\_program(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – Approval program

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_approval\_program\_pages

[Section titled “static set\_approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_approval_program_pages)

\* _static_ set\_approval\_program\_pages(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – Approval Program as an array of pages

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_asset\_amount

[Section titled “static set\_asset\_amount”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_asset_amount)

\* _static_ set\_asset\_amount(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – value in Asset’s units

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_asset\_close\_to

[Section titled “static set\_asset\_close\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_asset_close_to)

\* _static_ set\_asset\_close\_to(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_asset\_receiver

[Section titled “static set\_asset\_receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_asset_receiver)

\* _static_ set\_asset\_receiver(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_asset\_sender

[Section titled “static set\_asset\_sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_asset_sender)

\* _static_ set\_asset\_sender(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address. Source of assets if Sender is the Asset’s Clawback address.

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_assets

[Section titled “static set\_assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_assets)

\* _static_ set\_assets(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Foreign Assets listed in the ApplicationCall transaction

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_clear\_state\_program

[Section titled “static set\_clear\_state\_program”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_clear_state_program)

\* _static_ set\_clear\_state\_program(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – Clear state program

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_clear\_state\_program\_pages

[Section titled “static set\_clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_clear_state_program_pages)

\* _static_ set\_clear\_state\_program\_pages(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – ClearState Program as an array of pages

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_close\_remainder\_to

[Section titled “static set\_close\_remainder\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_close_remainder_to)

\* _static_ set\_close\_remainder\_to(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset

[Section titled “static set\_config\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset)

\* _static_ set\_config\_asset(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Asset_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) _\|_ [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Asset ID in asset config transaction

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_clawback

[Section titled “static set\_config\_asset\_clawback”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_clawback)

\* _static_ set\_config\_asset\_clawback(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_decimals

[Section titled “static set\_config\_asset\_decimals”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_decimals)

\* _static_ set\_config\_asset\_decimals(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Number of digits to display after the decimal place when displaying the asset

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_default\_frozen

[Section titled “static set\_config\_asset\_default\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_default_frozen)

\* _static_ set\_config\_asset\_default\_frozen(a: [bool](https://docs.python.org/3/library/functions.html#bool), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_bool_](https://docs.python.org/3/library/functions.html#bool)) – Whether the asset’s slots are frozen by default or not, 0 or 1

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_freeze

[Section titled “static set\_config\_asset\_freeze”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_freeze)

\* _static_ set\_config\_asset\_freeze(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_manager

[Section titled “static set\_config\_asset\_manager”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_manager)

\* _static_ set\_config\_asset\_manager(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_metadata\_hash

[Section titled “static set\_config\_asset\_metadata\_hash”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_metadata_hash)

\* _static_ set\_config\_asset\_metadata\_hash(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – 32 byte commitment to unspecified asset metadata

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_name

[Section titled “static set\_config\_asset\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_name)

\* _static_ set\_config\_asset\_name(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – The asset name

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_reserve

[Section titled “static set\_config\_asset\_reserve”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_reserve)

\* _static_ set\_config\_asset\_reserve(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_total

[Section titled “static set\_config\_asset\_total”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_total)

\* _static_ set\_config\_asset\_total(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Total number of units of this asset created

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_unit\_name

[Section titled “static set\_config\_asset\_unit\_name”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_unit_name)

\* _static_ set\_config\_asset\_unit\_name(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – Unit name of the asset

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_config\_asset\_url

[Section titled “static set\_config\_asset\_url”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_config_asset_url)

\* _static_ set\_config\_asset\_url(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – URL

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_extra\_program\_pages

[Section titled “static set\_extra\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_extra_program_pages)

\* _static_ set\_extra\_program\_pages(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Number of additional pages for each of the application’s approval and clear state programs. An ExtraProgramPages of 1 means 2048 more total bytes, or 1024 for each program.

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_fee

[Section titled “static set\_fee”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_fee)

\* _static_ set\_fee(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_freeze\_asset

[Section titled “static set\_freeze\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_freeze_asset)

\* _static_ set\_freeze\_asset(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Asset_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) _\|_ [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Asset ID being frozen or un-frozen

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_freeze\_asset\_account

[Section titled “static set\_freeze\_asset\_account”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_freeze_asset_account)

\* _static_ set\_freeze\_asset\_account(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address of the account whose asset slot is being frozen or un-frozen

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_freeze\_asset\_frozen

[Section titled “static set\_freeze\_asset\_frozen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_freeze_asset_frozen)

\* _static_ set\_freeze\_asset\_frozen(a: [bool](https://docs.python.org/3/library/functions.html#bool), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_bool_](https://docs.python.org/3/library/functions.html#bool)) – The new frozen value, 0 or 1

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_global\_num\_byte\_slice

[Section titled “static set\_global\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_global_num_byte_slice)

\* _static_ set\_global\_num\_byte\_slice(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Number of global state byteslices in ApplicationCall

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_global\_num\_uint

[Section titled “static set\_global\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_global_num_uint)

\* _static_ set\_global\_num\_uint(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Number of global state integers in ApplicationCall

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_local\_num\_byte\_slice

[Section titled “static set\_local\_num\_byte\_slice”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_local_num_byte_slice)

\* _static_ set\_local\_num\_byte\_slice(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Number of local state byteslices in ApplicationCall

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_local\_num\_uint

[Section titled “static set\_local\_num\_uint”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_local_num_uint)

\* _static_ set\_local\_num\_uint(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Number of local state integers in ApplicationCall

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_nonparticipation

[Section titled “static set\_nonparticipation”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_nonparticipation)

\* _static_ set\_nonparticipation(a: [bool](https://docs.python.org/3/library/functions.html#bool), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_bool_](https://docs.python.org/3/library/functions.html#bool)) – Marks an account nonparticipating for rewards

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_note

[Section titled “static set\_note”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_note)

\* _static_ set\_note(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – Any data up to 1024 bytes

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_on\_completion

[Section titled “static set\_on\_completion”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_on_completion)

\* _static_ set\_on\_completion(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – ApplicationCall transaction on completion action

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_receiver

[Section titled “static set\_receiver”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_receiver)

\* _static_ set\_receiver(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_reject\_version

[Section titled “static set\_reject\_version”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_reject_version)

\* _static_ set\_reject\_version(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

Min AVM version: 12

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Application version for which the txn must reject

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_rekey\_to

[Section titled “static set\_rekey\_to”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_rekey_to)

\* _static_ set\_rekey\_to(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte Sender’s new AuthAddr

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_selection\_pk

[Section titled “static set\_selection\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_selection_pk)

\* _static_ set\_selection\_pk(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_sender

[Section titled “static set\_sender”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_sender)

\* _static_ set\_sender(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Account_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)) – 32 byte address

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_state\_proof\_pk

[Section titled “static set\_state\_proof\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_state_proof_pk)

\* _static_ set\_state\_proof\_pk(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – State proof public key

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_type

[Section titled “static set\_type”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_type)

\* _static_ set\_type(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Bytes_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) _\|_ [_bytes_](https://docs.python.org/3/library/stdtypes.html#bytes)) – Transaction type as bytes

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_type\_enum

[Section titled “static set\_type\_enum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_type_enum)

\* _static_ set\_type\_enum(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Transaction type as integer

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_vote\_first

[Section titled “static set\_vote\_first”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_vote_first)

\* _static_ set\_vote\_first(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – The first round that the participation key is valid.

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_vote\_key\_dilution

[Section titled “static set\_vote\_key\_dilution”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_vote_key_dilution)

\* _static_ set\_vote\_key\_dilution(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Dilution for the 2-level participation key

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_vote\_last

[Section titled “static set\_vote\_last”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_vote_last)

\* _static_ set\_vote\_last(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – The last round that the participation key is valid.

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_vote\_pk

[Section titled “static set\_vote\_pk”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_vote_pk)

\* _static_ set\_vote\_pk(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ set\_xfer\_asset

[Section titled “static set\_xfer\_asset”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-set_xfer_asset)

\* _static_ set\_xfer\_asset(a: [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

- **Parameters:** **a** ( [_Asset_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset) _\|_ [_UInt64_](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) _\|_ [_int_](https://docs.python.org/3/library/functions.html#int)) – Asset ID

Native TEAL opcode: [`itxn_field`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_field)

##### _static_ submit

[Section titled “static submit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-submit)

\* _static_ submit() → [None](https://docs.python.org/3/library/constants.html#None)\*

execute the current inner transaction group. Fail if executing this group would exceed the inner transaction limit, or if any transaction in the group fails.
`itxn_submit` resets the current transaction so that it can not be resubmitted. A new `itxn_begin` is required to prepare another inner transaction.

Native TEAL opcode: [`itxn_submit`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itxn_submit)

#### _class_ algopy.op.JsonRef

[Section titled “class algopy.op.JsonRef”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopjsonref)

key B’s value, of type R, from a [valid](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/) utf-8 encoded json object A _Warning_: Usage should be restricted to very rare use cases, as JSON decoding is expensive and quite limited. In addition, JSON objects are large and not optimized for size. Almost all smart contracts should use simpler and smaller methods (such as the [ABI](https://arc.algorand.foundation/ARCs/arc-0004). This opcode should only be used in cases where JSON is only available option, e.g. when a third-party only signs JSON.
Native TEAL op: [`json_ref`](https://dev.algorand.co/reference/algorand-teal/opcodes/#json_ref)

##### _static_ json\_object

[Section titled “static json\_object”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-json_object)

\* _static_ json\_object(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Native TEAL opcode: [`json_ref`](https://dev.algorand.co/reference/algorand-teal/opcodes/#json_ref)

##### _static_ json\_string

[Section titled “static json\_string”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-json_string)

\* _static_ json\_string(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Native TEAL opcode: [`json_ref`](https://dev.algorand.co/reference/algorand-teal/opcodes/#json_ref)

##### _static_ json\_uint64

[Section titled “static json\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-json_uint64)

\* _static_ json\_uint64(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Native TEAL opcode: [`json_ref`](https://dev.algorand.co/reference/algorand-teal/opcodes/#json_ref)

#### _class_ algopy.op.MiMCConfigurations

[Section titled “class algopy.op.MiMCConfigurations”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopmimcconfigurations)

Available values for the `Mimc Configurations` enum

##### Initialization

[Section titled “Initialization”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#initialization-3)

Initialize self. See help(type(self)) for accurate signature.

##### BLS12\_381Mp111 \*: \[algopy.op.MiMCConfigurations\]

[Section titled “BLS12\_381Mp111 \*: \[algopy.op.MiMCConfigurations\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#bls12_381mp111--algopyopmimcconfigurations)

\_BLS12\_381Mp111 \_: [algopy.op.MiMCConfigurations](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.MiMCConfigurations)\*\*

Ellipsis

MiMC configuration for the BLS12-381 curve with Miyaguchi-Preneel mode, 111 rounds, exponent 5, seed “seed”
Min AVM version: 11

##### BN254Mp110 \*: \[algopy.op.MiMCConfigurations\]

[Section titled “BN254Mp110 \*: \[algopy.op.MiMCConfigurations\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#bn254mp110--algopyopmimcconfigurations)

\_BN254Mp110 \_: [algopy.op.MiMCConfigurations](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.MiMCConfigurations)\*\*

Ellipsis

MiMC configuration for the BN254 curve with Miyaguchi-Preneel mode, 110 rounds, exponent 5, seed “seed”
Min AVM version: 11

##### \_\_add\_\_

[Section titled “\_\_add\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__add__-3)

_\_\_add\_\_()_

Return self+value.

##### \_\_contains\_\_

[Section titled “\_\_contains\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__contains__-3)

_\_\_contains\_\_()_

Return bool(key in self).

##### \_\_delattr\_\_

[Section titled “\_\_delattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__delattr__-3)

_\_\_delattr\_\_()_

Implement delattr(self, name).

##### \_\_dir\_\_

[Section titled “\_\_dir\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__dir__-3)

_\_\_dir\_\_()_

Default dir() implementation.

##### \_\_eq\_\_

[Section titled “\_\_eq\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__eq__-3)

_\_\_eq\_\_()_

Return self==value.

##### \_\_format\_\_

[Section titled “\_\_format\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__format__-3)

_\_\_format\_\_()_

Return a formatted version of the string as described by format\_spec.

##### \_\_ge\_\_

[Section titled “\_\_ge\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ge__-3)

_\_\_ge\_\_()_

Return self>=value.

##### \_\_getattribute\_\_

[Section titled “\_\_getattribute\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getattribute__-3)

_\_\_getattribute\_\_()_

Return getattr(self, name).

##### \_\_getitem\_\_

[Section titled “\_\_getitem\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getitem__-3)

_\_\_getitem\_\_()_

Return self\[key\].

##### \_\_getstate\_\_

[Section titled “\_\_getstate\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getstate__-3)

_\_\_getstate\_\_()_

Helper for pickle.

##### \_\_gt\_\_

[Section titled “\_\_gt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__gt__-3)

_\_\_gt\_\_()_

Return self>value.

##### \_\_hash\_\_

[Section titled “\_\_hash\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__hash__-3)

_\_\_hash\_\_()_

Return hash(self).

##### \_\_iter\_\_

[Section titled “\_\_iter\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__iter__-3)

_\_\_iter\_\_()_

Implement iter(self).

##### \_\_le\_\_

[Section titled “\_\_le\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__le__-3)

_\_\_le\_\_()_

Return self<=value.

##### \_\_len\_\_

[Section titled “\_\_len\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__len__-3)

_\_\_len\_\_()_

Return len(self).

##### \_\_lt\_\_

[Section titled “\_\_lt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__lt__-3)

_\_\_lt\_\_()_

Return self<value.

##### \_\_mod\_\_

[Section titled “\_\_mod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mod__-3)

_\_\_mod\_\_()_

Return self%value.

##### \_\_mul\_\_

[Section titled “\_\_mul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mul__-3)

_\_\_mul\_\_()_

Return self\*value.

##### \_\_ne\_\_

[Section titled “\_\_ne\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ne__-3)

_\_\_ne\_\_()_

Return self!=value.

##### \_\_new\_\_

[Section titled “\_\_new\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__new__-3)

_\_\_new\_\_()_

Create and return a new object. See help(type) for accurate signature.

##### \_\_reduce\_\_

[Section titled “\_\_reduce\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduce__-3)

_\_\_reduce\_\_()_

Helper for pickle.

##### \_\_reduce _ex_\_

[Section titled “\_\_reduceex\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduceex_-3)

_\_\_reduceex\_()_

Helper for pickle.

##### \_\_repr\_\_

[Section titled “\_\_repr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__repr__-3)

_\_\_repr\_\_()_

Return repr(self).

##### \_\_rmod\_\_

[Section titled “\_\_rmod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmod__-3)

_\_\_rmod\_\_()_

Return value%self.

##### \_\_rmul\_\_

[Section titled “\_\_rmul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmul__-3)

_\_\_rmul\_\_()_

Return value\*self.

##### \_\_setattr\_\_

[Section titled “\_\_setattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__setattr__-3)

_\_\_setattr\_\_()_

Implement setattr(self, name, value).

##### \_\_sizeof\_\_

[Section titled “\_\_sizeof\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__sizeof__-3)

_\_\_sizeof\_\_()_

Return the size of the string in memory, in bytes.

##### \_\_str\_\_

[Section titled “\_\_str\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__str__-3)

_\_\_str\_\_()_

Return str(self).

##### capitalize

[Section titled “capitalize”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#capitalize-3)

_capitalize()_

Return a capitalized version of the string.

More specifically, make the first character have upper case and the rest lower
case.

##### casefold

[Section titled “casefold”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#casefold-3)

_casefold()_

Return a version of the string suitable for caseless comparisons.

##### center

[Section titled “center”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#center-3)

_center()_

Return a centered string of length width.

Padding is done using the specified fill character (default is a space).

##### count

[Section titled “count”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#count-3)

_count()_

S.count(sub\[, start\[, end\]\]) -> int

##### encode

[Section titled “encode”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#encode-3)

_encode()_

Encode the string using the codec registered for encoding.

##### endswith

[Section titled “endswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#endswith-3)

_endswith()_

S.endswith(suffix\[, start\[, end\]\]) -> bool

##### expandtabs

[Section titled “expandtabs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#expandtabs-3)

_expandtabs()_

Return a copy where all tab characters are expanded using spaces.

If tabsize is not given, a tab size of 8 characters is assumed.

##### find

[Section titled “find”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#find-3)

_find()_

S.find(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### format

[Section titled “format”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format-3)

_format()_

S.format(\*args, \*\*kwargs) -> str

Return a formatted version of S, using substitutions from args and kwargs.
The substitutions are identified by braces (‘{’ and ‘}’).

##### format\_map

[Section titled “format\_map”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format_map-3)

_format\_map()_

S.format\_map(mapping) -> str

Return a formatted version of S, using substitutions from mapping.
The substitutions are identified by braces (‘{’ and ‘}’).

##### index

[Section titled “index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#index-3)

_index()_

S.index(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### isalnum

[Section titled “isalnum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalnum-3)

_isalnum()_

Return True if the string is an alpha-numeric string, False otherwise.

A string is alpha-numeric if all characters in the string are alpha-numeric and
there is at least one character in the string.

##### isalpha

[Section titled “isalpha”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalpha-3)

_isalpha()_

Return True if the string is an alphabetic string, False otherwise.

A string is alphabetic if all characters in the string are alphabetic and there
is at least one character in the string.

##### isascii

[Section titled “isascii”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isascii-3)

_isascii()_

Return True if all characters in the string are ASCII, False otherwise.

ASCII characters have code points in the range U+0000-U+007F.
Empty string is ASCII too.

##### isdecimal

[Section titled “isdecimal”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdecimal-3)

_isdecimal()_

Return True if the string is a decimal string, False otherwise.

A string is a decimal string if all characters in the string are decimal and
there is at least one character in the string.

##### isdigit

[Section titled “isdigit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdigit-3)

_isdigit()_

Return True if the string is a digit string, False otherwise.

A string is a digit string if all characters in the string are digits and there
is at least one character in the string.

##### isidentifier

[Section titled “isidentifier”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isidentifier-3)

_isidentifier()_

Return True if the string is a valid Python identifier, False otherwise.

Call keyword.iskeyword(s) to test whether string s is a reserved identifier,
such as “def” or “class”.

##### islower

[Section titled “islower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#islower-3)

_islower()_

Return True if the string is a lowercase string, False otherwise.

A string is lowercase if all cased characters in the string are lowercase and
there is at least one cased character in the string.

##### isnumeric

[Section titled “isnumeric”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isnumeric-3)

_isnumeric()_

Return True if the string is a numeric string, False otherwise.

A string is numeric if all characters in the string are numeric and there is at
least one character in the string.

##### isprintable

[Section titled “isprintable”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isprintable-3)

_isprintable()_

Return True if the string is printable, False otherwise.

A string is printable if all of its characters are considered printable in
repr() or if it is empty.

##### isspace

[Section titled “isspace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isspace-3)

_isspace()_

Return True if the string is a whitespace string, False otherwise.

A string is whitespace if all characters in the string are whitespace and there
is at least one character in the string.

##### istitle

[Section titled “istitle”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#istitle-3)

_istitle()_

Return True if the string is a title-cased string, False otherwise.

In a title-cased string, upper- and title-case characters may only
follow uncased characters and lowercase characters only cased ones.

##### isupper

[Section titled “isupper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isupper-3)

_isupper()_

Return True if the string is an uppercase string, False otherwise.

A string is uppercase if all cased characters in the string are uppercase and
there is at least one cased character in the string.

##### join

[Section titled “join”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#join-3)

_join()_

Concatenate any number of strings.

The string whose method is called is inserted in between each given string.
The result is returned as a new string.

Example: ‘.’.join(\[‘ab’, ‘pq’, ‘rs’\]) -> ‘ab.pq.rs’

##### ljust

[Section titled “ljust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#ljust-3)

_ljust()_

Return a left-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### lower

[Section titled “lower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lower-3)

_lower()_

Return a copy of the string converted to lowercase.

##### lstrip

[Section titled “lstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lstrip-3)

_lstrip()_

Return a copy of the string with leading whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### partition

[Section titled “partition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#partition-3)

_partition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing the original string
and two empty strings.

##### removeprefix

[Section titled “removeprefix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removeprefix-3)

_removeprefix()_

Return a str with the given prefix string removed if present.

If the string starts with the prefix string, return string\[len(prefix):\].
Otherwise, return a copy of the original string.

##### removesuffix

[Section titled “removesuffix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removesuffix-3)

_removesuffix()_

Return a str with the given suffix string removed if present.

If the string ends with the suffix string and that suffix is not empty,
return string\[:-len(suffix)\]. Otherwise, return a copy of the original
string.

##### replace

[Section titled “replace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#replace-3)

_replace()_

Return a copy with all occurrences of substring old replaced by new.

count
Maximum number of occurrences to replace.
-1 (the default value) means replace all occurrences.

If the optional argument count is given, only the first count occurrences are
replaced.

##### rfind

[Section titled “rfind”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rfind-3)

_rfind()_

S.rfind(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### rindex

[Section titled “rindex”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rindex-3)

_rindex()_

S.rindex(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### rjust

[Section titled “rjust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rjust-3)

_rjust()_

Return a right-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### rpartition

[Section titled “rpartition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rpartition-3)

_rpartition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing two empty strings
and the original string.

##### rsplit

[Section titled “rsplit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rsplit-3)

_rsplit()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the end of the string and works to the front.

##### rstrip

[Section titled “rstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rstrip-3)

_rstrip()_

Return a copy of the string with trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### split

[Section titled “split”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#split-3)

_split()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the front of the string and works to the end.

##### splitlines

[Section titled “splitlines”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#splitlines-3)

_splitlines()_

Return a list of the lines in the string, breaking at line boundaries.

Line breaks are not included in the resulting list unless keepends is given and
true.

##### startswith

[Section titled “startswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#startswith-3)

_startswith()_

S.startswith(prefix\[, start\[, end\]\]) -> bool

##### strip

[Section titled “strip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#strip-3)

_strip()_

Return a copy of the string with leading and trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### swapcase

[Section titled “swapcase”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#swapcase-3)

_swapcase()_

Convert uppercase characters to lowercase and lowercase characters to uppercase.

##### title

[Section titled “title”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#title-3)

_title()_

Return a version of the string where each word is titlecased.

More specifically, words start with uppercased characters and all remaining
cased characters have lower case.

##### translate

[Section titled “translate”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#translate-3)

_translate()_

Replace each character in the string using the given translation table.

table
Translation table, which must be a mapping of Unicode ordinals to
Unicode ordinals, strings, or None.

##### upper

[Section titled “upper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#upper-3)

_upper()_

Return a copy of the string converted to uppercase.

##### zfill

[Section titled “zfill”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#zfill-3)

_zfill()_

Pad a numeric string with zeros on the left, to fill a field of the given width.

The string is never truncated.

#### _class_ algopy.op.Scratch

[Section titled “class algopy.op.Scratch”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopscratch)

Load or store scratch values
Native TEAL ops: [`loads`](https://dev.algorand.co/reference/algorand-teal/opcodes/#loads), [`stores`](https://dev.algorand.co/reference/algorand-teal/opcodes/#stores)

##### _static_ load\_bytes

[Section titled “static load\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-load_bytes)

\* _static_ load\_bytes(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\*

Ath scratch space value. All scratch spaces are 0 at program start.

Native TEAL opcode: [`loads`](https://dev.algorand.co/reference/algorand-teal/opcodes/#loads)

##### _static_ load\_uint64

[Section titled “static load\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-load_uint64)

\* _static_ load\_uint64(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\*

Ath scratch space value. All scratch spaces are 0 at program start.

Native TEAL opcode: [`loads`](https://dev.algorand.co/reference/algorand-teal/opcodes/#loads)

##### _static_ store

[Section titled “static store”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-store)

\* _static_ store(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [None](https://docs.python.org/3/library/constants.html#None)\*

store B to the Ath scratch space

Native TEAL opcode: [`stores`](https://dev.algorand.co/reference/algorand-teal/opcodes/#stores)

#### _class_ algopy.op.Txn

[Section titled “class algopy.op.Txn”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyoptxn)

Get values for the current executing transaction
Native TEAL ops: [`txn`](https://dev.algorand.co/reference/algorand-teal/opcodes/#txn), [`txnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#txnas)

##### _static_ accounts

[Section titled “static accounts”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-accounts-3)

Accounts listed in the ApplicationCall transaction

Native TEAL opcode: [`txna`](https://dev.algorand.co/reference/algorand-teal/opcodes/#txna), [`txnas`](https://dev.algorand.co/reference/algorand-teal/opcodes/#txnas)

##### amount \*: \[Final\]

[Section titled “amount \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#amount--final)

\_amount \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

microalgos

##### _static_ application\_args

[Section titled “static application\_args”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-application_args-3)

Arguments passed to the application in the ApplicationCall transaction

##### application\_id \*: \[Final\]

[Section titled “application\_id \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#application_id--final)

\_application\_id \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\]\*\*

Ellipsis

ApplicationID from ApplicationCall transaction

##### _static_ applications

[Section titled “static applications”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-applications-3)

Foreign Apps listed in the ApplicationCall transaction

##### approval\_program \*: \[Final\]

[Section titled “approval\_program \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#approval_program--final)

\_approval\_program \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

Approval program

##### _static_ approval\_program\_pages

[Section titled “static approval\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-approval_program_pages-3)

Approval Program as an array of pages

##### asset\_amount \*: \[Final\]

[Section titled “asset\_amount \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#asset_amount--final)

\_asset\_amount \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

value in Asset’s units

##### asset\_close\_to \*: \[Final\]

[Section titled “asset\_close\_to \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#asset_close_to--final)

\_asset\_close\_to \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### asset\_receiver \*: \[Final\]

[Section titled “asset\_receiver \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#asset_receiver--final)

\_asset\_receiver \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### asset\_sender \*: \[Final\]

[Section titled “asset\_sender \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#asset_sender--final)

\_asset\_sender \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address. Source of assets if Sender is the Asset’s Clawback address.

##### _static_ assets

[Section titled “static assets”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-assets-3)

Foreign Assets listed in the ApplicationCall transaction

##### clear\_state\_program \*: \[Final\]

[Section titled “clear\_state\_program \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#clear_state_program--final)

\_clear\_state\_program \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

Clear state program

##### _static_ clear\_state\_program\_pages

[Section titled “static clear\_state\_program\_pages”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-clear_state_program_pages-3)

ClearState Program as an array of pages

##### close\_remainder\_to \*: \[Final\]

[Section titled “close\_remainder\_to \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#close_remainder_to--final)

\_close\_remainder\_to \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### config\_asset \*: \[Final\]

[Section titled “config\_asset \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset--final)

\_config\_asset \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\]\*\*

Ellipsis

Asset ID in asset config transaction

##### config\_asset\_clawback \*: \[Final\]

[Section titled “config\_asset\_clawback \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_clawback--final)

\_config\_asset\_clawback \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### config\_asset\_decimals \*: \[Final\]

[Section titled “config\_asset\_decimals \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_decimals--final)

\_config\_asset\_decimals \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of digits to display after the decimal place when displaying the asset

##### config\_asset\_default\_frozen \*: \[Final\]

[Section titled “config\_asset\_default\_frozen \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_default_frozen--final)

\_config\_asset\_default\_frozen \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [bool](https://docs.python.org/3/library/functions.html#bool)\]\*\*

Ellipsis

Whether the asset’s slots are frozen by default or not, 0 or 1

##### config\_asset\_freeze \*: \[Final\]

[Section titled “config\_asset\_freeze \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_freeze--final)

\_config\_asset\_freeze \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### config\_asset\_manager \*: \[Final\]

[Section titled “config\_asset\_manager \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_manager--final)

\_config\_asset\_manager \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### config\_asset\_metadata\_hash \*: \[Final\]

[Section titled “config\_asset\_metadata\_hash \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_metadata_hash--final)

\_config\_asset\_metadata\_hash \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

32 byte commitment to unspecified asset metadata

##### config\_asset\_name \*: \[Final\]

[Section titled “config\_asset\_name \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_name--final)

\_config\_asset\_name \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

The asset name

##### config\_asset\_reserve \*: \[Final\]

[Section titled “config\_asset\_reserve \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_reserve--final)

\_config\_asset\_reserve \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### config\_asset\_total \*: \[Final\]

[Section titled “config\_asset\_total \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_total--final)

\_config\_asset\_total \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Total number of units of this asset created

##### config\_asset\_unit\_name \*: \[Final\]

[Section titled “config\_asset\_unit\_name \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_unit_name--final)

\_config\_asset\_unit\_name \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

Unit name of the asset

##### config\_asset\_url \*: \[Final\]

[Section titled “config\_asset\_url \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#config_asset_url--final)

\_config\_asset\_url \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

URL

##### created\_application\_id \*: \[Final\]

[Section titled “created\_application\_id \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#created_application_id--final)

\_created\_application\_id \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application)\]\*\*

Ellipsis

ApplicationID allocated by the creation of an application (only with `itxn` in v5). Application mode only

##### created\_asset\_id \*: \[Final\]

[Section titled “created\_asset\_id \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#created_asset_id--final)

\_created\_asset\_id \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\]\*\*

Ellipsis

Asset ID allocated by the creation of an ASA (only with `itxn` in v5). Application mode only

##### extra\_program\_pages \*: \[Final\]

[Section titled “extra\_program\_pages \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#extra_program_pages--final)

\_extra\_program\_pages \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

##### fee \*: \[Final\]

[Section titled “fee \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#fee--final)

\_fee \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

microalgos

##### first\_valid \*: \[Final\]

[Section titled “first\_valid \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#first_valid--final)

\_first\_valid \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

round number

##### first\_valid\_time \*: \[Final\]

[Section titled “first\_valid\_time \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#first_valid_time--final)

\_first\_valid\_time \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

UNIX timestamp of block before txn.FirstValid. Fails if negative

##### freeze\_asset \*: \[Final\]

[Section titled “freeze\_asset \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#freeze_asset--final)

\_freeze\_asset \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\]\*\*

Ellipsis

Asset ID being frozen or un-frozen

##### freeze\_asset\_account \*: \[Final\]

[Section titled “freeze\_asset\_account \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#freeze_asset_account--final)

\_freeze\_asset\_account \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address of the account whose asset slot is being frozen or un-frozen

##### freeze\_asset\_frozen \*: \[Final\]

[Section titled “freeze\_asset\_frozen \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#freeze_asset_frozen--final)

\_freeze\_asset\_frozen \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [bool](https://docs.python.org/3/library/functions.html#bool)\]\*\*

Ellipsis

The new frozen value, 0 or 1

##### global\_num\_byte\_slice \*: \[Final\]

[Section titled “global\_num\_byte\_slice \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#global_num_byte_slice--final)

\_global\_num\_byte\_slice \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of global state byteslices in ApplicationCall

##### global\_num\_uint \*: \[Final\]

[Section titled “global\_num\_uint \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#global_num_uint--final)

\_global\_num\_uint \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of global state integers in ApplicationCall

##### group\_index \*: \[Final\]

[Section titled “group\_index \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#group_index--final)

\_group\_index \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Position of this transaction within an atomic transaction group. A stand-alone transaction is implicitly element 0 in a group of 1

##### last\_log \*: \[Final\]

[Section titled “last\_log \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#last_log--final)

\_last\_log \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

The last message emitted. Empty bytes if none were emitted. Application mode only

##### last\_valid \*: \[Final\]

[Section titled “last\_valid \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#last_valid--final)

\_last\_valid \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

round number

##### lease \*: \[Final\]

[Section titled “lease \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lease--final)

\_lease \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

32 byte lease value

##### local\_num\_byte\_slice \*: \[Final\]

[Section titled “local\_num\_byte\_slice \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#local_num_byte_slice--final)

\_local\_num\_byte\_slice \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of local state byteslices in ApplicationCall

##### local\_num\_uint \*: \[Final\]

[Section titled “local\_num\_uint \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#local_num_uint--final)

\_local\_num\_uint \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of local state integers in ApplicationCall

##### _static_ logs

[Section titled “static logs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-logs-3)

Log messages emitted by an application call (only with `itxn` in v5). Application mode only

##### nonparticipation \*: \[Final\]

[Section titled “nonparticipation \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#nonparticipation--final)

\_nonparticipation \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [bool](https://docs.python.org/3/library/functions.html#bool)\]\*\*

Ellipsis

Marks an account nonparticipating for rewards

##### note \*: \[Final\]

[Section titled “note \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#note--final)

\_note \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

Any data up to 1024 bytes

##### num\_accounts \*: \[Final\]

[Section titled “num\_accounts \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#num_accounts--final)

\_num\_accounts \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of Accounts

##### num\_app\_args \*: \[Final\]

[Section titled “num\_app\_args \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#num_app_args--final)

\_num\_app\_args \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of ApplicationArgs

##### num\_applications \*: \[Final\]

[Section titled “num\_applications \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#num_applications--final)

\_num\_applications \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of Applications

##### num\_approval\_program\_pages \*: \[Final\]

[Section titled “num\_approval\_program\_pages \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#num_approval_program_pages--final)

\_num\_approval\_program\_pages \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of Approval Program pages

##### num\_assets \*: \[Final\]

[Section titled “num\_assets \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#num_assets--final)

\_num\_assets \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of Assets

##### num\_clear\_state\_program\_pages \*: \[Final\]

[Section titled “num\_clear\_state\_program\_pages \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#num_clear_state_program_pages--final)

\_num\_clear\_state\_program\_pages \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of ClearState Program pages

##### num\_logs \*: \[Final\]

[Section titled “num\_logs \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#num_logs--final)

\_num\_logs \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Number of Logs (only with `itxn` in v5). Application mode only

##### on\_completion \*: \[Final\]

[Section titled “on\_completion \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#on_completion--final)

\_on\_completion \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.OnCompleteAction](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.OnCompleteAction)\]\*\*

Ellipsis

ApplicationCall transaction on completion action

##### receiver \*: \[Final\]

[Section titled “receiver \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#receiver--final)

\_receiver \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### reject\_version \*: \[Final\]

[Section titled “reject\_version \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#reject_version--final)

\_reject\_version \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Application version for which the txn must reject
Min AVM version: 12

##### rekey\_to \*: \[Final\]

[Section titled “rekey\_to \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rekey_to--final)

\_rekey\_to \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte Sender’s new AuthAddr

##### selection\_pk \*: \[Final\]

[Section titled “selection\_pk \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#selection_pk--final)

\_selection\_pk \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

32 byte address

##### sender \*: \[Final\]

[Section titled “sender \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#sender--final)

\_sender \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account)\]\*\*

Ellipsis

32 byte address

##### state\_proof\_pk \*: \[Final\]

[Section titled “state\_proof\_pk \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#state_proof_pk--final)

\_state\_proof\_pk \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

State proof public key

##### tx\_id \*: \[Final\]

[Section titled “tx\_id \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#tx_id--final)

\_tx\_id \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

The computed ID for this transaction. 32 bytes.

##### type \*: \[Final\]

[Section titled “type \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#type--final)

\_type \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

Transaction type as bytes

##### type\_enum \*: \[Final\]

[Section titled “type\_enum \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#type_enum--final)

\_type\_enum \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.TransactionType](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.TransactionType)\]\*\*

Ellipsis

Transaction type as integer

##### vote\_first \*: \[Final\]

[Section titled “vote\_first \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#vote_first--final)

\_vote\_first \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The first round that the participation key is valid.

##### vote\_key\_dilution \*: \[Final\]

[Section titled “vote\_key\_dilution \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#vote_key_dilution--final)

\_vote\_key\_dilution \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

Dilution for the 2-level participation key

##### vote\_last \*: \[Final\]

[Section titled “vote\_last \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#vote_last--final)

\_vote\_last \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]\*\*

Ellipsis

The last round that the participation key is valid.

##### vote\_pk \*: \[Final\]

[Section titled “vote\_pk \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#vote_pk--final)

\_vote\_pk \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]\*\*

Ellipsis

32 byte address

##### xfer\_asset \*: \[Final\]

[Section titled “xfer\_asset \*: \[Final\]”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#xfer_asset--final)

\_xfer\_asset \_: [Final](https://docs.python.org/3/library/typing.html#typing.Final)\[ [algopy.Asset](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Asset)\]\*\*

Ellipsis

Asset ID

#### _class_ algopy.op.VoterParamsGet

[Section titled “class algopy.op.VoterParamsGet”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopvoterparamsget)

X is field F from online account A as of the balance round: 320 rounds before the current round. Y is 1 if A had positive algos online in the agreement round, else Y is 0 and X is a type specific zero-value
Native TEAL op: [`voter_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#voter_params_get)

##### _static_ voter\_balance

[Section titled “static voter\_balance”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-voter_balance)

\* _static_ voter\_balance(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Min AVM version: 11

- **Returns tuple\[UInt64, bool\]:**
Online stake in microalgos

Native TEAL opcode: [`voter_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#voter_params_get)

##### _static_ voter\_incentive\_eligible

[Section titled “static voter\_incentive\_eligible”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#static-voter_incentive_eligible)

\* _static_ voter\_incentive\_eligible(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [bool](https://docs.python.org/3/library/functions.html#bool), [bool](https://docs.python.org/3/library/functions.html#bool)\]\*

Min AVM version: 11

- **Returns tuple\[bool, bool\]:**
Had this account opted into block payouts

Native TEAL opcode: [`voter_params_get`](https://dev.algorand.co/reference/algorand-teal/opcodes/#voter_params_get)

#### _class_ algopy.op.VrfVerify

[Section titled “class algopy.op.VrfVerify”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#class-algopyopvrfverify)

Available values for the `vrf_verify` enum

##### Initialization

[Section titled “Initialization”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#initialization-4)

Initialize self. See help(type(self)) for accurate signature.

##### \_\_add\_\_

[Section titled “\_\_add\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__add__-4)

_\_\_add\_\_()_

Return self+value.

##### \_\_contains\_\_

[Section titled “\_\_contains\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__contains__-4)

_\_\_contains\_\_()_

Return bool(key in self).

##### \_\_delattr\_\_

[Section titled “\_\_delattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__delattr__-4)

_\_\_delattr\_\_()_

Implement delattr(self, name).

##### \_\_dir\_\_

[Section titled “\_\_dir\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__dir__-4)

_\_\_dir\_\_()_

Default dir() implementation.

##### \_\_eq\_\_

[Section titled “\_\_eq\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__eq__-4)

_\_\_eq\_\_()_

Return self==value.

##### \_\_format\_\_

[Section titled “\_\_format\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__format__-4)

_\_\_format\_\_()_

Return a formatted version of the string as described by format\_spec.

##### \_\_ge\_\_

[Section titled “\_\_ge\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ge__-4)

_\_\_ge\_\_()_

Return self>=value.

##### \_\_getattribute\_\_

[Section titled “\_\_getattribute\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getattribute__-4)

_\_\_getattribute\_\_()_

Return getattr(self, name).

##### \_\_getitem\_\_

[Section titled “\_\_getitem\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getitem__-4)

_\_\_getitem\_\_()_

Return self\[key\].

##### \_\_getstate\_\_

[Section titled “\_\_getstate\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__getstate__-4)

_\_\_getstate\_\_()_

Helper for pickle.

##### \_\_gt\_\_

[Section titled “\_\_gt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__gt__-4)

_\_\_gt\_\_()_

Return self>value.

##### \_\_hash\_\_

[Section titled “\_\_hash\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__hash__-4)

_\_\_hash\_\_()_

Return hash(self).

##### \_\_iter\_\_

[Section titled “\_\_iter\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__iter__-4)

_\_\_iter\_\_()_

Implement iter(self).

##### \_\_le\_\_

[Section titled “\_\_le\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__le__-4)

_\_\_le\_\_()_

Return self<=value.

##### \_\_len\_\_

[Section titled “\_\_len\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__len__-4)

_\_\_len\_\_()_

Return len(self).

##### \_\_lt\_\_

[Section titled “\_\_lt\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__lt__-4)

_\_\_lt\_\_()_

Return self<value.

##### \_\_mod\_\_

[Section titled “\_\_mod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mod__-4)

_\_\_mod\_\_()_

Return self%value.

##### \_\_mul\_\_

[Section titled “\_\_mul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__mul__-4)

_\_\_mul\_\_()_

Return self\*value.

##### \_\_ne\_\_

[Section titled “\_\_ne\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__ne__-4)

_\_\_ne\_\_()_

Return self!=value.

##### \_\_new\_\_

[Section titled “\_\_new\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__new__-4)

_\_\_new\_\_()_

Create and return a new object. See help(type) for accurate signature.

##### \_\_reduce\_\_

[Section titled “\_\_reduce\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduce__-4)

_\_\_reduce\_\_()_

Helper for pickle.

##### \_\_reduce _ex_\_

[Section titled “\_\_reduceex\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__reduceex_-4)

_\_\_reduceex\_()_

Helper for pickle.

##### \_\_repr\_\_

[Section titled “\_\_repr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__repr__-4)

_\_\_repr\_\_()_

Return repr(self).

##### \_\_rmod\_\_

[Section titled “\_\_rmod\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmod__-4)

_\_\_rmod\_\_()_

Return value%self.

##### \_\_rmul\_\_

[Section titled “\_\_rmul\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__rmul__-4)

_\_\_rmul\_\_()_

Return value\*self.

##### \_\_setattr\_\_

[Section titled “\_\_setattr\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__setattr__-4)

_\_\_setattr\_\_()_

Implement setattr(self, name, value).

##### \_\_sizeof\_\_

[Section titled “\_\_sizeof\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__sizeof__-4)

_\_\_sizeof\_\_()_

Return the size of the string in memory, in bytes.

##### \_\_str\_\_

[Section titled “\_\_str\_\_”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#__str__-4)

_\_\_str\_\_()_

Return str(self).

##### capitalize

[Section titled “capitalize”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#capitalize-4)

_capitalize()_

Return a capitalized version of the string.

More specifically, make the first character have upper case and the rest lower
case.

##### casefold

[Section titled “casefold”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#casefold-4)

_casefold()_

Return a version of the string suitable for caseless comparisons.

##### center

[Section titled “center”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#center-4)

_center()_

Return a centered string of length width.

Padding is done using the specified fill character (default is a space).

##### count

[Section titled “count”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#count-4)

_count()_

S.count(sub\[, start\[, end\]\]) -> int

##### encode

[Section titled “encode”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#encode-4)

_encode()_

Encode the string using the codec registered for encoding.

##### endswith

[Section titled “endswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#endswith-4)

_endswith()_

S.endswith(suffix\[, start\[, end\]\]) -> bool

##### expandtabs

[Section titled “expandtabs”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#expandtabs-4)

_expandtabs()_

Return a copy where all tab characters are expanded using spaces.

If tabsize is not given, a tab size of 8 characters is assumed.

##### find

[Section titled “find”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#find-4)

_find()_

S.find(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### format

[Section titled “format”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format-4)

_format()_

S.format(\*args, \*\*kwargs) -> str

Return a formatted version of S, using substitutions from args and kwargs.
The substitutions are identified by braces (‘{’ and ‘}’).

##### format\_map

[Section titled “format\_map”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#format_map-4)

_format\_map()_

S.format\_map(mapping) -> str

Return a formatted version of S, using substitutions from mapping.
The substitutions are identified by braces (‘{’ and ‘}’).

##### index

[Section titled “index”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#index-4)

_index()_

S.index(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### isalnum

[Section titled “isalnum”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalnum-4)

_isalnum()_

Return True if the string is an alpha-numeric string, False otherwise.

A string is alpha-numeric if all characters in the string are alpha-numeric and
there is at least one character in the string.

##### isalpha

[Section titled “isalpha”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isalpha-4)

_isalpha()_

Return True if the string is an alphabetic string, False otherwise.

A string is alphabetic if all characters in the string are alphabetic and there
is at least one character in the string.

##### isascii

[Section titled “isascii”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isascii-4)

_isascii()_

Return True if all characters in the string are ASCII, False otherwise.

ASCII characters have code points in the range U+0000-U+007F.
Empty string is ASCII too.

##### isdecimal

[Section titled “isdecimal”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdecimal-4)

_isdecimal()_

Return True if the string is a decimal string, False otherwise.

A string is a decimal string if all characters in the string are decimal and
there is at least one character in the string.

##### isdigit

[Section titled “isdigit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isdigit-4)

_isdigit()_

Return True if the string is a digit string, False otherwise.

A string is a digit string if all characters in the string are digits and there
is at least one character in the string.

##### isidentifier

[Section titled “isidentifier”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isidentifier-4)

_isidentifier()_

Return True if the string is a valid Python identifier, False otherwise.

Call keyword.iskeyword(s) to test whether string s is a reserved identifier,
such as “def” or “class”.

##### islower

[Section titled “islower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#islower-4)

_islower()_

Return True if the string is a lowercase string, False otherwise.

A string is lowercase if all cased characters in the string are lowercase and
there is at least one cased character in the string.

##### isnumeric

[Section titled “isnumeric”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isnumeric-4)

_isnumeric()_

Return True if the string is a numeric string, False otherwise.

A string is numeric if all characters in the string are numeric and there is at
least one character in the string.

##### isprintable

[Section titled “isprintable”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isprintable-4)

_isprintable()_

Return True if the string is printable, False otherwise.

A string is printable if all of its characters are considered printable in
repr() or if it is empty.

##### isspace

[Section titled “isspace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isspace-4)

_isspace()_

Return True if the string is a whitespace string, False otherwise.

A string is whitespace if all characters in the string are whitespace and there
is at least one character in the string.

##### istitle

[Section titled “istitle”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#istitle-4)

_istitle()_

Return True if the string is a title-cased string, False otherwise.

In a title-cased string, upper- and title-case characters may only
follow uncased characters and lowercase characters only cased ones.

##### isupper

[Section titled “isupper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#isupper-4)

_isupper()_

Return True if the string is an uppercase string, False otherwise.

A string is uppercase if all cased characters in the string are uppercase and
there is at least one cased character in the string.

##### join

[Section titled “join”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#join-4)

_join()_

Concatenate any number of strings.

The string whose method is called is inserted in between each given string.
The result is returned as a new string.

Example: ‘.’.join(\[‘ab’, ‘pq’, ‘rs’\]) -> ‘ab.pq.rs’

##### ljust

[Section titled “ljust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#ljust-4)

_ljust()_

Return a left-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### lower

[Section titled “lower”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lower-4)

_lower()_

Return a copy of the string converted to lowercase.

##### lstrip

[Section titled “lstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#lstrip-4)

_lstrip()_

Return a copy of the string with leading whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### partition

[Section titled “partition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#partition-4)

_partition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing the original string
and two empty strings.

##### removeprefix

[Section titled “removeprefix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removeprefix-4)

_removeprefix()_

Return a str with the given prefix string removed if present.

If the string starts with the prefix string, return string\[len(prefix):\].
Otherwise, return a copy of the original string.

##### removesuffix

[Section titled “removesuffix”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#removesuffix-4)

_removesuffix()_

Return a str with the given suffix string removed if present.

If the string ends with the suffix string and that suffix is not empty,
return string\[:-len(suffix)\]. Otherwise, return a copy of the original
string.

##### replace

[Section titled “replace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#replace-4)

_replace()_

Return a copy with all occurrences of substring old replaced by new.

count
Maximum number of occurrences to replace.
-1 (the default value) means replace all occurrences.

If the optional argument count is given, only the first count occurrences are
replaced.

##### rfind

[Section titled “rfind”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rfind-4)

_rfind()_

S.rfind(sub\[, start\[, end\]\]) -> int

Return -1 on failure.

##### rindex

[Section titled “rindex”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rindex-4)

_rindex()_

S.rindex(sub\[, start\[, end\]\]) -> int

Raises ValueError when the substring is not found.

##### rjust

[Section titled “rjust”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rjust-4)

_rjust()_

Return a right-justified string of length width.

Padding is done using the specified fill character (default is a space).

##### rpartition

[Section titled “rpartition”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rpartition-4)

_rpartition()_

Partition the string into three parts using the given separator.

If the separator is not found, returns a 3-tuple containing two empty strings
and the original string.

##### rsplit

[Section titled “rsplit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rsplit-4)

_rsplit()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the end of the string and works to the front.

##### rstrip

[Section titled “rstrip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#rstrip-4)

_rstrip()_

Return a copy of the string with trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### split

[Section titled “split”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#split-4)

_split()_

Return a list of the substrings in the string, using sep as the separator string.

sep
The separator used to split the string.

```
When set to None (the default value), will split on any whitespace

character (including \n \r \t \f and spaces) and will discard

empty strings from the result.
```

maxsplit
Maximum number of splits.
-1 (the default value) means no limit.

Splitting starts at the front of the string and works to the end.

##### splitlines

[Section titled “splitlines”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#splitlines-4)

_splitlines()_

Return a list of the lines in the string, breaking at line boundaries.

Line breaks are not included in the resulting list unless keepends is given and
true.

##### startswith

[Section titled “startswith”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#startswith-4)

_startswith()_

S.startswith(prefix\[, start\[, end\]\]) -> bool

##### strip

[Section titled “strip”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#strip-4)

_strip()_

Return a copy of the string with leading and trailing whitespace removed.

If chars is given and not None, remove characters in chars instead.

##### swapcase

[Section titled “swapcase”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#swapcase-4)

_swapcase()_

Convert uppercase characters to lowercase and lowercase characters to uppercase.

##### title

[Section titled “title”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#title-4)

_title()_

Return a version of the string where each word is titlecased.

More specifically, words start with uppercased characters and all remaining
cased characters have lower case.

##### translate

[Section titled “translate”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#translate-4)

_translate()_

Replace each character in the string using the given translation table.

table
Translation table, which must be a mapping of Unicode ordinals to
Unicode ordinals, strings, or None.

##### upper

[Section titled “upper”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#upper-4)

_upper()_

Return a copy of the string converted to uppercase.

##### zfill

[Section titled “zfill”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#zfill-4)

_zfill()_

Pad a numeric string with zeros on the left, to fill a field of the given width.

The string is never truncated.

##### algopy.op.addw

[Section titled “algopy.op.addw”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopaddw)

_algopy.op.addw(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]_

A plus B as a 128-bit result. X is the carry-bit, Y is the low-order 64 bits.

Native TEAL opcode: [`addw`](https://dev.algorand.co/reference/algorand-teal/opcodes/#addw)

##### algopy.op.app\_opted\_in

[Section titled “algopy.op.app\_opted\_in”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopapp_opted_in)

_algopy.op.app\_opted\_in(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.Application](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Application) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)_

1 if account A is opted in to application B, else 0
params: Txn.Accounts offset (or, since v4, an _available_ account address), _available_ application id (or, since v4, a Txn.ForeignApps offset). Return: 1 if opted in and 0 otherwise.

Native TEAL opcode: [`app_opted_in`](https://dev.algorand.co/reference/algorand-teal/opcodes/#app_opted_in)

##### algopy.op.arg

[Section titled “algopy.op.arg”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyoparg)

_algopy.op.arg(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

Ath LogicSig argument

Native TEAL opcode: [`arg`](https://dev.algorand.co/reference/algorand-teal/opcodes/#arg), [`args`](https://dev.algorand.co/reference/algorand-teal/opcodes/#args)

##### algopy.op.balance

[Section titled “algopy.op.balance”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopbalance)

_algopy.op.balance(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

balance for account A, in microalgos. The balance is observed after the effects of previous transactions in the group, and after the fee for the current transaction is deducted. Changes caused by inner transactions are observable immediately following `itxn_submit`
params: Txn.Accounts offset (or, since v4, an _available_ account address), _available_ application id (or, since v4, a Txn.ForeignApps offset). Return: value.

Native TEAL opcode: [`balance`](https://dev.algorand.co/reference/algorand-teal/opcodes/#balance)

##### algopy.op.base64\_decode

[Section titled “algopy.op.base64\_decode”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopbase64_decode)

_algopy.op.base64\_decode(e: [algopy.op.Base64](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Base64), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

decode A which was base64-encoded using _encoding_ E. Fail if A is not base64 encoded with encoding E
_Warning_: Usage should be restricted to very rare use cases. In almost all cases, smart contracts should directly handle non-encoded byte-strings. This opcode should only be used in cases where base64 is the only available option, e.g. interoperability with a third-party that only signs base64 strings.

Decodes A using the base64 encoding E. Specify the encoding with an immediate arg either as URL and Filename Safe (`URLEncoding`) or Standard (`StdEncoding`). See [RFC 4648 sections 4 and 5](https://rfc-editor.org/rfc/rfc4648.html#section-4). It is assumed that the encoding ends with the exact number of `=` padding characters as required by the RFC. When padding occurs, any unused pad bits in the encoding must be set to zero or the decoding will fail. The special cases of `\n` and `\r` are allowed but completely ignored. An error will result when attempting to decode a string with a character that is not in the encoding alphabet or not one of `=`, `\r`, or `\n`.

- **Parameters:** **e** ( [_Base64_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.Base64)) – encoding index

Native TEAL opcode: [`base64_decode`](https://dev.algorand.co/reference/algorand-teal/opcodes/#base64_decode)

##### algopy.op.bitlen

[Section titled “algopy.op.bitlen”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopbitlen)

_algopy.op.bitlen(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

The highest set bit in A. If A is a byte-array, it is interpreted as a big-endian unsigned integer. bitlen of 0 is 0, bitlen of 8 is 4
bitlen interprets arrays as big-endian integers, unlike setbit/getbit

Native TEAL opcode: [`bitlen`](https://dev.algorand.co/reference/algorand-teal/opcodes/#bitlen)

##### algopy.op.bsqrt

[Section titled “algopy.op.bsqrt”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopbsqrt)

_algopy.op.bsqrt(a: [algopy.BigUInt](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.BigUInt) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.BigUInt](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.BigUInt)_

The largest integer I such that I^2 <= A. A and I are interpreted as big-endian unsigned integers

Native TEAL opcode: [`bsqrt`](https://dev.algorand.co/reference/algorand-teal/opcodes/#bsqrt)

##### algopy.op.btoi

[Section titled “algopy.op.btoi”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopbtoi)

_algopy.op.btoi(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

converts big-endian byte array A to uint64. Fails if len(A) > 8. Padded by leading 0s if len(A) < 8.
`btoi` fails if the input is longer than 8 bytes.

Native TEAL opcode: [`btoi`](https://dev.algorand.co/reference/algorand-teal/opcodes/#btoi)

##### algopy.op.bzero

[Section titled “algopy.op.bzero”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopbzero)

_algopy.op.bzero(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

zero filled byte-array of length A

Native TEAL opcode: [`bzero`](https://dev.algorand.co/reference/algorand-teal/opcodes/#bzero)

##### algopy.op.concat

[Section titled “algopy.op.concat”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopconcat)

_algopy.op.concat(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

join A and B
`concat` fails if the result would be greater than 4096 bytes.

Native TEAL opcode: [`concat`](https://dev.algorand.co/reference/algorand-teal/opcodes/#concat)

##### algopy.op.divmodw

[Section titled “algopy.op.divmodw”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopdivmodw)

_algopy.op.divmodw(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), d: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]_

W,X = (A,B / C,D); Y,Z = (A,B modulo C,D)
The notation J,K indicates that two uint64 values J and K are interpreted as a uint128 value, with J as the high uint64 and K the low.

Native TEAL opcode: [`divmodw`](https://dev.algorand.co/reference/algorand-teal/opcodes/#divmodw)

##### algopy.op.divw

[Section titled “algopy.op.divw”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopdivw)

_algopy.op.divw(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

A,B / C. Fail if C == 0 or if result overflows.
The notation A,B indicates that A and B are interpreted as a uint128 value, with A as the high uint64 and B the low.

Native TEAL opcode: [`divw`](https://dev.algorand.co/reference/algorand-teal/opcodes/#divw)

##### algopy.op.ecdsa\_pk\_decompress

[Section titled “algopy.op.ecdsa\_pk\_decompress”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopecdsa_pk_decompress)

_algopy.op.ecdsa\_pk\_decompress(v: [algopy.op.ECDSA](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]_

decompress pubkey A into components X, Y
The 33 byte public key in a compressed form to be decompressed into X and Y (top) components. All values are big-endian encoded.

- **Parameters:** **v** ( [_ECDSA_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA)) – curve index

Native TEAL opcode: [`ecdsa_pk_decompress`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ecdsa_pk_decompress)

##### algopy.op.ecdsa\_pk\_recover

[Section titled “algopy.op.ecdsa\_pk\_recover”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopecdsa_pk_recover)

_algopy.op.ecdsa\_pk\_recover(v: [algopy.op.ECDSA](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), d: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)\]_

for (data A, recovery id B, signature C, D) recover a public key
S (top) and R elements of a signature, recovery id and data (bottom) are expected on the stack and used to deriver a public key. All values are big-endian encoded. The signed data must be 32 bytes long.

- **Parameters:** **v** ( [_ECDSA_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA)) – curve index

Native TEAL opcode: [`ecdsa_pk_recover`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ecdsa_pk_recover)

##### algopy.op.ecdsa\_verify

[Section titled “algopy.op.ecdsa\_verify”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopecdsa_verify)

_algopy.op.ecdsa\_verify(v: [algopy.op.ECDSA](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), d: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), e: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [bool](https://docs.python.org/3/library/functions.html#bool)_

for (data A, signature B, C and pubkey D, E) verify the signature of the data against the pubkey => {0 or 1}
The 32 byte Y-component of a public key is the last element on the stack, preceded by X-component of a pubkey, preceded by S and R components of a signature, preceded by the data that is fifth element on the stack. All values are big-endian encoded. The signed data must be 32 bytes long, and signatures in lower-S form are only accepted.

- **Parameters:** **v** ( [_ECDSA_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.ECDSA)) – curve index

Native TEAL opcode: [`ecdsa_verify`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ecdsa_verify)

##### algopy.op.ed25519verify

[Section titled “algopy.op.ed25519verify”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyoped25519verify)

_algopy.op.ed25519verify(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [bool](https://docs.python.org/3/library/functions.html#bool)_

for (data A, signature B, pubkey C) verify the signature of (“ProgData” \|\| program\_hash \|\| data) against the pubkey => {0 or 1}
The 32 byte public key is the last element on the stack, preceded by the 64 byte signature at the second-to-last element on the stack, preceded by the data which was signed at the third-to-last element on the stack.

Native TEAL opcode: [`ed25519verify`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ed25519verify)

##### algopy.op.ed25519verify\_bare

[Section titled “algopy.op.ed25519verify\_bare”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyoped25519verify_bare)

_algopy.op.ed25519verify\_bare(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [bool](https://docs.python.org/3/library/functions.html#bool)_

for (data A, signature B, pubkey C) verify the signature of the data against the pubkey => {0 or 1}

Native TEAL opcode: [`ed25519verify_bare`](https://dev.algorand.co/reference/algorand-teal/opcodes/#ed25519verify_bare)

##### algopy.op.err

[Section titled “algopy.op.err”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyoperr)

_algopy.op.err() → [Never](https://docs.python.org/3/library/typing.html#typing.Never)_

Fail immediately.

- **Returns typing.Never:**
Halts program

Native TEAL opcode: [`err`](https://dev.algorand.co/reference/algorand-teal/opcodes/#err)

##### algopy.op.exit

[Section titled “algopy.op.exit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopexit)

_algopy.op.exit(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [Never](https://docs.python.org/3/library/typing.html#typing.Never)_

use A as success value; end

- **Returns typing.Never:**
Halts program

Native TEAL opcode: [`return`](https://dev.algorand.co/reference/algorand-teal/opcodes/#return)

##### algopy.op.exp

[Section titled “algopy.op.exp”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopexp)

_algopy.op.exp(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

A raised to the Bth power. Fail if A == B == 0 and on overflow

Native TEAL opcode: [`exp`](https://dev.algorand.co/reference/algorand-teal/opcodes/#exp)

##### algopy.op.expw

[Section titled “algopy.op.expw”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopexpw)

_algopy.op.expw(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]_

A raised to the Bth power as a 128-bit result in two uint64s. X is the high 64 bits, Y is the low. Fail if A == B == 0 or if the results exceeds 2^128-1

Native TEAL opcode: [`expw`](https://dev.algorand.co/reference/algorand-teal/opcodes/#expw)

##### algopy.op.extract

[Section titled “algopy.op.extract”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopextract)

_algopy.op.extract(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

A range of bytes from A starting at B up to but not including B+C. If B+C is larger than the array length, the program fails
`extract3` can be called using `extract` with no immediates.

Native TEAL opcode: [`extract`](https://dev.algorand.co/reference/algorand-teal/opcodes/#extract), [`extract3`](https://dev.algorand.co/reference/algorand-teal/opcodes/#extract3)

##### algopy.op.extract\_uint16

[Section titled “algopy.op.extract\_uint16”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopextract_uint16)

_algopy.op.extract\_uint16(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

A uint16 formed from a range of big-endian bytes from A starting at B up to but not including B+2. If B+2 is larger than the array length, the program fails

Native TEAL opcode: [`extract_uint16`](https://dev.algorand.co/reference/algorand-teal/opcodes/#extract_uint16)

##### algopy.op.extract\_uint32

[Section titled “algopy.op.extract\_uint32”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopextract_uint32)

_algopy.op.extract\_uint32(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

A uint32 formed from a range of big-endian bytes from A starting at B up to but not including B+4. If B+4 is larger than the array length, the program fails

Native TEAL opcode: [`extract_uint32`](https://dev.algorand.co/reference/algorand-teal/opcodes/#extract_uint32)

##### algopy.op.extract\_uint64

[Section titled “algopy.op.extract\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopextract_uint64)

_algopy.op.extract\_uint64(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

A uint64 formed from a range of big-endian bytes from A starting at B up to but not including B+8. If B+8 is larger than the array length, the program fails

Native TEAL opcode: [`extract_uint64`](https://dev.algorand.co/reference/algorand-teal/opcodes/#extract_uint64)

##### algopy.op.falcon\_verify

[Section titled “algopy.op.falcon\_verify”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopfalcon_verify)

_algopy.op.falcon\_verify(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [bool](https://docs.python.org/3/library/functions.html#bool)_

for (data A, compressed-format signature B, pubkey C) verify the signature of data against the pubkey => {0 or 1}
Min AVM version: 12

Native TEAL opcode: [`falcon_verify`](https://dev.algorand.co/reference/algorand-teal/opcodes/#falcon_verify)

##### algopy.op.gaid

[Section titled “algopy.op.gaid”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopgaid)

_algopy.op.gaid(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

ID of the asset or application created in the Ath transaction of the current group
`gaids` fails unless the requested transaction created an asset or application and A < GroupIndex.

Native TEAL opcode: [`gaid`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gaid), [`gaids`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gaids)

##### algopy.op.getbit

[Section titled “algopy.op.getbit”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopgetbit)

_algopy.op.getbit(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [bool](https://docs.python.org/3/library/functions.html#bool)_

Bth bit of (byte-array or integer) A. If B is greater than or equal to the bit length of the value (8\*byte length), the program fails
see explanation of bit ordering in setbit

Native TEAL opcode: [`getbit`](https://dev.algorand.co/reference/algorand-teal/opcodes/#getbit)

##### algopy.op.getbyte

[Section titled “algopy.op.getbyte”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopgetbyte)

_algopy.op.getbyte(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

Bth byte of A, as an integer. If B is greater than or equal to the array length, the program fails

Native TEAL opcode: [`getbyte`](https://dev.algorand.co/reference/algorand-teal/opcodes/#getbyte)

##### algopy.op.gload\_bytes

[Section titled “algopy.op.gload\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopgload_bytes)

_algopy.op.gload\_bytes(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

Bth scratch space value of the Ath transaction in the current group

Native TEAL opcode: [`gload`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gload), [`gloads`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gloads), [`gloadss`](https://dev.algorand.co/reference/algorand-teal/opcodes/#gloadss)

##### algopy.op.gload\_uint64

[Section titled “algopy.op.gload\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopgload_uint64)

_algopy.op.gload\_uint64(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

Bth scratch space value of the Ath transaction in the current group

##### algopy.op.itob

[Section titled “algopy.op.itob”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopitob)

_algopy.op.itob(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

converts uint64 A to big-endian byte array, always of length 8

Native TEAL opcode: [`itob`](https://dev.algorand.co/reference/algorand-teal/opcodes/#itob)

##### algopy.op.keccak256

[Section titled “algopy.op.keccak256”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopkeccak256)

_algopy.op.keccak256(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

Keccak256 hash of value A, yields \[32\]byte

Native TEAL opcode: [`keccak256`](https://dev.algorand.co/reference/algorand-teal/opcodes/#keccak256)

##### algopy.op.mimc

[Section titled “algopy.op.mimc”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopmimc)

_algopy.op.mimc(c: [algopy.op.MiMCConfigurations](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.MiMCConfigurations), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

MiMC hash of scalars A, using curve and parameters specified by configuration C
A is a list of concatenated 32 byte big-endian unsigned integer scalars. Fail if A’s length is not a multiple of 32 or any element exceeds the curve modulus.

The MiMC hash function has known collisions since any input which is a multiple of the elliptic curve modulus will hash to the same value. MiMC is thus not a general purpose hash function, but meant to be used in zero knowledge applications to match a zk-circuit implementation.
Min AVM version: 11

- **Parameters:** **c** ( [_MiMCConfigurations_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.MiMCConfigurations)) – configuration index

Native TEAL opcode: [`mimc`](https://dev.algorand.co/reference/algorand-teal/opcodes/#mimc)

##### algopy.op.min\_balance

[Section titled “algopy.op.min\_balance”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopmin_balance)

_algopy.op.min\_balance(a: [algopy.Account](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Account) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

minimum required balance for account A, in microalgos. Required balance is affected by ASA, App, and Box usage. When creating or opting into an app, the minimum balance grows before the app code runs, therefore the increase is visible there. When deleting or closing out, the minimum balance decreases after the app executes. Changes caused by inner transactions or box usage are observable immediately following the opcode effecting the change.
params: Txn.Accounts offset (or, since v4, an _available_ account address), _available_ application id (or, since v4, a Txn.ForeignApps offset). Return: value.

Native TEAL opcode: [`min_balance`](https://dev.algorand.co/reference/algorand-teal/opcodes/#min_balance)

##### algopy.op.mulw

[Section titled “algopy.op.mulw”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopmulw)

_algopy.op.mulw(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64), [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)\]_

A times B as a 128-bit result in two uint64s. X is the high 64 bits, Y is the low

Native TEAL opcode: [`mulw`](https://dev.algorand.co/reference/algorand-teal/opcodes/#mulw)

##### algopy.op.online\_stake

[Section titled “algopy.op.online\_stake”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyoponline_stake)

_algopy.op.online\_stake() → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

the total online stake in the agreement round
Min AVM version: 11

Native TEAL opcode: [`online_stake`](https://dev.algorand.co/reference/algorand-teal/opcodes/#online_stake)

##### algopy.op.replace

[Section titled “algopy.op.replace”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopreplace)

_algopy.op.replace(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

Copy of A with the bytes starting at B replaced by the bytes of C. Fails if B+len(C) exceeds len(A)
`replace3` can be called using `replace` with no immediates.

Native TEAL opcode: [`replace2`](https://dev.algorand.co/reference/algorand-teal/opcodes/#replace2), [`replace3`](https://dev.algorand.co/reference/algorand-teal/opcodes/#replace3)

##### algopy.op.select\_bytes

[Section titled “algopy.op.select\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopselect_bytes)

_algopy.op.select\_bytes(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), c: [bool](https://docs.python.org/3/library/functions.html#bool) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

selects one of two values based on top-of-stack: B if C != 0, else A

Native TEAL opcode: [`select`](https://dev.algorand.co/reference/algorand-teal/opcodes/#select)

##### algopy.op.select\_uint64

[Section titled “algopy.op.select\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopselect_uint64)

_algopy.op.select\_uint64(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [bool](https://docs.python.org/3/library/functions.html#bool) \| [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

selects one of two values based on top-of-stack: B if C != 0, else A

Native TEAL opcode: [`select`](https://dev.algorand.co/reference/algorand-teal/opcodes/#select)

##### algopy.op.setbit\_bytes

[Section titled “algopy.op.setbit\_bytes”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsetbit_bytes)

_algopy.op.setbit\_bytes(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [bool](https://docs.python.org/3/library/functions.html#bool), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

Copy of (byte-array or integer) A, with the Bth bit set to (0 or 1) C. If B is greater than or equal to the bit length of the value (8\*byte length), the program fails
When A is a uint64, index 0 is the least significant bit. Setting bit 3 to 1 on the integer 0 yields 8, or 2^3. When A is a byte array, index 0 is the leftmost bit of the leftmost byte. Setting bits 0 through 11 to 1 in a 4-byte-array of 0s yields the byte array 0xfff00000. Setting bit 3 to 1 on the 1-byte-array 0x00 yields the byte array 0x10.

Native TEAL opcode: [`setbit`](https://dev.algorand.co/reference/algorand-teal/opcodes/#setbit)

##### algopy.op.setbit\_uint64

[Section titled “algopy.op.setbit\_uint64”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsetbit_uint64)

_algopy.op.setbit\_uint64(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [bool](https://docs.python.org/3/library/functions.html#bool), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

Native TEAL opcode: [`setbit`](https://dev.algorand.co/reference/algorand-teal/opcodes/#setbit)

##### algopy.op.setbyte

[Section titled “algopy.op.setbyte”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsetbyte)

_algopy.op.setbyte(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

Copy of A with the Bth byte set to small integer (between 0..255) C. If B is greater than or equal to the array length, the program fails

Native TEAL opcode: [`setbyte`](https://dev.algorand.co/reference/algorand-teal/opcodes/#setbyte)

##### algopy.op.sha256

[Section titled “algopy.op.sha256”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsha256)

_algopy.op.sha256(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

SHA256 hash of value A, yields \[32\]byte

Native TEAL opcode: [`sha256`](https://dev.algorand.co/reference/algorand-teal/opcodes/#sha256)

##### algopy.op.sha3\_256

[Section titled “algopy.op.sha3\_256”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsha3_256)

_algopy.op.sha3\_256(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

SHA3\_256 hash of value A, yields \[32\]byte

Native TEAL opcode: [`sha3_256`](https://dev.algorand.co/reference/algorand-teal/opcodes/#sha3_256)

##### algopy.op.sha512\_256

[Section titled “algopy.op.sha512\_256”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsha512_256)

_algopy.op.sha512\_256(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

SHA512\_256 hash of value A, yields \[32\]byte

Native TEAL opcode: [`sha512_256`](https://dev.algorand.co/reference/algorand-teal/opcodes/#sha512_256)

##### algopy.op.shl

[Section titled “algopy.op.shl”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopshl)

_algopy.op.shl(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

A times 2^B, modulo 2^64

Native TEAL opcode: [`shl`](https://dev.algorand.co/reference/algorand-teal/opcodes/#shl)

##### algopy.op.shr

[Section titled “algopy.op.shr”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopshr)

_algopy.op.shr(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

A divided by 2^B

Native TEAL opcode: [`shr`](https://dev.algorand.co/reference/algorand-teal/opcodes/#shr)

##### algopy.op.sqrt

[Section titled “algopy.op.sqrt”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsqrt)

_algopy.op.sqrt(a: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64)_

The largest integer I such that I^2 <= A

Native TEAL opcode: [`sqrt`](https://dev.algorand.co/reference/algorand-teal/opcodes/#sqrt)

##### algopy.op.substring

[Section titled “algopy.op.substring”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsubstring)

_algopy.op.substring(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), c: [algopy.UInt64](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.UInt64) \| [int](https://docs.python.org/3/library/functions.html#int), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

A range of bytes from A starting at B up to but not including C. If C < B, or either is larger than the array length, the program fails

Native TEAL opcode: [`substring`](https://dev.algorand.co/reference/algorand-teal/opcodes/#substring), [`substring3`](https://dev.algorand.co/reference/algorand-teal/opcodes/#substring3)

##### algopy.op.sumhash512

[Section titled “algopy.op.sumhash512”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopsumhash512)

_algopy.op.sumhash512(a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes)_

sumhash512 of value A, yields \[64\]byte
Min AVM version: 13

Native TEAL opcode: [`sumhash512`](https://dev.algorand.co/reference/algorand-teal/opcodes/#sumhash512)

##### algopy.op.vrf\_verify

[Section titled “algopy.op.vrf\_verify”](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopyopvrf_verify)

_algopy.op.vrf\_verify(s: [algopy.op.VrfVerify](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.VrfVerify), a: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), b: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), c: [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes) \| [bytes](https://docs.python.org/3/library/stdtypes.html#bytes), /) → [tuple](https://docs.python.org/3/library/stdtypes.html#tuple)\[ [algopy.Bytes](https://dev.algorand.co/reference/algorand-python/api/api-algopy/#algopy.Bytes), [bool](https://docs.python.org/3/library/functions.html#bool)\]_

Verify the proof B of message A against pubkey C. Returns vrf output and verification flag.
`VrfAlgorand` is the VRF used in Algorand. It is ECVRF-ED25519-SHA512-Elligator2, specified in the IETF internet draft [draft-irtf-cfrg-vrf-03](https://datatracker.ietf.org/doc/draft-irtf-cfrg-vrf/03/).

- **Parameters:** **s** ( [_VrfVerify_](https://dev.algorand.co/reference/algorand-python/api/api-algopyop/#algopy.op.VrfVerify)) – parameters index

Native TEAL opcode: [`vrf_verify`](https://dev.algorand.co/reference/algorand-teal/opcodes/#vrf_verify)

Ask AI

reCAPTCHA

Recaptcha requires verification.

protected by **reCAPTCHA**
