ETH Price: $2,323.19 (+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

Please try again later

Parent Transaction Hash Block From To
View All Internal Transactions

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

Contract Name

CompanionNFT

Compiler Version
v0.8.22+commit.4fc1097e
Optimization Enabled
Yes with 200 runs
Other Settings
paris 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":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ERC1155InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC1155InvalidApprover","type":"error"},{"inputs":[{"internalType":"uint256","name":"idsLength","type":"uint256"},{"internalType":"uint256","name":"valuesLength","type":"uint256"}],"name":"ERC1155InvalidArrayLength","type":"error"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"ERC1155InvalidOperator","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC1155InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC1155InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"ERC1155MissingApprovalForAll","type":"error"},{"inputs":[],"name":"EnforcedPause","type":"error"},{"inputs":[],"name":"ExpectedPause","type":"error"},{"inputs":[{"internalType":"uint256","name":"random","type":"uint256"}],"name":"GenerateRandomTypeError","type":"error"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"InvalidRequest","type":"error"},{"inputs":[],"name":"NotEnoughFee","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[],"name":"RequestExecuted","type":"error"},{"inputs":[],"name":"TransferMintFeeError","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"inputs":[],"name":"ZeroMintFee","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"name","type":"string"},{"indexed":false,"internalType":"string","name":"symbol","type":"string"},{"indexed":false,"internalType":"string","name":"contractURI","type":"string"}],"name":"ContractMetadataUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"feeRecipient","type":"address"}],"name":"FeeRecipientUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"mintFee","type":"uint256"}],"name":"MintFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint64","name":"sequenceNumber","type":"uint64"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"rnd","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"price","type":"uint256"}],"name":"MintRequestExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"uint64","name":"sequenceNumber","type":"uint64"}],"name":"MintRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256[12]","name":"rates","type":"uint256[12]"},{"indexed":false,"internalType":"uint256","name":"totalWeight","type":"uint256"}],"name":"RateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"indexed":false,"internalType":"uint256[]","name":"values","type":"uint256[]"}],"name":"TransferBatch","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"TransferSingle","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"value","type":"string"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"URI","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint64","name":"sequence","type":"uint64"},{"internalType":"address","name":"provider","type":"address"},{"internalType":"bytes32","name":"randomNumber","type":"bytes32"}],"name":"_entropyCallback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"}],"name":"balanceOfBatch","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"companionInfos","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"rate","type":"uint256"},{"internalType":"uint256","name":"currentMinted","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"entropy","outputs":[{"internalType":"contract IEntropyV2","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"exists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeRecipient","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCompanionInfos","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"rate","type":"uint256"},{"internalType":"uint256","name":"currentMinted","type":"uint256"}],"internalType":"struct CompanionNFT.CompanionInfo[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOracleFee","outputs":[{"internalType":"uint256","name":"fee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"string","name":"contractURI","type":"string"},{"internalType":"string","name":"tokenURI","type":"string"},{"internalType":"uint256[12]","name":"rates","type":"uint256[12]"},{"internalType":"address","name":"feeRecipient","type":"address"},{"internalType":"uint256","name":"mintFee","type":"uint256"},{"internalType":"address","name":"entropy","type":"address"},{"internalType":"address","name":"defaultAdmin","type":"address"},{"internalType":"address","name":"pauser","type":"address"}],"internalType":"struct CompanionNFT.InitParams","name":"params","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mintFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint64","name":"","type":"uint64"}],"name":"mintRequests","outputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint64","name":"sequenceNumber","type":"uint64"},{"internalType":"bool","name":"isExecuted","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"recoverWrongToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"callerConfirmation","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"requestMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"values","type":"uint256[]"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeBatchTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"string","name":"_contractURI","type":"string"}],"name":"setContractMetadata","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"newuri","type":"string"}],"name":"setURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"supported","type":"bool"}],"stateMutability":"view","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":"uint256","name":"id","type":"uint256"}],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalWeight","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_feeRecipient","type":"address"}],"name":"updateFeeRecipient","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_mintFee","type":"uint256"}],"name":"updateMintFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[12]","name":"rates","type":"uint256[12]"}],"name":"updateRates","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"uri","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"}]
60806040523480156200001157600080fd5b506200001c62000022565b620000d6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000735760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d35780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6134f780620000e66000396000f3fe6080604052600436106102455760003560e01c806352a5f1f811610139578063ae3cee0e116100b6578063e63ab1e91161007a578063e63ab1e914610775578063e8a3d48514610797578063e985e9c5146107ac578063ee7ef678146107cc578063f160d36914610823578063f242432a1461084357600080fd5b8063ae3cee0e14610647578063bd85b03914610667578063c3982584146106b3578063d547741f14610735578063e4d73e0f1461075557600080fd5b806395d89b41116100fd57806395d89b41146105d257806396c82e57146105e7578063a217fddf146105fd578063a22cb46514610612578063ade1c5801461063257600080fd5b806352a5f1f8146105385780635c975abb1461055857806384017e521461057d5780638456cb591461059d57806391d14854146105b257600080fd5b80632a5ac764116101c7578063469048401161018b578063469048401461045257806347ce07cc1461048a57806349733d04146104aa5780634e1273f4146104bd5780634f558e79146104ea57600080fd5b80632a5ac764146103bd5780632eb2c2d6146103dd5780632f2ff15d146103fd57806336568abe1461041d5780633f4ba83a1461043d57600080fd5b80630e89341c1161020e5780630e89341c1461031157806313966db51461033157806317e87c251461034757806318160ddd14610369578063248a9ca31461039d57600080fd5b8062fdd58e1461024a578063018bcf5c1461027d57806301ffc9a71461029f57806302fe5305146102cf57806306fdde03146102ef575b600080fd5b34801561025657600080fd5b5061026a6102653660046127d1565b610863565b6040519081526020015b60405180910390f35b34801561028957600080fd5b5061029d6102983660046127fb565b61089a565b005b3480156102ab57600080fd5b506102bf6102ba366004612833565b610a39565b6040519015158152602001610274565b3480156102db57600080fd5b5061029d6102ea36600461292e565b610a44565b3480156102fb57600080fd5b50610304610a58565b60405161027491906129ba565b34801561031d57600080fd5b5061030461032c3660046129cd565b610ae6565b34801561033d57600080fd5b5061026a60035481565b34801561035357600080fd5b5061035c610b27565b60405161027491906129e6565b34801561037557600080fd5b507f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e28015461026a565b3480156103a957600080fd5b5061026a6103b83660046129cd565b610bf0565b3480156103c957600080fd5b5061029d6103d8366004612a3f565b610c12565b3480156103e957600080fd5b5061029d6103f8366004612b58565b610c85565b34801561040957600080fd5b5061029d610418366004612c01565b610cec565b34801561042957600080fd5b5061029d610438366004612c01565b610d08565b34801561044957600080fd5b5061029d610d3b565b34801561045e57600080fd5b50600454610472906001600160a01b031681565b6040516001600160a01b039091168152602001610274565b34801561049657600080fd5b50600554610472906001600160a01b031681565b61029d6104b83660046129cd565b610d5e565b3480156104c957600080fd5b506104dd6104d8366004612c2d565b61100c565b6040516102749190612d28565b3480156104f657600080fd5b506102bf6105053660046129cd565b60009081527f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e28006020526040902054151590565b34801561054457600080fd5b5061029d610553366004612d50565b6110d8565b34801561056457600080fd5b506000805160206134828339815191525460ff166102bf565b34801561058957600080fd5b5061029d6105983660046129cd565b6111b3565b3480156105a957600080fd5b5061029d61121c565b3480156105be57600080fd5b506102bf6105cd366004612c01565b61123c565b3480156105de57600080fd5b50610304611274565b3480156105f357600080fd5b5061026a60065481565b34801561060957600080fd5b5061026a600081565b34801561061e57600080fd5b5061029d61062d366004612d9c565b611281565b34801561063e57600080fd5b5061026a61128c565b34801561065357600080fd5b5061029d610662366004612e40565b611308565b34801561067357600080fd5b5061026a6106823660046129cd565b60009081527f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e2800602052604090205490565b3480156106bf57600080fd5b506107066106ce366004612e5d565b6007602052600090815260409020546001600160a01b03811690600160a01b81046001600160401b031690600160e01b900460ff1683565b604080516001600160a01b0390941684526001600160401b039092166020840152151590820152606001610274565b34801561074157600080fd5b5061029d610750366004612c01565b6113be565b34801561076157600080fd5b5061029d610770366004612e7a565b6113da565b34801561078157600080fd5b5061026a60008051602061342283398151915281565b3480156107a357600080fd5b506103046116bb565b3480156107b857600080fd5b506102bf6107c7366004612fba565b6116c8565b3480156107d857600080fd5b506108086107e73660046129cd565b60086020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610274565b34801561082f57600080fd5b5061029d61083e3660046127fb565b611715565b34801561084f57600080fd5b5061029d61085e366004612fe4565b611792565b6000818152600080516020613442833981519152602090815260408083206001600160a01b03861684529091529020545b92915050565b60006108a5816117f1565b6001600160a01b0382166109545747801561094f57604051600090339083908381818185875af1925050503d80600081146108fc576040519150601f19603f3d011682016040523d82523d6000602084013e610901565b606091505b505090508061094d5760405162461bcd60e51b8152602060048201526013602482015272115512081d1c985b9cd9995c8819985a5b1959606a1b60448201526064015b60405180910390fd5b505b505050565b6040516370a0823160e01b81523060048201526001600160a01b0383169063a9059cbb90339083906370a0823190602401602060405180830381865afa1580156109a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c69190613048565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610a11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094f9190613061565b5050565b6000610894826117fb565b6000610a4f816117f1565b610a3582611820565b60008054610a659061307e565b80601f0160208091040260200160405190810160405280929190818152602001828054610a919061307e565b8015610ade5780601f10610ab357610100808354040283529160200191610ade565b820191906000526020600020905b815481529060010190602001808311610ac157829003601f168201915b505050505081565b60606000610af38361185a565b905080610aff8461191f565b604051602001610b109291906130b2565b604051602081830303815290604052915050919050565b60408051600c8082526101a0820190925260609160009190816020015b610b6860405180606001604052806000815260200160008152602001600081525090565b815260200190600190039081610b4457905050905060005b8151811015610bea57600860008281526020019081526020016000206040518060600160405290816000820154815260200160018201548152602001600282015481525050828281518110610bd757610bd76130f1565b6020908102919091010152600101610b80565b50919050565b6000908152600080516020613462833981519152602052604090206001015490565b6000610c1d816117f1565b6000610c29858261314f565b506001610c36848261314f565b506002610c43838261314f565b507fbbb5af95134494bd1d35d31c1e3850544db18dda99655725b6c0b545d572a08a848484604051610c779392919061320e565b60405180910390a150505050565b336001600160a01b0386168114801590610ca65750610ca486826116c8565b155b15610cd75760405163711bec9160e11b81526001600160a01b03808316600483015287166024820152604401610944565b610ce486868686866119b1565b505050505050565b610cf582610bf0565b610cfe816117f1565b61094d8383611a18565b6001600160a01b0381163314610d315760405163334bd91960e11b815260040160405180910390fd5b61094f8282611abd565b600080516020613422833981519152610d53816117f1565b610d5b611b39565b50565b610d66611b99565b610d6e611bcc565b600354600554604080516341025b3d60e11b81529051600093926001600160a01b031691638204b67a9160048083019260209291908290030181865afa158015610dbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de09190613251565b6001600160801b0316610df39190613290565b9050610dff82826132a3565b341015610e1f576040516334472ad760e11b815260040160405180910390fd5b6004546003546000916001600160a01b031690610e3d9085906132a3565b604051600081818185875af1925050503d8060008114610e79576040519150601f19603f3d011682016040523d82523d6000602084013e610e7e565b606091505b5050905080610ea05760405163a25fad3360e01b815260040160405180910390fd5b60005b83811015610ff257600554604080516341025b3d60e11b815290516000926001600160a01b031691637b43155d918391638204b67a9160048083019260209291908290030181865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190613251565b6001600160801b03166040518263ffffffff1660e01b815260040160206040518083038185885af1158015610f5a573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7f91906132ba565b6001600160401b0381166000818152600760205260408082208054336001600160e01b0319909116600160a01b86026001600160a01b031916178117825591519495509390917f443a04e0e8473b1953759330661fba17954caf7e1462044e16472108918e50bc91a35050600101610ea3565b505050610d5b60016000805160206134a283398151915255565b6060815183511461103d5781518351604051635b05999160e01b815260048101929092526024820152604401610944565b600083516001600160401b0381111561105857611058612850565b604051908082528060200260200182016040528015611081578160200160208202803683370190505b50905060005b84518110156110d0576020808202860101516110ab90602080840287010151610863565b8282815181106110bd576110bd6130f1565b6020908102919091010152600101611087565b509392505050565b60006110ec6005546001600160a01b031690565b90506001600160a01b0381166111445760405162461bcd60e51b815260206004820152601760248201527f456e74726f70792061646472657373206e6f74207365740000000000000000006044820152606401610944565b336001600160a01b038216146111a85760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920456e74726f70792063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610944565b61094d848484611c18565b60006111be816117f1565b816000036111df57604051636debca3960e11b815260040160405180910390fd5b60038290556040518281527f38fbb1c8b109c430f0c030e7ed076cf5611a307773a4e8e365601e8f8bceaec6906020015b60405180910390a15050565b600080516020613422833981519152611234816117f1565b610d5b611deb565b6000918252600080516020613462833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60018054610a659061307e565b610a35338383611e34565b600554604080516341025b3d60e11b815290516000926001600160a01b031691638204b67a9160048083019260209291908290030181865afa1580156112d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112fa9190613251565b6001600160801b0316905090565b6000611313816117f1565b600060068190555b600c81101561138a578281600c8110611336576113366130f1565b602002015160086000838152602001908152602001600020600101819055508281600c8110611367576113676130f1565b60200201516006600082825461137d9190613290565b909155505060010161131b565b507f69ba9a9605ae45ddfed4d42bbb14849259d712cbdd72dcedd490db11985f9774826006546040516112109291906132d7565b6113c782610bf0565b6113d0816117f1565b61094d8383611abd565b60006113e4611edc565b805490915060ff600160401b82041615906001600160401b031660008115801561140b5750825b90506000826001600160401b031660011480156114275750303b155b905081158015611435575080155b156114535760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561147d57845460ff60401b1916600160401b1785555b8560c001516000036114a257604051636debca3960e11b815260040160405180910390fd5b60a08601516001600160a01b03166114cd5760405163d92e233d60e01b815260040160405180910390fd5b60e08601516001600160a01b03166114f85760405163d92e233d60e01b815260040160405180910390fd5b6115058660600151611f05565b61150d611f16565b611515611f16565b61151d611f16565b611525611f1e565b6115376000801b876101000151611a18565b50611555600080516020613422833981519152876101200151611a18565b5060005b600c8110156115f9576040518060600160405280828152602001886080015183600c8110611589576115896130f1565b60209081029190910151825260009181018290528382526008815260409182902083518155908301516001820155910151600290910155608087015181600c81106115d6576115d66130f1565b6020020151600660008282546115ec9190613290565b9091555050600101611559565b508551600090611609908261314f565b50602086015160019061161c908261314f565b50604086015160029061162f908261314f565b5060c086015160035560a0860151600480546001600160a01b039283166001600160a01b03199182161790915560e0880151600580549190931691161790558315610ce457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b60028054610a659061307e565b6001600160a01b0391821660009081527f88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c45016020908152604080832093909416825291909152205460ff1690565b6000611720816117f1565b6001600160a01b0382166117475760405163d92e233d60e01b815260040160405180910390fd5b600480546001600160a01b0319166001600160a01b0384169081179091556040517f7a7b5a0a132f9e0581eb8527f66eae9ee89c2a3e79d4ac7e41a1f1f4d48a7fc290600090a25050565b336001600160a01b03861681148015906117b357506117b186826116c8565b155b156117e45760405163711bec9160e11b81526001600160a01b03808316600483015287166024820152604401610944565b610ce48686868686611f2e565b610d5b8133611fbc565b60006001600160e01b03198216637965db0b60e01b1480610894575061089482611ff5565b6000805160206134428339815191527f88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c450261094f838261314f565b7f88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c45028054606091600080516020613442833981519152916118999061307e565b80601f01602080910402602001604051908101604052809291908181526020018280546118c59061307e565b80156119125780601f106118e757610100808354040283529160200191611912565b820191906000526020600020905b8154815290600101906020018083116118f557829003601f168201915b5050505050915050919050565b6060600061192c83612045565b60010190506000816001600160401b0381111561194b5761194b612850565b6040519080825280601f01601f191660200182016040528015611975576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461197f57509392505050565b6001600160a01b0384166119db57604051632bfa23e760e11b815260006004820152602401610944565b6001600160a01b038516611a0457604051626a0d4560e21b815260006004820152602401610944565b611a11858585858561211d565b5050505050565b6000600080516020613462833981519152611a33848461123c565b611ab3576000848152602082815260408083206001600160a01b03871684529091529020805460ff19166001179055611a693390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610894565b6000915050610894565b6000600080516020613462833981519152611ad8848461123c565b15611ab3576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610894565b611b41612170565b600080516020613482833981519152805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a150565b6000805160206134828339815191525460ff1615611bca5760405163d93c066560e01b815260040160405180910390fd5b565b6000805160206134a2833981519152805460011901611bfe57604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b60016000805160206134a283398151915255565b611c20611bcc565b6001600160401b03831660009081526007602052604090208054600160e01b900460ff1615611c625760405163d4ec888360e01b815260040160405180910390fd5b80546001600160a01b0316611c8a576040516341abc80160e01b815260040160405180910390fd5b805460ff60e01b1916600160e01b178155600654600090611cab9084613311565b905060008060005b600c811015611d1e576000818152600860205260409020600101549091508190611cdd9084613290565b9250828410611d1e5780600b148015611cf557508284115b15611d16576040516358083b2160e11b815260048101859052602401610944565b600101611cb3565b5060008181526008602052604081206002810180549192600192611d43908490613290565b909155505084548154604080516020810190915260008152611d72926001600160a01b031691906001906121a0565b845481546003546040805188815260208101939093528201526001600160a01b03909116906001600160401b038a16907ffbbad0b975c4cbec60560cd4176fb9e9db622bbdd6cde2fa87fff162cd8745589060600160405180910390a3505050505061094f60016000805160206134a283398151915255565b611df3611b99565b600080516020613482833981519152805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833611b7b565b6000805160206134428339815191526001600160a01b038316611e6c5760405162ced3e160e81b815260006004820152602401610944565b6001600160a01b038481166000818152600184016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610894565b611f0d6121fd565b610d5b81612222565b611bca6121fd565b611f266121fd565b611bca612233565b6001600160a01b038416611f5857604051632bfa23e760e11b815260006004820152602401610944565b6001600160a01b038516611f8157604051626a0d4560e21b815260006004820152602401610944565b60408051600180825260208201869052818301908152606082018590526080820190925290611fb3878784848761211d565b50505050505050565b611fc6828261123c565b610a355760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610944565b60006001600160e01b03198216636cdb3d1360e11b148061202657506001600160e01b031982166303a24d0760e21b145b8061089457506301ffc9a760e01b6001600160e01b0319831614610894565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106120845772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106120b0576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106120ce57662386f26fc10000830492506010015b6305f5e10083106120e6576305f5e100830492506008015b61271083106120fa57612710830492506004015b6064831061210c576064830492506002015b600a83106108945760010192915050565b6121298585858561223b565b6001600160a01b03841615611a115782513390600103612162576020848101519084015161215b838989858589612247565b5050610ce4565b610ce481878787878761236b565b6000805160206134828339815191525460ff16611bca57604051638dfc202b60e01b815260040160405180910390fd5b6001600160a01b0384166121ca57604051632bfa23e760e11b815260006004820152602401610944565b60408051600180825260208201869052818301908152606082018590526080820190925290610ce460008784848761211d565b612205612454565b611bca57604051631afcd79f60e31b815260040160405180910390fd5b61222a6121fd565b610d5b81611820565b611c046121fd565b61094d8484848461246e565b6001600160a01b0384163b15610ce45760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061228b9089908990889088908890600401613333565b6020604051808303816000875af19250505080156122c6575060408051601f3d908101601f191682019092526122c391810190613378565b60015b61232f573d8080156122f4576040519150601f19603f3d011682016040523d82523d6000602084013e6122f9565b606091505b50805160000361232757604051632bfa23e760e11b81526001600160a01b0386166004820152602401610944565b805160208201fd5b6001600160e01b0319811663f23a6e6160e01b14611fb357604051632bfa23e760e11b81526001600160a01b0386166004820152602401610944565b6001600160a01b0384163b15610ce45760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906123af9089908990889088908890600401613395565b6020604051808303816000875af19250505080156123ea575060408051601f3d908101601f191682019092526123e791810190613378565b60015b612418573d8080156122f4576040519150601f19603f3d011682016040523d82523d6000602084013e6122f9565b6001600160e01b0319811663bc197c8160e01b14611fb357604051632bfa23e760e11b81526001600160a01b0386166004820152602401610944565b600061245e611edc565b54600160401b900460ff16919050565b7f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e280061249b8585858561257e565b6001600160a01b03851661251c576000805b8451811015612500576020818102858101820151908701820151600090815291859052604082208054919283926124e5908490613290565b909155506124f590508184613290565b9250506001016124ad565b50808260010160008282546125159190613290565b9091555050505b6001600160a01b038416611a11576000805b845181101561256a576020818102858101820151908701820151600090815291859052604090912080548290039055919091019060010161252e565b506001820180549190910390555050505050565b612586611b99565b61094d848484846000600080516020613442833981519152905081518351146125cf5782518251604051635b05999160e01b815260048101929092526024820152604401610944565b3360005b84518110156126d5576020818102868101820151908601909101516001600160a01b03891615612686576000828152602086815260408083206001600160a01b038d1684529091529020548181101561265f576040516303dee4c560e01b81526001600160a01b038b166004820152602481018290526044810183905260648101849052608401610944565b6000838152602087815260408083206001600160a01b038e16845290915290209082900390555b6001600160a01b038816156126cb576000828152602086815260408083206001600160a01b038c168452909152812080548392906126c5908490613290565b90915550505b50506001016125d3565b5083516001036127565760208401516000906020850151909150866001600160a01b0316886001600160a01b0316846001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628585604051612747929190918252602082015260400190565b60405180910390a45050610ce4565b846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516127a59291906133f3565b60405180910390a4505050505050565b80356001600160a01b03811681146127cc57600080fd5b919050565b600080604083850312156127e457600080fd5b6127ed836127b5565b946020939093013593505050565b60006020828403121561280d57600080fd5b612816826127b5565b9392505050565b6001600160e01b031981168114610d5b57600080fd5b60006020828403121561284557600080fd5b81356128168161281d565b634e487b7160e01b600052604160045260246000fd5b60405161014081016001600160401b038111828210171561288957612889612850565b60405290565b604051601f8201601f191681016001600160401b03811182821017156128b7576128b7612850565b604052919050565b600082601f8301126128d057600080fd5b81356001600160401b038111156128e9576128e9612850565b6128fc601f8201601f191660200161288f565b81815284602083860101111561291157600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561294057600080fd5b81356001600160401b0381111561295657600080fd5b612962848285016128bf565b949350505050565b60005b8381101561298557818101518382015260200161296d565b50506000910152565b600081518084526129a681602086016020860161296a565b601f01601f19169290920160200192915050565b602081526000612816602083018461298e565b6000602082840312156129df57600080fd5b5035919050565b602080825282518282018190526000919060409081850190868401855b82811015612a325781518051855286810151878601528501518585015260609093019290850190600101612a03565b5091979650505050505050565b600080600060608486031215612a5457600080fd5b83356001600160401b0380821115612a6b57600080fd5b612a77878388016128bf565b94506020860135915080821115612a8d57600080fd5b612a99878388016128bf565b93506040860135915080821115612aaf57600080fd5b50612abc868287016128bf565b9150509250925092565b60006001600160401b03821115612adf57612adf612850565b5060051b60200190565b600082601f830112612afa57600080fd5b81356020612b0f612b0a83612ac6565b61288f565b8083825260208201915060208460051b870101935086841115612b3157600080fd5b602086015b84811015612b4d5780358352918301918301612b36565b509695505050505050565b600080600080600060a08688031215612b7057600080fd5b612b79866127b5565b9450612b87602087016127b5565b935060408601356001600160401b0380821115612ba357600080fd5b612baf89838a01612ae9565b94506060880135915080821115612bc557600080fd5b612bd189838a01612ae9565b93506080880135915080821115612be757600080fd5b50612bf4888289016128bf565b9150509295509295909350565b60008060408385031215612c1457600080fd5b82359150612c24602084016127b5565b90509250929050565b60008060408385031215612c4057600080fd5b82356001600160401b0380821115612c5757600080fd5b818501915085601f830112612c6b57600080fd5b81356020612c7b612b0a83612ac6565b82815260059290921b84018101918181019089841115612c9a57600080fd5b948201945b83861015612cbf57612cb0866127b5565b82529482019490820190612c9f565b96505086013592505080821115612cd557600080fd5b50612ce285828601612ae9565b9150509250929050565b60008151808452602080850194506020840160005b83811015612d1d57815187529582019590820190600101612d01565b509495945050505050565b6020815260006128166020830184612cec565b6001600160401b0381168114610d5b57600080fd5b600080600060608486031215612d6557600080fd5b8335612d7081612d3b565b9250612d7e602085016127b5565b9150604084013590509250925092565b8015158114610d5b57600080fd5b60008060408385031215612daf57600080fd5b612db8836127b5565b91506020830135612dc881612d8e565b809150509250929050565b600082601f830112612de457600080fd5b6040516101808082018281106001600160401b0382111715612e0857612e08612850565b60405283018185821115612e1b57600080fd5b845b82811015612e35578035825260209182019101612e1d565b509195945050505050565b60006101808284031215612e5357600080fd5b6128168383612dd3565b600060208284031215612e6f57600080fd5b813561281681612d3b565b600060208284031215612e8c57600080fd5b81356001600160401b0380821115612ea357600080fd5b908301906102a08286031215612eb857600080fd5b612ec0612866565b823582811115612ecf57600080fd5b612edb878286016128bf565b825250602083013582811115612ef057600080fd5b612efc878286016128bf565b602083015250604083013582811115612f1457600080fd5b612f20878286016128bf565b604083015250606083013582811115612f3857600080fd5b612f44878286016128bf565b606083015250612f578660808501612dd3565b6080820152612f6961020084016127b5565b60a082015261022083013560c0820152612f8661024084016127b5565b60e0820152612f9861026084016127b5565b610100820152612fab61028084016127b5565b61012082015295945050505050565b60008060408385031215612fcd57600080fd5b612fd6836127b5565b9150612c24602084016127b5565b600080600080600060a08688031215612ffc57600080fd5b613005866127b5565b9450613013602087016127b5565b9350604086013592506060860135915060808601356001600160401b0381111561303c57600080fd5b612bf4888289016128bf565b60006020828403121561305a57600080fd5b5051919050565b60006020828403121561307357600080fd5b815161281681612d8e565b600181811c9082168061309257607f821691505b602082108103610bea57634e487b7160e01b600052602260045260246000fd5b600083516130c481846020880161296a565b8351908301906130d881836020880161296a565b64173539b7b760d91b9101908152600501949350505050565b634e487b7160e01b600052603260045260246000fd5b601f82111561094f576000816000526020600020601f850160051c810160208610156131305750805b601f850160051c820191505b81811015610ce45782815560010161313c565b81516001600160401b0381111561316857613168612850565b61317c81613176845461307e565b84613107565b602080601f8311600181146131b157600084156131995750858301515b600019600386901b1c1916600185901b178555610ce4565b600085815260208120601f198616915b828110156131e0578886015182559484019460019091019084016131c1565b50858210156131fe5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b606081526000613221606083018661298e565b8281036020840152613233818661298e565b90508281036040840152613247818561298e565b9695505050505050565b60006020828403121561326357600080fd5b81516001600160801b038116811461281657600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156108945761089461327a565b80820281158282048414176108945761089461327a565b6000602082840312156132cc57600080fd5b815161281681612d3b565b6101a08101818460005b600c8110156133005781518352602092830192909101906001016132e1565b505050826101808301529392505050565b60008261332e57634e487b7160e01b600052601260045260246000fd5b500690565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061336d9083018461298e565b979650505050505050565b60006020828403121561338a57600080fd5b81516128168161281d565b6001600160a01b0386811682528516602082015260a0604082018190526000906133c190830186612cec565b82810360608401526133d38186612cec565b905082810360808401526133e7818561298e565b98975050505050505050565b6040815260006134066040830185612cec565b82810360208401526134188185612cec565b9594505050505056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c450002dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00a2646970667358221220fedcdf01dbd133ceb45ed3f183efb9124a81ad520a31c34b72d47e4dbdf4998764736f6c63430008160033
Deployed Bytecode
0x6080604052600436106102455760003560e01c806352a5f1f811610139578063ae3cee0e116100b6578063e63ab1e91161007a578063e63ab1e914610775578063e8a3d48514610797578063e985e9c5146107ac578063ee7ef678146107cc578063f160d36914610823578063f242432a1461084357600080fd5b8063ae3cee0e14610647578063bd85b03914610667578063c3982584146106b3578063d547741f14610735578063e4d73e0f1461075557600080fd5b806395d89b41116100fd57806395d89b41146105d257806396c82e57146105e7578063a217fddf146105fd578063a22cb46514610612578063ade1c5801461063257600080fd5b806352a5f1f8146105385780635c975abb1461055857806384017e521461057d5780638456cb591461059d57806391d14854146105b257600080fd5b80632a5ac764116101c7578063469048401161018b578063469048401461045257806347ce07cc1461048a57806349733d04146104aa5780634e1273f4146104bd5780634f558e79146104ea57600080fd5b80632a5ac764146103bd5780632eb2c2d6146103dd5780632f2ff15d146103fd57806336568abe1461041d5780633f4ba83a1461043d57600080fd5b80630e89341c1161020e5780630e89341c1461031157806313966db51461033157806317e87c251461034757806318160ddd14610369578063248a9ca31461039d57600080fd5b8062fdd58e1461024a578063018bcf5c1461027d57806301ffc9a71461029f57806302fe5305146102cf57806306fdde03146102ef575b600080fd5b34801561025657600080fd5b5061026a6102653660046127d1565b610863565b6040519081526020015b60405180910390f35b34801561028957600080fd5b5061029d6102983660046127fb565b61089a565b005b3480156102ab57600080fd5b506102bf6102ba366004612833565b610a39565b6040519015158152602001610274565b3480156102db57600080fd5b5061029d6102ea36600461292e565b610a44565b3480156102fb57600080fd5b50610304610a58565b60405161027491906129ba565b34801561031d57600080fd5b5061030461032c3660046129cd565b610ae6565b34801561033d57600080fd5b5061026a60035481565b34801561035357600080fd5b5061035c610b27565b60405161027491906129e6565b34801561037557600080fd5b507f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e28015461026a565b3480156103a957600080fd5b5061026a6103b83660046129cd565b610bf0565b3480156103c957600080fd5b5061029d6103d8366004612a3f565b610c12565b3480156103e957600080fd5b5061029d6103f8366004612b58565b610c85565b34801561040957600080fd5b5061029d610418366004612c01565b610cec565b34801561042957600080fd5b5061029d610438366004612c01565b610d08565b34801561044957600080fd5b5061029d610d3b565b34801561045e57600080fd5b50600454610472906001600160a01b031681565b6040516001600160a01b039091168152602001610274565b34801561049657600080fd5b50600554610472906001600160a01b031681565b61029d6104b83660046129cd565b610d5e565b3480156104c957600080fd5b506104dd6104d8366004612c2d565b61100c565b6040516102749190612d28565b3480156104f657600080fd5b506102bf6105053660046129cd565b60009081527f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e28006020526040902054151590565b34801561054457600080fd5b5061029d610553366004612d50565b6110d8565b34801561056457600080fd5b506000805160206134828339815191525460ff166102bf565b34801561058957600080fd5b5061029d6105983660046129cd565b6111b3565b3480156105a957600080fd5b5061029d61121c565b3480156105be57600080fd5b506102bf6105cd366004612c01565b61123c565b3480156105de57600080fd5b50610304611274565b3480156105f357600080fd5b5061026a60065481565b34801561060957600080fd5b5061026a600081565b34801561061e57600080fd5b5061029d61062d366004612d9c565b611281565b34801561063e57600080fd5b5061026a61128c565b34801561065357600080fd5b5061029d610662366004612e40565b611308565b34801561067357600080fd5b5061026a6106823660046129cd565b60009081527f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e2800602052604090205490565b3480156106bf57600080fd5b506107066106ce366004612e5d565b6007602052600090815260409020546001600160a01b03811690600160a01b81046001600160401b031690600160e01b900460ff1683565b604080516001600160a01b0390941684526001600160401b039092166020840152151590820152606001610274565b34801561074157600080fd5b5061029d610750366004612c01565b6113be565b34801561076157600080fd5b5061029d610770366004612e7a565b6113da565b34801561078157600080fd5b5061026a60008051602061342283398151915281565b3480156107a357600080fd5b506103046116bb565b3480156107b857600080fd5b506102bf6107c7366004612fba565b6116c8565b3480156107d857600080fd5b506108086107e73660046129cd565b60086020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610274565b34801561082f57600080fd5b5061029d61083e3660046127fb565b611715565b34801561084f57600080fd5b5061029d61085e366004612fe4565b611792565b6000818152600080516020613442833981519152602090815260408083206001600160a01b03861684529091529020545b92915050565b60006108a5816117f1565b6001600160a01b0382166109545747801561094f57604051600090339083908381818185875af1925050503d80600081146108fc576040519150601f19603f3d011682016040523d82523d6000602084013e610901565b606091505b505090508061094d5760405162461bcd60e51b8152602060048201526013602482015272115512081d1c985b9cd9995c8819985a5b1959606a1b60448201526064015b60405180910390fd5b505b505050565b6040516370a0823160e01b81523060048201526001600160a01b0383169063a9059cbb90339083906370a0823190602401602060405180830381865afa1580156109a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c69190613048565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610a11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094f9190613061565b5050565b6000610894826117fb565b6000610a4f816117f1565b610a3582611820565b60008054610a659061307e565b80601f0160208091040260200160405190810160405280929190818152602001828054610a919061307e565b8015610ade5780601f10610ab357610100808354040283529160200191610ade565b820191906000526020600020905b815481529060010190602001808311610ac157829003601f168201915b505050505081565b60606000610af38361185a565b905080610aff8461191f565b604051602001610b109291906130b2565b604051602081830303815290604052915050919050565b60408051600c8082526101a0820190925260609160009190816020015b610b6860405180606001604052806000815260200160008152602001600081525090565b815260200190600190039081610b4457905050905060005b8151811015610bea57600860008281526020019081526020016000206040518060600160405290816000820154815260200160018201548152602001600282015481525050828281518110610bd757610bd76130f1565b6020908102919091010152600101610b80565b50919050565b6000908152600080516020613462833981519152602052604090206001015490565b6000610c1d816117f1565b6000610c29858261314f565b506001610c36848261314f565b506002610c43838261314f565b507fbbb5af95134494bd1d35d31c1e3850544db18dda99655725b6c0b545d572a08a848484604051610c779392919061320e565b60405180910390a150505050565b336001600160a01b0386168114801590610ca65750610ca486826116c8565b155b15610cd75760405163711bec9160e11b81526001600160a01b03808316600483015287166024820152604401610944565b610ce486868686866119b1565b505050505050565b610cf582610bf0565b610cfe816117f1565b61094d8383611a18565b6001600160a01b0381163314610d315760405163334bd91960e11b815260040160405180910390fd5b61094f8282611abd565b600080516020613422833981519152610d53816117f1565b610d5b611b39565b50565b610d66611b99565b610d6e611bcc565b600354600554604080516341025b3d60e11b81529051600093926001600160a01b031691638204b67a9160048083019260209291908290030181865afa158015610dbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de09190613251565b6001600160801b0316610df39190613290565b9050610dff82826132a3565b341015610e1f576040516334472ad760e11b815260040160405180910390fd5b6004546003546000916001600160a01b031690610e3d9085906132a3565b604051600081818185875af1925050503d8060008114610e79576040519150601f19603f3d011682016040523d82523d6000602084013e610e7e565b606091505b5050905080610ea05760405163a25fad3360e01b815260040160405180910390fd5b60005b83811015610ff257600554604080516341025b3d60e11b815290516000926001600160a01b031691637b43155d918391638204b67a9160048083019260209291908290030181865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190613251565b6001600160801b03166040518263ffffffff1660e01b815260040160206040518083038185885af1158015610f5a573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7f91906132ba565b6001600160401b0381166000818152600760205260408082208054336001600160e01b0319909116600160a01b86026001600160a01b031916178117825591519495509390917f443a04e0e8473b1953759330661fba17954caf7e1462044e16472108918e50bc91a35050600101610ea3565b505050610d5b60016000805160206134a283398151915255565b6060815183511461103d5781518351604051635b05999160e01b815260048101929092526024820152604401610944565b600083516001600160401b0381111561105857611058612850565b604051908082528060200260200182016040528015611081578160200160208202803683370190505b50905060005b84518110156110d0576020808202860101516110ab90602080840287010151610863565b8282815181106110bd576110bd6130f1565b6020908102919091010152600101611087565b509392505050565b60006110ec6005546001600160a01b031690565b90506001600160a01b0381166111445760405162461bcd60e51b815260206004820152601760248201527f456e74726f70792061646472657373206e6f74207365740000000000000000006044820152606401610944565b336001600160a01b038216146111a85760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920456e74726f70792063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610944565b61094d848484611c18565b60006111be816117f1565b816000036111df57604051636debca3960e11b815260040160405180910390fd5b60038290556040518281527f38fbb1c8b109c430f0c030e7ed076cf5611a307773a4e8e365601e8f8bceaec6906020015b60405180910390a15050565b600080516020613422833981519152611234816117f1565b610d5b611deb565b6000918252600080516020613462833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60018054610a659061307e565b610a35338383611e34565b600554604080516341025b3d60e11b815290516000926001600160a01b031691638204b67a9160048083019260209291908290030181865afa1580156112d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112fa9190613251565b6001600160801b0316905090565b6000611313816117f1565b600060068190555b600c81101561138a578281600c8110611336576113366130f1565b602002015160086000838152602001908152602001600020600101819055508281600c8110611367576113676130f1565b60200201516006600082825461137d9190613290565b909155505060010161131b565b507f69ba9a9605ae45ddfed4d42bbb14849259d712cbdd72dcedd490db11985f9774826006546040516112109291906132d7565b6113c782610bf0565b6113d0816117f1565b61094d8383611abd565b60006113e4611edc565b805490915060ff600160401b82041615906001600160401b031660008115801561140b5750825b90506000826001600160401b031660011480156114275750303b155b905081158015611435575080155b156114535760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561147d57845460ff60401b1916600160401b1785555b8560c001516000036114a257604051636debca3960e11b815260040160405180910390fd5b60a08601516001600160a01b03166114cd5760405163d92e233d60e01b815260040160405180910390fd5b60e08601516001600160a01b03166114f85760405163d92e233d60e01b815260040160405180910390fd5b6115058660600151611f05565b61150d611f16565b611515611f16565b61151d611f16565b611525611f1e565b6115376000801b876101000151611a18565b50611555600080516020613422833981519152876101200151611a18565b5060005b600c8110156115f9576040518060600160405280828152602001886080015183600c8110611589576115896130f1565b60209081029190910151825260009181018290528382526008815260409182902083518155908301516001820155910151600290910155608087015181600c81106115d6576115d66130f1565b6020020151600660008282546115ec9190613290565b9091555050600101611559565b508551600090611609908261314f565b50602086015160019061161c908261314f565b50604086015160029061162f908261314f565b5060c086015160035560a0860151600480546001600160a01b039283166001600160a01b03199182161790915560e0880151600580549190931691161790558315610ce457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b60028054610a659061307e565b6001600160a01b0391821660009081527f88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c45016020908152604080832093909416825291909152205460ff1690565b6000611720816117f1565b6001600160a01b0382166117475760405163d92e233d60e01b815260040160405180910390fd5b600480546001600160a01b0319166001600160a01b0384169081179091556040517f7a7b5a0a132f9e0581eb8527f66eae9ee89c2a3e79d4ac7e41a1f1f4d48a7fc290600090a25050565b336001600160a01b03861681148015906117b357506117b186826116c8565b155b156117e45760405163711bec9160e11b81526001600160a01b03808316600483015287166024820152604401610944565b610ce48686868686611f2e565b610d5b8133611fbc565b60006001600160e01b03198216637965db0b60e01b1480610894575061089482611ff5565b6000805160206134428339815191527f88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c450261094f838261314f565b7f88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c45028054606091600080516020613442833981519152916118999061307e565b80601f01602080910402602001604051908101604052809291908181526020018280546118c59061307e565b80156119125780601f106118e757610100808354040283529160200191611912565b820191906000526020600020905b8154815290600101906020018083116118f557829003601f168201915b5050505050915050919050565b6060600061192c83612045565b60010190506000816001600160401b0381111561194b5761194b612850565b6040519080825280601f01601f191660200182016040528015611975576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461197f57509392505050565b6001600160a01b0384166119db57604051632bfa23e760e11b815260006004820152602401610944565b6001600160a01b038516611a0457604051626a0d4560e21b815260006004820152602401610944565b611a11858585858561211d565b5050505050565b6000600080516020613462833981519152611a33848461123c565b611ab3576000848152602082815260408083206001600160a01b03871684529091529020805460ff19166001179055611a693390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610894565b6000915050610894565b6000600080516020613462833981519152611ad8848461123c565b15611ab3576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610894565b611b41612170565b600080516020613482833981519152805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a150565b6000805160206134828339815191525460ff1615611bca5760405163d93c066560e01b815260040160405180910390fd5b565b6000805160206134a2833981519152805460011901611bfe57604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b60016000805160206134a283398151915255565b611c20611bcc565b6001600160401b03831660009081526007602052604090208054600160e01b900460ff1615611c625760405163d4ec888360e01b815260040160405180910390fd5b80546001600160a01b0316611c8a576040516341abc80160e01b815260040160405180910390fd5b805460ff60e01b1916600160e01b178155600654600090611cab9084613311565b905060008060005b600c811015611d1e576000818152600860205260409020600101549091508190611cdd9084613290565b9250828410611d1e5780600b148015611cf557508284115b15611d16576040516358083b2160e11b815260048101859052602401610944565b600101611cb3565b5060008181526008602052604081206002810180549192600192611d43908490613290565b909155505084548154604080516020810190915260008152611d72926001600160a01b031691906001906121a0565b845481546003546040805188815260208101939093528201526001600160a01b03909116906001600160401b038a16907ffbbad0b975c4cbec60560cd4176fb9e9db622bbdd6cde2fa87fff162cd8745589060600160405180910390a3505050505061094f60016000805160206134a283398151915255565b611df3611b99565b600080516020613482833981519152805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833611b7b565b6000805160206134428339815191526001600160a01b038316611e6c5760405162ced3e160e81b815260006004820152602401610944565b6001600160a01b038481166000818152600184016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610894565b611f0d6121fd565b610d5b81612222565b611bca6121fd565b611f266121fd565b611bca612233565b6001600160a01b038416611f5857604051632bfa23e760e11b815260006004820152602401610944565b6001600160a01b038516611f8157604051626a0d4560e21b815260006004820152602401610944565b60408051600180825260208201869052818301908152606082018590526080820190925290611fb3878784848761211d565b50505050505050565b611fc6828261123c565b610a355760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610944565b60006001600160e01b03198216636cdb3d1360e11b148061202657506001600160e01b031982166303a24d0760e21b145b8061089457506301ffc9a760e01b6001600160e01b0319831614610894565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106120845772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106120b0576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106120ce57662386f26fc10000830492506010015b6305f5e10083106120e6576305f5e100830492506008015b61271083106120fa57612710830492506004015b6064831061210c576064830492506002015b600a83106108945760010192915050565b6121298585858561223b565b6001600160a01b03841615611a115782513390600103612162576020848101519084015161215b838989858589612247565b5050610ce4565b610ce481878787878761236b565b6000805160206134828339815191525460ff16611bca57604051638dfc202b60e01b815260040160405180910390fd5b6001600160a01b0384166121ca57604051632bfa23e760e11b815260006004820152602401610944565b60408051600180825260208201869052818301908152606082018590526080820190925290610ce460008784848761211d565b612205612454565b611bca57604051631afcd79f60e31b815260040160405180910390fd5b61222a6121fd565b610d5b81611820565b611c046121fd565b61094d8484848461246e565b6001600160a01b0384163b15610ce45760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061228b9089908990889088908890600401613333565b6020604051808303816000875af19250505080156122c6575060408051601f3d908101601f191682019092526122c391810190613378565b60015b61232f573d8080156122f4576040519150601f19603f3d011682016040523d82523d6000602084013e6122f9565b606091505b50805160000361232757604051632bfa23e760e11b81526001600160a01b0386166004820152602401610944565b805160208201fd5b6001600160e01b0319811663f23a6e6160e01b14611fb357604051632bfa23e760e11b81526001600160a01b0386166004820152602401610944565b6001600160a01b0384163b15610ce45760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906123af9089908990889088908890600401613395565b6020604051808303816000875af19250505080156123ea575060408051601f3d908101601f191682019092526123e791810190613378565b60015b612418573d8080156122f4576040519150601f19603f3d011682016040523d82523d6000602084013e6122f9565b6001600160e01b0319811663bc197c8160e01b14611fb357604051632bfa23e760e11b81526001600160a01b0386166004820152602401610944565b600061245e611edc565b54600160401b900460ff16919050565b7f4a593662ee04d27b6a00ebb31be7fe0c102c2ade82a7c5d764f2df05dc4e280061249b8585858561257e565b6001600160a01b03851661251c576000805b8451811015612500576020818102858101820151908701820151600090815291859052604082208054919283926124e5908490613290565b909155506124f590508184613290565b9250506001016124ad565b50808260010160008282546125159190613290565b9091555050505b6001600160a01b038416611a11576000805b845181101561256a576020818102858101820151908701820151600090815291859052604090912080548290039055919091019060010161252e565b506001820180549190910390555050505050565b612586611b99565b61094d848484846000600080516020613442833981519152905081518351146125cf5782518251604051635b05999160e01b815260048101929092526024820152604401610944565b3360005b84518110156126d5576020818102868101820151908601909101516001600160a01b03891615612686576000828152602086815260408083206001600160a01b038d1684529091529020548181101561265f576040516303dee4c560e01b81526001600160a01b038b166004820152602481018290526044810183905260648101849052608401610944565b6000838152602087815260408083206001600160a01b038e16845290915290209082900390555b6001600160a01b038816156126cb576000828152602086815260408083206001600160a01b038c168452909152812080548392906126c5908490613290565b90915550505b50506001016125d3565b5083516001036127565760208401516000906020850151909150866001600160a01b0316886001600160a01b0316846001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628585604051612747929190918252602082015260400190565b60405180910390a45050610ce4565b846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516127a59291906133f3565b60405180910390a4505050505050565b80356001600160a01b03811681146127cc57600080fd5b919050565b600080604083850312156127e457600080fd5b6127ed836127b5565b946020939093013593505050565b60006020828403121561280d57600080fd5b612816826127b5565b9392505050565b6001600160e01b031981168114610d5b57600080fd5b60006020828403121561284557600080fd5b81356128168161281d565b634e487b7160e01b600052604160045260246000fd5b60405161014081016001600160401b038111828210171561288957612889612850565b60405290565b604051601f8201601f191681016001600160401b03811182821017156128b7576128b7612850565b604052919050565b600082601f8301126128d057600080fd5b81356001600160401b038111156128e9576128e9612850565b6128fc601f8201601f191660200161288f565b81815284602083860101111561291157600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561294057600080fd5b81356001600160401b0381111561295657600080fd5b612962848285016128bf565b949350505050565b60005b8381101561298557818101518382015260200161296d565b50506000910152565b600081518084526129a681602086016020860161296a565b601f01601f19169290920160200192915050565b602081526000612816602083018461298e565b6000602082840312156129df57600080fd5b5035919050565b602080825282518282018190526000919060409081850190868401855b82811015612a325781518051855286810151878601528501518585015260609093019290850190600101612a03565b5091979650505050505050565b600080600060608486031215612a5457600080fd5b83356001600160401b0380821115612a6b57600080fd5b612a77878388016128bf565b94506020860135915080821115612a8d57600080fd5b612a99878388016128bf565b93506040860135915080821115612aaf57600080fd5b50612abc868287016128bf565b9150509250925092565b60006001600160401b03821115612adf57612adf612850565b5060051b60200190565b600082601f830112612afa57600080fd5b81356020612b0f612b0a83612ac6565b61288f565b8083825260208201915060208460051b870101935086841115612b3157600080fd5b602086015b84811015612b4d5780358352918301918301612b36565b509695505050505050565b600080600080600060a08688031215612b7057600080fd5b612b79866127b5565b9450612b87602087016127b5565b935060408601356001600160401b0380821115612ba357600080fd5b612baf89838a01612ae9565b94506060880135915080821115612bc557600080fd5b612bd189838a01612ae9565b93506080880135915080821115612be757600080fd5b50612bf4888289016128bf565b9150509295509295909350565b60008060408385031215612c1457600080fd5b82359150612c24602084016127b5565b90509250929050565b60008060408385031215612c4057600080fd5b82356001600160401b0380821115612c5757600080fd5b818501915085601f830112612c6b57600080fd5b81356020612c7b612b0a83612ac6565b82815260059290921b84018101918181019089841115612c9a57600080fd5b948201945b83861015612cbf57612cb0866127b5565b82529482019490820190612c9f565b96505086013592505080821115612cd557600080fd5b50612ce285828601612ae9565b9150509250929050565b60008151808452602080850194506020840160005b83811015612d1d57815187529582019590820190600101612d01565b509495945050505050565b6020815260006128166020830184612cec565b6001600160401b0381168114610d5b57600080fd5b600080600060608486031215612d6557600080fd5b8335612d7081612d3b565b9250612d7e602085016127b5565b9150604084013590509250925092565b8015158114610d5b57600080fd5b60008060408385031215612daf57600080fd5b612db8836127b5565b91506020830135612dc881612d8e565b809150509250929050565b600082601f830112612de457600080fd5b6040516101808082018281106001600160401b0382111715612e0857612e08612850565b60405283018185821115612e1b57600080fd5b845b82811015612e35578035825260209182019101612e1d565b509195945050505050565b60006101808284031215612e5357600080fd5b6128168383612dd3565b600060208284031215612e6f57600080fd5b813561281681612d3b565b600060208284031215612e8c57600080fd5b81356001600160401b0380821115612ea357600080fd5b908301906102a08286031215612eb857600080fd5b612ec0612866565b823582811115612ecf57600080fd5b612edb878286016128bf565b825250602083013582811115612ef057600080fd5b612efc878286016128bf565b602083015250604083013582811115612f1457600080fd5b612f20878286016128bf565b604083015250606083013582811115612f3857600080fd5b612f44878286016128bf565b606083015250612f578660808501612dd3565b6080820152612f6961020084016127b5565b60a082015261022083013560c0820152612f8661024084016127b5565b60e0820152612f9861026084016127b5565b610100820152612fab61028084016127b5565b61012082015295945050505050565b60008060408385031215612fcd57600080fd5b612fd6836127b5565b9150612c24602084016127b5565b600080600080600060a08688031215612ffc57600080fd5b613005866127b5565b9450613013602087016127b5565b9350604086013592506060860135915060808601356001600160401b0381111561303c57600080fd5b612bf4888289016128bf565b60006020828403121561305a57600080fd5b5051919050565b60006020828403121561307357600080fd5b815161281681612d8e565b600181811c9082168061309257607f821691505b602082108103610bea57634e487b7160e01b600052602260045260246000fd5b600083516130c481846020880161296a565b8351908301906130d881836020880161296a565b64173539b7b760d91b9101908152600501949350505050565b634e487b7160e01b600052603260045260246000fd5b601f82111561094f576000816000526020600020601f850160051c810160208610156131305750805b601f850160051c820191505b81811015610ce45782815560010161313c565b81516001600160401b0381111561316857613168612850565b61317c81613176845461307e565b84613107565b602080601f8311600181146131b157600084156131995750858301515b600019600386901b1c1916600185901b178555610ce4565b600085815260208120601f198616915b828110156131e0578886015182559484019460019091019084016131c1565b50858210156131fe5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b606081526000613221606083018661298e565b8281036020840152613233818661298e565b90508281036040840152613247818561298e565b9695505050505050565b60006020828403121561326357600080fd5b81516001600160801b038116811461281657600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156108945761089461327a565b80820281158282048414176108945761089461327a565b6000602082840312156132cc57600080fd5b815161281681612d3b565b6101a08101818460005b600c8110156133005781518352602092830192909101906001016132e1565b505050826101808301529392505050565b60008261332e57634e487b7160e01b600052601260045260246000fd5b500690565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061336d9083018461298e565b979650505050505050565b60006020828403121561338a57600080fd5b81516128168161281d565b6001600160a01b0386811682528516602082015260a0604082018190526000906133c190830186612cec565b82810360608401526133d38186612cec565b905082810360808401526133e7818561298e565b98975050505050505050565b6040815260006134066040830185612cec565b82810360208401526134188185612cec565b9594505050505056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a88be536d5240c274a3b1d3a1be54482fd9caa294f08c62a7cde569f49a3c450002dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00a2646970667358221220fedcdf01dbd133ceb45ed3f183efb9124a81ad520a31c34b72d47e4dbdf4998764736f6c63430008160033
🤖 Code Reader Beta

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

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

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.