ETH Price: $2,508.44 (+1.47%)
 

Overview

ETH Balance

0 ETH

ETH Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To

There are no matching entries

1 Internal Transaction found.

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
1245973412024-08-27 21:17:39748 days ago1724793459  Contract Creation0 ETH

Cross-Chain Transactions
Loading...
Loading
Source Code Verified Exact Match

Contract Name

CountdownERC721

Compiler Version
v0.8.13+commit.abaa5c0e
Optimization Enabled
Yes with 999999 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":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"Access_MissingRoleOrAdmin","type":"error"},{"inputs":[],"name":"Access_OnlyAdmin","type":"error"},{"inputs":[],"name":"Access_OnlyMinter","type":"error"},{"inputs":[],"name":"Access_WithdrawNotAllowed","type":"error"},{"inputs":[{"internalType":"address","name":"proposedAddress","type":"address"}],"name":"Admin_InvalidUpgradeAddress","type":"error"},{"inputs":[],"name":"Admin_UnableToFinalizeNotOpenEdition","type":"error"},{"inputs":[{"internalType":"uint128","name":"countdownEnd","type":"uint128"},{"internalType":"uint128","name":"mintTimeCost","type":"uint128"}],"name":"CountdownEndMustBeDivisibleByMintTimeCost","type":"error"},{"inputs":[],"name":"ExternalMetadataRenderer_CallFailed","type":"error"},{"inputs":[],"name":"FeePaymentFailed","type":"error"},{"inputs":[],"name":"MintFee_FundsSendFailure","type":"error"},{"inputs":[],"name":"Mint_SoldOut","type":"error"},{"inputs":[],"name":"NotInitialized","type":"error"},{"inputs":[],"name":"Purchase_CountdownCompleted","type":"error"},{"inputs":[],"name":"Purchase_TooManyForAddress","type":"error"},{"inputs":[{"internalType":"uint256","name":"correctPrice","type":"uint256"}],"name":"Purchase_WrongPrice","type":"error"},{"inputs":[],"name":"Sale_Inactive","type":"error"},{"inputs":[{"internalType":"uint16","name":"maxRoyaltyBPS","type":"uint16"}],"name":"Setup_RoyaltyPercentageTooHigh","type":"error"},{"inputs":[],"name":"Withdraw_FundsSendFailure","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"prevURI","type":"string"},{"indexed":false,"internalType":"string","name":"newURI","type":"string"}],"name":"ContractURIUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"source","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FundsReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAddress","type":"address"},{"indexed":true,"internalType":"address","name":"changedBy","type":"address"}],"name":"FundsRecipientChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"withdrawnBy","type":"address"},{"indexed":true,"internalType":"address","name":"withdrawnTo","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FundsWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"mintFeeAmount","type":"uint256"},{"indexed":false,"internalType":"address","name":"mintFeeRecipient","type":"address"},{"indexed":false,"internalType":"bool","name":"success","type":"bool"}],"name":"MintFeePayout","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"}],"name":"NFTMinted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"numberOfMints","type":"uint256"}],"name":"OpenMintFinalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"quantity","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"pricePerToken","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"firstPurchasedTokenId","type":"uint256"}],"name":"Sale","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"changedBy","type":"address"}],"name":"SalesConfigChanged","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"ANIMATION_URI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DECRYPTED_MEDIA_URI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DECRYPTION_KEY","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DESCRIPTION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ENCRYPTED_MEDIA_URL","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"EXTERNAL_URL","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"HASH","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"IMAGE_URI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INITIAL_END_DATE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INITIAL_MAX_SUPPLY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINT_INTERVAL","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"START_DATE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentTheoricalMaxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dropsPriceOracle","outputs":[{"internalType":"contract IDropsPriceOracle","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"endDate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fundsRecipient","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"initPayload","type":"bytes"}],"name":"init","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"isAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"quantity","type":"uint256"}],"name":"mintTo","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"minter","type":"address"}],"name":"mintedPerAddress","outputs":[{"components":[{"internalType":"uint256","name":"totalMints","type":"uint256"},{"internalType":"uint256","name":"presaleMints","type":"uint256"},{"internalType":"uint256","name":"publicMints","type":"uint256"}],"internalType":"struct AddressMintDetails","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes[]","name":"data","type":"bytes[]"}],"name":"multicall","outputs":[{"internalType":"bytes[]","name":"results","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"quantity","type":"uint256"}],"name":"purchase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"saleDetails","outputs":[{"components":[{"internalType":"bool","name":"publicSaleActive","type":"bool"},{"internalType":"uint256","name":"publicSalePrice","type":"uint256"},{"internalType":"uint256","name":"publicSaleStart","type":"uint256"},{"internalType":"uint256","name":"maxSalePurchasePerAddress","type":"uint256"},{"internalType":"uint256","name":"totalMinted","type":"uint256"},{"internalType":"uint256","name":"maxSupply","type":"uint256"}],"internalType":"struct CustomERC721SaleDetails","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"salesConfig","outputs":[{"internalType":"uint104","name":"publicSalePrice","type":"uint104"},{"internalType":"uint24","name":"maxSalePurchasePerAddress","type":"uint24"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_uri","type":"string"}],"name":"setContractURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newRecipientAddress","type":"address"}],"name":"setFundsRecipient","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"description","type":"string"},{"internalType":"string","name":"imageURI","type":"string"},{"internalType":"string","name":"animationURI","type":"string"},{"internalType":"string","name":"externalUrl","type":"string"},{"internalType":"string","name":"encryptedMediaUrl","type":"string"},{"internalType":"string","name":"decryptionKey","type":"string"},{"internalType":"string","name":"hash","type":"string"},{"internalType":"string","name":"decryptedMediaUrl","type":"string"},{"internalType":"uint256","name":"tokenOfEdition","type":"uint256"},{"internalType":"uint256","name":"editionSize","type":"uint256"}],"internalType":"struct MetadataParams","name":"params","type":"tuple"}],"name":"setMetadataParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"minterAddress","type":"address"}],"name":"setMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint104","name":"publicSalePrice","type":"uint104"},{"internalType":"uint24","name":"maxSalePurchasePerAddress","type":"uint24"}],"name":"setSaleConfiguration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalMinted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"totalMintsByAddress","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
608060405234801561001057600080fd5b50614514806100206000396000f3fe6080604052600436106102ca5760003560e01c806384e7e3d311610179578063c24a0f8b116100d6578063e8a3d4851161008a578063f0dbb18311610064578063f0dbb18314610911578063f1ae885614610926578063fca3b5aa1461093b57610328565b8063e8a3d485146108d3578063ed616341146108e8578063efef39a1146108fe57610328565b8063cb0793bc116100bb578063cb0793bc1461085c578063d445b9781461087c578063e4aab72c146108be57610328565b8063c24a0f8b14610826578063c87b56dd1461083c57610328565b80639123f01e1161012d578063a2309ff811610112578063a2309ff8146107b1578063ac9650d8146107e4578063b0fea8241461081157610328565b80639123f01e14610764578063938e3d7b1461079157610328565b80638cb163f41161015e5780638cb163f4146107125780638da5cb5b1461073a5780638f32d59b1461074f57610328565b806384e7e3d3146106e7578063879b5d50146106fd57610328565b80633474a4a611610227578063449a52f8116101db5780634ddf47d4116101c05780634ddf47d41461066557806354fd4d50146106b65780637a803244146106d257610328565b8063449a52f81461062f578063457509bf1461064f57610328565b80633b6fd2cf1161020c5780633b6fd2cf146105d85780633c4aa054146106055780633ccfd60b1461061a57610328565b80633474a4a61461055f578063372c6533146105c257610328565b806310a7eb5d1161027e57806324d7806c1161026357806324d7806c146104fc5780632df667fb1461051c5780632f54bf6e1461053f57610328565b806310a7eb5d146104755780631d2c0b381461049557610328565b806306fdde03116102af57806306fdde03146103ec5780630708ab7b14610401578063075461721461042357610328565b806301ffc9a7146103535780630322ed08146103ca57610328565b36610328576102d761095b565b73ffffffffffffffffffffffffffffffffffffffff167f8e47b87b0ef542cdfa1659c551d88bad38aa7f452d2bbb349ab7530dfec8be8f3460405161031e91815260200190565b60405180910390a2005b6040517f46756e6374696f6e206e6f7420666f756e6400000000000000000000000000008152601481fd5b34801561035f57600080fd5b506103b561036e366004613501565b7fffffffff00000000000000000000000000000000000000000000000000000000167fe80d978a000000000000000000000000000000000000000000000000000000001490565b60405190151581526020015b60405180910390f35b3480156103d657600080fd5b506103df6109ba565b6040516103c191906135bd565b3480156103f857600080fd5b506103df610a48565b34801561040d57600080fd5b5061042161041c366004613738565b610b07565b005b34801561042f57600080fd5b506006546104509073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016103c1565b34801561048157600080fd5b50610421610490366004613904565b610c83565b3480156104a157600080fd5b506011546104d3906cffffffffffffffffffffffffff8116906d0100000000000000000000000000900462ffffff1682565b604080516cffffffffffffffffffffffffff909316835262ffffff9091166020830152016103c1565b34801561050857600080fd5b506103b5610517366004613904565b610e87565b34801561052857600080fd5b50610531610ee5565b6040519081526020016103c1565b34801561054b57600080fd5b506103b561055a366004613904565b610f52565b34801561056b57600080fd5b50610574610fb1565b6040516103c19190600060c0820190508251151582526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015292915050565b3480156105ce57600080fd5b5061053160005481565b3480156105e457600080fd5b506003546104509073ffffffffffffffffffffffffffffffffffffffff1681565b34801561061157600080fd5b506103df61107a565b34801561062657600080fd5b50610421611087565b34801561063b57600080fd5b5061053161064a366004613921565b611398565b34801561065b57600080fd5b5061053160045481565b34801561067157600080fd5b5061068561068036600461394d565b61149a565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016103c1565b3480156106c257600080fd5b50604051600181526020016103c1565b3480156106de57600080fd5b506103df611797565b3480156106f357600080fd5b5061053160025481565b34801561070957600080fd5b506103df6117a4565b34801561071e57600080fd5b5061045073ea7f4c52cbd4cf1036cdca8b16aca11f5b09cf6e81565b34801561074657600080fd5b506104506117b1565b34801561075b57600080fd5b506103b56117db565b34801561077057600080fd5b5061053161077f366004613904565b60126020526000908152604090205481565b34801561079d57600080fd5b506104216107ac36600461394d565b61183f565b3480156107bd57600080fd5b506010547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16610531565b3480156107f057600080fd5b506108046107ff366004613982565b611889565b6040516103c19190613a45565b34801561081d57600080fd5b506103df611968565b34801561083257600080fd5b5061053160055481565b34801561084857600080fd5b506103df610857366004613ac5565b611975565b34801561086857600080fd5b50610421610877366004613b0a565b611fe1565b34801561088857600080fd5b5061089c610897366004613904565b61213e565b60408051825181526020808401519082015291810151908201526060016103c1565b3480156108ca57600080fd5b506103df6121ab565b3480156108df57600080fd5b506103df6121b8565b3480156108f457600080fd5b5061053160015481565b61053161090c366004613ac5565b6121c5565b34801561091d57600080fd5b506103df612694565b34801561093257600080fd5b506103df6126a1565b34801561094757600080fd5b50610421610956366004613904565b6126ae565b60007fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd543314600081146109b25750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe036013590565b3391505b5090565b600d80546109c790613b43565b80601f01602080910402602001604051908101604052809291908181526020018280546109f390613b43565b8015610a405780601f10610a1557610100808354040283529160200191610a40565b820191906000526020600020905b815481529060010190602001808311610a2357829003601f168201915b505050505081565b6060610a727fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b73ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa158015610abc573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610b029190810190613bd5565b905090565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff16610b4761095b565b73ffffffffffffffffffffffffffffffffffffffff1614610bc9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e000000000060448201526064015b60405180910390fd5b60408101518051610be291600891602090910190613471565b5060608101518051610bfc91600991602090910190613471565b5060808101518051610c1691600a91602090910190613471565b5060a08101518051610c3091600b91602090910190613471565b5060c08101518051610c4a91600c91602090910190613471565b5060e08101518051610c6491600d91602090910190613471565b506101008101518051610c7f91600e91602090910190613471565b5050565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff16610cc361095b565b73ffffffffffffffffffffffffffffffffffffffff1614610d40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e00000000006044820152606401610bc0565b73ffffffffffffffffffffffffffffffffffffffff8116610de3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f46756e647320526563697069656e742063616e6e6f742062652030206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610bc0565b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316179055610e2b61095b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f70a7ea5c664ab9c21baf3da59bb2f1e1ca33557b08a0031fab4f17076744995160405160405180910390a350565b60008173ffffffffffffffffffffffffffffffffffffffff16610ec87fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b73ffffffffffffffffffffffffffffffffffffffff161492915050565b600080544211610ef6575060015490565b600254600154610f069190613c39565b600054610f139190613c76565b4210610f1f5750600090565b600060025460005442610f329190613c8e565b610f3c9190613ca5565b905080600154610f4c9190613c8e565b91505090565b6000610f7c7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b610fec6040518060c0016040528060001515815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060c0016040528061100360005442101590565b151581526011546cffffffffffffffffffffffffff8116602083015260005460408301526d0100000000000000000000000000900462ffffff1660608201526010547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16608082015260a001611073610ee5565b9052919050565b600c80546109c790613b43565b7f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727954600203611112576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f484f4c4f47524150483a207265656e7472616e742063616c6c000000000000006044820152606401610bc0565b61113b60027f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b60035473ffffffffffffffffffffffffffffffffffffffff166111ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f46756e647320526563697069656e742061646472657373206e6f7420736574006044820152606401610bc0565b60006111c461095b565b600354909150479073ffffffffffffffffffffffffffffffffffffffff80841691161480159061124157507fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611278576040517f1dab829b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60035460405160009173ffffffffffffffffffffffffffffffffffffffff16906203345090849084818181858888f193505050503d80600081146112d8576040519150601f19603f3d011682016040523d82523d6000602084013e6112dd565b606091505b5050905080611318576040517f39debd5b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60035460405183815273ffffffffffffffffffffffffffffffffffffffff918216918516907fa92ff919b850e4909ab2261d907ef955f11bc1716733a6cbece38d163a69af8a9060200160405180910390a350505061139660017f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b565b60065460009073ffffffffffffffffffffffffffffffffffffffff166113bc61095b565b73ffffffffffffffffffffffffffffffffffffffff1614611409576040517fd7ae9e8300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81611415600182613c8e565b6002546114229190613c39565b60055461142f9190613c8e565b4210611467576040517f5fe2561a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61147184846127ae565b50506010547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1692915050565b60006114c47f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a015490565b1561152b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f484f4c4f47524150483a20616c726561647920696e697469616c697a656400006044820152606401610bc0565b337fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd556000828060200190518101906115649190613d84565b90506115938161010001517fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf77277755565b610120810151600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff90921691909117905560a081015164ffffffffff16600090815560c082015163ffffffff811660015560e083015162ffffff166002819055610140840151600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff90921691909117905561165f91613f28565b63ffffffff168260a001516116749190613f54565b64ffffffffff166005819055600481905561018083015180516011805460209384015162ffffff166d0100000000000000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091166cffffffffffffffffffffffffff9093169290921791909117905583518051929350611703926007929190910190613471565b50602080830151805161171a926008920190613471565b506040820151805161173491600991602090910190613471565b506060820151805161174e91600a91602090910190613471565b5061175d826101600151612bed565b61178660017f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b61178f84612ccf565b949350505050565b600880546109c790613b43565b600980546109c790613b43565b6000610b027fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b60006118057fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b73ffffffffffffffffffffffffffffffffffffffff1661182361095b565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b6118476117db565b61187d576040517f02bd6bd100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61188681612bed565b50565b6060815167ffffffffffffffff8111156118a5576118a56135d0565b6040519080825280602002602001820160405280156118d857816020015b60608152602001906001900390816118c35790505b50905060005b825181101561196257611932308483815181106118fd576118fd613f7d565b602002602001015161190d61095b565b60405160200161191e929190613fc8565b604051602081830303815290604052612e76565b82828151811061194457611944613f7d565b6020026020010181905250808061195a90614012565b9150506118de565b50919050565b600e80546109c790613b43565b606060006119a17fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b6040517f4f558e790000000000000000000000000000000000000000000000000000000081526004810185905290915073ffffffffffffffffffffffffffffffffffffffff821690634f558e7990602401602060405180830381865afa158015611a0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a33919061404a565b611a99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20646f6573206e6f74206578697374000000006044820152606401610bc0565b60008173ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa158015611ae6573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052611b2c9190810190613bd5565b9050600060405180610160016040528083815260200160078054611b4f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611b7b90613b43565b8015611bc85780601f10611b9d57610100808354040283529160200191611bc8565b820191906000526020600020905b815481529060010190602001808311611bab57829003601f168201915b5050505050815260200160088054611bdf90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611c0b90613b43565b8015611c585780601f10611c2d57610100808354040283529160200191611c58565b820191906000526020600020905b815481529060010190602001808311611c3b57829003601f168201915b5050505050815260200160098054611c6f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611c9b90613b43565b8015611ce85780601f10611cbd57610100808354040283529160200191611ce8565b820191906000526020600020905b815481529060010190602001808311611ccb57829003601f168201915b50505050508152602001600a8054611cff90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611d2b90613b43565b8015611d785780601f10611d4d57610100808354040283529160200191611d78565b820191906000526020600020905b815481529060010190602001808311611d5b57829003601f168201915b50505050508152602001600b8054611d8f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611dbb90613b43565b8015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050508152602001600c8054611e1f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611e4b90613b43565b8015611e985780601f10611e6d57610100808354040283529160200191611e98565b820191906000526020600020905b815481529060010190602001808311611e7b57829003601f168201915b50505050508152602001600d8054611eaf90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611edb90613b43565b8015611f285780601f10611efd57610100808354040283529160200191611f28565b820191906000526020600020905b815481529060010190602001808311611f0b57829003601f168201915b50505050508152602001600e8054611f3f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611f6b90613b43565b8015611fb85780601f10611f8d57610100808354040283529160200191611fb8565b820191906000526020600020905b815481529060010190602001808311611f9b57829003601f168201915b5050505050815260200186815260200160008152509050611fd881612ea2565b95945050505050565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff1661202161095b565b73ffffffffffffffffffffffffffffffffffffffff161461209e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e00000000006044820152606401610bc0565b6011805462ffffff83166d0100000000000000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091166cffffffffffffffffffffffffff8516171790556120f861095b565b73ffffffffffffffffffffffffffffffffffffffff167fc1ff5e4744ac8dd2b8027a10e3723b165975297501c71c4e7dcb8796d96375db60405160405180910390a25050565b61216260405180606001604052806000815260200160008152602001600081525090565b506040805160608101825273ffffffffffffffffffffffffffffffffffffffff909216600081815260126020818152848320548087528187018490529390925290529082015290565b600b80546109c790613b43565b600f80546109c790613b43565b60006121ef7f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a31372795490565b600203612258576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f484f4c4f47524150483a207265656e7472616e742063616c6c000000000000006044820152606401610bc0565b61228160027f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b8161228d600182613c8e565b60025461229a9190613c39565b6005546122a79190613c8e565b42106122df576040517f5fe2561a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005442101561231b576040517ff12dcc7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6011546cffffffffffffffffffffffffff166123378482613c39565b3410156123905760115461235b9085906cffffffffffffffffffffffffff16613c39565b6040517f6a1c179e000000000000000000000000000000000000000000000000000000008152600401610bc091815260200190565b60025461239d9085613c39565b6005546123aa9190613c8e565b60055560006123b98583613c39565b6123c39034613c8e565b6011549091506d0100000000000000000000000000900462ffffff161580159061245557506011546d0100000000000000000000000000900462ffffff16856012600061240e61095b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124539190613c76565b115b1561248c576040517f220ae94c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61249d61249761095b565b866127ae565b60006124c77fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b905060008173ffffffffffffffffffffffffffffffffffffffff166377dbd8636040518163ffffffff1660e01b8152600401602060405180830381865afa158015612516573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061253a919061406c565b60105490915060009061256c9089907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16613c8e565b6125769083613c76565b612581906001613c76565b9050848861258d61095b565b73ffffffffffffffffffffffffffffffffffffffff167f4e26b0356a15833a75d497ecc40ebbb716b99466ed0dba9454f1fff451e25a90846040516125d491815260200190565b60405180910390a4831561265f576125ea61095b565b73ffffffffffffffffffffffffffffffffffffffff1684620334505a11612611575a612616565b620334505b6040519091906000818181858888f193505050503d8060008114612656576040519150601f19603f3d011682016040523d82523d6000602084013e61265b565b606091505b5050505b9550505050505061268f60017f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b919050565b600a80546109c790613b43565b600780546109c790613b43565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff166126ee61095b565b73ffffffffffffffffffffffffffffffffffffffff161461276b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e00000000006044820152606401610bc0565b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831617905550565b60006127d87fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b905060008173ffffffffffffffffffffffffffffffffffffffff166377dbd8636040518163ffffffff1660e01b8152600401602060405180830381865afa158015612827573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061284b919061406c565b90506000805b848114612bab57601080547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff808216600101167fffffffff000000000000000000000000000000000000000000000000000000009091161790555b60105473ffffffffffffffffffffffffffffffffffffffff851690634f558e79906128f1907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1686613c76565b6040518263ffffffff1660e01b815260040161290f91815260200190565b602060405180830381865afa15801561292c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612950919061404a565b806129fe575060105473ffffffffffffffffffffffffffffffffffffffff8516906323250cae9061299f907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1686613c76565b6040518263ffffffff1660e01b81526004016129bd91815260200190565b602060405180830381865afa1580156129da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fe919061404a565b15612a5757601080547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff808216600101167fffffffff000000000000000000000000000000000000000000000000000000009091161790556128a8565b6010546040517f3b4f1b2600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88811660048301527bffffffffffffffffffffffffffffffffffffffffffffffffffffffff90921660248201819052935090851690633b4f1b2690604401600060405180830381600087803b158015612aed57600080fd5b505af1158015612b01573d6000803e3d6000fd5b505050506000827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1684612b319190613c76565b9050827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f3a8a89b59a31c39a36febecb987e0657ab7b7c73b60ebacb44dcb9886c2d5c8a83604051612b9a91815260200190565b60405180910390a350600101612851565b5073ffffffffffffffffffffffffffffffffffffffff851660009081526012602052604081208054869290612be1908490613c76565b90915550505050505050565b6000600f8054612bfc90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054612c2890613b43565b8015612c755780601f10612c4a57610100808354040283529160200191612c75565b820191906000526020600020905b815481529060010190602001808311612c5857829003601f168201915b50508551939450612c9193600f93506020870192509050613471565b507fc9c7c3fe08b88b4df9d4d47ef47d2c43d55c025a0ba88ca442580ed9e7348a168183604051612cc3929190614085565b60405180910390a15050565b6000612cf97f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a015490565b15612d60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a20616c726561647920696e697469616c697a656400000000006044820152606401610bc0565b337fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd8190557fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff8116612e24576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f484f4c4f47524150483a206f776e6572206e6f742073657400000000000000006044820152606401610bc0565b612e4d60017f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a0155565b507f4ddf47d4000000000000000000000000000000000000000000000000000000009392505050565b6060612e9b83836040518060600160405280602781526020016144e160279139612eba565b9392505050565b60606000612eaf83612f3f565b9050612e9b81613068565b60606000808573ffffffffffffffffffffffffffffffffffffffff1685604051612ee491906140aa565b600060405180830381855af49150503d8060008114612f1f576040519150601f19603f3d011682016040523d82523d6000602084013e612f24565b606091505b5091509150612f3586838387613099565b9695505050505050565b606080606060008461014001511115612f8257612f60846101400151613139565b604051602001612f7091906140c6565b60405160208183030381529060405291505b612f90846101200151613139565b845160208087015160808801516040808a015160a08b01519151969750612fbe9688958a959493910161410b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905260c086015160e0870151610100880151606089015189519495613014958891602001614291565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290526130509291602001614435565b60405160208183030381529060405292505050919050565b6060613073826131f7565b604051602001613083919061445b565b6040516020818303038152906040529050919050565b6060831561312f5782516000036131285773ffffffffffffffffffffffffffffffffffffffff85163b613128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610bc0565b508161178f565b61178f838361334a565b606060006131468361338e565b600101905060008167ffffffffffffffff811115613166576131666135d0565b6040519080825280601f01601f191660200182016040528015613190576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a850494508461319a57509392505050565b6060815160000361321657505060408051602081019091526000815290565b60006040518060600160405280604081526020016144a160409139905060006003845160026132459190613c76565b61324f9190613ca5565b61325a906004613c39565b67ffffffffffffffff811115613272576132726135d0565b6040519080825280601f01601f19166020018201604052801561329c576020820181803683370190505b509050600182016020820185865187015b80821015613308576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f81168501518453506001830192506132ad565b505060038651066001811461332457600281146133375761333f565b603d6001830353603d600283035361333f565b603d60018303535b509195945050505050565b81511561335a5781518083602001fd5b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc091906135bd565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106133d7577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310613403576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061342157662386f26fc10000830492506010015b6305f5e1008310613439576305f5e100830492506008015b612710831061344d57612710830492506004015b6064831061345f576064830492506002015b600a831061346b576001015b92915050565b82805461347d90613b43565b90600052602060002090601f01602090048101928261349f57600085556134e5565b82601f106134b857805160ff19168380011785556134e5565b828001600101855582156134e5579182015b828111156134e55782518255916020019190600101906134ca565b506109b69291505b808211156109b657600081556001016134ed565b60006020828403121561351357600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114612e9b57600080fd5b60005b8381101561355e578181015183820152602001613546565b8381111561356d576000848401525b50505050565b6000815180845261358b816020860160208601613543565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612e9b6020830184613573565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051610160810167ffffffffffffffff81118282101715613623576136236135d0565b60405290565b6040516101a0810167ffffffffffffffff81118282101715613623576136236135d0565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715613694576136946135d0565b604052919050565b600067ffffffffffffffff8211156136b6576136b66135d0565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126136f357600080fd5b81356137066137018261369c565b61364d565b81815284602083860101111561371b57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561374a57600080fd5b813567ffffffffffffffff8082111561376257600080fd5b90830190610160828603121561377757600080fd5b61377f6135ff565b82358281111561378e57600080fd5b61379a878286016136e2565b8252506020830135828111156137af57600080fd5b6137bb878286016136e2565b6020830152506040830135828111156137d357600080fd5b6137df878286016136e2565b6040830152506060830135828111156137f757600080fd5b613803878286016136e2565b60608301525060808301358281111561381b57600080fd5b613827878286016136e2565b60808301525060a08301358281111561383f57600080fd5b61384b878286016136e2565b60a08301525060c08301358281111561386357600080fd5b61386f878286016136e2565b60c08301525060e08301358281111561388757600080fd5b613893878286016136e2565b60e08301525061010080840135838111156138ad57600080fd5b6138b9888287016136e2565b918301919091525061012083810135908201526101409283013592810192909252509392505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461188657600080fd5b60006020828403121561391657600080fd5b8135612e9b816138e2565b6000806040838503121561393457600080fd5b823561393f816138e2565b946020939093013593505050565b60006020828403121561395f57600080fd5b813567ffffffffffffffff81111561397657600080fd5b61178f848285016136e2565b6000602080838503121561399557600080fd5b823567ffffffffffffffff808211156139ad57600080fd5b818501915085601f8301126139c157600080fd5b8135818111156139d3576139d36135d0565b8060051b6139e285820161364d565b91825283810185019185810190898411156139fc57600080fd5b86860192505b83831015613a3857823585811115613a1a5760008081fd5b613a288b89838a01016136e2565b8352509186019190860190613a02565b9998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015613ab8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452613aa6858351613573565b94509285019290850190600101613a6c565b5092979650505050505050565b600060208284031215613ad757600080fd5b5035919050565b6cffffffffffffffffffffffffff8116811461188657600080fd5b62ffffff8116811461188657600080fd5b60008060408385031215613b1d57600080fd5b8235613b2881613ade565b91506020830135613b3881613af9565b809150509250929050565b600181811c90821680613b5757607f821691505b602082108103611962577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600082601f830112613ba157600080fd5b8151613baf6137018261369c565b818152846020838601011115613bc457600080fd5b61178f826020830160208701613543565b600060208284031215613be757600080fd5b815167ffffffffffffffff811115613bfe57600080fd5b61178f84828501613b90565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613c7157613c71613c0a565b500290565b60008219821115613c8957613c89613c0a565b500190565b600082821015613ca057613ca0613c0a565b500390565b600082613cdb577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b805164ffffffffff8116811461268f57600080fd5b805163ffffffff8116811461268f57600080fd5b805161268f81613af9565b805161268f816138e2565b600060408284031215613d3157600080fd5b6040516040810181811067ffffffffffffffff82111715613d5457613d546135d0565b80604052508091508251613d6781613ade565b81526020830151613d7781613af9565b6020919091015292915050565b600060208284031215613d9657600080fd5b815167ffffffffffffffff80821115613dae57600080fd5b908301906101c08286031215613dc357600080fd5b613dcb613629565b825182811115613dda57600080fd5b613de687828601613b90565b825250602083015182811115613dfb57600080fd5b613e0787828601613b90565b602083015250604083015182811115613e1f57600080fd5b613e2b87828601613b90565b604083015250606083015182811115613e4357600080fd5b613e4f87828601613b90565b606083015250608083015182811115613e6757600080fd5b613e7387828601613b90565b608083015250613e8560a08401613ce0565b60a0820152613e9660c08401613cf5565b60c0820152613ea760e08401613d09565b60e0820152610100613eba818501613d14565b90820152610120613ecc848201613d14565b90820152610140613ede848201613d14565b908201526101608381015183811115613ef657600080fd5b613f0288828701613b90565b8284015250506101809150613f1986838501613d1f565b91810191909152949350505050565b600063ffffffff80831681851681830481118215151615613f4b57613f4b613c0a565b02949350505050565b600064ffffffffff808316818516808303821115613f7457613f74613c0a565b01949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151613fbe818560208601613543565b9290920192915050565b60008351613fda818460208801613543565b60609390931b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190920190815260140192915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361404357614043613c0a565b5060010190565b60006020828403121561405c57600080fd5b81518015158114612e9b57600080fd5b60006020828403121561407e57600080fd5b5051919050565b6040815260006140986040830185613573565b8281036020840152611fd88185613573565b600082516140bc818460208701613543565b9190910192915050565b7f2f000000000000000000000000000000000000000000000000000000000000008152600082516140fe816001850160208701613543565b9190910160010192915050565b7f7b226e616d65223a20220000000000000000000000000000000000000000000081526000885161414381600a850160208d01613543565b7f2000000000000000000000000000000000000000000000000000000000000000600a91840191820152885161418081600b840160208d01613543565b885191019061419681600b840160208c01613543565b7f222c20226465736372697074696f6e223a202200000000000000000000000000600b929091019182015286516141d481601e840160208b01613543565b7f222c202265787465726e616c5f75726c223a2022000000000000000000000000601e92909101918201528551614212816032840160208a01613543565b61428261427c61425361424d6032858701017f222c2022696d616765223a2022000000000000000000000000000000000000008152600d0190565b89613fac565b7f222c2022656e637279707465645f6d656469615f75726c223a202200000000008152601b0190565b86613fac565b9b9a5050505050505050505050565b7f222c202264656372797074696f6e5f6b6579223a2022000000000000000000008152600087516142c9816016850160208c01613543565b7f222c202268617368223a202200000000000000000000000000000000000000006016918401918201528751614306816022840160208c01613543565b7f222c20226465637279707465645f6d656469615f75726c223a2022000000000060229290910191820152865161434481603d840160208b01613543565b7f222c2022616e696d6174696f6e5f75726c223a20220000000000000000000000603d92909101918201528551614382816052840160208a01613543565b7f222c202270726f70657274696573223a207b226e756d626572223a20000000006052929091019182015284516143c081606e840160208901613543565b6144276143fe6143f8606e848601017f2c20226e616d65223a20220000000000000000000000000000000000000000008152600b0190565b87613fac565b7f227d7d0000000000000000000000000000000000000000000000000000000000815260030190565b9a9950505050505050505050565b60008351614447818460208801613543565b835190830190613f74818360208801613543565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c00000081526000825161449381601d850160208701613543565b91909101601d019291505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c634300080d000a
Deployed Bytecode
0x6080604052600436106102ca5760003560e01c806384e7e3d311610179578063c24a0f8b116100d6578063e8a3d4851161008a578063f0dbb18311610064578063f0dbb18314610911578063f1ae885614610926578063fca3b5aa1461093b57610328565b8063e8a3d485146108d3578063ed616341146108e8578063efef39a1146108fe57610328565b8063cb0793bc116100bb578063cb0793bc1461085c578063d445b9781461087c578063e4aab72c146108be57610328565b8063c24a0f8b14610826578063c87b56dd1461083c57610328565b80639123f01e1161012d578063a2309ff811610112578063a2309ff8146107b1578063ac9650d8146107e4578063b0fea8241461081157610328565b80639123f01e14610764578063938e3d7b1461079157610328565b80638cb163f41161015e5780638cb163f4146107125780638da5cb5b1461073a5780638f32d59b1461074f57610328565b806384e7e3d3146106e7578063879b5d50146106fd57610328565b80633474a4a611610227578063449a52f8116101db5780634ddf47d4116101c05780634ddf47d41461066557806354fd4d50146106b65780637a803244146106d257610328565b8063449a52f81461062f578063457509bf1461064f57610328565b80633b6fd2cf1161020c5780633b6fd2cf146105d85780633c4aa054146106055780633ccfd60b1461061a57610328565b80633474a4a61461055f578063372c6533146105c257610328565b806310a7eb5d1161027e57806324d7806c1161026357806324d7806c146104fc5780632df667fb1461051c5780632f54bf6e1461053f57610328565b806310a7eb5d146104755780631d2c0b381461049557610328565b806306fdde03116102af57806306fdde03146103ec5780630708ab7b14610401578063075461721461042357610328565b806301ffc9a7146103535780630322ed08146103ca57610328565b36610328576102d761095b565b73ffffffffffffffffffffffffffffffffffffffff167f8e47b87b0ef542cdfa1659c551d88bad38aa7f452d2bbb349ab7530dfec8be8f3460405161031e91815260200190565b60405180910390a2005b6040517f46756e6374696f6e206e6f7420666f756e6400000000000000000000000000008152601481fd5b34801561035f57600080fd5b506103b561036e366004613501565b7fffffffff00000000000000000000000000000000000000000000000000000000167fe80d978a000000000000000000000000000000000000000000000000000000001490565b60405190151581526020015b60405180910390f35b3480156103d657600080fd5b506103df6109ba565b6040516103c191906135bd565b3480156103f857600080fd5b506103df610a48565b34801561040d57600080fd5b5061042161041c366004613738565b610b07565b005b34801561042f57600080fd5b506006546104509073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016103c1565b34801561048157600080fd5b50610421610490366004613904565b610c83565b3480156104a157600080fd5b506011546104d3906cffffffffffffffffffffffffff8116906d0100000000000000000000000000900462ffffff1682565b604080516cffffffffffffffffffffffffff909316835262ffffff9091166020830152016103c1565b34801561050857600080fd5b506103b5610517366004613904565b610e87565b34801561052857600080fd5b50610531610ee5565b6040519081526020016103c1565b34801561054b57600080fd5b506103b561055a366004613904565b610f52565b34801561056b57600080fd5b50610574610fb1565b6040516103c19190600060c0820190508251151582526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015292915050565b3480156105ce57600080fd5b5061053160005481565b3480156105e457600080fd5b506003546104509073ffffffffffffffffffffffffffffffffffffffff1681565b34801561061157600080fd5b506103df61107a565b34801561062657600080fd5b50610421611087565b34801561063b57600080fd5b5061053161064a366004613921565b611398565b34801561065b57600080fd5b5061053160045481565b34801561067157600080fd5b5061068561068036600461394d565b61149a565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016103c1565b3480156106c257600080fd5b50604051600181526020016103c1565b3480156106de57600080fd5b506103df611797565b3480156106f357600080fd5b5061053160025481565b34801561070957600080fd5b506103df6117a4565b34801561071e57600080fd5b5061045073ea7f4c52cbd4cf1036cdca8b16aca11f5b09cf6e81565b34801561074657600080fd5b506104506117b1565b34801561075b57600080fd5b506103b56117db565b34801561077057600080fd5b5061053161077f366004613904565b60126020526000908152604090205481565b34801561079d57600080fd5b506104216107ac36600461394d565b61183f565b3480156107bd57600080fd5b506010547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16610531565b3480156107f057600080fd5b506108046107ff366004613982565b611889565b6040516103c19190613a45565b34801561081d57600080fd5b506103df611968565b34801561083257600080fd5b5061053160055481565b34801561084857600080fd5b506103df610857366004613ac5565b611975565b34801561086857600080fd5b50610421610877366004613b0a565b611fe1565b34801561088857600080fd5b5061089c610897366004613904565b61213e565b60408051825181526020808401519082015291810151908201526060016103c1565b3480156108ca57600080fd5b506103df6121ab565b3480156108df57600080fd5b506103df6121b8565b3480156108f457600080fd5b5061053160015481565b61053161090c366004613ac5565b6121c5565b34801561091d57600080fd5b506103df612694565b34801561093257600080fd5b506103df6126a1565b34801561094757600080fd5b50610421610956366004613904565b6126ae565b60007fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd543314600081146109b25750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe036013590565b3391505b5090565b600d80546109c790613b43565b80601f01602080910402602001604051908101604052809291908181526020018280546109f390613b43565b8015610a405780601f10610a1557610100808354040283529160200191610a40565b820191906000526020600020905b815481529060010190602001808311610a2357829003601f168201915b505050505081565b6060610a727fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b73ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa158015610abc573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610b029190810190613bd5565b905090565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff16610b4761095b565b73ffffffffffffffffffffffffffffffffffffffff1614610bc9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e000000000060448201526064015b60405180910390fd5b60408101518051610be291600891602090910190613471565b5060608101518051610bfc91600991602090910190613471565b5060808101518051610c1691600a91602090910190613471565b5060a08101518051610c3091600b91602090910190613471565b5060c08101518051610c4a91600c91602090910190613471565b5060e08101518051610c6491600d91602090910190613471565b506101008101518051610c7f91600e91602090910190613471565b5050565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff16610cc361095b565b73ffffffffffffffffffffffffffffffffffffffff1614610d40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e00000000006044820152606401610bc0565b73ffffffffffffffffffffffffffffffffffffffff8116610de3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f46756e647320526563697069656e742063616e6e6f742062652030206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610bc0565b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316179055610e2b61095b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f70a7ea5c664ab9c21baf3da59bb2f1e1ca33557b08a0031fab4f17076744995160405160405180910390a350565b60008173ffffffffffffffffffffffffffffffffffffffff16610ec87fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b73ffffffffffffffffffffffffffffffffffffffff161492915050565b600080544211610ef6575060015490565b600254600154610f069190613c39565b600054610f139190613c76565b4210610f1f5750600090565b600060025460005442610f329190613c8e565b610f3c9190613ca5565b905080600154610f4c9190613c8e565b91505090565b6000610f7c7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b610fec6040518060c0016040528060001515815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060c0016040528061100360005442101590565b151581526011546cffffffffffffffffffffffffff8116602083015260005460408301526d0100000000000000000000000000900462ffffff1660608201526010547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16608082015260a001611073610ee5565b9052919050565b600c80546109c790613b43565b7f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727954600203611112576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f484f4c4f47524150483a207265656e7472616e742063616c6c000000000000006044820152606401610bc0565b61113b60027f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b60035473ffffffffffffffffffffffffffffffffffffffff166111ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f46756e647320526563697069656e742061646472657373206e6f7420736574006044820152606401610bc0565b60006111c461095b565b600354909150479073ffffffffffffffffffffffffffffffffffffffff80841691161480159061124157507fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611278576040517f1dab829b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60035460405160009173ffffffffffffffffffffffffffffffffffffffff16906203345090849084818181858888f193505050503d80600081146112d8576040519150601f19603f3d011682016040523d82523d6000602084013e6112dd565b606091505b5050905080611318576040517f39debd5b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60035460405183815273ffffffffffffffffffffffffffffffffffffffff918216918516907fa92ff919b850e4909ab2261d907ef955f11bc1716733a6cbece38d163a69af8a9060200160405180910390a350505061139660017f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b565b60065460009073ffffffffffffffffffffffffffffffffffffffff166113bc61095b565b73ffffffffffffffffffffffffffffffffffffffff1614611409576040517fd7ae9e8300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81611415600182613c8e565b6002546114229190613c39565b60055461142f9190613c8e565b4210611467576040517f5fe2561a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61147184846127ae565b50506010547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1692915050565b60006114c47f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a015490565b1561152b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f484f4c4f47524150483a20616c726561647920696e697469616c697a656400006044820152606401610bc0565b337fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd556000828060200190518101906115649190613d84565b90506115938161010001517fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf77277755565b610120810151600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff90921691909117905560a081015164ffffffffff16600090815560c082015163ffffffff811660015560e083015162ffffff166002819055610140840151600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff90921691909117905561165f91613f28565b63ffffffff168260a001516116749190613f54565b64ffffffffff166005819055600481905561018083015180516011805460209384015162ffffff166d0100000000000000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091166cffffffffffffffffffffffffff9093169290921791909117905583518051929350611703926007929190910190613471565b50602080830151805161171a926008920190613471565b506040820151805161173491600991602090910190613471565b506060820151805161174e91600a91602090910190613471565b5061175d826101600151612bed565b61178660017f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b61178f84612ccf565b949350505050565b600880546109c790613b43565b600980546109c790613b43565b6000610b027fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b60006118057fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775490565b73ffffffffffffffffffffffffffffffffffffffff1661182361095b565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b6118476117db565b61187d576040517f02bd6bd100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61188681612bed565b50565b6060815167ffffffffffffffff8111156118a5576118a56135d0565b6040519080825280602002602001820160405280156118d857816020015b60608152602001906001900390816118c35790505b50905060005b825181101561196257611932308483815181106118fd576118fd613f7d565b602002602001015161190d61095b565b60405160200161191e929190613fc8565b604051602081830303815290604052612e76565b82828151811061194457611944613f7d565b6020026020010181905250808061195a90614012565b9150506118de565b50919050565b600e80546109c790613b43565b606060006119a17fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b6040517f4f558e790000000000000000000000000000000000000000000000000000000081526004810185905290915073ffffffffffffffffffffffffffffffffffffffff821690634f558e7990602401602060405180830381865afa158015611a0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a33919061404a565b611a99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20646f6573206e6f74206578697374000000006044820152606401610bc0565b60008173ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa158015611ae6573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052611b2c9190810190613bd5565b9050600060405180610160016040528083815260200160078054611b4f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611b7b90613b43565b8015611bc85780601f10611b9d57610100808354040283529160200191611bc8565b820191906000526020600020905b815481529060010190602001808311611bab57829003601f168201915b5050505050815260200160088054611bdf90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611c0b90613b43565b8015611c585780601f10611c2d57610100808354040283529160200191611c58565b820191906000526020600020905b815481529060010190602001808311611c3b57829003601f168201915b5050505050815260200160098054611c6f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611c9b90613b43565b8015611ce85780601f10611cbd57610100808354040283529160200191611ce8565b820191906000526020600020905b815481529060010190602001808311611ccb57829003601f168201915b50505050508152602001600a8054611cff90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611d2b90613b43565b8015611d785780601f10611d4d57610100808354040283529160200191611d78565b820191906000526020600020905b815481529060010190602001808311611d5b57829003601f168201915b50505050508152602001600b8054611d8f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611dbb90613b43565b8015611e085780601f10611ddd57610100808354040283529160200191611e08565b820191906000526020600020905b815481529060010190602001808311611deb57829003601f168201915b50505050508152602001600c8054611e1f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611e4b90613b43565b8015611e985780601f10611e6d57610100808354040283529160200191611e98565b820191906000526020600020905b815481529060010190602001808311611e7b57829003601f168201915b50505050508152602001600d8054611eaf90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611edb90613b43565b8015611f285780601f10611efd57610100808354040283529160200191611f28565b820191906000526020600020905b815481529060010190602001808311611f0b57829003601f168201915b50505050508152602001600e8054611f3f90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054611f6b90613b43565b8015611fb85780601f10611f8d57610100808354040283529160200191611fb8565b820191906000526020600020905b815481529060010190602001808311611f9b57829003601f168201915b5050505050815260200186815260200160008152509050611fd881612ea2565b95945050505050565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff1661202161095b565b73ffffffffffffffffffffffffffffffffffffffff161461209e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e00000000006044820152606401610bc0565b6011805462ffffff83166d0100000000000000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091166cffffffffffffffffffffffffff8516171790556120f861095b565b73ffffffffffffffffffffffffffffffffffffffff167fc1ff5e4744ac8dd2b8027a10e3723b165975297501c71c4e7dcb8796d96375db60405160405180910390a25050565b61216260405180606001604052806000815260200160008152602001600081525090565b506040805160608101825273ffffffffffffffffffffffffffffffffffffffff909216600081815260126020818152848320548087528187018490529390925290529082015290565b600b80546109c790613b43565b600f80546109c790613b43565b60006121ef7f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a31372795490565b600203612258576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f484f4c4f47524150483a207265656e7472616e742063616c6c000000000000006044820152606401610bc0565b61228160027f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b8161228d600182613c8e565b60025461229a9190613c39565b6005546122a79190613c8e565b42106122df576040517f5fe2561a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005442101561231b576040517ff12dcc7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6011546cffffffffffffffffffffffffff166123378482613c39565b3410156123905760115461235b9085906cffffffffffffffffffffffffff16613c39565b6040517f6a1c179e000000000000000000000000000000000000000000000000000000008152600401610bc091815260200190565b60025461239d9085613c39565b6005546123aa9190613c8e565b60055560006123b98583613c39565b6123c39034613c8e565b6011549091506d0100000000000000000000000000900462ffffff161580159061245557506011546d0100000000000000000000000000900462ffffff16856012600061240e61095b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124539190613c76565b115b1561248c576040517f220ae94c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61249d61249761095b565b866127ae565b60006124c77fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b905060008173ffffffffffffffffffffffffffffffffffffffff166377dbd8636040518163ffffffff1660e01b8152600401602060405180830381865afa158015612516573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061253a919061406c565b60105490915060009061256c9089907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16613c8e565b6125769083613c76565b612581906001613c76565b9050848861258d61095b565b73ffffffffffffffffffffffffffffffffffffffff167f4e26b0356a15833a75d497ecc40ebbb716b99466ed0dba9454f1fff451e25a90846040516125d491815260200190565b60405180910390a4831561265f576125ea61095b565b73ffffffffffffffffffffffffffffffffffffffff1684620334505a11612611575a612616565b620334505b6040519091906000818181858888f193505050503d8060008114612656576040519150601f19603f3d011682016040523d82523d6000602084013e61265b565b606091505b5050505b9550505050505061268f60017f04b524dd539523930d3901481aa9455d7752b49add99e1647adb8b09a313727955565b919050565b600a80546109c790613b43565b600780546109c790613b43565b7fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff166126ee61095b565b73ffffffffffffffffffffffffffffffffffffffff161461276b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a206f776e6572206f6e6c792066756e6374696f6e00000000006044820152606401610bc0565b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831617905550565b60006127d87fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd5490565b905060008173ffffffffffffffffffffffffffffffffffffffff166377dbd8636040518163ffffffff1660e01b8152600401602060405180830381865afa158015612827573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061284b919061406c565b90506000805b848114612bab57601080547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff808216600101167fffffffff000000000000000000000000000000000000000000000000000000009091161790555b60105473ffffffffffffffffffffffffffffffffffffffff851690634f558e79906128f1907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1686613c76565b6040518263ffffffff1660e01b815260040161290f91815260200190565b602060405180830381865afa15801561292c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612950919061404a565b806129fe575060105473ffffffffffffffffffffffffffffffffffffffff8516906323250cae9061299f907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1686613c76565b6040518263ffffffff1660e01b81526004016129bd91815260200190565b602060405180830381865afa1580156129da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fe919061404a565b15612a5757601080547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff808216600101167fffffffff000000000000000000000000000000000000000000000000000000009091161790556128a8565b6010546040517f3b4f1b2600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88811660048301527bffffffffffffffffffffffffffffffffffffffffffffffffffffffff90921660248201819052935090851690633b4f1b2690604401600060405180830381600087803b158015612aed57600080fd5b505af1158015612b01573d6000803e3d6000fd5b505050506000827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1684612b319190613c76565b9050827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f3a8a89b59a31c39a36febecb987e0657ab7b7c73b60ebacb44dcb9886c2d5c8a83604051612b9a91815260200190565b60405180910390a350600101612851565b5073ffffffffffffffffffffffffffffffffffffffff851660009081526012602052604081208054869290612be1908490613c76565b90915550505050505050565b6000600f8054612bfc90613b43565b80601f0160208091040260200160405190810160405280929190818152602001828054612c2890613b43565b8015612c755780601f10612c4a57610100808354040283529160200191612c75565b820191906000526020600020905b815481529060010190602001808311612c5857829003601f168201915b50508551939450612c9193600f93506020870192509050613471565b507fc9c7c3fe08b88b4df9d4d47ef47d2c43d55c025a0ba88ca442580ed9e7348a168183604051612cc3929190614085565b60405180910390a15050565b6000612cf97f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a015490565b15612d60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552433732313a20616c726561647920696e697469616c697a656400000000006044820152606401610bc0565b337fe9fcff60011c1a99f7b7244d1f2d9da93d79ea8ef3654ce590d775575255b2bd8190557fb56711ba6bd3ded7639fc335ee7524fe668a79d7558c85992e3f8494cf7727775473ffffffffffffffffffffffffffffffffffffffff8116612e24576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f484f4c4f47524150483a206f776e6572206e6f742073657400000000000000006044820152606401610bc0565b612e4d60017f4e5f991bca30eca2d4643aaefa807e88f96a4a97398933d572a3c0d973004a0155565b507f4ddf47d4000000000000000000000000000000000000000000000000000000009392505050565b6060612e9b83836040518060600160405280602781526020016144e160279139612eba565b9392505050565b60606000612eaf83612f3f565b9050612e9b81613068565b60606000808573ffffffffffffffffffffffffffffffffffffffff1685604051612ee491906140aa565b600060405180830381855af49150503d8060008114612f1f576040519150601f19603f3d011682016040523d82523d6000602084013e612f24565b606091505b5091509150612f3586838387613099565b9695505050505050565b606080606060008461014001511115612f8257612f60846101400151613139565b604051602001612f7091906140c6565b60405160208183030381529060405291505b612f90846101200151613139565b845160208087015160808801516040808a015160a08b01519151969750612fbe9688958a959493910161410b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905260c086015160e0870151610100880151606089015189519495613014958891602001614291565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290526130509291602001614435565b60405160208183030381529060405292505050919050565b6060613073826131f7565b604051602001613083919061445b565b6040516020818303038152906040529050919050565b6060831561312f5782516000036131285773ffffffffffffffffffffffffffffffffffffffff85163b613128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610bc0565b508161178f565b61178f838361334a565b606060006131468361338e565b600101905060008167ffffffffffffffff811115613166576131666135d0565b6040519080825280601f01601f191660200182016040528015613190576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a850494508461319a57509392505050565b6060815160000361321657505060408051602081019091526000815290565b60006040518060600160405280604081526020016144a160409139905060006003845160026132459190613c76565b61324f9190613ca5565b61325a906004613c39565b67ffffffffffffffff811115613272576132726135d0565b6040519080825280601f01601f19166020018201604052801561329c576020820181803683370190505b509050600182016020820185865187015b80821015613308576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f81168501518453506001830192506132ad565b505060038651066001811461332457600281146133375761333f565b603d6001830353603d600283035361333f565b603d60018303535b509195945050505050565b81511561335a5781518083602001fd5b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc091906135bd565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106133d7577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310613403576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061342157662386f26fc10000830492506010015b6305f5e1008310613439576305f5e100830492506008015b612710831061344d57612710830492506004015b6064831061345f576064830492506002015b600a831061346b576001015b92915050565b82805461347d90613b43565b90600052602060002090601f01602090048101928261349f57600085556134e5565b82601f106134b857805160ff19168380011785556134e5565b828001600101855582156134e5579182015b828111156134e55782518255916020019190600101906134ca565b506109b69291505b808211156109b657600081556001016134ed565b60006020828403121561351357600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114612e9b57600080fd5b60005b8381101561355e578181015183820152602001613546565b8381111561356d576000848401525b50505050565b6000815180845261358b816020860160208601613543565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612e9b6020830184613573565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051610160810167ffffffffffffffff81118282101715613623576136236135d0565b60405290565b6040516101a0810167ffffffffffffffff81118282101715613623576136236135d0565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715613694576136946135d0565b604052919050565b600067ffffffffffffffff8211156136b6576136b66135d0565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126136f357600080fd5b81356137066137018261369c565b61364d565b81815284602083860101111561371b57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561374a57600080fd5b813567ffffffffffffffff8082111561376257600080fd5b90830190610160828603121561377757600080fd5b61377f6135ff565b82358281111561378e57600080fd5b61379a878286016136e2565b8252506020830135828111156137af57600080fd5b6137bb878286016136e2565b6020830152506040830135828111156137d357600080fd5b6137df878286016136e2565b6040830152506060830135828111156137f757600080fd5b613803878286016136e2565b60608301525060808301358281111561381b57600080fd5b613827878286016136e2565b60808301525060a08301358281111561383f57600080fd5b61384b878286016136e2565b60a08301525060c08301358281111561386357600080fd5b61386f878286016136e2565b60c08301525060e08301358281111561388757600080fd5b613893878286016136e2565b60e08301525061010080840135838111156138ad57600080fd5b6138b9888287016136e2565b918301919091525061012083810135908201526101409283013592810192909252509392505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461188657600080fd5b60006020828403121561391657600080fd5b8135612e9b816138e2565b6000806040838503121561393457600080fd5b823561393f816138e2565b946020939093013593505050565b60006020828403121561395f57600080fd5b813567ffffffffffffffff81111561397657600080fd5b61178f848285016136e2565b6000602080838503121561399557600080fd5b823567ffffffffffffffff808211156139ad57600080fd5b818501915085601f8301126139c157600080fd5b8135818111156139d3576139d36135d0565b8060051b6139e285820161364d565b91825283810185019185810190898411156139fc57600080fd5b86860192505b83831015613a3857823585811115613a1a5760008081fd5b613a288b89838a01016136e2565b8352509186019190860190613a02565b9998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015613ab8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452613aa6858351613573565b94509285019290850190600101613a6c565b5092979650505050505050565b600060208284031215613ad757600080fd5b5035919050565b6cffffffffffffffffffffffffff8116811461188657600080fd5b62ffffff8116811461188657600080fd5b60008060408385031215613b1d57600080fd5b8235613b2881613ade565b91506020830135613b3881613af9565b809150509250929050565b600181811c90821680613b5757607f821691505b602082108103611962577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600082601f830112613ba157600080fd5b8151613baf6137018261369c565b818152846020838601011115613bc457600080fd5b61178f826020830160208701613543565b600060208284031215613be757600080fd5b815167ffffffffffffffff811115613bfe57600080fd5b61178f84828501613b90565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613c7157613c71613c0a565b500290565b60008219821115613c8957613c89613c0a565b500190565b600082821015613ca057613ca0613c0a565b500390565b600082613cdb577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b805164ffffffffff8116811461268f57600080fd5b805163ffffffff8116811461268f57600080fd5b805161268f81613af9565b805161268f816138e2565b600060408284031215613d3157600080fd5b6040516040810181811067ffffffffffffffff82111715613d5457613d546135d0565b80604052508091508251613d6781613ade565b81526020830151613d7781613af9565b6020919091015292915050565b600060208284031215613d9657600080fd5b815167ffffffffffffffff80821115613dae57600080fd5b908301906101c08286031215613dc357600080fd5b613dcb613629565b825182811115613dda57600080fd5b613de687828601613b90565b825250602083015182811115613dfb57600080fd5b613e0787828601613b90565b602083015250604083015182811115613e1f57600080fd5b613e2b87828601613b90565b604083015250606083015182811115613e4357600080fd5b613e4f87828601613b90565b606083015250608083015182811115613e6757600080fd5b613e7387828601613b90565b608083015250613e8560a08401613ce0565b60a0820152613e9660c08401613cf5565b60c0820152613ea760e08401613d09565b60e0820152610100613eba818501613d14565b90820152610120613ecc848201613d14565b90820152610140613ede848201613d14565b908201526101608381015183811115613ef657600080fd5b613f0288828701613b90565b8284015250506101809150613f1986838501613d1f565b91810191909152949350505050565b600063ffffffff80831681851681830481118215151615613f4b57613f4b613c0a565b02949350505050565b600064ffffffffff808316818516808303821115613f7457613f74613c0a565b01949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151613fbe818560208601613543565b9290920192915050565b60008351613fda818460208801613543565b60609390931b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190920190815260140192915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361404357614043613c0a565b5060010190565b60006020828403121561405c57600080fd5b81518015158114612e9b57600080fd5b60006020828403121561407e57600080fd5b5051919050565b6040815260006140986040830185613573565b8281036020840152611fd88185613573565b600082516140bc818460208701613543565b9190910192915050565b7f2f000000000000000000000000000000000000000000000000000000000000008152600082516140fe816001850160208701613543565b9190910160010192915050565b7f7b226e616d65223a20220000000000000000000000000000000000000000000081526000885161414381600a850160208d01613543565b7f2000000000000000000000000000000000000000000000000000000000000000600a91840191820152885161418081600b840160208d01613543565b885191019061419681600b840160208c01613543565b7f222c20226465736372697074696f6e223a202200000000000000000000000000600b929091019182015286516141d481601e840160208b01613543565b7f222c202265787465726e616c5f75726c223a2022000000000000000000000000601e92909101918201528551614212816032840160208a01613543565b61428261427c61425361424d6032858701017f222c2022696d616765223a2022000000000000000000000000000000000000008152600d0190565b89613fac565b7f222c2022656e637279707465645f6d656469615f75726c223a202200000000008152601b0190565b86613fac565b9b9a5050505050505050505050565b7f222c202264656372797074696f6e5f6b6579223a2022000000000000000000008152600087516142c9816016850160208c01613543565b7f222c202268617368223a202200000000000000000000000000000000000000006016918401918201528751614306816022840160208c01613543565b7f222c20226465637279707465645f6d656469615f75726c223a2022000000000060229290910191820152865161434481603d840160208b01613543565b7f222c2022616e696d6174696f6e5f75726c223a20220000000000000000000000603d92909101918201528551614382816052840160208a01613543565b7f222c202270726f70657274696573223a207b226e756d626572223a20000000006052929091019182015284516143c081606e840160208901613543565b6144276143fe6143f8606e848601017f2c20226e616d65223a20220000000000000000000000000000000000000000008152600b0190565b87613fac565b7f227d7d0000000000000000000000000000000000000000000000000000000000815260030190565b9a9950505050505050505050565b60008351614447818460208801613543565b835190830190613f74818360208801613543565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c00000081526000825161449381601d850160208701613543565b91909101601d019291505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c634300080d000a
🤖 Code Reader

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

Custom Contract ABI

                            

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.