ETH Price: $1,694.10 (+0.24%)

Contract

0x94b9401945a9bc06CE5B69e6dB3c6B671aABc829
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
Source Code Verified Exact Match

Contract Name

Verifier

Compiler Version
v0.5.16+commit.9c3226ce
Optimization Enabled
Yes with 200 runs
Other Settings
default evmVersion
License
-NA-
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API
[{"constant":false,"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint32","name":"_size","type":"uint32"}],"name":"isBlockSizeSupported","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes","name":"upgradeParameters","type":"bytes"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256[]","name":"_recursiveInput","type":"uint256[]"},{"internalType":"uint256[]","name":"_proof","type":"uint256[]"},{"internalType":"uint32[]","name":"_block_sizes","type":"uint32[]"},{"internalType":"uint256[]","name":"_individual_vks_inputs","type":"uint256[]"},{"internalType":"uint256[]","name":"_subproofs_limbs","type":"uint256[]"}],"name":"verifyMultiblockProof","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256[]","name":"public_inputs","type":"uint256[]"},{"internalType":"uint256[]","name":"serialized_proof","type":"uint256[]"},{"components":[{"internalType":"uint256","name":"domain_size","type":"uint256"},{"internalType":"uint256","name":"num_inputs","type":"uint256"},{"components":[{"internalType":"uint256","name":"value","type":"uint256"}],"internalType":"struct PairingsBn254.Fr","name":"omega","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct PairingsBn254.G1Point[7]","name":"gate_setup_commitments","type":"tuple[7]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct PairingsBn254.G1Point[2]","name":"gate_selector_commitments","type":"tuple[2]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct PairingsBn254.G1Point[4]","name":"copy_permutation_commitments","type":"tuple[4]"},{"components":[{"internalType":"uint256","name":"value","type":"uint256"}],"internalType":"struct PairingsBn254.Fr[3]","name":"copy_permutation_non_residues","type":"tuple[3]"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct PairingsBn254.G2Point","name":"g2_x","type":"tuple"}],"internalType":"struct Plonk4AggVerifierWithAccessToDNext.VerificationKey","name":"vk","type":"tuple"}],"name":"verify_serialized_proof","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256[]","name":"public_inputs","type":"uint256[]"},{"internalType":"uint256[]","name":"serialized_proof","type":"uint256[]"},{"internalType":"uint256","name":"recursive_vks_root","type":"uint256"},{"internalType":"uint8","name":"max_valid_index","type":"uint8"},{"internalType":"uint8[]","name":"recursive_vks_indexes","type":"uint8[]"},{"internalType":"uint256[]","name":"individual_vks_inputs","type":"uint256[]"},{"internalType":"uint256[]","name":"subproofs_limbs","type":"uint256[]"},{"components":[{"internalType":"uint256","name":"domain_size","type":"uint256"},{"internalType":"uint256","name":"num_inputs","type":"uint256"},{"components":[{"internalType":"uint256","name":"value","type":"uint256"}],"internalType":"struct PairingsBn254.Fr","name":"omega","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct PairingsBn254.G1Point[7]","name":"gate_setup_commitments","type":"tuple[7]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct PairingsBn254.G1Point[2]","name":"gate_selector_commitments","type":"tuple[2]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct PairingsBn254.G1Point[4]","name":"copy_permutation_commitments","type":"tuple[4]"},{"components":[{"internalType":"uint256","name":"value","type":"uint256"}],"internalType":"struct PairingsBn254.Fr[3]","name":"copy_permutation_non_residues","type":"tuple[3]"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct PairingsBn254.G2Point","name":"g2_x","type":"tuple"}],"internalType":"struct Plonk4AggVerifierWithAccessToDNext.VerificationKey","name":"vk","type":"tuple"}],"name":"verify_serialized_proof_with_recursion","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}]
608060405234801561001057600080fd5b506143ee806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80631d8a5663146100675780632539464514610090578063439fab911461009057806360296694146100a55780637756aa8a146100b8578063e54ee6b1146100cb575b600080fd5b61007a610075366004613e4b565b6100de565b6040516100879190614261565b60405180910390f35b6100a361009e36600461400e565b61011d565b005b61007a6100b3366004613ec6565b610121565b61007a6100c6366004613d4e565b610168565b61007a6100d936600461404f565b610369565b600083518260200151146100f157600080fd5b6100f961349b565b610103858561037c565b90506000610111828561066c565b925050505b9392505050565b5050565b6000885182602001511461013457600080fd5b61013c61349b565b6101468a8a61037c565b9050600061015982858b8b8b8b8b6106be565b9b9a5050505050505050505050565b600061018f565b815a6207a1200111156101845760010161016f565b60019250505061035b565b6040805187815260208089028201019091526060908780156101bb578160200160208202803883390190505b50905060005b63ffffffff811688111561022a576101fe89898363ffffffff168181106101e457fe5b90506020020160206101f9919081019061404f565b61076e565b828263ffffffff168151811061021057fe5b60ff909216602092830291909101909101526001016101c1565b5061023361354a565b61023c886107fb565b90506103568d8d80806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508c8c8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808e0282810182019093528d82527f0a3cdc9655e61bf64758c1e8df745723e9b83addd4f0d0f2dd65dc762dc1e9e794506005935089928f918f918291850190849080828437600081840152601f19601f820116905080830192505050505050508b8b808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508b9250610121915050565b925050505b9a9950505050505050505050565b600061037482610831565b90505b919050565b61038461349b565b602282511461039257600080fd5b82516040519080825280602002602001820160405280156103bd578160200160208202803883390190505b50815260005b8351811015610403578381815181106103d857fe5b6020026020010151826000015182815181106103f057fe5b60209081029190910101526001016103c3565b506000805b60048110156104685761044484838151811061042057fe5b602002602001015185846001018151811061043757fe5b60200260200101516108c6565b8360200151826004811061045457fe5b602002015260029190910190600101610408565b5061048f83828151811061047857fe5b602002602001015184836001018151811061043757fe5b604083015260020160005b60048110156104d6576104b284838151811061042057fe5b836060015182600481106104c257fe5b60200201526002919091019060010161049a565b5060005b6004811015610520576104ff8483815181106104f257fe5b60200260200101516109a8565b8360800151826004811061050f57fe5b6020020152600191820191016104da565b5060005b600181101561055d5761053c8483815181106104f257fe5b8360a00151826001811061054c57fe5b602002015260019182019101610524565b5060005b600181101561059a576105798483815181106104f257fe5b8360c00151826001811061058957fe5b602002015260019182019101610561565b5060005b60038110156105d8576105b68483815181106104f257fe5b83610140015182600381106105c757fe5b60200201526001918201910161059e565b506105e88382815181106104f257fe5b8260e001819052506001810190506106058382815181106104f257fe5b8261010001819052506001810190506106238382815181106104f257fe5b82610120018190525060018101905061064183828151811061047857fe5b82610160018190525060028101905061065f83828151811061047857fe5b6101808301525092915050565b6000806106776135ad565b61068185856109dc565b909250905081610696576000925050506106b8565b80516106b3906106a4610a1c565b602084015160e0880151610adc565b925050505b92915050565b6000806106c96135ad565b6106d68888888888610bb7565b9150915089600001516000815181106106eb57fe5b602002602001015182146106fb57fe5b60006107056135ad565b61070f8c8c6109dc565b909250905081610726576000945050505050610763565b61072e6135ad565b6107388483610efe565b805190915061075b90610749610a1c565b83600160200201518f60e00151610adc565b955050505050505b979650505050505050565b600063ffffffff82166006141561078757506000610377565b63ffffffff8216600c141561079e57506001610377565b63ffffffff8216603014156107b557506002610377565b63ffffffff8216606014156107cc57506003610377565b63ffffffff821660cc14156107e357506004610377565b63ffffffff82166101a4141561037757506005610377565b61080361354a565b63ffffffff82166001141561081a57610374610fe7565b63ffffffff8216600514156103775761037461154d565b600063ffffffff82166006141561084a57506001610377565b63ffffffff8216600c141561086157506001610377565b63ffffffff82166030141561087857506001610377565b63ffffffff82166060141561088f57506001610377565b63ffffffff821660cc14156108a657506001610377565b63ffffffff82166101a414156108be57506001610377565b506000610377565b6108ce6135da565b821580156108da575081155b156108fb5760405180604001604052808481526020018381525090506106b8565b60008051602061436c833981519152831061091557600080fd5b60008051602061436c833981519152821061092f57600080fd5b600060008051602061436c8339815191528384099050600060008051602061436c833981519152858609905060008051602061436c833981519152858209905060008051602061436c83398151915260038208905080821461099057600080fd5b50506040805180820190915292835250602082015290565b6109b06135f4565b60008051602061438c83398151915282106109ca57600080fd5b50604080516020810190915290815290565b60006109e66135ad565b6109ee613607565b6109f98186866119b4565b925082610a065750610a15565b610a11818686611c9d565b9150505b9250929050565b610a24613668565b50604080516080810182527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c28183019081527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6060830152815281518083019092527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b82527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60208381019190915281019190915290565b60408051600280825260608281019093526000929190816020015b610aff6135da565b815260200190600190039081610af757505060408051600280825260608083019093529293509091602082015b610b34613668565b815260200190600190039081610b2c5790505090508682600081518110610b5757fe5b60200260200101819052508482600181518110610b7057fe5b60200260200101819052508581600081518110610b8957fe5b60200260200101819052508381600181518110610ba257fe5b602002602001018190525061076382826122c8565b6000610bc16135ad565b8351855114610bcc57fe5b606087604051602001610bdf91906141bc565b60408051601f1981840301815291905290506000805b8751811015610c5157878181518110610c0a57fe5b602002602001015191508860ff168260ff161115610c2457fe5b8282604051602001610c3792919061419a565b60408051601f198184030181529190529250600101610bf5565b506000805b8851811015610cb957878181518110610c6b57fe5b6020026020010151915060008051602061438c8339815191528210610c8c57fe5b8382604051602001610c9f929190614178565b60408051601f198184030181529190529350600101610c56565b508286604051602001610ccd929190614160565b60405160208183030381529060405292506000600284604051610cf09190614154565b602060405180830381855afa158015610d0d573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250610d309190810190613fe8565b90506001600160f81b038160001c169550610e1b604460030288600381518110610d5657fe5b6020026020010151901b604460020289600281518110610d7257fe5b6020026020010151901b60448a600181518110610d8b57fe5b6020026020010151901b8a600081518110610da257fe5b6020026020010151010101604460030289600781518110610dbf57fe5b6020026020010151901b60446002028a600681518110610ddb57fe5b6020026020010151901b60448b600581518110610df457fe5b6020026020010151901b8b600481518110610e0b57fe5b60200260200101510101016108c6565b85528651610ee89060cc908990600b908110610e3357fe5b6020026020010151901b604460020289600a81518110610e4f57fe5b6020026020010151901b60448a600981518110610e6857fe5b6020026020010151901b8a600881518110610e7f57fe5b6020026020010151010101604460030289600f81518110610e9c57fe5b6020026020010151901b60446002028a600e81518110610eb857fe5b6020026020010151901b60448b600d81518110610ed157fe5b6020026020010151901b8b600c81518110610e0b57fe5b8560016020020152505050509550959350505050565b610f066135ad565b610f0e613688565b610f166124c4565b9050610f318460005b6020020151829063ffffffff6124e016565b610f3c846001610f1f565b610f47836000610f1f565b610f52836001610f1f565b610f5a6135f4565b610f63826124fc565b9050610f768560005b602002015161256d565b8352610f83856001610f6c565b6020840152610f906135da565b610fa9828660005b60200201519063ffffffff61258916565b9050610fc4818560005b60200201519063ffffffff61259c16565b610fd082866001610f98565b9050610fde81856001610fb3565b50505092915050565b610fef61354a565b624000008152600160208201526110257f18c95f1ae6514e11a1b30fd7923947c5ffcec5347f16e91b4dd654168326bede6109a8565b60408201526110747f19fbd6706b4cbde524865701eae0ae6a270608a09c3afdab7760b685c1c6c41b7f25082a191f0690c175cc9af1106c6c323b5b5de4e24dc23be1e965e1851bca486125a7565b6060820151526110c47f16c02d9ca95023d1812a58d16407d1ea065073f02c916290e39242303a8a1d8e7f230338b422ce8533e27cd50086c28cb160cf05a7ae34ecd5899dbdf449dc7ce06125a7565b6060820151602001526111177f1db0d133243750e1ea692050bbf6068a49dc9f6bae1f11960b6ce9e10adae0f57f12a453ed0121ae05de60848b4374d54ae4b7127cb307372e14e8daf5097c51236125a7565b60608201516040015261116a7f1062ed5e86781fd34f78938e5950c2481a79f132085d2bc7566351ddff9fa3b77f2fd7aac30f645293cc99883ab57d8c99a518d5b4ab40913808045e86534973466125a7565b60608281015101526111bc7f062755048bb95739f845e8659795813127283bf799443d62fea600ae23e7f2637f2af86098beaa241281c78a454c5d1aa6e9eedc818c96cd1e6518e1ac2d26aa396125a7565b60608201516080015261120f7f0994e25148bbd25be655034f81062d1ebf0a1c2b41e0971434beab1ae81014747f27cc8cfb1fafd13068aeee0e08a272577d89f8aa0fb8507aabbc62f37587b98f6125a7565b606082015160a001526112627f044edf69ce10cfb6206795f92c3be2b0d26ab9afd3977b789840ee58c7dbe9277f2a8aa20c106f8dc7e849bc9698064dcfa9ed0a4050d794a1db0f13b0ee3def376125a7565b606082015160c001526112b57f136967f1a2696db05583a58dbf8971c5d9d1dc5f5c97e88f3b4822aa52fefa1c7f127b41299ea5c840c3b12dbe7b172380f432b7b63ce3b004750d6abb9e7b3b7a6125a7565b6080820151526113057f02fd5638bf3cc2901395ad1124b951e474271770a337147a2167e9797ab9d9517f0fcb2e56b077c8461c36911c9252008286d782e96030769bf279024fc81d412a6125a7565b6080820151602001526113587f1865c60ecad86f81c6c952445707203c9c7fdace3740232ceb704aefd5bd45b37f2f35e29b39ec8bb054e2cff33c0299dd13f8c78ea24a07622128a7444aba3f266125a7565b60a0820151526113a87f2a86ec9c6c1f903650b5abbf0337be556b03f79aecc4d917e90c7db94518dde67f15b1b6be641336eebd58e7991be2991debbbd780e70c32b49225aa98d10b70166125a7565b60a0820151602001526113fb7f213e42fcec5297b8e01a602684fcd412208d15bdac6b6331a8819d478ba468997f03223485f4e808a3b2496ae1a3c0dfbcbf4391cffc57ee01e8fca114636ead186125a7565b60a08201516040015261144e7f2e9b02f8cf605ad1a36e99e990a07d435de06716448ad53053c7a7a5341f71e17f2d6fdf0bc8bd89112387b1894d6f24b45dcb122c09c84344b6fc77a619dd1d596125a7565b60a08201516060015261146160056109a8565b60c08201515261147160076109a8565b60c082015160200152611484600a6109a8565b60c08201516002602002018190525061154560405180604001604052807f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c181526020017f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b081525060405180604001604052807f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe481526020017f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e558152506125c5565b60e082015290565b61155561354a565b630100000081526001602082015261158c7f1951441010b2b95a6e47a6075066a50a036f5ba978c050f2821df86636c0facb6109a8565b60408201526115db7f023cfc69ef1b002da66120fce352ede75893edd8cd8196403a54e1eceb82cd437f2baf3bd673e46be9df0d43ca30f834671543c22db422f450b2efd8c931e9b34e6125a7565b60608201515261162b7f23783fe0e5c3f83c02c864e25fe766afb727134c9a77ae6b9694efb7b46f31ab7f1903d01005e447d061c16323a1d604d8fbd4b5cc9b64945a71f1234d280c4d3a6125a7565b60608201516020015261167e7f2897df6c6fa993661b2b0b0cf52460278e33533de71b3c0f7ed7c1f20af238c67f042344afee0aed5505e59bce4ebbe942a91268a8af6b77ea95f603b5b726e8cb6125a7565b6060820151604001526116d07f0fceed33e78426afc38d8a68c0d93413d2bbaa492b087125271d33d52bdb07b87e57e4f63be36edb56e91da931f3d0ba72d1862d4b7751c59b92b6ae9f1fcc116125a7565b60608281015101526117227f14230a35f172cd77a2147cecc20b2a13148363cbab78709489a29d08001e26fb7f04f1040477d77896475080b5abb8091cda2cce4917ee0ba5dd62d0ab1be379b46125a7565b6060820151608001526117757f20d1a079ad80a8abb7fd8ba669dddbbe23231360a5f0ba679b6536b6bf9806497f120c5a845903bd6de4105eb8cef90e6dff2c3888ada16c90e1efb393778d6a4d6125a7565b606082015160a001526117c87f1af6b9e362e458a96b8bbbf8f8ce2bdbd650fb68478360c408a2acf1633c1ce17f27033728b767b44c659e7896a6fcc956af97566a5a1135f87a2e510976a62d416125a7565b606082015160c0015261181b7f0dbfb3c5f5131eb6f01e12b1a6333b0ad22cc8292b666e46e9bd4d80802cccdf7f2d058711c42fd2fd2eef33fb327d111a27fe2063b46e1bb54b32d02e9676e5466125a7565b60808201515261186b7f0c8c7352a84dd3f32412b1a96acd94548a292411fd7479d8609ca9bd872f1e367f0874203fd8012d6976698cc2df47bca14bc04879368ade6412a2109c1e71e5e86125a7565b6080820151602001526118be7f1b17bb7c319b1cf15461f4f0b69d98e15222320cb2d22f4e3a5f5e0e9e51f4bd7f0cf5bc338235ded905926006027aa2aab277bc32a098cd5b5353f5545cbd28256125a7565b60a08201515261190e7f0794d3cfbc2fdd756b162571a40e40b8f31e705c77063f30a4e9155dbc00e0ef7f1f821232ab8826ea5bf53fe9866c74e88a218c8d163afcaa395eda4db57b7a236125a7565b60a0820151602001526119617f224d93783aa6856621a9bbec495f4830c94994e266b240db9d652dbb394a283b7f161bcec99f3bc449d655c0ca59874dafe1194138eec91af34392b09a83338ca16125a7565b60a08201516040015261144e7f1fa27e2916b2c11d39c74c0e61063190da31c102d2b7da5c0a61ec8c5e82f1327f0a815ee76cd8aa600e6f66463b25a0ee57814bfdf06c65a91ddc70cede41caae6125a7565b6020810151825151600091146119c957600080fd5b81602001516001146119da57600080fd5b6119e2613688565b6119ea6124c4565b905060005b8360200151811015611a2d57611a2585600001518281518110611a0e57fe5b6020026020010151836125cd90919063ffffffff16565b6001016119ef565b5060005b6004811015611a6757611a5f85602001518260048110611a4d57fe5b6020020151839063ffffffff6124e016565b600101611a31565b50611a71816124fc565b6020860152611a7f816124fc565b604080870191909152840151611a9c90829063ffffffff6124e016565b611aa5816124fc565b855260005b6004811015611ace57611ac685606001518260048110611a4d57fe5b600101611aaa565b50611ad8816124fc565b60a086015260408051600180825281830190925290816020015b611afa6135f4565b815260200190600190039081611af257505060c08601528251604084015160a0870151611b2b926000929091612640565b8560c00151600081518110611b3c57fe5b60200260200101819052506000611b54868686612721565b905080611b6657600092505050610116565b610100850151611b7d90839063ffffffff612a1d16565b60005b6004811015611bb657611bae86608001518260048110611b9c57fe5b6020020151849063ffffffff612a1d16565b600101611b80565b5060005b6001811015611bde57611bd68660a001518260018110611b9c57fe5b600101611bba565b5060c085015151611bf0908390612a1d565b60005b6003811015611c1857611c108661014001518260038110611b9c57fe5b600101611bf3565b5060e0850151611c2f90839063ffffffff612a1d16565b610120850151611c4690839063ffffffff612a1d16565b611c4f826124fc565b6060870152610160850151611c6b90839063ffffffff6124e016565b610180850151611c8290839063ffffffff6124e016565b611c8b826124fc565b60808701525060019150509392505050565b611ca56135ad565b611cad6135da565b611cb8858585612a2b565b9050611cc26135f4565b835160a0870151611cd89163ffffffff612e7816565b9050611ce26135da565b611cea612f04565b9050611cf46135f4565b611cfe60016109a8565b9050611d086135da565b6060880151611d18906000610f6c565b9050611d226135f4565b611d2c60016109a8565b905060015b6004811015611d7857611d4a828763ffffffff612f2516565b611d5e828b606001518360048110610f9857fe5b9450611d70838663ffffffff61259c16565b600101611d31565b5060608a0151611d8f90849063ffffffff612f2516565b611d9f828763ffffffff61259c16565b60005b6004811015611def5760608b0151611dc190859063ffffffff612f2516565b611dd5848b602001518360048110610f9857fe5b9450611de7838663ffffffff61259c16565b600101611da2565b5060005b6001811015611e405760608b0151611e1290859063ffffffff612f2516565b611e26848a608001518360028110610f9857fe5b9450611e38838663ffffffff61259c16565b600101611df3565b5060005b6003811015611e915760608b0151611e6390859063ffffffff612f2516565b611e77848a60a001518360048110610f9857fe5b9450611e89838663ffffffff61259c16565b600101611e44565b5060608a0151611ea890849063ffffffff612f2516565b611eb8818463ffffffff612f3f16565b60808a0151611ece90829063ffffffff612f2516565b6040890151611ef490611ee7908363ffffffff61258916565b839063ffffffff61259c16565b60608a0151611f0a90849063ffffffff612f2516565b611f1a818463ffffffff612f3f16565b60808a0151611f3090829063ffffffff612f2516565b6020890151611f429082906003610f98565b9350611f54828563ffffffff61259c16565b611f5e60016109a8565b9250611f686135f4565b611f768a6101000151612f44565b9050611f8f8b6060015185612f2590919063ffffffff16565b6101208a0151611fa690839063ffffffff612f3f16565b611fb6828563ffffffff612f2516565b611fc6818363ffffffff612f5316565b60005b60048110156120355760608c0151611fe890869063ffffffff612f2516565b61200d8b608001518260048110611ffb57fe5b6020020151849063ffffffff612f3f16565b61201d838663ffffffff612f2516565b61202d828463ffffffff612f5316565b600101611fc9565b5060005b60018110156120935760608c015161205890869063ffffffff612f2516565b61206b8b60c001518260018110611ffb57fe5b61207b838663ffffffff612f2516565b61208b828463ffffffff612f5316565b600101612039565b5060005b60038110156120f25760608c01516120b690869063ffffffff612f2516565b6120ca8b61014001518260038110611ffb57fe5b6120da838663ffffffff612f2516565b6120ea828463ffffffff612f5316565b600101612097565b5060608b015161210990859063ffffffff612f2516565b60e08a015161211f90839063ffffffff612f3f16565b61212f828563ffffffff612f2516565b60808b015161214590839063ffffffff612f2516565b612155818363ffffffff612f5316565b60608b015161216b90859063ffffffff612f2516565b60a08a01515161217c908390612f3f565b61218c828563ffffffff612f2516565b60808b01516121a290839063ffffffff612f2516565b6121b2818363ffffffff612f5316565b6121da6121cd826121c1612f04565b9063ffffffff61258916565b849063ffffffff612f6d16565b6121e26135da565b5060a08b01516101608b01518491612210916122039163ffffffff61258916565b829063ffffffff61259c16565b60a08c015161222690849063ffffffff612f3f16565b60408a015161223c90849063ffffffff612f2516565b60808c015161225290849063ffffffff612f2516565b6101808b015161226c90612203908563ffffffff61258916565b6122746135da565b60808d01516101808d015161228e9163ffffffff61258916565b90506122a88c61016001518261259c90919063ffffffff16565b6122b181612f78565b908952602089015250959998505050505050505050565b600081518351146122d857600080fd5b8251604080516006830280825260c08402820160200190925260609082801561230b578160200160208202803883390190505b50905060005b838110156124905786818151811061232557fe5b60200260200101516000015182826006026000018151811061234357fe5b60200260200101818152505086818151811061235b57fe5b60200260200101516020015182826006026001018151811061237957fe5b60200260200101818152505085818151811061239157fe5b6020908102919091010151515182518390600260068502019081106123b257fe5b6020026020010181815250508581815181106123ca57fe5b602090810291909101015151600160200201518282600602600301815181106123ef57fe5b60200260200101818152505085818151811061240757fe5b60200260200101516020015160006002811061241f57fe5b602002015182826006026004018151811061243657fe5b60200260200101818152505085818151811061244e57fe5b60200260200101516020015160016002811061246657fe5b602002015182826006026005018151811061247d57fe5b6020908102919091010152600101612311565b506124996136a8565b6000602082602086026020860160085afa9050806124b657600080fd5b505115159695505050505050565b6124cc613688565b600080825260208201819052604082015290565b6124ee8282600001516125cd565b61011d8282602001516125cd565b6125046135f4565b6000600283600001518460200151856040015160405160200161252a9493929190614219565b60408051808303601f190181529181528151602092830120948101805160010163ffffffff169052805191820190526001600160fd1b0390931683525090919050565b6125756135da565b815181526020918201519181019190915290565b6125916135da565b6106b8838383612fae565b61011d828284612ff0565b6125af6135da565b5060408051808201909152918252602082015290565b6125af613668565b81516020808401516040516125eb92600092859290918791016141d1565b60408051601f198184030181529181528151602092830120855284820151905161261e92600192859290918791016141d1565b60408051601f1981840301815291905280516020918201209301929092525050565b6126486135f4565b83851061265457600080fd5b61265c6135f4565b61266660016109a8565b90506126706135f4565b612680858863ffffffff612e7816565b9050612692848763ffffffff612e7816565b92506126a4838363ffffffff61308816565b82516126af57600080fd5b6126bf838263ffffffff612f2516565b6126c76135f4565b6126d085612f44565b90506126e2818363ffffffff61308816565b6126fb6126ee886109a8565b829063ffffffff612f2516565b612704816130a6565b9050612716848263ffffffff612f2516565b505050949350505050565b600061272b6135f4565b61273d83600001518660a001516130e3565b805190915061274b57600080fd5b61010084015161276290829063ffffffff612f2516565b61276a6135f4565b61277460016109a8565b905061277e6135f4565b61278c866101200151612f44565b90506127966135f4565b6127a060006109a8565b90506127aa6135f4565b6127b460006109a8565b905060005b885151811015612828576127ed8a60c0015182815181106127d657fe5b602002602001015184612f3f90919063ffffffff16565b6128106128038a6000015183815181106104f257fe5b849063ffffffff612f2516565b612820828463ffffffff612f5316565b6001016127b9565b5060c08801516128479060005b6020020151829063ffffffff612f2516565b612857838263ffffffff612f5316565b885161286a90859063ffffffff612f2516565b885161287d90859063ffffffff612f2516565b885161289090859063ffffffff612f2516565b88516128a390859063ffffffff612f2516565b88516128b690859063ffffffff612f2516565b6128be6135f4565b6128cb8960e00151612f44565b905060005b6003811015612968576128ff8a610140015182600381106128ed57fe5b6020020151859063ffffffff612f3f16565b60208b015161291590859063ffffffff612f2516565b60408b015161292b90859063ffffffff612f5316565b6129508a60800151826004811061293e57fe5b6020020151859063ffffffff612f5316565b612960828563ffffffff612f2516565b6001016128d0565b5060408a015161297f90849063ffffffff612f3f16565b608089015160600151612993908490612f53565b6129a3818463ffffffff612f2516565b6129b3818663ffffffff612f2516565b6129c3848263ffffffff61308816565b89516129d690869063ffffffff612f2516565b6129ea8a60c001516000815181106127d657fe5b6129fa838663ffffffff612f2516565b612a0a848463ffffffff61308816565b5050905192519092149695505050505050565b61011d8282600001516125cd565b612a336135da565b6060820151612a43906005610f6c565b9050612a4d6135da565b612a55612f04565b9050612a5f6135f4565b612a6960006109a8565b905060005b6004811015612ab957612a9f86608001518260048110612a8a57fe5b602002015186606001518360078110610f9857fe5b9250612ab1848463ffffffff61259c16565b600101612a6e565b50608085015151612acb908290612f3f565b6080850151612adb906001612835565b6060840151612aed9082906004610f98565b9150612aff838363ffffffff61259c16565b60a0850151516060850151612b1691906006610f98565b9150612b28838363ffffffff61259c16565b60c085015151612b39908490613117565b612b416135f4565b612b4b60016109a8565b9050612b58878783613122565b9150612b6f828660800151600160028110610f9857fe5b9250612b81848463ffffffff61259c16565b8651612b9490829063ffffffff612f2516565b612b9c6135f4565b612ba582612f44565b9050612baf6135f4565b612bbc8960a00151612f44565b9050612bd5896020015182612f2590919063ffffffff16565b608088015151612be6908290612f53565b6040890151612bfc90829063ffffffff612f5316565b60005b6003811015612caf5760a08a0151612c1e90869063ffffffff612f3f16565b612c438860c001518260038110612c3157fe5b6020020151869063ffffffff612f2516565b60208a0151612c5990869063ffffffff612f2516565b60408a0151612c6f90869063ffffffff612f5316565b612c9789608001518260010160048110612c8557fe5b6020020151869063ffffffff612f5316565b612ca7828663ffffffff612f2516565b600101612bff565b50612cc0818363ffffffff612f2516565b8851612cd390849063ffffffff612f2516565b612cfe8960c00151600081518110612ce757fe5b602002602001015185612f3f90919063ffffffff16565b612d0e848463ffffffff612f2516565b612d1e818563ffffffff612f5316565b612d266135f4565b612d3060016109a8565b905060005b6003811015612dcd5760208b0151612d5490879063ffffffff612f3f16565b612d7a8a61014001518260038110612d6857fe5b6020020151879063ffffffff612f2516565b60408b0151612d9090879063ffffffff612f5316565b612db58a608001518260048110612da357fe5b6020020151879063ffffffff612f5316565b612dc5828763ffffffff612f2516565b600101612d35565b5060208a0151612de490829063ffffffff612f2516565b60e0890151612dfa90829063ffffffff612f2516565b612e0a818463ffffffff612f2516565b6040890151612e1f908363ffffffff61258916565b60a0890151909650612e4590612e389083906003610f98565b879063ffffffff612f6d16565b612e55878763ffffffff61259c16565b60608a0151612e6b90889063ffffffff61311716565b5050505050509392505050565b612e806135f4565b612e886136c6565b6040518060c001604052806020815260200160208152602001602081526020018560000151815260200184815260200160008051602061438c8339815191528152509050612ed46136a8565b600060208260c08560055afa905080612eec57600080fd5b50604080516020810190915290518152949350505050565b612f0c6135da565b5060408051808201909152600181526002602082015290565b60008051602061438c833981519152815183510990915250565b519052565b612f4c6135f4565b9051815290565b60008051602061438c833981519152815183510890915250565b61011d828284613401565b6020810151612f9257805115612f8d57600080fd5b612fab565b60208101805160008051602061436c8339815191520390525b50565b612fb66136e4565b835181526020840151816001602002015282518160026020020152600060408360608460075afa905080612fe957600080fd5b5050505050565b815115801561300157506020820151155b15613019578251815260208084015190820152613083565b825115801561302a57506020830151155b15613042578151815260208083015190820152613083565b61304a613702565b8351815260208085015181830152835160408301528301518160035b6020020152600060408360808460065afa905080612fe957600080fd5b505050565b8051825160008051602061438c833981519152918203900890915250565b6130ae6135f4565b81516130b957600080fd5b610374827f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffffff612e78565b6130eb6135f4565b6130fb828463ffffffff612e7816565b90506106b861310a60016109a8565b829063ffffffff61308816565b61011d828284612fae565b61312a6135f4565b6131326135f4565b61313c60016109a8565b90506131466135f4565b61315060026109a8565b905061315a6135f4565b61316460036109a8565b905061316e6135f4565b61317860046109a8565b905061318460006109a8565b945061318e6135f4565b61319860006109a8565b90506131a26135f4565b6131ac60006109a8565b90506131b66135f4565b6131c060006109a8565b905060005b60038110156132ef578b516131e1908b9063ffffffff612f2516565b6132018b6080015182600303600481106131f757fe5b6020020151612f44565b9350613213848663ffffffff612f2516565b6132298b6080015182600203600481106131f757fe5b925061323b838563ffffffff61308816565b61324483612f44565b915061324f83612f44565b9350613261848963ffffffff61308816565b613271828563ffffffff612f2516565b61327a83612f44565b935061328c848863ffffffff61308816565b61329c828563ffffffff612f2516565b6132a583612f44565b93506132b7848763ffffffff61308816565b6132c7828563ffffffff612f2516565b6132d7828b63ffffffff612f2516565b6132e7898363ffffffff612f5316565b6001016131c5565b508a51613303908a9063ffffffff612f2516565b60808a01516133139060006131f7565b9250613325838563ffffffff612f2516565b60a08a01516133359060006131f7565b9150613347828463ffffffff61308816565b61335082612f44565b905061335b82612f44565b925061336d838863ffffffff61308816565b61337d818463ffffffff612f2516565b61338682612f44565b9250613398838763ffffffff61308816565b6133a8818463ffffffff612f2516565b6133b182612f44565b92506133c3838663ffffffff61308816565b6133d3818463ffffffff612f2516565b6133e3818a63ffffffff612f2516565b6133f3888263ffffffff612f5316565b505050505050509392505050565b815115801561341257506020820151155b1561342a578251815260208084015190820152613083565b825115801561343b57506020830151155b15613463578151815260208083015160008051602061436c8339815191520390820152613083565b61346b613702565b83518152602080850151818301528351604083015283015160008051602061436c83398151915203816003613066565b604051806101a00160405280606081526020016134b6613720565b81526020016134c36135da565b81526020016134d0613720565b81526020016134dd61374d565b81526020016134ea61377a565b81526020016134f761377a565b81526020016135046135f4565b81526020016135116135f4565b815260200161351e6135f4565b815260200161352b6137a7565b81526020016135386135da565b81526020016135456135da565b905290565b604051806101000160405280600081526020016000815260200161356c6135f4565b81526020016135796137d4565b8152602001613586613801565b8152602001613593613720565b81526020016135a06137a7565b8152602001613545613668565b60405180604001604052806002905b6135c46135da565b8152602001906001900390816135bc5790505090565b604051806040016040528060008152602001600081525090565b6040518060200160405280600081525090565b6040518060e0016040528061361a6135f4565b81526020016136276135f4565b81526020016136346135f4565b81526020016136416135f4565b815260200161364e6135f4565b815260200161365b6135f4565b8152602001606081525090565b604051806040016040528061367b61382e565b815260200161354561382e565b604080516060810182526000808252602082018190529181019190915290565b60405180602001604052806001906020820280388339509192915050565b6040518060c001604052806006906020820280388339509192915050565b60405180606001604052806003906020820280388339509192915050565b60405180608001604052806004906020820280388339509192915050565b60405180608001604052806004905b6137376135da565b81526020019060019003908161372f5790505090565b60405180608001604052806004905b6137646135f4565b81526020019060019003908161375c5790505090565b60405180602001604052806001905b6137916135f4565b8152602001906001900390816137895790505090565b60405180606001604052806003905b6137be6135f4565b8152602001906001900390816137b65790505090565b6040518060e001604052806007905b6137eb6135da565b8152602001906001900390816137e35790505090565b60405180604001604052806002905b6138186135da565b8152602001906001900390816138105790505090565b60405180604001604052806002906020820280388339509192915050565b600082601f83011261385d57600080fd5b600361387061386b82614295565b61426f565b9150818385602084028201111561388657600080fd5b60005b838110156138b2578161389c8882613bb3565b8452506020928301929190910190600101613889565b5050505092915050565b600082601f8301126138cd57600080fd5b60026138db61386b82614295565b915081838560408402820111156138f157600080fd5b60005b838110156138b257816139078882613be6565b845250602090920191604091909101906001016138f4565b600082601f83011261393057600080fd5b600461393e61386b82614295565b9150818385604084028201111561395457600080fd5b60005b838110156138b2578161396a8882613be6565b84525060209092019160409190910190600101613957565b600082601f83011261399357600080fd5b60076139a161386b82614295565b915081838560408402820111156139b757600080fd5b60005b838110156138b257816139cd8882613be6565b845250602090920191604091909101906001016139ba565b600082601f8301126139f657600080fd5b6002613a0461386b82614295565b91508183856020840282011115613a1a57600080fd5b60005b838110156138b25781613a308882613d2d565b8452506020928301929190910190600101613a1d565b60008083601f840112613a5857600080fd5b5081356001600160401b03811115613a6f57600080fd5b602083019150836020820283011115610a1557600080fd5b600082601f830112613a9857600080fd5b8135613aa661386b826142b2565b91508181835260208401935060208101905083856020840282011115613acb57600080fd5b60005b838110156138b25781613ae18882613d2d565b8452506020928301929190910190600101613ace565b600082601f830112613b0857600080fd5b8135613b1661386b826142b2565b91508181835260208401935060208101905083856020840282011115613b3b57600080fd5b60005b838110156138b25781613b518882613d43565b8452506020928301929190910190600101613b3e565b80516106b881614345565b60008083601f840112613b8457600080fd5b5081356001600160401b03811115613b9b57600080fd5b602083019150836001820283011115610a1557600080fd5b600060208284031215613bc557600080fd5b613bcf602061426f565b90506000613bdd8484613d2d565b82525092915050565b600060408284031215613bf857600080fd5b613c02604061426f565b90506000613c108484613d2d565b8252506020613c2184848301613d2d565b60208301525092915050565b600060808284031215613c3f57600080fd5b613c49604061426f565b90506000613c5784846139e5565b8252506040613c21848483016139e5565b60006104808284031215613c7b57600080fd5b613c8661010061426f565b90506000613c948484613d2d565b8252506020613ca584848301613d2d565b6020830152506040613cb984828501613bb3565b6040830152506060613ccd84828501613982565b606083015250610220613ce2848285016138bc565b6080830152506102a0613cf78482850161391f565b60a0830152506103a0613d0c8482850161384c565b60c083015250610400613d2184828501613c2d565b60e08301525092915050565b80356106b881614345565b80356106b881614359565b80356106b881614362565b60008060008060008060008060008060a08b8d031215613d6d57600080fd5b8a356001600160401b03811115613d8357600080fd5b613d8f8d828e01613a46565b9a509a505060208b01356001600160401b03811115613dad57600080fd5b613db98d828e01613a46565b985098505060408b01356001600160401b03811115613dd757600080fd5b613de38d828e01613a46565b965096505060608b01356001600160401b03811115613e0157600080fd5b613e0d8d828e01613a46565b945094505060808b01356001600160401b03811115613e2b57600080fd5b613e378d828e01613a46565b92509250509295989b9194979a5092959850565b60008060006104c08486031215613e6157600080fd5b83356001600160401b03811115613e7757600080fd5b613e8386828701613a87565b93505060208401356001600160401b03811115613e9f57600080fd5b613eab86828701613a87565b9250506040613ebc86828701613c68565b9150509250925092565b600080600080600080600080610560898b031215613ee357600080fd5b88356001600160401b03811115613ef957600080fd5b613f058b828c01613a87565b98505060208901356001600160401b03811115613f2157600080fd5b613f2d8b828c01613a87565b9750506040613f3e8b828c01613d2d565b9650506060613f4f8b828c01613d43565b95505060808901356001600160401b03811115613f6b57600080fd5b613f778b828c01613af7565b94505060a08901356001600160401b03811115613f9357600080fd5b613f9f8b828c01613a87565b93505060c08901356001600160401b03811115613fbb57600080fd5b613fc78b828c01613a87565b92505060e0613fd88b828c01613c68565b9150509295985092959890939650565b600060208284031215613ffa57600080fd5b60006140068484613b67565b949350505050565b6000806020838503121561402157600080fd5b82356001600160401b0381111561403757600080fd5b61404385828601613b72565b92509250509250929050565b60006020828403121561406157600080fd5b60006140068484613d38565b60006140798383614129565b505060200190565b600061408c826142d8565b6140968185610377565b93506140a1836142d2565b8060005b838110156140cf5781516140b9888261406d565b97506140c4836142d2565b9250506001016140a5565b509495945050505050565b6140e3816142dc565b82525050565b6140e36140f5826142e1565b6142e1565b6000614105826142d8565b61410f8185610377565b935061411f8185602086016142f3565b9290920192915050565b6140e3816142e1565b6140e361413e826142e4565b614323565b6140e361414f826142ed565b61432e565b600061011682846140fa565b600061416c82856140fa565b91506140068284614081565b600061418482856140fa565b915061419082846140e9565b5060200192915050565b60006141a682856140fa565b91506141b28284614143565b5060010192915050565b60006141c882846140e9565b50602001919050565b60006141dd8287614132565b6004820191506141ed82866140e9565b6020820191506141fd82856140e9565b60208201915061420d82846140e9565b50602001949350505050565b60006142258287614132565b60048201915061423582866140e9565b60208201915061424582856140e9565b6020820191506142558284614132565b50600401949350505050565b602081016106b882846140da565b6040518181016001600160401b038111828210171561428d57600080fd5b604052919050565b60006001600160401b038211156142ab57600080fd5b5060200290565b60006001600160401b038211156142c857600080fd5b5060209081020190565b60200190565b5190565b151590565b90565b63ffffffff1690565b60ff1690565b60005b8381101561430e5781810151838201526020016142f6565b8381111561431d576000848401525b50505050565b600061037482614339565b60006103748261433f565b60e01b90565b60f81b90565b61434e816142e1565b8114612fab57600080fd5b61434e816142e4565b61434e816142ed56fe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a365627a7a7231582047e68e6e1d023d7823b4a99f7fe264b8eb9014ad6823f6e9b2984ed94292f10b6c6578706572696d656e74616cf564736f6c63430005100040
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100625760003560e01c80631d8a5663146100675780632539464514610090578063439fab911461009057806360296694146100a55780637756aa8a146100b8578063e54ee6b1146100cb575b600080fd5b61007a610075366004613e4b565b6100de565b6040516100879190614261565b60405180910390f35b6100a361009e36600461400e565b61011d565b005b61007a6100b3366004613ec6565b610121565b61007a6100c6366004613d4e565b610168565b61007a6100d936600461404f565b610369565b600083518260200151146100f157600080fd5b6100f961349b565b610103858561037c565b90506000610111828561066c565b925050505b9392505050565b5050565b6000885182602001511461013457600080fd5b61013c61349b565b6101468a8a61037c565b9050600061015982858b8b8b8b8b6106be565b9b9a5050505050505050505050565b600061018f565b815a6207a1200111156101845760010161016f565b60019250505061035b565b6040805187815260208089028201019091526060908780156101bb578160200160208202803883390190505b50905060005b63ffffffff811688111561022a576101fe89898363ffffffff168181106101e457fe5b90506020020160206101f9919081019061404f565b61076e565b828263ffffffff168151811061021057fe5b60ff909216602092830291909101909101526001016101c1565b5061023361354a565b61023c886107fb565b90506103568d8d80806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508c8c8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808e0282810182019093528d82527f0a3cdc9655e61bf64758c1e8df745723e9b83addd4f0d0f2dd65dc762dc1e9e794506005935089928f918f918291850190849080828437600081840152601f19601f820116905080830192505050505050508b8b808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508b9250610121915050565b925050505b9a9950505050505050505050565b600061037482610831565b90505b919050565b61038461349b565b602282511461039257600080fd5b82516040519080825280602002602001820160405280156103bd578160200160208202803883390190505b50815260005b8351811015610403578381815181106103d857fe5b6020026020010151826000015182815181106103f057fe5b60209081029190910101526001016103c3565b506000805b60048110156104685761044484838151811061042057fe5b602002602001015185846001018151811061043757fe5b60200260200101516108c6565b8360200151826004811061045457fe5b602002015260029190910190600101610408565b5061048f83828151811061047857fe5b602002602001015184836001018151811061043757fe5b604083015260020160005b60048110156104d6576104b284838151811061042057fe5b836060015182600481106104c257fe5b60200201526002919091019060010161049a565b5060005b6004811015610520576104ff8483815181106104f257fe5b60200260200101516109a8565b8360800151826004811061050f57fe5b6020020152600191820191016104da565b5060005b600181101561055d5761053c8483815181106104f257fe5b8360a00151826001811061054c57fe5b602002015260019182019101610524565b5060005b600181101561059a576105798483815181106104f257fe5b8360c00151826001811061058957fe5b602002015260019182019101610561565b5060005b60038110156105d8576105b68483815181106104f257fe5b83610140015182600381106105c757fe5b60200201526001918201910161059e565b506105e88382815181106104f257fe5b8260e001819052506001810190506106058382815181106104f257fe5b8261010001819052506001810190506106238382815181106104f257fe5b82610120018190525060018101905061064183828151811061047857fe5b82610160018190525060028101905061065f83828151811061047857fe5b6101808301525092915050565b6000806106776135ad565b61068185856109dc565b909250905081610696576000925050506106b8565b80516106b3906106a4610a1c565b602084015160e0880151610adc565b925050505b92915050565b6000806106c96135ad565b6106d68888888888610bb7565b9150915089600001516000815181106106eb57fe5b602002602001015182146106fb57fe5b60006107056135ad565b61070f8c8c6109dc565b909250905081610726576000945050505050610763565b61072e6135ad565b6107388483610efe565b805190915061075b90610749610a1c565b83600160200201518f60e00151610adc565b955050505050505b979650505050505050565b600063ffffffff82166006141561078757506000610377565b63ffffffff8216600c141561079e57506001610377565b63ffffffff8216603014156107b557506002610377565b63ffffffff8216606014156107cc57506003610377565b63ffffffff821660cc14156107e357506004610377565b63ffffffff82166101a4141561037757506005610377565b61080361354a565b63ffffffff82166001141561081a57610374610fe7565b63ffffffff8216600514156103775761037461154d565b600063ffffffff82166006141561084a57506001610377565b63ffffffff8216600c141561086157506001610377565b63ffffffff82166030141561087857506001610377565b63ffffffff82166060141561088f57506001610377565b63ffffffff821660cc14156108a657506001610377565b63ffffffff82166101a414156108be57506001610377565b506000610377565b6108ce6135da565b821580156108da575081155b156108fb5760405180604001604052808481526020018381525090506106b8565b60008051602061436c833981519152831061091557600080fd5b60008051602061436c833981519152821061092f57600080fd5b600060008051602061436c8339815191528384099050600060008051602061436c833981519152858609905060008051602061436c833981519152858209905060008051602061436c83398151915260038208905080821461099057600080fd5b50506040805180820190915292835250602082015290565b6109b06135f4565b60008051602061438c83398151915282106109ca57600080fd5b50604080516020810190915290815290565b60006109e66135ad565b6109ee613607565b6109f98186866119b4565b925082610a065750610a15565b610a11818686611c9d565b9150505b9250929050565b610a24613668565b50604080516080810182527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c28183019081527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6060830152815281518083019092527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b82527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa60208381019190915281019190915290565b60408051600280825260608281019093526000929190816020015b610aff6135da565b815260200190600190039081610af757505060408051600280825260608083019093529293509091602082015b610b34613668565b815260200190600190039081610b2c5790505090508682600081518110610b5757fe5b60200260200101819052508482600181518110610b7057fe5b60200260200101819052508581600081518110610b8957fe5b60200260200101819052508381600181518110610ba257fe5b602002602001018190525061076382826122c8565b6000610bc16135ad565b8351855114610bcc57fe5b606087604051602001610bdf91906141bc565b60408051601f1981840301815291905290506000805b8751811015610c5157878181518110610c0a57fe5b602002602001015191508860ff168260ff161115610c2457fe5b8282604051602001610c3792919061419a565b60408051601f198184030181529190529250600101610bf5565b506000805b8851811015610cb957878181518110610c6b57fe5b6020026020010151915060008051602061438c8339815191528210610c8c57fe5b8382604051602001610c9f929190614178565b60408051601f198184030181529190529350600101610c56565b508286604051602001610ccd929190614160565b60405160208183030381529060405292506000600284604051610cf09190614154565b602060405180830381855afa158015610d0d573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250610d309190810190613fe8565b90506001600160f81b038160001c169550610e1b604460030288600381518110610d5657fe5b6020026020010151901b604460020289600281518110610d7257fe5b6020026020010151901b60448a600181518110610d8b57fe5b6020026020010151901b8a600081518110610da257fe5b6020026020010151010101604460030289600781518110610dbf57fe5b6020026020010151901b60446002028a600681518110610ddb57fe5b6020026020010151901b60448b600581518110610df457fe5b6020026020010151901b8b600481518110610e0b57fe5b60200260200101510101016108c6565b85528651610ee89060cc908990600b908110610e3357fe5b6020026020010151901b604460020289600a81518110610e4f57fe5b6020026020010151901b60448a600981518110610e6857fe5b6020026020010151901b8a600881518110610e7f57fe5b6020026020010151010101604460030289600f81518110610e9c57fe5b6020026020010151901b60446002028a600e81518110610eb857fe5b6020026020010151901b60448b600d81518110610ed157fe5b6020026020010151901b8b600c81518110610e0b57fe5b8560016020020152505050509550959350505050565b610f066135ad565b610f0e613688565b610f166124c4565b9050610f318460005b6020020151829063ffffffff6124e016565b610f3c846001610f1f565b610f47836000610f1f565b610f52836001610f1f565b610f5a6135f4565b610f63826124fc565b9050610f768560005b602002015161256d565b8352610f83856001610f6c565b6020840152610f906135da565b610fa9828660005b60200201519063ffffffff61258916565b9050610fc4818560005b60200201519063ffffffff61259c16565b610fd082866001610f98565b9050610fde81856001610fb3565b50505092915050565b610fef61354a565b624000008152600160208201526110257f18c95f1ae6514e11a1b30fd7923947c5ffcec5347f16e91b4dd654168326bede6109a8565b60408201526110747f19fbd6706b4cbde524865701eae0ae6a270608a09c3afdab7760b685c1c6c41b7f25082a191f0690c175cc9af1106c6c323b5b5de4e24dc23be1e965e1851bca486125a7565b6060820151526110c47f16c02d9ca95023d1812a58d16407d1ea065073f02c916290e39242303a8a1d8e7f230338b422ce8533e27cd50086c28cb160cf05a7ae34ecd5899dbdf449dc7ce06125a7565b6060820151602001526111177f1db0d133243750e1ea692050bbf6068a49dc9f6bae1f11960b6ce9e10adae0f57f12a453ed0121ae05de60848b4374d54ae4b7127cb307372e14e8daf5097c51236125a7565b60608201516040015261116a7f1062ed5e86781fd34f78938e5950c2481a79f132085d2bc7566351ddff9fa3b77f2fd7aac30f645293cc99883ab57d8c99a518d5b4ab40913808045e86534973466125a7565b60608281015101526111bc7f062755048bb95739f845e8659795813127283bf799443d62fea600ae23e7f2637f2af86098beaa241281c78a454c5d1aa6e9eedc818c96cd1e6518e1ac2d26aa396125a7565b60608201516080015261120f7f0994e25148bbd25be655034f81062d1ebf0a1c2b41e0971434beab1ae81014747f27cc8cfb1fafd13068aeee0e08a272577d89f8aa0fb8507aabbc62f37587b98f6125a7565b606082015160a001526112627f044edf69ce10cfb6206795f92c3be2b0d26ab9afd3977b789840ee58c7dbe9277f2a8aa20c106f8dc7e849bc9698064dcfa9ed0a4050d794a1db0f13b0ee3def376125a7565b606082015160c001526112b57f136967f1a2696db05583a58dbf8971c5d9d1dc5f5c97e88f3b4822aa52fefa1c7f127b41299ea5c840c3b12dbe7b172380f432b7b63ce3b004750d6abb9e7b3b7a6125a7565b6080820151526113057f02fd5638bf3cc2901395ad1124b951e474271770a337147a2167e9797ab9d9517f0fcb2e56b077c8461c36911c9252008286d782e96030769bf279024fc81d412a6125a7565b6080820151602001526113587f1865c60ecad86f81c6c952445707203c9c7fdace3740232ceb704aefd5bd45b37f2f35e29b39ec8bb054e2cff33c0299dd13f8c78ea24a07622128a7444aba3f266125a7565b60a0820151526113a87f2a86ec9c6c1f903650b5abbf0337be556b03f79aecc4d917e90c7db94518dde67f15b1b6be641336eebd58e7991be2991debbbd780e70c32b49225aa98d10b70166125a7565b60a0820151602001526113fb7f213e42fcec5297b8e01a602684fcd412208d15bdac6b6331a8819d478ba468997f03223485f4e808a3b2496ae1a3c0dfbcbf4391cffc57ee01e8fca114636ead186125a7565b60a08201516040015261144e7f2e9b02f8cf605ad1a36e99e990a07d435de06716448ad53053c7a7a5341f71e17f2d6fdf0bc8bd89112387b1894d6f24b45dcb122c09c84344b6fc77a619dd1d596125a7565b60a08201516060015261146160056109a8565b60c08201515261147160076109a8565b60c082015160200152611484600a6109a8565b60c08201516002602002018190525061154560405180604001604052807f260e01b251f6f1c7e7ff4e580791dee8ea51d87a358e038b4efe30fac09383c181526020017f0118c4d5b837bcc2bc89b5b398b5974e9f5944073b32078b7e231fec938883b081525060405180604001604052807f04fc6369f7110fe3d25156c1bb9a72859cf2a04641f99ba4ee413c80da6a5fe481526020017f22febda3c0c0632a56475b4214e5615e11e6dd3f96e6cea2854a87d4dacc5e558152506125c5565b60e082015290565b61155561354a565b630100000081526001602082015261158c7f1951441010b2b95a6e47a6075066a50a036f5ba978c050f2821df86636c0facb6109a8565b60408201526115db7f023cfc69ef1b002da66120fce352ede75893edd8cd8196403a54e1eceb82cd437f2baf3bd673e46be9df0d43ca30f834671543c22db422f450b2efd8c931e9b34e6125a7565b60608201515261162b7f23783fe0e5c3f83c02c864e25fe766afb727134c9a77ae6b9694efb7b46f31ab7f1903d01005e447d061c16323a1d604d8fbd4b5cc9b64945a71f1234d280c4d3a6125a7565b60608201516020015261167e7f2897df6c6fa993661b2b0b0cf52460278e33533de71b3c0f7ed7c1f20af238c67f042344afee0aed5505e59bce4ebbe942a91268a8af6b77ea95f603b5b726e8cb6125a7565b6060820151604001526116d07f0fceed33e78426afc38d8a68c0d93413d2bbaa492b087125271d33d52bdb07b87e57e4f63be36edb56e91da931f3d0ba72d1862d4b7751c59b92b6ae9f1fcc116125a7565b60608281015101526117227f14230a35f172cd77a2147cecc20b2a13148363cbab78709489a29d08001e26fb7f04f1040477d77896475080b5abb8091cda2cce4917ee0ba5dd62d0ab1be379b46125a7565b6060820151608001526117757f20d1a079ad80a8abb7fd8ba669dddbbe23231360a5f0ba679b6536b6bf9806497f120c5a845903bd6de4105eb8cef90e6dff2c3888ada16c90e1efb393778d6a4d6125a7565b606082015160a001526117c87f1af6b9e362e458a96b8bbbf8f8ce2bdbd650fb68478360c408a2acf1633c1ce17f27033728b767b44c659e7896a6fcc956af97566a5a1135f87a2e510976a62d416125a7565b606082015160c0015261181b7f0dbfb3c5f5131eb6f01e12b1a6333b0ad22cc8292b666e46e9bd4d80802cccdf7f2d058711c42fd2fd2eef33fb327d111a27fe2063b46e1bb54b32d02e9676e5466125a7565b60808201515261186b7f0c8c7352a84dd3f32412b1a96acd94548a292411fd7479d8609ca9bd872f1e367f0874203fd8012d6976698cc2df47bca14bc04879368ade6412a2109c1e71e5e86125a7565b6080820151602001526118be7f1b17bb7c319b1cf15461f4f0b69d98e15222320cb2d22f4e3a5f5e0e9e51f4bd7f0cf5bc338235ded905926006027aa2aab277bc32a098cd5b5353f5545cbd28256125a7565b60a08201515261190e7f0794d3cfbc2fdd756b162571a40e40b8f31e705c77063f30a4e9155dbc00e0ef7f1f821232ab8826ea5bf53fe9866c74e88a218c8d163afcaa395eda4db57b7a236125a7565b60a0820151602001526119617f224d93783aa6856621a9bbec495f4830c94994e266b240db9d652dbb394a283b7f161bcec99f3bc449d655c0ca59874dafe1194138eec91af34392b09a83338ca16125a7565b60a08201516040015261144e7f1fa27e2916b2c11d39c74c0e61063190da31c102d2b7da5c0a61ec8c5e82f1327f0a815ee76cd8aa600e6f66463b25a0ee57814bfdf06c65a91ddc70cede41caae6125a7565b6020810151825151600091146119c957600080fd5b81602001516001146119da57600080fd5b6119e2613688565b6119ea6124c4565b905060005b8360200151811015611a2d57611a2585600001518281518110611a0e57fe5b6020026020010151836125cd90919063ffffffff16565b6001016119ef565b5060005b6004811015611a6757611a5f85602001518260048110611a4d57fe5b6020020151839063ffffffff6124e016565b600101611a31565b50611a71816124fc565b6020860152611a7f816124fc565b604080870191909152840151611a9c90829063ffffffff6124e016565b611aa5816124fc565b855260005b6004811015611ace57611ac685606001518260048110611a4d57fe5b600101611aaa565b50611ad8816124fc565b60a086015260408051600180825281830190925290816020015b611afa6135f4565b815260200190600190039081611af257505060c08601528251604084015160a0870151611b2b926000929091612640565b8560c00151600081518110611b3c57fe5b60200260200101819052506000611b54868686612721565b905080611b6657600092505050610116565b610100850151611b7d90839063ffffffff612a1d16565b60005b6004811015611bb657611bae86608001518260048110611b9c57fe5b6020020151849063ffffffff612a1d16565b600101611b80565b5060005b6001811015611bde57611bd68660a001518260018110611b9c57fe5b600101611bba565b5060c085015151611bf0908390612a1d565b60005b6003811015611c1857611c108661014001518260038110611b9c57fe5b600101611bf3565b5060e0850151611c2f90839063ffffffff612a1d16565b610120850151611c4690839063ffffffff612a1d16565b611c4f826124fc565b6060870152610160850151611c6b90839063ffffffff6124e016565b610180850151611c8290839063ffffffff6124e016565b611c8b826124fc565b60808701525060019150509392505050565b611ca56135ad565b611cad6135da565b611cb8858585612a2b565b9050611cc26135f4565b835160a0870151611cd89163ffffffff612e7816565b9050611ce26135da565b611cea612f04565b9050611cf46135f4565b611cfe60016109a8565b9050611d086135da565b6060880151611d18906000610f6c565b9050611d226135f4565b611d2c60016109a8565b905060015b6004811015611d7857611d4a828763ffffffff612f2516565b611d5e828b606001518360048110610f9857fe5b9450611d70838663ffffffff61259c16565b600101611d31565b5060608a0151611d8f90849063ffffffff612f2516565b611d9f828763ffffffff61259c16565b60005b6004811015611def5760608b0151611dc190859063ffffffff612f2516565b611dd5848b602001518360048110610f9857fe5b9450611de7838663ffffffff61259c16565b600101611da2565b5060005b6001811015611e405760608b0151611e1290859063ffffffff612f2516565b611e26848a608001518360028110610f9857fe5b9450611e38838663ffffffff61259c16565b600101611df3565b5060005b6003811015611e915760608b0151611e6390859063ffffffff612f2516565b611e77848a60a001518360048110610f9857fe5b9450611e89838663ffffffff61259c16565b600101611e44565b5060608a0151611ea890849063ffffffff612f2516565b611eb8818463ffffffff612f3f16565b60808a0151611ece90829063ffffffff612f2516565b6040890151611ef490611ee7908363ffffffff61258916565b839063ffffffff61259c16565b60608a0151611f0a90849063ffffffff612f2516565b611f1a818463ffffffff612f3f16565b60808a0151611f3090829063ffffffff612f2516565b6020890151611f429082906003610f98565b9350611f54828563ffffffff61259c16565b611f5e60016109a8565b9250611f686135f4565b611f768a6101000151612f44565b9050611f8f8b6060015185612f2590919063ffffffff16565b6101208a0151611fa690839063ffffffff612f3f16565b611fb6828563ffffffff612f2516565b611fc6818363ffffffff612f5316565b60005b60048110156120355760608c0151611fe890869063ffffffff612f2516565b61200d8b608001518260048110611ffb57fe5b6020020151849063ffffffff612f3f16565b61201d838663ffffffff612f2516565b61202d828463ffffffff612f5316565b600101611fc9565b5060005b60018110156120935760608c015161205890869063ffffffff612f2516565b61206b8b60c001518260018110611ffb57fe5b61207b838663ffffffff612f2516565b61208b828463ffffffff612f5316565b600101612039565b5060005b60038110156120f25760608c01516120b690869063ffffffff612f2516565b6120ca8b61014001518260038110611ffb57fe5b6120da838663ffffffff612f2516565b6120ea828463ffffffff612f5316565b600101612097565b5060608b015161210990859063ffffffff612f2516565b60e08a015161211f90839063ffffffff612f3f16565b61212f828563ffffffff612f2516565b60808b015161214590839063ffffffff612f2516565b612155818363ffffffff612f5316565b60608b015161216b90859063ffffffff612f2516565b60a08a01515161217c908390612f3f565b61218c828563ffffffff612f2516565b60808b01516121a290839063ffffffff612f2516565b6121b2818363ffffffff612f5316565b6121da6121cd826121c1612f04565b9063ffffffff61258916565b849063ffffffff612f6d16565b6121e26135da565b5060a08b01516101608b01518491612210916122039163ffffffff61258916565b829063ffffffff61259c16565b60a08c015161222690849063ffffffff612f3f16565b60408a015161223c90849063ffffffff612f2516565b60808c015161225290849063ffffffff612f2516565b6101808b015161226c90612203908563ffffffff61258916565b6122746135da565b60808d01516101808d015161228e9163ffffffff61258916565b90506122a88c61016001518261259c90919063ffffffff16565b6122b181612f78565b908952602089015250959998505050505050505050565b600081518351146122d857600080fd5b8251604080516006830280825260c08402820160200190925260609082801561230b578160200160208202803883390190505b50905060005b838110156124905786818151811061232557fe5b60200260200101516000015182826006026000018151811061234357fe5b60200260200101818152505086818151811061235b57fe5b60200260200101516020015182826006026001018151811061237957fe5b60200260200101818152505085818151811061239157fe5b6020908102919091010151515182518390600260068502019081106123b257fe5b6020026020010181815250508581815181106123ca57fe5b602090810291909101015151600160200201518282600602600301815181106123ef57fe5b60200260200101818152505085818151811061240757fe5b60200260200101516020015160006002811061241f57fe5b602002015182826006026004018151811061243657fe5b60200260200101818152505085818151811061244e57fe5b60200260200101516020015160016002811061246657fe5b602002015182826006026005018151811061247d57fe5b6020908102919091010152600101612311565b506124996136a8565b6000602082602086026020860160085afa9050806124b657600080fd5b505115159695505050505050565b6124cc613688565b600080825260208201819052604082015290565b6124ee8282600001516125cd565b61011d8282602001516125cd565b6125046135f4565b6000600283600001518460200151856040015160405160200161252a9493929190614219565b60408051808303601f190181529181528151602092830120948101805160010163ffffffff169052805191820190526001600160fd1b0390931683525090919050565b6125756135da565b815181526020918201519181019190915290565b6125916135da565b6106b8838383612fae565b61011d828284612ff0565b6125af6135da565b5060408051808201909152918252602082015290565b6125af613668565b81516020808401516040516125eb92600092859290918791016141d1565b60408051601f198184030181529181528151602092830120855284820151905161261e92600192859290918791016141d1565b60408051601f1981840301815291905280516020918201209301929092525050565b6126486135f4565b83851061265457600080fd5b61265c6135f4565b61266660016109a8565b90506126706135f4565b612680858863ffffffff612e7816565b9050612692848763ffffffff612e7816565b92506126a4838363ffffffff61308816565b82516126af57600080fd5b6126bf838263ffffffff612f2516565b6126c76135f4565b6126d085612f44565b90506126e2818363ffffffff61308816565b6126fb6126ee886109a8565b829063ffffffff612f2516565b612704816130a6565b9050612716848263ffffffff612f2516565b505050949350505050565b600061272b6135f4565b61273d83600001518660a001516130e3565b805190915061274b57600080fd5b61010084015161276290829063ffffffff612f2516565b61276a6135f4565b61277460016109a8565b905061277e6135f4565b61278c866101200151612f44565b90506127966135f4565b6127a060006109a8565b90506127aa6135f4565b6127b460006109a8565b905060005b885151811015612828576127ed8a60c0015182815181106127d657fe5b602002602001015184612f3f90919063ffffffff16565b6128106128038a6000015183815181106104f257fe5b849063ffffffff612f2516565b612820828463ffffffff612f5316565b6001016127b9565b5060c08801516128479060005b6020020151829063ffffffff612f2516565b612857838263ffffffff612f5316565b885161286a90859063ffffffff612f2516565b885161287d90859063ffffffff612f2516565b885161289090859063ffffffff612f2516565b88516128a390859063ffffffff612f2516565b88516128b690859063ffffffff612f2516565b6128be6135f4565b6128cb8960e00151612f44565b905060005b6003811015612968576128ff8a610140015182600381106128ed57fe5b6020020151859063ffffffff612f3f16565b60208b015161291590859063ffffffff612f2516565b60408b015161292b90859063ffffffff612f5316565b6129508a60800151826004811061293e57fe5b6020020151859063ffffffff612f5316565b612960828563ffffffff612f2516565b6001016128d0565b5060408a015161297f90849063ffffffff612f3f16565b608089015160600151612993908490612f53565b6129a3818463ffffffff612f2516565b6129b3818663ffffffff612f2516565b6129c3848263ffffffff61308816565b89516129d690869063ffffffff612f2516565b6129ea8a60c001516000815181106127d657fe5b6129fa838663ffffffff612f2516565b612a0a848463ffffffff61308816565b5050905192519092149695505050505050565b61011d8282600001516125cd565b612a336135da565b6060820151612a43906005610f6c565b9050612a4d6135da565b612a55612f04565b9050612a5f6135f4565b612a6960006109a8565b905060005b6004811015612ab957612a9f86608001518260048110612a8a57fe5b602002015186606001518360078110610f9857fe5b9250612ab1848463ffffffff61259c16565b600101612a6e565b50608085015151612acb908290612f3f565b6080850151612adb906001612835565b6060840151612aed9082906004610f98565b9150612aff838363ffffffff61259c16565b60a0850151516060850151612b1691906006610f98565b9150612b28838363ffffffff61259c16565b60c085015151612b39908490613117565b612b416135f4565b612b4b60016109a8565b9050612b58878783613122565b9150612b6f828660800151600160028110610f9857fe5b9250612b81848463ffffffff61259c16565b8651612b9490829063ffffffff612f2516565b612b9c6135f4565b612ba582612f44565b9050612baf6135f4565b612bbc8960a00151612f44565b9050612bd5896020015182612f2590919063ffffffff16565b608088015151612be6908290612f53565b6040890151612bfc90829063ffffffff612f5316565b60005b6003811015612caf5760a08a0151612c1e90869063ffffffff612f3f16565b612c438860c001518260038110612c3157fe5b6020020151869063ffffffff612f2516565b60208a0151612c5990869063ffffffff612f2516565b60408a0151612c6f90869063ffffffff612f5316565b612c9789608001518260010160048110612c8557fe5b6020020151869063ffffffff612f5316565b612ca7828663ffffffff612f2516565b600101612bff565b50612cc0818363ffffffff612f2516565b8851612cd390849063ffffffff612f2516565b612cfe8960c00151600081518110612ce757fe5b602002602001015185612f3f90919063ffffffff16565b612d0e848463ffffffff612f2516565b612d1e818563ffffffff612f5316565b612d266135f4565b612d3060016109a8565b905060005b6003811015612dcd5760208b0151612d5490879063ffffffff612f3f16565b612d7a8a61014001518260038110612d6857fe5b6020020151879063ffffffff612f2516565b60408b0151612d9090879063ffffffff612f5316565b612db58a608001518260048110612da357fe5b6020020151879063ffffffff612f5316565b612dc5828763ffffffff612f2516565b600101612d35565b5060208a0151612de490829063ffffffff612f2516565b60e0890151612dfa90829063ffffffff612f2516565b612e0a818463ffffffff612f2516565b6040890151612e1f908363ffffffff61258916565b60a0890151909650612e4590612e389083906003610f98565b879063ffffffff612f6d16565b612e55878763ffffffff61259c16565b60608a0151612e6b90889063ffffffff61311716565b5050505050509392505050565b612e806135f4565b612e886136c6565b6040518060c001604052806020815260200160208152602001602081526020018560000151815260200184815260200160008051602061438c8339815191528152509050612ed46136a8565b600060208260c08560055afa905080612eec57600080fd5b50604080516020810190915290518152949350505050565b612f0c6135da565b5060408051808201909152600181526002602082015290565b60008051602061438c833981519152815183510990915250565b519052565b612f4c6135f4565b9051815290565b60008051602061438c833981519152815183510890915250565b61011d828284613401565b6020810151612f9257805115612f8d57600080fd5b612fab565b60208101805160008051602061436c8339815191520390525b50565b612fb66136e4565b835181526020840151816001602002015282518160026020020152600060408360608460075afa905080612fe957600080fd5b5050505050565b815115801561300157506020820151155b15613019578251815260208084015190820152613083565b825115801561302a57506020830151155b15613042578151815260208083015190820152613083565b61304a613702565b8351815260208085015181830152835160408301528301518160035b6020020152600060408360808460065afa905080612fe957600080fd5b505050565b8051825160008051602061438c833981519152918203900890915250565b6130ae6135f4565b81516130b957600080fd5b610374827f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593efffffff612e78565b6130eb6135f4565b6130fb828463ffffffff612e7816565b90506106b861310a60016109a8565b829063ffffffff61308816565b61011d828284612fae565b61312a6135f4565b6131326135f4565b61313c60016109a8565b90506131466135f4565b61315060026109a8565b905061315a6135f4565b61316460036109a8565b905061316e6135f4565b61317860046109a8565b905061318460006109a8565b945061318e6135f4565b61319860006109a8565b90506131a26135f4565b6131ac60006109a8565b90506131b66135f4565b6131c060006109a8565b905060005b60038110156132ef578b516131e1908b9063ffffffff612f2516565b6132018b6080015182600303600481106131f757fe5b6020020151612f44565b9350613213848663ffffffff612f2516565b6132298b6080015182600203600481106131f757fe5b925061323b838563ffffffff61308816565b61324483612f44565b915061324f83612f44565b9350613261848963ffffffff61308816565b613271828563ffffffff612f2516565b61327a83612f44565b935061328c848863ffffffff61308816565b61329c828563ffffffff612f2516565b6132a583612f44565b93506132b7848763ffffffff61308816565b6132c7828563ffffffff612f2516565b6132d7828b63ffffffff612f2516565b6132e7898363ffffffff612f5316565b6001016131c5565b508a51613303908a9063ffffffff612f2516565b60808a01516133139060006131f7565b9250613325838563ffffffff612f2516565b60a08a01516133359060006131f7565b9150613347828463ffffffff61308816565b61335082612f44565b905061335b82612f44565b925061336d838863ffffffff61308816565b61337d818463ffffffff612f2516565b61338682612f44565b9250613398838763ffffffff61308816565b6133a8818463ffffffff612f2516565b6133b182612f44565b92506133c3838663ffffffff61308816565b6133d3818463ffffffff612f2516565b6133e3818a63ffffffff612f2516565b6133f3888263ffffffff612f5316565b505050505050509392505050565b815115801561341257506020820151155b1561342a578251815260208084015190820152613083565b825115801561343b57506020830151155b15613463578151815260208083015160008051602061436c8339815191520390820152613083565b61346b613702565b83518152602080850151818301528351604083015283015160008051602061436c83398151915203816003613066565b604051806101a00160405280606081526020016134b6613720565b81526020016134c36135da565b81526020016134d0613720565b81526020016134dd61374d565b81526020016134ea61377a565b81526020016134f761377a565b81526020016135046135f4565b81526020016135116135f4565b815260200161351e6135f4565b815260200161352b6137a7565b81526020016135386135da565b81526020016135456135da565b905290565b604051806101000160405280600081526020016000815260200161356c6135f4565b81526020016135796137d4565b8152602001613586613801565b8152602001613593613720565b81526020016135a06137a7565b8152602001613545613668565b60405180604001604052806002905b6135c46135da565b8152602001906001900390816135bc5790505090565b604051806040016040528060008152602001600081525090565b6040518060200160405280600081525090565b6040518060e0016040528061361a6135f4565b81526020016136276135f4565b81526020016136346135f4565b81526020016136416135f4565b815260200161364e6135f4565b815260200161365b6135f4565b8152602001606081525090565b604051806040016040528061367b61382e565b815260200161354561382e565b604080516060810182526000808252602082018190529181019190915290565b60405180602001604052806001906020820280388339509192915050565b6040518060c001604052806006906020820280388339509192915050565b60405180606001604052806003906020820280388339509192915050565b60405180608001604052806004906020820280388339509192915050565b60405180608001604052806004905b6137376135da565b81526020019060019003908161372f5790505090565b60405180608001604052806004905b6137646135f4565b81526020019060019003908161375c5790505090565b60405180602001604052806001905b6137916135f4565b8152602001906001900390816137895790505090565b60405180606001604052806003905b6137be6135f4565b8152602001906001900390816137b65790505090565b6040518060e001604052806007905b6137eb6135da565b8152602001906001900390816137e35790505090565b60405180604001604052806002905b6138186135da565b8152602001906001900390816138105790505090565b60405180604001604052806002906020820280388339509192915050565b600082601f83011261385d57600080fd5b600361387061386b82614295565b61426f565b9150818385602084028201111561388657600080fd5b60005b838110156138b2578161389c8882613bb3565b8452506020928301929190910190600101613889565b5050505092915050565b600082601f8301126138cd57600080fd5b60026138db61386b82614295565b915081838560408402820111156138f157600080fd5b60005b838110156138b257816139078882613be6565b845250602090920191604091909101906001016138f4565b600082601f83011261393057600080fd5b600461393e61386b82614295565b9150818385604084028201111561395457600080fd5b60005b838110156138b2578161396a8882613be6565b84525060209092019160409190910190600101613957565b600082601f83011261399357600080fd5b60076139a161386b82614295565b915081838560408402820111156139b757600080fd5b60005b838110156138b257816139cd8882613be6565b845250602090920191604091909101906001016139ba565b600082601f8301126139f657600080fd5b6002613a0461386b82614295565b91508183856020840282011115613a1a57600080fd5b60005b838110156138b25781613a308882613d2d565b8452506020928301929190910190600101613a1d565b60008083601f840112613a5857600080fd5b5081356001600160401b03811115613a6f57600080fd5b602083019150836020820283011115610a1557600080fd5b600082601f830112613a9857600080fd5b8135613aa661386b826142b2565b91508181835260208401935060208101905083856020840282011115613acb57600080fd5b60005b838110156138b25781613ae18882613d2d565b8452506020928301929190910190600101613ace565b600082601f830112613b0857600080fd5b8135613b1661386b826142b2565b91508181835260208401935060208101905083856020840282011115613b3b57600080fd5b60005b838110156138b25781613b518882613d43565b8452506020928301929190910190600101613b3e565b80516106b881614345565b60008083601f840112613b8457600080fd5b5081356001600160401b03811115613b9b57600080fd5b602083019150836001820283011115610a1557600080fd5b600060208284031215613bc557600080fd5b613bcf602061426f565b90506000613bdd8484613d2d565b82525092915050565b600060408284031215613bf857600080fd5b613c02604061426f565b90506000613c108484613d2d565b8252506020613c2184848301613d2d565b60208301525092915050565b600060808284031215613c3f57600080fd5b613c49604061426f565b90506000613c5784846139e5565b8252506040613c21848483016139e5565b60006104808284031215613c7b57600080fd5b613c8661010061426f565b90506000613c948484613d2d565b8252506020613ca584848301613d2d565b6020830152506040613cb984828501613bb3565b6040830152506060613ccd84828501613982565b606083015250610220613ce2848285016138bc565b6080830152506102a0613cf78482850161391f565b60a0830152506103a0613d0c8482850161384c565b60c083015250610400613d2184828501613c2d565b60e08301525092915050565b80356106b881614345565b80356106b881614359565b80356106b881614362565b60008060008060008060008060008060a08b8d031215613d6d57600080fd5b8a356001600160401b03811115613d8357600080fd5b613d8f8d828e01613a46565b9a509a505060208b01356001600160401b03811115613dad57600080fd5b613db98d828e01613a46565b985098505060408b01356001600160401b03811115613dd757600080fd5b613de38d828e01613a46565b965096505060608b01356001600160401b03811115613e0157600080fd5b613e0d8d828e01613a46565b945094505060808b01356001600160401b03811115613e2b57600080fd5b613e378d828e01613a46565b92509250509295989b9194979a5092959850565b60008060006104c08486031215613e6157600080fd5b83356001600160401b03811115613e7757600080fd5b613e8386828701613a87565b93505060208401356001600160401b03811115613e9f57600080fd5b613eab86828701613a87565b9250506040613ebc86828701613c68565b9150509250925092565b600080600080600080600080610560898b031215613ee357600080fd5b88356001600160401b03811115613ef957600080fd5b613f058b828c01613a87565b98505060208901356001600160401b03811115613f2157600080fd5b613f2d8b828c01613a87565b9750506040613f3e8b828c01613d2d565b9650506060613f4f8b828c01613d43565b95505060808901356001600160401b03811115613f6b57600080fd5b613f778b828c01613af7565b94505060a08901356001600160401b03811115613f9357600080fd5b613f9f8b828c01613a87565b93505060c08901356001600160401b03811115613fbb57600080fd5b613fc78b828c01613a87565b92505060e0613fd88b828c01613c68565b9150509295985092959890939650565b600060208284031215613ffa57600080fd5b60006140068484613b67565b949350505050565b6000806020838503121561402157600080fd5b82356001600160401b0381111561403757600080fd5b61404385828601613b72565b92509250509250929050565b60006020828403121561406157600080fd5b60006140068484613d38565b60006140798383614129565b505060200190565b600061408c826142d8565b6140968185610377565b93506140a1836142d2565b8060005b838110156140cf5781516140b9888261406d565b97506140c4836142d2565b9250506001016140a5565b509495945050505050565b6140e3816142dc565b82525050565b6140e36140f5826142e1565b6142e1565b6000614105826142d8565b61410f8185610377565b935061411f8185602086016142f3565b9290920192915050565b6140e3816142e1565b6140e361413e826142e4565b614323565b6140e361414f826142ed565b61432e565b600061011682846140fa565b600061416c82856140fa565b91506140068284614081565b600061418482856140fa565b915061419082846140e9565b5060200192915050565b60006141a682856140fa565b91506141b28284614143565b5060010192915050565b60006141c882846140e9565b50602001919050565b60006141dd8287614132565b6004820191506141ed82866140e9565b6020820191506141fd82856140e9565b60208201915061420d82846140e9565b50602001949350505050565b60006142258287614132565b60048201915061423582866140e9565b60208201915061424582856140e9565b6020820191506142558284614132565b50600401949350505050565b602081016106b882846140da565b6040518181016001600160401b038111828210171561428d57600080fd5b604052919050565b60006001600160401b038211156142ab57600080fd5b5060200290565b60006001600160401b038211156142c857600080fd5b5060209081020190565b60200190565b5190565b151590565b90565b63ffffffff1690565b60ff1690565b60005b8381101561430e5781810151838201526020016142f6565b8381111561431d576000848401525b50505050565b600061037482614339565b60006103748261433f565b60e01b90565b60f81b90565b61434e816142e1565b8114612fab57600080fd5b61434e816142e4565b61434e816142ed56fe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a365627a7a7231582047e68e6e1d023d7823b4a99f7fe264b8eb9014ad6823f6e9b2984ed94292f10b6c6578706572696d656e74616cf564736f6c63430005100040
🤖 Code Reader

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

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.