Overview
frxETH Balance | FXTL Balance
0 frxETH | 0 FXTL
frxETH Value
$0.00More Info
Private Name Tags
ContractCreator
GENESIS at txn GENESIS_c0d3c0d3c0d3c0d3c0d3c0d3c0d3c0d3c0d30015
Loading...
Loading
Contract Name:
FraxchainL1Block
Compiler Version
v0.8.15+commit.e14f2714
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.15; import { ISemver } from "@eth-optimism/contracts-bedrock/src/universal/ISemver.sol"; /// @custom:proxied /// @custom:predeploy 0x4200000000000000000000000000000000000015 /// @title L1Block /// @notice The L1Block predeploy gives users access to information about the last known L1 block. /// Values within this contract are updated once per epoch (every L1 block) and can only be /// set by the "depositor" account, a special system address. Depositor account transactions /// are created by the protocol whenever we move to a new epoch. contract FraxchainL1Block is ISemver { /// @notice Address of the special depositor account. address public constant DEPOSITOR_ACCOUNT = 0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001; /// @notice The latest L1 block number known by the L2 system. uint64 public number; /// @notice The latest L1 timestamp known by the L2 system. uint64 public timestamp; /// @notice The latest L1 base fee. uint256 public basefee; /// @notice The latest L1 blockhash. bytes32 public hash; /// @notice The number of L2 blocks in the same epoch. uint64 public sequenceNumber; /// @notice The scalar value applied to the L1 blob base fee portion of the blob-capable L1 cost func. uint32 public blobBaseFeeScalar; /// @notice The scalar value applied to the L1 base fee portion of the blob-capable L1 cost func. uint32 public baseFeeScalar; /// @notice The versioned hash to authenticate the batcher by. bytes32 public batcherHash; /// @notice The overhead value applied to the L1 portion of the transaction fee. /// @custom:legacy uint256 public l1FeeOverhead; /// @notice The scalar value applied to the L1 portion of the transaction fee. /// @custom:legacy uint256 public l1FeeScalar; /// @notice The latest L1 blob base fee. uint256 public blobBaseFee; /// @custom:semver 1.2.0 string public constant version = "1.2.0"; /// @notice Reserve extra slots (to a total of 50) in the storage layout for future upgrades of the L1Block contract. /// @dev Added by Frax Finance uint256[42] private __gap; /// @notice Mapping from blockHash to bool that it written after a block hash is received from L1 /// @dev Added by Frax Finance mapping(bytes32 => bool) public storedBlockHashes; /// @notice The ```BlockHashReceived``` event is emitted when a block hash is received /// @dev Added by Frax Finance /// @param blockHash A block hash of a L1 block event BlockHashReceived(bytes32 blockHash); /// @notice Updates the L1 block values. /// @param _number L1 blocknumber. /// @param _timestamp L1 timestamp. /// @param _basefee L1 basefee. /// @param _hash L1 blockhash. /// @param _sequenceNumber Number of L2 blocks since epoch start. /// @param _batcherHash Versioned hash to authenticate batcher by. /// @param _l1FeeOverhead L1 fee overhead. /// @param _l1FeeScalar L1 fee scalar. function setL1BlockValues( uint64 _number, uint64 _timestamp, uint256 _basefee, bytes32 _hash, uint64 _sequenceNumber, bytes32 _batcherHash, uint256 _l1FeeOverhead, uint256 _l1FeeScalar ) external { require(msg.sender == DEPOSITOR_ACCOUNT, "L1Block: only the depositor account can set L1 block values"); number = _number; timestamp = _timestamp; basefee = _basefee; hash = _hash; sequenceNumber = _sequenceNumber; batcherHash = _batcherHash; l1FeeOverhead = _l1FeeOverhead; l1FeeScalar = _l1FeeScalar; // Don't write state or emit event again if we already stored this hash /// @dev Added by Frax Finance if (!storedBlockHashes[_hash]) { storedBlockHashes[_hash] = true; emit BlockHashReceived(_hash); } } /// @notice The ```blockHashStored``` function returns if the _blockHash is stored or not /// @param _blockHash The block hash /// @return _result A bool representing if the _blockHash is stored or not function blockHashStored(bytes32 _blockHash) external view returns (bool _result) { _result = storedBlockHashes[_blockHash]; } /// @notice Updates the L1 block values for an Ecotone upgraded chain. /// Params are packed and passed in as raw msg.data instead of ABI to reduce calldata size. /// Params are expected to be in the following order: /// 1. _baseFeeScalar L1 base fee scalar /// 2. _blobBaseFeeScalar L1 blob base fee scalar /// 3. _sequenceNumber Number of L2 blocks since epoch start. /// 4. _timestamp L1 timestamp. /// 5. _number L1 blocknumber. /// 6. _basefee L1 base fee. /// 7. _blobBaseFee L1 blob base fee. /// 8. _hash L1 blockhash. /// 9. _batcherHash Versioned hash to authenticate batcher by. function setL1BlockValuesEcotone() external { bytes32 eventHash = bytes32(keccak256("BlockHashReceived(bytes32)")); assembly { // Revert if the caller is not the depositor account. if xor(caller(), DEPOSITOR_ACCOUNT) { mstore(0x00, 0x3cc50b45) // 0x3cc50b45 is the 4-byte selector of "NotDepositor()" revert(0x1C, 0x04) // returns the stored 4-byte selector from above } let data := calldataload(4) // sequencenum (uint64), blobBaseFeeScalar (uint32), baseFeeScalar (uint32) sstore(sequenceNumber.slot, shr(128, calldataload(4))) // number (uint64) and timestamp (uint64) sstore(number.slot, shr(128, calldataload(20))) sstore(basefee.slot, calldataload(36)) // uint256 sstore(blobBaseFee.slot, calldataload(68)) // uint256 sstore(hash.slot, calldataload(100)) // bytes32 sstore(batcherHash.slot, calldataload(132)) // bytes32 // Added by Frax Finance // load the L1 blockhash to memory mstore(0, calldataload(100)) // bytes32 // load the storage slot of storedBlockHashes to memory mstore(32, 50) // for clarity - same as storedBlackHashes.slot // Get the hash of the memory for the mapping key let key := keccak256(0, 64) // Update mapping only if the mapping has not yet been updated if eq(sload(key), false) { // Set the mapping to true sstore(key, true) // Emit the event of the blockhash from memory log1(0, 32, eventHash) } } } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /// @title ISemver /// @notice ISemver is a simple contract for ensuring that contracts are /// versioned using semantic versioning. interface ISemver { /// @notice Getter for the semantic version of the contract. This is not /// meant to be used onchain but instead meant to be used by offchain /// tooling. /// @return Semver contract version as a string. function version() external view returns (string memory); }
{ "remappings": [ "frax-std/=lib/frax-standard-solidity/src/", "@eth-optimism/=lib/optimism/packages/", "lib/optimism/packages/contracts-bedrock:src/=lib/optimism/packages/contracts-bedrock/src/", "@openzeppelin-4/=node_modules/@openzeppelin-4/", "@openzeppelin-5/=node_modules/@openzeppelin-5/", "@openzeppelin/=node_modules/@openzeppelin/", "@rari-capital/=node_modules/@rari-capital/", "clones-with-immutable-args/=lib/optimism/packages/contracts-bedrock/lib/clones-with-immutable-args/src/", "ds-test/=lib/frax-standard-solidity/lib/forge-std/lib/ds-test/src/", "forge-std/=lib/frax-standard-solidity/lib/forge-std/src/", "frax-standard-solidity/=lib/frax-standard-solidity/src/", "kontrol-cheatcodes/=lib/optimism/packages/contracts-bedrock/lib/kontrol-cheatcodes/src/", "lib-keccak/=lib/optimism/packages/contracts-bedrock/lib/lib-keccak/contracts/", "openzeppelin-contracts-upgradeable/=lib/optimism/packages/contracts-bedrock/lib/openzeppelin-contracts-upgradeable/", "openzeppelin-contracts/=lib/optimism/packages/contracts-bedrock/lib/openzeppelin-contracts/", "optimism/=lib/optimism/", "safe-contracts/=lib/optimism/packages/contracts-bedrock/lib/safe-contracts/contracts/", "solady/=lib/optimism/packages/contracts-bedrock/lib/solady/", "solidity-bytes-utils/=lib/frax-standard-solidity/lib/solidity-bytes-utils/", "solmate/=lib/optimism/packages/contracts-bedrock/lib/solmate/src/" ], "optimizer": { "enabled": false, "runs": 200 }, "metadata": { "useLiteralContent": false, "bytecodeHash": "none" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } }, "evmVersion": "london", "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"name":"BlockHashReceived","type":"event"},{"inputs":[],"name":"DEPOSITOR_ACCOUNT","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseFeeScalar","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basefee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"batcherHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blobBaseFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blobBaseFeeScalar","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_blockHash","type":"bytes32"}],"name":"blockHashStored","outputs":[{"internalType":"bool","name":"_result","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l1FeeOverhead","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l1FeeScalar","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"number","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sequenceNumber","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint64","name":"_number","type":"uint64"},{"internalType":"uint64","name":"_timestamp","type":"uint64"},{"internalType":"uint256","name":"_basefee","type":"uint256"},{"internalType":"bytes32","name":"_hash","type":"bytes32"},{"internalType":"uint64","name":"_sequenceNumber","type":"uint64"},{"internalType":"bytes32","name":"_batcherHash","type":"bytes32"},{"internalType":"uint256","name":"_l1FeeOverhead","type":"uint256"},{"internalType":"uint256","name":"_l1FeeScalar","type":"uint256"}],"name":"setL1BlockValues","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setL1BlockValuesEcotone","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"storedBlockHashes","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timestamp","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506004361061010b5760003560e01c80638381f58a116100a2578063c598591811610071578063c598591814610274578063e591b28214610292578063e81b2c6d146102b0578063ebe86a55146102ce578063f8206140146102fe5761010b565b80638381f58a146101fc5780638b239f731461021a5780639e8c496614610238578063b80777ea146102565761010b565b80635cf24969116100de5780635cf249691461017257806364ca23ef1461019057806368d5dca6146101ae5780638178856b146101cc5761010b565b8063015d8eb91461011057806309bd5a601461012c578063440a5e201461014a57806354fd4d5014610154575b600080fd5b61012a6004803603810190610125919061075b565b61031c565b005b6101346104ce565b6040516101419190610820565b60405180910390f35b6101526104d4565b005b61015c610579565b60405161016991906108d4565b60405180910390f35b61017a6105b2565b6040516101879190610905565b60405180910390f35b6101986105b8565b6040516101a5919061092f565b60405180910390f35b6101b66105d2565b6040516101c39190610969565b60405180910390f35b6101e660048036038101906101e19190610984565b6105e8565b6040516101f391906109cc565b60405180910390f35b610204610608565b604051610211919061092f565b60405180910390f35b610222610620565b60405161022f9190610905565b60405180910390f35b610240610626565b60405161024d9190610905565b60405180910390f35b61025e61062c565b60405161026b919061092f565b60405180910390f35b61027c610646565b6040516102899190610969565b60405180910390f35b61029a61065c565b6040516102a79190610a28565b60405180910390f35b6102b8610674565b6040516102c59190610820565b60405180910390f35b6102e860048036038101906102e39190610984565b61067a565b6040516102f591906109cc565b60405180910390f35b6103066106a4565b6040516103139190610905565b60405180910390f35b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461039e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161039590610ab5565b60405180910390fd5b876000806101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555086600060086101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550856001819055508460028190555083600360006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508260048190555081600581905550806006819055506032600086815260200190815260200160002060009054906101000a900460ff166104c45760016032600087815260200190815260200160002060006101000a81548160ff0219169083151502179055507f12cb9a47c977b6cbe82b9e495407e99a32a54bca6b26f1e4d497a3a42dccb914856040516104bb9190610820565b60405180910390a15b5050505050505050565b60025481565b60007f12cb9a47c977b6cbe82b9e495407e99a32a54bca6b26f1e4d497a3a42dccb914905073deaddeaddeaddeaddeaddeaddeaddeaddead000133181561052357633cc50b456000526004601cfd5b60043560043560801c60035560143560801c60005560243560015560443560075560643560025560843560045560643560005260326020526040600020600081540361057457600181558260206000a15b505050565b6040518060400160405280600581526020017f312e322e3000000000000000000000000000000000000000000000000000000081525081565b60015481565b600360009054906101000a900467ffffffffffffffff1681565b600360089054906101000a900463ffffffff1681565b60326020528060005260406000206000915054906101000a900460ff1681565b60008054906101000a900467ffffffffffffffff1681565b60055481565b60065481565b600060089054906101000a900467ffffffffffffffff1681565b6003600c9054906101000a900463ffffffff1681565b73deaddeaddeaddeaddeaddeaddeaddeaddead000181565b60045481565b60006032600083815260200190815260200160002060009054906101000a900460ff169050919050565b60075481565b600080fd5b600067ffffffffffffffff82169050919050565b6106cc816106af565b81146106d757600080fd5b50565b6000813590506106e9816106c3565b92915050565b6000819050919050565b610702816106ef565b811461070d57600080fd5b50565b60008135905061071f816106f9565b92915050565b6000819050919050565b61073881610725565b811461074357600080fd5b50565b6000813590506107558161072f565b92915050565b600080600080600080600080610100898b03121561077c5761077b6106aa565b5b600061078a8b828c016106da565b985050602061079b8b828c016106da565b97505060406107ac8b828c01610710565b96505060606107bd8b828c01610746565b95505060806107ce8b828c016106da565b94505060a06107df8b828c01610746565b93505060c06107f08b828c01610710565b92505060e06108018b828c01610710565b9150509295985092959890939650565b61081a81610725565b82525050565b60006020820190506108356000830184610811565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561087557808201518184015260208101905061085a565b83811115610884576000848401525b50505050565b6000601f19601f8301169050919050565b60006108a68261083b565b6108b08185610846565b93506108c0818560208601610857565b6108c98161088a565b840191505092915050565b600060208201905081810360008301526108ee818461089b565b905092915050565b6108ff816106ef565b82525050565b600060208201905061091a60008301846108f6565b92915050565b610929816106af565b82525050565b60006020820190506109446000830184610920565b92915050565b600063ffffffff82169050919050565b6109638161094a565b82525050565b600060208201905061097e600083018461095a565b92915050565b60006020828403121561099a576109996106aa565b5b60006109a884828501610746565b91505092915050565b60008115159050919050565b6109c6816109b1565b82525050565b60006020820190506109e160008301846109bd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610a12826109e7565b9050919050565b610a2281610a07565b82525050565b6000602082019050610a3d6000830184610a19565b92915050565b7f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60008201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000602082015250565b6000610a9f603b83610846565b9150610aaa82610a43565b604082019050919050565b60006020820190508181036000830152610ace81610a92565b905091905056fea164736f6c634300080f000a
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638381f58a116100a2578063c598591811610071578063c598591814610274578063e591b28214610292578063e81b2c6d146102b0578063ebe86a55146102ce578063f8206140146102fe5761010b565b80638381f58a146101fc5780638b239f731461021a5780639e8c496614610238578063b80777ea146102565761010b565b80635cf24969116100de5780635cf249691461017257806364ca23ef1461019057806368d5dca6146101ae5780638178856b146101cc5761010b565b8063015d8eb91461011057806309bd5a601461012c578063440a5e201461014a57806354fd4d5014610154575b600080fd5b61012a6004803603810190610125919061075b565b61031c565b005b6101346104ce565b6040516101419190610820565b60405180910390f35b6101526104d4565b005b61015c610579565b60405161016991906108d4565b60405180910390f35b61017a6105b2565b6040516101879190610905565b60405180910390f35b6101986105b8565b6040516101a5919061092f565b60405180910390f35b6101b66105d2565b6040516101c39190610969565b60405180910390f35b6101e660048036038101906101e19190610984565b6105e8565b6040516101f391906109cc565b60405180910390f35b610204610608565b604051610211919061092f565b60405180910390f35b610222610620565b60405161022f9190610905565b60405180910390f35b610240610626565b60405161024d9190610905565b60405180910390f35b61025e61062c565b60405161026b919061092f565b60405180910390f35b61027c610646565b6040516102899190610969565b60405180910390f35b61029a61065c565b6040516102a79190610a28565b60405180910390f35b6102b8610674565b6040516102c59190610820565b60405180910390f35b6102e860048036038101906102e39190610984565b61067a565b6040516102f591906109cc565b60405180910390f35b6103066106a4565b6040516103139190610905565b60405180910390f35b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461039e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161039590610ab5565b60405180910390fd5b876000806101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555086600060086101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550856001819055508460028190555083600360006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508260048190555081600581905550806006819055506032600086815260200190815260200160002060009054906101000a900460ff166104c45760016032600087815260200190815260200160002060006101000a81548160ff0219169083151502179055507f12cb9a47c977b6cbe82b9e495407e99a32a54bca6b26f1e4d497a3a42dccb914856040516104bb9190610820565b60405180910390a15b5050505050505050565b60025481565b60007f12cb9a47c977b6cbe82b9e495407e99a32a54bca6b26f1e4d497a3a42dccb914905073deaddeaddeaddeaddeaddeaddeaddeaddead000133181561052357633cc50b456000526004601cfd5b60043560043560801c60035560143560801c60005560243560015560443560075560643560025560843560045560643560005260326020526040600020600081540361057457600181558260206000a15b505050565b6040518060400160405280600581526020017f312e322e3000000000000000000000000000000000000000000000000000000081525081565b60015481565b600360009054906101000a900467ffffffffffffffff1681565b600360089054906101000a900463ffffffff1681565b60326020528060005260406000206000915054906101000a900460ff1681565b60008054906101000a900467ffffffffffffffff1681565b60055481565b60065481565b600060089054906101000a900467ffffffffffffffff1681565b6003600c9054906101000a900463ffffffff1681565b73deaddeaddeaddeaddeaddeaddeaddeaddead000181565b60045481565b60006032600083815260200190815260200160002060009054906101000a900460ff169050919050565b60075481565b600080fd5b600067ffffffffffffffff82169050919050565b6106cc816106af565b81146106d757600080fd5b50565b6000813590506106e9816106c3565b92915050565b6000819050919050565b610702816106ef565b811461070d57600080fd5b50565b60008135905061071f816106f9565b92915050565b6000819050919050565b61073881610725565b811461074357600080fd5b50565b6000813590506107558161072f565b92915050565b600080600080600080600080610100898b03121561077c5761077b6106aa565b5b600061078a8b828c016106da565b985050602061079b8b828c016106da565b97505060406107ac8b828c01610710565b96505060606107bd8b828c01610746565b95505060806107ce8b828c016106da565b94505060a06107df8b828c01610746565b93505060c06107f08b828c01610710565b92505060e06108018b828c01610710565b9150509295985092959890939650565b61081a81610725565b82525050565b60006020820190506108356000830184610811565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561087557808201518184015260208101905061085a565b83811115610884576000848401525b50505050565b6000601f19601f8301169050919050565b60006108a68261083b565b6108b08185610846565b93506108c0818560208601610857565b6108c98161088a565b840191505092915050565b600060208201905081810360008301526108ee818461089b565b905092915050565b6108ff816106ef565b82525050565b600060208201905061091a60008301846108f6565b92915050565b610929816106af565b82525050565b60006020820190506109446000830184610920565b92915050565b600063ffffffff82169050919050565b6109638161094a565b82525050565b600060208201905061097e600083018461095a565b92915050565b60006020828403121561099a576109996106aa565b5b60006109a884828501610746565b91505092915050565b60008115159050919050565b6109c6816109b1565b82525050565b60006020820190506109e160008301846109bd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610a12826109e7565b9050919050565b610a2281610a07565b82525050565b6000602082019050610a3d6000830184610a19565b92915050565b7f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60008201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000602082015250565b6000610a9f603b83610846565b9150610aaa82610a43565b604082019050919050565b60006020820190508181036000830152610ace81610a92565b905091905056fea164736f6c634300080f000a
Deployed Bytecode Sourcemap
620:6224:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3121:907;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1112:19;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5118:1724;;;:::i;:::-;;2002:40;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1042:22;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1197:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1339:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2375:49;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;881:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1721:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1862:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;972:23;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1479:27;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;721:86;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1580:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4248:138;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1940:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3121:907;765:42;3404:31;;:10;:31;;;3396:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;3519:7;3510:6;;:16;;;;;;;;;;;;;;;;;;3548:10;3536:9;;:22;;;;;;;;;;;;;;;;;;3578:8;3568:7;:18;;;;3603:5;3596:4;:12;;;;3635:15;3618:14;;:32;;;;;;;;;;;;;;;;;;3674:12;3660:11;:26;;;;3712:14;3696:13;:30;;;;3750:12;3736:11;:26;;;;3897:17;:24;3915:5;3897:24;;;;;;;;;;;;;;;;;;;;;3892:130;;3964:4;3937:17;:24;3955:5;3937:24;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;3987:24;4005:5;3987:24;;;;;;:::i;:::-;;;;;;;;3892:130;3121:907;;;;;;;;:::o;1112:19::-;;;;:::o;5118:1724::-;5172:17;5200:39;5172:68;;5357:17;5347:8;5343:32;5340:233;;;5407:10;5401:4;5394:24;5505:4;5499;5492:18;5340:233;5611:1;5598:15;5764:1;5751:15;5746:3;5742:25;5721:19;5714:54;5877:2;5864:16;5859:3;5855:26;5842:11;5835:47;5929:2;5916:16;5902:12;5895:38;5995:2;5982:16;5964;5957:42;6054:3;6041:17;6030:9;6023:36;6121:3;6108:17;6090:16;6083:43;6258:3;6245:17;6242:1;6235:28;6366:2;6362;6355:14;6516:2;6513:1;6503:16;6625:5;6619:3;6613:10;6610:21;6607:219;;6705:4;6700:3;6693:17;6802:9;6798:2;6795:1;6790:22;6607:219;5260:1576;;;5118:1724::o;2002:40::-;;;;;;;;;;;;;;;;;;;:::o;1042:22::-;;;;:::o;1197:28::-;;;;;;;;;;;;;:::o;1339:31::-;;;;;;;;;;;;;:::o;2375:49::-;;;;;;;;;;;;;;;;;;;;;;:::o;881:20::-;;;;;;;;;;;;:::o;1721:28::-;;;;:::o;1862:26::-;;;;:::o;972:23::-;;;;;;;;;;;;;:::o;1479:27::-;;;;;;;;;;;;;:::o;721:86::-;765:42;721:86;:::o;1580:26::-;;;;:::o;4248:138::-;4316:12;4350:17;:29;4368:10;4350:29;;;;;;;;;;;;;;;;;;;;;4340:39;;4248:138;;;:::o;1940:26::-;;;;:::o;88:117:2:-;197:1;194;187:12;334:101;370:7;410:18;403:5;399:30;388:41;;334:101;;;:::o;441:120::-;513:23;530:5;513:23;:::i;:::-;506:5;503:34;493:62;;551:1;548;541:12;493:62;441:120;:::o;567:137::-;612:5;650:6;637:20;628:29;;666:32;692:5;666:32;:::i;:::-;567:137;;;;:::o;710:77::-;747:7;776:5;765:16;;710:77;;;:::o;793:122::-;866:24;884:5;866:24;:::i;:::-;859:5;856:35;846:63;;905:1;902;895:12;846:63;793:122;:::o;921:139::-;967:5;1005:6;992:20;983:29;;1021:33;1048:5;1021:33;:::i;:::-;921:139;;;;:::o;1066:77::-;1103:7;1132:5;1121:16;;1066:77;;;:::o;1149:122::-;1222:24;1240:5;1222:24;:::i;:::-;1215:5;1212:35;1202:63;;1261:1;1258;1251:12;1202:63;1149:122;:::o;1277:139::-;1323:5;1361:6;1348:20;1339:29;;1377:33;1404:5;1377:33;:::i;:::-;1277:139;;;;:::o;1422:1343::-;1541:6;1549;1557;1565;1573;1581;1589;1597;1646:3;1634:9;1625:7;1621:23;1617:33;1614:120;;;1653:79;;:::i;:::-;1614:120;1773:1;1798:52;1842:7;1833:6;1822:9;1818:22;1798:52;:::i;:::-;1788:62;;1744:116;1899:2;1925:52;1969:7;1960:6;1949:9;1945:22;1925:52;:::i;:::-;1915:62;;1870:117;2026:2;2052:53;2097:7;2088:6;2077:9;2073:22;2052:53;:::i;:::-;2042:63;;1997:118;2154:2;2180:53;2225:7;2216:6;2205:9;2201:22;2180:53;:::i;:::-;2170:63;;2125:118;2282:3;2309:52;2353:7;2344:6;2333:9;2329:22;2309:52;:::i;:::-;2299:62;;2253:118;2410:3;2437:53;2482:7;2473:6;2462:9;2458:22;2437:53;:::i;:::-;2427:63;;2381:119;2539:3;2566:53;2611:7;2602:6;2591:9;2587:22;2566:53;:::i;:::-;2556:63;;2510:119;2668:3;2695:53;2740:7;2731:6;2720:9;2716:22;2695:53;:::i;:::-;2685:63;;2639:119;1422:1343;;;;;;;;;;;:::o;2771:118::-;2858:24;2876:5;2858:24;:::i;:::-;2853:3;2846:37;2771:118;;:::o;2895:222::-;2988:4;3026:2;3015:9;3011:18;3003:26;;3039:71;3107:1;3096:9;3092:17;3083:6;3039:71;:::i;:::-;2895:222;;;;:::o;3123:99::-;3175:6;3209:5;3203:12;3193:22;;3123:99;;;:::o;3228:169::-;3312:11;3346:6;3341:3;3334:19;3386:4;3381:3;3377:14;3362:29;;3228:169;;;;:::o;3403:307::-;3471:1;3481:113;3495:6;3492:1;3489:13;3481:113;;;3580:1;3575:3;3571:11;3565:18;3561:1;3556:3;3552:11;3545:39;3517:2;3514:1;3510:10;3505:15;;3481:113;;;3612:6;3609:1;3606:13;3603:101;;;3692:1;3683:6;3678:3;3674:16;3667:27;3603:101;3452:258;3403:307;;;:::o;3716:102::-;3757:6;3808:2;3804:7;3799:2;3792:5;3788:14;3784:28;3774:38;;3716:102;;;:::o;3824:364::-;3912:3;3940:39;3973:5;3940:39;:::i;:::-;3995:71;4059:6;4054:3;3995:71;:::i;:::-;3988:78;;4075:52;4120:6;4115:3;4108:4;4101:5;4097:16;4075:52;:::i;:::-;4152:29;4174:6;4152:29;:::i;:::-;4147:3;4143:39;4136:46;;3916:272;3824:364;;;;:::o;4194:313::-;4307:4;4345:2;4334:9;4330:18;4322:26;;4394:9;4388:4;4384:20;4380:1;4369:9;4365:17;4358:47;4422:78;4495:4;4486:6;4422:78;:::i;:::-;4414:86;;4194:313;;;;:::o;4513:118::-;4600:24;4618:5;4600:24;:::i;:::-;4595:3;4588:37;4513:118;;:::o;4637:222::-;4730:4;4768:2;4757:9;4753:18;4745:26;;4781:71;4849:1;4838:9;4834:17;4825:6;4781:71;:::i;:::-;4637:222;;;;:::o;4865:115::-;4950:23;4967:5;4950:23;:::i;:::-;4945:3;4938:36;4865:115;;:::o;4986:218::-;5077:4;5115:2;5104:9;5100:18;5092:26;;5128:69;5194:1;5183:9;5179:17;5170:6;5128:69;:::i;:::-;4986:218;;;;:::o;5210:93::-;5246:7;5286:10;5279:5;5275:22;5264:33;;5210:93;;;:::o;5309:115::-;5394:23;5411:5;5394:23;:::i;:::-;5389:3;5382:36;5309:115;;:::o;5430:218::-;5521:4;5559:2;5548:9;5544:18;5536:26;;5572:69;5638:1;5627:9;5623:17;5614:6;5572:69;:::i;:::-;5430:218;;;;:::o;5654:329::-;5713:6;5762:2;5750:9;5741:7;5737:23;5733:32;5730:119;;;5768:79;;:::i;:::-;5730:119;5888:1;5913:53;5958:7;5949:6;5938:9;5934:22;5913:53;:::i;:::-;5903:63;;5859:117;5654:329;;;;:::o;5989:90::-;6023:7;6066:5;6059:13;6052:21;6041:32;;5989:90;;;:::o;6085:109::-;6166:21;6181:5;6166:21;:::i;:::-;6161:3;6154:34;6085:109;;:::o;6200:210::-;6287:4;6325:2;6314:9;6310:18;6302:26;;6338:65;6400:1;6389:9;6385:17;6376:6;6338:65;:::i;:::-;6200:210;;;;:::o;6416:126::-;6453:7;6493:42;6486:5;6482:54;6471:65;;6416:126;;;:::o;6548:96::-;6585:7;6614:24;6632:5;6614:24;:::i;:::-;6603:35;;6548:96;;;:::o;6650:118::-;6737:24;6755:5;6737:24;:::i;:::-;6732:3;6725:37;6650:118;;:::o;6774:222::-;6867:4;6905:2;6894:9;6890:18;6882:26;;6918:71;6986:1;6975:9;6971:17;6962:6;6918:71;:::i;:::-;6774:222;;;;:::o;7002:246::-;7142:34;7138:1;7130:6;7126:14;7119:58;7211:29;7206:2;7198:6;7194:15;7187:54;7002:246;:::o;7254:366::-;7396:3;7417:67;7481:2;7476:3;7417:67;:::i;:::-;7410:74;;7493:93;7582:3;7493:93;:::i;:::-;7611:2;7606:3;7602:12;7595:19;;7254:366;;;:::o;7626:419::-;7792:4;7830:2;7819:9;7815:18;7807:26;;7879:9;7873:4;7869:20;7865:1;7854:9;7850:17;7843:47;7907:131;8033:4;7907:131;:::i;:::-;7899:139;;7626:419;;;:::o
Swarm Source
none
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.