LDO

Ethereum ERC-20 Token

0x5a98fcbea516cf06857215779fd812ca3bef1b32

Solidity v0.4.24+commit.e67f0147

Fungible token following the ERC-20 standard.

🤖
Query this contract from your AI
Reference: ldo-eth 0x5a98fcbea516cf06857215779fd812ca3bef1b32
Sample prompt: “Tell me the current state of ldo-eth”
No AI wired up yet? → mcp.smarts.md

Admin & Risk

Who can change the rules?

No admin risk controls detected from the verified ABI.

Overview

Read Functions
15
Write Functions
10
Events
4

Read Functions

Block #25,169,811 · just now
name() view → Lido DAO Token

Returns

Name Type Description
string
creationBlock() view → 11,473,216

Returns

Name Type Description
uint256
totalSupply() view → 1,000,000,000 LDO
dev: This function makes it easy to get the total number of tokens

Returns

Name Type Description
uint256 The total number of tokens
decimals() view → 18

Returns

Name Type Description
uint8
balanceOfAt(_owner: address, _blockNumber: uint256) view
dev: Queries the balance of `_owner` at a specific `_blockNumber`

Parameters

Name Type Description
_owner address The address from which the balance will be retrieved
_blockNumber uint256 The block number when the balance is queried

Returns

Name Type Description
uint256 The balance at `_blockNumber`
version() view → MMT_0.1

Returns

Name Type Description
string
balanceOf(_owner: address) view

Parameters

Name Type Description
_owner address The address that's balance is being requested

Returns

Name Type Description
balance uint256 The balance of `_owner` at the current block
parentToken() view → 0x0000000000000000000000000000000000000000

Returns

Name Type Description
address
symbol() view → LDO

Returns

Name Type Description
string
totalSupplyAt(_blockNumber: uint256) view

Total amount of tokens at a specific `_blockNumber`.

Parameters

Name Type Description
_blockNumber uint256 The block number when the totalSupply is queried

Returns

Name Type Description
uint256 The total amount of tokens at `_blockNumber`
transfersEnabled() view → true

Returns

Name Type Description
bool
parentSnapShotBlock() view → 0

Returns

Name Type Description
uint256
allowance(_owner: address, _spender: address) view
dev: This function makes it easy to read the `allowed[]` map

Parameters

Name Type Description
_owner address The address of the account that owns the token
_spender address The address of the account able to transfer the tokens

Returns

Name Type Description
remaining uint256 Amount of remaining tokens of _owner that _spender is allowed to spend
tokenFactory() view → 0x909d05f384d0663ed4be59863815ab43b4f347ec

Returns

Name Type Description
address
controller() view → 0xf73a1260d222f447210581ddf212d915c09a3249

Returns

Name Type Description
address

Write Functions

approve(_spender: address, _amount: uint256) nonpayable

`msg.sender` approves `_spender` to spend `_amount` tokens on its behalf. This is a modified version of the ERC20 approve function to be a little bit safer

Parameters

Name Type Description
_spender address The address of the account able to transfer the tokens
_amount uint256 The amount of tokens to be approved for transfer

Returns

Name Type Description
success bool True if the approval was successful
transferFrom(_from: address, _to: address, _amount: uint256) nonpayable

Send `_amount` tokens to `_to` from `_from` on the condition it is approved by `_from`

Parameters

Name Type Description
_from address The address holding the tokens being transferred
_to address The address of the recipient
_amount uint256 The amount of tokens to be transferred

Returns

Name Type Description
success bool True if the transfer was successful
changeController(_newController: address) nonpayable

Changes the controller of the contract

Parameters

Name Type Description
_newController address The new controller of the contract
createCloneToken(_cloneTokenName: string, _cloneDecimalUnits: uint8, _cloneTokenSymbol: string, _snapshotBlock: uint256, _transfersEnabled: bool) nonpayable

Creates a new clone token with the initial distribution being this token at `_snapshotBlock`

Parameters

Name Type Description
_cloneTokenName string Name of the clone token
_cloneDecimalUnits uint8 Number of decimals of the smallest unit
_cloneTokenSymbol string Symbol of the clone token
_snapshotBlock uint256 Block when the distribution of the parent token is copied to set the initial distribution of the new clone token; if the block is zero than the actual block, the current block is used
_transfersEnabled bool True if transfers are allowed in the clone

Returns

Name Type Description
address The address of the new MiniMeToken Contract
generateTokens(_owner: address, _amount: uint256) nonpayable

Generates `_amount` tokens that are assigned to `_owner`

Parameters

Name Type Description
_owner address The address that will be assigned the new tokens
_amount uint256 The quantity of tokens generated

Returns

Name Type Description
bool True if the tokens are generated correctly
transfer(_to: address, _amount: uint256) nonpayable

Send `_amount` tokens to `_to` from `msg.sender`

Parameters

Name Type Description
_to address The address of the recipient
_amount uint256 The amount of tokens to be transferred

Returns

Name Type Description
success bool Whether the transfer was successful or not
approveAndCall(_spender: address, _amount: uint256, _extraData: bytes) nonpayable

`msg.sender` approves `_spender` to send `_amount` tokens on its behalf, and then a function is triggered in the contract that is being approved, `_spender`. This allows users to use their tokens to interact with contracts in one function call instead of two

Parameters

Name Type Description
_spender address The address of the contract able to transfer the tokens
_amount uint256 The amount of tokens to be approved for transfer
_extraData bytes

Returns

Name Type Description
success bool True if the function call was successful
destroyTokens(_owner: address, _amount: uint256) nonpayable

Burns `_amount` tokens from `_owner`

Parameters

Name Type Description
_owner address The address that will lose the tokens
_amount uint256 The quantity of tokens to burn

Returns

Name Type Description
bool True if the tokens are burned correctly
claimTokens(_token: address) nonpayable

This method can be used by the controller to extract mistakenly sent tokens to this contract.

Parameters

Name Type Description
_token address The address of the token contract that you want to recover set to 0 in case you want to extract ether.
enableTransfers(_transfersEnabled: bool) nonpayable

Enables token holders to transfer their tokens freely if true

Parameters

Name Type Description
_transfersEnabled bool True if transfers are allowed in the clone

Events

ClaimedTokens(_token: address, _controller: address, _amount: uint256)

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

Name Type Indexed Description
_token address
_controller address
_amount uint256
Transfer(_from: address, _to: address, _amount: uint256)
Name Type Indexed Description
_from address
_to address
_amount uint256
NewCloneToken(_cloneToken: address, _snapshotBlock: uint256)
Name Type Indexed Description
_cloneToken address
_snapshotBlock uint256
Approval(_owner: address, _spender: address, _amount: uint256)
Name Type Indexed Description
_owner address
_spender address
_amount uint256