ERC-721
Overview
Max Total Supply
0 MAYC
Holders
11,756
Market
Volume (24H)
N/A
Min Price (24H)
N/A
Max Price (24H)
N/A
Other Info
Token Contract
Balance
1 MAYCLoading...
Loading
Loading...
Loading
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
MutantApeYachtClubShadow
Compiler Version
v0.8.28+commit.7893614a
Contract Source Code (Solidity Standard Json-Input format)
123456789101112131415161718192021// SPDX-License-Identifier: MITpragma solidity 0.8.28;import {NFTShadow} from "../NFTShadow.sol";/*** @title MutantApeYachtClubShadow*/contract MutantApeYachtClubShadow is NFTShadow {constructor(address _beacon) NFTShadow(_beacon) {initialize(0x58A766B3210ceE94Ca150f767D842Eb87A8d7aE8,"Mutant Ape Yacht Club Shadow","MAYC","https://boredapeyachtclub.com/api/mutants/",address(0),address(0),0);}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity 0.8.28;import {ERC721} from "solady/tokens/ERC721.sol";import {LibString} from "solady/utils/LibString.sol";import {OwnableRoles} from "solady/auth/OwnableRoles.sol";import {ERC2981} from "solady/tokens/ERC2981.sol";import {IERC5192} from "./interfaces/IERC5192.sol";import {IBeacon} from "./interfaces/IBeacon.sol";import {ICreatorToken} from "./interfaces/ICreatorToken.sol";import {ITransferValidator} from "./interfaces/ITransferValidator.sol";import {IShadowCallbackReceiver} from "./interfaces/IShadowCallbackReceiver.sol";/*** @title NFTShadow* @author @0xQuit* @notice A contract for soulbound Shadow NFTs that follow ownership on a remote chain.* @notice This contract is designed to be used with a Beacon contract (see IBeacon.sol) to maintain ownership records* through LayerZero's lzRead protocol.* @notice Soulbound tokens can be unlocked by locking them on their source chain.* @notice Contracts have shadow mode disabled by default. In this state, they function very much like a typical oNFT. They* can be minted by locking the native asset, and the native asset can be unlocked by burning the Shadow NFT.* @notice When tokens are locked, ONLY the Beacon contract can transfer them. They will follow the canonical owner,* as resolved by the ExclusiveDelegateResolver (the "Resolver") contract. Users should only issue Resolver compatible* delegations for assets if they own the delegatee. Though the delegatee can not claim ownership of the underlying asset,
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.4;/// @notice Simple ERC721 implementation with storage hitchhiking./// @author Solady (https://github.com/vectorized/solady/blob/main/src/tokens/ERC721.sol)/// @author Modified from Solmate (https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC721.sol)/// @author Modified from OpenZeppelin (https://github.com/OpenZeppelin/openzeppelin-contracts/tree/master/contracts/token/ERC721/ERC721.sol)////// @dev Note:/// - The ERC721 standard allows for self-approvals./// For performance, this implementation WILL NOT revert for such actions./// Please add any checks with overrides if desired./// - For performance, methods are made payable where permitted by the ERC721 standard./// - The `safeTransfer` functions use the identity precompile (0x4)/// to copy memory internally.////// If you are overriding:/// - NEVER violate the ERC721 invariant:/// the balance of an owner MUST always be equal to their number of ownership slots./// The transfer functions do not have an underflow guard for user token balances./// - Make sure all variables written to storage are properly cleaned// (e.g. the bool value for `isApprovedForAll` MUST be either 1 or 0 under the hood)./// - Check that the overridden function is actually used in the function you want to/// change the behavior of. Much of the code has been manually inlined for performance.abstract contract ERC721 {/*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.4;/// @notice Library for converting numbers into strings and other string operations./// @author Solady (https://github.com/vectorized/solady/blob/main/src/utils/LibString.sol)/// @author Modified from Solmate (https://github.com/transmissions11/solmate/blob/main/src/utils/LibString.sol)////// @dev Note:/// For performance and bytecode compactness, most of the string operations are restricted to/// byte strings (7-bit ASCII), except where otherwise specified./// Usage of byte string operations on charsets with runes spanning two or more bytes/// can lead to undefined behavior.library LibString {/*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*//* CUSTOM ERRORS *//*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*//// @dev The length of the output is too small to contain all the hex digits.error HexLengthInsufficient();/// @dev The length of the string is more than 32 bytes.error TooBigForSmallString();/// @dev The input string must be a 7-bit ASCII.error StringNot7BitASCII();
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.4;import {Ownable} from "./Ownable.sol";/// @notice Simple single owner and multiroles authorization mixin./// @author Solady (https://github.com/vectorized/solady/blob/main/src/auth/OwnableRoles.sol)////// @dev Note:/// This implementation does NOT auto-initialize the owner to `msg.sender`./// You MUST call the `_initializeOwner` in the constructor / initializer.////// While the ownable portion follows/// [EIP-173](https://eips.ethereum.org/EIPS/eip-173) for compatibility,/// the nomenclature for the 2-step ownership handover may be unique to this codebase.abstract contract OwnableRoles is Ownable {/*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*//* EVENTS *//*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*//// @dev The `user`'s roles is updated to `roles`./// Each bit of `roles` represents whether the role is set.event RolesUpdated(address indexed user, uint256 indexed roles);/// @dev `keccak256(bytes("RolesUpdated(address,uint256)"))`.uint256 private constant _ROLES_UPDATED_EVENT_SIGNATURE =
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.4;/// @notice Simple ERC2981 NFT Royalty Standard implementation./// @author Solady (https://github.com/vectorized/solady/blob/main/src/tokens/ERC2981.sol)/// @author Modified from OpenZeppelin (https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/common/ERC2981.sol)abstract contract ERC2981 {/*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*//* CUSTOM ERRORS *//*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*//// @dev The royalty fee numerator exceeds the fee denominator.error RoyaltyOverflow();/// @dev The royalty receiver cannot be the zero address.error RoyaltyReceiverIsZeroAddress();/*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*//* STORAGE *//*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*//// @dev The default royalty info is given by:/// ```/// let packed := sload(_ERC2981_MASTER_SLOT_SEED)/// let receiver := shr(96, packed)/// let royaltyFraction := xor(packed, shl(96, receiver))
1234567891011121314151617181920// SPDX-License-Identifier: CC0-1.0pragma solidity ^0.8.0;interface IERC5192 {/// @notice Emitted when the locking status is changed to locked./// @dev If a token is minted and the status is locked, this event should be emitted./// @param tokenId The identifier for a token.event Locked(uint256 tokenId);/// @notice Emitted when the locking status is changed to unlocked./// @dev If a token is minted and the status is unlocked, this event should be emitted./// @param tokenId The identifier for a token.event Unlocked(uint256 tokenId);/// @notice Returns the locking status of an Soulbound Token/// @dev SBTs assigned to zero address are considered invalid, and queries/// about them do throw./// @param tokenId The identifier for an SBT.function locked(uint256 tokenId) external view returns (bool);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.4;import {CollectionConfig} from "../structs/CollectionConfig.sol";interface IBeacon {function read(address contractAddress,uint256[] calldata tokenIds,uint32[] calldata eids,address refundRecipient,uint128 callbackGasLimit) external payable returns (bytes32);function send(uint32 eid,address collection,uint256[] calldata tokenIds,address beneficiary,address refundRecipient,uint128 supplementalGasLimit) external payable;function getSendOptions(address collectionAddress, uint256[] calldata tokenIds)externalviewreturns (bytes memory);function getReadOptions(address collectionAddress, uint256[] calldata tokenIds, uint128 callbackGasLimit)
12345678910// SPDX-License-Identifier: MITpragma solidity ^0.8.4;interface ICreatorToken {event TransferValidatorUpdated(address oldValidator, address newValidator);function getTransferValidationFunction() external view returns (bytes4 functionSignature, bool isViewFunction);function getTransferValidator() external view returns (address validator);function setTransferValidator(address validator) external;}
12345678// SPDX-License-Identifier: MITpragma solidity ^0.8.4;interface ITransferValidator {function validateTransfer(address caller, address from, address to) external view;function validateTransfer(address caller, address from, address to, uint256 tokenId) external view;function validateTransfer(address caller, address from, address to, uint256 tokenId, uint256 amount) external;}
1234567// SPDX-License-Identifier: MITpragma solidity ^0.8.4;interface IShadowCallbackReceiver {function executeCallback(bytes32 guid) external;}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.4;/// @notice Simple single owner authorization mixin./// @author Solady (https://github.com/vectorized/solady/blob/main/src/auth/Ownable.sol)////// @dev Note:/// This implementation does NOT auto-initialize the owner to `msg.sender`./// You MUST call the `_initializeOwner` in the constructor / initializer.////// While the ownable portion follows/// [EIP-173](https://eips.ethereum.org/EIPS/eip-173) for compatibility,/// the nomenclature for the 2-step ownership handover may be unique to this codebase.abstract contract Ownable {/*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*//* CUSTOM ERRORS *//*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*//// @dev The caller is not authorized to call the function.error Unauthorized();/// @dev The `newOwner` cannot be the zero address.error NewOwnerIsZeroAddress();/// @dev The `pendingOwner` does not have a valid handover request.error NoHandoverRequest();
123456789// SPDX-License-Identifier: MITpragma solidity 0.8.28;struct CollectionConfig {uint32 baseCollectionChainId;uint32 baseCollectionEid;uint32 baseCollectionPerNftOwnershipUpdateCost; // cost of transferring an NFT from the base collection. If 0, default of 100_000 is usedaddress shadowAddress; // Local shadow address for this chain}
1234567891011121314151617181920212223242526{"remappings": ["solady/=lib/solady/src/","@layerzerolabs/=node_modules/@layerzerolabs/","@openzeppelin/=node_modules/@openzeppelin/","solidity-bytes-utils/=node_modules/solidity-bytes-utils/","sol-json/=lib/sol-json/src/","ds-test/=lib/sol-json/lib/forge-std/lib/ds-test/src/","forge-std/=lib/forge-std/src/","solmate/=lib/sol-json/lib/solady/lib/solmate/src/"],"optimizer": {"enabled": true,"runs": 200},"metadata": {"useLiteralContent": false,"bytecodeHash": "ipfs","appendCBOR": true},"outputSelection": {"*": {"*": ["evm.bytecode","evm.deployedBytecode","abi"
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_beacon","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccountBalanceOverflow","type":"error"},{"inputs":[],"name":"AlreadyInitialized","type":"error"},{"inputs":[],"name":"BalanceQueryForZeroAddress","type":"error"},{"inputs":[],"name":"CallerNotBeacon","type":"error"},{"inputs":[],"name":"FnSelectorNotRecognized","type":"error"},{"inputs":[],"name":"NewOwnerIsZeroAddress","type":"error"},{"inputs":[],"name":"NoHandoverRequest","type":"error"},{"inputs":[],"name":"NotOwnerNorApproved","type":"error"},{"inputs":[],"name":"RoyaltyOverflow","type":"error"},{"inputs":[],"name":"RoyaltyReceiverIsZeroAddress","type":"error"},{"inputs":[],"name":"TokenAlreadyExists","type":"error"},{"inputs":[],"name":"TokenDoesNotExist","type":"error"},{"inputs":[],"name":"TokenLocked","type":"error"},{"inputs":[],"name":"TokenNotLocked","type":"error"},{"inputs":[],"name":"TransferFromIncorrectOwner","type":"error"},{"inputs":[],"name":"TransferToNonERC721ReceiverImplementer","type":"error"},{"inputs":[],"name":"TransferToZeroAddress","type":"error"},{"inputs":[],"name":"Unauthorized","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"isApproved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_fromTokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_toTokenId","type":"uint256"}],"name":"BatchMetadataUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Locked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"metadataRenderer","type":"address"}],"name":"MetadataRendererSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pendingOwner","type":"address"}],"name":"OwnershipHandoverCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pendingOwner","type":"address"}],"name":"OwnershipHandoverRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"uint256","name":"roles","type":"uint256"}],"name":"RolesUpdated","type":"event"},{"anonymous":false,"inputs":[],"name":"ShadowModeEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldValidator","type":"address"},{"indexed":false,"internalType":"address","name":"newValidator","type":"address"}],"name":"TransferValidatorUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Unlocked","type":"event"},{"stateMutability":"nonpayable","type":"fallback"},{"inputs":[],"name":"BEACON_CONTRACT_ADDRESS","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"METADATA_MANAGER_ROLE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ROYALTY_MANAGER_ROLE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SHADOW_MODE_MANAGER_ROLE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TRANSFER_VALIDATOR_MANAGER_ROLE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"guid","type":"bytes32"}],"name":"callbacks","outputs":[{"internalType":"address","name":"callbackTarget","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cancelOwnershipHandover","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"name":"completeOwnershipHandover","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"enableShadowMode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"guid","type":"bytes32"}],"name":"executeCallback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"result","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTransferValidationFunction","outputs":[{"internalType":"bytes4","name":"functionSignature","type":"bytes4"},{"internalType":"bool","name":"isViewFunction","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getTransferValidator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"roles","type":"uint256"}],"name":"grantRoles","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"roles","type":"uint256"}],"name":"hasAllRoles","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"roles","type":"uint256"}],"name":"hasAnyRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_initialOwner","type":"address"},{"internalType":"string","name":"_collectionName","type":"string"},{"internalType":"string","name":"_collectionSymbol","type":"string"},{"internalType":"string","name":"_baseTokenURI","type":"string"},{"internalType":"address","name":"_metadataRenderer","type":"address"},{"internalType":"address","name":"_transferValidator","type":"address"},{"internalType":"uint96","name":"_royaltyFeeNumerator","type":"uint96"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"result","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"locked","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"metadataRenderer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"result","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"result","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"name":"ownershipHandoverExpiresAt","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"uint32[]","name":"eids","type":"uint32[]"}],"name":"read","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"uint32[]","name":"eids","type":"uint32[]"},{"internalType":"uint128","name":"callbackGasLimit","type":"uint128"}],"name":"readWithCallback","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"roles","type":"uint256"}],"name":"renounceRoles","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"requestOwnershipHandover","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"roles","type":"uint256"}],"name":"revokeRoles","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"rolesOf","outputs":[{"internalType":"uint256","name":"roles","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"salePrice","type":"uint256"}],"name":"royaltyInfo","outputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint256","name":"royaltyAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"refundRecipient","type":"address"},{"internalType":"uint128","name":"supplementalGasLimit","type":"uint128"}],"name":"send","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"isApproved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_metadataRenderer","type":"address"}],"name":"setMetadataRenderer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint96","name":"feeNumerator","type":"uint96"}],"name":"setRoyaltyInfo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"uri","type":"string"}],"name":"setTokenURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"transferValidator_","type":"address"}],"name":"setTransferValidator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"shadowModeEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"stop","type":"uint256"}],"name":"tokensOfOwnerIn","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"transferValidator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60a0604052346105b05761341d6020813803918261001c816105b4565b9384928339810103126105b057516001600160a01b03811681036105b05760805261004760406105b4565b601c81527f4d7574616e742041706520596163687420436c756220536861646f7700000000602082015261007b60406105b4565b9060048252634d41594360e01b602083015261009760606105b4565b602a8082527f68747470733a2f2f626f7265646170657961636874636c75622e636f6d2f6170602083015269692f6d7574616e74732f60b01b6040830152909290600254600181811c911680156105a6575b60208210146103ca57601f8111610543575b506020601f82116001146104e057819293945f926104d5575b50508160011b915f199060031b1c1916176002555b81516001600160401b0381116103e857600354600181811c911680156104cb575b60208210146103ca57601f8111610468575b50602092601f821160011461040757928192935f926103fc575b50508160011b915f199060031b1c1916176003555b80516001600160401b0381116103e857600454600181811c911680156103de575b60208210146103ca57601f8111610367575b50602091601f8211600114610307579181925f926102fc575b50508160011b915f199060031b1c1916176004555b600580546001600160a01b0319169055638b78c6d819546102ef577358a766b3210cee94ca150f767d842eb87a8d7ae8638b78c6d819557358a766b3210cee94ca150f767d842eb87a8d7ae85f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a35f80546001600160a01b03191690557f58a766b3210cee94ca150f767d842eb87a8d7ae800000000000000000000000068aa4ec00224afccfdb755604051612e4390816105da823960805181818161036f015281816107ff01528181610a7d01528181611ab00152818161201b015281816123f70152818161294701528181612a3701528181612af60152612b9c0152f35b630dc149f05f526004601cfd5b015190505f806101d7565b601f1982169260045f52805f20915f5b85811061034f57508360019510610337575b505050811b016004556101ec565b01515f1960f88460031b161c191690555f8080610329565b91926020600181928685015181550194019201610317565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c810191602084106103c0575b601f0160051c01905b8181106103b557506101be565b5f81556001016103a8565b909150819061039f565b634e487b7160e01b5f52602260045260245ffd5b90607f16906101ac565b634e487b7160e01b5f52604160045260245ffd5b015190505f80610176565b601f1982169360035f52805f20915f5b8681106104505750836001959610610438575b505050811b0160035561018b565b01515f1960f88460031b161c191690555f808061042a565b91926020600181928685015181550194019201610417565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c810191602084106104c1575b601f0160051c01905b8181106104b6575061015c565b5f81556001016104a9565b90915081906104a0565b90607f169061014a565b015190505f80610114565b601f1982169060025f52805f20915f5b81811061052b57509583600195969710610513575b505050811b01600255610129565b01515f1960f88460031b161c191690555f8080610505565b9192602060018192868b0151815501940192016104f0565b60025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace601f830160051c8101916020841061059c575b601f0160051c01905b81811061059157506100fb565b5f8155600101610584565b909150819061057b565b90607f16906100e9565b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176103e85760405256fe60806040526004361015610021575b3461001d5761001b612913565b005b5f80fd5b5f3560e01c806301ddc8bf1461034b57806301ffc9a71461034657806302fa7c471461034157806306fdde031461033c578063081812fc14610337578063095ea7b314610332578063098144d4146102f65780630a2121001461032d5780630c756a78146103285780630d705df614610323578063156c2c321461031e578063183a4f6e146103195780631c10893f146103145780631cd64df41461030f5780631de26e8e1461030a57806321f365091461030557806323b872dd1461030057806325692962146102fb57806329e38d5e146102f65780632a55205a146102f15780632de94807146102ec57806342842e0e146102e757806342966c68146102e25780634a4ee7b1146102dd578063514e62fc146102d8578063529470e8146102d357806354d1f13d146102ce57806358456fb5146102c95780636352211e146102c457806370319970146102bf57806370a08231146102ba578063715018a6146102b55780637347ebb9146102b05780638528e8d3146102ab5780638da5cb5b146102a657806395d89b41146102a157806399a2557a1461029c578063a22cb46514610297578063a9fc664e14610292578063b1dae6181461028d578063b45a3c0e14610288578063b88d4fde14610283578063c87b56dd1461027e578063e0df5b6f14610279578063e985e9c514610274578063ed0616781461026f578063f04e283e1461026a578063f2fde38b14610265578063f7dec9b414610260578063fd4fe8a81461025b5763fee81cf40361000e576118c4565b611829565b61179d565b61175e565b61170d565b6116ef565b6116a3565b611558565b611539565b6114c8565b61147d565b611467565b6113d9565b611363565b6112f3565b61124e565b611222565b611182565b6110b4565b611067565b611040565b611018565b610fe8565b610fc9565b610f85565b610f65565b610f21565b610ef5565b610e10565b610dd7565b610d9a565b610d0d565b610701565b610cc4565b610cb2565b610c5a565b610c09565b610bc4565b610b5e565b610b46565b610a11565b6109ea565b6109ce565b610781565b610655565b6105f7565b610521565b610495565b61039e565b61035a565b5f91031261001d57565b3461001d575f36600319011261001d576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461001d57602036600319011261001d576004356001600160e01b031981169081810361001d576103fd91635a2d1e0760e11b811491821561042e575b8215610412575b508115610401575b5060405190151581529081906020820190565b0390f35b632483248360e11b1490505f6103ea565b90915060e01c6301ffc9a7632a55205a8214911417905f6103e2565b80925060e01c635b5e139f8114906301ffc9a76380ac58cd821491141717916103db565b6001600160a01b0381160361001d57565b6084359061047082610452565b565b60a4359061047082610452565b60c435906001600160601b038216820361001d57565b3461001d57604036600319011261001d576004356104b281610452565b6024356001600160601b038116810361001d57638b78c6d8600c52335f52600160581b6020600c205416156104ea5761001b9161226d565b6382b429005f526004601cfd5b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b3461001d575f36600319011261001d576040515f600354610541816118fa565b80845290600181169081156105d35750600114610575575b6103fd83610569818503826110ed565b604051918291826104f7565b60035f9081527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b939250905b8082106105b957509091508101602001610569610559565b9192600181602092548385880101520191019092916105a1565b60ff191660208086019190915291151560051b840190910191506105699050610559565b3461001d57602036600319011261001d576004355f818152673ec412a9852d173d60c11b601c5260209020810101805460601b1561064857600101546040516001600160a01b039091168152602090f35b63ceea21b65f526004601cfd5b604036600319011261001d5760043561066d81610452565b6024355f818152673ec412a9852d173d60c11b3317601c526020902081018101805491926001600160a01b039081169216908115610648578290823314331517156106dd575b600101557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4005b9050815f526030600c2054156106f45782906106b3565b634b6e7f185f526004601cfd5b3461001d575f36600319011261001d575f546040516001600160a01b039091168152602090f35b6004359063ffffffff8216820361001d57565b9181601f8401121561001d578235916001600160401b03831161001d576020808501948460051b01011161001d57565b608435906001600160801b038216820361001d57565b60a036600319011261001d57610795610728565b6024356001600160401b03811161001d576107b490369060040161073b565b91906044356107c281610452565b606435926107cf84610452565b6107d761076b565b905f5b8681106108c0575060405163f174883560e01b81523060048201526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016939092602084602481885afa93841561088a575f9461088f575b50843b1561001d575f9661086492604051998a988997889763c9df816760e01b895260048901611a54565b039134905af1801561088a5761087657005b806108845f61001b936110ed565b80610350565b611a25565b6108b291945060203d6020116108b9575b6108aa81836110ed565b810190611a10565b925f610839565b503d6108a0565b6108dc6108d86108d1838a896119fb565b35336122b2565b1590565b6109bf576108f46108ee8289886119fb565b35612310565b6109b05760019061090e6108d860055460ff9060a01c1690565b610997575b61094e610921828a896119fb565b355f818152673ec412a9852d173d60c11b601c526020902081010180546001600160a01b03198116189055565b7f032bc66be43dbccb7487781d168eb7bda224628a3b2c3388bdf69b532a3a161161098e61097d838b8a6119fb565b604051903581529081906020820190565b0390a1016107da565b6109ab6109a5828a896119fb565b356125ca565b610913565b635a8181f760e01b5f5260045ffd5b63096dcfe360e31b5f5260045ffd5b3461001d575f36600319011261001d5760206040516120008152f35b3461001d575f36600319011261001d576040805163657711f560e11b815260016020820152f35b604036600319011261001d576004356001600160401b03811161001d57610a3c90369060040161073b565b906024356001600160401b03811161001d57610a5c90369060040161073b565b60405163f174883560e01b8152306004820152909390926001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169190602085602481865afa801561088a575f610add916020978291610b29575b5060405163fe084c8f60e01b815298899788968796339460048901612341565b039134905af1801561088a576020915f91610afc575b50604051908152f35b610b1c9150823d8411610b22575b610b1481836110ed565b810190612332565b5f610af3565b503d610b0a565b610b409150883d8a116108b9576108aa81836110ed565b5f610abd565b602036600319011261001d5761001b600435336129c5565b604036600319011261001d57600435610b7681610452565b60243590610b82612487565b638b78c6d8600c525f526020600c2090815417809155600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3005b3461001d57604036600319011261001d576020610bff600435610be681610452565b602435918291638b78c6d8600c525f526020600c205490565b1614604051908152f35b3461001d575f36600319011261001d57638b78c6d8600c52335f526120006020600c205416156104ea576005805460ff60a01b1916600160a01b179055005b602090600319011261001d5760043590565b3461001d57610c6836610c48565b5f526001602052602060018060a01b0360405f205416604051908152f35b606090600319011261001d57600435610c9e81610452565b90602435610cab81610452565b9060443590565b61001b610cbe36610c86565b91611aab565b5f36600319011261001d5763389a75e1600c52335f526202a30042016020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a2005b3461001d57604036600319011261001d57600435602435905f5268aa4ec00224afccfdb760205260405f2054908160601c918215610d82575b6103fd908360601b1892835f1904831184023d3d3e6127106040519485940204908360209093929193604081019460018060a01b031681520152565b5068aa4ec00224afccfdb754606081901c9250610d46565b3461001d57602036600319011261001d576020610dcf600435610dbc81610452565b638b78c6d8600c525f526020600c205490565b604051908152f35b610de036610c86565b610ded8183859495611aab565b823b610df557005b61001b9260405192610e086020856110ed565b5f8452612538565b3461001d57602036600319011261001d576004355f818152673ec412a9852d173d60c11b601c5260209020810181015460a01c610e505761001b906125ca565b610e6281610e5d81611c1a565b612a35565b5f818152673ec412a9852d173d60c11b3317601c5260209020810181018054906001600160a01b03821690811561064857815f52806001019283548033148433141733151715610ee3575b905f948492610eda575b50189055601c600c20821981540190555f516020612dee5f395f51905f528280a4005b8590555f610eb7565b906030600c2054156106f45790610ead565b604036600319011261001d5761001b600435610f1081610452565b60243590610f1c612487565b6129c5565b3461001d57604036600319011261001d576020600435610f4081610452565b610f5a60243591638b78c6d8600c525f526020600c205490565b161515604051908152f35b3461001d575f36600319011261001d576020604051650400000000008152f35b5f36600319011261001d5763389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2005b3461001d575f36600319011261001d57604051600160581b8152602090f35b3461001d57602036600319011261001d576020611006600435611c1a565b6040516001600160a01b039091168152f35b3461001d575f36600319011261001d576005546040516001600160a01b039091168152602090f35b3461001d57602036600319011261001d576020610dcf60043561106281610452565b611c47565b5f36600319011261001d5761107a612487565b5f638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3600160ff1b638b78c6d81955005b3461001d575f36600319011261001d57602060ff60055460a01c166040519015158152f35b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761110e57604052565b6110d9565b6001600160401b03811161110e57601f01601f191660200190565b92919261113a82611113565b9161114860405193846110ed565b82948184528183011161001d578281602093845f960137010152565b9080601f8301121561001d5781602061117f9335910161112e565b90565b3461001d5760e036600319011261001d5760043561119f81610452565b6024356001600160401b03811161001d576111be903690600401611164565b906044356001600160401b03811161001d576111de903690600401611164565b91606435926001600160401b03841161001d5761120261001b943690600401611164565b61120a610463565b91611213610472565b9361121c61047f565b95611ec7565b3461001d575f36600319011261001d57638b78c6d819546040516001600160a01b039091168152602090f35b3461001d575f36600319011261001d576040515f60045461126e816118fa565b80845290600181169081156105d35750600114611295576103fd83610569818503826110ed565b60045f9081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b939250905b8082106112d957509091508101602001610569610559565b9192600181602092548385880101520191019092916112c1565b3461001d57606036600319011261001d5761131f60043561131381610452565b60243560443591612780565b6040518091602082016020835281518091526020604084019201905f5b81811061134a575050500390f35b825184528594506020938401939092019160010161133c565b3461001d57604036600319011261001d5760043561138081610452565b60243580151580910361001d5781601c52670a5a2e7a00000000600852335f52806030600c20555f5260018060a01b0316337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160205fa3005b3461001d57602036600319011261001d576004356113f681610452565b638b78c6d8600c52335f52600160451b6020600c205416156104ea575f80546001600160a01b039283166001600160a01b0319821681179092556040805193909116835260208301919091527fcc5dc080ff977b3c3a211fa63ab74f90f658f5ba9d3236e92c8f59570f442aac91a1005b3461001d5761001b61147836610c48565b612019565b3461001d57602036600319011261001d5760206001600160601b036114be600435805f52673ec412a9852d173d60c11b601c5260205f208101015460a01c90565b1615604051908152f35b608036600319011261001d576004356114e081610452565b6024356114ec81610452565b606435916044356001600160401b03841161001d573660238501121561001d578360040135926001600160401b03841161001d57366024858701011161001d57602461001b9501926120e2565b3461001d57602036600319011261001d576103fd61056960043561217e565b3461001d57602036600319011261001d576004356001600160401b03811161001d57611588903690600401611164565b61159061224d565b80516001600160401b03811161110e576115b4816115af6002546118fa565b611c7a565b602091601f8211600114611625576115e2925f918361161a575b50508160011b915f199060031b1c19161790565b6002555b604080515f81525f1960208201527f6bd5c950a8d8df17f772f5af37cb3655737899cbf903264b9795592da439661c9190a1005b015190505f806115ce565b60025f52601f198216927f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace915f5b85811061168b57508360019510611673575b505050811b016002556115e6565b01515f1960f88460031b161c191690555f8080611665565b91926020600181928685015181550194019201611653565b3461001d57604036600319011261001d576004356116c081610452565b6024356116cc81610452565b601c52670a5a2e7a000000006008525f5260206030600c20546040519015158152f35b3461001d575f36600319011261001d576020604051600160451b8152f35b602036600319011261001d5760043561172581610452565b61172d612487565b63389a75e1600c52805f526020600c209081544211611751575f61001b9255612663565b636f5e88185f526004601cfd5b602036600319011261001d5760043561177681610452565b61177e612487565b8060601b156117905761001b90612663565b637448fbae5f526004601cfd5b606036600319011261001d576004356001600160401b03811161001d576117c890369060040161073b565b906024356001600160401b03811161001d576117e890369060040161073b565b604435916001600160801b038316830361001d57602094611808946123d7565b5f818152600183526040902080546001600160a01b03191633179055610dcf565b3461001d57602036600319011261001d577f6bd5c950a8d8df17f772f5af37cb3655737899cbf903264b9795592da439661c604060043561186981610452565b61187161224d565b600580546001600160a01b0319166001600160a01b039290921691821790558151907faa56f403bb636768e9e1fec12c1968db814767675df6bc4a8c2488fc094c6a035f80a25f81525f196020820152a1005b3461001d57602036600319011261001d576004356118e181610452565b63389a75e1600c525f52602080600c2054604051908152f35b90600182811c92168015611928575b602083101461191457565b634e487b7160e01b5f52602260045260245ffd5b91607f1691611909565b604051905f8260025491611945836118fa565b80835292600181169081156119c85750600114611969575b610470925003836110ed565b5060025f90815290917f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace5b8183106119ac5750509060206104709282010161195d565b6020919350806001915483858901015201910190918492611994565b6020925061047094915060ff191682840152151560051b82010161195d565b634e487b7160e01b5f52603260045260245ffd5b9190811015611a0b5760051b0190565b6119e7565b9081602091031261001d575161117f81610452565b6040513d5f823e3d90fd5b81835290916001600160fb1b03831161001d5760209260051b809284830137010190565b9591926001600160801b039460a09699989463ffffffff611a8f94168952600180891b0316602089015260c0604089015260c0880191611a30565b5f196001861b0197881660608701529616608085015216910152565b9190337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031603611b295760016001600160601b03611b0b84805f52673ec412a9852d173d60c11b601c5260205f208101015460a01c90565b1614611b1a5761047092612496565b6305b166a360e41b5f5260045ffd5b9091611b36838383612b98565b5f838152673ec412a9852d173d60c11b3317601c52602090208301830180546001600160a01b0393841693928316928116808414810215611c055750825f528160010180548033148533141715611bee575b611be5575b50838318189055601c600c205f198154019055815f52601c600c2060018154019063ffffffff8216840215611bd057555f516020612dee5f395f51905f525f80a4565b67ea553b3401336cea841560021b526004601cfd5b5f90555f611b8d565b6030600c2054611b8857634b6e7f185f526004601cfd5b67ceea21b6a1148100901560021b526004601cfd5b5f818152673ec412a9852d173d60c11b601c5260209020810101546001600160a01b031690811561064857565b8015611c6d57673ec412a9852d173d60c11b601c525f5263ffffffff601c600c20541690565b638f4eb6045f526004601cfd5b601f8111611c86575050565b60025f5260205f20906020601f840160051c83019310611cc0575b601f0160051c01905b818110611cb5575050565b5f8155600101611caa565b9091508190611ca1565b601f8211611cd757505050565b5f5260205f20906020601f840160051c83019310611d0f575b601f0160051c01905b818110611d04575050565b5f8155600101611cf9565b9091508190611cf0565b9081516001600160401b03811161110e57611d4081611d396003546118fa565b6003611cca565b602092601f8211600114611d7457611d6f929382915f9261161a5750508160011b915f199060031b1c19161790565b600355565b60035f52601f198216937fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f5b868110611dd85750836001959610611dc0575b505050811b01600355565b01515f1960f88460031b161c191690555f8080611db5565b91926020600181928685015181550194019201611da2565b9081516001600160401b03811161110e57611e1781611e106004546118fa565b6004611cca565b602092601f8211600114611e4b57611e46929382915f9261161a5750508160011b915f199060031b1c19161790565b600455565b60045f52601f198216937f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b915f5b868110611eaf5750836001959610611e97575b505050811b01600455565b01515f1960f88460031b161c191690555f8080611e8c565b91926020600181928685015181550194019201611e79565b939190969594929687516001600160401b03811161110e57611eee816115af6002546118fa565b6020601f8211600114611f835792611f38611f7e969593611f3084611f3d95611f5a986104709e9f5f9261161a5750508160011b915f199060031b1c19161790565b600255611d19565b611df0565b60018060a01b03166001600160601b0360a01b6005541617600555565b611f63836126a6565b60018060a01b03166001600160601b0360a01b5f5416175f55565b61226d565b60025f52601f198216997f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace9a5f5b8181106120015750936001846104709c9d611f5a9895611f3895611f3d98611f7e9d9c9a10611fe9575b505050811b01600255611d19565b01515f1960f88460031b161c191690555f8080611fdb565b838301518d556001909c019b60209384019301611fb1565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633036120d3575f818152600160205260409020546001600160a01b031680156120cf5761208b61207b835f52600160205260405f2090565b80546001600160a01b0319169055565b803b1561001d5760405163163b5cc360e31b815260048101929092525f908290602490829084905af1801561088a576120c15750565b806108845f610470936110ed565b5050565b63db70dad160e01b5f5260045ffd5b92936120ef838386611aab565b813b6120fd575b5050505050565b6121129461210c91369161112e565b92612538565b5f808080806120f6565b60208183031261001d578051906001600160401b03821161001d570181601f8201121561001d5780519061214f82611113565b9261215d60405194856110ed565b8284526020838301011161001d57815f9260208093018386015e8301015290565b5f818152673ec412a9852d173d60c11b601c5260209020810181015460601b1561223e576005546001600160a01b0316806121cd57506121c061117f9161283b565b6121c8611932565b612880565b61220d915f916121ed906001600160a01b03165b6001600160a01b031690565b604051808095819463c87b56dd60e01b8352600483019190602083019252565b03915afa90811561088a575f91612222575090565b61117f91503d805f833e61223681836110ed565b81019061211c565b63677510db60e11b5f5260045ffd5b638b78c6d8600c52335f52650400000000006020600c205416156104ea57565b906001600160601b03169061271082116122a55760601b8015612298571768aa4ec00224afccfdb755565b63b4457eaa5f526004601cfd5b63350a88b35f526004601cfd5b5f8281526001600160a01b03918216673ec412a9852d173d60c11b8117601c526020909120830190920180546001949392168015610648578083036122f657505050565b5f526030600c205415612307575050565b60010154149150565b5f818152673ec412a9852d173d60c11b601c52602090208101015460a01c1590565b9081602091031261001d575190565b949291602092612369929998979960018060a01b0316875260a08488015260a0870191611a30565b84810360408601528281520191905f905b8082106123aa575050506001600160a01b0390941660608201526104709190608001906001600160801b03169052565b90919283359063ffffffff8216820361001d576020809163ffffffff60019416815201940192019061237a565b60405163f174883560e01b81523060048201529394936001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016929190602081602481875afa95861561088a57602096612457925f91610b29575060405163fe084c8f60e01b815298899788968796339460048901612341565b039134905af190811561088a575f9161246e575090565b61117f915060203d602011610b2257610b1481836110ed565b638b78c6d8195433036104ea57565b6124a1838383612b98565b5f838152673ec412a9852d173d60c11b601c52602090208301830180546001600160a01b0393841693928316928116808414810215611c055750825f52816001018054801585151760011715611bee57611be55750838318189055601c600c205f198154019055815f52601c600c2060018154019063ffffffff8216840215611bd057555f516020612dee5f395f51905f525f80a4565b9060a46020939460405195869463150b7a028652338787015260018060a01b03166040860152606085015260808085015280518091818060a08801526125b6575b505001905f601c8401915af1156125a8575b5163757a42ff60e11b0161259b57565b63d1a57ed65f526004601cfd5b3d1561258b573d5f823e3d90fd5b818760c08801920160045afa50805f612579565b6125d781610e5d81611c1a565b5f818152673ec412a9852d173d60c11b601c5260209020810181018054906001600160a01b03821690811561064857815f5280600101928354801560011715612651575b905f948492612648575b50189055601c600c20821981540190555f516020612dee5f395f51905f528280a4565b8590555f612625565b906030600c2054156106f4579061261b565b60018060a01b031680638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3801560ff1b17638b78c6d81955565b638b78c6d819546126ef576001600160a01b0316801560ff1b8117638b78c6d819555f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a3565b630dc149f05f526004601cfd5b6001600160401b03811161110e5760051b60200190565b9061271d826126fc565b61272a60405191826110ed565b828152809261273b601f19916126fc565b0190602036910137565b634e487b7160e01b5f52601160045260245ffd5b5f1981146127675760010190565b612745565b8051821015611a0b5760209160051b010190565b90929161278c82611c47565b5f9261279782612713565b955b838111156127de57505050506127ae81612713565b905f5b8181106127bf575090925050565b806127cc6001928761276c565b516127d7828661276c565b52016127b1565b5f818152673ec412a9852d173d60c11b601c526020902081018101546001600160a01b0383811691161461281b575b61281690612759565b612799565b93808561282a6001938a61276c565b52019382850361280d575050505050565b90604051600a608082019360a083016040525f8552935b5f19019360308282060185530492831561286e57600a90612852565b809350608091030191601f1901918252565b6040518151909392909160208301601f19165b8181015186820152601f19019081156128ac5790612893565b505080519084830160208301601f19165b8281015182820152601f19019182156128d657916128bd565b50505060409101808401905f6020830152845201604052565b908160051b918083046020149015171561276757565b606401908160641161276757565b5f3560e01c6340c10f19810361293b57506104706024356004356001600160a01b0316612d60565b6392772833036129b6577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633036120d3576044356024356001600160a01b03165f5b82811061299257505050565b806129b0836129aa6129a56001956128ef565b612905565b35612c73565b01612986565b631e085ca760e11b5f5260045ffd5b638b78c6d8600c525f526020600c2090815490811618809155600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3565b6001600160a01b03918216815291811660208301529091166040820152606081019190915260800190565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163303612a69575050565b612a7282612310565b8015612ae3575b6120d3575f546001600160a01b031680612a9257505050565b612aa4906001600160a01b03166121e1565b91823b1561001d5760405163657711f560e11b8152925f92849283918291612ad29187903360048601612a0a565b03915afa801561088a576120c15750565b506001600160a01b03811615612a79565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163303612b28575050565b612b3182612310565b8015612b90575b6120d3575f546001600160a01b031680612b5157505050565b612b63906001600160a01b03166121e1565b91823b1561001d5760405163657711f560e11b8152925f92849283918291612ad291873360048601612a0a565b506001612b38565b90917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163303612bcf57505050565b612bd881612310565b8015612c62575b6120d3575f546001600160a01b031680612bfa575b50505050565b612c0c906001600160a01b03166121e1565b803b1561001d57612c37935f936040519586948593849363657711f560e11b85523360048601612a0a565b03915afa801561088a57612c4e575b808080612bf4565b806108845f612c5c936110ed565b5f612c46565b506001600160a01b03821615612bdf565b906001600160601b03612ca083805f52673ec412a9852d173d60c11b601c5260205f208101015460a01c90565b16611b1a575f828152673ec412a9852d173d60c11b601c5260209081902083018301547ff27b6ce5b2f5e68ddb2fd95a8a909d4ecf1daaac270935fff052feacb24f18429391926001600160a01b039091169082908280612d375750612d069250612d60565b805f52673ec412a9852d173d60c11b601c52815f208101810180548060a01c60011860a01b189055604051908152a1565b6001600160a01b03821603612d4f575b505050612d06565b612d5892612496565b5f8181612d47565b612d6a8282612af4565b60018060a01b0316815f52673ec412a9852d173d60c11b601c5260205f208201820180548060601b612de05782179055805f52601c600c2060018154019063ffffffff8216830215612dcb57555f5f516020612dee5f395f51905f528180a4565b67ea553b3401336cea831560021b526004601cfd5b63c991cbb15f526004601cfdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220d1666f4a0047c8a0657a5e3a77f071706d028bd324060a66169220812511297a64736f6c634300081c003300000000000000000000000000000000000087c6dbadc090d39bc10316f20658
Deployed Bytecode
0x60806040526004361015610021575b3461001d5761001b612913565b005b5f80fd5b5f3560e01c806301ddc8bf1461034b57806301ffc9a71461034657806302fa7c471461034157806306fdde031461033c578063081812fc14610337578063095ea7b314610332578063098144d4146102f65780630a2121001461032d5780630c756a78146103285780630d705df614610323578063156c2c321461031e578063183a4f6e146103195780631c10893f146103145780631cd64df41461030f5780631de26e8e1461030a57806321f365091461030557806323b872dd1461030057806325692962146102fb57806329e38d5e146102f65780632a55205a146102f15780632de94807146102ec57806342842e0e146102e757806342966c68146102e25780634a4ee7b1146102dd578063514e62fc146102d8578063529470e8146102d357806354d1f13d146102ce57806358456fb5146102c95780636352211e146102c457806370319970146102bf57806370a08231146102ba578063715018a6146102b55780637347ebb9146102b05780638528e8d3146102ab5780638da5cb5b146102a657806395d89b41146102a157806399a2557a1461029c578063a22cb46514610297578063a9fc664e14610292578063b1dae6181461028d578063b45a3c0e14610288578063b88d4fde14610283578063c87b56dd1461027e578063e0df5b6f14610279578063e985e9c514610274578063ed0616781461026f578063f04e283e1461026a578063f2fde38b14610265578063f7dec9b414610260578063fd4fe8a81461025b5763fee81cf40361000e576118c4565b611829565b61179d565b61175e565b61170d565b6116ef565b6116a3565b611558565b611539565b6114c8565b61147d565b611467565b6113d9565b611363565b6112f3565b61124e565b611222565b611182565b6110b4565b611067565b611040565b611018565b610fe8565b610fc9565b610f85565b610f65565b610f21565b610ef5565b610e10565b610dd7565b610d9a565b610d0d565b610701565b610cc4565b610cb2565b610c5a565b610c09565b610bc4565b610b5e565b610b46565b610a11565b6109ea565b6109ce565b610781565b610655565b6105f7565b610521565b610495565b61039e565b61035a565b5f91031261001d57565b3461001d575f36600319011261001d576040517f00000000000000000000000000000000000087c6dbadc090d39bc10316f206586001600160a01b03168152602090f35b3461001d57602036600319011261001d576004356001600160e01b031981169081810361001d576103fd91635a2d1e0760e11b811491821561042e575b8215610412575b508115610401575b5060405190151581529081906020820190565b0390f35b632483248360e11b1490505f6103ea565b90915060e01c6301ffc9a7632a55205a8214911417905f6103e2565b80925060e01c635b5e139f8114906301ffc9a76380ac58cd821491141717916103db565b6001600160a01b0381160361001d57565b6084359061047082610452565b565b60a4359061047082610452565b60c435906001600160601b038216820361001d57565b3461001d57604036600319011261001d576004356104b281610452565b6024356001600160601b038116810361001d57638b78c6d8600c52335f52600160581b6020600c205416156104ea5761001b9161226d565b6382b429005f526004601cfd5b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b3461001d575f36600319011261001d576040515f600354610541816118fa565b80845290600181169081156105d35750600114610575575b6103fd83610569818503826110ed565b604051918291826104f7565b60035f9081527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b939250905b8082106105b957509091508101602001610569610559565b9192600181602092548385880101520191019092916105a1565b60ff191660208086019190915291151560051b840190910191506105699050610559565b3461001d57602036600319011261001d576004355f818152673ec412a9852d173d60c11b601c5260209020810101805460601b1561064857600101546040516001600160a01b039091168152602090f35b63ceea21b65f526004601cfd5b604036600319011261001d5760043561066d81610452565b6024355f818152673ec412a9852d173d60c11b3317601c526020902081018101805491926001600160a01b039081169216908115610648578290823314331517156106dd575b600101557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4005b9050815f526030600c2054156106f45782906106b3565b634b6e7f185f526004601cfd5b3461001d575f36600319011261001d575f546040516001600160a01b039091168152602090f35b6004359063ffffffff8216820361001d57565b9181601f8401121561001d578235916001600160401b03831161001d576020808501948460051b01011161001d57565b608435906001600160801b038216820361001d57565b60a036600319011261001d57610795610728565b6024356001600160401b03811161001d576107b490369060040161073b565b91906044356107c281610452565b606435926107cf84610452565b6107d761076b565b905f5b8681106108c0575060405163f174883560e01b81523060048201526001600160a01b037f00000000000000000000000000000000000087c6dbadc090d39bc10316f2065816939092602084602481885afa93841561088a575f9461088f575b50843b1561001d575f9661086492604051998a988997889763c9df816760e01b895260048901611a54565b039134905af1801561088a5761087657005b806108845f61001b936110ed565b80610350565b611a25565b6108b291945060203d6020116108b9575b6108aa81836110ed565b810190611a10565b925f610839565b503d6108a0565b6108dc6108d86108d1838a896119fb565b35336122b2565b1590565b6109bf576108f46108ee8289886119fb565b35612310565b6109b05760019061090e6108d860055460ff9060a01c1690565b610997575b61094e610921828a896119fb565b355f818152673ec412a9852d173d60c11b601c526020902081010180546001600160a01b03198116189055565b7f032bc66be43dbccb7487781d168eb7bda224628a3b2c3388bdf69b532a3a161161098e61097d838b8a6119fb565b604051903581529081906020820190565b0390a1016107da565b6109ab6109a5828a896119fb565b356125ca565b610913565b635a8181f760e01b5f5260045ffd5b63096dcfe360e31b5f5260045ffd5b3461001d575f36600319011261001d5760206040516120008152f35b3461001d575f36600319011261001d576040805163657711f560e11b815260016020820152f35b604036600319011261001d576004356001600160401b03811161001d57610a3c90369060040161073b565b906024356001600160401b03811161001d57610a5c90369060040161073b565b60405163f174883560e01b8152306004820152909390926001600160a01b037f00000000000000000000000000000000000087c6dbadc090d39bc10316f20658169190602085602481865afa801561088a575f610add916020978291610b29575b5060405163fe084c8f60e01b815298899788968796339460048901612341565b039134905af1801561088a576020915f91610afc575b50604051908152f35b610b1c9150823d8411610b22575b610b1481836110ed565b810190612332565b5f610af3565b503d610b0a565b610b409150883d8a116108b9576108aa81836110ed565b5f610abd565b602036600319011261001d5761001b600435336129c5565b604036600319011261001d57600435610b7681610452565b60243590610b82612487565b638b78c6d8600c525f526020600c2090815417809155600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3005b3461001d57604036600319011261001d576020610bff600435610be681610452565b602435918291638b78c6d8600c525f526020600c205490565b1614604051908152f35b3461001d575f36600319011261001d57638b78c6d8600c52335f526120006020600c205416156104ea576005805460ff60a01b1916600160a01b179055005b602090600319011261001d5760043590565b3461001d57610c6836610c48565b5f526001602052602060018060a01b0360405f205416604051908152f35b606090600319011261001d57600435610c9e81610452565b90602435610cab81610452565b9060443590565b61001b610cbe36610c86565b91611aab565b5f36600319011261001d5763389a75e1600c52335f526202a30042016020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a2005b3461001d57604036600319011261001d57600435602435905f5268aa4ec00224afccfdb760205260405f2054908160601c918215610d82575b6103fd908360601b1892835f1904831184023d3d3e6127106040519485940204908360209093929193604081019460018060a01b031681520152565b5068aa4ec00224afccfdb754606081901c9250610d46565b3461001d57602036600319011261001d576020610dcf600435610dbc81610452565b638b78c6d8600c525f526020600c205490565b604051908152f35b610de036610c86565b610ded8183859495611aab565b823b610df557005b61001b9260405192610e086020856110ed565b5f8452612538565b3461001d57602036600319011261001d576004355f818152673ec412a9852d173d60c11b601c5260209020810181015460a01c610e505761001b906125ca565b610e6281610e5d81611c1a565b612a35565b5f818152673ec412a9852d173d60c11b3317601c5260209020810181018054906001600160a01b03821690811561064857815f52806001019283548033148433141733151715610ee3575b905f948492610eda575b50189055601c600c20821981540190555f516020612dee5f395f51905f528280a4005b8590555f610eb7565b906030600c2054156106f45790610ead565b604036600319011261001d5761001b600435610f1081610452565b60243590610f1c612487565b6129c5565b3461001d57604036600319011261001d576020600435610f4081610452565b610f5a60243591638b78c6d8600c525f526020600c205490565b161515604051908152f35b3461001d575f36600319011261001d576020604051650400000000008152f35b5f36600319011261001d5763389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2005b3461001d575f36600319011261001d57604051600160581b8152602090f35b3461001d57602036600319011261001d576020611006600435611c1a565b6040516001600160a01b039091168152f35b3461001d575f36600319011261001d576005546040516001600160a01b039091168152602090f35b3461001d57602036600319011261001d576020610dcf60043561106281610452565b611c47565b5f36600319011261001d5761107a612487565b5f638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3600160ff1b638b78c6d81955005b3461001d575f36600319011261001d57602060ff60055460a01c166040519015158152f35b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761110e57604052565b6110d9565b6001600160401b03811161110e57601f01601f191660200190565b92919261113a82611113565b9161114860405193846110ed565b82948184528183011161001d578281602093845f960137010152565b9080601f8301121561001d5781602061117f9335910161112e565b90565b3461001d5760e036600319011261001d5760043561119f81610452565b6024356001600160401b03811161001d576111be903690600401611164565b906044356001600160401b03811161001d576111de903690600401611164565b91606435926001600160401b03841161001d5761120261001b943690600401611164565b61120a610463565b91611213610472565b9361121c61047f565b95611ec7565b3461001d575f36600319011261001d57638b78c6d819546040516001600160a01b039091168152602090f35b3461001d575f36600319011261001d576040515f60045461126e816118fa565b80845290600181169081156105d35750600114611295576103fd83610569818503826110ed565b60045f9081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b939250905b8082106112d957509091508101602001610569610559565b9192600181602092548385880101520191019092916112c1565b3461001d57606036600319011261001d5761131f60043561131381610452565b60243560443591612780565b6040518091602082016020835281518091526020604084019201905f5b81811061134a575050500390f35b825184528594506020938401939092019160010161133c565b3461001d57604036600319011261001d5760043561138081610452565b60243580151580910361001d5781601c52670a5a2e7a00000000600852335f52806030600c20555f5260018060a01b0316337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160205fa3005b3461001d57602036600319011261001d576004356113f681610452565b638b78c6d8600c52335f52600160451b6020600c205416156104ea575f80546001600160a01b039283166001600160a01b0319821681179092556040805193909116835260208301919091527fcc5dc080ff977b3c3a211fa63ab74f90f658f5ba9d3236e92c8f59570f442aac91a1005b3461001d5761001b61147836610c48565b612019565b3461001d57602036600319011261001d5760206001600160601b036114be600435805f52673ec412a9852d173d60c11b601c5260205f208101015460a01c90565b1615604051908152f35b608036600319011261001d576004356114e081610452565b6024356114ec81610452565b606435916044356001600160401b03841161001d573660238501121561001d578360040135926001600160401b03841161001d57366024858701011161001d57602461001b9501926120e2565b3461001d57602036600319011261001d576103fd61056960043561217e565b3461001d57602036600319011261001d576004356001600160401b03811161001d57611588903690600401611164565b61159061224d565b80516001600160401b03811161110e576115b4816115af6002546118fa565b611c7a565b602091601f8211600114611625576115e2925f918361161a575b50508160011b915f199060031b1c19161790565b6002555b604080515f81525f1960208201527f6bd5c950a8d8df17f772f5af37cb3655737899cbf903264b9795592da439661c9190a1005b015190505f806115ce565b60025f52601f198216927f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace915f5b85811061168b57508360019510611673575b505050811b016002556115e6565b01515f1960f88460031b161c191690555f8080611665565b91926020600181928685015181550194019201611653565b3461001d57604036600319011261001d576004356116c081610452565b6024356116cc81610452565b601c52670a5a2e7a000000006008525f5260206030600c20546040519015158152f35b3461001d575f36600319011261001d576020604051600160451b8152f35b602036600319011261001d5760043561172581610452565b61172d612487565b63389a75e1600c52805f526020600c209081544211611751575f61001b9255612663565b636f5e88185f526004601cfd5b602036600319011261001d5760043561177681610452565b61177e612487565b8060601b156117905761001b90612663565b637448fbae5f526004601cfd5b606036600319011261001d576004356001600160401b03811161001d576117c890369060040161073b565b906024356001600160401b03811161001d576117e890369060040161073b565b604435916001600160801b038316830361001d57602094611808946123d7565b5f818152600183526040902080546001600160a01b03191633179055610dcf565b3461001d57602036600319011261001d577f6bd5c950a8d8df17f772f5af37cb3655737899cbf903264b9795592da439661c604060043561186981610452565b61187161224d565b600580546001600160a01b0319166001600160a01b039290921691821790558151907faa56f403bb636768e9e1fec12c1968db814767675df6bc4a8c2488fc094c6a035f80a25f81525f196020820152a1005b3461001d57602036600319011261001d576004356118e181610452565b63389a75e1600c525f52602080600c2054604051908152f35b90600182811c92168015611928575b602083101461191457565b634e487b7160e01b5f52602260045260245ffd5b91607f1691611909565b604051905f8260025491611945836118fa565b80835292600181169081156119c85750600114611969575b610470925003836110ed565b5060025f90815290917f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace5b8183106119ac5750509060206104709282010161195d565b6020919350806001915483858901015201910190918492611994565b6020925061047094915060ff191682840152151560051b82010161195d565b634e487b7160e01b5f52603260045260245ffd5b9190811015611a0b5760051b0190565b6119e7565b9081602091031261001d575161117f81610452565b6040513d5f823e3d90fd5b81835290916001600160fb1b03831161001d5760209260051b809284830137010190565b9591926001600160801b039460a09699989463ffffffff611a8f94168952600180891b0316602089015260c0604089015260c0880191611a30565b5f196001861b0197881660608701529616608085015216910152565b9190337f00000000000000000000000000000000000087c6dbadc090d39bc10316f206586001600160a01b031603611b295760016001600160601b03611b0b84805f52673ec412a9852d173d60c11b601c5260205f208101015460a01c90565b1614611b1a5761047092612496565b6305b166a360e41b5f5260045ffd5b9091611b36838383612b98565b5f838152673ec412a9852d173d60c11b3317601c52602090208301830180546001600160a01b0393841693928316928116808414810215611c055750825f528160010180548033148533141715611bee575b611be5575b50838318189055601c600c205f198154019055815f52601c600c2060018154019063ffffffff8216840215611bd057555f516020612dee5f395f51905f525f80a4565b67ea553b3401336cea841560021b526004601cfd5b5f90555f611b8d565b6030600c2054611b8857634b6e7f185f526004601cfd5b67ceea21b6a1148100901560021b526004601cfd5b5f818152673ec412a9852d173d60c11b601c5260209020810101546001600160a01b031690811561064857565b8015611c6d57673ec412a9852d173d60c11b601c525f5263ffffffff601c600c20541690565b638f4eb6045f526004601cfd5b601f8111611c86575050565b60025f5260205f20906020601f840160051c83019310611cc0575b601f0160051c01905b818110611cb5575050565b5f8155600101611caa565b9091508190611ca1565b601f8211611cd757505050565b5f5260205f20906020601f840160051c83019310611d0f575b601f0160051c01905b818110611d04575050565b5f8155600101611cf9565b9091508190611cf0565b9081516001600160401b03811161110e57611d4081611d396003546118fa565b6003611cca565b602092601f8211600114611d7457611d6f929382915f9261161a5750508160011b915f199060031b1c19161790565b600355565b60035f52601f198216937fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f5b868110611dd85750836001959610611dc0575b505050811b01600355565b01515f1960f88460031b161c191690555f8080611db5565b91926020600181928685015181550194019201611da2565b9081516001600160401b03811161110e57611e1781611e106004546118fa565b6004611cca565b602092601f8211600114611e4b57611e46929382915f9261161a5750508160011b915f199060031b1c19161790565b600455565b60045f52601f198216937f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b915f5b868110611eaf5750836001959610611e97575b505050811b01600455565b01515f1960f88460031b161c191690555f8080611e8c565b91926020600181928685015181550194019201611e79565b939190969594929687516001600160401b03811161110e57611eee816115af6002546118fa565b6020601f8211600114611f835792611f38611f7e969593611f3084611f3d95611f5a986104709e9f5f9261161a5750508160011b915f199060031b1c19161790565b600255611d19565b611df0565b60018060a01b03166001600160601b0360a01b6005541617600555565b611f63836126a6565b60018060a01b03166001600160601b0360a01b5f5416175f55565b61226d565b60025f52601f198216997f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace9a5f5b8181106120015750936001846104709c9d611f5a9895611f3895611f3d98611f7e9d9c9a10611fe9575b505050811b01600255611d19565b01515f1960f88460031b161c191690555f8080611fdb565b838301518d556001909c019b60209384019301611fb1565b7f00000000000000000000000000000000000087c6dbadc090d39bc10316f206586001600160a01b031633036120d3575f818152600160205260409020546001600160a01b031680156120cf5761208b61207b835f52600160205260405f2090565b80546001600160a01b0319169055565b803b1561001d5760405163163b5cc360e31b815260048101929092525f908290602490829084905af1801561088a576120c15750565b806108845f610470936110ed565b5050565b63db70dad160e01b5f5260045ffd5b92936120ef838386611aab565b813b6120fd575b5050505050565b6121129461210c91369161112e565b92612538565b5f808080806120f6565b60208183031261001d578051906001600160401b03821161001d570181601f8201121561001d5780519061214f82611113565b9261215d60405194856110ed565b8284526020838301011161001d57815f9260208093018386015e8301015290565b5f818152673ec412a9852d173d60c11b601c5260209020810181015460601b1561223e576005546001600160a01b0316806121cd57506121c061117f9161283b565b6121c8611932565b612880565b61220d915f916121ed906001600160a01b03165b6001600160a01b031690565b604051808095819463c87b56dd60e01b8352600483019190602083019252565b03915afa90811561088a575f91612222575090565b61117f91503d805f833e61223681836110ed565b81019061211c565b63677510db60e11b5f5260045ffd5b638b78c6d8600c52335f52650400000000006020600c205416156104ea57565b906001600160601b03169061271082116122a55760601b8015612298571768aa4ec00224afccfdb755565b63b4457eaa5f526004601cfd5b63350a88b35f526004601cfd5b5f8281526001600160a01b03918216673ec412a9852d173d60c11b8117601c526020909120830190920180546001949392168015610648578083036122f657505050565b5f526030600c205415612307575050565b60010154149150565b5f818152673ec412a9852d173d60c11b601c52602090208101015460a01c1590565b9081602091031261001d575190565b949291602092612369929998979960018060a01b0316875260a08488015260a0870191611a30565b84810360408601528281520191905f905b8082106123aa575050506001600160a01b0390941660608201526104709190608001906001600160801b03169052565b90919283359063ffffffff8216820361001d576020809163ffffffff60019416815201940192019061237a565b60405163f174883560e01b81523060048201529394936001600160a01b037f00000000000000000000000000000000000087c6dbadc090d39bc10316f2065816929190602081602481875afa95861561088a57602096612457925f91610b29575060405163fe084c8f60e01b815298899788968796339460048901612341565b039134905af190811561088a575f9161246e575090565b61117f915060203d602011610b2257610b1481836110ed565b638b78c6d8195433036104ea57565b6124a1838383612b98565b5f838152673ec412a9852d173d60c11b601c52602090208301830180546001600160a01b0393841693928316928116808414810215611c055750825f52816001018054801585151760011715611bee57611be55750838318189055601c600c205f198154019055815f52601c600c2060018154019063ffffffff8216840215611bd057555f516020612dee5f395f51905f525f80a4565b9060a46020939460405195869463150b7a028652338787015260018060a01b03166040860152606085015260808085015280518091818060a08801526125b6575b505001905f601c8401915af1156125a8575b5163757a42ff60e11b0161259b57565b63d1a57ed65f526004601cfd5b3d1561258b573d5f823e3d90fd5b818760c08801920160045afa50805f612579565b6125d781610e5d81611c1a565b5f818152673ec412a9852d173d60c11b601c5260209020810181018054906001600160a01b03821690811561064857815f5280600101928354801560011715612651575b905f948492612648575b50189055601c600c20821981540190555f516020612dee5f395f51905f528280a4565b8590555f612625565b906030600c2054156106f4579061261b565b60018060a01b031680638b78c6d819547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3801560ff1b17638b78c6d81955565b638b78c6d819546126ef576001600160a01b0316801560ff1b8117638b78c6d819555f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a3565b630dc149f05f526004601cfd5b6001600160401b03811161110e5760051b60200190565b9061271d826126fc565b61272a60405191826110ed565b828152809261273b601f19916126fc565b0190602036910137565b634e487b7160e01b5f52601160045260245ffd5b5f1981146127675760010190565b612745565b8051821015611a0b5760209160051b010190565b90929161278c82611c47565b5f9261279782612713565b955b838111156127de57505050506127ae81612713565b905f5b8181106127bf575090925050565b806127cc6001928761276c565b516127d7828661276c565b52016127b1565b5f818152673ec412a9852d173d60c11b601c526020902081018101546001600160a01b0383811691161461281b575b61281690612759565b612799565b93808561282a6001938a61276c565b52019382850361280d575050505050565b90604051600a608082019360a083016040525f8552935b5f19019360308282060185530492831561286e57600a90612852565b809350608091030191601f1901918252565b6040518151909392909160208301601f19165b8181015186820152601f19019081156128ac5790612893565b505080519084830160208301601f19165b8281015182820152601f19019182156128d657916128bd565b50505060409101808401905f6020830152845201604052565b908160051b918083046020149015171561276757565b606401908160641161276757565b5f3560e01c6340c10f19810361293b57506104706024356004356001600160a01b0316612d60565b6392772833036129b6577f00000000000000000000000000000000000087c6dbadc090d39bc10316f206586001600160a01b031633036120d3576044356024356001600160a01b03165f5b82811061299257505050565b806129b0836129aa6129a56001956128ef565b612905565b35612c73565b01612986565b631e085ca760e11b5f5260045ffd5b638b78c6d8600c525f526020600c2090815490811618809155600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3565b6001600160a01b03918216815291811660208301529091166040820152606081019190915260800190565b7f00000000000000000000000000000000000087c6dbadc090d39bc10316f206586001600160a01b03163303612a69575050565b612a7282612310565b8015612ae3575b6120d3575f546001600160a01b031680612a9257505050565b612aa4906001600160a01b03166121e1565b91823b1561001d5760405163657711f560e11b8152925f92849283918291612ad29187903360048601612a0a565b03915afa801561088a576120c15750565b506001600160a01b03811615612a79565b7f00000000000000000000000000000000000087c6dbadc090d39bc10316f206586001600160a01b03163303612b28575050565b612b3182612310565b8015612b90575b6120d3575f546001600160a01b031680612b5157505050565b612b63906001600160a01b03166121e1565b91823b1561001d5760405163657711f560e11b8152925f92849283918291612ad291873360048601612a0a565b506001612b38565b90917f00000000000000000000000000000000000087c6dbadc090d39bc10316f206586001600160a01b03163303612bcf57505050565b612bd881612310565b8015612c62575b6120d3575f546001600160a01b031680612bfa575b50505050565b612c0c906001600160a01b03166121e1565b803b1561001d57612c37935f936040519586948593849363657711f560e11b85523360048601612a0a565b03915afa801561088a57612c4e575b808080612bf4565b806108845f612c5c936110ed565b5f612c46565b506001600160a01b03821615612bdf565b906001600160601b03612ca083805f52673ec412a9852d173d60c11b601c5260205f208101015460a01c90565b16611b1a575f828152673ec412a9852d173d60c11b601c5260209081902083018301547ff27b6ce5b2f5e68ddb2fd95a8a909d4ecf1daaac270935fff052feacb24f18429391926001600160a01b039091169082908280612d375750612d069250612d60565b805f52673ec412a9852d173d60c11b601c52815f208101810180548060a01c60011860a01b189055604051908152a1565b6001600160a01b03821603612d4f575b505050612d06565b612d5892612496565b5f8181612d47565b612d6a8282612af4565b60018060a01b0316815f52673ec412a9852d173d60c11b601c5260205f208201820180548060601b612de05782179055805f52601c600c2060018154019063ffffffff8216830215612dcb57555f5f516020612dee5f395f51905f528180a4565b67ea553b3401336cea831560021b526004601cfd5b63c991cbb15f526004601cfdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220d1666f4a0047c8a0657a5e3a77f071706d028bd324060a66169220812511297a64736f6c634300081c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000087c6dbadc090d39bc10316f20658
-----Decoded View---------------
Arg [0] : _beacon (address): 0x00000000000087c6dbaDC090d39BC10316f20658
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000087c6dbadc090d39bc10316f20658
Deployed Bytecode Sourcemap
145:381:6:-:0;;;;;;;;;-1:-1:-1;145:381:6;;;3901:54:5;;:::i;:::-;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;145:381:6;;;;;;2463:48:5;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;-1:-1:-1;;;;;;145:381:6;;;;;;;;;;-1:-1:-1;;;12286:41:5;;;:82;;;;145:381:6;12286:136:5;;;;145:381:6;12286:173:5;;;;;145:381:6;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;12286:173:5;-1:-1:-1;;;12426:33:5;;-1:-1:-1;12286:173:5;;;:136;2894:182:2;;;;;;;;;;;;12286:136:5;;;;:82;15006:232:3;;;;;;;;;;;;;;;;;12286:82:5;;;145:381:6;-1:-1:-1;;;;;145:381:6;;;;;:::o;:::-;;;;;;;:::i;:::-;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;145:381:6;;;;;;:::o;:::-;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;145:381:6;;;;;;4770:437:1;;;;-1:-1:-1;4770:437:1;145:381:6;17180:7:1;;4770:437;;;;;;;;10717:12:5;;;:::i;4770:437:1:-;;-1:-1:-1;4770:437:1;145:381:6;4770:437:1;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;:::o;:::-;;;;;;-1:-1:-1;;145:381:6;;;;;;;13239:5:5;145:381:6;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;13239:5:5;145:381:6;;;;;;;-1:-1:-1;145:381:6;;;;;;;-1:-1:-1;145:381:6;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;;;;;;;;;;;;-1:-1:-1;145:381:6;;-1:-1:-1;145:381:6;;;;;;;;-1:-1:-1;;145:381:6;;;;;;-1:-1:-1;8230:395:3;;;-1:-1:-1;;;8230:395:3;;145:381:6;8230:395:3;;;;;;;;;;;;;;;145:381:6;;-1:-1:-1;;;;;145:381:6;;;;;;;;8230:395:3;;-1:-1:-1;8230:395:3;145:381:6;8230:395:3;;145:381:6;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;-1:-1:-1;29125:1350:3;;;-1:-1:-1;;;9013:10:3;29125:1350;;;145:381:6;29125:1350:3;;;;;;;;145:381:6;;-1:-1:-1;;;;;29125:1350:3;;;;;;;;;;9013:10;;;;29125:1350;9013:10;29125:1350;;;;;145:381:6;29125:1350:3;;;;-1:-1:-1;29125:1350:3;;145:381:6;29125:1350:3;;;;-1:-1:-1;29125:1350:3;;;;;;;;;;;;;;-1:-1:-1;29125:1350:3;145:381:6;29125:1350:3;;145:381:6;;;;;;-1:-1:-1;;145:381:6;;;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;145:381:6;;;;;;:::o;:::-;;;-1:-1:-1;;145:381:6;;;;;;:::i;:::-;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;:::i;:::-;8108:13:5;-1:-1:-1;8123:19:5;;;;;;-1:-1:-1;145:381:6;;-1:-1:-1;;;8531:60:5;;8585:4;145:381:6;8531:60:5;;145:381:6;-1:-1:-1;;;;;8539:23:5;145:381:6;;;;;;;;;8531:60:5;;;;;;;-1:-1:-1;8531:60:5;;;8103:386;8601:170;;;;;;-1:-1:-1;145:381:6;8601:170:5;145:381:6;;;;;;;;;;;;;8601:170:5;;145:381:6;8601:170:5;;;:::i;:::-;;8646:9;;8601:170;;;;;;;;;145:381:6;8601:170:5;;;-1:-1:-1;8601:170:5;;;:::i;:::-;;;:::i;:::-;;:::i;8531:60::-;;;;;145:381:6;8531:60:5;145:381:6;8531:60:5;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;8144:3;8167:44;8168:43;8199:11;;;;;:::i;:::-;145:381:6;8187:10:5;8168:43;:::i;:::-;8167:44;;145:381:6;8167:44:5;8163:78;;8259:20;8267:11;;;;;:::i;:::-;145:381:6;8259:20:5;:::i;:::-;8255:46;;145:381:6;;8320:18:5;145:381:6;8321:17:5;145:381:6;;;;;;;;8320:18:5;8316:75;;8144:3;8432:6;8419:11;;;;;:::i;:::-;145:381:6;;18808:307:3;;;-1:-1:-1;;;18808:307:3;;;;;;;;;;-1:-1:-1;;;;;;18808:307:3;;;;;18689:432;8432:6:5;8459:19;;8466:11;;;;;:::i;:::-;145:381:6;;;;;;;;;;;;;;8459:19:5;;;;145:381:6;8108:13:5;;8316:75;24033:2:3;8364:11:5;;;;;:::i;:::-;145:381:6;24033:2:3;:::i;:::-;8316:75:5;;8255:46;8288:13;;;-1:-1:-1;8288:13:5;145:381:6;-1:-1:-1;8288:13:5;8163:78;8220:21;;;-1:-1:-1;8220:21:5;145:381:6;-1:-1:-1;8220:21:5;145:381:6;;;;;;-1:-1:-1;;145:381:6;;;;;;;13430:7:1;145:381:6;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;-1:-1:-1;;;145:381:6;;14880:4:5;145:381:6;;;;;;;;-1:-1:-1;;145:381:6;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;15083:60:5;;15137:4;145:381:6;15083:60:5;;145:381:6;6317:24:5;;145:381:6;;-1:-1:-1;;;;;15091:23:5;145:381:6;;6317:24:5;145:381:6;;;;;15083:60:5;;;;;;-1:-1:-1;15160:149:5;15083:60;145:381:6;15083:60:5;;;;;145:381:6;-1:-1:-1;145:381:6;;-1:-1:-1;;;15160:149:5;;145:381:6;;;;;;;15271:10:5;;145:381:6;15160:149:5;;;:::i;:::-;;15205:9;;15160:149;;;;;;;145:381:6;15160:149:5;-1:-1:-1;15160:149:5;;;145:381:6;15153:156:5;145:381:6;;;;;;15160:149:5;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;15083:60;;;;;;;;;;;;;;:::i;:::-;;;;145:381:6;;;-1:-1:-1;;145:381:6;;;;4572:5:1;145:381:6;;10375:10:1;4572:5;:::i;145:381:6:-;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;12478:70:0;;;:::i;:::-;3246:831:1;;;-1:-1:-1;3246:831:1;;;;;;;;;;;;;;;;-1:-1:-1;3246:831:1;;145:381:6;;;;;;;-1:-1:-1;;145:381:6;;;;;11444:13:1;145:381:6;;;;;:::i;:::-;;;11444:13:1;;;10859:219;;;;;;;;;10731:353;;11444:13;:21;:30;145:381:6;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;4770:437:1;;;;145:381:6;4770:437:1;13430:7;4770:437;;;;;;;;9076:24:5;145:381:6;;-1:-1:-1;;;;145:381:6;-1:-1:-1;;;145:381:6;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;-1:-1:-1;145:381:6;2976:64:5;145:381:6;;;;;;;;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;:::i;:::-;;;:::i;:::-;;;-1:-1:-1;;145:381:6;;;;9239:383:0;;;;145:381:6;9239:383:0;7972:9;9132:15;145:381:6;9239:383:0;;;;;;145:381:6;9239:383:0;;145:381:6;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;-1:-1:-1;3447:784:2;;145:381:6;3447:784:2;145:381:6;-1:-1:-1;3447:784:2;;;;;;;;;;;145:381:6;;3447:784:2;;;;;;;;;;;;;;;;;2531:5;145:381:6;;3447:784:2;;;;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;3447:784:2;-1:-1:-1;3447:784:2;;;;;;;-1:-1:-1;3447:784:2;;145:381:6;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;;;:::i;:::-;10859:219:1;;;;;;;;;10731:353;;145:381:6;;;;;;;;;;;:::i;:::-;13825:2:3;;;;;;;:::i;:::-;38334:89;;13838:58;;145:381:6;13838:58:3;13856:40;145:381:6;;;;;;;;:::i;:::-;;;;13856:40:3;:::i;145:381:6:-;;;;;;-1:-1:-1;;145:381:6;;;;;;18300:179:3;;;;-1:-1:-1;;;18300:179:3;;;;;;;;;;;;11061:16:5;;24033:2:3;;;:::i;11057:118:5:-;24475:2:3;24414:11;;;;:::i;:::-;24475:2;:::i;:::-;-1:-1:-1;24531:1870:3;;;-1:-1:-1;;;11144:10:5;24531:1870:3;;;145:381:6;24531:1870:3;;;;;;;;;-1:-1:-1;;;;;24531:1870:3;;;;;;;;-1:-1:-1;24531:1870:3;;;;;;;11144:10:5;;24531:1870:3;11144:10:5;;24531:1870:3;;11144:10:5;24531:1870:3;;;;;11057:118:5;24531:1870:3;-1:-1:-1;24531:1870:3;;;;;11057:118:5;24531:1870:3;;;;;;;3447:784:2;;24531:1870:3;;;;;-1:-1:-1;;;;;;;;;;;24531:1870:3;;;145:381:6;24531:1870:3;;;;;;;;;;;;;;;;;;;145:381:6;;;-1:-1:-1;;145:381:6;;;;4572:5:1;145:381:6;;;;;:::i;:::-;;;12478:70:0;;;:::i;:::-;4572:5:1;:::i;145:381:6:-;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;;:::i;:::-;11247:13:1;145:381:6;;11247:13:1;10859:219;;;;;;;;;10731:353;;11247:13;:21;:26;;145:381:6;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;14880:7:1;145:381:6;;;;;;-1:-1:-1;;145:381:6;;;;9831:339:0;;;;145:381:6;9831:339:0;145:381:6;9831:339:0;;;;;;145:381:6;9831:339:0;;145:381:6;;;;;;;-1:-1:-1;;145:381:6;;;;;;-1:-1:-1;;;145:381:6;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;3502:31:5;145:381:6;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;145:381:6;;;;12478:70:0;;:::i;:::-;145:381:6;4770:437:1;6299::0;;;;;;-1:-1:-1;;;;;6299:437:0;145:381:6;;;;;;;-1:-1:-1;;145:381:6;;;;;;3620:29:5;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;:::o;:::-;;:::i;:::-;-1:-1:-1;;;;;145:381:6;;;;;;-1:-1:-1;;145:381:6;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;145:381:6;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;:::i;:::-;;;;:::i;:::-;;;:::i;:::-;;;;;;-1:-1:-1;;145:381:6;;;;-1:-1:-1;;11523:61:0;145:381:6;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;145:381:6;;;;;;;-1:-1:-1;145:381:6;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;14088:36:5;145:381:6;;;;;:::i;:::-;;;;;14088:36:5;;:::i;:::-;145:381:6;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;;;;;;;;;9797:590:3;;;;;;;-1:-1:-1;9797:590:3;;;;;;-1:-1:-1;9797:590:3;145:381:6;;;;;9797:590:3;;;145:381:6;-1:-1:-1;9797:590:3;145:381:6;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;4770:437:1;;;;-1:-1:-1;4770:437:1;-1:-1:-1;;;145:381:6;4770:437:1;;;;;;;-1:-1:-1;145:381:6;;-1:-1:-1;;;;;145:381:6;;;-1:-1:-1;;;;;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;10297:58:5;;;145:381:6;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;145:381:6;;;;;-1:-1:-1;;;;;17705:22:5;145:381:6;;18300:179:3;;;8230:395;;;18300:179;;;;;;;;;;;18166:319;;17705:22:5;145:381:6;17705:32:5;145:381:6;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;145:381:6;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;11909:5:1;;:::i;:::-;145:381:6;;-1:-1:-1;;;;;145:381:6;;;;;;;9372:19:5;145:381:6;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;3447:784:2;;;145:381:6;;;;;;;;;;9372:19:5;145:381:6;;;;;;;;-1:-1:-1;;145:381:6;;;;9407:41:5;;145:381:6;9407:41:5;145:381:6;;;;;-1:-1:-1;145:381:6;;;;;9372:19:5;145:381:6;;-1:-1:-1;;145:381:6;;;;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;;9372:19:5;145:381:6;;;;;;3447:784:2;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;9325:196:3;;;;;-1:-1:-1;9325:196:3;145:381:6;9325:196:3;;;;145:381:6;;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;-1:-1:-1;;;145:381:6;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;12478:70:0;;:::i;:::-;10506:526;;;;-1:-1:-1;10506:526:0;145:381:6;10506:526:0;;;;;;;;;-1:-1:-1;11051:12:0;10506:526;;11051:12;:::i;10506:526::-;;-1:-1:-1;10506:526:0;145:381:6;10506:526:0;;145:381:6;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;12478:70:0;;:::i;:::-;8479:183;;;;;;8681:8;;;:::i;8479:183::-;;-1:-1:-1;8479:183:0;145:381:6;8479:183:0;;145:381:6;;;-1:-1:-1;;145:381:6;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;145:381:6;;;;;;;7186:39:5;;;;:::i;:::-;-1:-1:-1;145:381:6;;;7236:9:5;145:381:6;;;;;;;-1:-1:-1;;;;;;145:381:6;7254:10:5;145:381:6;;;7236:28:5;145:381:6;;;;;;;-1:-1:-1;;145:381:6;;;;9822:41:5;145:381:6;;;;;;:::i;:::-;11909:5:1;;:::i;:::-;9717:36:5;145:381:6;;-1:-1:-1;;;;;;145:381:6;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;9769:38:5;-1:-1:-1;;9769:38:5;-1:-1:-1;145:381:6;;-1:-1:-1;;145:381:6;;;;9822:41:5;145:381:6;;;;;;;-1:-1:-1;;145:381:6;;;;;;;;;:::i;:::-;11885:237:0;;;-1:-1:-1;11885:237:0;145:381:6;11885:237:0;;;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;145:381:6;12986:13:5;145:381:6;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;12986:13:5;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;:::i;3172:1:5:-;;;;;;;;;;;;;:::i;:::-;145:381:6;;3172:1:5;;;;;;;;145:381:6;;;3172:1:5;;-1:-1:-1;;;;;3172:1:5;;;;145:381:6;3172:1:5;;;145:381:6;;;;;3172:1:5;;;;:::o;:::-;;;;-1:-1:-1;;;;;3172:1:5;;;;;;145:381:6;3172:1:5;;145:381:6;3172:1:5;;145:381:6;;;;;;3172:1:5;;;145:381:6;3172:1:5;;;;;;;;;;:::i;:::-;-1:-1:-1;;145:381:6;;;;;;;3172:1:5;;;145:381:6;;;3172:1:5;;;145:381:6;;3172:1:5;;;:::o;5567:367::-;;;5678:10;5692:23;-1:-1:-1;;;;;145:381:6;5678:37:5;145:381:6;;3214:1:5;-1:-1:-1;;;;;5735:22:5;;18300:179:3;;;8230:395;;;18300:179;;;;;;;;;;;18166:319;;5735:22:5;145:381:6;5735:34:5;5731:63;;5841:7;;;:::i;5731:63::-;5778:16;;;;;;;;5674:254;10872:2:3;;;;;;;:::i;:::-;10928:2657;;;;-1:-1:-1;;;5678:10:5;10928:2657:3;;;;;;;;;;;;-1:-1:-1;;;;;10928:2657:3;;;;;;;;;;;;;;;;;;;;;;;;;;;5678:10:5;;10928:2657:3;5678:10:5;;10928:2657:3;;;;;5674:254:5;10928:2657:3;;5674:254:5;10928:2657:3;;;;;;;;;;3447:784:2;;10928:2657:3;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10928:2657:3;;;5567:367:5:o;10928:2657:3:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6957:332;16167:187;;;;-1:-1:-1;;;16167:187:3;;;;;;;;;-1:-1:-1;;;;;16167:187:3;7115:168;;;;;6957:332::o;7433:533::-;7565:395;;;;8230;;;7565;;;;;;;;;;7433:533;:::o;7565:395::-;;;;;;;145:381:6;;;;;;;;:::o;:::-;9372:19:5;-1:-1:-1;145:381:6;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;145:381:6;;;;;;;;;-1:-1:-1;145:381:6;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;145:381:6;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;145:381:6;;;;;;;;;-1:-1:-1;145:381:6;;;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;4906:23:5;145:381:6;;:::i;:::-;4906:23:5;145:381:6;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;3447:784:2;;;145:381:6;;;;;;;;;;4906:23:5;145:381:6;:::o;:::-;4906:23:5;145:381:6;;-1:-1:-1;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;4906:23:5;145:381:6;:::o;:::-;;;3447:784:2;;145:381:6;;4906:23:5;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;4939:27:5;145:381:6;;:::i;:::-;4939:27:5;145:381:6;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;3447:784:2;;;145:381:6;;;;;;;;;;4939:27:5;145:381:6;:::o;:::-;4939:27:5;145:381:6;;-1:-1:-1;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;4939:27:5;145:381:6;:::o;:::-;;;3447:784:2;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4495:679:5;;;;;;;;;145:381:6;;-1:-1:-1;;;;;145:381:6;;;;;;;4867:29:5;145:381:6;;:::i;:::-;;;;;;;;;;;5064:38:5;145:381:6;;;;;;;4976:36:5;145:381:6;5146:20:5;145:381:6;;;;;;;;;;;3447:784:2;;;145:381:6;;;;;;;;;;4867:29:5;145:381:6;;:::i;:::-;;:::i;:::-;;;;;;;-1:-1:-1;;;;;145:381:6;;4976:36:5;145:381:6;;;4976:36:5;145:381:6;;4976:36:5;5039:13;;;:::i;:::-;145:381:6;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;5064:38:5;5146:20;:::i;145:381:6:-;9372:19:5;145:381:6;;-1:-1:-1;;145:381:6;;;;;;;;;;;;;;;;5146:20:5;145:381:6;;4976:36:5;145:381:6;;;;;;5064:38:5;145:381:6;;;;;;;;;;;;;4867:29:5;145:381:6;;:::i;:::-;;;3447:784:2;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11307:346:5;11391:23;-1:-1:-1;;;;;145:381:6;11377:10:5;:37;11373:67;;145:381:6;;;;;;;;;;;-1:-1:-1;;;;;145:381:6;11505:28:5;;11501:41;;145:381:6;11559:15:5;;145:381:6;;11476:9:5;145:381:6;;;;;;;11559:15:5;145:381:6;;-1:-1:-1;;;;;;145:381:6;;;;;11585:61:5;;;;;145:381:6;;-1:-1:-1;;;11585:61:5;;;;;145:381:6;;;;-1:-1:-1;;145:381:6;;;;;;-1:-1:-1;;11585:61:5;;;;;;;;11307:346;:::o;11585:61::-;;;11531:1;11585:61;;;:::i;11501:41::-;11535:7;;:::o;11373:67::-;11423:17;;;;;;;;14406:249:3;;;14575:2;;;;;:::i;:::-;38334:89;;14588:60;;14406:249;;;;;;:::o;14588:60::-;14606:42;145:381:6;;;;;;:::i;:::-;14606:42:3;;:::i;:::-;14588:60;;;;;;;145:381:6;;;;;;;;;;;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;145:381:6;;;;;;;;;;;;;;:::o;12699:332:5:-;15702:194:3;;;;-1:-1:-1;;;15702:194:3;;;;;;;;;;;;;12792:44:5;;12851:16;145:381:6;-1:-1:-1;;;;;145:381:6;;12847:105:5;;13001:22;;12969:55;13001:22;;:::i;:::-;145:381:6;;:::i;:::-;12969:55:5;:::i;12847:105::-;12904:37;;12879:1;;12904:33;;-1:-1:-1;;;;;145:381:6;12904:24:5;-1:-1:-1;;;;;145:381:6;;;12904:33:5;145:381:6;;;;;;;;;;12904:37:5;;;;;145:381:6;;;;;;;;12904:37:5;;;;;;;;;;12879:1;12904:37;;;12897:44;;:::o;12904:37::-;;;;;;12879:1;12904:37;;;;;;:::i;:::-;;;;;:::i;12792:44::-;12817:19;;;;;;;;4659:554:1;4770:437;;;;;;14880:7;4770:437;;;;;;;;4659:554::o;4464:715:2:-;;-1:-1:-1;;;;;4653:520:2;;2531:5;4653:520;;;;;;;;;;;;;4464:715::o;4653:520::-;;-1:-1:-1;4653:520:2;;;;;;-1:-1:-1;4653:520:2;;;;26907:1160:3;27097:964;;;;-1:-1:-1;;;;;27097:964:3;;;-1:-1:-1;;;27097:964:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26907:1160;;;:::o;27097:964::-;;;;;;;;;;26907:1160;;:::o;27097:964::-;;;;;;-1:-1:-1;11535:7:5:o;17625:119::-;18300:179:3;;;;-1:-1:-1;;;18300:179:3;;;;;;;;;;;17705:32:5;;17625:119::o;145:381:6:-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;145:381:6;;;;;;;;;;;;;-1:-1:-1;;;;;145:381:6;3172:1:5;;;145:381:6;;;;;;;;;;;;;;;;;;;;;3172:1:5;;145:381:6;;;;;;;;14897:419:5;145:381:6;;-1:-1:-1;;;15083:60:5;;15137:4;15083:60;;;145:381:6;14897:419:5;;;-1:-1:-1;;;;;15091:23:5;145:381:6;;;14897:419:5;15083:60;145:381:6;;;;15083:60:5;;;;;;;;;15160:149;15083:60;-1:-1:-1;15083:60:5;;;-1:-1:-1;145:381:6;;-1:-1:-1;;;15160:149:5;;145:381:6;;;;;;;15271:10:5;;15083:60;15160:149;;;:::i;:::-;;15205:9;;15160:149;;;;;;;;-1:-1:-1;15160:149:5;;;15153:156;14897:419;:::o;15160:149::-;;;;15083:60;15160:149;15083:60;15160:149;;;;;;;:::i;7292:355:0:-;-1:-1:-1;;7390:251:0;;;;;7292:355::o;32278:3007:3:-;32405:2;;;;;:::i;:::-;145:381:6;32461:2775:3;;;-1:-1:-1;;;32461:2775:3;;;;;;;;;;;-1:-1:-1;;;;;32461:2775:3;;;;;;;;;;;;;;;;;;;;145:381:6;32461:2775:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;3447:784:2;;32461:2775:3;;;;;;145:381:6;32461:2775:3;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;145:381:6;32461:2775:3;;32278:3007::o;38588:1370::-;;38750:1202;;38588:1370;;38750:1202;;;;;;;;;;;;;145:381:6;;;;;38750:1202:3;;;;;;;;;;;;;;;;;;;;;;;;;;38588:1370;38750:1202;;;;;;;;;;;;;;38588:1370;38750:1202;-1:-1:-1;;;38750:1202:3;;;38588:1370::o;38750:1202::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24332:2127;24475:2;24414:11;;;;:::i;24475:2::-;145:381:6;24531:1870:3;;;-1:-1:-1;;;24531:1870:3;;;;;;;;;;;;-1:-1:-1;;;;;24531:1870:3;;;;;;;;145:381:6;24531:1870:3;;;;;;;;;;;;;;24332:2127;24531:1870;145:381:6;24531:1870:3;;;;;24332:2127;24531:1870;;;;;;;3447:784:2;;24531:1870:3;;;;;-1:-1:-1;;;;;;;;;;;24531:1870:3;;;24332:2127::o;24531:1870::-;;;;;;;;;;;;;;;;;;;6145:1089:0;145:381:6;;;;;6299:437:0;;4770::1;6299::0;;;;;;;;;;;-1:-1:-1;;6299:437:0;6145:1089::o;4883:1190::-;-1:-1:-1;;5044:589:0;;;-1:-1:-1;;;;;5044:589:0;;;;;;;-1:-1:-1;;5044:589:0;;;;;;4883:1190::o;5044:589::-;;;;;;;145:381:6;-1:-1:-1;;;;;145:381:6;;;;;;;;;:::o;:::-;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;145:381:6;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;;;;;;;;:::o;16187:900:5:-;;;;16333:16;;;:::i;:::-;16380:1;16419:29;;;;:::i;:::-;16464:17;16483:9;;;;;;;16933:25;;;;;;;:::i;:::-;16973:13;16380:1;16988:14;;;;;;-1:-1:-1;17067:13:5;;-1:-1:-1;;16187:900:5:o;17004:3::-;17035:11;;145:381:6;17035:11:5;;;:::i;:::-;145:381:6;17023:23:5;;;;:::i;:::-;145:381:6;;16973:13:5;;16494:3;16167:187:3;;;;-1:-1:-1;;;16167:187:3;;;;;;;;;;-1:-1:-1;;;;;145:381:6;;;16167:187:3;;16517:20:5;16513:272;;16494:3;;;;:::i;:::-;16464:17;;16513:272;16557:24;;;;145:381:6;16557:24:5;;;:::i;:::-;145:381:6;;16685:28:5;;;;16513:272;16681:90;16737:15;;;;;:::o;3513:1560:4:-;;3644:1423;;;;;;;;;;;;;;;;;-1:-1:-1;;3644:1423:4;;;;;;;;;;;;;;;;;;;;;;;;;;;145:381:6;;;3644:1423:4;;;;3513:1560::o;38748:1214::-;38924:1032;;;;;;38748:1214;38924:1032;;;;;-1:-1:-1;;38924:1032:4;;;;;;;;;;-1:-1:-1;;38924:1032:4;;;;;;;;;;-1:-1:-1;;38924:1032:4;;;;;;;;;-1:-1:-1;;38924:1032:4;;;;;;;;;;-1:-1:-1;;38924:1032:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;38748:1214::o;145:381:6:-;;;;;;;;;18731:2:5;145:381:6;;;;;;;:::o;:::-;18720:4:5;145:381:6;;;18720:4:5;145:381:6;;;:::o;18059:783:5:-;18140:4;17985:62;145:381:6;;18181:10:5;18167:24;;18181:10;;-1:-1:-1;18335:19:5;18349:4;17985:62;18326:4;17985:62;-1:-1:-1;;;;;145:381:6;18335:19:5;:::i;18163:673::-;18390:10;18376:24;18390:10;;18434:23;-1:-1:-1;;;;;145:381:6;18420:10:5;:37;18416:67;;18537:4;17985:62;18608:4;17985:62;-1:-1:-1;;;;;145:381:6;18140:4:5;18650:18;;;;;;18372:464;;;18059:783::o;18670:3::-;18727:6;18736:11;18727:6;18720:13;18727:6;145:381:6;18727:6:5;;:::i;:::-;18720:13;:::i;:::-;17985:62;18736:11;:::i;:::-;145:381:6;18635:13:5;;18372:464;18800:25;;;18140:4;18800:25;;18140:4;18800:25;3116:967:1;3246:831;;;4572:5;3246:831;;;;;;;;;;;;;;;;;;;4572:5;3246:831;;3116:967::o;145:381:6:-;-1:-1:-1;;;;;145:381:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;17170:449:5:-;17294:23;-1:-1:-1;;;;;145:381:6;17280:10:5;:37;17276:337;;17170:449;;:::o;17276:337::-;17337:16;;;:::i;:::-;:38;;;;17276:337;17333:101;;145:381:6;;-1:-1:-1;;;;;145:381:6;;17448:155:5;;17276:337;17170:449;;:::o;17448:155::-;17503:54;;-1:-1:-1;;;;;145:381:6;17503:37:5;145:381:6;17503:54:5;:85;;;;;;145:381:6;;-1:-1:-1;;;17503:85:5;;145:381:6;;;;;;;;;17503:85:5;;145:381:6;;17280:10:5;17503:85;;;;:::i;:::-;;;;;;;;;;;17170:449;:::o;17337:38::-;-1:-1:-1;;;;;;145:381:6;;17357:18:5;17337:38;;17170:449;17294:23;-1:-1:-1;;;;;145:381:6;17280:10:5;:37;17276:337;;17170:449;;:::o;17276:337::-;17337:16;;;:::i;:::-;:38;;;;17276:337;17333:101;;145:381:6;;-1:-1:-1;;;;;145:381:6;;17448:155:5;;17276:337;17170:449;;:::o;17448:155::-;17503:54;;-1:-1:-1;;;;;145:381:6;17503:37:5;145:381:6;17503:54:5;:85;;;;;;145:381:6;;-1:-1:-1;;;17503:85:5;;145:381:6;;;;;;;;;17503:85:5;;145:381:6;17280:10:5;17503:85;;;;:::i;17337:38::-;;17357:18;17337:38;;17170:449;;;17294:23;-1:-1:-1;;;;;145:381:6;17280:10:5;:37;17276:337;;17170:449;;;:::o;17276:337::-;17337:16;;;:::i;:::-;:38;;;;17276:337;17333:101;;17452:17;145:381:6;-1:-1:-1;;;;;145:381:6;;17448:155:5;;17276:337;;17170:449;;;:::o;17448:155::-;17503:54;;-1:-1:-1;;;;;145:381:6;17503:37:5;145:381:6;17503:54:5;:85;;;;;;145:381:6;17452:17:5;145:381:6;;;;;;;;;;;;;17503:85:5;;17280:10;17503:85;;;;:::i;:::-;;;;;;;;;;;17448:155;;;;;;17503:85;;;17452:17;17503:85;;;:::i;:::-;;;;17337:38;-1:-1:-1;;;;;;145:381:6;;17357:18:5;17337:38;;15594:587;;-1:-1:-1;;;;;17705:22:5;;18300:179:3;;;8230:395;;;18300:179;;;;;;;;;;;18166:319;;17705:22:5;145:381:6;15677:16:5;;16167:187:3;;;;-1:-1:-1;;;16167:187:3;;145:381:6;16167:187:3;;;;;;;;;16093:17:5;;145:381:6;;-1:-1:-1;;;;;16167:187:3;;;;;;;;15831:19:5;;15889:7;;;;;:::i;:::-;18808:307:3;;;8230:395;;;18808:307;;;;;;;;;;;;;;145:381:6;18808:307:3;;;;;;145:381:6;;;;;16093:17:5;15594:587::o;15827:200::-;-1:-1:-1;;;;;145:381:6;;15922:20:5;15918:109;;15827:200;;;;;;15918:109;16004:7;;;:::i;:::-;15918:109;;;;;19609:1653:3;19712:2;;;;:::i;:::-;145:381:6;;;;;19768:1439:3;;19704:1;19768:1439;8230:395;;;19768:1439;;;19704:1;19768:1439;;;;;;;;;;;;;;;;;19704:1;19768:1439;;;;;;;;;;;;;;;;;;19704:1;-1:-1:-1;;;;;;;;;;;19768:1439:3;;;19609:1653::o;19768:1439::-;;;;;;;;;;;;19704:1;19768:1439;;;
Swarm Source
ipfs://d1666f4a0047c8a0657a5e3a77f071706d028bd324060a66169220812511297a
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.