More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 1,281 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 18861081 | 315 days ago | IN | 0 ETH | 0.00058332 | ||||
Approve | 18861080 | 315 days ago | IN | 0 ETH | 0.00051068 | ||||
Approve | 18861079 | 315 days ago | IN | 0 ETH | 0.00048125 | ||||
Approve | 18861079 | 315 days ago | IN | 0 ETH | 0.00048125 | ||||
Approve | 18675012 | 341 days ago | IN | 0 ETH | 0.00088676 | ||||
Approve | 18674897 | 341 days ago | IN | 0 ETH | 0.0010256 | ||||
Withdraw ETH Adm... | 18672649 | 341 days ago | IN | 0 ETH | 0.00190439 | ||||
Upgrade To | 18672646 | 341 days ago | IN | 0 ETH | 0.00160471 | ||||
Transfer Proxy O... | 18672636 | 341 days ago | IN | 0 ETH | 0.00146698 | ||||
Upgrade To | 18672535 | 341 days ago | IN | 0 ETH | 0.0019778 | ||||
Transfer | 18672042 | 341 days ago | IN | 0 ETH | 0.00541891 | ||||
Approve | 18671809 | 341 days ago | IN | 0 ETH | 0.00245097 | ||||
Approve | 18671413 | 341 days ago | IN | 0 ETH | 0.00274353 | ||||
Transfer | 18671383 | 341 days ago | IN | 0 ETH | 0.0048639 | ||||
Approve | 18669648 | 341 days ago | IN | 0 ETH | 0.00135046 | ||||
Transfer | 18669590 | 341 days ago | IN | 0 ETH | 0.00495881 | ||||
Approve | 18668855 | 341 days ago | IN | 0 ETH | 0.00165862 | ||||
Approve | 18668462 | 342 days ago | IN | 0 ETH | 0.00129902 | ||||
Approve | 18667767 | 342 days ago | IN | 0 ETH | 0.00188873 | ||||
Approve | 18667417 | 342 days ago | IN | 0 ETH | 0.00193976 | ||||
Approve | 18667223 | 342 days ago | IN | 0 ETH | 0.00170594 | ||||
Approve | 18666868 | 342 days ago | IN | 0 ETH | 0.00185313 | ||||
Approve | 18665207 | 342 days ago | IN | 0 ETH | 0.00219282 | ||||
Approve | 18665186 | 342 days ago | IN | 0 ETH | 0.00234106 | ||||
Transfer | 18662949 | 342 days ago | IN | 0 ETH | 0.00835269 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
18672649 | 341 days ago | 0.09025186 ETH |
Loading...
Loading
Contract Name:
VZZNProxy
Compiler Version
v0.8.16+commit.07a7930e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-02-19 */ // Sources flattened with hardhat v2.12.6 https://hardhat.org // File contracts/VZZNProxy.sol // SPDX-License-Identifier: Apache-2.0 pragma solidity ^0.8.0; /** * @title VZZNProxy * @dev This contract combines an upgradeability proxy with basic authorization control functionalities */ contract VZZNProxy { /** * @dev Event to show ownership has been transferred * @param previousOwner representing the address of the previous owner * @param newOwner representing the address of the new owner */ event ProxyOwnershipTransferred(address previousOwner, address newOwner); /** * @dev This event will be emitted every time the implementation gets upgraded * @param implementation representing the address of the upgraded implementation */ event Upgraded(address indexed implementation); // Storage position of the address of the maintenance boolean bytes32 private constant maintenancePosition = keccak256("com.proxy.maintenance"); // Storage position of the address of the current implementation bytes32 private constant implementationPosition = keccak256("com.proxy.implementation"); // Storage position of the owner of the contract bytes32 private constant proxyOwnerPosition = keccak256("com.proxy.owner"); /** * @dev the constructor sets the original owner of the contract to the sender account. */ constructor() { setUpgradeabilityOwner(msg.sender); } /** * @dev Tells if contract is on maintenance * @return _maintenance if contract is on maintenance */ function maintenance() public view returns (bool _maintenance) { bytes32 position = maintenancePosition; assembly { _maintenance := sload(position) } } /** * @dev Sets if contract is on maintenance */ function setMaintenance(bool _maintenance) external onlyProxyOwner { bytes32 position = maintenancePosition; assembly { sstore(position, _maintenance) } } /** * @dev Tells the address of the owner * @return owner the address of the owner */ function proxyOwner() public view returns (address owner) { bytes32 position = proxyOwnerPosition; assembly { owner := sload(position) } } /** * @dev Sets the address of the owner */ function setUpgradeabilityOwner(address newProxyOwner) internal { bytes32 position = proxyOwnerPosition; assembly { sstore(position, newProxyOwner) } } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferProxyOwnership(address newOwner) public onlyProxyOwner { require(newOwner != address(0), 'VZZNProxy: INVALID'); emit ProxyOwnershipTransferred(proxyOwner(), newOwner); setUpgradeabilityOwner(newOwner); } /* * @dev Allows the proxy owner to upgrade the current version of the proxy. * @param implementation representing the address of the new implementation to be set. */ function upgradeTo(address newImplementation) public onlyProxyOwner { _upgradeTo(newImplementation); } /* * @dev Allows the proxy owner to upgrade the current version of the proxy and call the new implementation * to initialize whatever is needed through a low level call. * @param implementation representing the address of the new implementation to be set. * @param data represents the msg.data to bet sent in the low level call. This parameter may include the function * signature of the implementation to be called with the needed payload */ function upgradeToAndCall(address newImplementation, bytes memory data) payable public onlyProxyOwner { upgradeTo(newImplementation); (bool success, ) = address(this).call{ value: msg.value }(data); require(success, "VZZNProxy: INVALID"); } /** * @dev Fallback function allowing to perform a delegatecall to the given implementation. * This function will return whatever the implementation call returns */ fallback() external payable { _fallback(); } receive () external payable { _fallback(); } /** * @dev Tells the address of the current implementation * @return impl address of the current implementation */ function implementation() public view returns (address impl) { bytes32 position = implementationPosition; assembly { impl := sload(position) } } /** * @dev Sets the address of the current implementation * @param newImplementation address representing the new implementation to be set */ function setImplementation(address newImplementation) internal { bytes32 position = implementationPosition; assembly { sstore(position, newImplementation) } } /** * @dev Upgrades the implementation address * @param newImplementation representing the address of the new implementation to be set */ function _upgradeTo(address newImplementation) internal { address currentImplementation = implementation(); require(currentImplementation != newImplementation, 'VZZNProxy: INVALID'); setImplementation(newImplementation); emit Upgraded(newImplementation); } function _fallback() internal { if (maintenance()) { require(msg.sender == proxyOwner(), 'VZZNProxy: FORBIDDEN'); } address _impl = implementation(); require(_impl != address(0), 'VZZNProxy: INVALID'); assembly { let ptr := mload(0x40) calldatacopy(ptr, 0, calldatasize()) let result := delegatecall(gas(), _impl, ptr, calldatasize(), 0, 0) let size := returndatasize() returndatacopy(ptr, 0, size) switch result case 0 { revert(ptr, size) } default { return(ptr, size) } } } /** * @dev Throws if called by any account other than the owner. */ modifier onlyProxyOwner() { require(msg.sender == proxyOwner(), 'VZZNProxy: FORBIDDEN'); _; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"ProxyOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"impl","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maintenance","outputs":[{"internalType":"bool","name":"_maintenance","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxyOwner","outputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_maintenance","type":"bool"}],"name":"setMaintenance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferProxyOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405234801561001057600080fd5b50610039337f85bd7031deaf76b80f9733e7da132fe310adf86a8e73260691b76988b4b7e35d55565b610790806100486000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b146100f9578063612f2f371461011b5780636c376cc51461013b578063f1739cae1461017a57610083565b8063025313a21461008b5780633659cfe6146100c65780634f1ef286146100e657610083565b366100835761008161019a565b005b61008161019a565b34801561009757600080fd5b5060008051602061071b833981519152545b6040516001600160a01b0390911681526020015b60405180910390f35b3480156100d257600080fd5b506100816100e1366004610575565b61026f565b6100816100f43660046105ad565b6102bb565b34801561010557600080fd5b5060008051602061073b833981519152546100a9565b34801561012757600080fd5b5061008161013636600461066f565b610387565b34801561014757600080fd5b507fce60c5db904241f4fe710c6b7d7c2e6f59bb4f2afc9ad1549ac9b29eb7f522b65460405190151581526020016100bd565b34801561018657600080fd5b50610081610195366004610575565b6103eb565b7fce60c5db904241f4fe710c6b7d7c2e6f59bb4f2afc9ad1549ac9b29eb7f522b6541561020a5760008051602061071b833981519152546001600160a01b0316336001600160a01b03161461020a5760405162461bcd60e51b815260040161020190610691565b60405180910390fd5b600061022260008051602061073b8339815191525490565b90506001600160a01b03811661024a5760405162461bcd60e51b8152600401610201906106bf565b60405136600082376000803683855af43d806000843e81801561026b578184f35b8184fd5b60008051602061071b833981519152546001600160a01b0316336001600160a01b0316146102af5760405162461bcd60e51b815260040161020190610691565b6102b8816104c0565b50565b60008051602061071b833981519152546001600160a01b0316336001600160a01b0316146102fb5760405162461bcd60e51b815260040161020190610691565b6103048261026f565b6000306001600160a01b0316348360405161031f91906106eb565b60006040518083038185875af1925050503d806000811461035c576040519150601f19603f3d011682016040523d82523d6000602084013e610361565b606091505b50509050806103825760405162461bcd60e51b8152600401610201906106bf565b505050565b60008051602061071b833981519152546001600160a01b0316336001600160a01b0316146103c75760405162461bcd60e51b815260040161020190610691565b7fce60c5db904241f4fe710c6b7d7c2e6f59bb4f2afc9ad1549ac9b29eb7f522b655565b60008051602061071b833981519152546001600160a01b0316336001600160a01b03161461042b5760405162461bcd60e51b815260040161020190610691565b6001600160a01b0381166104515760405162461bcd60e51b8152600401610201906106bf565b7f5a3e66efaa1e445ebd894728a69d6959842ea1e97bd79b892797106e270efcd961048860008051602061071b8339815191525490565b604080516001600160a01b03928316815291841660208301520160405180910390a16102b88160008051602061071b83398151915255565b60006104d860008051602061073b8339815191525490565b9050816001600160a01b0316816001600160a01b03160361050b5760405162461bcd60e51b8152600401610201906106bf565b6105218260008051602061073b83398151915255565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a25050565b80356001600160a01b038116811461057057600080fd5b919050565b60006020828403121561058757600080fd5b61059082610559565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156105c057600080fd5b6105c983610559565b9150602083013567ffffffffffffffff808211156105e657600080fd5b818501915085601f8301126105fa57600080fd5b81358181111561060c5761060c610597565b604051601f8201601f19908116603f0116810190838211818310171561063457610634610597565b8160405282815288602084870101111561064d57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561068157600080fd5b8135801515811461059057600080fd5b6020808252601490820152732b2d2d27283937bc3c9d102327a92124a22222a760611b604082015260600190565b60208082526012908201527115969693941c9bde1e4e881253959053125160721b604082015260600190565b6000825160005b8181101561070c57602081860181015185830152016106f2565b50600092019182525091905056fe85bd7031deaf76b80f9733e7da132fe310adf86a8e73260691b76988b4b7e35df968882b178b4a61d620bde63916829c95f3e1b54eb01ef03837ff1b870f4076a26469706673582212203703c51af3afe7adbaeade24db21fac8ad4d39565316bf8dacfdf29e437f410564736f6c63430008100033
Deployed Bytecode
0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b146100f9578063612f2f371461011b5780636c376cc51461013b578063f1739cae1461017a57610083565b8063025313a21461008b5780633659cfe6146100c65780634f1ef286146100e657610083565b366100835761008161019a565b005b61008161019a565b34801561009757600080fd5b5060008051602061071b833981519152545b6040516001600160a01b0390911681526020015b60405180910390f35b3480156100d257600080fd5b506100816100e1366004610575565b61026f565b6100816100f43660046105ad565b6102bb565b34801561010557600080fd5b5060008051602061073b833981519152546100a9565b34801561012757600080fd5b5061008161013636600461066f565b610387565b34801561014757600080fd5b507fce60c5db904241f4fe710c6b7d7c2e6f59bb4f2afc9ad1549ac9b29eb7f522b65460405190151581526020016100bd565b34801561018657600080fd5b50610081610195366004610575565b6103eb565b7fce60c5db904241f4fe710c6b7d7c2e6f59bb4f2afc9ad1549ac9b29eb7f522b6541561020a5760008051602061071b833981519152546001600160a01b0316336001600160a01b03161461020a5760405162461bcd60e51b815260040161020190610691565b60405180910390fd5b600061022260008051602061073b8339815191525490565b90506001600160a01b03811661024a5760405162461bcd60e51b8152600401610201906106bf565b60405136600082376000803683855af43d806000843e81801561026b578184f35b8184fd5b60008051602061071b833981519152546001600160a01b0316336001600160a01b0316146102af5760405162461bcd60e51b815260040161020190610691565b6102b8816104c0565b50565b60008051602061071b833981519152546001600160a01b0316336001600160a01b0316146102fb5760405162461bcd60e51b815260040161020190610691565b6103048261026f565b6000306001600160a01b0316348360405161031f91906106eb565b60006040518083038185875af1925050503d806000811461035c576040519150601f19603f3d011682016040523d82523d6000602084013e610361565b606091505b50509050806103825760405162461bcd60e51b8152600401610201906106bf565b505050565b60008051602061071b833981519152546001600160a01b0316336001600160a01b0316146103c75760405162461bcd60e51b815260040161020190610691565b7fce60c5db904241f4fe710c6b7d7c2e6f59bb4f2afc9ad1549ac9b29eb7f522b655565b60008051602061071b833981519152546001600160a01b0316336001600160a01b03161461042b5760405162461bcd60e51b815260040161020190610691565b6001600160a01b0381166104515760405162461bcd60e51b8152600401610201906106bf565b7f5a3e66efaa1e445ebd894728a69d6959842ea1e97bd79b892797106e270efcd961048860008051602061071b8339815191525490565b604080516001600160a01b03928316815291841660208301520160405180910390a16102b88160008051602061071b83398151915255565b60006104d860008051602061073b8339815191525490565b9050816001600160a01b0316816001600160a01b03160361050b5760405162461bcd60e51b8152600401610201906106bf565b6105218260008051602061073b83398151915255565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a25050565b80356001600160a01b038116811461057057600080fd5b919050565b60006020828403121561058757600080fd5b61059082610559565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156105c057600080fd5b6105c983610559565b9150602083013567ffffffffffffffff808211156105e657600080fd5b818501915085601f8301126105fa57600080fd5b81358181111561060c5761060c610597565b604051601f8201601f19908116603f0116810190838211818310171561063457610634610597565b8160405282815288602084870101111561064d57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561068157600080fd5b8135801515811461059057600080fd5b6020808252601490820152732b2d2d27283937bc3c9d102327a92124a22222a760611b604082015260600190565b60208082526012908201527115969693941c9bde1e4e881253959053125160721b604082015260600190565b6000825160005b8181101561070c57602081860181015185830152016106f2565b50600092019182525091905056fe85bd7031deaf76b80f9733e7da132fe310adf86a8e73260691b76988b4b7e35df968882b178b4a61d620bde63916829c95f3e1b54eb01ef03837ff1b870f4076a26469706673582212203703c51af3afe7adbaeade24db21fac8ad4d39565316bf8dacfdf29e437f410564736f6c63430008100033
Deployed Bytecode Sourcemap
309:6246:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4486:11;:9;:11::i;:::-;309:6246;;4420:11;:9;:11::i;2230:183::-;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;2380:15:0;2230:183;;;-1:-1:-1;;;;;178:32:1;;;160:51;;148:2;133:18;2230:183:0;;;;;;;;3305:116;;;;;;;;;;-1:-1:-1;3305:116:0;;;;;:::i;:::-;;:::i;3913:272::-;;;;;;:::i;:::-;;:::i;4651:189::-;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;4807:15:0;4651:189;;1914:199;;;;;;;;;;-1:-1:-1;1914:199:0;;;;;:::i;:::-;;:::i;1644:196::-;;;;;;;;;;-1:-1:-1;991:34:0;1807:15;1644:196;;2166:14:1;;2159:22;2141:41;;2129:2;2114:18;1644:196:0;2001:187:1;2855:252:0;;;;;;;;;;-1:-1:-1;2855:252:0;;;;;:::i;:::-;;:::i;5690:653::-;991:34;1807:15;5731:105;;;-1:-1:-1;;;;;;;;;;;2380:15:0;-1:-1:-1;;;;;5773:26:0;:10;-1:-1:-1;;;;;5773:26:0;;5765:59;;;;-1:-1:-1;;;5765:59:0;;;;;;;:::i;:::-;;;;;;;;;5846:13;5862:16;-1:-1:-1;;;;;;;;;;;4807:15:0;;4651:189;5862:16;5846:32;-1:-1:-1;;;;;;5897:19:0;;5889:50;;;;-1:-1:-1;;;5889:50:0;;;;;;;:::i;:::-;5991:4;5985:11;6031:14;6028:1;6023:3;6010:36;6125:1;6122;6106:14;6101:3;6094:5;6087;6074:53;6153:16;6206:4;6203:1;6198:3;6183:28;6234:6;6254:28;;;;6318:4;6313:3;6306:17;6254:28;6275:4;6270:3;6263:17;3305:116;-1:-1:-1;;;;;;;;;;;2380:15:0;-1:-1:-1;;;;;6481:26:0;:10;-1:-1:-1;;;;;6481:26:0;;6473:59;;;;-1:-1:-1;;;6473:59:0;;;;;;;:::i;:::-;3384:29:::1;3395:17;3384:10;:29::i;:::-;3305:116:::0;:::o;3913:272::-;-1:-1:-1;;;;;;;;;;;2380:15:0;-1:-1:-1;;;;;6481:26:0;:10;-1:-1:-1;;;;;6481:26:0;;6473:59;;;;-1:-1:-1;;;6473:59:0;;;;;;;:::i;:::-;4026:28:::1;4036:17;4026:9;:28::i;:::-;4066:12;4092:4;-1:-1:-1::0;;;;;4084:18:0::1;4111:9;4123:4;4084:44;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4065:63;;;4147:7;4139:38;;;;-1:-1:-1::0;;;4139:38:0::1;;;;;;;:::i;:::-;4015:170;3913:272:::0;;:::o;1914:199::-;-1:-1:-1;;;;;;;;;;;2380:15:0;-1:-1:-1;;;;;6481:26:0;:10;-1:-1:-1;;;;;6481:26:0;;6473:59;;;;-1:-1:-1;;;6473:59:0;;;;;;;:::i;:::-;991:34:::1;2065:30:::0;1914:199::o;2855:252::-;-1:-1:-1;;;;;;;;;;;2380:15:0;-1:-1:-1;;;;;6481:26:0;:10;-1:-1:-1;;;;;6481:26:0;;6473:59;;;;-1:-1:-1;;;6473:59:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2946:22:0;::::1;2938:53;;;;-1:-1:-1::0;;;2938:53:0::1;;;;;;;:::i;:::-;3007:49;3033:12;-1:-1:-1::0;;;;;;;;;;;2380:15:0;;2230:183;3033:12:::1;3007:49;::::0;;-1:-1:-1;;;;;3536:15:1;;;3518:34;;3588:15;;;3583:2;3568:18;;3561:43;3453:18;3007:49:0::1;;;;;;;3067:32;3090:8;-1:-1:-1::0;;;;;;;;;;;2629:31:0;2482:196;5385:297;5452:29;5484:16;-1:-1:-1;;;;;;;;;;;4807:15:0;;4651:189;5484:16;5452:48;;5544:17;-1:-1:-1;;;;;5519:42:0;:21;-1:-1:-1;;;;;5519:42:0;;5511:73;;;;-1:-1:-1;;;5511:73:0;;;;;;;:::i;:::-;5595:36;5613:17;-1:-1:-1;;;;;;;;;;;5163:35:0;5013:203;5595:36;5647:27;;-1:-1:-1;;;;;5647:27:0;;;;;;;;5441:241;5385:297;:::o;222:173:1:-;290:20;;-1:-1:-1;;;;;339:31:1;;329:42;;319:70;;385:1;382;375:12;319:70;222:173;;;:::o;400:186::-;459:6;512:2;500:9;491:7;487:23;483:32;480:52;;;528:1;525;518:12;480:52;551:29;570:9;551:29;:::i;:::-;541:39;400:186;-1:-1:-1;;;400:186:1:o;591:127::-;652:10;647:3;643:20;640:1;633:31;683:4;680:1;673:15;707:4;704:1;697:15;723:995;800:6;808;861:2;849:9;840:7;836:23;832:32;829:52;;;877:1;874;867:12;829:52;900:29;919:9;900:29;:::i;:::-;890:39;;980:2;969:9;965:18;952:32;1003:18;1044:2;1036:6;1033:14;1030:34;;;1060:1;1057;1050:12;1030:34;1098:6;1087:9;1083:22;1073:32;;1143:7;1136:4;1132:2;1128:13;1124:27;1114:55;;1165:1;1162;1155:12;1114:55;1201:2;1188:16;1223:2;1219;1216:10;1213:36;;;1229:18;;:::i;:::-;1304:2;1298:9;1272:2;1358:13;;-1:-1:-1;;1354:22:1;;;1378:2;1350:31;1346:40;1334:53;;;1402:18;;;1422:22;;;1399:46;1396:72;;;1448:18;;:::i;:::-;1488:10;1484:2;1477:22;1523:2;1515:6;1508:18;1563:7;1558:2;1553;1549;1545:11;1541:20;1538:33;1535:53;;;1584:1;1581;1574:12;1535:53;1640:2;1635;1631;1627:11;1622:2;1614:6;1610:15;1597:46;1685:1;1680:2;1675;1667:6;1663:15;1659:24;1652:35;1706:6;1696:16;;;;;;;723:995;;;;;:::o;1723:273::-;1779:6;1832:2;1820:9;1811:7;1807:23;1803:32;1800:52;;;1848:1;1845;1838:12;1800:52;1887:9;1874:23;1940:5;1933:13;1926:21;1919:5;1916:32;1906:60;;1962:1;1959;1952:12;2193:344;2395:2;2377:21;;;2434:2;2414:18;;;2407:30;-1:-1:-1;;;2468:2:1;2453:18;;2446:50;2528:2;2513:18;;2193:344::o;2542:342::-;2744:2;2726:21;;;2783:2;2763:18;;;2756:30;-1:-1:-1;;;2817:2:1;2802:18;;2795:48;2875:2;2860:18;;2542:342::o;2889:412::-;3018:3;3056:6;3050:13;3081:1;3091:129;3105:6;3102:1;3099:13;3091:129;;;3203:4;3187:14;;;3183:25;;3177:32;3164:11;;;3157:53;3120:12;3091:129;;;-1:-1:-1;3275:1:1;3239:16;;3264:13;;;-1:-1:-1;3239:16:1;2889:412;-1:-1:-1;2889:412:1:o
Swarm Source
ipfs://3703c51af3afe7adbaeade24db21fac8ad4d39565316bf8dacfdf29e437f4105
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
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.