ETH Price: $1,844.56 (+1.56%)

Token

UNIVERSE (UNIVERSE)
 

Overview

Max Total Supply

10,000,000,000 UNIVERSE

Holders

109 (0.00%)

Transfers

-
-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

UNIVERSE is a cultural and symbolic meme token exploring collective meaning, sovereignty, and consensus. Built around the idea that participation is the signal and meaning is the utility, it encourages creativity, contribution, and coordination in the Infinite Game.

# Exchange Pair Price  24H Volume % Volume
Source Code Verified Exact Match

Contract Name

UNIVERSE

Compiler Version
v0.8.24+commit.e11b9ed9
Optimization Enabled
No with 200 runs
Other Settings
default evmVersion
License
-NA-
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"CheckpointUnorderedInsertion","type":"error"},{"inputs":[],"name":"ECDSAInvalidSignature","type":"error"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"name":"ECDSAInvalidSignatureLength","type":"error"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"ECDSAInvalidSignatureS","type":"error"},{"inputs":[{"internalType":"uint256","name":"increasedSupply","type":"uint256"},{"internalType":"uint256","name":"cap","type":"uint256"}],"name":"ERC20ExceededSafeSupply","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"inputs":[{"internalType":"uint256","name":"deadline","type":"uint256"}],"name":"ERC2612ExpiredSignature","type":"error"},{"inputs":[{"internalType":"address","name":"signer","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"ERC2612InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"timepoint","type":"uint256"},{"internalType":"uint48","name":"clock","type":"uint48"}],"name":"ERC5805FutureLookup","type":"error"},{"inputs":[],"name":"ERC6372InconsistentClock","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"currentNonce","type":"uint256"}],"name":"InvalidAccountNonce","type":"error"},{"inputs":[],"name":"InvalidShortString","type":"error"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintDowncast","type":"error"},{"inputs":[{"internalType":"string","name":"str","type":"string"}],"name":"StringTooLong","type":"error"},{"inputs":[{"internalType":"uint256","name":"expiry","type":"uint256"}],"name":"VotesExpiredSignature","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"address","name":"fromDelegate","type":"address"},{"indexed":true,"internalType":"address","name":"toDelegate","type":"address"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousVotes","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newVotes","type":"uint256"}],"name":"DelegateVotesChanged","type":"event"},{"anonymous":false,"inputs":[],"name":"EIP712DomainChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"CLOCK_MODE","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint32","name":"pos","type":"uint32"}],"name":"checkpoints","outputs":[{"components":[{"internalType":"uint48","name":"_key","type":"uint48"},{"internalType":"uint208","name":"_value","type":"uint208"}],"internalType":"struct Checkpoints.Checkpoint208","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clock","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"name":"delegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"eip712Domain","outputs":[{"internalType":"bytes1","name":"fields","type":"bytes1"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256[]","name":"extensions","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"timepoint","type":"uint256"}],"name":"getPastTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"timepoint","type":"uint256"}],"name":"getPastVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"numCheckpoints","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
61016060405234801562000011575f80fd5b506040518060400160405280600881526020017f554e495645525345000000000000000000000000000000000000000000000000815250806040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600881526020017f554e4956455253450000000000000000000000000000000000000000000000008152506040518060400160405280600881526020017f554e4956455253450000000000000000000000000000000000000000000000008152508160039081620000fc91906200130a565b5080600490816200010e91906200130a565b505050620001276005836200020960201b90919060201c565b6101208181525050620001456006826200020960201b90919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a08181525050620001846200025e60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250505050506200020333620001d7620002ba60201b60201c565b600a620001e5919062001577565b6402540be400620001f79190620015c7565b620002c260201b60201c565b62001ad9565b5f6020835110156200022e5762000226836200034c60201b60201c565b905062000258565b826200024083620003b660201b60201c565b5f0190816200025091906200130a565b5060ff5f1b90505b92915050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e0516101005146306040516020016200029f9594939291906200167f565b60405160208183030381529060405280519060200120905090565b5f6012905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000335575f6040517fec442f050000000000000000000000000000000000000000000000000000000081526004016200032c9190620016da565b60405180910390fd5b620003485f8383620003bf60201b60201c565b5050565b5f80829050601f815111156200039b57826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016200039291906200177f565b60405180910390fd5b805181620003a990620017d0565b5f1c175f1b915050919050565b5f819050919050565b620003d2838383620003d760201b60201c565b505050565b620003ea838383620004a960201b60201c565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000491575f6200042f620006cd60201b60201c565b90505f62000442620006d660201b60201c565b9050808211156200048e5781816040517f1cb15d26000000000000000000000000000000000000000000000000000000008152600401620004859291906200183f565b60405180910390fd5b50505b620004a4838383620006f960201b60201c565b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620004fd578060025f828254620004f091906200186a565b92505081905550620005ce565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101562000589578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016200058093929190620018a4565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000617578060025f828254039250508190555062000661565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620006c09190620018df565b60405180910390a3505050565b5f600254905090565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff8016905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036200075f576200075c600a620007fd60201b62000d351762000750846200081460201b60201c565b6200088460201b60201c565b50505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620007c557620007c2600a620008d360201b62000d4a17620007b6846200081460201b60201c565b6200088460201b60201c565b50505b620007f8620007da84620008ea60201b60201c565b620007eb84620008ea60201b60201c565b836200094f60201b60201c565b505050565b5f81836200080c91906200191f565b905092915050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff80168211156200087c5760d0826040517f6dfcc65000000000000000000000000000000000000000000000000000000000815260040162000873929190620019b4565b60405180910390fd5b819050919050565b5f80620008c76200089a62000bf960201b60201c565b620008b6620008af8862000c0f60201b60201c565b868860201c565b8762000c7d60201b9092919060201c565b91509150935093915050565b5f8183620008e29190620019df565b905092915050565b5f60085f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156200098b57505f81115b1562000bf4575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161462000ac2575f8062000a3160095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20620008d360201b62000d4a1762000a25866200081460201b60201c565b6200088460201b60201c565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405162000ab79291906200183f565b60405180910390a250505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161462000bf3575f8062000b6260095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20620007fd60201b62000d351762000b56866200081460201b60201c565b6200088460201b60201c565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508373ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405162000be89291906200183f565b60405180910390a250505b5b505050565b5f62000c0a62000ca060201b60201c565b905090565b5f80825f018054905090505f811462000c735762000c44835f0160018362000c38919062001a33565b62000cb760201b60201c565b5f0160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1662000c75565b5f5b915050919050565b5f8062000c94855f01858562000cc960201b60201c565b91509150935093915050565b5f62000cb2436200104a60201b60201c565b905090565b5f825f528160205f2001905092915050565b5f805f858054905090505f81111562000f62575f62000cfd8760018462000cf1919062001a33565b62000cb760201b60201c565b6040518060400160405290815f82015f9054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020015f820160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff168152505090508565ffffffffffff16815f015165ffffffffffff16111562000de9576040517f2520601d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8565ffffffffffff16815f015165ffffffffffff160362000e77578462000e258860018562000e19919062001a33565b62000cb760201b60201c565b5f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555062000f50565b8660405180604001604052808865ffffffffffff1681526020018779ffffffffffffffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505060019003905f5260205f20015f909190919091505f820151815f015f6101000a81548165ffffffffffff021916908365ffffffffffff1602179055506020820151815f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505b80602001518593509350505062001042565b8560405180604001604052808765ffffffffffff1681526020018679ffffffffffffffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505060019003905f5260205f20015f909190919091505f820151815f015f6101000a81548165ffffffffffff021916908365ffffffffffff1602179055506020820151815f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505f8492509250505b935093915050565b5f65ffffffffffff80168211156200109e576030826040517f6dfcc6500000000000000000000000000000000000000000000000000000000081526004016200109592919062001aae565b60405180910390fd5b819050919050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200112257607f821691505b602082108103620011385762001137620010dd565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026200119c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200115f565b620011a886836200115f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620011f2620011ec620011e684620011c0565b620011c9565b620011c0565b9050919050565b5f819050919050565b6200120d83620011d2565b620012256200121c82620011f9565b8484546200116b565b825550505050565b5f90565b6200123b6200122d565b6200124881848462001202565b505050565b5b818110156200126f57620012635f8262001231565b6001810190506200124e565b5050565b601f821115620012be5762001288816200113e565b620012938462001150565b81016020851015620012a3578190505b620012bb620012b28562001150565b8301826200124d565b50505b505050565b5f82821c905092915050565b5f620012e05f1984600802620012c3565b1980831691505092915050565b5f620012fa8383620012cf565b9150826002028217905092915050565b6200131582620010a6565b67ffffffffffffffff811115620013315762001330620010b0565b5b6200133d82546200110a565b6200134a82828562001273565b5f60209050601f83116001811462001380575f84156200136b578287015190505b620013778582620012ed565b865550620013e6565b601f19841662001390866200113e565b5f5b82811015620013b95784890151825560018201915060208501945060208101905062001392565b86831015620013d95784890151620013d5601f891682620012cf565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620014785780860481111562001450576200144f620013ee565b5b6001851615620014605780820291505b808102905062001470856200141b565b945062001430565b94509492505050565b5f8262001492576001905062001564565b81620014a1575f905062001564565b8160018114620014ba5760028114620014c557620014fb565b600191505062001564565b60ff841115620014da57620014d9620013ee565b5b8360020a915084821115620014f457620014f3620013ee565b5b5062001564565b5060208310610133831016604e8410600b8410161715620015355782820a9050838111156200152f576200152e620013ee565b5b62001564565b62001544848484600162001427565b925090508184048111156200155e576200155d620013ee565b5b81810290505b9392505050565b5f60ff82169050919050565b5f6200158382620011c0565b915062001590836200156b565b9250620015bf7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462001481565b905092915050565b5f620015d382620011c0565b9150620015e083620011c0565b9250828202620015f081620011c0565b915082820484148315176200160a5762001609620013ee565b5b5092915050565b5f819050919050565b620016258162001611565b82525050565b6200163681620011c0565b82525050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62001667826200163c565b9050919050565b62001679816200165b565b82525050565b5f60a082019050620016945f8301886200161a565b620016a360208301876200161a565b620016b260408301866200161a565b620016c160608301856200162b565b620016d060808301846200166e565b9695505050505050565b5f602082019050620016ef5f8301846200166e565b92915050565b5f82825260208201905092915050565b5f5b838110156200172457808201518184015260208101905062001707565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6200174b82620010a6565b620017578185620016f5565b93506200176981856020860162001705565b62001774816200172f565b840191505092915050565b5f6020820190508181035f8301526200179981846200173f565b905092915050565b5f81519050919050565b5f819050602082019050919050565b5f620017c7825162001611565b80915050919050565b5f620017dc82620017a1565b82620017e884620017ab565b9050620017f581620017ba565b925060208210156200183857620018337fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026200115f565b831692505b5050919050565b5f604082019050620018545f8301856200162b565b6200186360208301846200162b565b9392505050565b5f6200187682620011c0565b91506200188383620011c0565b92508282019050808211156200189e576200189d620013ee565b5b92915050565b5f606082019050620018b95f8301866200166e565b620018c860208301856200162b565b620018d760408301846200162b565b949350505050565b5f602082019050620018f45f8301846200162b565b92915050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6200192b82620018fa565b91506200193883620018fa565b9250828201905079ffffffffffffffffffffffffffffffffffffffffffffffffffff8111156200196d576200196c620013ee565b5b92915050565b5f819050919050565b5f6200199c62001996620019908462001973565b620011c9565b6200156b565b9050919050565b620019ae816200197c565b82525050565b5f604082019050620019c95f830185620019a3565b620019d860208301846200162b565b9392505050565b5f620019eb82620018fa565b9150620019f883620018fa565b9250828203905079ffffffffffffffffffffffffffffffffffffffffffffffffffff81111562001a2d5762001a2c620013ee565b5b92915050565b5f62001a3f82620011c0565b915062001a4c83620011c0565b925082820390508181111562001a675762001a66620013ee565b5b92915050565b5f819050919050565b5f62001a9662001a9062001a8a8462001a6d565b620011c9565b6200156b565b9050919050565b62001aa88162001a76565b82525050565b5f60408201905062001ac35f83018562001a9d565b62001ad260208301846200162b565b9392505050565b60805160a05160c05160e05161010051610120516101405161370e62001b2b5f395f6112bf01525f61128401525f6116c701525f6116a601525f610efd01525f610f5301525f610f7c015261370e5ff3fe608060405234801561000f575f80fd5b506004361061014b575f3560e01c806370a08231116100c15780639ab24eb01161007a5780639ab24eb0146103e1578063a9059cbb14610411578063c3cda52014610441578063d505accf1461045d578063dd62ed3e14610479578063f1127ed8146104a95761014b565b806370a08231146102f15780637ecebe001461032157806384b0196e146103515780638e539e8c1461037557806391ddadf4146103a557806395d89b41146103c35761014b565b80633644e515116101135780633644e515146102095780633a46b1a8146102275780634bf5d7e914610257578063587cde1e146102755780635c19a95c146102a55780636fcfff45146102c15761014b565b806306fdde031461014f578063095ea7b31461016d57806318160ddd1461019d57806323b872dd146101bb578063313ce567146101eb575b5f80fd5b6101576104d9565b6040516101649190612a31565b60405180910390f35b61018760048036038101906101829190612ae2565b610569565b6040516101949190612b3a565b60405180910390f35b6101a561058b565b6040516101b29190612b62565b60405180910390f35b6101d560048036038101906101d09190612b7b565b610594565b6040516101e29190612b3a565b60405180910390f35b6101f36105c2565b6040516102009190612be6565b60405180910390f35b6102116105ca565b60405161021e9190612c17565b60405180910390f35b610241600480360381019061023c9190612ae2565b6105d8565b60405161024e9190612b62565b60405180910390f35b61025f6106ae565b60405161026c9190612a31565b60405180910390f35b61028f600480360381019061028a9190612c30565b610742565b60405161029c9190612c6a565b60405180910390f35b6102bf60048036038101906102ba9190612c30565b6107a7565b005b6102db60048036038101906102d69190612c30565b6107c0565b6040516102e89190612ca1565b60405180910390f35b61030b60048036038101906103069190612c30565b6107d1565b6040516103189190612b62565b60405180910390f35b61033b60048036038101906103369190612c30565b610816565b6040516103489190612b62565b60405180910390f35b610359610827565b60405161036c9796959493929190612dab565b60405180910390f35b61038f600480360381019061038a9190612e2d565b6108cc565b60405161039c9190612b62565b60405180910390f35b6103ad610966565b6040516103ba9190612e78565b60405180910390f35b6103cb610974565b6040516103d89190612a31565b60405180910390f35b6103fb60048036038101906103f69190612c30565b610a04565b6040516104089190612b62565b60405180910390f35b61042b60048036038101906104269190612ae2565b610a6d565b6040516104389190612b3a565b60405180910390f35b61045b60048036038101906104569190612ee5565b610a8f565b005b61047760048036038101906104729190612f6e565b610b54565b005b610493600480360381019061048e919061300b565b610c99565b6040516104a09190612b62565b60405180910390f35b6104c360048036038101906104be9190613073565b610d1b565b6040516104d09190613121565b60405180910390f35b6060600380546104e890613167565b80601f016020809104026020016040519081016040528092919081815260200182805461051490613167565b801561055f5780601f106105365761010080835404028352916020019161055f565b820191905f5260205f20905b81548152906001019060200180831161054257829003601f168201915b5050505050905090565b5f80610573610d5f565b9050610580818585610d66565b600191505092915050565b5f600254905090565b5f8061059e610d5f565b90506105ab858285610d78565b6105b6858585610e0a565b60019150509392505050565b5f6012905090565b5f6105d3610efa565b905090565b5f806105e2610966565b90508065ffffffffffff1683106106325782816040517fecd3f81e000000000000000000000000000000000000000000000000000000008152600401610629929190613197565b60405180910390fd5b61068961063e84610fb0565b60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2061100990919063ffffffff16565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff1691505092915050565b60606106b86110f6565b65ffffffffffff166106c8610966565b65ffffffffffff1614610707576040517f6ff0714000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040518060400160405280601d81526020017f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000815250905090565b5f60085f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f6107b0610d5f565b90506107bc8183611105565b5050565b5f6107ca82611215565b9050919050565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f6108208261126a565b9050919050565b5f6060805f805f606061083861127b565b6108406112b6565b46305f801b5f67ffffffffffffffff81111561085f5761085e6131be565b5b60405190808252806020026020018201604052801561088d5781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b5f806108d6610966565b90508065ffffffffffff1683106109265782816040517fecd3f81e00000000000000000000000000000000000000000000000000000000815260040161091d929190613197565b60405180910390fd5b61094261093284610fb0565b600a61100990919063ffffffff16565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915050919050565b5f61096f6110f6565b905090565b60606004805461098390613167565b80601f01602080910402602001604051908101604052809291908181526020018280546109af90613167565b80156109fa5780601f106109d1576101008083540402835291602001916109fa565b820191905f5260205f20905b8154815290600101906020018083116109dd57829003601f168201915b5050505050905090565b5f610a4a60095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206112f1565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff169050919050565b5f80610a77610d5f565b9050610a84818585610e0a565b600191505092915050565b83421115610ad457836040517f4683af0e000000000000000000000000000000000000000000000000000000008152600401610acb9190612b62565b60405180910390fd5b5f610b35610b2d7fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf898989604051602001610b1294939291906131eb565b60405160208183030381529060405280519060200120611353565b85858561136c565b9050610b41818761139a565b610b4b8188611105565b50505050505050565b83421115610b9957836040517f62791302000000000000000000000000000000000000000000000000000000008152600401610b909190612b62565b60405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610bc78c6113f1565b89604051602001610bdd9695949392919061322e565b6040516020818303038152906040528051906020012090505f610bff82611353565b90505f610c0e8287878761136c565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610c8257808a6040517f4b800e46000000000000000000000000000000000000000000000000000000008152600401610c7992919061328d565b60405180910390fd5b610c8d8a8a8a610d66565b50505050505050505050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610d2361296b565b610d2d8383611444565b905092915050565b5f8183610d4291906132e1565b905092915050565b5f8183610d57919061332e565b905092915050565b5f33905090565b610d7383838360016114a3565b505050565b5f610d838484610c99565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e045781811015610df5578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610dec9392919061337b565b60405180910390fd5b610e0384848484035f6114a3565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e7a575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610e719190612c6a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610eea575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610ee19190612c6a565b60405180910390fd5b610ef5838383611672565b505050565b5f7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015610f7557507f000000000000000000000000000000000000000000000000000000000000000046145b15610fa2577f00000000000000000000000000000000000000000000000000000000000000009050610fad565b610faa611682565b90505b90565b5f65ffffffffffff8016821115611001576030826040517f6dfcc650000000000000000000000000000000000000000000000000000000008152600401610ff89291906133f2565b60405180910390fd5b819050919050565b5f80835f018054905090505f80829050600583111561108a575f61102c84611717565b846110379190613419565b9050611045875f018261180d565b5f015f9054906101000a900465ffffffffffff1665ffffffffffff168665ffffffffffff16101561107857809150611088565b600181611085919061344c565b92505b505b5f611099875f0187858561181f565b90505f81146110e8576110ba875f016001836110b59190613419565b61180d565b5f0160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff166110ea565b5f5b94505050505092915050565b5f61110043610fb0565b905090565b5f61110f83610742565b90508160085f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f60405160405180910390a4611210818361120b86611894565b6118a5565b505050565b5f61126361125e60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20611b15565b611b24565b9050919050565b5f61127482611b7b565b9050919050565b60606112b160057f0000000000000000000000000000000000000000000000000000000000000000611bc190919063ffffffff16565b905090565b60606112ec60067f0000000000000000000000000000000000000000000000000000000000000000611bc190919063ffffffff16565b905090565b5f80825f018054905090505f81146113495761131b835f016001836113169190613419565b61180d565b5f0160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1661134b565b5f5b915050919050565b5f61136561135f610efa565b83611c6e565b9050919050565b5f805f8061137c88888888611cae565b92509250925061138c8282611d95565b829350505050949350505050565b5f6113a4836113f1565b90508082146113ec5782816040517f752d88c00000000000000000000000000000000000000000000000000000000081526004016113e392919061347f565b60405180910390fd5b505050565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190600101919050559050919050565b61144c61296b565b61149b8260095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20611ef790919063ffffffff16565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611513575f6040517fe602df0500000000000000000000000000000000000000000000000000000000815260040161150a9190612c6a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611583575f6040517f94280d6200000000000000000000000000000000000000000000000000000000815260040161157a9190612c6a565b60405180910390fd5b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550801561166c578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516116639190612b62565b60405180910390a35b50505050565b61167d838383611fc6565b505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000046306040516020016116fc9594939291906134a6565b60405160208183030381529060405280519060200120905090565b5f808203611727575f9050611808565b5f600161173384612074565b901c6001901b9050600181848161174d5761174c6134f7565b5b048201901c90506001818481611766576117656134f7565b5b048201901c9050600181848161177f5761177e6134f7565b5b048201901c90506001818481611798576117976134f7565b5b048201901c905060018184816117b1576117b06134f7565b5b048201901c905060018184816117ca576117c96134f7565b5b048201901c905060018184816117e3576117e26134f7565b5b048201901c9050611804818285816117fe576117fd6134f7565b5b0461214b565b9150505b919050565b5f825f528160205f2001905092915050565b5f5b81831015611889575f6118348484612163565b90508465ffffffffffff16611849878361180d565b5f015f9054906101000a900465ffffffffffff1665ffffffffffff16111561187357809250611883565b600181611880919061344c565b93505b50611821565b819050949350505050565b5f61189e826107d1565b9050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118e057505f81115b15611b10575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146119fa575f8061196b60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20610d4a61196686612188565b6121f5565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516119ef929190613524565b60405180910390a250505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611b0f575f80611a8060095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20610d35611a7b86612188565b6121f5565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508373ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051611b04929190613524565b60405180910390a250505b5b505050565b5f815f01805490509050919050565b5f63ffffffff8016821115611b73576020826040517f6dfcc650000000000000000000000000000000000000000000000000000000008152600401611b6a929190613584565b60405180910390fd5b819050919050565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b606060ff5f1b8314611bdd57611bd683612234565b9050611c68565b818054611be990613167565b80601f0160208091040260200160405190810160405280929190818152602001828054611c1590613167565b8015611c605780601f10611c3757610100808354040283529160200191611c60565b820191905f5260205f20905b815481529060010190602001808311611c4357829003601f168201915b505050505090505b92915050565b5f6040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b5f805f7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0845f1c1115611cea575f600385925092509250611d8b565b5f6001888888886040515f8152602001604052604051611d0d94939291906135ab565b6020604051602081039080840390855afa158015611d2d573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611d7e575f60015f801b93509350935050611d8b565b805f805f1b935093509350505b9450945094915050565b5f6003811115611da857611da76135ee565b5b826003811115611dbb57611dba6135ee565b5b0315611ef35760016003811115611dd557611dd46135ee565b5b826003811115611de857611de76135ee565b5b03611e1f576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60026003811115611e3357611e326135ee565b5b826003811115611e4657611e456135ee565b5b03611e8a57805f1c6040517ffce698f7000000000000000000000000000000000000000000000000000000008152600401611e819190612b62565b60405180910390fd5b600380811115611e9d57611e9c6135ee565b5b826003811115611eb057611eaf6135ee565b5b03611ef257806040517fd78bce0c000000000000000000000000000000000000000000000000000000008152600401611ee99190612c17565b60405180910390fd5b5b5050565b611eff61296b565b825f018263ffffffff1681548110611f1a57611f1961361b565b5b905f5260205f20016040518060400160405290815f82015f9054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020015f820160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1681525050905092915050565b611fd18383836122a6565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612064575f61200d61058b565b90505f6120186124bf565b9050808211156120615781816040517f1cb15d26000000000000000000000000000000000000000000000000000000008152600401612058929190613524565b60405180910390fd5b50505b61206f8383836124e2565b505050565b5f805f90505f608084901c111561209357608083901c92506080810190505b5f604084901c11156120ad57604083901c92506040810190505b5f602084901c11156120c757602083901c92506020810190505b5f601084901c11156120e157601083901c92506010810190505b5f600884901c11156120fb57600883901c92506008810190505b5f600484901c111561211557600483901c92506004810190505b5f600284901c111561212f57600283901c92506002810190505b5f600184901c1115612142576001810190505b80915050919050565b5f818310612159578161215b565b825b905092915050565b5f60028284186121739190613648565b828416612180919061344c565b905092915050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff80168211156121ed5760d0826040517f6dfcc6500000000000000000000000000000000000000000000000000000000081526004016121e49291906136b1565b60405180910390fd5b819050919050565b5f80612228612202610966565b61221861220e886112f1565b868863ffffffff16565b8761259a9092919063ffffffff16565b91509150935093915050565b60605f612240836125b5565b90505f602067ffffffffffffffff81111561225e5761225d6131be565b5b6040519080825280601f01601f1916602001820160405280156122905781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036122f6578060025f8282546122ea919061344c565b925050819055506123c4565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561237f578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016123769392919061337b565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361240b578060025f8282540392505081905550612455565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516124b29190612b62565b60405180910390a3505050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff8016905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361252e5761252b600a610d3561252684612188565b6121f5565b50505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361257a57612577600a610d4a61257284612188565b6121f5565b50505b61259561258684610742565b61258f84610742565b836118a5565b505050565b5f806125a9855f018585612603565b91509150935093915050565b5f8060ff835f1c169050601f8111156125fa576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b5f805f858054905090505f811115612883575f61262c876001846126279190613419565b61180d565b6040518060400160405290815f82015f9054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020015f820160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff168152505090508565ffffffffffff16815f015165ffffffffffff161115612717576040517f2520601d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8565ffffffffffff16815f015165ffffffffffff16036127995784612748886001856127439190613419565b61180d565b5f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff160217905550612872565b8660405180604001604052808865ffffffffffff1681526020018779ffffffffffffffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505060019003905f5260205f20015f909190919091505f820151815f015f6101000a81548165ffffffffffff021916908365ffffffffffff1602179055506020820151815f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505b806020015185935093505050612963565b8560405180604001604052808765ffffffffffff1681526020018679ffffffffffffffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505060019003905f5260205f20015f909190919091505f820151815f015f6101000a81548165ffffffffffff021916908365ffffffffffff1602179055506020820151815f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505f8492509250505b935093915050565b60405180604001604052805f65ffffffffffff1681526020015f79ffffffffffffffffffffffffffffffffffffffffffffffffffff1681525090565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156129de5780820151818401526020810190506129c3565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612a03826129a7565b612a0d81856129b1565b9350612a1d8185602086016129c1565b612a26816129e9565b840191505092915050565b5f6020820190508181035f830152612a4981846129f9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612a7e82612a55565b9050919050565b612a8e81612a74565b8114612a98575f80fd5b50565b5f81359050612aa981612a85565b92915050565b5f819050919050565b612ac181612aaf565b8114612acb575f80fd5b50565b5f81359050612adc81612ab8565b92915050565b5f8060408385031215612af857612af7612a51565b5b5f612b0585828601612a9b565b9250506020612b1685828601612ace565b9150509250929050565b5f8115159050919050565b612b3481612b20565b82525050565b5f602082019050612b4d5f830184612b2b565b92915050565b612b5c81612aaf565b82525050565b5f602082019050612b755f830184612b53565b92915050565b5f805f60608486031215612b9257612b91612a51565b5b5f612b9f86828701612a9b565b9350506020612bb086828701612a9b565b9250506040612bc186828701612ace565b9150509250925092565b5f60ff82169050919050565b612be081612bcb565b82525050565b5f602082019050612bf95f830184612bd7565b92915050565b5f819050919050565b612c1181612bff565b82525050565b5f602082019050612c2a5f830184612c08565b92915050565b5f60208284031215612c4557612c44612a51565b5b5f612c5284828501612a9b565b91505092915050565b612c6481612a74565b82525050565b5f602082019050612c7d5f830184612c5b565b92915050565b5f63ffffffff82169050919050565b612c9b81612c83565b82525050565b5f602082019050612cb45f830184612c92565b92915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b612cee81612cba565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612d2681612aaf565b82525050565b5f612d378383612d1d565b60208301905092915050565b5f602082019050919050565b5f612d5982612cf4565b612d638185612cfe565b9350612d6e83612d0e565b805f5b83811015612d9e578151612d858882612d2c565b9750612d9083612d43565b925050600181019050612d71565b5085935050505092915050565b5f60e082019050612dbe5f83018a612ce5565b8181036020830152612dd081896129f9565b90508181036040830152612de481886129f9565b9050612df36060830187612b53565b612e006080830186612c5b565b612e0d60a0830185612c08565b81810360c0830152612e1f8184612d4f565b905098975050505050505050565b5f60208284031215612e4257612e41612a51565b5b5f612e4f84828501612ace565b91505092915050565b5f65ffffffffffff82169050919050565b612e7281612e58565b82525050565b5f602082019050612e8b5f830184612e69565b92915050565b612e9a81612bcb565b8114612ea4575f80fd5b50565b5f81359050612eb581612e91565b92915050565b612ec481612bff565b8114612ece575f80fd5b50565b5f81359050612edf81612ebb565b92915050565b5f805f805f8060c08789031215612eff57612efe612a51565b5b5f612f0c89828a01612a9b565b9650506020612f1d89828a01612ace565b9550506040612f2e89828a01612ace565b9450506060612f3f89828a01612ea7565b9350506080612f5089828a01612ed1565b92505060a0612f6189828a01612ed1565b9150509295509295509295565b5f805f805f805f60e0888a031215612f8957612f88612a51565b5b5f612f968a828b01612a9b565b9750506020612fa78a828b01612a9b565b9650506040612fb88a828b01612ace565b9550506060612fc98a828b01612ace565b9450506080612fda8a828b01612ea7565b93505060a0612feb8a828b01612ed1565b92505060c0612ffc8a828b01612ed1565b91505092959891949750929550565b5f806040838503121561302157613020612a51565b5b5f61302e85828601612a9b565b925050602061303f85828601612a9b565b9150509250929050565b61305281612c83565b811461305c575f80fd5b50565b5f8135905061306d81613049565b92915050565b5f806040838503121561308957613088612a51565b5b5f61309685828601612a9b565b92505060206130a78582860161305f565b9150509250929050565b6130ba81612e58565b82525050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b6130ee816130c0565b82525050565b604082015f8201516131085f8501826130b1565b50602082015161311b60208501826130e5565b50505050565b5f6040820190506131345f8301846130f4565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061317e57607f821691505b6020821081036131915761319061313a565b5b50919050565b5f6040820190506131aa5f830185612b53565b6131b76020830184612e69565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f6080820190506131fe5f830187612c08565b61320b6020830186612c5b565b6132186040830185612b53565b6132256060830184612b53565b95945050505050565b5f60c0820190506132415f830189612c08565b61324e6020830188612c5b565b61325b6040830187612c5b565b6132686060830186612b53565b6132756080830185612b53565b61328260a0830184612b53565b979650505050505050565b5f6040820190506132a05f830185612c5b565b6132ad6020830184612c5b565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6132eb826130c0565b91506132f6836130c0565b9250828201905079ffffffffffffffffffffffffffffffffffffffffffffffffffff811115613328576133276132b4565b5b92915050565b5f613338826130c0565b9150613343836130c0565b9250828203905079ffffffffffffffffffffffffffffffffffffffffffffffffffff811115613375576133746132b4565b5b92915050565b5f60608201905061338e5f830186612c5b565b61339b6020830185612b53565b6133a86040830184612b53565b949350505050565b5f819050919050565b5f819050919050565b5f6133dc6133d76133d2846133b0565b6133b9565b612bcb565b9050919050565b6133ec816133c2565b82525050565b5f6040820190506134055f8301856133e3565b6134126020830184612b53565b9392505050565b5f61342382612aaf565b915061342e83612aaf565b9250828203905081811115613446576134456132b4565b5b92915050565b5f61345682612aaf565b915061346183612aaf565b9250828201905080821115613479576134786132b4565b5b92915050565b5f6040820190506134925f830185612c5b565b61349f6020830184612b53565b9392505050565b5f60a0820190506134b95f830188612c08565b6134c66020830187612c08565b6134d36040830186612c08565b6134e06060830185612b53565b6134ed6080830184612c5b565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6040820190506135375f830185612b53565b6135446020830184612b53565b9392505050565b5f819050919050565b5f61356e6135696135648461354b565b6133b9565b612bcb565b9050919050565b61357e81613554565b82525050565b5f6040820190506135975f830185613575565b6135a46020830184612b53565b9392505050565b5f6080820190506135be5f830187612c08565b6135cb6020830186612bd7565b6135d86040830185612c08565b6135e56060830184612c08565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61365282612aaf565b915061365d83612aaf565b92508261366d5761366c6134f7565b5b828204905092915050565b5f819050919050565b5f61369b61369661369184613678565b6133b9565b612bcb565b9050919050565b6136ab81613681565b82525050565b5f6040820190506136c45f8301856136a2565b6136d16020830184612b53565b939250505056fea264697066735822122053a2a9fa532bf7268f66ed062edc3e005a90585b4f6d76ab2a66e3213bcf2b7864736f6c63430008180033
Deployed Bytecode
0x608060405234801561000f575f80fd5b506004361061014b575f3560e01c806370a08231116100c15780639ab24eb01161007a5780639ab24eb0146103e1578063a9059cbb14610411578063c3cda52014610441578063d505accf1461045d578063dd62ed3e14610479578063f1127ed8146104a95761014b565b806370a08231146102f15780637ecebe001461032157806384b0196e146103515780638e539e8c1461037557806391ddadf4146103a557806395d89b41146103c35761014b565b80633644e515116101135780633644e515146102095780633a46b1a8146102275780634bf5d7e914610257578063587cde1e146102755780635c19a95c146102a55780636fcfff45146102c15761014b565b806306fdde031461014f578063095ea7b31461016d57806318160ddd1461019d57806323b872dd146101bb578063313ce567146101eb575b5f80fd5b6101576104d9565b6040516101649190612a31565b60405180910390f35b61018760048036038101906101829190612ae2565b610569565b6040516101949190612b3a565b60405180910390f35b6101a561058b565b6040516101b29190612b62565b60405180910390f35b6101d560048036038101906101d09190612b7b565b610594565b6040516101e29190612b3a565b60405180910390f35b6101f36105c2565b6040516102009190612be6565b60405180910390f35b6102116105ca565b60405161021e9190612c17565b60405180910390f35b610241600480360381019061023c9190612ae2565b6105d8565b60405161024e9190612b62565b60405180910390f35b61025f6106ae565b60405161026c9190612a31565b60405180910390f35b61028f600480360381019061028a9190612c30565b610742565b60405161029c9190612c6a565b60405180910390f35b6102bf60048036038101906102ba9190612c30565b6107a7565b005b6102db60048036038101906102d69190612c30565b6107c0565b6040516102e89190612ca1565b60405180910390f35b61030b60048036038101906103069190612c30565b6107d1565b6040516103189190612b62565b60405180910390f35b61033b60048036038101906103369190612c30565b610816565b6040516103489190612b62565b60405180910390f35b610359610827565b60405161036c9796959493929190612dab565b60405180910390f35b61038f600480360381019061038a9190612e2d565b6108cc565b60405161039c9190612b62565b60405180910390f35b6103ad610966565b6040516103ba9190612e78565b60405180910390f35b6103cb610974565b6040516103d89190612a31565b60405180910390f35b6103fb60048036038101906103f69190612c30565b610a04565b6040516104089190612b62565b60405180910390f35b61042b60048036038101906104269190612ae2565b610a6d565b6040516104389190612b3a565b60405180910390f35b61045b60048036038101906104569190612ee5565b610a8f565b005b61047760048036038101906104729190612f6e565b610b54565b005b610493600480360381019061048e919061300b565b610c99565b6040516104a09190612b62565b60405180910390f35b6104c360048036038101906104be9190613073565b610d1b565b6040516104d09190613121565b60405180910390f35b6060600380546104e890613167565b80601f016020809104026020016040519081016040528092919081815260200182805461051490613167565b801561055f5780601f106105365761010080835404028352916020019161055f565b820191905f5260205f20905b81548152906001019060200180831161054257829003601f168201915b5050505050905090565b5f80610573610d5f565b9050610580818585610d66565b600191505092915050565b5f600254905090565b5f8061059e610d5f565b90506105ab858285610d78565b6105b6858585610e0a565b60019150509392505050565b5f6012905090565b5f6105d3610efa565b905090565b5f806105e2610966565b90508065ffffffffffff1683106106325782816040517fecd3f81e000000000000000000000000000000000000000000000000000000008152600401610629929190613197565b60405180910390fd5b61068961063e84610fb0565b60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2061100990919063ffffffff16565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff1691505092915050565b60606106b86110f6565b65ffffffffffff166106c8610966565b65ffffffffffff1614610707576040517f6ff0714000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040518060400160405280601d81526020017f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000815250905090565b5f60085f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f6107b0610d5f565b90506107bc8183611105565b5050565b5f6107ca82611215565b9050919050565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f6108208261126a565b9050919050565b5f6060805f805f606061083861127b565b6108406112b6565b46305f801b5f67ffffffffffffffff81111561085f5761085e6131be565b5b60405190808252806020026020018201604052801561088d5781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b5f806108d6610966565b90508065ffffffffffff1683106109265782816040517fecd3f81e00000000000000000000000000000000000000000000000000000000815260040161091d929190613197565b60405180910390fd5b61094261093284610fb0565b600a61100990919063ffffffff16565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915050919050565b5f61096f6110f6565b905090565b60606004805461098390613167565b80601f01602080910402602001604051908101604052809291908181526020018280546109af90613167565b80156109fa5780601f106109d1576101008083540402835291602001916109fa565b820191905f5260205f20905b8154815290600101906020018083116109dd57829003601f168201915b5050505050905090565b5f610a4a60095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206112f1565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff169050919050565b5f80610a77610d5f565b9050610a84818585610e0a565b600191505092915050565b83421115610ad457836040517f4683af0e000000000000000000000000000000000000000000000000000000008152600401610acb9190612b62565b60405180910390fd5b5f610b35610b2d7fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf898989604051602001610b1294939291906131eb565b60405160208183030381529060405280519060200120611353565b85858561136c565b9050610b41818761139a565b610b4b8188611105565b50505050505050565b83421115610b9957836040517f62791302000000000000000000000000000000000000000000000000000000008152600401610b909190612b62565b60405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610bc78c6113f1565b89604051602001610bdd9695949392919061322e565b6040516020818303038152906040528051906020012090505f610bff82611353565b90505f610c0e8287878761136c565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610c8257808a6040517f4b800e46000000000000000000000000000000000000000000000000000000008152600401610c7992919061328d565b60405180910390fd5b610c8d8a8a8a610d66565b50505050505050505050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610d2361296b565b610d2d8383611444565b905092915050565b5f8183610d4291906132e1565b905092915050565b5f8183610d57919061332e565b905092915050565b5f33905090565b610d7383838360016114a3565b505050565b5f610d838484610c99565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e045781811015610df5578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610dec9392919061337b565b60405180910390fd5b610e0384848484035f6114a3565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e7a575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610e719190612c6a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610eea575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610ee19190612c6a565b60405180910390fd5b610ef5838383611672565b505050565b5f7f000000000000000000000000af3f58c4f9baaf2f10a5e39da75b9f894f63087a73ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015610f7557507f000000000000000000000000000000000000000000000000000000000000000146145b15610fa2577f947b0acc424a65f9f9eb4a1cbae1ecae789ddabc7b183695bd5281f4a94fa8199050610fad565b610faa611682565b90505b90565b5f65ffffffffffff8016821115611001576030826040517f6dfcc650000000000000000000000000000000000000000000000000000000008152600401610ff89291906133f2565b60405180910390fd5b819050919050565b5f80835f018054905090505f80829050600583111561108a575f61102c84611717565b846110379190613419565b9050611045875f018261180d565b5f015f9054906101000a900465ffffffffffff1665ffffffffffff168665ffffffffffff16101561107857809150611088565b600181611085919061344c565b92505b505b5f611099875f0187858561181f565b90505f81146110e8576110ba875f016001836110b59190613419565b61180d565b5f0160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff166110ea565b5f5b94505050505092915050565b5f61110043610fb0565b905090565b5f61110f83610742565b90508160085f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f60405160405180910390a4611210818361120b86611894565b6118a5565b505050565b5f61126361125e60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20611b15565b611b24565b9050919050565b5f61127482611b7b565b9050919050565b60606112b160057f554e495645525345000000000000000000000000000000000000000000000008611bc190919063ffffffff16565b905090565b60606112ec60067f3100000000000000000000000000000000000000000000000000000000000001611bc190919063ffffffff16565b905090565b5f80825f018054905090505f81146113495761131b835f016001836113169190613419565b61180d565b5f0160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1661134b565b5f5b915050919050565b5f61136561135f610efa565b83611c6e565b9050919050565b5f805f8061137c88888888611cae565b92509250925061138c8282611d95565b829350505050949350505050565b5f6113a4836113f1565b90508082146113ec5782816040517f752d88c00000000000000000000000000000000000000000000000000000000081526004016113e392919061347f565b60405180910390fd5b505050565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190600101919050559050919050565b61144c61296b565b61149b8260095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20611ef790919063ffffffff16565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611513575f6040517fe602df0500000000000000000000000000000000000000000000000000000000815260040161150a9190612c6a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611583575f6040517f94280d6200000000000000000000000000000000000000000000000000000000815260040161157a9190612c6a565b60405180910390fd5b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550801561166c578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516116639190612b62565b60405180910390a35b50505050565b61167d838383611fc6565b505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7fa5d75a7d7ffc59ab3f8bcf4c7b04823eed13ec250cf40b2a8023b68da129d9307fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc646306040516020016116fc9594939291906134a6565b60405160208183030381529060405280519060200120905090565b5f808203611727575f9050611808565b5f600161173384612074565b901c6001901b9050600181848161174d5761174c6134f7565b5b048201901c90506001818481611766576117656134f7565b5b048201901c9050600181848161177f5761177e6134f7565b5b048201901c90506001818481611798576117976134f7565b5b048201901c905060018184816117b1576117b06134f7565b5b048201901c905060018184816117ca576117c96134f7565b5b048201901c905060018184816117e3576117e26134f7565b5b048201901c9050611804818285816117fe576117fd6134f7565b5b0461214b565b9150505b919050565b5f825f528160205f2001905092915050565b5f5b81831015611889575f6118348484612163565b90508465ffffffffffff16611849878361180d565b5f015f9054906101000a900465ffffffffffff1665ffffffffffff16111561187357809250611883565b600181611880919061344c565b93505b50611821565b819050949350505050565b5f61189e826107d1565b9050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118e057505f81115b15611b10575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146119fa575f8061196b60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20610d4a61196686612188565b6121f5565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516119ef929190613524565b60405180910390a250505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611b0f575f80611a8060095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20610d35611a7b86612188565b6121f5565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff16915079ffffffffffffffffffffffffffffffffffffffffffffffffffff1691508373ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051611b04929190613524565b60405180910390a250505b5b505050565b5f815f01805490509050919050565b5f63ffffffff8016821115611b73576020826040517f6dfcc650000000000000000000000000000000000000000000000000000000008152600401611b6a929190613584565b60405180910390fd5b819050919050565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b606060ff5f1b8314611bdd57611bd683612234565b9050611c68565b818054611be990613167565b80601f0160208091040260200160405190810160405280929190818152602001828054611c1590613167565b8015611c605780601f10611c3757610100808354040283529160200191611c60565b820191905f5260205f20905b815481529060010190602001808311611c4357829003601f168201915b505050505090505b92915050565b5f6040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b5f805f7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0845f1c1115611cea575f600385925092509250611d8b565b5f6001888888886040515f8152602001604052604051611d0d94939291906135ab565b6020604051602081039080840390855afa158015611d2d573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611d7e575f60015f801b93509350935050611d8b565b805f805f1b935093509350505b9450945094915050565b5f6003811115611da857611da76135ee565b5b826003811115611dbb57611dba6135ee565b5b0315611ef35760016003811115611dd557611dd46135ee565b5b826003811115611de857611de76135ee565b5b03611e1f576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60026003811115611e3357611e326135ee565b5b826003811115611e4657611e456135ee565b5b03611e8a57805f1c6040517ffce698f7000000000000000000000000000000000000000000000000000000008152600401611e819190612b62565b60405180910390fd5b600380811115611e9d57611e9c6135ee565b5b826003811115611eb057611eaf6135ee565b5b03611ef257806040517fd78bce0c000000000000000000000000000000000000000000000000000000008152600401611ee99190612c17565b60405180910390fd5b5b5050565b611eff61296b565b825f018263ffffffff1681548110611f1a57611f1961361b565b5b905f5260205f20016040518060400160405290815f82015f9054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020015f820160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1681525050905092915050565b611fd18383836122a6565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612064575f61200d61058b565b90505f6120186124bf565b9050808211156120615781816040517f1cb15d26000000000000000000000000000000000000000000000000000000008152600401612058929190613524565b60405180910390fd5b50505b61206f8383836124e2565b505050565b5f805f90505f608084901c111561209357608083901c92506080810190505b5f604084901c11156120ad57604083901c92506040810190505b5f602084901c11156120c757602083901c92506020810190505b5f601084901c11156120e157601083901c92506010810190505b5f600884901c11156120fb57600883901c92506008810190505b5f600484901c111561211557600483901c92506004810190505b5f600284901c111561212f57600283901c92506002810190505b5f600184901c1115612142576001810190505b80915050919050565b5f818310612159578161215b565b825b905092915050565b5f60028284186121739190613648565b828416612180919061344c565b905092915050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff80168211156121ed5760d0826040517f6dfcc6500000000000000000000000000000000000000000000000000000000081526004016121e49291906136b1565b60405180910390fd5b819050919050565b5f80612228612202610966565b61221861220e886112f1565b868863ffffffff16565b8761259a9092919063ffffffff16565b91509150935093915050565b60605f612240836125b5565b90505f602067ffffffffffffffff81111561225e5761225d6131be565b5b6040519080825280601f01601f1916602001820160405280156122905781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036122f6578060025f8282546122ea919061344c565b925050819055506123c4565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561237f578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016123769392919061337b565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361240b578060025f8282540392505081905550612455565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516124b29190612b62565b60405180910390a3505050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff8016905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361252e5761252b600a610d3561252684612188565b6121f5565b50505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361257a57612577600a610d4a61257284612188565b6121f5565b50505b61259561258684610742565b61258f84610742565b836118a5565b505050565b5f806125a9855f018585612603565b91509150935093915050565b5f8060ff835f1c169050601f8111156125fa576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b5f805f858054905090505f811115612883575f61262c876001846126279190613419565b61180d565b6040518060400160405290815f82015f9054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020015f820160069054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff1679ffffffffffffffffffffffffffffffffffffffffffffffffffff168152505090508565ffffffffffff16815f015165ffffffffffff161115612717576040517f2520601d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8565ffffffffffff16815f015165ffffffffffff16036127995784612748886001856127439190613419565b61180d565b5f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff160217905550612872565b8660405180604001604052808865ffffffffffff1681526020018779ffffffffffffffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505060019003905f5260205f20015f909190919091505f820151815f015f6101000a81548165ffffffffffff021916908365ffffffffffff1602179055506020820151815f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505b806020015185935093505050612963565b8560405180604001604052808765ffffffffffff1681526020018679ffffffffffffffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505060019003905f5260205f20015f909190919091505f820151815f015f6101000a81548165ffffffffffff021916908365ffffffffffff1602179055506020820151815f0160066101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505f8492509250505b935093915050565b60405180604001604052805f65ffffffffffff1681526020015f79ffffffffffffffffffffffffffffffffffffffffffffffffffff1681525090565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156129de5780820151818401526020810190506129c3565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612a03826129a7565b612a0d81856129b1565b9350612a1d8185602086016129c1565b612a26816129e9565b840191505092915050565b5f6020820190508181035f830152612a4981846129f9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612a7e82612a55565b9050919050565b612a8e81612a74565b8114612a98575f80fd5b50565b5f81359050612aa981612a85565b92915050565b5f819050919050565b612ac181612aaf565b8114612acb575f80fd5b50565b5f81359050612adc81612ab8565b92915050565b5f8060408385031215612af857612af7612a51565b5b5f612b0585828601612a9b565b9250506020612b1685828601612ace565b9150509250929050565b5f8115159050919050565b612b3481612b20565b82525050565b5f602082019050612b4d5f830184612b2b565b92915050565b612b5c81612aaf565b82525050565b5f602082019050612b755f830184612b53565b92915050565b5f805f60608486031215612b9257612b91612a51565b5b5f612b9f86828701612a9b565b9350506020612bb086828701612a9b565b9250506040612bc186828701612ace565b9150509250925092565b5f60ff82169050919050565b612be081612bcb565b82525050565b5f602082019050612bf95f830184612bd7565b92915050565b5f819050919050565b612c1181612bff565b82525050565b5f602082019050612c2a5f830184612c08565b92915050565b5f60208284031215612c4557612c44612a51565b5b5f612c5284828501612a9b565b91505092915050565b612c6481612a74565b82525050565b5f602082019050612c7d5f830184612c5b565b92915050565b5f63ffffffff82169050919050565b612c9b81612c83565b82525050565b5f602082019050612cb45f830184612c92565b92915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b612cee81612cba565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612d2681612aaf565b82525050565b5f612d378383612d1d565b60208301905092915050565b5f602082019050919050565b5f612d5982612cf4565b612d638185612cfe565b9350612d6e83612d0e565b805f5b83811015612d9e578151612d858882612d2c565b9750612d9083612d43565b925050600181019050612d71565b5085935050505092915050565b5f60e082019050612dbe5f83018a612ce5565b8181036020830152612dd081896129f9565b90508181036040830152612de481886129f9565b9050612df36060830187612b53565b612e006080830186612c5b565b612e0d60a0830185612c08565b81810360c0830152612e1f8184612d4f565b905098975050505050505050565b5f60208284031215612e4257612e41612a51565b5b5f612e4f84828501612ace565b91505092915050565b5f65ffffffffffff82169050919050565b612e7281612e58565b82525050565b5f602082019050612e8b5f830184612e69565b92915050565b612e9a81612bcb565b8114612ea4575f80fd5b50565b5f81359050612eb581612e91565b92915050565b612ec481612bff565b8114612ece575f80fd5b50565b5f81359050612edf81612ebb565b92915050565b5f805f805f8060c08789031215612eff57612efe612a51565b5b5f612f0c89828a01612a9b565b9650506020612f1d89828a01612ace565b9550506040612f2e89828a01612ace565b9450506060612f3f89828a01612ea7565b9350506080612f5089828a01612ed1565b92505060a0612f6189828a01612ed1565b9150509295509295509295565b5f805f805f805f60e0888a031215612f8957612f88612a51565b5b5f612f968a828b01612a9b565b9750506020612fa78a828b01612a9b565b9650506040612fb88a828b01612ace565b9550506060612fc98a828b01612ace565b9450506080612fda8a828b01612ea7565b93505060a0612feb8a828b01612ed1565b92505060c0612ffc8a828b01612ed1565b91505092959891949750929550565b5f806040838503121561302157613020612a51565b5b5f61302e85828601612a9b565b925050602061303f85828601612a9b565b9150509250929050565b61305281612c83565b811461305c575f80fd5b50565b5f8135905061306d81613049565b92915050565b5f806040838503121561308957613088612a51565b5b5f61309685828601612a9b565b92505060206130a78582860161305f565b9150509250929050565b6130ba81612e58565b82525050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b6130ee816130c0565b82525050565b604082015f8201516131085f8501826130b1565b50602082015161311b60208501826130e5565b50505050565b5f6040820190506131345f8301846130f4565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061317e57607f821691505b6020821081036131915761319061313a565b5b50919050565b5f6040820190506131aa5f830185612b53565b6131b76020830184612e69565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f6080820190506131fe5f830187612c08565b61320b6020830186612c5b565b6132186040830185612b53565b6132256060830184612b53565b95945050505050565b5f60c0820190506132415f830189612c08565b61324e6020830188612c5b565b61325b6040830187612c5b565b6132686060830186612b53565b6132756080830185612b53565b61328260a0830184612b53565b979650505050505050565b5f6040820190506132a05f830185612c5b565b6132ad6020830184612c5b565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6132eb826130c0565b91506132f6836130c0565b9250828201905079ffffffffffffffffffffffffffffffffffffffffffffffffffff811115613328576133276132b4565b5b92915050565b5f613338826130c0565b9150613343836130c0565b9250828203905079ffffffffffffffffffffffffffffffffffffffffffffffffffff811115613375576133746132b4565b5b92915050565b5f60608201905061338e5f830186612c5b565b61339b6020830185612b53565b6133a86040830184612b53565b949350505050565b5f819050919050565b5f819050919050565b5f6133dc6133d76133d2846133b0565b6133b9565b612bcb565b9050919050565b6133ec816133c2565b82525050565b5f6040820190506134055f8301856133e3565b6134126020830184612b53565b9392505050565b5f61342382612aaf565b915061342e83612aaf565b9250828203905081811115613446576134456132b4565b5b92915050565b5f61345682612aaf565b915061346183612aaf565b9250828201905080821115613479576134786132b4565b5b92915050565b5f6040820190506134925f830185612c5b565b61349f6020830184612b53565b9392505050565b5f60a0820190506134b95f830188612c08565b6134c66020830187612c08565b6134d36040830186612c08565b6134e06060830185612b53565b6134ed6080830184612c5b565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6040820190506135375f830185612b53565b6135446020830184612b53565b9392505050565b5f819050919050565b5f61356e6135696135648461354b565b6133b9565b612bcb565b9050919050565b61357e81613554565b82525050565b5f6040820190506135975f830185613575565b6135a46020830184612b53565b9392505050565b5f6080820190506135be5f830187612c08565b6135cb6020830186612bd7565b6135d86040830185612c08565b6135e56060830184612c08565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61365282612aaf565b915061365d83612aaf565b92508261366d5761366c6134f7565b5b828204905092915050565b5f819050919050565b5f61369b61369661369184613678565b6133b9565b612bcb565b9050919050565b6136ab81613681565b82525050565b5f6040820190506136c45f8301856136a2565b6136d16020830184612b53565b939250505056fea264697066735822122053a2a9fa532bf7268f66ed062edc3e005a90585b4f6d76ab2a66e3213bcf2b7864736f6c63430008180033
🤖 Code Reader

Generate instant answers for your smart contract questions using AI Models. Read more.

Loading...
Loading
Loading...
Loading
[ 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.

Etherscan Logo Etherscan Logo
Etherscan AI Beta
Holders Overview


Etherscan AI can make mistakes, please DYOR. Not financial advice