WETHRebasing

Blast ERC-20 Token Browse chains

0x4300000000000000000000000000000000000004

Proxy implementation: 0x83acb050aa232f97810f32afacde003303465ca5

Solidity v0.8.15+commit.e14f2714

Fungible token following the ERC-20 standard.

🤖
Query this contract from your AI
Reference: 0x4300000000000000000000000000000000000004
Sample prompt: "Tell me the current state of blast/0x4300000000000000000000000000000000000004"
No AI wired up yet? → mcp.smarts.md · Browse chains
Blast is a docs-only chain on Smarts: source code and ABI are indexed, but live on-chain data (state, recent events, admin profile) is not currently available. AI agents can still query get_contract_info and get_contract_source via MCP.

Overview

Read Functions
17
Write Functions
10
Events
9

Read Functions

DOMAIN_SEPARATOR() view

Return the EIP-712 domain separator used to sign typed data.✨ AI

Returns

Name Type Description
bytes32 Domain separator (bytes32) used for EIP-712 typed-data signing.✨ AI
PERMIT_TYPEHASH() view

Returns the EIP-2612 permit typehash used for permit signature verification.✨ AI

Returns

Name Type Description
bytes32 keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)")✨ AI
REPORTER() view

Returns the address currently assigned as the contract's reporter.✨ AI

Returns

Name Type Description
address Address of the reporter role permitted to submit reports or updates (may be zero address if unset).✨ AI
allowance(owner: address, spender: address) view

Return the remaining number of tokens that spender is allowed to spend on behalf of owner.✨ AI

dev: Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.

Parameters

Name Type Description
owner address Address that owns the tokens.✨ AI
spender address Address permitted to spend the owner's tokens.✨ AI

Returns

Name Type Description
uint256 Unsigned integer representing the remaining allowance for spender to spend from owner.✨ AI
balanceOf(account: address) view

Return the current token balance for the specified account.✨ AI

dev: Returns the amount of tokens owned by `account`.

Parameters

Name Type Description
account address Address to query the token balance for.✨ AI

Returns

Name Type Description
value uint256 The account's current token balance as a uint256 (wei units), after any rebases.✨ AI
count() view

Get the total number of shares. Needs to be overridden by the child contract.

Returns

Name Type Description
uint256 Total number of shares.
decimals() view

Returns the number of decimal places the token uses.✨ AI

dev: Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.

Returns

Name Type Description
uint8 The token's decimals as a uint8 indicating how many decimal places are used for token amounts.✨ AI
eip712Domain() view

Return the EIP-712 domain components the contract uses for typed data signing and signature verification.✨ AI

dev: See {EIP-5267}. _Available since v4.9._

Returns

Name Type Description
fields bytes1 fields — single byte bitmask indicating which domain fields are present or active.✨ AI
name string name — domain name string used in the EIP-712 domain (typically the token or contract name).✨ AI
version string version — domain version string used in the EIP-712 domain.✨ AI
chainId uint256 chainId — chain identifier (uint256) the domain is bound to for replay protection.✨ AI
verifyingContract address verifyingContract — address of the contract acting as the EIP-712 domain verifier.✨ AI
salt bytes32 salt — domain salt (bytes32) used for additional domain separation.✨ AI
extensions uint256[] extensions — array of uint256 extension values included in the domain for custom data.✨ AI
getClaimableAmount(account: address) view

Query an CLAIMABLE account's claimable yield.

Parameters

Name Type Description
account address Address to query the claimable amount.

Returns

Name Type Description
uint256 amount Claimable amount.
getConfiguration(account: address) view

Query an account's configured yield mode.

Parameters

Name Type Description
account address Address to query the configuration.

Returns

Name Type Description
uint8 Configured yield mode.
name() view

Returns the token's name as a human-readable string.✨ AI

dev: Returns the name of the token.

Returns

Name Type Description
string The ERC-20 token name (string)✨ AI
nonces(owner: address) view

Returns the current nonce for an address used by permit signatures.✨ AI

dev: See {IERC20Permit-nonces}.

Parameters

Name Type Description
owner address Address to query the current permit nonce.✨ AI

Returns

Name Type Description
uint256 Current nonce for the owner; increments each time a permit is used.✨ AI
pending() view

Returns the amount of tokens pending distribution from the rebasing contract.✨ AI

Returns

Name Type Description
uint256 Pending token amount available for distribution or claim, expressed in wei (token base units).✨ AI
price() view

Returns the current token price used by the contract.✨ AI

Returns

Name Type Description
uint256 Current token price as a uint256 expressed in the contract's internal price units.✨ AI
symbol() view

