GoldToken

Celo ERC-20 Token Browse chains

0x471ece3750da237f93b8e339c536989b8978a438

Proxy implementation: 0xfea1b35f1d5f2a58532a70e7a32e6f2d3bc4f7b1

Solidity v0.5.13+commit.5b0b510c

Fungible token following the ERC-20 standard.

🤖
Query this contract from your AI
Reference: 0x471ece3750da237f93b8e339c536989b8978a438
Sample prompt: "Tell me the current state of celo/0x471ece3750da237f93b8e339c536989b8978a438"
No AI wired up yet? → mcp.smarts.md · Browse chains
Celo 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
13
Write Functions
11
Events
5

Read Functions

allocatedSupply() view

Returns the total number of tokens that have been allocated.✨ AI

Returns

Name Type Description
uint256 The total amount of allocated CELO.
allowance(_owner: address, spender: address) view

Gets the amount of owner's CELO allowed to be spent by spender.

Parameters

Name Type Description
_owner address The owner of the CELO.
spender address The spender of the CELO.

Returns

Name Type Description
uint256 The amount of CELO owner is allowing spender to spend.
balanceOf(_owner: address) view

Gets the balance of the specified address.

Parameters

Name Type Description
_owner address The address to query the balance of.

Returns

Name Type Description
uint256 The balance of the specified address.
decimals() view

Returns the number of decimal places used by the token for display and calculations.✨ AI

Returns

Name Type Description
uint8 The number of decimal places to which CELO is divisible.
getBurnedAmount() view

Gets the amount of CELO that has been burned.

Returns

Name Type Description
uint256 The total amount of CELO that has been sent to the burn address.
getVersionNumber() pure

Returns the storage, major, minor, and patch version of the contract.

Returns

Name Type Description
uint256 Storage version of the contract.
uint256 Major version of the contract.
uint256 Minor version of the contract.
uint256 Patch version of the contract.
initialized() view

Indicates whether the token contract has been initialized.✨ AI

Returns

Name Type Description
bool True when the contract has been initialized; false otherwise.✨ AI
isOwner() view

Return true when the caller is the contract owner.✨ AI

dev: Returns true if the caller is the current owner.

Returns

Name Type Description
bool True if the caller is the contract owner, false otherwise.✨ AI
name() view

Returns the token name shown to users.✨ AI

Returns

Name Type Description
string The name of the CELO token.
owner() view

Returns the address of the contract owner.✨ AI

dev: Returns the address of the current owner.

Returns

Name Type Description
address The address of the account that owns the contract.✨ AI
registry() view

Returns the address of the registry contract associated with this token.✨ AI

Returns

Name Type Description
address Address of the registry contract used by the token for external lookups.✨ AI
symbol() view

Return the token's short symbol shown in wallets and exchanges.✨ AI

Returns

Name Type Description
string The symbol of the CELO token.
totalSupply() view

Returns the total number of GoldToken tokens in existence.✨ AI

Returns

Name Type Description
uint256 The total amount of CELO in existence, including what the burn address holds.

Write Functions

approve(spender: address, value: uint256) nonpayable

Approve a user to transfer CELO on behalf of another user.

Parameters

Name Type Description
spender address The address which is being approved to spend CELO.
value uint256 The amount of CELO approved to the spender.

Returns

Name Type Description
bool True if the transaction succeeds.
burn(value: uint256) nonpayable

This function allows a user to burn a specific amount of tokens. Burning is implemented by sending tokens to the burn address.

Parameters

Name Type Description
value uint256 : The amount of CELO to burn.

Returns

Name Type Description
bool True if burn was successful.
decreaseAllowance(spender: address, value: uint256) nonpayable

Decreases the allowance of another user.

Parameters

Name Type Description
spender address The address which is being approved to spend CELO.
value uint256 The decrement of the amount of CELO approved to the spender.

Returns

Name Type Description
bool True if the transaction succeeds.
increaseAllowance(spender: address, value: uint256) nonpayable

Increases the allowance of another user.

Parameters

Name Type Description
spender address The address which is being approved to spend CELO.
value uint256 The increment of the amount of CELO approved to the spender.

Returns

Name Type Description
bool True if the transaction succeeds.
initialize(registryAddress: address) nonpayable

Used in place of the constructor to allow the contract to be upgradable via proxy.

Parameters

Name Type Description
registryAddress address Address of the Registry contract.
renounceOwnership() nonpayable

Permanently renounce contract ownership, leaving no owner and disabling owner-only functions.✨ AI

dev: Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.
setRegistry(registryAddress: address) nonpayable

Updates the address pointing to a Registry contract.

Parameters

Name Type Description
registryAddress address The address of a registry contract for routing to other contracts.
transfer(to: address, value: uint256) nonpayable

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

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

Parameters

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

Returns

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

Transfers CELO from one address to another on behalf of a user.

Parameters

Name Type Description
from address The address to transfer CELO from.
to address The address to transfer CELO to.
value uint256 The amount of CELO to transfer.

Returns

Name Type Description
bool True if the transaction succeeds.
transferOwnership(newOwner: address) nonpayable

Transfer ownership of the token contract to a new owner address.✨ AI

dev: Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.

Parameters

Name Type Description
newOwner address Address that will become the new owner of the contract.✨ AI
transferWithComment(to: address, value: uint256, comment: string) nonpayable

Transfers CELO from one address to another with a comment.

Parameters

Name Type Description
to address The address to transfer CELO to.
value uint256 The amount of CELO to transfer.
comment string The transfer comment

Returns

Name Type Description
bool True if the transaction succeeds.

Events

Approval(owner: address, spender: address, value: uint256)
Name Type Indexed Description
owner address
spender address
value uint256
OwnershipTransferred(previousOwner: address, newOwner: address)
Name Type Indexed Description
previousOwner address
newOwner address
RegistrySet(registryAddress: address)
Name Type Indexed Description
registryAddress address
Transfer(from: address, to: address, value: uint256)
Name Type Indexed Description
from address
to address
value uint256
TransferComment(comment: string)
Name Type Indexed Description
comment string