OptimismMintableERC20

World Chain ERC-20 Token Browse chains

0x2cfc85d8e48f8eab294be644d9e25c3030863003

Solidity v0.8.15+commit.e14f2714

Fungible token following the ERC-20 standard.

🤖
Query this contract from your AI
Reference: 0x2cfc85d8e48f8eab294be644d9e25c3030863003
Sample prompt: "Tell me the current state of world/0x2cfc85d8e48f8eab294be644d9e25c3030863003"
No AI wired up yet? → mcp.smarts.md · Browse chains
World Chain 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
14
Write Functions
7
Events
4

Read Functions

BRIDGE() view

Returns the address of the bridge contract that handles cross-chain minting and burning.✨ AI

Returns

Name Type Description
address Address of the bridge contract used for cross-chain minting and burning.✨ AI
REMOTE_TOKEN() view

Return the address of the remote token contract that this mintable ERC-20 represents.✨ AI

Returns

Name Type Description
address The address of the remote token contract on the other chain that this token maps to.✨ AI
allowance(owner: address, spender: address) view

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

dev: See {IERC20-allowance}.

Parameters

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

Returns

Name Type Description
uint256 Remaining allowance in token units that spender may transfer from owner.✨ AI
balanceOf(account: address) view

Returns the token balance of the given account.✨ AI

dev: See {IERC20-balanceOf}.

Parameters

Name Type Description
account address Address whose token balance will be returned.✨ AI

Returns

Name Type Description
uint256 The number of tokens owned by the account as an unsigned integer.✨ AI
bridge() view

Legacy getter for BRIDGE.

Returns

Name Type Description
address
decimals() view

Return the number of decimal places used by the token.✨ 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`). 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 decimal precision as a uint8 value.✨ AI
l1Token() view

Legacy getter for the remote token. Use REMOTE_TOKEN going forward.

Returns

Name Type Description
address
l2Bridge() view

Legacy getter for the bridge. Use BRIDGE going forward.

Returns

Name Type Description
address
name() view

Returns the token's name.✨ AI

dev: Returns the name of the token.

Returns

Name Type Description
string The token name as a string.✨ AI
remoteToken() view

Legacy getter for REMOTE_TOKEN.

Returns

Name Type Description
address
supportsInterface(_interfaceId: bytes4) pure

ERC165 interface check function.

Parameters

Name Type Description
_interfaceId bytes4 Interface ID to check.

Returns

Name Type Description
bool Whether or not the interface is supported by this contract.
symbol() view

Get the token's short ticker symbol.✨ AI

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

Returns

Name Type Description
string The token's symbol as a string (ERC-20 short ticker).✨ AI
totalSupply() view

Returns the total number of tokens in existence.✨ AI

dev: See {IERC20-totalSupply}.

Returns

Name Type Description
uint256 Total token supply as a uint256.✨ AI
version() view

Getter for the semantic version of the contract. This is not meant to be used onchain but instead meant to be used by offchain tooling.

Returns

Name Type Description
string Semver contract version as a string.

Write Functions

approve(spender: address, amount: uint256) nonpayable

Approve a spender to transfer up to a specified amount of tokens from your account.✨ AI

dev: See {IERC20-approve}. NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address.

Parameters

Name Type Description
spender address Address that will be approved to spend tokens.✨ AI
amount uint256 Amount of tokens the spender is allowed to transfer (in token smallest units).✨ AI

Returns

Name Type Description
bool True if the allowance was successfully set.✨ AI
burn(_from: address, _amount: uint256) nonpayable

Allows the StandardBridge on this network to burn tokens.

Parameters

Name Type Description
_from address Address to burn tokens from.
_amount uint256 Amount of tokens to burn.
decreaseAllowance(spender: address, subtractedValue: uint256) nonpayable

Decrease the caller's token allowance for a spender by subtractedValue.✨ AI

dev: Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.

Parameters

Name Type Description
spender address The account whose allowance will be decreased.✨ AI
subtractedValue uint256 The amount to subtract from the spender's allowance.✨ AI

Returns

Name Type Description
bool True if the allowance was decreased successfully.✨ AI
increaseAllowance(spender: address, addedValue: uint256) nonpayable

Increase the caller's ERC-20 allowance for the spender by addedValue.✨ AI

dev: Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.

Parameters

Name Type Description
spender address Address that will be allowed to spend the caller's tokens.✨ AI
addedValue uint256 Amount of tokens to add to the existing allowance.✨ AI

Returns

Name Type Description
bool True if the allowance was increased successfully.✨ AI
mint(_to: address, _amount: uint256) nonpayable

Allows the StandardBridge on this network to mint tokens.

Parameters

Name Type Description
_to address Address to mint tokens to.
_amount uint256 Amount of tokens to mint.
transfer(to: address, amount: uint256) nonpayable

Transfer tokens from the caller to the specified address.✨ AI

dev: See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `amount`.

Parameters

Name Type Description
to address Recipient address to receive the tokens.✨ AI
amount uint256 Amount of tokens to transfer, expressed in the token's smallest unit.✨ AI

Returns

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

Transfer tokens from one account to another using the caller's allowance.✨ AI

dev: See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `amount`. - the caller must have allowance for ``from``'s tokens of at least `amount`.

Parameters

Name Type Description
from address Address to transfer tokens from.✨ AI
to address Recipient address receiving the tokens.✨ AI
amount uint256 Amount of tokens to transfer (in token smallest units).✨ AI

Returns

Name Type Description
bool True if the transfer succeeded.✨ AI

Events

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

Emitted whenever tokens are burned from an account.

Name Type Indexed Description
account address Address of the account tokens are being burned from.
amount uint256 Amount of tokens burned.
Mint(account: address, amount: uint256)

Emitted whenever tokens are minted for an account.

Name Type Indexed Description
account address Address of the account tokens are being minted for.
amount uint256 Amount of tokens minted.
Transfer(from: address, to: address, value: uint256)
Name Type Indexed Description
from address
to address
value uint256