ETH Price: $2,414.42 (-3.35%)
Gas: 1.05 Gwei

Contract

0xBA51AaaAa95bA1d5efB3cB1A3f50a09165315A17
 

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

1 Internal Transaction found.

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Method
Block
From
To
0x60806040202197072024-07-02 15:24:47804 days ago1719933887  Contract Creation0 ETH
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

MultiFlowPump

Compiler Version
v0.8.25+commit.b61c2a91
Optimization Enabled
Yes with 800 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":[],"name":"NoTimePassed","type":"error"},{"inputs":[],"name":"NotInitialized","type":"error"},{"inputs":[],"name":"TooManyTokens","type":"error"},{"inputs":[{"internalType":"address","name":"well","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"readCappedReserves","outputs":[{"internalType":"uint256[]","name":"cappedReserves","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"well","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"readCumulativeReserves","outputs":[{"internalType":"bytes","name":"cumulativeReserves","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"well","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"readInstantaneousReserves","outputs":[{"internalType":"uint256[]","name":"emaReserves","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"well","type":"address"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"readLastCappedReserves","outputs":[{"internalType":"uint256[]","name":"lastCappedReserves","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"well","type":"address"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"readLastCumulativeReserves","outputs":[{"internalType":"bytes16[]","name":"cumulativeReserves","type":"bytes16[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"well","type":"address"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"readLastInstantaneousReserves","outputs":[{"internalType":"uint256[]","name":"emaReserves","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"well","type":"address"},{"internalType":"bytes","name":"startCumulativeReserves","type":"bytes"},{"internalType":"uint256","name":"startTimestamp","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"readTwaReserves","outputs":[{"internalType":"uint256[]","name":"twaReserves","type":"uint256[]"},{"internalType":"bytes","name":"cumulativeReserves","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"reserves","type":"uint256[]"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"update","outputs":[],"stateMutability":"nonpayable","type":"function"}]
6080604052348015600f57600080fd5b50614f228061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806375690f6c1161005b57806375690f6c146100fe5780639dc1a10e14610111578063d026d37114610131578063d393b27a1461014457600080fd5b80631afce0dd1461008d578063481605a1146100b6578063497163ef146100d65780636de13cba146100eb575b600080fd5b6100a061009b366004614501565b610165565b6040516100ad9190614551565b60405180910390f35b6100c96100c4366004614501565b6101df565b6040516100ad91906145db565b6100e96100e4366004614637565b61022e565b005b6100c96100f9366004614501565b61057e565b6100c961010c366004614501565b61082b565b61012461011f366004614501565b610936565b6040516100ad9190614721565b6100c961013f366004614734565b61096f565b610157610152366004614789565b610a8e565b6040516100ad92919061480f565b6060600083821b6bffffffffffffffffffffffff19169050600061018a825460f81c90565b90508060ff166000036101b0576040516321c4e35760e21b815260040160405180910390fd5b600060016101c08360ff16610bf9565b901b9283019290506101d58360ff8416610c27565b9695505050505050565b606060006101fd84831b6bffffffffffffffffffffffff1916610cf3565b93509091505060ff8116600003610227576040516321c4e35760e21b815260040160405180910390fd5b5092915050565b6002831461024f57604051633a4733d960e11b815260040160405180910390fd5b6000808061025f848601866148ec565b6040805160808101825260008152606060208201819052918101829052818101829052939650919450925087919033901b6bffffffffffffffffffffffff19166102a881610cf3565b602085015264ffffffffff168084526000039050610309576102fe81428c8c80806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250610efc92505050565b505050505050610578565b60008060008061031c8660000151610feb565b9050806000036103355750505050505050505050610578565b6103496001600160801b03198b1682611004565b935061035481611064565b9250610360818a6110d0565b9150506103a93386602001518f8f808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508792508d91506110f39050565b602086015260006103b987610bf9565b9485019490506103c98588610c27565b6040870152938401936103dc8588610c27565b60608701526000805b8881101561052f576104138860200151828151811061040657610406614a07565b60200260200101516111d6565b9150610485610452878a60400151848151811061043257610432614a07565b60200260200101516001600160801b0319166113fc90919063ffffffff16565b610475610464613fff60f01b8a611699565b6001600160801b03198616906113fc565b6001600160801b031916906116a7565b8860400151828151811061049b5761049b614a07565b6001600160801b031992831660209182029290920101526104f8906104c2908416876113fc565b896060015183815181106104d8576104d8614a07565b60200260200101516001600160801b0319166116a790919063ffffffff16565b8860600151828151811061050e5761050e614a07565b6001600160801b0319909216602092830291909101909101526001016103e5565b506060870151610540908790611a71565b60408701519582900395610555908790611a71565b6020870151958290039561056c9087904290611b14565b50505050505050505050505b50505050565b60606000806000848060200190518101906105999190614a28565b919450925090506000606087901b6bffffffffffffffffffffffff191690506000876001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156105f8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106209190810190614bcd565b9050600080600061063085610cf3565b9250925092508260ff1660000361065a576040516321c4e35760e21b815260040160405180910390fd5b60006106688460ff16610bf9565b958601959050600061067d8760ff8716610c27565b90508460ff1667ffffffffffffffff81111561069b5761069b6143f0565b6040519080825280602002602001820160405280156106c4578160200160208202803683370190505b509a5060006106d285610feb565b90508060000361074c5760005b8660ff1681101561073b576107168382815181106106ff576106ff614a07565b60200260200101516001600160801b031916611ca5565b8d828151811061072857610728614a07565b60209081029190910101526001016106df565b505050505050505050505050610825565b6000610758828c6110d0565b90506107678f868a848e6110f3565b9450600061077f6001600160801b03198e1684611004565b905060005b8860ff16811015610816576107f16107e26107ab8488858151811061043257610432614a07565b6104756107bd613fff60f01b87611699565b6107d28c878151811061040657610406614a07565b6001600160801b031916906113fc565b6001600160801b031916611ca5565b8f828151811061080357610803614a07565b6020908102919091010152600101610784565b50505050505050505050505050505b92915050565b6060600083821b6bffffffffffffffffffffffff191690506000610850825460f81c90565b90508060ff16600003610876576040516321c4e35760e21b815260040160405180910390fd5b60006108848260ff16610bf9565b92830192905060006108998460ff8516610c27565b90508260ff1667ffffffffffffffff8111156108b7576108b76143f0565b6040519080825280602002602001820160405280156108e0578160200160208202803683370190505b50945060005b8360ff1681101561092b576109068282815181106106ff576106ff614a07565b86828151811061091857610918614a07565b60209081029190910101526001016108e6565b505050505092915050565b606060006109448484613243565b9050806040516020016109579190614551565b60405160208183030381529060405291505092915050565b6060600080610980848601866148ec565b909350915060009050606087901b6bffffffffffffffffffffffff191690506000876001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156109df573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a079190810190614bcd565b9050600080610a1584610cf3565b9850909250905060ff8216600003610a40576040516321c4e35760e21b815260040160405180910390fd5b6000610a4b82610feb565b905080600003610a615750505050505050610a87565b6000610a6d82896110d0565b9050610a7c8c8a87848b6110f3565b985050505050505050505b9392505050565b6060806000610a9d8885613243565b90506000610aad87890189614c53565b9050815167ffffffffffffffff811115610ac957610ac96143f0565b604051908082528060200260200182016040528015610af2578160200160208202803683370190505b5093506000610b08610b0388610feb565b611064565b90506001600160801b03198116610b3257604051630b91474960e01b815260040160405180910390fd5b60005b8351811015610bc957610ba46107e283610b94868581518110610b5a57610b5a614a07565b6020026020010151888681518110610b7457610b74614a07565b60200260200101516001600160801b03191661169990919063ffffffff16565b6001600160801b03191690613410565b868281518110610bb657610bb6614a07565b6020908102919091010152600101610b35565b5082604051602001610bdb9190614551565b60405160208183030381529060405293505050509550959350505050565b600060056002610c0a600185614c9e565b610c149190614cc7565b610c1f906001614cdb565b901b92915050565b60608167ffffffffffffffff811115610c4257610c426143f0565b604051908082528060200260200182016040528015610c6b578160200160208202803683370190505b50905081600203610c8c5782546020820152825460801b6040820152610825565b600060015b838111610ceb576002610ca5600183614c9e565b610caf9190614cc7565b915080600116600103610ccc578185015460208202840152610cdb565b8185015460801b602082028401525b610ce481614cee565b9050610c91565b505092915050565b805460f881901c9060d081901c906060906000849003610d135750610ef5565b60008460ff1667ffffffffffffffff811115610d3157610d316143f0565b604051908082528060200260200182016040528015610d5a578160200160208202803683370190505b5090508160681c60981b60208201528460ff16600103610de7576040805160018082528183019092529060208083019080368337019050509250610dc181600081518110610daa57610daa614a07565b60200260200101516001600160801b0319166136f4565b83600081518110610dd457610dd4614a07565b6020026020010181815250505050610ef5565b8160981b604082015260028560ff161115610e6157600060035b8660ff168111610e5e576002610e18600183614c9e565b610e229190614cc7565b915080600116600103610e3f578188015460208202840152610e4e565b8188015460801b602082028401525b610e5781614cee565b9050610e01565b50505b8460ff1667ffffffffffffffff811115610e7d57610e7d6143f0565b604051908082528060200260200182016040528015610ea6578160200160208202803683370190505b50925060005b8560ff16811015610ef157610ecc828281518110610daa57610daa614a07565b848281518110610ede57610ede614a07565b6020908102919091010152600101610eac565b5050505b9193909250565b805160008167ffffffffffffffff811115610f1957610f196143f0565b604051908082528060200260200182016040528015610f42578160200160208202803683370190505b50905060005b82811015610fbc576000848281518110610f6457610f64614a07565b6020026020010151905080600003610f7f5750505050505050565b610f88816111d6565b838381518110610f9a57610f9a614a07565b6001600160801b03199092166020928302919091019091015250600101610f48565b50610fc8858585611b14565b6000610fd383610bf9565b958601959050610fe38683611a71565b505050505050565b6000610ff78242614d07565b64ffffffffff1692915050565b6000806110116001611064565b9050600083600116116110245780611026565b835b9150600183901c92505b82156102275761104084856113fc565b935060018316156110585761105582856113fc565b91505b600183901c9250611030565b60008160000361107657506000919050565b81600061108282613777565b9050607081101561109b578060700382901b91506110ae565b60708111156110ae576070810382901c91505b613fff0160701b6001600160701b03919091161760801b92915050565b919050565b6000816110de600185614c9e565b6110e89190614cc7565b610a87906001614cdb565b60606000866001600160a01b03166310dd08306040518163ffffffff1660e01b8152600401600060405180830381865afa158015611135573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261115d9190810190614d25565b905060008160000151905061117c87878787858760200151600161381a565b925082516000036111b657611199878787878587602001516139b1565b92506111af87848787858760200151600061381a565b92506111cb565b6111c8878487878587602001516139b1565b92505b505095945050505050565b6000816000036111e857506000919050565b8160006111f482613777565b9050607081101561120d578060700382901b9150611220565b6070811115611220576070810382901c91505b607081613fff01901b826001600160701b03161791506001607f1b826001600160801b03161115611259575061ffff60ef1b9392505050565b6001600160801b0319608083901b16613fff60f01b0361127d575060009392505050565b617fff607083901c81169081900361129a57505060801b92915050565b6001600160701b03831660008290036112b657600191506112bd565b600160701b175b806000036112d857506001600160f01b031995945050505050565b600061406f81613fff85106112fe5750600f9290921b9160009150613ffe19840161133c565b60019250600160701b84106113205784613ffe039050600f84901b935061133c565b61132984613777565b95508561406d03905085607f0384901b93505b836001607f1b03611372578215611351576001015b600061135c82613777565b60700390508082901b91508083039250506113c0565b600083611380576000611383565b60015b60ff1690505b600160701b8210156113be5793800260ff81901c607f81019190911c94600019939093019260019290921b9082180190611389565b505b806001600160701b0316607083901b846113db5760006113e1565b6001607f1b5b6001600160801b0316171760801b9998505050505050505050565b6000617fff60f084811c8216919084901c8116908290036114b55780617fff03611477576001600160801b03198085169086160361144557505050600160ff1b81168218610825565b6001600160801b031985851816600160ff1b0361146757505050818117610825565b5061ffff60ef1b91506108259050565b6f7fffffffffffffffffffffffffffffff60801b84166000036114a4575061ffff60ef1b91506108259050565b505050600160ff1b81168218610825565b80617fff036114fc576f7fffffffffffffffffffffffffffffff60801b85166000036114eb575061ffff60ef1b91506108259050565b505050600160ff1b82168118610825565b6001600160701b03608086901c16600083900361151c5760019250611523565b600160701b175b6001600160701b03608086901c166000839003611543576001925061154a565b600160701b175b80820291508160000361157c57600160ff1b8787181661156b576000611571565b600160ff1b5b945050505050610825565b928201926000600160e11b8310156115af57600160e01b8310156115a8576115a383613777565b6115b2565b60e06115b2565b60e15b905061407081860110156115cd57600094506000925061166a565b6140e08186011015611610576140708510156115f257846140700383901c9250611607565b61407085111561160757614070850383901b92505b6000945061166a565b61c0dd818601111561162a57617fff94506000925061166a565b6070811115611641576070810383901c9250611654565b6070811015611654578060700383901b92505b6001600160701b03831692506140df8186010394505b82607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610825565b6000610a8783600160ff1b84185b6000617fff60f084811c8216919084901c8116908290036116f35780617fff036116e9576001600160801b031980851690861603611467578492505050610825565b8492505050610825565b80617fff03611706578392505050610825565b6001607f1b608086901c90811015906001600160701b031660008490036117305760019350611737565b600160701b175b6001607f1b608087901c90811015906001600160701b031660008590036117615760019450611768565b600160701b175b8260000361179b576001600160801b03198816600160ff1b1461178b578761178e565b60005b9650505050505050610825565b806000036117be576001600160801b03198916600160ff1b1461178b578861178e565b848603821515851515036118c75760708113156117e45789975050505050505050610825565b60008113156117f65790811c90611825565b606f1981121561180f5788975050505050505050610825565b6000811215611825578060000384901c93508596505b92810192600160711b8410611840576001968701969390931c925b86617fff03611871578461185957617fff60f01b611863565b6001600160f01b03195b975050505050505050610825565b600160701b8410156118865760009650611893565b6001600160701b03841693505b83607088901b866118a55760006118ab565b6001607f1b5b6001600160801b0316171760801b975050505050505050610825565b60008113156118e257600184901b93506001870396506118f9565b60008112156118f957600182901b91506001860396505b607081131561190b5760019150611958565b6001811315611928576001810360018303901c6001019150611958565b606f1981121561193b5760019350611958565b600019811215611958576001816000030360018503901c60010193505b818410611969578184039350611972565b83820393508294505b8360000361198b57506000965061082595505050505050565b600061199685613777565b9050806071036119bb57600185901c6001600160701b03169450600188019750611a0a565b60708110156119fd576070819003808911156119ea578086901b6001600160701b0316955080890398506119f7565b600098600019019590951b945b50611a0a565b6001600160701b03851694505b87617fff03611a3c5785611a2357617fff60f01b611a2d565b6001600160f01b03195b98505050505050505050610825565b84607089901b87611a4e576000611a54565b6001607f1b5b6001600160801b0316171760801b98505050505050505050610825565b8051600203611a8e57604081015160801c60208201510182555050565b600060028251611a9e9190614cc7565b90506000805b82811015611ada57611ab7816040614de3565b91506040820184015160801c602083018501510181860155806001019050611aa4565b50825160011660010361057857611af2826040614de3565b8483018054858301602001516001600160801b03909116019055905050505050565b8051600060ff821667ffffffffffffffff811115611b3457611b346143f0565b604051908082528060200260200182016040528015611b5d578160200160208202803683370190505b50905060005b8260ff16811015611bc357611b90848281518110611b8357611b83614a07565b6020026020010151611064565b828281518110611ba257611ba2614a07565b6001600160801b031990921660209283029190910190910152600101611b63565b508160ff16600103611bed57602081015160981c60681b8260f81b8560d01b171785555050505050565b604081015160981c602082015160981c60681b178260f81b8560d01b1717855560028260ff161115611c9e576000611c26600284614dfa565b60ff169050600060015b82811015611c6657611c43816040614de3565b91506040820184015160801c602083018501510181890155806001019050611c30565b508251600116600103611c9b57611c7e826040614de3565b8783018054858301602001516001600160801b0390911601905590505b50505b5050505050565b60006001607f1b608083901c90811190617fff60f085901c8116916001600160701b031690849083148015611cd957508115155b15611cec576101d561ffff60ef1b6136f4565b61400d831115611d185783611d0e57611d09617fff60f01b6136f4565b6101d5565b6101d560006136f4565b613f7f831015611d30576101d5613fff60f01b6136f4565b82600003611d415760019250611d4b565b600160701b821791505b613fef831115611d6457613fef830382901b9150611d79565b613fef831015611d795782613fef0382901c91505b838015611d97575071406e0000000000000000000000000000000082115b15611da6576101d560006136f4565b83158015611dc55750713fffffffffffffffffffffffffffffffffff82115b15611dd8576101d5617fff60f01b6136f4565b6001600160801b0382169160801c848015611df257508215155b15611dfe579119916001015b6001607f1b83811615611e225770016a09e667f3bcc908b2fb1366ea957d3e0260801c5b6f40000000000000000000000000000000841615611e51577001306fe0a31b7152de8d5a46305c85edec0260801c5b6f20000000000000000000000000000000841615611e80577001172b83c7d517adcdf7c8c50eb14a791f0260801c5b6f10000000000000000000000000000000841615611eaf5770010b5586cf9890f6298b92b71842a983630260801c5b6f08000000000000000000000000000000841615611ede577001059b0d31585743ae7c548eb68ca417fd0260801c5b6f04000000000000000000000000000000841615611f0d57700102c9a3e778060ee6f7caca4f7a29bde80260801c5b6f02000000000000000000000000000000841615611f3c5770010163da9fb33356d84a66ae336dcdfa3f0260801c5b6f01000000000000000000000000000000841615611f6b57700100b1afa5abcbed6129ab13ec11dc95430260801c5b6e800000000000000000000000000000841615611f995770010058c86da1c09ea1ff19d294cf2f679b0260801c5b6e400000000000000000000000000000841615611fc7577001002c605e2e8cec506d21bfc89a23a00f0260801c5b6e200000000000000000000000000000841615611ff557700100162f3904051fa128bca9c55c31e5df0260801c5b6e100000000000000000000000000000841615612023577001000b175effdc76ba38e31671ca9397250260801c5b6e08000000000000000000000000000084161561205157700100058ba01fb9f96d6cacd4b180917c3d0260801c5b6e04000000000000000000000000000084161561207f5770010002c5cc37da9491d0985c348c68e7b30260801c5b600160711b8416156120a2577001000162e525ee054754457d59952920260260801c5b600160701b8416156120c55770010000b17255775c040618bf4a4ade83fc0260801c5b6d80000000000000000000000000008416156120f2577001000058b91b5bc9ae2eed81e9b7d4cfab0260801c5b6d400000000000000000000000000084161561211f57700100002c5c89d5ec6ca4d7c8acc017b7c90260801c5b6d200000000000000000000000000084161561214c5770010000162e43f4f831060e02d839a9d16d0260801c5b6d100000000000000000000000000084161561217957700100000b1721bcfc99d9f890ea069117630260801c5b6d08000000000000000000000000008416156121a65770010000058b90cf1e6d97f9ca14dbcc16280260801c5b6d04000000000000000000000000008416156121d3577001000002c5c863b73f016468f6bac5ca2b0260801c5b6d020000000000000000000000000084161561220057700100000162e430e5a18f6119e3c02282a50260801c5b6d010000000000000000000000000084161561222d577001000000b1721835514b86e6d96efd1bfe0260801c5b6c8000000000000000000000000084161561225957700100000058b90c0b48c6be5df846c5b2ef0260801c5b6c400000000000000000000000008416156122855770010000002c5c8601cc6b9e94213c72737a0260801c5b6c200000000000000000000000008416156122b1577001000000162e42fff037df38aa2b219f060260801c5b6c100000000000000000000000008416156122dd5770010000000b17217fba9c739aa5819f44f90260801c5b6c08000000000000000000000000841615612309577001000000058b90bfcdee5acd3c1cedc8230260801c5b6c0400000000000000000000000084161561233557700100000002c5c85fe31f35a6a30da1be500260801c5b6c020000000000000000000000008416156123615770010000000162e42ff0999ce3541b9fffcf0260801c5b6c0100000000000000000000000084161561238d57700100000000b17217f80f4ef5aadda455540260801c5b6b8000000000000000000000008416156123b85770010000000058b90bfbf8479bd5a81b51ad0260801c5b6b4000000000000000000000008416156123e3577001000000002c5c85fdf84bd62ae30a74cc0260801c5b6b20000000000000000000000084161561240e57700100000000162e42fefb2fed257559bdaa0260801c5b6b100000000000000000000000841615612439577001000000000b17217f7d5a7716bba4a9ae0260801c5b6b08000000000000000000000084161561246457700100000000058b90bfbe9ddbac5e109cce0260801c5b6b04000000000000000000000084161561248f5770010000000002c5c85fdf4b15de6f17eb0d0260801c5b6b0200000000000000000000008416156124ba577001000000000162e42fefa494f1478fde050260801c5b6b0100000000000000000000008416156124e55770010000000000b17217f7d20cf927c8e94c0260801c5b6a800000000000000000000084161561250f577001000000000058b90bfbe8f71cb4e4b33d0260801c5b6a400000000000000000000084161561253957700100000000002c5c85fdf477b662b269450260801c5b6a20000000000000000000008416156125635770010000000000162e42fefa3ae53369388c0260801c5b6a100000000000000000000084161561258d57700100000000000b17217f7d1d351a389d400260801c5b6a08000000000000000000008416156125b75770010000000000058b90bfbe8e8b2d3d4ede0260801c5b6a04000000000000000000008416156125e1577001000000000002c5c85fdf4741bea6e77e0260801c5b6a020000000000000000000084161561260b57700100000000000162e42fefa39fe95583c20260801c5b6a0100000000000000000000841615612635577001000000000000b17217f7d1cfb72b45e10260801c5b698000000000000000000084161561265e57700100000000000058b90bfbe8e7cc35c3f00260801c5b69400000000000000000008416156126875770010000000000002c5c85fdf473e242ea380260801c5b69200000000000000000008416156126b0577001000000000000162e42fefa39f02b772c0260801c5b69100000000000000000008416156126d95770010000000000000b17217f7d1cf7d83c1a0260801c5b6908000000000000000000841615612702577001000000000000058b90bfbe8e7bdcbe2e0260801c5b690400000000000000000084161561272b57700100000000000002c5c85fdf473dea871f0260801c5b69020000000000000000008416156127545770010000000000000162e42fefa39ef44d910260801c5b690100000000000000000084161561277d57700100000000000000b17217f7d1cf79e9490260801c5b688000000000000000008416156127a55770010000000000000058b90bfbe8e7bce5440260801c5b684000000000000000008416156127cd577001000000000000002c5c85fdf473de6eca0260801c5b682000000000000000008416156127f557700100000000000000162e42fefa39ef366f0260801c5b6810000000000000000084161561281d577001000000000000000b17217f7d1cf79afa0260801c5b6808000000000000000084161561284557700100000000000000058b90bfbe8e7bcd6d0260801c5b6804000000000000000084161561286d5770010000000000000002c5c85fdf473de6b20260801c5b68020000000000000000841615612895577001000000000000000162e42fefa39ef3580260801c5b680100000000000000008416156128bd5770010000000000000000b17217f7d1cf79ab0260801c5b6780000000000000008416156128e4577001000000000000000058b90bfbe8e7bcd50260801c5b67400000000000000084161561290b57700100000000000000002c5c85fdf473de6a0260801c5b6720000000000000008416156129325770010000000000000000162e42fefa39ef340260801c5b67100000000000000084161561295957700100000000000000000b17217f7d1cf7990260801c5b6708000000000000008416156129805770010000000000000000058b90bfbe8e7bcc0260801c5b6704000000000000008416156129a7577001000000000000000002c5c85fdf473de50260801c5b6702000000000000008416156129ce57700100000000000000000162e42fefa39ef20260801c5b6701000000000000008416156129f5577001000000000000000000b17217f7d1cf780260801c5b6680000000000000841615612a1b57700100000000000000000058b90bfbe8e7bb0260801c5b6640000000000000841615612a415770010000000000000000002c5c85fdf473dd0260801c5b6620000000000000841615612a67577001000000000000000000162e42fefa39ee0260801c5b6610000000000000841615612a8d5770010000000000000000000b17217f7d1cf60260801c5b6608000000000000841615612ab3577001000000000000000000058b90bfbe8e7a0260801c5b6604000000000000841615612ad957700100000000000000000002c5c85fdf473c0260801c5b6602000000000000841615612aff5770010000000000000000000162e42fefa39d0260801c5b6601000000000000841615612b2557700100000000000000000000b17217f7d1ce0260801c5b65800000000000841615612b4a5770010000000000000000000058b90bfbe8e60260801c5b65400000000000841615612b6f577001000000000000000000002c5c85fdf4720260801c5b65200000000000841615612b9457700100000000000000000000162e42fefa380260801c5b65100000000000841615612bb9577001000000000000000000000b17217f7d1b0260801c5b65080000000000841615612bde57700100000000000000000000058b90bfbe8d0260801c5b65040000000000841615612c035770010000000000000000000002c5c85fdf460260801c5b65020000000000841615612c28577001000000000000000000000162e42fefa20260801c5b65010000000000841615612c4d5770010000000000000000000000b17217f7d00260801c5b648000000000841615612c71577001000000000000000000000058b90bfbe70260801c5b644000000000841615612c9557700100000000000000000000002c5c85fdf30260801c5b642000000000841615612cb95770010000000000000000000000162e42fef90260801c5b641000000000841615612cdd57700100000000000000000000000b17217f7c0260801c5b640800000000841615612d015770010000000000000000000000058b90bfbd0260801c5b640400000000841615612d25577001000000000000000000000002c5c85fde0260801c5b640200000000841615612d4957700100000000000000000000000162e42fee0260801c5b640100000000841615612d6d577001000000000000000000000000b17217f60260801c5b6380000000841615612d9057700100000000000000000000000058b90bfa0260801c5b6340000000841615612db35770010000000000000000000000002c5c85fc0260801c5b6320000000841615612dd6577001000000000000000000000000162e42fd0260801c5b6310000000841615612df95770010000000000000000000000000b17217e0260801c5b6308000000841615612e1c577001000000000000000000000000058b90be0260801c5b6304000000841615612e3f57700100000000000000000000000002c5c85e0260801c5b6302000000841615612e625770010000000000000000000000000162e42e0260801c5b6301000000841615612e8557700100000000000000000000000000b172160260801c5b62800000841615612ea75770010000000000000000000000000058b90a0260801c5b62400000841615612ec9577001000000000000000000000000002c5c840260801c5b62200000841615612eeb57700100000000000000000000000000162e410260801c5b62100000841615612f0d577001000000000000000000000000000b17200260801c5b62080000841615612f2f57700100000000000000000000000000058b8f0260801c5b62040000841615612f515770010000000000000000000000000002c5c70260801c5b62020000841615612f73577001000000000000000000000000000162e30260801c5b62010000841615612f955770010000000000000000000000000000b1710260801c5b618000841615612fb6577001000000000000000000000000000058b80260801c5b614000841615612fd757700100000000000000000000000000002c5b0260801c5b612000841615612ff85770010000000000000000000000000000162d0260801c5b61100084161561301957700100000000000000000000000000000b160260801c5b61080084161561303a5770010000000000000000000000000000058a0260801c5b61040084161561305b577001000000000000000000000000000002c40260801c5b61020084161561307c577001000000000000000000000000000001610260801c5b61010084161561309d577001000000000000000000000000000000b00260801c5b60808416156130bd577001000000000000000000000000000000570260801c5b60408416156130dd5770010000000000000000000000000000002b0260801c5b60208416156130fd577001000000000000000000000000000000150260801c5b601084161561311d5770010000000000000000000000000000000a0260801c5b600884161561313d577001000000000000000000000000000000040260801c5b600484161561315d577001000000000000000000000000000000010260801c5b8561317e57600f81901c6001600160701b03169050613fff820191506131ad565b613ffe82116131a357600f81901c6001600160701b0316905081613fff0391506131ad565b600091613fee19011c5b607082811b8217935083901c617fff16613fff8110156131d65750600098975050505050505050565b6001607f1b846001600160801b0316106131ef57600080fd5b6140fe8111156131fe57600080fd5b600160701b6001600160701b0385161761406f8210156132245761406f8290031c613236565b61406f8211156132365761406e1982011b5b9998505050505050505050565b60606000808380602001905181019061325c9190614a28565b909350915060009050606086901b6bffffffffffffffffffffffff191690506000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156132bb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526132e39190810190614bcd565b905060008060006132f385610cf3565b9250925092508260ff1660000361331d576040516321c4e35760e21b815260040160405180910390fd5b6000600161332d8560ff16610bf9565b901b9586019590506133428660ff8616610c27565b9850600061334f84610feb565b90508060000361336757505050505050505050610825565b600061337282611064565b90506000613380838c6110d0565b905061338f8e868a848e6110f3565b945060005b8c518110156133fe576133cb6133b9846107d289858151811061040657610406614a07565b8e83815181106104d8576104d8614a07565b8d82815181106133dd576133dd614a07565b6001600160801b031990921660209283029190910190910152600101613394565b50505050505050505050505092915050565b6000617fff60f084811c8216919084901c8116908290036134445780617fff036114a4575061ffff60ef1b91506108259050565b80617fff03613494577dffffffffffffffffffffffffffff00000000000000000000000000000000841615613483575061ffff60ef1b91506108259050565b505050808218600160ff1b16610825565b6f7fffffffffffffffffffffffffffffff60801b84166000036134f6576f7fffffffffffffffffffffffffffffff60801b85166000036134de575061ffff60ef1b91506108259050565b505050808218600160ff1b16617fff60f01b17610825565b6001600160701b03608085901c166000829003613516576001915061351d565b600160701b175b6001600160701b03608087901c16600084900361356057801561355b57600061354582613777565b6001955060e20393840160711901939190911b90505b61356a565b600160701b1760721b5b81818161357957613579614cb1565b0490508060000361359857600160ff1b8787181661156b576000611571565b6d10000000000000000000000000008110156135b6576135b6614e1c565b60006e08000000000000000000000000000082101561360b576e04000000000000000000000000000082101561360057600160711b8210156135f9576070613603565b6071613603565b60725b60ff16613614565b61361482613777565b90508361407101818601111561363257617fff9450600091506136c5565b83818601613ffc01101561364d5760009450600091506136c5565b83818601613f8c01101561369a578385613ffc011115613678578385613ffc010382901b9150613691565b8385613ffc01101561369157613ffc8585030382901c91505b600094506136c5565b60708111156136ad576070810382901c91505b6001600160701b038216915083818601613f8d010394505b81607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610825565b6000617fff60f083901c16613fff8110156137125750600092915050565b6001607f1b608084901c1061372657600080fd5b6140fe81111561373557600080fd5b600160701b6001600160701b03608085901c161761406f82101561375f5761406f8290031c610a87565b61406f821115610a875761406e1982011b9392505050565b600080821161378557600080fd5b6000600160801b831061379a57608092831c92015b6801000000000000000083106137b257604092831c92015b64010000000083106137c657602092831c92015b6201000083106137d857601092831c92015b61010083106137e957600892831c92015b601083106137f957600492831c92015b6004831061380957600292831c92015b600283106108255760010192915050565b856000613828858a86613d05565b90506000613837868487613d05565b90508181111561391757602087015160009061386f908a9061385f90613fff60f01b906116a7565b6001600160801b03191690611004565b9050600061389a6001600160801b031983166f407dffffffffffffffffffffffffffff60801b613d88565b60000b196138d1576138cc6138c06138bb6001600160801b03198516613ebf565b613f7f565b8590600160801b613fda565b6138d5565b6000195b90508083111561391057851561390057505060408051600081526020810190915292506139a6915050565b61390d888287868b6140cc565b94505b50506139a3565b818110156139a3576000600160801b6139736138bb6139648c61385f8d604001516f3fff000000000000000000000000000060801b6001600160801b03191661169990919063ffffffff16565b6001600160801b031916613ebf565b61397d9085614de3565b6139879190614cc7565b9050808210156139a15761399e878286858a6140cc565b93505b505b50505b979650505050505050565b6060859050600080886001815181106139cc576139cc614a07565b6020026020010151896000815181106139e7576139e7614a07565b6020026020010151116139fd5760016000613a02565b600060015b60ff16915060ff169150613a376040518060800160405280600081526020016000815260200160008152602001606081525090565b604051632b227ea960e01b81526001600160a01b03871690632b227ea990613a69908d90879087908b90600401614e32565b602060405180830381865afa158015613a86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aaa9190614e63565b6020820152604051632b227ea960e01b81526001600160a01b03871690632b227ea990613ae1908790879087908b90600401614e32565b602060405180830381865afa158015613afe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b229190614e63565b80825260208201511015613c12576000613b7f8961385f8a600001518781518110613b4f57613b4f614a07565b60200260200101518681518110613b6857613b68614a07565b6020908102919091010151613fff60f01b906116a7565b9050613ba86001600160801b031982166f407dffffffffffffffffffffffffffff60801b613d88565b60000b19613bde57613bd9613bc96138bb6001600160801b03198416613ebf565b602084015190600160801b614225565b613be9565b600019604083018190525b6040830181905282511115613c0c57613c0a8783604001518787878b614268565b505b50613cf8565b602081015181511015613cf8576000613c668961385f613c5a8b600001518781518110613c4157613c41614a07565b60200260200101518881518110613b6857613b68614a07565b613fff60f01b90613410565b9050613c8f6001600160801b031982166f407dffffffffffffffffffffffffffff60801b613d88565b60000b60001914613ca65760006040830152613cd5565b613ccf613cbf6138bb6001600160801b03198416613ebf565b602084015190600160801b613fda565b60408301525b604082015182511015613cf657613cf48783604001518787878b614268565b505b505b5050509695505050505050565b6040516253057f60e61b81526000906001600160a01b038516906314c15fc090613d35908690869060040161480f565b602060405180830381865afa925050508015613d6e575060408051601f3d908101601f19168201909252613d6b91810190614e63565b60015b613d8057506001600160801b03610a87565b949350505050565b60006f7fffffffffffffffffffffffffffffff608084901c16617fff60701b811115613db357600080fd5b6f7fffffffffffffffffffffffffffffff608084901c16617fff60701b811115613ddc57600080fd5b6001600160801b0319858116908516141580613e055750617fff60701b826001600160801b0316105b613e0e57600080fd5b6001600160801b031980851690861603613e2d57600092505050610825565b6001607f1b608086811c82118015929187901c919091101590613e7e578015613e7057826001600160801b0316846001600160801b031611613e70576001611571565b600019945050505050610825565b8015613e91576001945050505050610825565b826001600160801b0316846001600160801b031611613eb257600019611571565b6001945050505050610825565b6000617fff60f083901c1661407e811115613ed957600080fd5b613f7f811015613eec5750600092915050565b600160701b6001600160701b03608085901c1617613fef821015613f1657613fef8290031c613f28565b613fef821115613f2857613fee1982011b5b6001607f1b608085901c10613f5257600160ff1b811115613f4857600080fd5b6000039392505050565b7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811115610a8757600080fd5b600080821215613fd65760405162461bcd60e51b815260206004820181905260248201527f53616665436173743a2076616c7565206d75737420626520706f73697469766560448201526064015b60405180910390fd5b5090565b60008080600019858709858702925082811083820303915050806000036140145783828161400a5761400a614cb1565b0492505050610a87565b8084116140635760405162461bcd60e51b815260206004820152601560248201527f4d6174683a206d756c446976206f766572666c6f7700000000000000000000006044820152606401613fcd565b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b604051635fb3321560e11b81526060906001600160a01b0387169063bf66642a90614101908890889088908890600401614e7c565b600060405180830381865afa92505050801561413f57506040513d6000823e601f3d908101601f1916820160405261413c9190810190614bcd565b60015b6141c357835167ffffffffffffffff81111561415d5761415d6143f0565b604051908082528060200260200182016040528015614186578160200160208202803683370190505b50905060005b84518110156141bd576000198282815181106141aa576141aa614a07565b602090810291909101015260010161418c565b5061421c565b80915060005b82518110156111cb578281815181106141e4576141e4614a07565b602002602001015160000361421457600183828151811061420757614207614a07565b6020026020010181815250505b6001016141c9565b95945050505050565b60008080600019858709858702925082811083820303915050806000036142555783828161400a5761400a614cb1565b8084116140635760001992505050610a87565b60408051600280825260608083018452926000929190602083019080368337019050509050868186815181106142a0576142a0614a07565b602002602001018181525050670de0b6b3a76400008185815181106142c7576142c7614a07565b60200260200101818152505060006142ec6142e58a89898689614347565b60016143c2565b90506142fe6142e58a89888689614347565b87868151811061431057614310614a07565b6020026020010181815250508087878151811061432f5761432f614a07565b60209081029190910101525094979650505050505050565b604051631017d19360e31b81526000906001600160a01b038716906380be8c989061437c908890889088908890600401614ead565b602060405180830381865afa9250505080156143b5575060408051601f3d908101601f191682019092526143b291810190614e63565b60015b6101d5575060001961421c565b60008183116143d15781610a87565b5090919050565b6001600160a01b03811681146143ed57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715614429576144296143f0565b60405290565b6040805190810167ffffffffffffffff81118282101715614429576144296143f0565b604051601f8201601f1916810167ffffffffffffffff8111828210171561447b5761447b6143f0565b604052919050565b600067ffffffffffffffff82111561449d5761449d6143f0565b50601f01601f191660200190565b600082601f8301126144bc57600080fd5b81356144cf6144ca82614483565b614452565b8181528460208386010111156144e457600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561451457600080fd5b823561451f816143d8565b9150602083013567ffffffffffffffff81111561453b57600080fd5b614547858286016144ab565b9150509250929050565b6020808252825182820181905260009190848201906040850190845b818110156145935783516001600160801b0319168352928401929184019160010161456d565b50909695505050505050565b60008151808452602080850194506020840160005b838110156145d0578151875295820195908201906001016145b4565b509495945050505050565b602081526000610a87602083018461459f565b60008083601f84011261460057600080fd5b50813567ffffffffffffffff81111561461857600080fd5b60208301915083602082850101111561463057600080fd5b9250929050565b6000806000806040858703121561464d57600080fd5b843567ffffffffffffffff8082111561466557600080fd5b818701915087601f83011261467957600080fd5b81358181111561468857600080fd5b8860208260051b850101111561469d57600080fd5b6020928301965094509086013590808211156146b857600080fd5b506146c5878288016145ee565b95989497509550505050565b60005b838110156146ec5781810151838201526020016146d4565b50506000910152565b6000815180845261470d8160208601602086016146d1565b601f01601f19169290920160200192915050565b602081526000610a8760208301846146f5565b60008060006040848603121561474957600080fd5b8335614754816143d8565b9250602084013567ffffffffffffffff81111561477057600080fd5b61477c868287016145ee565b9497909650939450505050565b6000806000806000608086880312156147a157600080fd5b85356147ac816143d8565b9450602086013567ffffffffffffffff808211156147c957600080fd5b6147d589838a016145ee565b90965094506040880135935060608801359150808211156147f557600080fd5b50614802888289016144ab565b9150509295509295909350565b604081526000614822604083018561459f565b828103602084015261421c81856146f5565b6001600160801b0319811681146143ed57600080fd5b80356110cb81614834565b600067ffffffffffffffff82111561486f5761486f6143f0565b5060051b60200190565b600082601f83011261488a57600080fd5b8135602061489a6144ca83614855565b8083825260208201915060208460051b8701019350868411156148bc57600080fd5b602086015b848110156148e15780356148d481614834565b83529183019183016148c1565b509695505050505050565b60008060006060848603121561490157600080fd5b833561490c81614834565b92506020848101359250604085013567ffffffffffffffff8082111561493157600080fd5b908601906060828903121561494557600080fd5b61494d614406565b82358281111561495c57600080fd5b8301601f81018a1361496d57600080fd5b803561497b6144ca82614855565b81815260059190911b8201860190868101908c83111561499a57600080fd5b8784015b838110156149d2578035878111156149b65760008081fd5b6149c48f8b83890101614879565b84525091880191880161499e565b508452506149e491505083850161484a565b848201526149f46040840161484a565b6040820152809450505050509250925092565b634e487b7160e01b600052603260045260246000fd5b80516110cb81614834565b600080600060608486031215614a3d57600080fd5b8351614a4881614834565b60208501516040860151919450925067ffffffffffffffff811115614a6c57600080fd5b606081860187031215614a7e57600080fd5b614a86614406565b8186015167ffffffffffffffff811115614a9f57600080fd5b86830101601f81018813614ab257600080fd5b8051614ac06144ca82614855565b808282526020820191508a60208460051b8601011115614adf57600080fd5b602084015b60208460051b860101811015614b9457805167ffffffffffffffff811115614b0b57600080fd5b8c603f8288010112614b1c57600080fd5b60208187010151614b2f6144ca82614855565b8082825260208201915060408360051b858b01010192508f831115614b5357600080fd5b928801604001925b82841015614b7f578351614b6e81614834565b825260209384019390910190614b5b565b86525050602093840193919091019050614ae4565b50845250614ba9915050868301602001614a1d565b6020820152614bbc604083880101614a1d565b604082015280925050509250925092565b60006020808385031215614be057600080fd5b825167ffffffffffffffff811115614bf757600080fd5b8301601f81018513614c0857600080fd5b8051614c166144ca82614855565b81815260059190911b82018301908381019087831115614c3557600080fd5b928401925b828410156139a657835182529284019290840190614c3a565b600060208284031215614c6557600080fd5b813567ffffffffffffffff811115614c7c57600080fd5b613d8084828501614879565b634e487b7160e01b600052601160045260246000fd5b8181038181111561082557610825614c88565b634e487b7160e01b600052601260045260246000fd5b600082614cd657614cd6614cb1565b500490565b8082018082111561082557610825614c88565b600060018201614d0057614d00614c88565b5060010190565b64ffffffffff82811682821603908082111561022757610227614c88565b60006020808385031215614d3857600080fd5b825167ffffffffffffffff80821115614d5057600080fd5b9084019060408287031215614d6457600080fd5b614d6c61442f565b8251614d77816143d8565b81528284015182811115614d8a57600080fd5b80840193505086601f840112614d9f57600080fd5b82519150614daf6144ca83614483565b8281528785848601011115614dc357600080fd5b614dd2838683018787016146d1565b938101939093525090949350505050565b808202811582820484141761082557610825614c88565b600060ff831680614e0d57614e0d614cb1565b8060ff84160491505092915050565b634e487b7160e01b600052600160045260246000fd5b608081526000614e45608083018761459f565b85602084015284604084015282810360608401526139a681856146f5565b600060208284031215614e7557600080fd5b5051919050565b848152608060208201526000614e95608083018661459f565b84604084015282810360608401526139a681856146f5565b608081526000614ec0608083018761459f565b8560208401528281036040840152614ed8818661459f565b905082810360608401526139a681856146f556fea2646970667358221220c60e7b800ffa0948f84e702b7d5fd1c10f20cb58c12c0da853e02a41fdf41ee264736f6c63430008190033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100885760003560e01c806375690f6c1161005b57806375690f6c146100fe5780639dc1a10e14610111578063d026d37114610131578063d393b27a1461014457600080fd5b80631afce0dd1461008d578063481605a1146100b6578063497163ef146100d65780636de13cba146100eb575b600080fd5b6100a061009b366004614501565b610165565b6040516100ad9190614551565b60405180910390f35b6100c96100c4366004614501565b6101df565b6040516100ad91906145db565b6100e96100e4366004614637565b61022e565b005b6100c96100f9366004614501565b61057e565b6100c961010c366004614501565b61082b565b61012461011f366004614501565b610936565b6040516100ad9190614721565b6100c961013f366004614734565b61096f565b610157610152366004614789565b610a8e565b6040516100ad92919061480f565b6060600083821b6bffffffffffffffffffffffff19169050600061018a825460f81c90565b90508060ff166000036101b0576040516321c4e35760e21b815260040160405180910390fd5b600060016101c08360ff16610bf9565b901b9283019290506101d58360ff8416610c27565b9695505050505050565b606060006101fd84831b6bffffffffffffffffffffffff1916610cf3565b93509091505060ff8116600003610227576040516321c4e35760e21b815260040160405180910390fd5b5092915050565b6002831461024f57604051633a4733d960e11b815260040160405180910390fd5b6000808061025f848601866148ec565b6040805160808101825260008152606060208201819052918101829052818101829052939650919450925087919033901b6bffffffffffffffffffffffff19166102a881610cf3565b602085015264ffffffffff168084526000039050610309576102fe81428c8c80806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250610efc92505050565b505050505050610578565b60008060008061031c8660000151610feb565b9050806000036103355750505050505050505050610578565b6103496001600160801b03198b1682611004565b935061035481611064565b9250610360818a6110d0565b9150506103a93386602001518f8f808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508792508d91506110f39050565b602086015260006103b987610bf9565b9485019490506103c98588610c27565b6040870152938401936103dc8588610c27565b60608701526000805b8881101561052f576104138860200151828151811061040657610406614a07565b60200260200101516111d6565b9150610485610452878a60400151848151811061043257610432614a07565b60200260200101516001600160801b0319166113fc90919063ffffffff16565b610475610464613fff60f01b8a611699565b6001600160801b03198616906113fc565b6001600160801b031916906116a7565b8860400151828151811061049b5761049b614a07565b6001600160801b031992831660209182029290920101526104f8906104c2908416876113fc565b896060015183815181106104d8576104d8614a07565b60200260200101516001600160801b0319166116a790919063ffffffff16565b8860600151828151811061050e5761050e614a07565b6001600160801b0319909216602092830291909101909101526001016103e5565b506060870151610540908790611a71565b60408701519582900395610555908790611a71565b6020870151958290039561056c9087904290611b14565b50505050505050505050505b50505050565b60606000806000848060200190518101906105999190614a28565b919450925090506000606087901b6bffffffffffffffffffffffff191690506000876001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156105f8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106209190810190614bcd565b9050600080600061063085610cf3565b9250925092508260ff1660000361065a576040516321c4e35760e21b815260040160405180910390fd5b60006106688460ff16610bf9565b958601959050600061067d8760ff8716610c27565b90508460ff1667ffffffffffffffff81111561069b5761069b6143f0565b6040519080825280602002602001820160405280156106c4578160200160208202803683370190505b509a5060006106d285610feb565b90508060000361074c5760005b8660ff1681101561073b576107168382815181106106ff576106ff614a07565b60200260200101516001600160801b031916611ca5565b8d828151811061072857610728614a07565b60209081029190910101526001016106df565b505050505050505050505050610825565b6000610758828c6110d0565b90506107678f868a848e6110f3565b9450600061077f6001600160801b03198e1684611004565b905060005b8860ff16811015610816576107f16107e26107ab8488858151811061043257610432614a07565b6104756107bd613fff60f01b87611699565b6107d28c878151811061040657610406614a07565b6001600160801b031916906113fc565b6001600160801b031916611ca5565b8f828151811061080357610803614a07565b6020908102919091010152600101610784565b50505050505050505050505050505b92915050565b6060600083821b6bffffffffffffffffffffffff191690506000610850825460f81c90565b90508060ff16600003610876576040516321c4e35760e21b815260040160405180910390fd5b60006108848260ff16610bf9565b92830192905060006108998460ff8516610c27565b90508260ff1667ffffffffffffffff8111156108b7576108b76143f0565b6040519080825280602002602001820160405280156108e0578160200160208202803683370190505b50945060005b8360ff1681101561092b576109068282815181106106ff576106ff614a07565b86828151811061091857610918614a07565b60209081029190910101526001016108e6565b505050505092915050565b606060006109448484613243565b9050806040516020016109579190614551565b60405160208183030381529060405291505092915050565b6060600080610980848601866148ec565b909350915060009050606087901b6bffffffffffffffffffffffff191690506000876001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156109df573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a079190810190614bcd565b9050600080610a1584610cf3565b9850909250905060ff8216600003610a40576040516321c4e35760e21b815260040160405180910390fd5b6000610a4b82610feb565b905080600003610a615750505050505050610a87565b6000610a6d82896110d0565b9050610a7c8c8a87848b6110f3565b985050505050505050505b9392505050565b6060806000610a9d8885613243565b90506000610aad87890189614c53565b9050815167ffffffffffffffff811115610ac957610ac96143f0565b604051908082528060200260200182016040528015610af2578160200160208202803683370190505b5093506000610b08610b0388610feb565b611064565b90506001600160801b03198116610b3257604051630b91474960e01b815260040160405180910390fd5b60005b8351811015610bc957610ba46107e283610b94868581518110610b5a57610b5a614a07565b6020026020010151888681518110610b7457610b74614a07565b60200260200101516001600160801b03191661169990919063ffffffff16565b6001600160801b03191690613410565b868281518110610bb657610bb6614a07565b6020908102919091010152600101610b35565b5082604051602001610bdb9190614551565b60405160208183030381529060405293505050509550959350505050565b600060056002610c0a600185614c9e565b610c149190614cc7565b610c1f906001614cdb565b901b92915050565b60608167ffffffffffffffff811115610c4257610c426143f0565b604051908082528060200260200182016040528015610c6b578160200160208202803683370190505b50905081600203610c8c5782546020820152825460801b6040820152610825565b600060015b838111610ceb576002610ca5600183614c9e565b610caf9190614cc7565b915080600116600103610ccc578185015460208202840152610cdb565b8185015460801b602082028401525b610ce481614cee565b9050610c91565b505092915050565b805460f881901c9060d081901c906060906000849003610d135750610ef5565b60008460ff1667ffffffffffffffff811115610d3157610d316143f0565b604051908082528060200260200182016040528015610d5a578160200160208202803683370190505b5090508160681c60981b60208201528460ff16600103610de7576040805160018082528183019092529060208083019080368337019050509250610dc181600081518110610daa57610daa614a07565b60200260200101516001600160801b0319166136f4565b83600081518110610dd457610dd4614a07565b6020026020010181815250505050610ef5565b8160981b604082015260028560ff161115610e6157600060035b8660ff168111610e5e576002610e18600183614c9e565b610e229190614cc7565b915080600116600103610e3f578188015460208202840152610e4e565b8188015460801b602082028401525b610e5781614cee565b9050610e01565b50505b8460ff1667ffffffffffffffff811115610e7d57610e7d6143f0565b604051908082528060200260200182016040528015610ea6578160200160208202803683370190505b50925060005b8560ff16811015610ef157610ecc828281518110610daa57610daa614a07565b848281518110610ede57610ede614a07565b6020908102919091010152600101610eac565b5050505b9193909250565b805160008167ffffffffffffffff811115610f1957610f196143f0565b604051908082528060200260200182016040528015610f42578160200160208202803683370190505b50905060005b82811015610fbc576000848281518110610f6457610f64614a07565b6020026020010151905080600003610f7f5750505050505050565b610f88816111d6565b838381518110610f9a57610f9a614a07565b6001600160801b03199092166020928302919091019091015250600101610f48565b50610fc8858585611b14565b6000610fd383610bf9565b958601959050610fe38683611a71565b505050505050565b6000610ff78242614d07565b64ffffffffff1692915050565b6000806110116001611064565b9050600083600116116110245780611026565b835b9150600183901c92505b82156102275761104084856113fc565b935060018316156110585761105582856113fc565b91505b600183901c9250611030565b60008160000361107657506000919050565b81600061108282613777565b9050607081101561109b578060700382901b91506110ae565b60708111156110ae576070810382901c91505b613fff0160701b6001600160701b03919091161760801b92915050565b919050565b6000816110de600185614c9e565b6110e89190614cc7565b610a87906001614cdb565b60606000866001600160a01b03166310dd08306040518163ffffffff1660e01b8152600401600060405180830381865afa158015611135573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261115d9190810190614d25565b905060008160000151905061117c87878787858760200151600161381a565b925082516000036111b657611199878787878587602001516139b1565b92506111af87848787858760200151600061381a565b92506111cb565b6111c8878487878587602001516139b1565b92505b505095945050505050565b6000816000036111e857506000919050565b8160006111f482613777565b9050607081101561120d578060700382901b9150611220565b6070811115611220576070810382901c91505b607081613fff01901b826001600160701b03161791506001607f1b826001600160801b03161115611259575061ffff60ef1b9392505050565b6001600160801b0319608083901b16613fff60f01b0361127d575060009392505050565b617fff607083901c81169081900361129a57505060801b92915050565b6001600160701b03831660008290036112b657600191506112bd565b600160701b175b806000036112d857506001600160f01b031995945050505050565b600061406f81613fff85106112fe5750600f9290921b9160009150613ffe19840161133c565b60019250600160701b84106113205784613ffe039050600f84901b935061133c565b61132984613777565b95508561406d03905085607f0384901b93505b836001607f1b03611372578215611351576001015b600061135c82613777565b60700390508082901b91508083039250506113c0565b600083611380576000611383565b60015b60ff1690505b600160701b8210156113be5793800260ff81901c607f81019190911c94600019939093019260019290921b9082180190611389565b505b806001600160701b0316607083901b846113db5760006113e1565b6001607f1b5b6001600160801b0316171760801b9998505050505050505050565b6000617fff60f084811c8216919084901c8116908290036114b55780617fff03611477576001600160801b03198085169086160361144557505050600160ff1b81168218610825565b6001600160801b031985851816600160ff1b0361146757505050818117610825565b5061ffff60ef1b91506108259050565b6f7fffffffffffffffffffffffffffffff60801b84166000036114a4575061ffff60ef1b91506108259050565b505050600160ff1b81168218610825565b80617fff036114fc576f7fffffffffffffffffffffffffffffff60801b85166000036114eb575061ffff60ef1b91506108259050565b505050600160ff1b82168118610825565b6001600160701b03608086901c16600083900361151c5760019250611523565b600160701b175b6001600160701b03608086901c166000839003611543576001925061154a565b600160701b175b80820291508160000361157c57600160ff1b8787181661156b576000611571565b600160ff1b5b945050505050610825565b928201926000600160e11b8310156115af57600160e01b8310156115a8576115a383613777565b6115b2565b60e06115b2565b60e15b905061407081860110156115cd57600094506000925061166a565b6140e08186011015611610576140708510156115f257846140700383901c9250611607565b61407085111561160757614070850383901b92505b6000945061166a565b61c0dd818601111561162a57617fff94506000925061166a565b6070811115611641576070810383901c9250611654565b6070811015611654578060700383901b92505b6001600160701b03831692506140df8186010394505b82607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610825565b6000610a8783600160ff1b84185b6000617fff60f084811c8216919084901c8116908290036116f35780617fff036116e9576001600160801b031980851690861603611467578492505050610825565b8492505050610825565b80617fff03611706578392505050610825565b6001607f1b608086901c90811015906001600160701b031660008490036117305760019350611737565b600160701b175b6001607f1b608087901c90811015906001600160701b031660008590036117615760019450611768565b600160701b175b8260000361179b576001600160801b03198816600160ff1b1461178b578761178e565b60005b9650505050505050610825565b806000036117be576001600160801b03198916600160ff1b1461178b578861178e565b848603821515851515036118c75760708113156117e45789975050505050505050610825565b60008113156117f65790811c90611825565b606f1981121561180f5788975050505050505050610825565b6000811215611825578060000384901c93508596505b92810192600160711b8410611840576001968701969390931c925b86617fff03611871578461185957617fff60f01b611863565b6001600160f01b03195b975050505050505050610825565b600160701b8410156118865760009650611893565b6001600160701b03841693505b83607088901b866118a55760006118ab565b6001607f1b5b6001600160801b0316171760801b975050505050505050610825565b60008113156118e257600184901b93506001870396506118f9565b60008112156118f957600182901b91506001860396505b607081131561190b5760019150611958565b6001811315611928576001810360018303901c6001019150611958565b606f1981121561193b5760019350611958565b600019811215611958576001816000030360018503901c60010193505b818410611969578184039350611972565b83820393508294505b8360000361198b57506000965061082595505050505050565b600061199685613777565b9050806071036119bb57600185901c6001600160701b03169450600188019750611a0a565b60708110156119fd576070819003808911156119ea578086901b6001600160701b0316955080890398506119f7565b600098600019019590951b945b50611a0a565b6001600160701b03851694505b87617fff03611a3c5785611a2357617fff60f01b611a2d565b6001600160f01b03195b98505050505050505050610825565b84607089901b87611a4e576000611a54565b6001607f1b5b6001600160801b0316171760801b98505050505050505050610825565b8051600203611a8e57604081015160801c60208201510182555050565b600060028251611a9e9190614cc7565b90506000805b82811015611ada57611ab7816040614de3565b91506040820184015160801c602083018501510181860155806001019050611aa4565b50825160011660010361057857611af2826040614de3565b8483018054858301602001516001600160801b03909116019055905050505050565b8051600060ff821667ffffffffffffffff811115611b3457611b346143f0565b604051908082528060200260200182016040528015611b5d578160200160208202803683370190505b50905060005b8260ff16811015611bc357611b90848281518110611b8357611b83614a07565b6020026020010151611064565b828281518110611ba257611ba2614a07565b6001600160801b031990921660209283029190910190910152600101611b63565b508160ff16600103611bed57602081015160981c60681b8260f81b8560d01b171785555050505050565b604081015160981c602082015160981c60681b178260f81b8560d01b1717855560028260ff161115611c9e576000611c26600284614dfa565b60ff169050600060015b82811015611c6657611c43816040614de3565b91506040820184015160801c602083018501510181890155806001019050611c30565b508251600116600103611c9b57611c7e826040614de3565b8783018054858301602001516001600160801b0390911601905590505b50505b5050505050565b60006001607f1b608083901c90811190617fff60f085901c8116916001600160701b031690849083148015611cd957508115155b15611cec576101d561ffff60ef1b6136f4565b61400d831115611d185783611d0e57611d09617fff60f01b6136f4565b6101d5565b6101d560006136f4565b613f7f831015611d30576101d5613fff60f01b6136f4565b82600003611d415760019250611d4b565b600160701b821791505b613fef831115611d6457613fef830382901b9150611d79565b613fef831015611d795782613fef0382901c91505b838015611d97575071406e0000000000000000000000000000000082115b15611da6576101d560006136f4565b83158015611dc55750713fffffffffffffffffffffffffffffffffff82115b15611dd8576101d5617fff60f01b6136f4565b6001600160801b0382169160801c848015611df257508215155b15611dfe579119916001015b6001607f1b83811615611e225770016a09e667f3bcc908b2fb1366ea957d3e0260801c5b6f40000000000000000000000000000000841615611e51577001306fe0a31b7152de8d5a46305c85edec0260801c5b6f20000000000000000000000000000000841615611e80577001172b83c7d517adcdf7c8c50eb14a791f0260801c5b6f10000000000000000000000000000000841615611eaf5770010b5586cf9890f6298b92b71842a983630260801c5b6f08000000000000000000000000000000841615611ede577001059b0d31585743ae7c548eb68ca417fd0260801c5b6f04000000000000000000000000000000841615611f0d57700102c9a3e778060ee6f7caca4f7a29bde80260801c5b6f02000000000000000000000000000000841615611f3c5770010163da9fb33356d84a66ae336dcdfa3f0260801c5b6f01000000000000000000000000000000841615611f6b57700100b1afa5abcbed6129ab13ec11dc95430260801c5b6e800000000000000000000000000000841615611f995770010058c86da1c09ea1ff19d294cf2f679b0260801c5b6e400000000000000000000000000000841615611fc7577001002c605e2e8cec506d21bfc89a23a00f0260801c5b6e200000000000000000000000000000841615611ff557700100162f3904051fa128bca9c55c31e5df0260801c5b6e100000000000000000000000000000841615612023577001000b175effdc76ba38e31671ca9397250260801c5b6e08000000000000000000000000000084161561205157700100058ba01fb9f96d6cacd4b180917c3d0260801c5b6e04000000000000000000000000000084161561207f5770010002c5cc37da9491d0985c348c68e7b30260801c5b600160711b8416156120a2577001000162e525ee054754457d59952920260260801c5b600160701b8416156120c55770010000b17255775c040618bf4a4ade83fc0260801c5b6d80000000000000000000000000008416156120f2577001000058b91b5bc9ae2eed81e9b7d4cfab0260801c5b6d400000000000000000000000000084161561211f57700100002c5c89d5ec6ca4d7c8acc017b7c90260801c5b6d200000000000000000000000000084161561214c5770010000162e43f4f831060e02d839a9d16d0260801c5b6d100000000000000000000000000084161561217957700100000b1721bcfc99d9f890ea069117630260801c5b6d08000000000000000000000000008416156121a65770010000058b90cf1e6d97f9ca14dbcc16280260801c5b6d04000000000000000000000000008416156121d3577001000002c5c863b73f016468f6bac5ca2b0260801c5b6d020000000000000000000000000084161561220057700100000162e430e5a18f6119e3c02282a50260801c5b6d010000000000000000000000000084161561222d577001000000b1721835514b86e6d96efd1bfe0260801c5b6c8000000000000000000000000084161561225957700100000058b90c0b48c6be5df846c5b2ef0260801c5b6c400000000000000000000000008416156122855770010000002c5c8601cc6b9e94213c72737a0260801c5b6c200000000000000000000000008416156122b1577001000000162e42fff037df38aa2b219f060260801c5b6c100000000000000000000000008416156122dd5770010000000b17217fba9c739aa5819f44f90260801c5b6c08000000000000000000000000841615612309577001000000058b90bfcdee5acd3c1cedc8230260801c5b6c0400000000000000000000000084161561233557700100000002c5c85fe31f35a6a30da1be500260801c5b6c020000000000000000000000008416156123615770010000000162e42ff0999ce3541b9fffcf0260801c5b6c0100000000000000000000000084161561238d57700100000000b17217f80f4ef5aadda455540260801c5b6b8000000000000000000000008416156123b85770010000000058b90bfbf8479bd5a81b51ad0260801c5b6b4000000000000000000000008416156123e3577001000000002c5c85fdf84bd62ae30a74cc0260801c5b6b20000000000000000000000084161561240e57700100000000162e42fefb2fed257559bdaa0260801c5b6b100000000000000000000000841615612439577001000000000b17217f7d5a7716bba4a9ae0260801c5b6b08000000000000000000000084161561246457700100000000058b90bfbe9ddbac5e109cce0260801c5b6b04000000000000000000000084161561248f5770010000000002c5c85fdf4b15de6f17eb0d0260801c5b6b0200000000000000000000008416156124ba577001000000000162e42fefa494f1478fde050260801c5b6b0100000000000000000000008416156124e55770010000000000b17217f7d20cf927c8e94c0260801c5b6a800000000000000000000084161561250f577001000000000058b90bfbe8f71cb4e4b33d0260801c5b6a400000000000000000000084161561253957700100000000002c5c85fdf477b662b269450260801c5b6a20000000000000000000008416156125635770010000000000162e42fefa3ae53369388c0260801c5b6a100000000000000000000084161561258d57700100000000000b17217f7d1d351a389d400260801c5b6a08000000000000000000008416156125b75770010000000000058b90bfbe8e8b2d3d4ede0260801c5b6a04000000000000000000008416156125e1577001000000000002c5c85fdf4741bea6e77e0260801c5b6a020000000000000000000084161561260b57700100000000000162e42fefa39fe95583c20260801c5b6a0100000000000000000000841615612635577001000000000000b17217f7d1cfb72b45e10260801c5b698000000000000000000084161561265e57700100000000000058b90bfbe8e7cc35c3f00260801c5b69400000000000000000008416156126875770010000000000002c5c85fdf473e242ea380260801c5b69200000000000000000008416156126b0577001000000000000162e42fefa39f02b772c0260801c5b69100000000000000000008416156126d95770010000000000000b17217f7d1cf7d83c1a0260801c5b6908000000000000000000841615612702577001000000000000058b90bfbe8e7bdcbe2e0260801c5b690400000000000000000084161561272b57700100000000000002c5c85fdf473dea871f0260801c5b69020000000000000000008416156127545770010000000000000162e42fefa39ef44d910260801c5b690100000000000000000084161561277d57700100000000000000b17217f7d1cf79e9490260801c5b688000000000000000008416156127a55770010000000000000058b90bfbe8e7bce5440260801c5b684000000000000000008416156127cd577001000000000000002c5c85fdf473de6eca0260801c5b682000000000000000008416156127f557700100000000000000162e42fefa39ef366f0260801c5b6810000000000000000084161561281d577001000000000000000b17217f7d1cf79afa0260801c5b6808000000000000000084161561284557700100000000000000058b90bfbe8e7bcd6d0260801c5b6804000000000000000084161561286d5770010000000000000002c5c85fdf473de6b20260801c5b68020000000000000000841615612895577001000000000000000162e42fefa39ef3580260801c5b680100000000000000008416156128bd5770010000000000000000b17217f7d1cf79ab0260801c5b6780000000000000008416156128e4577001000000000000000058b90bfbe8e7bcd50260801c5b67400000000000000084161561290b57700100000000000000002c5c85fdf473de6a0260801c5b6720000000000000008416156129325770010000000000000000162e42fefa39ef340260801c5b67100000000000000084161561295957700100000000000000000b17217f7d1cf7990260801c5b6708000000000000008416156129805770010000000000000000058b90bfbe8e7bcc0260801c5b6704000000000000008416156129a7577001000000000000000002c5c85fdf473de50260801c5b6702000000000000008416156129ce57700100000000000000000162e42fefa39ef20260801c5b6701000000000000008416156129f5577001000000000000000000b17217f7d1cf780260801c5b6680000000000000841615612a1b57700100000000000000000058b90bfbe8e7bb0260801c5b6640000000000000841615612a415770010000000000000000002c5c85fdf473dd0260801c5b6620000000000000841615612a67577001000000000000000000162e42fefa39ee0260801c5b6610000000000000841615612a8d5770010000000000000000000b17217f7d1cf60260801c5b6608000000000000841615612ab3577001000000000000000000058b90bfbe8e7a0260801c5b6604000000000000841615612ad957700100000000000000000002c5c85fdf473c0260801c5b6602000000000000841615612aff5770010000000000000000000162e42fefa39d0260801c5b6601000000000000841615612b2557700100000000000000000000b17217f7d1ce0260801c5b65800000000000841615612b4a5770010000000000000000000058b90bfbe8e60260801c5b65400000000000841615612b6f577001000000000000000000002c5c85fdf4720260801c5b65200000000000841615612b9457700100000000000000000000162e42fefa380260801c5b65100000000000841615612bb9577001000000000000000000000b17217f7d1b0260801c5b65080000000000841615612bde57700100000000000000000000058b90bfbe8d0260801c5b65040000000000841615612c035770010000000000000000000002c5c85fdf460260801c5b65020000000000841615612c28577001000000000000000000000162e42fefa20260801c5b65010000000000841615612c4d5770010000000000000000000000b17217f7d00260801c5b648000000000841615612c71577001000000000000000000000058b90bfbe70260801c5b644000000000841615612c9557700100000000000000000000002c5c85fdf30260801c5b642000000000841615612cb95770010000000000000000000000162e42fef90260801c5b641000000000841615612cdd57700100000000000000000000000b17217f7c0260801c5b640800000000841615612d015770010000000000000000000000058b90bfbd0260801c5b640400000000841615612d25577001000000000000000000000002c5c85fde0260801c5b640200000000841615612d4957700100000000000000000000000162e42fee0260801c5b640100000000841615612d6d577001000000000000000000000000b17217f60260801c5b6380000000841615612d9057700100000000000000000000000058b90bfa0260801c5b6340000000841615612db35770010000000000000000000000002c5c85fc0260801c5b6320000000841615612dd6577001000000000000000000000000162e42fd0260801c5b6310000000841615612df95770010000000000000000000000000b17217e0260801c5b6308000000841615612e1c577001000000000000000000000000058b90be0260801c5b6304000000841615612e3f57700100000000000000000000000002c5c85e0260801c5b6302000000841615612e625770010000000000000000000000000162e42e0260801c5b6301000000841615612e8557700100000000000000000000000000b172160260801c5b62800000841615612ea75770010000000000000000000000000058b90a0260801c5b62400000841615612ec9577001000000000000000000000000002c5c840260801c5b62200000841615612eeb57700100000000000000000000000000162e410260801c5b62100000841615612f0d577001000000000000000000000000000b17200260801c5b62080000841615612f2f57700100000000000000000000000000058b8f0260801c5b62040000841615612f515770010000000000000000000000000002c5c70260801c5b62020000841615612f73577001000000000000000000000000000162e30260801c5b62010000841615612f955770010000000000000000000000000000b1710260801c5b618000841615612fb6577001000000000000000000000000000058b80260801c5b614000841615612fd757700100000000000000000000000000002c5b0260801c5b612000841615612ff85770010000000000000000000000000000162d0260801c5b61100084161561301957700100000000000000000000000000000b160260801c5b61080084161561303a5770010000000000000000000000000000058a0260801c5b61040084161561305b577001000000000000000000000000000002c40260801c5b61020084161561307c577001000000000000000000000000000001610260801c5b61010084161561309d577001000000000000000000000000000000b00260801c5b60808416156130bd577001000000000000000000000000000000570260801c5b60408416156130dd5770010000000000000000000000000000002b0260801c5b60208416156130fd577001000000000000000000000000000000150260801c5b601084161561311d5770010000000000000000000000000000000a0260801c5b600884161561313d577001000000000000000000000000000000040260801c5b600484161561315d577001000000000000000000000000000000010260801c5b8561317e57600f81901c6001600160701b03169050613fff820191506131ad565b613ffe82116131a357600f81901c6001600160701b0316905081613fff0391506131ad565b600091613fee19011c5b607082811b8217935083901c617fff16613fff8110156131d65750600098975050505050505050565b6001607f1b846001600160801b0316106131ef57600080fd5b6140fe8111156131fe57600080fd5b600160701b6001600160701b0385161761406f8210156132245761406f8290031c613236565b61406f8211156132365761406e1982011b5b9998505050505050505050565b60606000808380602001905181019061325c9190614a28565b909350915060009050606086901b6bffffffffffffffffffffffff191690506000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156132bb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526132e39190810190614bcd565b905060008060006132f385610cf3565b9250925092508260ff1660000361331d576040516321c4e35760e21b815260040160405180910390fd5b6000600161332d8560ff16610bf9565b901b9586019590506133428660ff8616610c27565b9850600061334f84610feb565b90508060000361336757505050505050505050610825565b600061337282611064565b90506000613380838c6110d0565b905061338f8e868a848e6110f3565b945060005b8c518110156133fe576133cb6133b9846107d289858151811061040657610406614a07565b8e83815181106104d8576104d8614a07565b8d82815181106133dd576133dd614a07565b6001600160801b031990921660209283029190910190910152600101613394565b50505050505050505050505092915050565b6000617fff60f084811c8216919084901c8116908290036134445780617fff036114a4575061ffff60ef1b91506108259050565b80617fff03613494577dffffffffffffffffffffffffffff00000000000000000000000000000000841615613483575061ffff60ef1b91506108259050565b505050808218600160ff1b16610825565b6f7fffffffffffffffffffffffffffffff60801b84166000036134f6576f7fffffffffffffffffffffffffffffff60801b85166000036134de575061ffff60ef1b91506108259050565b505050808218600160ff1b16617fff60f01b17610825565b6001600160701b03608085901c166000829003613516576001915061351d565b600160701b175b6001600160701b03608087901c16600084900361356057801561355b57600061354582613777565b6001955060e20393840160711901939190911b90505b61356a565b600160701b1760721b5b81818161357957613579614cb1565b0490508060000361359857600160ff1b8787181661156b576000611571565b6d10000000000000000000000000008110156135b6576135b6614e1c565b60006e08000000000000000000000000000082101561360b576e04000000000000000000000000000082101561360057600160711b8210156135f9576070613603565b6071613603565b60725b60ff16613614565b61361482613777565b90508361407101818601111561363257617fff9450600091506136c5565b83818601613ffc01101561364d5760009450600091506136c5565b83818601613f8c01101561369a578385613ffc011115613678578385613ffc010382901b9150613691565b8385613ffc01101561369157613ffc8585030382901c91505b600094506136c5565b60708111156136ad576070810382901c91505b6001600160701b038216915083818601613f8d010394505b81607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610825565b6000617fff60f083901c16613fff8110156137125750600092915050565b6001607f1b608084901c1061372657600080fd5b6140fe81111561373557600080fd5b600160701b6001600160701b03608085901c161761406f82101561375f5761406f8290031c610a87565b61406f821115610a875761406e1982011b9392505050565b600080821161378557600080fd5b6000600160801b831061379a57608092831c92015b6801000000000000000083106137b257604092831c92015b64010000000083106137c657602092831c92015b6201000083106137d857601092831c92015b61010083106137e957600892831c92015b601083106137f957600492831c92015b6004831061380957600292831c92015b600283106108255760010192915050565b856000613828858a86613d05565b90506000613837868487613d05565b90508181111561391757602087015160009061386f908a9061385f90613fff60f01b906116a7565b6001600160801b03191690611004565b9050600061389a6001600160801b031983166f407dffffffffffffffffffffffffffff60801b613d88565b60000b196138d1576138cc6138c06138bb6001600160801b03198516613ebf565b613f7f565b8590600160801b613fda565b6138d5565b6000195b90508083111561391057851561390057505060408051600081526020810190915292506139a6915050565b61390d888287868b6140cc565b94505b50506139a3565b818110156139a3576000600160801b6139736138bb6139648c61385f8d604001516f3fff000000000000000000000000000060801b6001600160801b03191661169990919063ffffffff16565b6001600160801b031916613ebf565b61397d9085614de3565b6139879190614cc7565b9050808210156139a15761399e878286858a6140cc565b93505b505b50505b979650505050505050565b6060859050600080886001815181106139cc576139cc614a07565b6020026020010151896000815181106139e7576139e7614a07565b6020026020010151116139fd5760016000613a02565b600060015b60ff16915060ff169150613a376040518060800160405280600081526020016000815260200160008152602001606081525090565b604051632b227ea960e01b81526001600160a01b03871690632b227ea990613a69908d90879087908b90600401614e32565b602060405180830381865afa158015613a86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aaa9190614e63565b6020820152604051632b227ea960e01b81526001600160a01b03871690632b227ea990613ae1908790879087908b90600401614e32565b602060405180830381865afa158015613afe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b229190614e63565b80825260208201511015613c12576000613b7f8961385f8a600001518781518110613b4f57613b4f614a07565b60200260200101518681518110613b6857613b68614a07565b6020908102919091010151613fff60f01b906116a7565b9050613ba86001600160801b031982166f407dffffffffffffffffffffffffffff60801b613d88565b60000b19613bde57613bd9613bc96138bb6001600160801b03198416613ebf565b602084015190600160801b614225565b613be9565b600019604083018190525b6040830181905282511115613c0c57613c0a8783604001518787878b614268565b505b50613cf8565b602081015181511015613cf8576000613c668961385f613c5a8b600001518781518110613c4157613c41614a07565b60200260200101518881518110613b6857613b68614a07565b613fff60f01b90613410565b9050613c8f6001600160801b031982166f407dffffffffffffffffffffffffffff60801b613d88565b60000b60001914613ca65760006040830152613cd5565b613ccf613cbf6138bb6001600160801b03198416613ebf565b602084015190600160801b613fda565b60408301525b604082015182511015613cf657613cf48783604001518787878b614268565b505b505b5050509695505050505050565b6040516253057f60e61b81526000906001600160a01b038516906314c15fc090613d35908690869060040161480f565b602060405180830381865afa925050508015613d6e575060408051601f3d908101601f19168201909252613d6b91810190614e63565b60015b613d8057506001600160801b03610a87565b949350505050565b60006f7fffffffffffffffffffffffffffffff608084901c16617fff60701b811115613db357600080fd5b6f7fffffffffffffffffffffffffffffff608084901c16617fff60701b811115613ddc57600080fd5b6001600160801b0319858116908516141580613e055750617fff60701b826001600160801b0316105b613e0e57600080fd5b6001600160801b031980851690861603613e2d57600092505050610825565b6001607f1b608086811c82118015929187901c919091101590613e7e578015613e7057826001600160801b0316846001600160801b031611613e70576001611571565b600019945050505050610825565b8015613e91576001945050505050610825565b826001600160801b0316846001600160801b031611613eb257600019611571565b6001945050505050610825565b6000617fff60f083901c1661407e811115613ed957600080fd5b613f7f811015613eec5750600092915050565b600160701b6001600160701b03608085901c1617613fef821015613f1657613fef8290031c613f28565b613fef821115613f2857613fee1982011b5b6001607f1b608085901c10613f5257600160ff1b811115613f4857600080fd5b6000039392505050565b7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811115610a8757600080fd5b600080821215613fd65760405162461bcd60e51b815260206004820181905260248201527f53616665436173743a2076616c7565206d75737420626520706f73697469766560448201526064015b60405180910390fd5b5090565b60008080600019858709858702925082811083820303915050806000036140145783828161400a5761400a614cb1565b0492505050610a87565b8084116140635760405162461bcd60e51b815260206004820152601560248201527f4d6174683a206d756c446976206f766572666c6f7700000000000000000000006044820152606401613fcd565b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b604051635fb3321560e11b81526060906001600160a01b0387169063bf66642a90614101908890889088908890600401614e7c565b600060405180830381865afa92505050801561413f57506040513d6000823e601f3d908101601f1916820160405261413c9190810190614bcd565b60015b6141c357835167ffffffffffffffff81111561415d5761415d6143f0565b604051908082528060200260200182016040528015614186578160200160208202803683370190505b50905060005b84518110156141bd576000198282815181106141aa576141aa614a07565b602090810291909101015260010161418c565b5061421c565b80915060005b82518110156111cb578281815181106141e4576141e4614a07565b602002602001015160000361421457600183828151811061420757614207614a07565b6020026020010181815250505b6001016141c9565b95945050505050565b60008080600019858709858702925082811083820303915050806000036142555783828161400a5761400a614cb1565b8084116140635760001992505050610a87565b60408051600280825260608083018452926000929190602083019080368337019050509050868186815181106142a0576142a0614a07565b602002602001018181525050670de0b6b3a76400008185815181106142c7576142c7614a07565b60200260200101818152505060006142ec6142e58a89898689614347565b60016143c2565b90506142fe6142e58a89888689614347565b87868151811061431057614310614a07565b6020026020010181815250508087878151811061432f5761432f614a07565b60209081029190910101525094979650505050505050565b604051631017d19360e31b81526000906001600160a01b038716906380be8c989061437c908890889088908890600401614ead565b602060405180830381865afa9250505080156143b5575060408051601f3d908101601f191682019092526143b291810190614e63565b60015b6101d5575060001961421c565b60008183116143d15781610a87565b5090919050565b6001600160a01b03811681146143ed57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715614429576144296143f0565b60405290565b6040805190810167ffffffffffffffff81118282101715614429576144296143f0565b604051601f8201601f1916810167ffffffffffffffff8111828210171561447b5761447b6143f0565b604052919050565b600067ffffffffffffffff82111561449d5761449d6143f0565b50601f01601f191660200190565b600082601f8301126144bc57600080fd5b81356144cf6144ca82614483565b614452565b8181528460208386010111156144e457600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561451457600080fd5b823561451f816143d8565b9150602083013567ffffffffffffffff81111561453b57600080fd5b614547858286016144ab565b9150509250929050565b6020808252825182820181905260009190848201906040850190845b818110156145935783516001600160801b0319168352928401929184019160010161456d565b50909695505050505050565b60008151808452602080850194506020840160005b838110156145d0578151875295820195908201906001016145b4565b509495945050505050565b602081526000610a87602083018461459f565b60008083601f84011261460057600080fd5b50813567ffffffffffffffff81111561461857600080fd5b60208301915083602082850101111561463057600080fd5b9250929050565b6000806000806040858703121561464d57600080fd5b843567ffffffffffffffff8082111561466557600080fd5b818701915087601f83011261467957600080fd5b81358181111561468857600080fd5b8860208260051b850101111561469d57600080fd5b6020928301965094509086013590808211156146b857600080fd5b506146c5878288016145ee565b95989497509550505050565b60005b838110156146ec5781810151838201526020016146d4565b50506000910152565b6000815180845261470d8160208601602086016146d1565b601f01601f19169290920160200192915050565b602081526000610a8760208301846146f5565b60008060006040848603121561474957600080fd5b8335614754816143d8565b9250602084013567ffffffffffffffff81111561477057600080fd5b61477c868287016145ee565b9497909650939450505050565b6000806000806000608086880312156147a157600080fd5b85356147ac816143d8565b9450602086013567ffffffffffffffff808211156147c957600080fd5b6147d589838a016145ee565b90965094506040880135935060608801359150808211156147f557600080fd5b50614802888289016144ab565b9150509295509295909350565b604081526000614822604083018561459f565b828103602084015261421c81856146f5565b6001600160801b0319811681146143ed57600080fd5b80356110cb81614834565b600067ffffffffffffffff82111561486f5761486f6143f0565b5060051b60200190565b600082601f83011261488a57600080fd5b8135602061489a6144ca83614855565b8083825260208201915060208460051b8701019350868411156148bc57600080fd5b602086015b848110156148e15780356148d481614834565b83529183019183016148c1565b509695505050505050565b60008060006060848603121561490157600080fd5b833561490c81614834565b92506020848101359250604085013567ffffffffffffffff8082111561493157600080fd5b908601906060828903121561494557600080fd5b61494d614406565b82358281111561495c57600080fd5b8301601f81018a1361496d57600080fd5b803561497b6144ca82614855565b81815260059190911b8201860190868101908c83111561499a57600080fd5b8784015b838110156149d2578035878111156149b65760008081fd5b6149c48f8b83890101614879565b84525091880191880161499e565b508452506149e491505083850161484a565b848201526149f46040840161484a565b6040820152809450505050509250925092565b634e487b7160e01b600052603260045260246000fd5b80516110cb81614834565b600080600060608486031215614a3d57600080fd5b8351614a4881614834565b60208501516040860151919450925067ffffffffffffffff811115614a6c57600080fd5b606081860187031215614a7e57600080fd5b614a86614406565b8186015167ffffffffffffffff811115614a9f57600080fd5b86830101601f81018813614ab257600080fd5b8051614ac06144ca82614855565b808282526020820191508a60208460051b8601011115614adf57600080fd5b602084015b60208460051b860101811015614b9457805167ffffffffffffffff811115614b0b57600080fd5b8c603f8288010112614b1c57600080fd5b60208187010151614b2f6144ca82614855565b8082825260208201915060408360051b858b01010192508f831115614b5357600080fd5b928801604001925b82841015614b7f578351614b6e81614834565b825260209384019390910190614b5b565b86525050602093840193919091019050614ae4565b50845250614ba9915050868301602001614a1d565b6020820152614bbc604083880101614a1d565b604082015280925050509250925092565b60006020808385031215614be057600080fd5b825167ffffffffffffffff811115614bf757600080fd5b8301601f81018513614c0857600080fd5b8051614c166144ca82614855565b81815260059190911b82018301908381019087831115614c3557600080fd5b928401925b828410156139a657835182529284019290840190614c3a565b600060208284031215614c6557600080fd5b813567ffffffffffffffff811115614c7c57600080fd5b613d8084828501614879565b634e487b7160e01b600052601160045260246000fd5b8181038181111561082557610825614c88565b634e487b7160e01b600052601260045260246000fd5b600082614cd657614cd6614cb1565b500490565b8082018082111561082557610825614c88565b600060018201614d0057614d00614c88565b5060010190565b64ffffffffff82811682821603908082111561022757610227614c88565b60006020808385031215614d3857600080fd5b825167ffffffffffffffff80821115614d5057600080fd5b9084019060408287031215614d6457600080fd5b614d6c61442f565b8251614d77816143d8565b81528284015182811115614d8a57600080fd5b80840193505086601f840112614d9f57600080fd5b82519150614daf6144ca83614483565b8281528785848601011115614dc357600080fd5b614dd2838683018787016146d1565b938101939093525090949350505050565b808202811582820484141761082557610825614c88565b600060ff831680614e0d57614e0d614cb1565b8060ff84160491505092915050565b634e487b7160e01b600052600160045260246000fd5b608081526000614e45608083018761459f565b85602084015284604084015282810360608401526139a681856146f5565b600060208284031215614e7557600080fd5b5051919050565b848152608060208201526000614e95608083018661459f565b84604084015282810360608401526139a681856146f5565b608081526000614ec0608083018761459f565b8560208401528281036040840152614ed8818661459f565b905082810360608401526139a681856146f556fea2646970667358221220c60e7b800ffa0948f84e702b7d5fd1c10f20cb58c12c0da853e02a41fdf41ee264736f6c63430008190033
🤖 Code Reader

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

Custom Contract ABI

                            

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]

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