# ADDRESS

20-byte Ethereum address stored as raw bytes. 0x-prefixed VARCHAR casts parse exact hex; VARCHAR output is hex for display. In Solidity ABI words, ADDRESS values are left-padded to 32 bytes.

Canonical HTML: <https://determica.com/docs/types/address>

- Family: Address
- Physical type: BLOB

20-byte Ethereum address stored as raw bytes. 0x-prefixed VARCHAR casts parse exact hex; VARCHAR output is hex for display. In Solidity ABI words, ADDRESS values are left-padded to 32 bytes.

## Used by functions

### Input and output

- [create_access_list](/docs/functions/create_access_list.md) — Builds an EIP-2930 access list for a transaction request. Each result row identifies an accessed account or storage slot and includes request status.
- [create2_mine](/docs/functions/create2_mine.md) — Scans a bounded local CPU salt range for EIP-1014 CREATE2 addresses. It performs no network I/O, deployment, chain-state lookup, collision check, or vanity-address safety proof.
- [create2_predict](/docs/functions/create2_predict.md) — Computes the EIP-1014 CREATE2 address from the executing deployer, exact salt, and complete init-code hash. This is deterministic local arithmetic and does not query or mutate chain state.
- [get_logs](/docs/functions/get_logs.md) — Reads logs matching emitter, inclusive block bounds, and topic filters. Live clients use eth_getLogs; retained execution clients read stored execution logs.
- [read_contract_multicall](/docs/functions/read_contract_multicall.md) — Executes a table of encoded contract reads through Multicall3 and returns one diagnostic row per input call. Results separately report batch execution and target-call success.

### Accepted as input

- [assume_code](/docs/functions/assume_code.md) — Declares the exact EVM runtime bytecode supplied for one address in a PROGRAM's initial state.
- [assume_native_balance](/docs/functions/assume_native_balance.md) — Declares the exact native balance, in Wei, supplied for one address in a PROGRAM's initial state.
- [assume_no_code](/docs/functions/assume_no_code.md) — Declares that one address has no EVM runtime bytecode in a PROGRAM's initial state.
- [assume_nonce](/docs/functions/assume_nonce.md) — Declares the exact account nonce supplied for one address in a PROGRAM's initial state.
- [assume_storage](/docs/functions/assume_storage.md) — Declares the exact 32-byte value supplied for one contract storage slot in a PROGRAM's initial state.
- [code_at](/docs/functions/code_at.md) — Reads an account's runtime bytecode from live RPC state, the exact state identified by a pinned CLIENT, or retained execution state. Without a CLIENT, it builds a reusable READ and does not access state.
- [evm_abi_word](/docs/functions/evm_abi_word.md) — Encodes an ADDRESS, BYTES32, BOOLEAN, or integer as one 32-byte Solidity ABI word. ADDRESS and unsigned integer values are left-padded with zeros. Signed integers are sign-extended in two's-complement form; BOOLEAN uses 0 or 1. BYTES32 values are copied unchanged.
- [evm_decode_log_for](/docs/functions/evm_decode_log_for.md) — Returns a log diagnostic using the ABI registered locally for a chain, emitter, and block; use it when ABI selection depends on contract context.
- [evm_decode_revert_for](/docs/functions/evm_decode_revert_for.md) — Returns a revert diagnostic using the ABI registered locally for a chain, contract, and block; use it when ABI selection depends on contract context.
- [evm_register_contract_abi](/docs/functions/evm_register_contract_abi.md) — Stores contract ABI metadata in the current database for block-aware log and revert decoding.
- [execute_call](/docs/functions/execute_call.md) — Builds one raw EVM call step for ordered, non-atomic PROGRAM execution.
- [execute_contract](/docs/functions/execute_contract.md) — Selects an ABI function, encodes its arguments, and builds one step for ordered, non-atomic PROGRAM execution.
- [hex](/docs/functions/hex.md) — Formats a BLOB-backed EVM byte value as uppercase hexadecimal text without a 0x prefix. hex and to_hex are compatibility aliases with identical behavior.
- [length](/docs/functions/length.md) — Returns the number of bytes in a BLOB or BLOB-backed EVM value such as ADDRESS, BYTES32, UINT256, or INT256.
- [native_balance](/docs/functions/native_balance.md) — Returns an address's native-token balance as exact Wei in live, pinned, or retained execution state. Without a CLIENT, it builds a reusable READ and does not access state.
- [nonce](/docs/functions/nonce.md) — Returns an address's transaction count in live, pinned, or retained execution state. Without a CLIENT, it builds a reusable READ and does not access state.
- [observation_fact](/docs/functions/observation_fact.md) — Declares a human-readable label for an address without scheduling a READ.
- [raw_call](/docs/functions/raw_call.md) — Executes an isolated EVM call and returns the raw response bytes. Without a CLIENT, it builds a reusable READ and does not execute the call.
- [read_contract](/docs/functions/read_contract.md) — Calls a contract function against live, pinned, or retained execution state and returns a typed SQL value. Without a CLIENT, it builds a reusable READ and does not execute the call.
- [read_contract_at](/docs/functions/read_contract_at.md) — Calls a contract function at an explicit block number and returns ABI-decoded SQL values.
- [storage_at](/docs/functions/storage_at.md) — Returns one raw 32-byte storage word for a contract and BYTES32 slot in live, pinned, or retained execution state. Without a CLIENT, it builds a reusable READ and does not access state.
- [to_hex](/docs/functions/to_hex.md) — Formats a BLOB-backed EVM byte value as uppercase hexadecimal text without a 0x prefix. hex and to_hex are compatibility aliases with identical behavior.
- [try_native_balance](/docs/functions/try_native_balance.md) — Returns an address's native-token balance as exact Wei at an explicit block, as native_balance does. A balance read cannot revert, so a failed read raises here too.
- [try_read_contract_at](/docs/functions/try_read_contract_at.md) — Calls a contract function at an explicit block number like read_contract_at; a revert, an address without code or an undecodable return gives NULL instead of an error. A transport, rate-limit or archive failure raises.

### Returned as output

- [get_block](/docs/functions/get_block.md) — Fetches a block by decimal height, supported block tag, or block hash. The block defaults to latest and include_transactions defaults to false.
- [get_transaction](/docs/functions/get_transaction.md) — Fetches a transaction by hash, then makes a separate receipt request for receipt metadata.
- [get_transaction_logs](/docs/functions/get_transaction_logs.md) — Returns logs from a transaction receipt, optionally filtered by emitter or indexed topics. Supply an event signature or JSON ABI to append typed decoded fields.
