EntryPoint
World Chain0x0000000071727de22e5e9d8baf0edac6f37da032
Solidity v0.8.23+commit.f704f362
🤖
Query this contract from your AI
Reference:
0x0000000071727de22e5e9d8baf0edac6f37da032
Sample prompt:
"Tell me the current state of world/0x0000000071727de22e5e9d8baf0edac6f37da032"
No AI wired up yet? →
mcp.smarts.md
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
7
Write Functions
11
Events
12
Read Functions
balanceOf(account: address)
view
Parameters
| Name | Type | Description |
|---|---|---|
| account | address | - The account to query. |
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 | - The deposit (for gas payment) of the account. |
deposits(address)
view
Parameters
| Name | Type | Description |
|---|---|---|
| — | address |
Returns
| Name | Type | Description |
|---|---|---|
| deposit | uint256 | |
| staked | bool | |
| stake | uint112 | |
| unstakeDelaySec | uint32 | |
| withdrawTime | uint48 |
getDepositInfo(account: address)
view
Parameters
| Name | Type | Description |
|---|---|---|
| account | address | - The account to query. |
Returns
| Name | Type | Description |
|---|---|---|
| info | tuple | info - Full deposit information of given account. |
getNonce(sender: address, key: uint192)
view
Parameters
| Name | Type | Description |
|---|---|---|
| sender | address | the account address |
| key | uint192 | the high 192 bit of the nonce |
Returns
| Name | Type | Description |
|---|---|---|
| nonce | uint256 | nonce a full nonce to pass for next UserOp with this sender. |
getUserOpHash(userOp: tuple)
view
Parameters
| Name | Type | Description |
|---|---|---|
| userOp | tuple | - The user operation to generate the request ID for. |
Returns
| Name | Type | Description |
|---|---|---|
| — | bytes32 | hash the hash of this UserOperation |
nonceSequenceNumber(address, uint192)
view
Parameters
| Name | Type | Description |
|---|---|---|
| — | address | |
| — | uint192 |
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
supportsInterface(interfaceId: bytes4)
view
dev: See {IERC165-supportsInterface}.
Parameters
| Name | Type | Description |
|---|---|---|
| interfaceId | bytes4 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
Write Functions
addStake(unstakeDelaySec: uint32)
payable
Parameters
| Name | Type | Description |
|---|---|---|
| unstakeDelaySec | uint32 | The new lock duration before the deposit can be withdrawn. |
delegateAndRevert(target: address, data: bytes)
nonpayable
dev: calling this method, the EntryPoint will make a delegatecall to the given data, and report (via revert) the result. The method always revert, so is only useful off-chain for dry run calls, in cases where state-override to replace actual EntryPoint code is less convenient.
Parameters
| Name | Type | Description |
|---|---|---|
| target | address | a target contract to make a delegatecall from entrypoint |
| data | bytes | data to pass to target in a delegatecall |
depositTo(account: address)
payable
Parameters
| Name | Type | Description |
|---|---|---|
| account | address | - The account to add to. |
getSenderAddress(initCode: bytes)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| initCode | bytes | - The constructor code to be passed into the UserOperation. |
handleAggregatedOps(opsPerAggregator: tuple[], beneficiary: address)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| opsPerAggregator | tuple[] | - The operations to execute, grouped by aggregator (or address(0) for no-aggregator accounts). |
| beneficiary | address | - The address to receive the fees. |
handleOps(ops: tuple[], beneficiary: address)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| ops | tuple[] | - The operations to execute. |
| beneficiary | address | - The address to receive the fees. |
incrementNonce(key: uint192)
nonpayable
Manually increment the nonce of the sender. This method is exposed just for completeness.. Account does NOT need to call it, neither during validation, nor elsewhere, as the EntryPoint will update the nonce regardless. Possible use-case is call it with various keys to "initialize" their nonces to one, so that future UserOperations will not pay extra for the first transaction with a given key.
Parameters
| Name | Type | Description |
|---|---|---|
| key | uint192 |
innerHandleOp(callData: bytes, opInfo: tuple, context: bytes)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| callData | bytes | - The callData to execute. |
| opInfo | tuple | - The UserOpInfo struct. |
| context | bytes | - The context bytes. |
Returns
| Name | Type | Description |
|---|---|---|
| actualGasCost | uint256 | actualGasCost - the actual cost in eth this UserOperation paid for gas |
unlockStake()
nonpayable
Attempt to unlock the stake. The value can be withdrawn (using withdrawStake) after the unstake delay.
withdrawStake(withdrawAddress: address)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| withdrawAddress | address | - The address to send withdrawn value. |
withdrawTo(withdrawAddress: address, withdrawAmount: uint256)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| withdrawAddress | address | - The address to send withdrawn value. |
| withdrawAmount | uint256 | - The amount to withdraw. |
Events
AccountDeployed(userOpHash: bytes32, sender: address, factory: address, paymaster: address)
| Name | Type | Indexed | Description |
|---|---|---|---|
| userOpHash | bytes32 | ✓ | - The userOp that deployed this account. UserOperationEvent will follow. |
| sender | address | ✓ | - The account that is deployed |
| factory | address | - The factory used to deploy this account (in the initCode) | |
| paymaster | address | - The paymaster used by this UserOp |
BeforeExecution()
An event emitted by handleOps(), before starting the execution loop. Any event emitted before this event, is part of the validation.
Deposited(account: address, totalDeposit: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| account | address | ✓ | |
| totalDeposit | uint256 |
PostOpRevertReason(userOpHash: bytes32, sender: address, nonce: uint256, revertReason: bytes)
| Name | Type | Indexed | Description |
|---|---|---|---|
| userOpHash | bytes32 | ✓ | - The request unique identifier. |
| sender | address | ✓ | - The sender of this request. |
| nonce | uint256 | - The nonce used in the request. | |
| revertReason | bytes | - The return bytes from the (reverted) call to "callData". |
SignatureAggregatorChanged(aggregator: address)
| Name | Type | Indexed | Description |
|---|---|---|---|
| aggregator | address | ✓ | - The aggregator used for the following UserOperationEvents. |
StakeLocked(account: address, totalStaked: uint256, unstakeDelaySec: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| account | address | ✓ | |
| totalStaked | uint256 | ||
| unstakeDelaySec | uint256 |
StakeUnlocked(account: address, withdrawTime: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| account | address | ✓ | |
| withdrawTime | uint256 |
StakeWithdrawn(account: address, withdrawAddress: address, amount: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| account | address | ✓ | |
| withdrawAddress | address | ||
| amount | uint256 |
UserOperationEvent(userOpHash: bytes32, sender: address, paymaster: address, nonce: uint256, success: bool, actualGasCost: uint256, actualGasUsed: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| userOpHash | bytes32 | ✓ | - Unique identifier for the request (hash its entire content, except signature). |
| sender | address | ✓ | - The account that generates this request. |
| paymaster | address | ✓ | - If non-null, the paymaster that pays for this request. |
| nonce | uint256 | - The nonce value from the request. | |
| success | bool | - True if the sender transaction succeeded, false if reverted. | |
| actualGasCost | uint256 | - Actual amount paid (by account or paymaster) for this UserOperation. | |
| actualGasUsed | uint256 | - Total gas used by this UserOperation (including preVerification, creation, validation and execution). |
UserOperationPrefundTooLow(userOpHash: bytes32, sender: address, nonce: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| userOpHash | bytes32 | ✓ | - The request unique identifier. |
| sender | address | ✓ | - The sender of this request. |
| nonce | uint256 | - The nonce used in the request. |
UserOperationRevertReason(userOpHash: bytes32, sender: address, nonce: uint256, revertReason: bytes)
| Name | Type | Indexed | Description |
|---|---|---|---|
| userOpHash | bytes32 | ✓ | - The request unique identifier. |
| sender | address | ✓ | - The sender of this request. |
| nonce | uint256 | - The nonce used in the request. | |
| revertReason | bytes | - The return bytes from the (reverted) call to "callData". |
Withdrawn(account: address, withdrawAddress: address, amount: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| account | address | ✓ | |
| withdrawAddress | address | ||
| amount | uint256 |