More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Vault
Compiler Version
vyper:0.3.10
Contract Source Code (Vyper language format)
# pragma version 0.3.10 """ @title Vault @author CurveFi @notice Holds the chain native asset and ERC20s """ from vyper.interfaces import ERC20 event CommitOwnership: future_owner: address event ApplyOwnership: owner: address NATIVE: constant(address) = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE owner: public(address) future_owner: public(address) @external def __init__(_owner: address): self.owner = _owner log ApplyOwnership(_owner) @external def transfer(_token: address, _to: address, _value: uint256): """ @notice Transfer an asset @param _token The token to transfer, or NATIVE if transferring the chain native asset @param _to The destination of the asset @param _value The amount of the asset to transfer """ assert msg.sender == self.owner if _token == NATIVE: send(_to, _value) else: assert ERC20(_token).transfer(_to, _value, default_return_value=True) @external def commit_future_owner(_future_owner: address): assert msg.sender == self.owner self.future_owner = _future_owner log CommitOwnership(_future_owner) @external def apply_future_owner(): assert msg.sender == self.owner future_owner: address = self.future_owner self.owner = future_owner log ApplyOwnership(future_owner) @payable @external def __default__(): assert len(msg.data) == 0
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"name":"CommitOwnership","inputs":[{"name":"future_owner","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"name":"ApplyOwnership","inputs":[{"name":"owner","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"stateMutability":"nonpayable","type":"constructor","inputs":[{"name":"_owner","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"transfer","inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"commit_future_owner","inputs":[{"name":"_future_owner","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"apply_future_owner","inputs":[],"outputs":[]},{"stateMutability":"payable","type":"fallback"},{"stateMutability":"view","type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"future_owner","inputs":[],"outputs":[{"name":"","type":"address"}]}]
Contract Creation Code
3461005b5760206102735f395f518060a01c61005b576040526040515f557febee2d5739011062cb4f14113f3b36bf0ffe3da5c0568f64189d1012a118910560405160605260206060a161020061005f61000039610200610000f35b5f80fd5f3560e01c60026006820660011b6101f401601e395f51565b638da5cb5b81186101e957346101f0575f5460405260206040f36101e9565b631ec0cdc181186101e957346101f05760015460405260206040f36101e9565b63beabacc881186101e9576064361034176101f0576004358060a01c6101f0576040526024358060a01c6101f0576060525f5433186101f05773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee604051186100c3575f5f5f5f6044356060515ff1156101f05761012a565b60405163a9059cbb60805260605160a05260443560c052602060806044609c5f855af16100f2573d5f5f3e3d5ffd5b3d61010857803b156101f057600160e05261011f565b60203d106101f0576080518060011c6101f05760e0525b60e0905051156101f0575b006101e9565b63501579f8811861018f576024361034176101f0576004358060a01c6101f0576040525f5433186101f0576040516001557f2f56810a6bf40af059b96d3aea4db54081f378029a518390491093a7b67032e960405160605260206060a1005b633d6da5d881186101e957346101f0575f5433186101f0576001546040526040515f557febee2d5739011062cb4f14113f3b36bf0ffe3da5c0568f64189d1012a118910560405160605260206060a1006101e9566101e9565b5b366101f057005b5f80fd01e801e8013000180057003784190200810c00a16576797065728300030a00140000000000000000000000006c9578402a3ace046a12839f45f84aa5448e9c30
Deployed Bytecode
0x5f3560e01c60026006820660011b6101f401601e395f51565b638da5cb5b81186101e957346101f0575f5460405260206040f36101e9565b631ec0cdc181186101e957346101f05760015460405260206040f36101e9565b63beabacc881186101e9576064361034176101f0576004358060a01c6101f0576040526024358060a01c6101f0576060525f5433186101f05773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee604051186100c3575f5f5f5f6044356060515ff1156101f05761012a565b60405163a9059cbb60805260605160a05260443560c052602060806044609c5f855af16100f2573d5f5f3e3d5ffd5b3d61010857803b156101f057600160e05261011f565b60203d106101f0576080518060011c6101f05760e0525b60e0905051156101f0575b006101e9565b63501579f8811861018f576024361034176101f0576004358060a01c6101f0576040525f5433186101f0576040516001557f2f56810a6bf40af059b96d3aea4db54081f378029a518390491093a7b67032e960405160605260206060a1005b633d6da5d881186101e957346101f0575f5433186101f0576001546040526040515f557febee2d5739011062cb4f14113f3b36bf0ffe3da5c0568f64189d1012a118910560405160605260206060a1006101e9566101e9565b5b366101f057005b5f80fd01e801e80130001800570037
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000006c9578402a3ace046a12839f45f84aa5448e9c30
-----Decoded View---------------
Arg [0] : _owner (address): 0x6c9578402A3ace046A12839f45F84Aa5448E9c30
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000006c9578402a3ace046a12839f45f84aa5448e9c30
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
TAIKO | 100.00% | $3,281 | 0.00296429 | $9.73 |
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.