Return the token symbol used to identify this ERC-20 token.✨ AI

dev: Returns the symbol of the token, usually a shorter version of the name.

Returns

Name Type Description
string The token symbol as a string (for example, "WETH").✨ AI
totalSupply() view

Return the current total token supply, reflecting any rebases.✨ AI

dev: Returns the amount of tokens in existence.

Returns

Name Type Description
uint256 The total supply as a uint256, representing all tokens after rebasing.✨ AI
version() view

Returns the full semver contract version.

Returns

Name Type Description
string Semver contract version as a string.

Write Functions

addValue(value: uint256) nonpayable

Report a yield event and update the share price.

Parameters

Name Type Description
value uint256 Amount of new yield
approve(spender: address, amount: uint256) nonpayable

///////////////////////////////////////////////////////////

Parameters

Name Type Description
spender address
amount uint256

Returns

Name Type Description
bool
claim(recipient: address, amount: uint256) nonpayable

Allows a contract to claim a specified amount of gas, at a claim rate set by the number of gas seconds

Parameters

Name Type Description
recipient address
amount uint256

Returns

Name Type Description
uint256 The amount of gas claimed (gasToClaim - penalty)
configure(yieldMode: uint8) nonpayable

contract configures its yield and gas modes and sets the governor. called by contract

Parameters

Name Type Description
yieldMode uint8

Returns

Name Type Description
uint256
deposit() payable

Deposit ETH and increase the wrapped balance.

initialize() nonpayable

Initializer.

permit(owner: address, spender: address, value: uint256, deadline: uint256, v: uint8, r: bytes32, s: bytes32) nonpayable

Allows a spender to spend an owner's tokens using an off-chain EIP-2612 signature.✨ AI

dev: See {IERC20Permit-permit}.

Parameters

Name Type Description
owner address Address of the token owner who signed the permit.✨ AI
spender address Address authorized to spend the owner's tokens.✨ AI
value uint256 Amount of tokens the spender is permitted to transfer.✨ AI
deadline uint256 Unix timestamp after which the permit is invalid.✨ AI
v uint8 Recovery byte of the owner's signature.✨ AI
r bytes32 First 32 bytes of the owner's signature.✨ AI
s bytes32 Second 32 bytes of the owner's signature.✨ AI
transfer(to: address, amount: uint256) nonpayable

Transfers a specified amount of tokens from the caller to the recipient address.✨ AI

dev: Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.

Parameters

Name Type Description
to address Recipient address that will receive the tokens.✨ AI
amount uint256 Number of tokens to transfer from caller balance (in token units).✨ AI

Returns

Name Type Description
bool True if the transfer succeeded, otherwise false.✨ AI
transferFrom(from: address, to: address, amount: uint256) nonpayable

Transfer tokens from one address to another using an approved allowance.✨ AI

dev: Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.

Parameters

Name Type Description
from address Address to debit tokens from.✨ AI
to address Address to credit tokens to.✨ AI
amount uint256 Token amount to transfer, in the token's smallest unit (wei for WETH).✨ AI

Returns

Name Type Description
bool True when the transfer succeeds; the call reverts on failure.✨ AI
withdraw(wad: uint256) nonpayable

Withdraw ETH and decrease the wrapped balance.

Parameters

Name Type Description
wad uint256 Amount to withdraw.

Events

Approval(owner: address, spender: address, value: uint256)
Name Type Indexed Description
owner address
spender address
value uint256
Claim(account: address, recipient: address, amount: uint256)

Emitted when a CLAIMABLE account claims their yield.

Name Type Indexed Description
account address Address of the account.
recipient address Address of the recipient.
amount uint256 Amount of yield claimed.
Configure(account: address, yieldMode: uint8)

Emitted when an account configures their yield mode.

Name Type Indexed Description
account address Address of the account.
yieldMode uint8 Yield mode that was configured.
Deposit(account: address, amount: uint256)

Emitted whenever tokens are deposited to an account.

Name Type Indexed Description
account address Address of the account tokens are being deposited to.
amount uint256 Amount of tokens deposited.
EIP712DomainChanged()
Initialized(version: uint8)
Name Type Indexed Description
version uint8
NewPrice(price: uint256)

Emitted when a new share price is set after a yield event.

Name Type Indexed Description
price uint256
Transfer(from: address, to: address, value: uint256)

///////////////////////////////////////////////////////////

Name Type Indexed Description
from address
to address
value uint256
Withdrawal(account: address, amount: uint256)

Emitted whenever tokens are withdrawn from an account.

Name Type Indexed Description
account address Address of the account tokens are being withdrawn from.
amount uint256 Amount of tokens withdrawn.