0x40907540d8a6c65c637785e8f8b742ae6b0b9968
Proxy 實作合約: 0x3a93c17fc82cc33420d1809dda9fb715cc89dd37
Solidity v0.4.24+commit.e67f0147
管理與風險
誰能修改規則?
Detected upgradeable controls from the verified ABI.
當前控制
- Implementation
- 0x3a93c17fc82cc33420d1809dda9fb715cc89dd37 ↗ Etherscan → smarts proxy
概覽
讀取函式
Block #25,494,039 · just nowReturn the role identifier used to grant or verify the protected token role.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | bytes32 role identifier for the PROTECTED_TOKEN role used with AccessControl to grant or check permissions.✨ AI |
Tells whether this contract supports a given ERC-165 interface
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _interfaceId | bytes4 | Interface bytes to check |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | True if this contract supports the interface |
Indicates whether the contract has completed its one-time initialization.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | Whether the contract has been initialized by the time of the current block |
Returns the ERC-1271 interface identifier used to indicate the contract supports signature verification.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes4 | bytes4: ERC-1271 interface identifier constant used to signal support for isValidSignature verification.✨ AI |
Validate a signature for the provided data and return the ERC-1271 magic value.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _hash | bytes32 | Arbitrary length data signed on the behalf of address(this) |
| _signature | bytes | Signature byte array associated with _data |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes4 | A bytes4 magic value 0x20c13b0b if the signature check passes, 0x00000000 if not MUST NOT modify state (using STATICCALL for solc < 0.5, view modifier for solc > 0.5) MUST allow external calls |
Returns the bytes4 indicator that the contract uses to represent an invalid ERC1271 signature.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes4 | The bytes4 value used to indicate an invalid ERC1271 signature result.✨ AI |
Returns the role identifier used to authorize asset transfer operations.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | The bytes32 role identifier (hash) for TRANSFER_ROLE, used to check or grant transfer permissions.✨ AI |
Validate a signature for the provided data and return the ERC-1271 magic value.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _data | bytes | Message or data blob that was signed.✨ AI |
| _signature | bytes | Signature byte array associated with _data |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes4 | A bytes4 magic value 0x20c13b0b if the signature check passes, 0x00000000 if not MUST NOT modify state (using STATICCALL for solc < 0.5, view modifier for solc > 0.5) MUST allow external calls |
Return the number of protected tokens tracked by the Agent contract.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | uint256 | Number of protected tokens stored in the contract.✨ AI |
Return the executor address responsible for running a given EVM script.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _script | bytes | Serialized EVM script bytes used to determine the appropriate executor.✨ AI |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address | Address of the executor contract that can run the provided script, or the zero address if no executor is registered.✨ AI |
Returns the address of the contract's recovery vault.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address | Recovery vault address for the app |
Get the role identifier used to authorize execution of runScript operations.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | The bytes32 constant identifying the RUN_SCRIPT role used in access control checks.✨ AI |
Returns the bytes32 identifier for the SAFE_EXECUTE_ROLE role.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | Bytes32 role identifier used to grant or verify the SAFE_EXECUTE_ROLE.✨ AI |
Return the role identifier used to authorize removing protected tokens.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | bytes32 role identifier constant for REMOVE_PROTECTED_TOKEN_ROLE✨ AI |
Checks whether the agent currently accepts new deposits.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | True if the contract currently accepts deposits; false otherwise.✨ AI |
Return the bytes32 role identifier used to grant or check designate-signer permissions.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | The bytes32 role identifier constant representing the DESIGNATE_SIGNER_ROLE.✨ AI |
Returns the role identifier required to execute agent actions.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | The bytes32 role identifier that grants permission to execute actions.✨ AI |
Check whether the Agent allows recovering a specific token or ETH.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | bool whether the app allows the recovery |
Returns the app identifier associated with this Agent.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | The bytes32 application identifier that uniquely identifies the Agent's application or protocol.✨ AI |
Return the address of a protected token at the specified index.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | uint256 |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address | Address of the protected token located at the provided index.✨ AI |
Returns the block number when the contract was initialized.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | uint256 | Block number in which the contract was initialized |
Return the ERC-1271 magic value that indicates a valid contract signature.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes4 | The 4-byte ERC-1271 value (magic return) used to signal a valid signature.✨ AI |
Check whether a given sender is allowed to perform the specified role under the provided parameters.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _sender | address | Sender of the call |
| _role | bytes32 | Role on this app |
| _params | uint256[] | Permission params for the role |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | Boolean indicating whether the sender has the permissions to perform the action. Always returns false if the app hasn't been initialized yet. |
Return the address of the contract registered as the EVM script registry.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address | The address of the EVMScriptRegistry contract used to resolve and execute EVM scripts.✨ AI |
Returns the address designated as the contract's signer.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address | The address currently configured as the designated signer for this Agent contract.✨ AI |
Returns the cap on the number of protected tokens.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | uint256 | The cap value (uint256) representing the maximum number of protected tokens.✨ AI |
Returns the bytes32 identifier for the ADD_PRESIGNED_HASH_ROLE role.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 | The bytes32 role identifier used to grant or check the ADD_PRESIGNED_HASH_ROLE permission.✨ AI |
Check whether a given 32-byte hash has been pre-signed by this agent.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes32 |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | True if the provided hash corresponds to a recorded pre-signed authorization; otherwise false.✨ AI |
Tells whether `_sender` can forward actions or not
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _sender | address | Address of the account intending to forward an action |
| _evmScript | bytes |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | True if the given address can run scripts, false otherwise |
Return the address of the Kernel contract associated with this Agent.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | address | The address of the Kernel contract linked to this Agent.✨ AI |
Return whether the Agent is currently petrified.✨ AI
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | True if the Agent is petrified, false otherwise.✨ AI |
Return the Agent's token balance for the specified token address.✨ AI
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _token | address | The token contract address to query.✨ AI |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | uint256 | The token balance held by the Agent, expressed in the token's smallest unit (e.g., wei).✨ AI |
Tells whether the Agent app is a forwarder or not
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bool | Always true |
寫入函式
Handle the receipt of an NFT
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _operator | address | |
| _from | address | |
| _tokenId | uint256 | |
| _data | bytes |
回傳值
| 名稱 | 類型 | 描述 |
|---|---|---|
| — | bytes4 | bytes4 `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))` |
Deposit `_value` `_token` to the vault
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _token | address | Address of the token being transferred |
| _value | uint256 | Amount of tokens being transferred |
Pre-sign hash `_hash`
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _hash | bytes32 | Hash that will be considered signed regardless of the signature checked with 'isValidSignature()' |
Remove `_token.symbol(): string` from the list of protected tokens
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _token | address | Address of the token to be unprotected |
Add `_token.symbol(): string` to the list of protected tokens
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _token | address | Address of the token to be protected |
Initialize Vault app
Send funds to recovery Vault. This contract should never receive funds, but in case it does, this function allows one to recover them.
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _token | address | Token balance to be sent to recovery vault. |
Set `_designatedSigner` as the designated signer of the app, which will be able to sign messages on behalf of the app
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _designatedSigner | address | Address that will be able to sign messages on behalf of the app |
Execute '`@radspec(_target, _data)`' on `_target`, ensuring that protected tokens can't be spent
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _target | address | Address where the action is being executed |
| _data | bytes | Calldata for the action |
Execute '`@radspec(_target, _data)`' on `_target``_ethValue == 0 ? '' : ' (Sending ' + @tokenAmount(0x0000000000000000000000000000000000000000, _ethValue) + ')'`
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _target | address | Address where the action is being executed |
| _ethValue | uint256 | Amount of ETH from the contract that is sent with the action |
| _data | bytes | Calldata for the action |
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _token | address | |
| _to | address | |
| _value | uint256 |
Execute the script as the Agent app
參數
| 名稱 | 類型 | 描述 |
|---|---|---|
| _evmScript | bytes | Script being executed |
事件
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| sender | address | ✓ | |
| target | address | ✓ | |
| data | bytes |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| sender | address | ✓ | |
| target | address | ✓ | |
| ethValue | uint256 | ||
| data | bytes |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| token | address | ✓ |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| token | address | ✓ |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| sender | address | ✓ | |
| hash | bytes32 | ✓ |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| sender | address | ✓ | |
| oldSigner | address | ✓ | |
| newSigner | address | ✓ |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| token | address | ✓ | |
| operator | address | ✓ | |
| from | address | ✓ | |
| tokenId | uint256 | ||
| data | bytes |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| token | address | ✓ | |
| to | address | ✓ | |
| amount | uint256 |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| token | address | ✓ | |
| sender | address | ✓ | |
| amount | uint256 |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| executor | address | ✓ | |
| script | bytes | ||
| input | bytes | ||
| returnData | bytes |
| 名稱 | 類型 | 已索引 | 描述 |
|---|---|---|---|
| vault | address | ✓ | |
| token | address | ✓ | |
| amount | uint256 |