0xc57131f0261f0ce453c78700c885090cccde6a82b97140e8f4fc5295ad2530aa
Transaction
Balance changes
Address | Token(s) swapped | Balance | Price | Value change | |
---|---|---|---|---|---|
| Eth | +$0.13 | |||
Ether | +0.000040490424 | | +$0.13 | ||
| Eth | +$0.03 | |||
Ether | +0.000008574414 | | +$0.03 | ||
| Eth | +$0.01 | |||
Ether | +0.0000026987823 | | +$0.01 | ||
| 0x Settler | 0 | |||
0x Settler (#2) | -1 | ||||
| 0x Settler | 0 | |||
0x Settler (#3) | +1 | ||||
| 0x Settler | 0 | |||
0x Settler (#3) | -1 | ||||
| 0x Settler | 0 | |||
0x Settler (#2) | +1 | ||||
| Eth | -$0.17 | |||
Ether | -0.00005176362 | | -$0.17 |
Invocation flow
Full trace
- 0CALL7997430 gas [RECV] GnosisSafeProxy.execTransaction (to= MultiSendCallOnly, value=0, data=0x8d80ff0a000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000096f20000000000000004533fe15556b1e086bb1a72ceae00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004964f160fb0e0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000048ea6080604090808252346102e757806148ca803803809161001f8285610340565b83396020928391810103126102e757516001600160601b0319811691908290036102e7576100ef605b845161005381610311565b8181527f6e416d6f756e744f75742c62797465735b5d20616374696f6e732900000000006060858301927f536c697070616765416e64416374696f6e73286164647265737320726563697084527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d69898201520152207f615e8d716cef7295e75dd3f1f10d679914ad6d7759e8e9459f0109ef7524170114610363565b6101276100fa61037e565b8281519101207f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa14610363565b610200835161013581610311565b604b81528281017f5266714f7264657228436f6e73696465726174696f6e206d616b6572436f6e7381527f696465726174696f6e2c436f6e73696465726174696f6e2074616b6572436f6e868301526a73696465726174696f6e2960a81b60608301526101d6846101a461037e565b9281895194859282840197518091895e8301908282015f8152815193849201905e015f83820152038084520182610340565b5190207f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a759827614610363565b46617a691491826102fc578351907f16fbd3a71aa6d159973eb9ff1e1199f9fe242767e6f30ac662a492f92ac704115f80a26331a9108f60e11b81526002600482015281816024816d04533fe15556b1e086bb1a72ceae5afa9182156102f2575f926102aa575b50610295929161028291506001600160a01b03163014610363565b61210546149081156102a2575b50610363565b516144c690816104048239f35b90505f61028f565b90809250813d83116102eb575b6102c18183610340565b810103126102e75751906001600160a01b03821682036102e75790610282610295610267565b5f80fd5b503d6102b7565b84513d5f823e3d90fd5b61029592915061030c9015610363565b610282565b608081019081106001600160401b0382111761032c57604052565b634e487b7160e01b5f52604160045260245ffd5b601f909101601f19168101906001600160401b0382119082101761032c57604052565b1561036a57565b634e487b7160e01b5f52600160045260245ffd5b6040519061038b82610311565b605882527f626f6f6c207061727469616c46696c6c416c6c6f7765642900000000000000006060837f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7460208201527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c6040820152015256fe60808060405260043610908115610351575b50361561034f57346101f0577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe9905f825c925d7fffffffff000000000000000000000000000000000000000000000000000000005f358181169261033a575b508083169116036101f0576001600160a01b0380821633036101f057366004116101f05760031936019160a01c61ffff1690816001146101f457506002146100de577f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffd5b6080116101f0576004356044359081600401356100fe8160248501614482565b60601c91816014116101f0575f8113156101e657915b30810361017057506101506101589360387fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec3394019101614482565b60601c612204565b604051610164816108e7565b5f81525b602081519101f35b9161017f6101e1949315613bc5565b6040519061018c82610852565b33825260208201526101db6101a436602c8601610926565b92608d8501356001169460ad7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff77369301910161099c565b9161409e565b610158565b5060243591610114565b5f80fd5b9160a09150106101f057608435907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f82019160a435918083168084036101f057610242916004351614613bc5565b60405161024e81610852565b33815260243560208201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c360192608084126101f05760408051946102938661089b565b126101f057604051906102a582610852565b815260c4356020820152835260e43560208401526101043560408401526102cb84610980565b916102d96040519384610903565b8483523660a48201116101f0577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9f5f9161032696610125602087013784010152610105356001169261409e565b604051610332816108e7565b5f8152610168565b818093503660040360031b1b1616905f61006f565b005b5f3560e01c9081631fff991f1461039e57506370a0823114610373575f610011565b346101f05760206003193601126101f0576004356001600160a01b038116036101f0575f805360015ff35b600319360160a081126101f0576060136101f05767ffffffffffffffff80606435116101f0573660236064350112156101f05760643560040135116101f0576005903660246064356004013560051b6064350101116101f05733906d1ff3684f28c67538d4d072c227343314610803575b6001600160a01b038216156107db57507f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde893916001600160a01b03835c16806107aa5750816001600160a01b0316835d5f5b6064356004013581106106925750506004356001600160a01b0381168082036101f057602435916001600160a01b038316908184036101f057604435918215801590610689575b610502575b50505050506001600160a01b03166001600160a01b03825c16036104d8575f905d602060405160018152f35b60046040517f5149e795000000000000000000000000000000000000000000000000000000008152fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee810361059657505047928184106105475750506001600160a01b03929161053d9161227a565b90838080806104ac565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b03919091166004820152602481019190915260448101839052606490fd5b0390fd5b60249492919350602090604051958680927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa93841561067e575f9461064a575b508084106106025750916105fd916001600160a01b039493612204565b61053d565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152602482015260448101839052606490fd5b9093506020813d602011610676575b8161066660209383610903565b810103126101f0575192866105e0565b3d9150610659565b6040513d5f823e3d90fd5b508015156104a7565b602460643582841b01013560643501811580610783575b801561075c575b156106be5750600101610460565b604051917f3c74eed600000000000000000000000000000000000000000000000000000000835260048301527fffffffff00000000000000000000000000000000000000000000000000000000604482013516602483015260606044830152600319602482013501606483015281601f19601b6024608494600319828201350160488201878701375f60808383013587010152013501168101030190fd5b5060405161077a600319602484013501604884016044850135611a29565b906040526106b0565b506040516107a16003196024840135016048840160448501356109f0565b906040526106a9565b602490604051907f7407c0f80000000000000000000000000000000000000000000000000000000082526004820152fd5b807fe758b8d50000000000000000000000000000000000000000000000000000000060049252fd5b367fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec013560601c915061040f565b35906001600160a01b03821682036101f057565b359081151582036101f057565b6040810190811067ffffffffffffffff82111761086e57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6060810190811067ffffffffffffffff82111761086e57604052565b6080810190811067ffffffffffffffff82111761086e57604052565b67ffffffffffffffff811161086e57604052565b6020810190811067ffffffffffffffff82111761086e57604052565b90601f601f19910116810190811067ffffffffffffffff82111761086e57604052565b8092910391608083126101f057604051906109408261089b565b60408294126101f0576060604091825161095981610852565b61096282610831565b81526020820135602082015284528281013560208501520135910152565b67ffffffffffffffff811161086e57601f01601f191660200190565b9291926109a882610980565b916109b66040519384610903565b8294818452818301116101f0578281602093845f960137010152565b9080601f830112156101f0578160206109ed9335910161099c565b90565b9190916109fe828483610e9f565b15610a0b57505050600190565b7fffffffff00000000000000000000000000000000000000000000000000000000167fc3608b9d0000000000000000000000000000000000000000000000000000000003610e99578101610120828203126101f057610a6982610831565b916020604092610a7a848401610845565b92610a888260608301610926565b9560e082013567ffffffffffffffff81116101f057605593610aab9184016109d2565b9161010081013597610bce866001600160a01b039687947fbb7b783eb4b8ca46925c5384a6b9919df57cb83da8f76e37291f58d0dd5c439a60e18d730a7e848aca42d879ef06507fca0e7b33a0a63c1e8151809c838b51838b015e838b8a01836060015e6d1ff3684f28c67538d4d072c2273433148260a00153805180918a018360a1015e806081018252019160a18301809152528560ac82019460ff8653013560c1820152015220925101518815610e7357637fffffff5b8a5191610b70836108b7565b8252891515898301525f8b83015260030b6060820152610bc08a51968792868b8501987f3eece7db000000000000000000000000000000000000000000000000000000008a5216602485016119b5565b03601f198101865285610903565b16927f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c168314610e4a577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe991825c80610e1a57505f9182917f67ca7c91000000000000000100000000000000000000000000000000000000008617855d519082865af190610c5a613bf9565b9115610e12575c80610de25750808380610c79935183010191016119ff565b939050858410610c8e57505050505050600190565b6004939291829115610d66578551948580927f5f64b55b0000000000000000000000000000000000000000000000000000000082525afa908115610d5c575f91610d25575b506105929250925b519384937f97a6f3b9000000000000000000000000000000000000000000000000000000008552600485016040919493926001600160a01b03606083019616825260208201520152565b905082813d8311610d55575b610d3b8183610903565b810103126101f057610d4f61059292611a15565b85610cd3565b503d610d31565b84513d5f823e3d90fd5b8551948580927f0fc63d100000000000000000000000000000000000000000000000000000000082525afa908115610d5c575f91610dab575b50610592925092610cdb565b905082813d8311610ddb575b610dc18183610903565b810103126101f057610dd561059292611a15565b85610d9f565b503d610db7565b6024908651907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b508281519101fd5b6024908851907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b600486517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000610b64565b50505f90565b9091907fffffffff00000000000000000000000000000000000000000000000000000000167f6d42ea470000000000000000000000000000000000000000000000000000000081036110b75750810190610180818303126101f057610f0381610831565b610f108360208401610926565b610f1c60a08401610831565b9260c08101359467ffffffffffffffff958681116101f05781610f409184016109d2565b93610f4e8260e08501610926565b916101608401359788116101f057611057611049966fffffffffffffffffffffffffffffffff96610f8a610fa4946110b29c6110aa99016109d2565b996001600160a01b03958695868093169788921684613a45565b9c909961102f610fb48583613a45565b7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde893989192985c908260405194610fe9866108b7565b16845260208401521660408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9e8f956d1ff3684f28c67538d4d072c2273433149261409e565b611051612289565b93613aab565b60405192611064846108b7565b16825284602083015260408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b911691613b82565b600190565b9192917f22ce6ede000000000000000000000000000000000000000000000000000000000361198a57820190610100838303126101f0576110f783610831565b9060208401359367ffffffffffffffff948581116101f0578461111b9183016109d2565b946111298560408401610926565b9460c08301359182116101f0576111419183016109d2565b8051608901948560891161148157602091601f1961117761116189610980565b9861116f6040519a8b610903565b808a52610980565b013684890137815183015187604801526040828401886068015e6d1ff3684f28c67538d4d072c2273433148760a8015380519083018760a9015e5101515f937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821161146f5795905b815190602c82106113f557866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b038816101561197f575b60ff1660068082101561174757506002808210156115ff57508061156757506001600160a01b03916112b6917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33985b62ffffff16906040519387165f528616602052806040521560051b6060035f20916040526123c6565b1691855190858760280152866014015285528c602c88115f146114d357506113556001600160a01b0393878594611350611364956113426040519b8c9586938d8c8084169116105f146114b5578d8c806401000276a4945b7f128acb080000000000000000000000000000000000000000000000000000000060208a0152169116103060248701613a0f565b03601f198101845283610903565b6123e5565b602080825183010191016119ff565b9590946040525b16911610156114ae57505b7f80000000000000000000000000000000000000000000000000000000000000008114611481575f03945f861261146f57602c8692111561140757505030939060188151106113f55780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe801601890910190815260288652906111e0565b634e487b715f5260326020526024601cfd5b939650935050925060e0830135821061142257505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260e0929092013560248301526044820152606490fd5b634e487b715f5260116020526024601cfd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b9050611376565b8d8c8073fffd8963efd1fc6a506488495d951d5263988d259461130e565b926001600160a01b036115439361135089611342849b9a8a61135598879b888616898416105f1461154b57886401000276a4935b816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613a0f565b94909361136b565b8873fffd8963efd1fc6a506488495d951d5263988d2593611507565b9091929394959650600181145f146115ce57506112b68d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b602490604051907fd3b1276d0000000000000000000000000000000000000000000000000000000082526004820152fd5b810361165557506001600160a01b03916112b69173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b600381036116ad57506001600160a01b03916112b6917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c9861128d565b90919293949596506004908181145f146117175750506112b68d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e339861128d565b60249250604051917fd3b1276d000000000000000000000000000000000000000000000000000000008352820152fd5b600e80831015611867575081036117a857506001600160a01b03916112b691730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b6007810361180057506001600160a01b03916112b6917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b9091929394959650600881145f146115ce57506112b68d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b82141590506118c057506001600160a01b03916112b691734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b600f810361191857506001600160a01b03916112b69173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e339861128d565b9091929394959650601081145f146115ce57506112b68d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b869250889150611223565b505f9150565b90601f19601f602080948051918291828752018686015e5f8582860101520116010190565b60606109ed94936001600160a01b0360c094168352805160208401526020810151151560408401526040810151151582840152015160030b60808201528160a08201520190611990565b91908260409103126101f0576020825192015190565b51906001600160a01b03821682036101f057565b919091611a3782848361252f565b15611a4457505050600190565b82907fffffffff00000000000000000000000000000000000000000000000000000000167f67848fe7000000000000000000000000000000000000000000000000000000008103611e7e575060c091810103126101f057611aa481610831565b602090611ab2828401610831565b9160409283850135946060810135916001600160a01b03908184168094036101f05760a0611ae260808501610845565b930135975f9080611dfe575b508781611de957869150916024849351809481937f70a08231000000000000000000000000000000000000000000000000000000008352896004840152165afa908115611ddf575f91611db2575b5086517f1865c57d0000000000000000000000000000000000000000000000000000000081526101208082600481895afa918215611da8579089949392915f92611caa575b50506fffffffffffffffffffffffffffffffff809188875f14611ca2575051165b169003955b8315611c7c57637fffffff5b835197611bbf896108b7565b8852841515878901525f8489015260030b6060880152611c1a8351611be3816108e7565b5f8152845198899485947f3eece7db00000000000000000000000000000000000000000000000000000000865216600485016119b5565b03815f865af1938415611c72575f94611c41575b50858410610c8e57505050505050600190565b611c62919450853d8711611c6b575b611c5a8183610903565b8101906119ff565b9050925f611c2e565b503d611c50565b85513d5f823e3d90fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000611bb3565b015116611ba2565b818096508193503d8311611da1575b611cc38183610903565b810103126101f057885193840184811067ffffffffffffffff82111761086e578952611cee816139d7565b8452611cfb8782016139d7565b87850152611d0a8982016139f4565b89850152611d1a606082016139f4565b6060850152608081015164ffffffffff811681036101f057608085015260a08101518060030b81036101f05760a0850152611d5760c08201613a02565b60c085015260e081015163ffffffff811681036101f05760e0850152610100809101519060ff821682036101f05784015287926fffffffffffffffffffffffffffffffff80611b81565b503d611cb9565b89513d5f823e3d90fd5b90508481813d8311611dd8575b611dc98183610903565b810103126101f057515f611b3c565b503d611dbf565b87513d5f823e3d90fd5b92918186611df992999399612204565b611ba7565b88517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152915086826024818688165afa8015611da8575f90611e4f575b612710925002045f611aee565b508682813d8311611e77575b611e658183610903565b810103126101f0576127109151611e42565b503d611e5b565b7fca9e5d0f0000000000000000000000000000000000000000000000000000000014159050610e99578160c091810103126101f057611ebc81610831565b906020611eca818301610831565b9160409283820135916060810135916001600160a01b03938484168094036101f0578460a0611efb60808601610845565b940135981694868261215e575b505050505f14612055578351917fdd93f59a000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610d5c575f92612026575b50848210611f66575050505050600190565b826004918551928380927f4a248d2a0000000000000000000000000000000000000000000000000000000082525afa928315610d5c575f93611fed575b505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b90809350813d831161201f575b6120048183610903565b810103126101f05761201861059292611a15565b9185611fa3565b503d611ffa565b9091508281813d831161204e575b61203e8183610903565b810103126101f05751905f611f54565b503d612034565b8351917fbd6015b4000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610d5c575f9261212f575b508482106120a9575050505050600190565b826004918551928380927fd4b970460000000000000000000000000000000000000000000000000000000082525afa928315610d5c575f93611fed57505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b9091508281813d8311612157575b6121478183610903565b810103126101f05751905f612097565b503d61213d565b6024918951928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015287165afa9081156121fa5790859392915f916121c5575b506121bc93916121b69161401b565b91612204565b5f808086611f08565b809450888092503d83116121f3575b6121de8183610903565b810103126101f05791518492906121bc6121a7565b503d6121d4565b88513d5f823e3d90fd5b60446020925f80936001600160a01b03966040519788947fa9059cbb00000000000000000000000000000000000000000000000000000000865216600485015260248401525af11561227257503d15601f3d1160015f511416171561226557565b6390b8ec185f526004601cfd5b3d5f823e3d90fd5b5f80809381935af11561067e57565b604051612295816108b7565b605881526109ed603c60208301927f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7484527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c60408201527f626f6f6c207061727469616c46696c6c416c6c6f776564290000000000000000606082015260405161231e8161089b565b602e815260208101907f546f6b656e5065726d697373696f6e73286164647265737320746f6b656e2c7582527f696e7432353620616d6f756e742900000000000000000000000000000000000060408201526040519586937f436f6e73696465726174696f6e20636f6e73696465726174696f6e290000000060208601525180918686015e830190848201905f8252519283915e015f8382015203601c810184520182610903565b9160406055938151908152600b81019360ff8553602082015201522090565b6001600160a01b03809116907f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c1681146124f5577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe992835c806124c457509181740200000000000000000000000000000000000000005f9493859460e01b1717855d82602083519301915af19061247a613bf9565b91156124bb575c8061248a575090565b602490604051907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b50602081519101fd5b602490604051907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b60046040517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b359062ffffff821682036101f057565b9091907fffffffff00000000000000000000000000000000000000000000000000000000167fc1fb425e0000000000000000000000000000000000000000000000000000000081036125ee5750810160c0828203126101f05761259182610831565b61259e8260208501610926565b9160a084013567ffffffffffffffff81116101f0576125cd6125d5926001600160a01b03926110b297016109d2565b921683613a45565b50506d1ff3684f28c67538d4d072c2273433149261409e565b7fd92aadfb00000000000000000000000000000000000000000000000000000000810361285257508101610120828203126101f05761262c82610831565b9160209261263c83858401610926565b61264860a08401610831565b9360c08401359067ffffffffffffffff82116101f0576126699185016109d2565b9161010061267960e08601610831565b9401356126936001600160a01b0380809816931684613a45565b969091926126f06040938a8551916126aa836108b7565b168152898c820152868582015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9760248b61276f8c8616809d7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c89519261272a846108b7565b83528785840152168882015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9b8651928380927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa94851561284957505f94612806575b509361104984878c95856110b29f9b98996127f59b976fffffffffffffffffffffffffffffffff9e9b95116127fc575b90846127eb926143f3565b809b860152612204565b1691613b82565b90935083906127e0565b95919a809794508681999692993d8311612842575b6128258183610903565b810103126101f057945195999396929590949390926110496127b0565b503d61281b565b513d5f823e3d90fd5b9192917f8d68a15600000000000000000000000000000000000000000000000000000000810361307557508201906080838303126101f05761289383610831565b9060208401359260408501359067ffffffffffffffff82116101f0576128ba9186016109d2565b9260246020855181870151907fffffffffffffffffffffffffffffffffffffffff000000000000000000000000918281169160148110613060575b50509050604051928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015260601c5afa90811561067e575f9161302e575b5081810291818304149015171561148157612710900493604051936129608561089b565b6028855260403660208701379430937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821161146f5795905b815190602c82106113f557866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b0388161015613023575b60ff16600680821015612deb5750600280821015612cd6575080612c6f57506001600160a01b0391612a6e917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339862ffffff16906040519387165f528616602052806040521560051b6060035f20916040526123c6565b1691855190858760280152866014015285528c602c88115f14612bf857506113556001600160a01b0393878594611350612af8956113426040519b8c9586938d8c8084169116105f146114b5577f128acb080000000000000000000000000000000000000000000000000000000060208601526401000276a4918c168c8f16103060248701613a0f565b9590946040525b1691161015612bf157505b7f80000000000000000000000000000000000000000000000000000000000000008114611481575f03945f861261146f57602c86921115612b8957505030939060188151106113f55780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe80160189091019081526028865290612999565b939650935050925060608301358210612ba457505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b039190911660048201526060929092013560248301526044820152606490fd5b9050612b0a565b926001600160a01b03612c679361135089611342849b9a8a61135598879b888616898416105f1461154b57886401000276a493816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613a0f565b949093612aff565b9091929394959650600181145f146115ce5750612a6e8d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b8103612d2c57506001600160a01b0391612a6e9173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b60038103612d8457506001600160a01b0391612a6e917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c9861128d565b9091929394959650600481145f146115ce5750612a6e8d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e339861128d565b600e80831015612f0b57508103612e4c57506001600160a01b0391612a6e91730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b60078103612ea457506001600160a01b0391612a6e917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b9091929394959650600881145f146115ce5750612a6e8d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b8214159050612f6457506001600160a01b0391612a6e91734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b600f8103612fbc57506001600160a01b0391612a6e9173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e339861128d565b9091929394959650601081145f146115ce5750612a6e8d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b8692508891506129dc565b90506020813d602011613058575b8161304960209383610903565b810103126101f057515f61293c565b3d915061303c565b8391925060140360031b1b1616805f806128f5565b92837f103b48be00000000000000000000000000000000000000000000000000000000829495145f146133fe575060c091810103126101f0576130b781610831565b6020916130c5838201610831565b9160409182810135906130da60608201610831565b9060a06130e96080830161251f565b910135926001600160a01b03808098169316926001908180851614935f9284613372575b83945089519361333c575b630902f1ac5f52895f6004601c8a5afa1561333357893d106101f0578b8b928760051b9687519288811851948084811c16148215176132e6575b506060955061ffff6127109260081c1682030292028201910204975f601c8d8187019763022c0d9f88526080808901528360a08901528c82828a0101526004011886010152169101525f8060a48382875af11561227257508284106131bd5750505050505050600190565b600491879115613282578551928380927fd21220a70000000000000000000000000000000000000000000000000000000082525afa908115610d5c576105929495965f92613255575b5050935b519485947f97a6f3b900000000000000000000000000000000000000000000000000000000865216600485016040919493926001600160a01b03606083019616825260208201520152565b6132749250803d1061327b575b61326c8183610903565b810190613ffc565b8680613206565b503d613262565b8551928380927f0dfe16810000000000000000000000000000000000000000000000000000000082525afa908115610d5c576105929495965f926132c9575b50509361320a565b6132df9250803d1061327b5761326c8183610903565b86806132c1565b9294505091936024601c5f926370a0823184528b85525afa15613333578b3d106101f0575f51838110613322579183916060948d94038e613152565b60118d634e487b715f52526024601cfd5b833d5f823e3d90fd5b63a9059cbb8452868c850152848a8501528b5f6044601c870182875af11561333357805f51148c3d1015163d1517613118575f80fd5b9250928851907f70a082310000000000000000000000000000000000000000000000000000000082523060048301528b82602481865afa80156133f4575f906133c5575b6127109250020491839061310d565b508b82813d83116133ed575b6133db8183610903565b810103126101f05761271091516133b6565b503d6133d1565b8a513d5f823e3d90fd5b7f38c9c1470000000000000000000000000000000000000000000000000000000081036134875750019060a0818303126101f05761343b81610831565b9061344860408201610831565b90608081013567ffffffffffffffff81116101f0576110b29461346c9183016109d2565b9260206001600160a01b036060840135941692013590613c28565b7ff5b99189000000000000000000000000000000000000000000000000000000008103613893575060a091810103126101f0576134c381610831565b906040810135916001600160a01b03928381168091036101f0576134e96060840161251f565b6040517f392f37e9000000000000000000000000000000000000000000000000000000008152936001808316149160e086600481875afa90811561067e575f91885f985f935f945f9b5f935f96613818575b50878197839781969f61354d90613bc5565b8c15613803575b50505050505f916020880135613770575b8983158d858215938461375f575b50505090613751575b6136c7575b6135c993508686670de0b6b3a76400008099818099020493020495869461271061ffff838089800204818880020401818a89020402049660081c1682020490030204016142b4565b90030204946080820135861061367857505015613672575f925b6040516135ef816108e7565b5f8152823b156101f0575f9461364e8692604051988997889687957f022c0d9f00000000000000000000000000000000000000000000000000000000875260048701526024860152166044840152608060648401526084830190611990565b03925af1801561067e57613663575b50600190565b61366c906108d3565b5f61365d565b5f6135e3565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260809190910135602482015260448101859052606490fd5b915060208b60248b60405196879384927f70a082310000000000000000000000000000000000000000000000000000000084526004840152165afa801561067e5784905f9061371b575b8d94500391613581565b50506020833d602011613749575b8161373660209383610903565b810103126101f057836135c99351613711565b3d9150613729565b5060018083811c161461357c565b61376892612204565b8d858d613573565b915060208b6024604051809681937f70a08231000000000000000000000000000000000000000000000000000000008352306004840152165afa801561067e578c935f916137cb575b50612710906020890135020491613565565b9350506020833d6020116137fb575b816137e760209383610903565b810103126101f0576127108c9351906137b9565b3d91506137da565b9e509198509650945091505f80808080613554565b9c50505094505050505060e0863d60e01161388b575b8161383b60e09383610903565b810103126101f0578580519188602083015193604084015192606085015161387d60c061387660a061386f60808b01613a02565b9901611a15565b9d01611a15565b92969490959b92945f61353b565b3d915061382e565b7fc876d21d0000000000000000000000000000000000000000000000000000000014159050610e995781606091810103126101f0576138d181610831565b60406138df60208401610831565b920135906001600160a01b038091169083169273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84145f14613937575047925090808311613924575b505050600190565b61392f92039061227a565b5f808061391c565b916020602494604051958680927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa93841561067e575f946139a3575b5080841161398f575b50505050600190565b61399a930391612204565b5f808080613986565b9093506020813d6020116139cf575b816139bf60209383610903565b810103126101f05751925f61397d565b3d91506139b2565b51906fffffffffffffffffffffffffffffffff821682036101f057565b51908160070b82036101f057565b519081151582036101f057565b919360a0936109ed96956001600160a01b0380941685521515602085015260408401521660608201528160808201520190611990565b6040519291613a5384610852565b60208401915f8352846001600160a01b03809316905260208151015180935251511691565b6040606091613a9b848251602080916001600160a01b0381511684520151910152565b6020810151828501520151910152565b91909294936e22d473030f116ddee9f6b43ac78ba392833b156101f057613b665f96613b538894613b349a6001600160a01b03613b19986040519d8e9c8d9b8c9a7f137c29fe000000000000000000000000000000000000000000000000000000008c5260048c0190613a78565b80516001600160a01b031660848b01526020015160a48a0152565b1660c487015260e4860152610140610104860152610144850190611990565b9060031984830301610124850152611990565b03925af1801561067e57613b775750565b613b80906108d3565b565b9190917f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a75982765f526020526040519160405260605f20916040526010525f5260305fa0565b15613bcc57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b3d15613c23573d90613c0a82610980565b91613c186040519384610903565b82523d5f602084013e565b606090565b9291906001600160a01b03808316946d1ff3684f28c67538d4d072c2273486148015613fe4575b6124f5575f9181169073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8203613d5757505050613c80904761401b565b938051155f14613cdb575050613cb1575f80809381935af1613ca0613bf9565b9015613ca95750565b602081519101fd5b60046040517f01da1572000000000000000000000000000000000000000000000000000000008152fd5b90939260208301808411611481578251106113f557835f9460208695850101525b602083519301915af1613d0d613bf9565b9015613ca95751159081613d4d575b50613d2357565b60046040517f82d5d76a000000000000000000000000000000000000000000000000000000008152fd5b90503b155f613d1c565b8192959391979497155f14613d7657505050613cb1575f928392613cfc565b6040969594969392938051937f70a08231000000000000000000000000000000000000000000000000000000008552600495308787015260209560249587828881865afa8015611c72575f90613fb5575b613dd1925061401b565b91868101808211613f8a578b5110613f7a578683918c010152888103613e04575b50505050505050915f92918392613cfc565b90856044928451938480927fdd62ed3e000000000000000000000000000000000000000000000000000000008252308c8301528d8a8301525afa918215613f70575f92613f41575b508110613e5a575b80613df2565b613ee6575b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff93925f8093604493519687937f095ea7b30000000000000000000000000000000000000000000000000000000085528b8a8601528401525af11561227257503d15601f3d1160015f5114161715613edb578080808080613e54565b633e3f8f735f52601cfd5b80517f095ea7b300000000000000000000000000000000000000000000000000000000815287868201525f84820152845f60448382875af11561227257503d15601f3d1160015f51141617613e5f5784633e3f8f735f52601cfd5b9091508581813d8311613f69575b613f598183610903565b810103126101f05751905f613e4c565b503d613f4f565b83513d5f823e3d90fd5b85603288634e487b715f5252601cfd5b8660118a7f4e487b71000000000000000000000000000000000000000000000000000000005f52525ffd5b508782813d8311613fdd575b613fcb8183610903565b810103126101f057613dd19151613dc7565b503d613fc1565b506e22d473030f116ddee9f6b43ac78ba38614613c4f565b908160209103126101f057516001600160a01b03811681036101f05790565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82820982820291828083109203918083039161271095869109928286111561146f5714614098577fbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e919350828211900360fc1b910360041c170290565b50500490565b9190925f146141f957516141cf57602090818101516141be57604081015180421161418d575051518251928201516040517f15dacbea0000000000000000000000000000000000000000000000000000000081526001600160a01b0392831660048201527f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c83166024820152939091166044840152606483015280826084815f6d1ff3684f28c67538d4d072c227345af1801561067e5761415e575050565b81813d8311614186575b6141728183610903565b810103126101f05761418390613a02565b50565b503d614168565b602490604051907fcd21db4f0000000000000000000000000000000000000000000000000000000082526004820152fd5b601182634e487b715f52526024601cfd5b60046040517fc321526c000000000000000000000000000000000000000000000000000000008152fd5b916e22d473030f116ddee9f6b43ac78ba37f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c813b156101f0575f8094613b6661429b976001600160a01b03614280956040519a8b998a9889977f30f28b7a0000000000000000000000000000000000000000000000000000000089526004890190613a78565b80516001600160a01b031660848801526020015160a4870152565b1660c484015261010060e4840152610104830190611990565b929091670de0b6b3a7640000918285800204948381870204955f935b60ff85106143025760046040517f481b61af000000000000000000000000000000000000000000000000000000008152fd5b85818002048789886003878286890181898402040204958587105f146143845702020401888383030204918215614343575b505060019101945b01936142d0565b149050614379576001808201888880838002048601818489020402041161436c5750875f614334565b9750505050509350505090565b955050509350505090565b020204018882840302049182156143a2575b5050600191039461433c565b14905080156143b9575b614379576001875f614396565b5086867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83018180828002048601918702040204106143ac565b917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828409818385029384808410930395099080851461447a5782805f0316809304600280826003021880830282030280830282030280830282030280830282030280830282030280920290030294600184805f0304019185841191030302920304170290565b505091500490565b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000090358181169392601481106144b757505050565b60140360031b82901b16169150563ae13a6a1d3eea900d733ebc1d1ba9d772e6b415000000000000000000000000000000000000000000000000000000000000000000000000000000000004533fe15556b1e086bb1a72ceae00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004ce4f160fb0e000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000004c786080604090808252346102e75780614c58803803809161001f8285610340565b83396020928391810103126102e757516001600160601b0319811691908290036102e7576100ef605b845161005381610311565b8181527f6e416d6f756e744f75742c62797465735b5d20616374696f6e732900000000006060858301927f536c697070616765416e64416374696f6e73286164647265737320726563697084527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d69898201520152207f615e8d716cef7295e75dd3f1f10d679914ad6d7759e8e9459f0109ef7524170114610363565b6101276100fa61037e565b8281519101207f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa14610363565b610200835161013581610311565b604b81528281017f5266714f7264657228436f6e73696465726174696f6e206d616b6572436f6e7381527f696465726174696f6e2c436f6e73696465726174696f6e2074616b6572436f6e868301526a73696465726174696f6e2960a81b60608301526101d6846101a461037e565b9281895194859282840197518091895e8301908282015f8152815193849201905e015f83820152038084520182610340565b5190207f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a759827614610363565b46617a691491826102fc578351907f16fbd3a71aa6d159973eb9ff1e1199f9fe242767e6f30ac662a492f92ac704115f80a26331a9108f60e11b81526003600482015281816024816d04533fe15556b1e086bb1a72ceae5afa9182156102f2575f926102aa575b50610295929161028291506001600160a01b03163014610363565b61210546149081156102a2575b50610363565b5161485490816104048239f35b90505f61028f565b90809250813d83116102eb575b6102c18183610340565b810103126102e75751906001600160a01b03821682036102e75790610282610295610267565b5f80fd5b503d6102b7565b84513d5f823e3d90fd5b61029592915061030c9015610363565b610282565b608081019081106001600160401b0382111761032c57604052565b634e487b7160e01b5f52604160045260245ffd5b601f909101601f19168101906001600160401b0382119082101761032c57604052565b1561036a57565b634e487b7160e01b5f52600160045260245ffd5b6040519061038b82610311565b605882527f626f6f6c207061727469616c46696c6c416c6c6f7765642900000000000000006060837f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7460208201527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c6040820152015256fe60a060405260043610801561036c575b361561036a573461020b577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe9905f825c925d7fffffffff000000000000000000000000000000000000000000000000000000005f3581811692610355575b5080831691160361020b576001600160a01b03808216330361020b573660041161020b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36019160a01c61ffff16908160011461020f57506002146100f9577f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffd5b60801161020b576004356044359081600401356101198160248501614810565b60601c918160141161020b575f81131561020157915b30810361018b575061016b6101739360387fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec3394019101614810565b60601c61244c565b60405161017f81610b0c565b5f81525b602081519101f35b9161019a6101fc949315614187565b604051906101a782610a77565b33825260208201526101f66101bf36602c8601610b4b565b92608d8501356001169460ad7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff773693019101610bc1565b91613e0e565b610173565b506024359161012f565b5f80fd5b9160a091501061020b57608435907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f82019160a4359180831680840361020b5761025d916004351614614187565b60405161026981610a77565b33815260243560208201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c3601926080841261020b5760408051946102ae86610ac0565b1261020b57604051906102c082610a77565b815260c4356020820152835260e43560208401526101043560408401526102e684610ba5565b916102f46040519384610b28565b8483523660a482011161020b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9f5f91610341966101256020870137840101526101053560011692613e0e565b60405161034d81610b0c565b5f8152610183565b818093503660040360031b1b1616905f61006c565b005b5f3560e01c63fd3ad6d40361000f573461020b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360160e0811261020b5760601361020b5767ffffffffffffffff6064351161020b5736602360643501121561020b5767ffffffffffffffff606435600401351161020b573660246064356004013560051b60643501011161020b576001600160a01b0360a4351660a4350361020b5767ffffffffffffffff60c4351161020b5736602360c43501121561020b5767ffffffffffffffff60c435600401351161020b5736602460c4356004013560c43501011161020b5760a06064356024015b60246064356004013560051b60643501018110610a135760a06064356004013560051b60a020604051907f615e8d716cef7295e75dd3f1f10d679914ad6d7759e8e9459f0109ef7524170182526060600460208401376080820152207f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5c806109e257507f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5d6001600160a01b0360a43516156109b8576001600160a01b037f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c16806109875760a4356001600160a01b03167f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935d606435600401351561020b57602460643501356064350160448101359060487ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc602483013501910191604051926105da60c43560040135602460c43501858486610bf7565b84604052156109205760015b606435600401358110610852576004356001600160a01b03811680820361020b57602435906001600160a01b0382169283830361020b57604435938415801590610849575b610721575b50505050506001600160a01b0360a435166001600160a01b037f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c16036106f7575f7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935d7f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5c806106c657602060405160018152f35b602490604051907fe25527c20000000000000000000000000000000000000000000000000000000082526004820152fd5b60046040517f5149e795000000000000000000000000000000000000000000000000000000008152fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81036107aa575050479183831061075c575061075292506124c2565b8080808080610630565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b039190911660048201526024810193909352506044820152606490fd5b0390fd5b602493919250602090604051948580927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa92831561083e575f9361080a575b5083831061075c57610805935061244c565b610752565b9092506020813d602011610836575b8161082660209383610b28565b8101031261020b575191846107f3565b3d9150610819565b6040513d5f823e3d90fd5b5080151561062b565b60246064358260051b010135606435019060448201359160487ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc6024830135019101604051916108a3818387611c6b565b83604052156108b95750505060019150016105e6565b7fffffffff00000000000000000000000000000000000000000000000000000000839584957f3c74eed6000000000000000000000000000000000000000000000000000000006107a696526004870152166024850152606060448501526064840191610a4a565b83927fffffffff000000000000000000000000000000000000000000000000000000006107a6937f3c74eed60000000000000000000000000000000000000000000000000000000086525f6004870152166024850152606060448501526064840191610a4a565b602490604051907f7407c0f80000000000000000000000000000000000000000000000000000000082526004820152fd5b60046040517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b602490604051907f9936cbab0000000000000000000000000000000000000000000000000000000082526004820152fd5b604481356064350160248101359182910184378220825260209182019101610460565b35906001600160a01b038216820361020b57565b601f8260209493601f1993818652868601375f8582860101520116010190565b3590811515820361020b57565b6040810190811067ffffffffffffffff821117610a9357604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6060810190811067ffffffffffffffff821117610a9357604052565b6080810190811067ffffffffffffffff821117610a9357604052565b67ffffffffffffffff8111610a9357604052565b6020810190811067ffffffffffffffff821117610a9357604052565b90601f601f19910116810190811067ffffffffffffffff821117610a9357604052565b80929103916080831261020b5760405190610b6582610ac0565b604082941261020b5760606040918251610b7e81610a77565b610b8782610a36565b81526020820135602082015284528281013560208501520135910152565b67ffffffffffffffff8111610a9357601f01601f191660200190565b929192610bcd82610ba5565b91610bdb6040519384610b28565b82948184528183011161020b578281602093845f960137010152565b919091610c0785858486856110a4565b15610c16575050505050600190565b7fffffffff00000000000000000000000000000000000000000000000000000000167f8d624361000000000000000000000000000000000000000000000000000000000361107e578101906101008183031261020b57610c7581610a36565b92602091604094610c94610c8a878401610a6a565b9560608401610b4b565b9660e083013597610db3866055610cb66001600160a01b039889963691610bc1565b967fbb7b783eb4b8ca46925c5384a6b9919df57cb83da8f76e37291f58d0dd5c439a60e18d730a7e848aca42d879ef06507fca0e7b33a0a63c1e8151809c838b51838b015e838b8a01836060015e5f8260a00153805180918a018360a1015e806081018252019160a18301809152528560ac82019460ff8653013560c182015201522092510151881561105857637fffffff5b8a5191610d5583610adc565b8252891515898301525f8b83015260030b6060820152610da58a51968792868b8501987f3eece7db000000000000000000000000000000000000000000000000000000008a521660248501611bf7565b03601f198101865285610b28565b16927f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c16831461102f577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe991825c80610fff57505f9182917f67ca7c91000000000000000100000000000000000000000000000000000000008617855d519082865af190610e3f6141bb565b9115610ff7575c80610fc75750808380610e5e93518301019101611c41565b939050858410610e7357505050505050600190565b6004939291829115610f4b578551948580927f5f64b55b0000000000000000000000000000000000000000000000000000000082525afa908115610f41575f91610f0a575b506107a69250925b519384937f97a6f3b9000000000000000000000000000000000000000000000000000000008552600485016040919493926001600160a01b03606083019616825260208201520152565b905082813d8311610f3a575b610f208183610b28565b8101031261020b57610f346107a692611c57565b85610eb8565b503d610f16565b84513d5f823e3d90fd5b8551948580927f0fc63d100000000000000000000000000000000000000000000000000000000082525afa908115610f41575f91610f90575b506107a6925092610ec0565b905082813d8311610fc0575b610fa68183610b28565b8101031261020b57610fba6107a692611c57565b85610f84565b503d610f9c565b6024908651907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b508281519101fd5b6024908851907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b600486517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000610d49565b505050505f90565b9080601f8301121561020b578160206110a193359101610bc1565b90565b90939291907fffffffff00000000000000000000000000000000000000000000000000000000167f5228831d0000000000000000000000000000000000000000000000000000000081036112a557508301906101608483031261020b5761110a84610a36565b936111188360208301610b4b565b9261112560a08301610a36565b9060c08301359267ffffffffffffffff841161020b576112a0976001600160a01b0397611285976111848a61117c61121c9a6111748960e061116d61122e9c879f8d01611086565b9a01610b4b565b953691610bc1565b9416826124d1565b608052989093611214611199898b16866124d1565b919e90917f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c9082604051946111ce86610adc565b16845260208401521660408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9b8c94613ca0565b611224612563565b92878716916140b0565b816040519361123c85610adc565b16835260805160208401521660408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b6fffffffffffffffffffffffffffffffff6080511691614144565b600190565b919392917f0dfeb41900000000000000000000000000000000000000000000000000000000810361131d5750820160a08382031261020b576112a09361130d6001600160a01b036113056113179460206112fe89610a36565b9801610b4b565b9516856124d1565b5050923691610bc1565b91613ca0565b92949193927f9ebf8e8d0000000000000000000000000000000000000000000000000000000003611bc95784019360e08186031261020b5761135e81610a36565b9260208201359067ffffffffffffffff821161020b5761117461138688611390948601611086565b9760408501610b4b565b805160890194856089116116c057602091601f196113c66113b089610ba5565b986113be6040519a8b610b28565b808a52610ba5565b013684890137815183015187604801526040828401886068015e5f8760a8015380519083018760a9015e5101515f937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82116116ae5795905b815190602c821061163457866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b0388161015611bbe575b60ff16600680821015611986575060028082101561183e5750806117a657506001600160a01b03916114f5917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33985b62ffffff16906040519387165f528616602052806040521560051b6060035f209160405261264d565b1691855190858760280152866014015285528c602c88115f1461171257506115946001600160a01b039387859461158f6115a3956115816040519b8c9586938d8c8084169116105f146116f4578d8c806401000276a4945b7f128acb080000000000000000000000000000000000000000000000000000000060208a0152169116103060248701613c6a565b03601f198101845283610b28565b61266c565b60208082518301019101611c41565b9590946040525b16911610156116ed57505b7f800000000000000000000000000000000000000000000000000000000000000081146116c0575f03945f86126116ae57602c8692111561164657505030939060188151106116345780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe8016018909101908152602886529061141f565b634e487b715f5260326020526024601cfd5b939650935050925060c0830135821061166157505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260c0929092013560248301526044820152606490fd5b634e487b715f5260116020526024601cfd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b90506115b5565b8d8c8073fffd8963efd1fc6a506488495d951d5263988d259461154d565b926001600160a01b036117829361158f89611581849b9a8a61159498879b888616898416105f1461178a57886401000276a4935b816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613c6a565b9490936115aa565b8873fffd8963efd1fc6a506488495d951d5263988d2593611746565b9091929394959650600181145f1461180d57506114f58d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b602490604051907fd3b1276d0000000000000000000000000000000000000000000000000000000082526004820152fd5b810361189457506001600160a01b03916114f59173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b600381036118ec57506001600160a01b03916114f5917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c986114cc565b90919293949596506004908181145f146119565750506114f58d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e33986114cc565b60249250604051917fd3b1276d000000000000000000000000000000000000000000000000000000008352820152fd5b600e80831015611aa6575081036119e757506001600160a01b03916114f591730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b60078103611a3f57506001600160a01b03916114f5917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b9091929394959650600881145f1461180d57506114f58d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b8214159050611aff57506001600160a01b03916114f591734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b600f8103611b5757506001600160a01b03916114f59173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e33986114cc565b9091929394959650601081145f1461180d57506114f58d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b869250889150611462565b50925050505f90565b90601f19601f602080948051918291828752018686015e5f8582860101520116010190565b60606110a194936001600160a01b0360c094168352805160208401526020810151151560408401526040810151151582840152015160030b60808201528160a08201520190611bd2565b919082604091031261020b576020825192015190565b51906001600160a01b038216820361020b57565b919091611c7982848361278c565b15611c8657505050600190565b82907fffffffff00000000000000000000000000000000000000000000000000000000167f67848fe70000000000000000000000000000000000000000000000000000000081036120c0575060c0918101031261020b57611ce681610a36565b602090611cf4828401610a36565b9160409283850135946060810135916001600160a01b039081841680940361020b5760a0611d2460808501610a6a565b930135975f9080612040575b50878161202b57869150916024849351809481937f70a08231000000000000000000000000000000000000000000000000000000008352896004840152165afa908115612021575f91611ff4575b5086517f1865c57d0000000000000000000000000000000000000000000000000000000081526101208082600481895afa918215611fea579089949392915f92611eec575b50506fffffffffffffffffffffffffffffffff809188875f14611ee4575051165b169003955b8315611ebe57637fffffff5b835197611e0189610adc565b8852841515878901525f8489015260030b6060880152611e5c8351611e2581610b0c565b5f8152845198899485947f3eece7db0000000000000000000000000000000000000000000000000000000086521660048501611bf7565b03815f865af1938415611eb4575f94611e83575b50858410610e7357505050505050600190565b611ea4919450853d8711611ead575b611e9c8183610b28565b810190611c41565b9050925f611e70565b503d611e92565b85513d5f823e3d90fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000611df5565b015116611de4565b818096508193503d8311611fe3575b611f058183610b28565b8101031261020b57885193840184811067ffffffffffffffff821117610a93578952611f3081613c32565b8452611f3d878201613c32565b87850152611f4c898201613c4f565b89850152611f5c60608201613c4f565b6060850152608081015164ffffffffff8116810361020b57608085015260a08101518060030b810361020b5760a0850152611f9960c08201613c5d565b60c085015260e081015163ffffffff8116810361020b5760e0850152610100809101519060ff8216820361020b5784015287926fffffffffffffffffffffffffffffffff80611dc3565b503d611efb565b89513d5f823e3d90fd5b90508481813d831161201a575b61200b8183610b28565b8101031261020b57515f611d7e565b503d612001565b87513d5f823e3d90fd5b9291818661203b9299939961244c565b611de9565b88517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152915086826024818688165afa8015611fea575f90612091575b612710925002045f611d30565b508682813d83116120b9575b6120a78183610b28565b8101031261020b576127109151612084565b503d61209d565b7fca9e5d0f0000000000000000000000000000000000000000000000000000000014159050612446578160c0918101031261020b576120fe81610a36565b90602061210c818301610a36565b9160409283820135916060810135916001600160a01b039384841680940361020b578460a061213d60808601610a6a565b94013598169486826123a0575b505050505f14612297578351917fdd93f59a000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610f41575f92612268575b508482106121a8575050505050600190565b826004918551928380927f4a248d2a0000000000000000000000000000000000000000000000000000000082525afa928315610f41575f9361222f575b505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b90809350813d8311612261575b6122468183610b28565b8101031261020b5761225a6107a692611c57565b91856121e5565b503d61223c565b9091508281813d8311612290575b6122808183610b28565b8101031261020b5751905f612196565b503d612276565b8351917fbd6015b4000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610f41575f92612371575b508482106122eb575050505050600190565b826004918551928380927fd4b970460000000000000000000000000000000000000000000000000000000082525afa928315610f41575f9361222f57505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b9091508281813d8311612399575b6123898183610b28565b8101031261020b5751905f6122d9565b503d61237f565b6024918951928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015287165afa90811561243c5790859392915f91612407575b506123fe93916123f8916145bf565b9161244c565b5f80808661214a565b809450888092503d8311612435575b6124208183610b28565b8101031261020b5791518492906123fe6123e9565b503d612416565b88513d5f823e3d90fd5b50505f90565b60446020925f80936001600160a01b03966040519788947fa9059cbb00000000000000000000000000000000000000000000000000000000865216600485015260248401525af1156124ba57503d15601f3d1160015f51141617156124ad57565b6390b8ec185f526004601cfd5b3d5f823e3d90fd5b5f80809381935af11561083e57565b60405192916124df84610a77565b60208401915f8352846001600160a01b03809316905260208151015180935251511691565b6040519061251182610ac0565b602e82527f696e7432353620616d6f756e74290000000000000000000000000000000000006040837f546f6b656e5065726d697373696f6e73286164647265737320746f6b656e2c7560208201520152565b60405161256f81610adc565b605881526110a1603c60208301927f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7484527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c60408201527f626f6f6c207061727469616c46696c6c416c6c6f776564290000000000000000606082015260206125f6612504565b6040519586937f436f6e73696465726174696f6e20636f6e73696465726174696f6e2900000000848601525180918686015e8301908482015f8152815193849201905e015f8382015203601c810184520182610b28565b9160406055938151908152600b81019360ff8553602082015201522090565b6001600160a01b03809116907f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c1681146109b8577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe992835c8061274b57509181740200000000000000000000000000000000000000005f9493859460e01b1717855d82602083519301915af1906127016141bb565b9115612742575c80612711575090565b602490604051907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b50602081519101fd5b602490604051907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b359062ffffff8216820361020b57565b9091907fffffffff00000000000000000000000000000000000000000000000000000000167fc1fb425e00000000000000000000000000000000000000000000000000000000810361283b5750810160c08282031261020b576127ee82610a36565b906127fc8160208501610b4b565b9060a084013567ffffffffffffffff811161020b5761282b612833926001600160a01b03926112a09701611086565b9316826124d1565b505090613ca0565b7fd92aadfb000000000000000000000000000000000000000000000000000000008103612aad575081016101208282031261020b5761287982610a36565b9160209261288983858401610b4b565b61289560a08401610a36565b9360c08401359067ffffffffffffffff821161020b576128b6918501611086565b916101006128c660e08601610a36565b9401356128e06001600160a01b03808098169316846124d1565b9690919261293d6040938a8551916128f783610adc565b168152898c820152868582015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9760248b6129bc8c8616809d7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c89519261297784610adc565b83528785840152168882015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9b8651928380927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa948515612aa457505f94612a61575b5093612a4284878c95856112a09f9b9899612a509b976fffffffffffffffffffffffffffffffff9e9b9511612a57575b9084612a3892614781565b809b86015261244c565b612a4a612563565b936140b0565b1691614144565b9093508390612a2d565b95919a809794508681999692993d8311612a9d575b612a808183610b28565b8101031261020b5794519599939692959094939092612a426129fd565b503d612a76565b513d5f823e3d90fd5b9192917f8d68a1560000000000000000000000000000000000000000000000000000000081036132d0575082019060808383031261020b57612aee83610a36565b9060208401359260408501359067ffffffffffffffff821161020b57612b15918601611086565b9260246020855181870151907fffffffffffffffffffffffffffffffffffffffff0000000000000000000000009182811691601481106132bb575b50509050604051928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015260601c5afa90811561083e575f91613289575b508181029181830414901517156116c05761271090049360405193612bbb85610ac0565b6028855260403660208701379430937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82116116ae5795905b815190602c821061163457866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b038816101561327e575b60ff166006808210156130465750600280821015612f31575080612eca57506001600160a01b0391612cc9917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339862ffffff16906040519387165f528616602052806040521560051b6060035f209160405261264d565b1691855190858760280152866014015285528c602c88115f14612e5357506115946001600160a01b039387859461158f612d53956115816040519b8c9586938d8c8084169116105f146116f4577f128acb080000000000000000000000000000000000000000000000000000000060208601526401000276a4918c168c8f16103060248701613c6a565b9590946040525b1691161015612e4c57505b7f800000000000000000000000000000000000000000000000000000000000000081146116c0575f03945f86126116ae57602c86921115612de457505030939060188151106116345780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe80160189091019081526028865290612bf4565b939650935050925060608301358210612dff57505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b039190911660048201526060929092013560248301526044820152606490fd5b9050612d65565b926001600160a01b03612ec29361158f89611581849b9a8a61159498879b888616898416105f1461178a57886401000276a493816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613c6a565b949093612d5a565b9091929394959650600181145f1461180d5750612cc98d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b8103612f8757506001600160a01b0391612cc99173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b60038103612fdf57506001600160a01b0391612cc9917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c986114cc565b9091929394959650600481145f1461180d5750612cc98d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e33986114cc565b600e80831015613166575081036130a757506001600160a01b0391612cc991730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b600781036130ff57506001600160a01b0391612cc9917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b9091929394959650600881145f1461180d5750612cc98d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b82141590506131bf57506001600160a01b0391612cc991734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b600f810361321757506001600160a01b0391612cc99173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e33986114cc565b9091929394959650601081145f1461180d5750612cc98d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b869250889150612c37565b90506020813d6020116132b3575b816132a460209383610b28565b8101031261020b57515f612b97565b3d9150613297565b8391925060140360031b1b1616805f80612b50565b92837f103b48be00000000000000000000000000000000000000000000000000000000829495145f14613659575060c0918101031261020b5761331281610a36565b602091613320838201610a36565b91604091828101359061333560608201610a36565b9060a06133446080830161277c565b910135926001600160a01b03808098169316926001908180851614935f92846135cd575b839450895193613597575b630902f1ac5f52895f6004601c8a5afa1561358e57893d1061020b578b8b928760051b9687519288811851948084811c1614821517613541575b506060955061ffff6127109260081c1682030292028201910204975f601c8d8187019763022c0d9f88526080808901528360a08901528c82828a0101526004011886010152169101525f8060a48382875af1156124ba57508284106134185750505050505050600190565b6004918791156134dd578551928380927fd21220a70000000000000000000000000000000000000000000000000000000082525afa908115610f41576107a69495965f926134b0575b5050935b519485947f97a6f3b900000000000000000000000000000000000000000000000000000000865216600485016040919493926001600160a01b03606083019616825260208201520152565b6134cf9250803d106134d6575b6134c78183610b28565b8101906145a0565b8680613461565b503d6134bd565b8551928380927f0dfe16810000000000000000000000000000000000000000000000000000000082525afa908115610f41576107a69495965f92613524575b505093613465565b61353a9250803d106134d6576134c78183610b28565b868061351c565b9294505091936024601c5f926370a0823184528b85525afa1561358e578b3d1061020b575f5183811061357d579183916060948d94038e6133ad565b60118d634e487b715f52526024601cfd5b833d5f823e3d90fd5b63a9059cbb8452868c850152848a8501528b5f6044601c870182875af11561358e57805f51148c3d1015163d1517613373575f80fd5b9250928851907f70a082310000000000000000000000000000000000000000000000000000000082523060048301528b82602481865afa801561364f575f90613620575b61271092500204918390613368565b508b82813d8311613648575b6136368183610b28565b8101031261020b576127109151613611565b503d61362c565b8a513d5f823e3d90fd5b7f38c9c1470000000000000000000000000000000000000000000000000000000081036136e25750019060a08183031261020b5761369681610a36565b906136a360408201610a36565b90608081013567ffffffffffffffff811161020b576112a0946136c7918301611086565b9260206001600160a01b0360608401359416920135906141ea565b7ff5b99189000000000000000000000000000000000000000000000000000000008103613aee575060a0918101031261020b5761371e81610a36565b906040810135916001600160a01b039283811680910361020b576137446060840161277c565b6040517f392f37e9000000000000000000000000000000000000000000000000000000008152936001808316149160e086600481875afa90811561083e575f91885f985f935f945f9b5f935f96613a73575b50878197839781969f6137a890614187565b8c15613a5e575b50505050505f9160208801356139cb575b8983158d85821593846139ba575b505050906139ac575b613922575b61382493508686670de0b6b3a76400008099818099020493020495869461271061ffff838089800204818880020401818a89020402049660081c168202049003020401614642565b9003020494608082013586106138d3575050156138cd575f925b60405161384a81610b0c565b5f8152823b1561020b575f946138a98692604051988997889687957f022c0d9f00000000000000000000000000000000000000000000000000000000875260048701526024860152166044840152608060648401526084830190611bd2565b03925af1801561083e576138be575b50600190565b6138c790610af8565b5f6138b8565b5f61383e565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260809190910135602482015260448101859052606490fd5b915060208b60248b60405196879384927f70a082310000000000000000000000000000000000000000000000000000000084526004840152165afa801561083e5784905f90613976575b8d945003916137dc565b50506020833d6020116139a4575b8161399160209383610b28565b8101031261020b5783613824935161396c565b3d9150613984565b5060018083811c16146137d7565b6139c39261244c565b8d858d6137ce565b915060208b6024604051809681937f70a08231000000000000000000000000000000000000000000000000000000008352306004840152165afa801561083e578c935f91613a26575b506127109060208901350204916137c0565b9350506020833d602011613a56575b81613a4260209383610b28565b8101031261020b576127108c935190613a14565b3d9150613a35565b9e509198509650945091505f808080806137af565b9c50505094505050505060e0863d60e011613ae6575b81613a9660e09383610b28565b8101031261020b5785805191886020830151936040840151926060850151613ad860c0613ad160a0613aca60808b01613c5d565b9901611c57565b9d01611c57565b92969490959b92945f613796565b3d9150613a89565b7fc876d21d000000000000000000000000000000000000000000000000000000001415905061244657816060918101031261020b57613b2c81610a36565b6040613b3a60208401610a36565b920135906001600160a01b038091169083169273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84145f14613b92575047925090808311613b7f575b505050600190565b613b8a9203906124c2565b5f8080613b77565b916020602494604051958680927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa93841561083e575f94613bfe575b50808411613bea575b50505050600190565b613bf593039161244c565b5f808080613be1565b9093506020813d602011613c2a575b81613c1a60209383610b28565b8101031261020b5751925f613bd8565b3d9150613c0d565b51906fffffffffffffffffffffffffffffffff8216820361020b57565b51908160070b820361020b57565b5190811515820361020b57565b919360a0936110a196956001600160a01b0380941685521515602085015260408401521660608201528160808201520190611bd2565b9190917f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5f815c915d80156109b857613e0c937f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c9060405193613d0385610adc565b605b8552613e07604660208701967f536c697070616765416e64416374696f6e73286164647265737320726563697088527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d6960408201527f6e416d6f756e744f75742c62797465735b5d20616374696f6e7329000000000060608201526020613d8a612504565b604051998a937f536c697070616765416e64416374696f6e7320736c697070616765416e644163848601527f74696f6e7329000000000000000000000000000000000000000000000000000060408601525180918686015e8301908482015f8152815193849201905e015f83820152036026810188520186610b28565b6140b0565b565b9291907f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa935f855c955d84156109b8577f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c7f74696f6e73290000000000000000000000000000000000000000000000000000604095613f6e60468860208151613e9781610adc565b605b81528181017f536c697070616765416e64416374696f6e73286164647265737320726563697081527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d69848301527f6e416d6f756e744f75742c62797465735b5d20616374696f6e732900000000006060830152613f14612504565b9184519889957f536c697070616765416e64416374696f6e7320736c697070616765416e644163868801528601525180918686015e8301908482015f8152815193849201905e015f83820152036026810185520183610b28565b614087576e22d473030f116ddee9f6b43ac78ba392833b1561020b5761406b5f9661403a889461401b9b6001600160a01b038c9889519e8f9c8d9b8c9a7f137c29fe000000000000000000000000000000000000000000000000000000008c52613fef60048d018251602080916001600160a01b0381511684520151910152565b60208181015160448e015291015160648c015281516001600160a01b031660848c0152015160a48a0152565b1660c487015260e4860152610140610104860152610144850190611bd2565b907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc84830301610124850152611bd2565b03925af1908115612aa4575061407e5750565b613e0c90610af8565b600486517f1c500e5c000000000000000000000000000000000000000000000000000000008152fd5b91909294936e22d473030f116ddee9f6b43ac78ba392833b1561020b576141335f9661403a889461401b9a6001600160a01b0360409889519d8e9c8d9b8c9a7f137c29fe000000000000000000000000000000000000000000000000000000008c52613fef60048d018251602080916001600160a01b0381511684520151910152565b03925af1801561083e5761407e5750565b9190917f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a75982765f526020526040519160405260605f20916040526010525f5260305fa0565b1561418e57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b3d156141e5573d906141cc82610ba5565b916141da6040519384610b28565b82523d5f602084013e565b606090565b9291906001600160a01b03808316946e22d473030f116ddee9f6b43ac78ba386146109b8575f9181169073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee82036143135750505061423c90476145bf565b938051155f1461429757505061426d575f80809381935af161425c6141bb565b90156142655750565b602081519101fd5b60046040517f01da1572000000000000000000000000000000000000000000000000000000008152fd5b909392602083018084116116c05782511061163457835f9460208695850101525b602083519301915af16142c96141bb565b90156142655751159081614309575b506142df57565b60046040517f82d5d76a000000000000000000000000000000000000000000000000000000008152fd5b90503b155f6142d8565b8192959391979497155f146143325750505061426d575f9283926142b8565b6040969594969392938051937f70a08231000000000000000000000000000000000000000000000000000000008552600495308787015260209560249587828881865afa8015611eb4575f90614571575b61438d92506145bf565b91868101808211614546578b5110614536578683918c0101528881036143c0575b50505050505050915f929183926142b8565b90856044928451938480927fdd62ed3e000000000000000000000000000000000000000000000000000000008252308c8301528d8a8301525afa91821561452c575f926144fd575b508110614416575b806143ae565b6144a2575b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff93925f8093604493519687937f095ea7b30000000000000000000000000000000000000000000000000000000085528b8a8601528401525af1156124ba57503d15601f3d1160015f5114161715614497578080808080614410565b633e3f8f735f52601cfd5b80517f095ea7b300000000000000000000000000000000000000000000000000000000815287868201525f84820152845f60448382875af1156124ba57503d15601f3d1160015f5114161761441b5784633e3f8f735f52601cfd5b9091508581813d8311614525575b6145158183610b28565b8101031261020b5751905f614408565b503d61450b565b83513d5f823e3d90fd5b85603288634e487b715f5252601cfd5b8660118a7f4e487b71000000000000000000000000000000000000000000000000000000005f52525ffd5b508782813d8311614599575b6145878183610b28565b8101031261020b5761438d9151614383565b503d61457d565b9081602091031261020b57516001600160a01b038116810361020b5790565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8282098282029182808310920391808303916127109586910992828611156116ae571461463c577fbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e919350828211900360fc1b910360041c170290565b50500490565b929091670de0b6b3a7640000918285800204948381870204955f935b60ff85106146905760046040517f481b61af000000000000000000000000000000000000000000000000000000008152fd5b85818002048789886003878286890181898402040204958587105f1461471257020204018883830302049182156146d1575b505060019101945b019361465e565b14905061470757600180820188888083800204860181848902040204116146fa5750875f6146c2565b9750505050509350505090565b955050509350505090565b02020401888284030204918215614730575b505060019103946146ca565b1490508015614747575b614707576001875f614724565b5086867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830181808280020486019187020402041061473a565b917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82840981838502938480841093039509908085146148085782805f0316809304600280826003021880830282030280830282030280830282030280830282030280830282030280920290030294600184805f0304019185841191030302920304170290565b505091500490565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000903581811693926014811061484557505050565b60140360031b82901b16169150563ae13a6a1d3eea900d733ebc1d1ba9d772e6b41500000000000000000000000000000000000000000000000000000000000000000000, operation=1, safeTxGas=0, baseGas=0, gasPrice=0, gasToken= 0x0000000000000000000000000000000000000000, refundReceiver= 0x0000000000000000000000000000000000000000, signatures=0xdbbf823266a94a89a4747d88ec1b65fe28783a02f00032603e380938f3d7952f7715392bb6d901e53e807bd0554fe313b422344d05496dbfa51cab3992901ba61c9187188deebd3f8a41f2c45215339760e9be3a3b1b9bb1378c090b0e7bd9a479347b834e506aa32d02ee0db303e5dc32d29a37c4c9516eff11e0877eae0961721b) (true)
- 1SLOAD
- 2DELEGATECALL7982287 gas GnosisSafeL2.execTransaction (to= MultiSendCallOnly, value=0, data=0x8d80ff0a000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000096f20000000000000004533fe15556b1e086bb1a72ceae00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004964f160fb0e0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000048ea6080604090808252346102e757806148ca803803809161001f8285610340565b83396020928391810103126102e757516001600160601b0319811691908290036102e7576100ef605b845161005381610311565b8181527f6e416d6f756e744f75742c62797465735b5d20616374696f6e732900000000006060858301927f536c697070616765416e64416374696f6e73286164647265737320726563697084527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d69898201520152207f615e8d716cef7295e75dd3f1f10d679914ad6d7759e8e9459f0109ef7524170114610363565b6101276100fa61037e565b8281519101207f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa14610363565b610200835161013581610311565b604b81528281017f5266714f7264657228436f6e73696465726174696f6e206d616b6572436f6e7381527f696465726174696f6e2c436f6e73696465726174696f6e2074616b6572436f6e868301526a73696465726174696f6e2960a81b60608301526101d6846101a461037e565b9281895194859282840197518091895e8301908282015f8152815193849201905e015f83820152038084520182610340565b5190207f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a759827614610363565b46617a691491826102fc578351907f16fbd3a71aa6d159973eb9ff1e1199f9fe242767e6f30ac662a492f92ac704115f80a26331a9108f60e11b81526002600482015281816024816d04533fe15556b1e086bb1a72ceae5afa9182156102f2575f926102aa575b50610295929161028291506001600160a01b03163014610363565b61210546149081156102a2575b50610363565b516144c690816104048239f35b90505f61028f565b90809250813d83116102eb575b6102c18183610340565b810103126102e75751906001600160a01b03821682036102e75790610282610295610267565b5f80fd5b503d6102b7565b84513d5f823e3d90fd5b61029592915061030c9015610363565b610282565b608081019081106001600160401b0382111761032c57604052565b634e487b7160e01b5f52604160045260245ffd5b601f909101601f19168101906001600160401b0382119082101761032c57604052565b1561036a57565b634e487b7160e01b5f52600160045260245ffd5b6040519061038b82610311565b605882527f626f6f6c207061727469616c46696c6c416c6c6f7765642900000000000000006060837f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7460208201527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c6040820152015256fe60808060405260043610908115610351575b50361561034f57346101f0577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe9905f825c925d7fffffffff000000000000000000000000000000000000000000000000000000005f358181169261033a575b508083169116036101f0576001600160a01b0380821633036101f057366004116101f05760031936019160a01c61ffff1690816001146101f457506002146100de577f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffd5b6080116101f0576004356044359081600401356100fe8160248501614482565b60601c91816014116101f0575f8113156101e657915b30810361017057506101506101589360387fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec3394019101614482565b60601c612204565b604051610164816108e7565b5f81525b602081519101f35b9161017f6101e1949315613bc5565b6040519061018c82610852565b33825260208201526101db6101a436602c8601610926565b92608d8501356001169460ad7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff77369301910161099c565b9161409e565b610158565b5060243591610114565b5f80fd5b9160a09150106101f057608435907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f82019160a435918083168084036101f057610242916004351614613bc5565b60405161024e81610852565b33815260243560208201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c360192608084126101f05760408051946102938661089b565b126101f057604051906102a582610852565b815260c4356020820152835260e43560208401526101043560408401526102cb84610980565b916102d96040519384610903565b8483523660a48201116101f0577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9f5f9161032696610125602087013784010152610105356001169261409e565b604051610332816108e7565b5f8152610168565b818093503660040360031b1b1616905f61006f565b005b5f3560e01c9081631fff991f1461039e57506370a0823114610373575f610011565b346101f05760206003193601126101f0576004356001600160a01b038116036101f0575f805360015ff35b600319360160a081126101f0576060136101f05767ffffffffffffffff80606435116101f0573660236064350112156101f05760643560040135116101f0576005903660246064356004013560051b6064350101116101f05733906d1ff3684f28c67538d4d072c227343314610803575b6001600160a01b038216156107db57507f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde893916001600160a01b03835c16806107aa5750816001600160a01b0316835d5f5b6064356004013581106106925750506004356001600160a01b0381168082036101f057602435916001600160a01b038316908184036101f057604435918215801590610689575b610502575b50505050506001600160a01b03166001600160a01b03825c16036104d8575f905d602060405160018152f35b60046040517f5149e795000000000000000000000000000000000000000000000000000000008152fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee810361059657505047928184106105475750506001600160a01b03929161053d9161227a565b90838080806104ac565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b03919091166004820152602481019190915260448101839052606490fd5b0390fd5b60249492919350602090604051958680927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa93841561067e575f9461064a575b508084106106025750916105fd916001600160a01b039493612204565b61053d565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152602482015260448101839052606490fd5b9093506020813d602011610676575b8161066660209383610903565b810103126101f0575192866105e0565b3d9150610659565b6040513d5f823e3d90fd5b508015156104a7565b602460643582841b01013560643501811580610783575b801561075c575b156106be5750600101610460565b604051917f3c74eed600000000000000000000000000000000000000000000000000000000835260048301527fffffffff00000000000000000000000000000000000000000000000000000000604482013516602483015260606044830152600319602482013501606483015281601f19601b6024608494600319828201350160488201878701375f60808383013587010152013501168101030190fd5b5060405161077a600319602484013501604884016044850135611a29565b906040526106b0565b506040516107a16003196024840135016048840160448501356109f0565b906040526106a9565b602490604051907f7407c0f80000000000000000000000000000000000000000000000000000000082526004820152fd5b807fe758b8d50000000000000000000000000000000000000000000000000000000060049252fd5b367fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec013560601c915061040f565b35906001600160a01b03821682036101f057565b359081151582036101f057565b6040810190811067ffffffffffffffff82111761086e57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6060810190811067ffffffffffffffff82111761086e57604052565b6080810190811067ffffffffffffffff82111761086e57604052565b67ffffffffffffffff811161086e57604052565b6020810190811067ffffffffffffffff82111761086e57604052565b90601f601f19910116810190811067ffffffffffffffff82111761086e57604052565b8092910391608083126101f057604051906109408261089b565b60408294126101f0576060604091825161095981610852565b61096282610831565b81526020820135602082015284528281013560208501520135910152565b67ffffffffffffffff811161086e57601f01601f191660200190565b9291926109a882610980565b916109b66040519384610903565b8294818452818301116101f0578281602093845f960137010152565b9080601f830112156101f0578160206109ed9335910161099c565b90565b9190916109fe828483610e9f565b15610a0b57505050600190565b7fffffffff00000000000000000000000000000000000000000000000000000000167fc3608b9d0000000000000000000000000000000000000000000000000000000003610e99578101610120828203126101f057610a6982610831565b916020604092610a7a848401610845565b92610a888260608301610926565b9560e082013567ffffffffffffffff81116101f057605593610aab9184016109d2565b9161010081013597610bce866001600160a01b039687947fbb7b783eb4b8ca46925c5384a6b9919df57cb83da8f76e37291f58d0dd5c439a60e18d730a7e848aca42d879ef06507fca0e7b33a0a63c1e8151809c838b51838b015e838b8a01836060015e6d1ff3684f28c67538d4d072c2273433148260a00153805180918a018360a1015e806081018252019160a18301809152528560ac82019460ff8653013560c1820152015220925101518815610e7357637fffffff5b8a5191610b70836108b7565b8252891515898301525f8b83015260030b6060820152610bc08a51968792868b8501987f3eece7db000000000000000000000000000000000000000000000000000000008a5216602485016119b5565b03601f198101865285610903565b16927f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c168314610e4a577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe991825c80610e1a57505f9182917f67ca7c91000000000000000100000000000000000000000000000000000000008617855d519082865af190610c5a613bf9565b9115610e12575c80610de25750808380610c79935183010191016119ff565b939050858410610c8e57505050505050600190565b6004939291829115610d66578551948580927f5f64b55b0000000000000000000000000000000000000000000000000000000082525afa908115610d5c575f91610d25575b506105929250925b519384937f97a6f3b9000000000000000000000000000000000000000000000000000000008552600485016040919493926001600160a01b03606083019616825260208201520152565b905082813d8311610d55575b610d3b8183610903565b810103126101f057610d4f61059292611a15565b85610cd3565b503d610d31565b84513d5f823e3d90fd5b8551948580927f0fc63d100000000000000000000000000000000000000000000000000000000082525afa908115610d5c575f91610dab575b50610592925092610cdb565b905082813d8311610ddb575b610dc18183610903565b810103126101f057610dd561059292611a15565b85610d9f565b503d610db7565b6024908651907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b508281519101fd5b6024908851907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b600486517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000610b64565b50505f90565b9091907fffffffff00000000000000000000000000000000000000000000000000000000167f6d42ea470000000000000000000000000000000000000000000000000000000081036110b75750810190610180818303126101f057610f0381610831565b610f108360208401610926565b610f1c60a08401610831565b9260c08101359467ffffffffffffffff958681116101f05781610f409184016109d2565b93610f4e8260e08501610926565b916101608401359788116101f057611057611049966fffffffffffffffffffffffffffffffff96610f8a610fa4946110b29c6110aa99016109d2565b996001600160a01b03958695868093169788921684613a45565b9c909961102f610fb48583613a45565b7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde893989192985c908260405194610fe9866108b7565b16845260208401521660408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9e8f956d1ff3684f28c67538d4d072c2273433149261409e565b611051612289565b93613aab565b60405192611064846108b7565b16825284602083015260408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b911691613b82565b600190565b9192917f22ce6ede000000000000000000000000000000000000000000000000000000000361198a57820190610100838303126101f0576110f783610831565b9060208401359367ffffffffffffffff948581116101f0578461111b9183016109d2565b946111298560408401610926565b9460c08301359182116101f0576111419183016109d2565b8051608901948560891161148157602091601f1961117761116189610980565b9861116f6040519a8b610903565b808a52610980565b013684890137815183015187604801526040828401886068015e6d1ff3684f28c67538d4d072c2273433148760a8015380519083018760a9015e5101515f937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821161146f5795905b815190602c82106113f557866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b038816101561197f575b60ff1660068082101561174757506002808210156115ff57508061156757506001600160a01b03916112b6917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33985b62ffffff16906040519387165f528616602052806040521560051b6060035f20916040526123c6565b1691855190858760280152866014015285528c602c88115f146114d357506113556001600160a01b0393878594611350611364956113426040519b8c9586938d8c8084169116105f146114b5578d8c806401000276a4945b7f128acb080000000000000000000000000000000000000000000000000000000060208a0152169116103060248701613a0f565b03601f198101845283610903565b6123e5565b602080825183010191016119ff565b9590946040525b16911610156114ae57505b7f80000000000000000000000000000000000000000000000000000000000000008114611481575f03945f861261146f57602c8692111561140757505030939060188151106113f55780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe801601890910190815260288652906111e0565b634e487b715f5260326020526024601cfd5b939650935050925060e0830135821061142257505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260e0929092013560248301526044820152606490fd5b634e487b715f5260116020526024601cfd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b9050611376565b8d8c8073fffd8963efd1fc6a506488495d951d5263988d259461130e565b926001600160a01b036115439361135089611342849b9a8a61135598879b888616898416105f1461154b57886401000276a4935b816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613a0f565b94909361136b565b8873fffd8963efd1fc6a506488495d951d5263988d2593611507565b9091929394959650600181145f146115ce57506112b68d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b602490604051907fd3b1276d0000000000000000000000000000000000000000000000000000000082526004820152fd5b810361165557506001600160a01b03916112b69173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b600381036116ad57506001600160a01b03916112b6917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c9861128d565b90919293949596506004908181145f146117175750506112b68d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e339861128d565b60249250604051917fd3b1276d000000000000000000000000000000000000000000000000000000008352820152fd5b600e80831015611867575081036117a857506001600160a01b03916112b691730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b6007810361180057506001600160a01b03916112b6917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b9091929394959650600881145f146115ce57506112b68d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b82141590506118c057506001600160a01b03916112b691734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b600f810361191857506001600160a01b03916112b69173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e339861128d565b9091929394959650601081145f146115ce57506112b68d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b869250889150611223565b505f9150565b90601f19601f602080948051918291828752018686015e5f8582860101520116010190565b60606109ed94936001600160a01b0360c094168352805160208401526020810151151560408401526040810151151582840152015160030b60808201528160a08201520190611990565b91908260409103126101f0576020825192015190565b51906001600160a01b03821682036101f057565b919091611a3782848361252f565b15611a4457505050600190565b82907fffffffff00000000000000000000000000000000000000000000000000000000167f67848fe7000000000000000000000000000000000000000000000000000000008103611e7e575060c091810103126101f057611aa481610831565b602090611ab2828401610831565b9160409283850135946060810135916001600160a01b03908184168094036101f05760a0611ae260808501610845565b930135975f9080611dfe575b508781611de957869150916024849351809481937f70a08231000000000000000000000000000000000000000000000000000000008352896004840152165afa908115611ddf575f91611db2575b5086517f1865c57d0000000000000000000000000000000000000000000000000000000081526101208082600481895afa918215611da8579089949392915f92611caa575b50506fffffffffffffffffffffffffffffffff809188875f14611ca2575051165b169003955b8315611c7c57637fffffff5b835197611bbf896108b7565b8852841515878901525f8489015260030b6060880152611c1a8351611be3816108e7565b5f8152845198899485947f3eece7db00000000000000000000000000000000000000000000000000000000865216600485016119b5565b03815f865af1938415611c72575f94611c41575b50858410610c8e57505050505050600190565b611c62919450853d8711611c6b575b611c5a8183610903565b8101906119ff565b9050925f611c2e565b503d611c50565b85513d5f823e3d90fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000611bb3565b015116611ba2565b818096508193503d8311611da1575b611cc38183610903565b810103126101f057885193840184811067ffffffffffffffff82111761086e578952611cee816139d7565b8452611cfb8782016139d7565b87850152611d0a8982016139f4565b89850152611d1a606082016139f4565b6060850152608081015164ffffffffff811681036101f057608085015260a08101518060030b81036101f05760a0850152611d5760c08201613a02565b60c085015260e081015163ffffffff811681036101f05760e0850152610100809101519060ff821682036101f05784015287926fffffffffffffffffffffffffffffffff80611b81565b503d611cb9565b89513d5f823e3d90fd5b90508481813d8311611dd8575b611dc98183610903565b810103126101f057515f611b3c565b503d611dbf565b87513d5f823e3d90fd5b92918186611df992999399612204565b611ba7565b88517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152915086826024818688165afa8015611da8575f90611e4f575b612710925002045f611aee565b508682813d8311611e77575b611e658183610903565b810103126101f0576127109151611e42565b503d611e5b565b7fca9e5d0f0000000000000000000000000000000000000000000000000000000014159050610e99578160c091810103126101f057611ebc81610831565b906020611eca818301610831565b9160409283820135916060810135916001600160a01b03938484168094036101f0578460a0611efb60808601610845565b940135981694868261215e575b505050505f14612055578351917fdd93f59a000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610d5c575f92612026575b50848210611f66575050505050600190565b826004918551928380927f4a248d2a0000000000000000000000000000000000000000000000000000000082525afa928315610d5c575f93611fed575b505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b90809350813d831161201f575b6120048183610903565b810103126101f05761201861059292611a15565b9185611fa3565b503d611ffa565b9091508281813d831161204e575b61203e8183610903565b810103126101f05751905f611f54565b503d612034565b8351917fbd6015b4000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610d5c575f9261212f575b508482106120a9575050505050600190565b826004918551928380927fd4b970460000000000000000000000000000000000000000000000000000000082525afa928315610d5c575f93611fed57505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b9091508281813d8311612157575b6121478183610903565b810103126101f05751905f612097565b503d61213d565b6024918951928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015287165afa9081156121fa5790859392915f916121c5575b506121bc93916121b69161401b565b91612204565b5f808086611f08565b809450888092503d83116121f3575b6121de8183610903565b810103126101f05791518492906121bc6121a7565b503d6121d4565b88513d5f823e3d90fd5b60446020925f80936001600160a01b03966040519788947fa9059cbb00000000000000000000000000000000000000000000000000000000865216600485015260248401525af11561227257503d15601f3d1160015f511416171561226557565b6390b8ec185f526004601cfd5b3d5f823e3d90fd5b5f80809381935af11561067e57565b604051612295816108b7565b605881526109ed603c60208301927f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7484527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c60408201527f626f6f6c207061727469616c46696c6c416c6c6f776564290000000000000000606082015260405161231e8161089b565b602e815260208101907f546f6b656e5065726d697373696f6e73286164647265737320746f6b656e2c7582527f696e7432353620616d6f756e742900000000000000000000000000000000000060408201526040519586937f436f6e73696465726174696f6e20636f6e73696465726174696f6e290000000060208601525180918686015e830190848201905f8252519283915e015f8382015203601c810184520182610903565b9160406055938151908152600b81019360ff8553602082015201522090565b6001600160a01b03809116907f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c1681146124f5577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe992835c806124c457509181740200000000000000000000000000000000000000005f9493859460e01b1717855d82602083519301915af19061247a613bf9565b91156124bb575c8061248a575090565b602490604051907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b50602081519101fd5b602490604051907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b60046040517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b359062ffffff821682036101f057565b9091907fffffffff00000000000000000000000000000000000000000000000000000000167fc1fb425e0000000000000000000000000000000000000000000000000000000081036125ee5750810160c0828203126101f05761259182610831565b61259e8260208501610926565b9160a084013567ffffffffffffffff81116101f0576125cd6125d5926001600160a01b03926110b297016109d2565b921683613a45565b50506d1ff3684f28c67538d4d072c2273433149261409e565b7fd92aadfb00000000000000000000000000000000000000000000000000000000810361285257508101610120828203126101f05761262c82610831565b9160209261263c83858401610926565b61264860a08401610831565b9360c08401359067ffffffffffffffff82116101f0576126699185016109d2565b9161010061267960e08601610831565b9401356126936001600160a01b0380809816931684613a45565b969091926126f06040938a8551916126aa836108b7565b168152898c820152868582015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9760248b61276f8c8616809d7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c89519261272a846108b7565b83528785840152168882015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9b8651928380927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa94851561284957505f94612806575b509361104984878c95856110b29f9b98996127f59b976fffffffffffffffffffffffffffffffff9e9b95116127fc575b90846127eb926143f3565b809b860152612204565b1691613b82565b90935083906127e0565b95919a809794508681999692993d8311612842575b6128258183610903565b810103126101f057945195999396929590949390926110496127b0565b503d61281b565b513d5f823e3d90fd5b9192917f8d68a15600000000000000000000000000000000000000000000000000000000810361307557508201906080838303126101f05761289383610831565b9060208401359260408501359067ffffffffffffffff82116101f0576128ba9186016109d2565b9260246020855181870151907fffffffffffffffffffffffffffffffffffffffff000000000000000000000000918281169160148110613060575b50509050604051928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015260601c5afa90811561067e575f9161302e575b5081810291818304149015171561148157612710900493604051936129608561089b565b6028855260403660208701379430937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821161146f5795905b815190602c82106113f557866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b0388161015613023575b60ff16600680821015612deb5750600280821015612cd6575080612c6f57506001600160a01b0391612a6e917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339862ffffff16906040519387165f528616602052806040521560051b6060035f20916040526123c6565b1691855190858760280152866014015285528c602c88115f14612bf857506113556001600160a01b0393878594611350612af8956113426040519b8c9586938d8c8084169116105f146114b5577f128acb080000000000000000000000000000000000000000000000000000000060208601526401000276a4918c168c8f16103060248701613a0f565b9590946040525b1691161015612bf157505b7f80000000000000000000000000000000000000000000000000000000000000008114611481575f03945f861261146f57602c86921115612b8957505030939060188151106113f55780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe80160189091019081526028865290612999565b939650935050925060608301358210612ba457505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b039190911660048201526060929092013560248301526044820152606490fd5b9050612b0a565b926001600160a01b03612c679361135089611342849b9a8a61135598879b888616898416105f1461154b57886401000276a493816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613a0f565b949093612aff565b9091929394959650600181145f146115ce5750612a6e8d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b8103612d2c57506001600160a01b0391612a6e9173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b60038103612d8457506001600160a01b0391612a6e917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c9861128d565b9091929394959650600481145f146115ce5750612a6e8d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e339861128d565b600e80831015612f0b57508103612e4c57506001600160a01b0391612a6e91730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b60078103612ea457506001600160a01b0391612a6e917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b9091929394959650600881145f146115ce5750612a6e8d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b8214159050612f6457506001600160a01b0391612a6e91734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e759861128d565b600f8103612fbc57506001600160a01b0391612a6e9173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e339861128d565b9091929394959650601081145f146115ce5750612a6e8d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339861128d565b8692508891506129dc565b90506020813d602011613058575b8161304960209383610903565b810103126101f057515f61293c565b3d915061303c565b8391925060140360031b1b1616805f806128f5565b92837f103b48be00000000000000000000000000000000000000000000000000000000829495145f146133fe575060c091810103126101f0576130b781610831565b6020916130c5838201610831565b9160409182810135906130da60608201610831565b9060a06130e96080830161251f565b910135926001600160a01b03808098169316926001908180851614935f9284613372575b83945089519361333c575b630902f1ac5f52895f6004601c8a5afa1561333357893d106101f0578b8b928760051b9687519288811851948084811c16148215176132e6575b506060955061ffff6127109260081c1682030292028201910204975f601c8d8187019763022c0d9f88526080808901528360a08901528c82828a0101526004011886010152169101525f8060a48382875af11561227257508284106131bd5750505050505050600190565b600491879115613282578551928380927fd21220a70000000000000000000000000000000000000000000000000000000082525afa908115610d5c576105929495965f92613255575b5050935b519485947f97a6f3b900000000000000000000000000000000000000000000000000000000865216600485016040919493926001600160a01b03606083019616825260208201520152565b6132749250803d1061327b575b61326c8183610903565b810190613ffc565b8680613206565b503d613262565b8551928380927f0dfe16810000000000000000000000000000000000000000000000000000000082525afa908115610d5c576105929495965f926132c9575b50509361320a565b6132df9250803d1061327b5761326c8183610903565b86806132c1565b9294505091936024601c5f926370a0823184528b85525afa15613333578b3d106101f0575f51838110613322579183916060948d94038e613152565b60118d634e487b715f52526024601cfd5b833d5f823e3d90fd5b63a9059cbb8452868c850152848a8501528b5f6044601c870182875af11561333357805f51148c3d1015163d1517613118575f80fd5b9250928851907f70a082310000000000000000000000000000000000000000000000000000000082523060048301528b82602481865afa80156133f4575f906133c5575b6127109250020491839061310d565b508b82813d83116133ed575b6133db8183610903565b810103126101f05761271091516133b6565b503d6133d1565b8a513d5f823e3d90fd5b7f38c9c1470000000000000000000000000000000000000000000000000000000081036134875750019060a0818303126101f05761343b81610831565b9061344860408201610831565b90608081013567ffffffffffffffff81116101f0576110b29461346c9183016109d2565b9260206001600160a01b036060840135941692013590613c28565b7ff5b99189000000000000000000000000000000000000000000000000000000008103613893575060a091810103126101f0576134c381610831565b906040810135916001600160a01b03928381168091036101f0576134e96060840161251f565b6040517f392f37e9000000000000000000000000000000000000000000000000000000008152936001808316149160e086600481875afa90811561067e575f91885f985f935f945f9b5f935f96613818575b50878197839781969f61354d90613bc5565b8c15613803575b50505050505f916020880135613770575b8983158d858215938461375f575b50505090613751575b6136c7575b6135c993508686670de0b6b3a76400008099818099020493020495869461271061ffff838089800204818880020401818a89020402049660081c1682020490030204016142b4565b90030204946080820135861061367857505015613672575f925b6040516135ef816108e7565b5f8152823b156101f0575f9461364e8692604051988997889687957f022c0d9f00000000000000000000000000000000000000000000000000000000875260048701526024860152166044840152608060648401526084830190611990565b03925af1801561067e57613663575b50600190565b61366c906108d3565b5f61365d565b5f6135e3565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260809190910135602482015260448101859052606490fd5b915060208b60248b60405196879384927f70a082310000000000000000000000000000000000000000000000000000000084526004840152165afa801561067e5784905f9061371b575b8d94500391613581565b50506020833d602011613749575b8161373660209383610903565b810103126101f057836135c99351613711565b3d9150613729565b5060018083811c161461357c565b61376892612204565b8d858d613573565b915060208b6024604051809681937f70a08231000000000000000000000000000000000000000000000000000000008352306004840152165afa801561067e578c935f916137cb575b50612710906020890135020491613565565b9350506020833d6020116137fb575b816137e760209383610903565b810103126101f0576127108c9351906137b9565b3d91506137da565b9e509198509650945091505f80808080613554565b9c50505094505050505060e0863d60e01161388b575b8161383b60e09383610903565b810103126101f0578580519188602083015193604084015192606085015161387d60c061387660a061386f60808b01613a02565b9901611a15565b9d01611a15565b92969490959b92945f61353b565b3d915061382e565b7fc876d21d0000000000000000000000000000000000000000000000000000000014159050610e995781606091810103126101f0576138d181610831565b60406138df60208401610831565b920135906001600160a01b038091169083169273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84145f14613937575047925090808311613924575b505050600190565b61392f92039061227a565b5f808061391c565b916020602494604051958680927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa93841561067e575f946139a3575b5080841161398f575b50505050600190565b61399a930391612204565b5f808080613986565b9093506020813d6020116139cf575b816139bf60209383610903565b810103126101f05751925f61397d565b3d91506139b2565b51906fffffffffffffffffffffffffffffffff821682036101f057565b51908160070b82036101f057565b519081151582036101f057565b919360a0936109ed96956001600160a01b0380941685521515602085015260408401521660608201528160808201520190611990565b6040519291613a5384610852565b60208401915f8352846001600160a01b03809316905260208151015180935251511691565b6040606091613a9b848251602080916001600160a01b0381511684520151910152565b6020810151828501520151910152565b91909294936e22d473030f116ddee9f6b43ac78ba392833b156101f057613b665f96613b538894613b349a6001600160a01b03613b19986040519d8e9c8d9b8c9a7f137c29fe000000000000000000000000000000000000000000000000000000008c5260048c0190613a78565b80516001600160a01b031660848b01526020015160a48a0152565b1660c487015260e4860152610140610104860152610144850190611990565b9060031984830301610124850152611990565b03925af1801561067e57613b775750565b613b80906108d3565b565b9190917f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a75982765f526020526040519160405260605f20916040526010525f5260305fa0565b15613bcc57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b3d15613c23573d90613c0a82610980565b91613c186040519384610903565b82523d5f602084013e565b606090565b9291906001600160a01b03808316946d1ff3684f28c67538d4d072c2273486148015613fe4575b6124f5575f9181169073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8203613d5757505050613c80904761401b565b938051155f14613cdb575050613cb1575f80809381935af1613ca0613bf9565b9015613ca95750565b602081519101fd5b60046040517f01da1572000000000000000000000000000000000000000000000000000000008152fd5b90939260208301808411611481578251106113f557835f9460208695850101525b602083519301915af1613d0d613bf9565b9015613ca95751159081613d4d575b50613d2357565b60046040517f82d5d76a000000000000000000000000000000000000000000000000000000008152fd5b90503b155f613d1c565b8192959391979497155f14613d7657505050613cb1575f928392613cfc565b6040969594969392938051937f70a08231000000000000000000000000000000000000000000000000000000008552600495308787015260209560249587828881865afa8015611c72575f90613fb5575b613dd1925061401b565b91868101808211613f8a578b5110613f7a578683918c010152888103613e04575b50505050505050915f92918392613cfc565b90856044928451938480927fdd62ed3e000000000000000000000000000000000000000000000000000000008252308c8301528d8a8301525afa918215613f70575f92613f41575b508110613e5a575b80613df2565b613ee6575b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff93925f8093604493519687937f095ea7b30000000000000000000000000000000000000000000000000000000085528b8a8601528401525af11561227257503d15601f3d1160015f5114161715613edb578080808080613e54565b633e3f8f735f52601cfd5b80517f095ea7b300000000000000000000000000000000000000000000000000000000815287868201525f84820152845f60448382875af11561227257503d15601f3d1160015f51141617613e5f5784633e3f8f735f52601cfd5b9091508581813d8311613f69575b613f598183610903565b810103126101f05751905f613e4c565b503d613f4f565b83513d5f823e3d90fd5b85603288634e487b715f5252601cfd5b8660118a7f4e487b71000000000000000000000000000000000000000000000000000000005f52525ffd5b508782813d8311613fdd575b613fcb8183610903565b810103126101f057613dd19151613dc7565b503d613fc1565b506e22d473030f116ddee9f6b43ac78ba38614613c4f565b908160209103126101f057516001600160a01b03811681036101f05790565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82820982820291828083109203918083039161271095869109928286111561146f5714614098577fbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e919350828211900360fc1b910360041c170290565b50500490565b9190925f146141f957516141cf57602090818101516141be57604081015180421161418d575051518251928201516040517f15dacbea0000000000000000000000000000000000000000000000000000000081526001600160a01b0392831660048201527f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c83166024820152939091166044840152606483015280826084815f6d1ff3684f28c67538d4d072c227345af1801561067e5761415e575050565b81813d8311614186575b6141728183610903565b810103126101f05761418390613a02565b50565b503d614168565b602490604051907fcd21db4f0000000000000000000000000000000000000000000000000000000082526004820152fd5b601182634e487b715f52526024601cfd5b60046040517fc321526c000000000000000000000000000000000000000000000000000000008152fd5b916e22d473030f116ddee9f6b43ac78ba37f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c813b156101f0575f8094613b6661429b976001600160a01b03614280956040519a8b998a9889977f30f28b7a0000000000000000000000000000000000000000000000000000000089526004890190613a78565b80516001600160a01b031660848801526020015160a4870152565b1660c484015261010060e4840152610104830190611990565b929091670de0b6b3a7640000918285800204948381870204955f935b60ff85106143025760046040517f481b61af000000000000000000000000000000000000000000000000000000008152fd5b85818002048789886003878286890181898402040204958587105f146143845702020401888383030204918215614343575b505060019101945b01936142d0565b149050614379576001808201888880838002048601818489020402041161436c5750875f614334565b9750505050509350505090565b955050509350505090565b020204018882840302049182156143a2575b5050600191039461433c565b14905080156143b9575b614379576001875f614396565b5086867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83018180828002048601918702040204106143ac565b917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828409818385029384808410930395099080851461447a5782805f0316809304600280826003021880830282030280830282030280830282030280830282030280830282030280920290030294600184805f0304019185841191030302920304170290565b505091500490565b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000090358181169392601481106144b757505050565b60140360031b82901b16169150563ae13a6a1d3eea900d733ebc1d1ba9d772e6b415000000000000000000000000000000000000000000000000000000000000000000000000000000000004533fe15556b1e086bb1a72ceae00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004ce4f160fb0e000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000004c786080604090808252346102e75780614c58803803809161001f8285610340565b83396020928391810103126102e757516001600160601b0319811691908290036102e7576100ef605b845161005381610311565b8181527f6e416d6f756e744f75742c62797465735b5d20616374696f6e732900000000006060858301927f536c697070616765416e64416374696f6e73286164647265737320726563697084527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d69898201520152207f615e8d716cef7295e75dd3f1f10d679914ad6d7759e8e9459f0109ef7524170114610363565b6101276100fa61037e565b8281519101207f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa14610363565b610200835161013581610311565b604b81528281017f5266714f7264657228436f6e73696465726174696f6e206d616b6572436f6e7381527f696465726174696f6e2c436f6e73696465726174696f6e2074616b6572436f6e868301526a73696465726174696f6e2960a81b60608301526101d6846101a461037e565b9281895194859282840197518091895e8301908282015f8152815193849201905e015f83820152038084520182610340565b5190207f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a759827614610363565b46617a691491826102fc578351907f16fbd3a71aa6d159973eb9ff1e1199f9fe242767e6f30ac662a492f92ac704115f80a26331a9108f60e11b81526003600482015281816024816d04533fe15556b1e086bb1a72ceae5afa9182156102f2575f926102aa575b50610295929161028291506001600160a01b03163014610363565b61210546149081156102a2575b50610363565b5161485490816104048239f35b90505f61028f565b90809250813d83116102eb575b6102c18183610340565b810103126102e75751906001600160a01b03821682036102e75790610282610295610267565b5f80fd5b503d6102b7565b84513d5f823e3d90fd5b61029592915061030c9015610363565b610282565b608081019081106001600160401b0382111761032c57604052565b634e487b7160e01b5f52604160045260245ffd5b601f909101601f19168101906001600160401b0382119082101761032c57604052565b1561036a57565b634e487b7160e01b5f52600160045260245ffd5b6040519061038b82610311565b605882527f626f6f6c207061727469616c46696c6c416c6c6f7765642900000000000000006060837f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7460208201527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c6040820152015256fe60a060405260043610801561036c575b361561036a573461020b577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe9905f825c925d7fffffffff000000000000000000000000000000000000000000000000000000005f3581811692610355575b5080831691160361020b576001600160a01b03808216330361020b573660041161020b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36019160a01c61ffff16908160011461020f57506002146100f9577f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffd5b60801161020b576004356044359081600401356101198160248501614810565b60601c918160141161020b575f81131561020157915b30810361018b575061016b6101739360387fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec3394019101614810565b60601c61244c565b60405161017f81610b0c565b5f81525b602081519101f35b9161019a6101fc949315614187565b604051906101a782610a77565b33825260208201526101f66101bf36602c8601610b4b565b92608d8501356001169460ad7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff773693019101610bc1565b91613e0e565b610173565b506024359161012f565b5f80fd5b9160a091501061020b57608435907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f82019160a4359180831680840361020b5761025d916004351614614187565b60405161026981610a77565b33815260243560208201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c3601926080841261020b5760408051946102ae86610ac0565b1261020b57604051906102c082610a77565b815260c4356020820152835260e43560208401526101043560408401526102e684610ba5565b916102f46040519384610b28565b8483523660a482011161020b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9f5f91610341966101256020870137840101526101053560011692613e0e565b60405161034d81610b0c565b5f8152610183565b818093503660040360031b1b1616905f61006c565b005b5f3560e01c63fd3ad6d40361000f573461020b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360160e0811261020b5760601361020b5767ffffffffffffffff6064351161020b5736602360643501121561020b5767ffffffffffffffff606435600401351161020b573660246064356004013560051b60643501011161020b576001600160a01b0360a4351660a4350361020b5767ffffffffffffffff60c4351161020b5736602360c43501121561020b5767ffffffffffffffff60c435600401351161020b5736602460c4356004013560c43501011161020b5760a06064356024015b60246064356004013560051b60643501018110610a135760a06064356004013560051b60a020604051907f615e8d716cef7295e75dd3f1f10d679914ad6d7759e8e9459f0109ef7524170182526060600460208401376080820152207f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5c806109e257507f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5d6001600160a01b0360a43516156109b8576001600160a01b037f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c16806109875760a4356001600160a01b03167f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935d606435600401351561020b57602460643501356064350160448101359060487ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc602483013501910191604051926105da60c43560040135602460c43501858486610bf7565b84604052156109205760015b606435600401358110610852576004356001600160a01b03811680820361020b57602435906001600160a01b0382169283830361020b57604435938415801590610849575b610721575b50505050506001600160a01b0360a435166001600160a01b037f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c16036106f7575f7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935d7f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5c806106c657602060405160018152f35b602490604051907fe25527c20000000000000000000000000000000000000000000000000000000082526004820152fd5b60046040517f5149e795000000000000000000000000000000000000000000000000000000008152fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81036107aa575050479183831061075c575061075292506124c2565b8080808080610630565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b039190911660048201526024810193909352506044820152606490fd5b0390fd5b602493919250602090604051948580927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa92831561083e575f9361080a575b5083831061075c57610805935061244c565b610752565b9092506020813d602011610836575b8161082660209383610b28565b8101031261020b575191846107f3565b3d9150610819565b6040513d5f823e3d90fd5b5080151561062b565b60246064358260051b010135606435019060448201359160487ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc6024830135019101604051916108a3818387611c6b565b83604052156108b95750505060019150016105e6565b7fffffffff00000000000000000000000000000000000000000000000000000000839584957f3c74eed6000000000000000000000000000000000000000000000000000000006107a696526004870152166024850152606060448501526064840191610a4a565b83927fffffffff000000000000000000000000000000000000000000000000000000006107a6937f3c74eed60000000000000000000000000000000000000000000000000000000086525f6004870152166024850152606060448501526064840191610a4a565b602490604051907f7407c0f80000000000000000000000000000000000000000000000000000000082526004820152fd5b60046040517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b602490604051907f9936cbab0000000000000000000000000000000000000000000000000000000082526004820152fd5b604481356064350160248101359182910184378220825260209182019101610460565b35906001600160a01b038216820361020b57565b601f8260209493601f1993818652868601375f8582860101520116010190565b3590811515820361020b57565b6040810190811067ffffffffffffffff821117610a9357604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6060810190811067ffffffffffffffff821117610a9357604052565b6080810190811067ffffffffffffffff821117610a9357604052565b67ffffffffffffffff8111610a9357604052565b6020810190811067ffffffffffffffff821117610a9357604052565b90601f601f19910116810190811067ffffffffffffffff821117610a9357604052565b80929103916080831261020b5760405190610b6582610ac0565b604082941261020b5760606040918251610b7e81610a77565b610b8782610a36565b81526020820135602082015284528281013560208501520135910152565b67ffffffffffffffff8111610a9357601f01601f191660200190565b929192610bcd82610ba5565b91610bdb6040519384610b28565b82948184528183011161020b578281602093845f960137010152565b919091610c0785858486856110a4565b15610c16575050505050600190565b7fffffffff00000000000000000000000000000000000000000000000000000000167f8d624361000000000000000000000000000000000000000000000000000000000361107e578101906101008183031261020b57610c7581610a36565b92602091604094610c94610c8a878401610a6a565b9560608401610b4b565b9660e083013597610db3866055610cb66001600160a01b039889963691610bc1565b967fbb7b783eb4b8ca46925c5384a6b9919df57cb83da8f76e37291f58d0dd5c439a60e18d730a7e848aca42d879ef06507fca0e7b33a0a63c1e8151809c838b51838b015e838b8a01836060015e5f8260a00153805180918a018360a1015e806081018252019160a18301809152528560ac82019460ff8653013560c182015201522092510151881561105857637fffffff5b8a5191610d5583610adc565b8252891515898301525f8b83015260030b6060820152610da58a51968792868b8501987f3eece7db000000000000000000000000000000000000000000000000000000008a521660248501611bf7565b03601f198101865285610b28565b16927f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c16831461102f577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe991825c80610fff57505f9182917f67ca7c91000000000000000100000000000000000000000000000000000000008617855d519082865af190610e3f6141bb565b9115610ff7575c80610fc75750808380610e5e93518301019101611c41565b939050858410610e7357505050505050600190565b6004939291829115610f4b578551948580927f5f64b55b0000000000000000000000000000000000000000000000000000000082525afa908115610f41575f91610f0a575b506107a69250925b519384937f97a6f3b9000000000000000000000000000000000000000000000000000000008552600485016040919493926001600160a01b03606083019616825260208201520152565b905082813d8311610f3a575b610f208183610b28565b8101031261020b57610f346107a692611c57565b85610eb8565b503d610f16565b84513d5f823e3d90fd5b8551948580927f0fc63d100000000000000000000000000000000000000000000000000000000082525afa908115610f41575f91610f90575b506107a6925092610ec0565b905082813d8311610fc0575b610fa68183610b28565b8101031261020b57610fba6107a692611c57565b85610f84565b503d610f9c565b6024908651907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b508281519101fd5b6024908851907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b600486517fe758b8d5000000000000000000000000000000000000000000000000000000008152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000610d49565b505050505f90565b9080601f8301121561020b578160206110a193359101610bc1565b90565b90939291907fffffffff00000000000000000000000000000000000000000000000000000000167f5228831d0000000000000000000000000000000000000000000000000000000081036112a557508301906101608483031261020b5761110a84610a36565b936111188360208301610b4b565b9261112560a08301610a36565b9060c08301359267ffffffffffffffff841161020b576112a0976001600160a01b0397611285976111848a61117c61121c9a6111748960e061116d61122e9c879f8d01611086565b9a01610b4b565b953691610bc1565b9416826124d1565b608052989093611214611199898b16866124d1565b919e90917f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c9082604051946111ce86610adc565b16845260208401521660408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9b8c94613ca0565b611224612563565b92878716916140b0565b816040519361123c85610adc565b16835260805160208401521660408201525f6060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b6fffffffffffffffffffffffffffffffff6080511691614144565b600190565b919392917f0dfeb41900000000000000000000000000000000000000000000000000000000810361131d5750820160a08382031261020b576112a09361130d6001600160a01b036113056113179460206112fe89610a36565b9801610b4b565b9516856124d1565b5050923691610bc1565b91613ca0565b92949193927f9ebf8e8d0000000000000000000000000000000000000000000000000000000003611bc95784019360e08186031261020b5761135e81610a36565b9260208201359067ffffffffffffffff821161020b5761117461138688611390948601611086565b9760408501610b4b565b805160890194856089116116c057602091601f196113c66113b089610ba5565b986113be6040519a8b610b28565b808a52610ba5565b013684890137815183015187604801526040828401886068015e5f8760a8015380519083018760a9015e5101515f937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82116116ae5795905b815190602c821061163457866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b0388161015611bbe575b60ff16600680821015611986575060028082101561183e5750806117a657506001600160a01b03916114f5917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33985b62ffffff16906040519387165f528616602052806040521560051b6060035f209160405261264d565b1691855190858760280152866014015285528c602c88115f1461171257506115946001600160a01b039387859461158f6115a3956115816040519b8c9586938d8c8084169116105f146116f4578d8c806401000276a4945b7f128acb080000000000000000000000000000000000000000000000000000000060208a0152169116103060248701613c6a565b03601f198101845283610b28565b61266c565b60208082518301019101611c41565b9590946040525b16911610156116ed57505b7f800000000000000000000000000000000000000000000000000000000000000081146116c0575f03945f86126116ae57602c8692111561164657505030939060188151106116345780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe8016018909101908152602886529061141f565b634e487b715f5260326020526024601cfd5b939650935050925060c0830135821061166157505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260c0929092013560248301526044820152606490fd5b634e487b715f5260116020526024601cfd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b90506115b5565b8d8c8073fffd8963efd1fc6a506488495d951d5263988d259461154d565b926001600160a01b036117829361158f89611581849b9a8a61159498879b888616898416105f1461178a57886401000276a4935b816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613c6a565b9490936115aa565b8873fffd8963efd1fc6a506488495d951d5263988d2593611746565b9091929394959650600181145f1461180d57506114f58d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b602490604051907fd3b1276d0000000000000000000000000000000000000000000000000000000082526004820152fd5b810361189457506001600160a01b03916114f59173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b600381036118ec57506001600160a01b03916114f5917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c986114cc565b90919293949596506004908181145f146119565750506114f58d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e33986114cc565b60249250604051917fd3b1276d000000000000000000000000000000000000000000000000000000008352820152fd5b600e80831015611aa6575081036119e757506001600160a01b03916114f591730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b60078103611a3f57506001600160a01b03916114f5917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b9091929394959650600881145f1461180d57506114f58d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b8214159050611aff57506001600160a01b03916114f591734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b600f8103611b5757506001600160a01b03916114f59173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e33986114cc565b9091929394959650601081145f1461180d57506114f58d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b869250889150611462565b50925050505f90565b90601f19601f602080948051918291828752018686015e5f8582860101520116010190565b60606110a194936001600160a01b0360c094168352805160208401526020810151151560408401526040810151151582840152015160030b60808201528160a08201520190611bd2565b919082604091031261020b576020825192015190565b51906001600160a01b038216820361020b57565b919091611c7982848361278c565b15611c8657505050600190565b82907fffffffff00000000000000000000000000000000000000000000000000000000167f67848fe70000000000000000000000000000000000000000000000000000000081036120c0575060c0918101031261020b57611ce681610a36565b602090611cf4828401610a36565b9160409283850135946060810135916001600160a01b039081841680940361020b5760a0611d2460808501610a6a565b930135975f9080612040575b50878161202b57869150916024849351809481937f70a08231000000000000000000000000000000000000000000000000000000008352896004840152165afa908115612021575f91611ff4575b5086517f1865c57d0000000000000000000000000000000000000000000000000000000081526101208082600481895afa918215611fea579089949392915f92611eec575b50506fffffffffffffffffffffffffffffffff809188875f14611ee4575051165b169003955b8315611ebe57637fffffff5b835197611e0189610adc565b8852841515878901525f8489015260030b6060880152611e5c8351611e2581610b0c565b5f8152845198899485947f3eece7db0000000000000000000000000000000000000000000000000000000086521660048501611bf7565b03815f865af1938415611eb4575f94611e83575b50858410610e7357505050505050600190565b611ea4919450853d8711611ead575b611e9c8183610b28565b810190611c41565b9050925f611e70565b503d611e92565b85513d5f823e3d90fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000611df5565b015116611de4565b818096508193503d8311611fe3575b611f058183610b28565b8101031261020b57885193840184811067ffffffffffffffff821117610a93578952611f3081613c32565b8452611f3d878201613c32565b87850152611f4c898201613c4f565b89850152611f5c60608201613c4f565b6060850152608081015164ffffffffff8116810361020b57608085015260a08101518060030b810361020b5760a0850152611f9960c08201613c5d565b60c085015260e081015163ffffffff8116810361020b5760e0850152610100809101519060ff8216820361020b5784015287926fffffffffffffffffffffffffffffffff80611dc3565b503d611efb565b89513d5f823e3d90fd5b90508481813d831161201a575b61200b8183610b28565b8101031261020b57515f611d7e565b503d612001565b87513d5f823e3d90fd5b9291818661203b9299939961244c565b611de9565b88517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152915086826024818688165afa8015611fea575f90612091575b612710925002045f611d30565b508682813d83116120b9575b6120a78183610b28565b8101031261020b576127109151612084565b503d61209d565b7fca9e5d0f0000000000000000000000000000000000000000000000000000000014159050612446578160c0918101031261020b576120fe81610a36565b90602061210c818301610a36565b9160409283820135916060810135916001600160a01b039384841680940361020b578460a061213d60808601610a6a565b94013598169486826123a0575b505050505f14612297578351917fdd93f59a000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610f41575f92612268575b508482106121a8575050505050600190565b826004918551928380927f4a248d2a0000000000000000000000000000000000000000000000000000000082525afa928315610f41575f9361222f575b505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b90809350813d8311612261575b6122468183610b28565b8101031261020b5761225a6107a692611c57565b91856121e5565b503d61223c565b9091508281813d8311612290575b6122808183610b28565b8101031261020b5751905f612196565b503d612276565b8351917fbd6015b4000000000000000000000000000000000000000000000000000000008352600483015282826024815f855af1918215610f41575f92612371575b508482106122eb575050505050600190565b826004918551928380927fd4b970460000000000000000000000000000000000000000000000000000000082525afa928315610f41575f9361222f57505091517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260248101929092526044820152606490fd5b9091508281813d8311612399575b6123898183610b28565b8101031261020b5751905f6122d9565b503d61237f565b6024918951928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015287165afa90811561243c5790859392915f91612407575b506123fe93916123f8916145bf565b9161244c565b5f80808661214a565b809450888092503d8311612435575b6124208183610b28565b8101031261020b5791518492906123fe6123e9565b503d612416565b88513d5f823e3d90fd5b50505f90565b60446020925f80936001600160a01b03966040519788947fa9059cbb00000000000000000000000000000000000000000000000000000000865216600485015260248401525af1156124ba57503d15601f3d1160015f51141617156124ad57565b6390b8ec185f526004601cfd5b3d5f823e3d90fd5b5f80809381935af11561083e57565b60405192916124df84610a77565b60208401915f8352846001600160a01b03809316905260208151015180935251511691565b6040519061251182610ac0565b602e82527f696e7432353620616d6f756e74290000000000000000000000000000000000006040837f546f6b656e5065726d697373696f6e73286164647265737320746f6b656e2c7560208201520152565b60405161256f81610adc565b605881526110a1603c60208301927f436f6e73696465726174696f6e286164647265737320746f6b656e2c75696e7484527f32353620616d6f756e742c6164647265737320636f756e74657270617274792c60408201527f626f6f6c207061727469616c46696c6c416c6c6f776564290000000000000000606082015260206125f6612504565b6040519586937f436f6e73696465726174696f6e20636f6e73696465726174696f6e2900000000848601525180918686015e8301908482015f8152815193849201905e015f8382015203601c810184520182610b28565b9160406055938151908152600b81019360ff8553602082015201522090565b6001600160a01b03809116907f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c1681146109b8577e9355806b743562f351db2e3726091207f49fa1cdccd5c65a7d4860ce3abbe992835c8061274b57509181740200000000000000000000000000000000000000005f9493859460e01b1717855d82602083519301915af1906127016141bb565b9115612742575c80612711575090565b602490604051907fd66fcc380000000000000000000000000000000000000000000000000000000082526004820152fd5b50602081519101fd5b602490604051907fab7646c40000000000000000000000000000000000000000000000000000000082526004820152fd5b359062ffffff8216820361020b57565b9091907fffffffff00000000000000000000000000000000000000000000000000000000167fc1fb425e00000000000000000000000000000000000000000000000000000000810361283b5750810160c08282031261020b576127ee82610a36565b906127fc8160208501610b4b565b9060a084013567ffffffffffffffff811161020b5761282b612833926001600160a01b03926112a09701611086565b9316826124d1565b505090613ca0565b7fd92aadfb000000000000000000000000000000000000000000000000000000008103612aad575081016101208282031261020b5761287982610a36565b9160209261288983858401610b4b565b61289560a08401610a36565b9360c08401359067ffffffffffffffff821161020b576128b6918501611086565b916101006128c660e08601610a36565b9401356128e06001600160a01b03808098169316846124d1565b9690919261293d6040938a8551916128f783610adc565b168152898c820152868582015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9760248b6129bc8c8616809d7f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c89519261297784610adc565b83528785840152168882015260016060820152601f19019081517f7d806873084f389a66fd0315dead7adaad8ae6e8b6cf9fb0d3db61e5a91c3ffa835260a083209252565b9b8651928380927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa948515612aa457505f94612a61575b5093612a4284878c95856112a09f9b9899612a509b976fffffffffffffffffffffffffffffffff9e9b9511612a57575b9084612a3892614781565b809b86015261244c565b612a4a612563565b936140b0565b1691614144565b9093508390612a2d565b95919a809794508681999692993d8311612a9d575b612a808183610b28565b8101031261020b5794519599939692959094939092612a426129fd565b503d612a76565b513d5f823e3d90fd5b9192917f8d68a1560000000000000000000000000000000000000000000000000000000081036132d0575082019060808383031261020b57612aee83610a36565b9060208401359260408501359067ffffffffffffffff821161020b57612b15918601611086565b9260246020855181870151907fffffffffffffffffffffffffffffffffffffffff0000000000000000000000009182811691601481106132bb575b50509050604051928380927f70a0823100000000000000000000000000000000000000000000000000000000825230600483015260601c5afa90811561083e575f91613289575b508181029181830414901517156116c05761271090049360405193612bbb85610ac0565b6028855260403660208701379430937f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82116116ae5795905b815190602c821061163457866014840151601585015197601886015190602c87015194838690879c6001600160a01b0389166001600160a01b038816101561327e575b60ff166006808210156130465750600280821015612f31575080612eca57506001600160a01b0391612cc9917333128a8fc17869897dce68ed026d694621f6fdfd7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e339862ffffff16906040519387165f528616602052806040521560051b6060035f209160405261264d565b1691855190858760280152866014015285528c602c88115f14612e5357506115946001600160a01b039387859461158f612d53956115816040519b8c9586938d8c8084169116105f146116f4577f128acb080000000000000000000000000000000000000000000000000000000060208601526401000276a4918c168c8f16103060248701613c6a565b9590946040525b1691161015612e4c57505b7f800000000000000000000000000000000000000000000000000000000000000081146116c0575f03945f86126116ae57602c86921115612de457505030939060188151106116345780517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe80160189091019081526028865290612bf4565b939650935050925060608301358210612dff57505050600190565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b039190911660048201526060929092013560248301526044820152606490fd5b9050612d65565b926001600160a01b03612ec29361158f89611581849b9a8a61159498879b888616898416105f1461178a57886401000276a493816040519b8c997f128acb080000000000000000000000000000000000000000000000000000000060208c015216911610911660248701613c6a565b949093612d5a565b9091929394959650600181145f1461180d5750612cc98d96959493926001600160a01b03927341ff9aa7e16b8b1a8a8dc4f0efacd93d02d071c97f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b8103612f8757506001600160a01b0391612cc99173c35dadb65012ec5796536bd9864ed8773abc74c47fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b60038103612fdf57506001600160a01b0391612cc9917370fe4a44ea505cfa3a57b95cf2862d4fd5f0f6877fe9b68c5f77858eecac2e651646e208175e9b1359d68d0e14fc69f8c54e5010bf92633a1c453c986114cc565b9091929394959650600481145f1461180d5750612cc98d96959493926001600160a01b0392735e7bb104d84c7cb9b682aac2f3d509f5f406809a7fffb9af9ea6d9e39da47392ecc7055277b9915b8bfc9f83f105821b7791a6ae309263fa461e33986114cc565b600e80831015613166575081036130a757506001600160a01b0391612cc991730fd83557b2be93617c9c1c1b6fd549401c74558c7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b600781036130ff57506001600160a01b0391612cc9917338015d05f4fec8afe15d7cc0386a126574e8077b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b9091929394959650600881145f1461180d5750612cc98d96959493926001600160a01b039273905a650133147012390c42624eeba4d3313bec6c7f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b82141590506131bf57506001600160a01b0391612cc991734f205d69834f9b101b9289f7affac9b77b3ff9b77f6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2926323a69e75986114cc565b600f810361321757506001600160a01b0391612cc99173e6da85feb3b4e0d6aed95c41a125fba859bb9d247f01795efa243dc58f09de9b7c1fa74e72352806f279d62f49ef19e11c42a982929263fa461e33986114cc565b9091929394959650601081145f1461180d5750612cc98d96959493926001600160a01b039273ddf5a3259a88ab79d5530eb3eb14c1c92cd97fcf7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b549263fa461e33986114cc565b869250889150612c37565b90506020813d6020116132b3575b816132a460209383610b28565b8101031261020b57515f612b97565b3d9150613297565b8391925060140360031b1b1616805f80612b50565b92837f103b48be00000000000000000000000000000000000000000000000000000000829495145f14613659575060c0918101031261020b5761331281610a36565b602091613320838201610a36565b91604091828101359061333560608201610a36565b9060a06133446080830161277c565b910135926001600160a01b03808098169316926001908180851614935f92846135cd575b839450895193613597575b630902f1ac5f52895f6004601c8a5afa1561358e57893d1061020b578b8b928760051b9687519288811851948084811c1614821517613541575b506060955061ffff6127109260081c1682030292028201910204975f601c8d8187019763022c0d9f88526080808901528360a08901528c82828a0101526004011886010152169101525f8060a48382875af1156124ba57508284106134185750505050505050600190565b6004918791156134dd578551928380927fd21220a70000000000000000000000000000000000000000000000000000000082525afa908115610f41576107a69495965f926134b0575b5050935b519485947f97a6f3b900000000000000000000000000000000000000000000000000000000865216600485016040919493926001600160a01b03606083019616825260208201520152565b6134cf9250803d106134d6575b6134c78183610b28565b8101906145a0565b8680613461565b503d6134bd565b8551928380927f0dfe16810000000000000000000000000000000000000000000000000000000082525afa908115610f41576107a69495965f92613524575b505093613465565b61353a9250803d106134d6576134c78183610b28565b868061351c565b9294505091936024601c5f926370a0823184528b85525afa1561358e578b3d1061020b575f5183811061357d579183916060948d94038e6133ad565b60118d634e487b715f52526024601cfd5b833d5f823e3d90fd5b63a9059cbb8452868c850152848a8501528b5f6044601c870182875af11561358e57805f51148c3d1015163d1517613373575f80fd5b9250928851907f70a082310000000000000000000000000000000000000000000000000000000082523060048301528b82602481865afa801561364f575f90613620575b61271092500204918390613368565b508b82813d8311613648575b6136368183610b28565b8101031261020b576127109151613611565b503d61362c565b8a513d5f823e3d90fd5b7f38c9c1470000000000000000000000000000000000000000000000000000000081036136e25750019060a08183031261020b5761369681610a36565b906136a360408201610a36565b90608081013567ffffffffffffffff811161020b576112a0946136c7918301611086565b9260206001600160a01b0360608401359416920135906141ea565b7ff5b99189000000000000000000000000000000000000000000000000000000008103613aee575060a0918101031261020b5761371e81610a36565b906040810135916001600160a01b039283811680910361020b576137446060840161277c565b6040517f392f37e9000000000000000000000000000000000000000000000000000000008152936001808316149160e086600481875afa90811561083e575f91885f985f935f945f9b5f935f96613a73575b50878197839781969f6137a890614187565b8c15613a5e575b50505050505f9160208801356139cb575b8983158d85821593846139ba575b505050906139ac575b613922575b61382493508686670de0b6b3a76400008099818099020493020495869461271061ffff838089800204818880020401818a89020402049660081c168202049003020401614642565b9003020494608082013586106138d3575050156138cd575f925b60405161384a81610b0c565b5f8152823b1561020b575f946138a98692604051988997889687957f022c0d9f00000000000000000000000000000000000000000000000000000000875260048701526024860152166044840152608060648401526084830190611bd2565b03925af1801561083e576138be575b50600190565b6138c790610af8565b5f6138b8565b5f61383e565b6040517f97a6f3b90000000000000000000000000000000000000000000000000000000081526001600160a01b0391909116600482015260809190910135602482015260448101859052606490fd5b915060208b60248b60405196879384927f70a082310000000000000000000000000000000000000000000000000000000084526004840152165afa801561083e5784905f90613976575b8d945003916137dc565b50506020833d6020116139a4575b8161399160209383610b28565b8101031261020b5783613824935161396c565b3d9150613984565b5060018083811c16146137d7565b6139c39261244c565b8d858d6137ce565b915060208b6024604051809681937f70a08231000000000000000000000000000000000000000000000000000000008352306004840152165afa801561083e578c935f91613a26575b506127109060208901350204916137c0565b9350506020833d602011613a56575b81613a4260209383610b28565b8101031261020b576127108c935190613a14565b3d9150613a35565b9e509198509650945091505f808080806137af565b9c50505094505050505060e0863d60e011613ae6575b81613a9660e09383610b28565b8101031261020b5785805191886020830151936040840151926060850151613ad860c0613ad160a0613aca60808b01613c5d565b9901611c57565b9d01611c57565b92969490959b92945f613796565b3d9150613a89565b7fc876d21d000000000000000000000000000000000000000000000000000000001415905061244657816060918101031261020b57613b2c81610a36565b6040613b3a60208401610a36565b920135906001600160a01b038091169083169273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84145f14613b92575047925090808311613b7f575b505050600190565b613b8a9203906124c2565b5f8080613b77565b916020602494604051958680927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa93841561083e575f94613bfe575b50808411613bea575b50505050600190565b613bf593039161244c565b5f808080613be1565b9093506020813d602011613c2a575b81613c1a60209383610b28565b8101031261020b5751925f613bd8565b3d9150613c0d565b51906fffffffffffffffffffffffffffffffff8216820361020b57565b51908160070b820361020b57565b5190811515820361020b57565b919360a0936110a196956001600160a01b0380941685521515602085015260408401521660608201528160808201520190611bd2565b9190917f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa5f815c915d80156109b857613e0c937f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c9060405193613d0385610adc565b605b8552613e07604660208701967f536c697070616765416e64416374696f6e73286164647265737320726563697088527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d6960408201527f6e416d6f756e744f75742c62797465735b5d20616374696f6e7329000000000060608201526020613d8a612504565b604051998a937f536c697070616765416e64416374696f6e7320736c697070616765416e644163848601527f74696f6e7329000000000000000000000000000000000000000000000000000060408601525180918686015e8301908482015f8152815193849201905e015f83820152036026810188520186610b28565b6140b0565b565b9291907f1643bf8e9fdaef48c4abf5a998de359be44a235ac7aebfbc05485e093720deaa935f855c955d84156109b8577f46bacb9b87ba1d2910347e4a3e052d06c824a45acd1e9517bb0cb8d0d5cde8935c7f74696f6e73290000000000000000000000000000000000000000000000000000604095613f6e60468860208151613e9781610adc565b605b81528181017f536c697070616765416e64416374696f6e73286164647265737320726563697081527f69656e742c6164647265737320627579546f6b656e2c75696e74323536206d69848301527f6e416d6f756e744f75742c62797465735b5d20616374696f6e732900000000006060830152613f14612504565b9184519889957f536c697070616765416e64416374696f6e7320736c697070616765416e644163868801528601525180918686015e8301908482015f8152815193849201905e015f83820152036026810185520183610b28565b614087576e22d473030f116ddee9f6b43ac78ba392833b1561020b5761406b5f9661403a889461401b9b6001600160a01b038c9889519e8f9c8d9b8c9a7f137c29fe000000000000000000000000000000000000000000000000000000008c52613fef60048d018251602080916001600160a01b0381511684520151910152565b60208181015160448e015291015160648c015281516001600160a01b031660848c0152015160a48a0152565b1660c487015260e4860152610140610104860152610144850190611bd2565b907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc84830301610124850152611bd2565b03925af1908115612aa4575061407e5750565b613e0c90610af8565b600486517f1c500e5c000000000000000000000000000000000000000000000000000000008152fd5b91909294936e22d473030f116ddee9f6b43ac78ba392833b1561020b576141335f9661403a889461401b9a6001600160a01b0360409889519d8e9c8d9b8c9a7f137c29fe000000000000000000000000000000000000000000000000000000008c52613fef60048d018251602080916001600160a01b0381511684520151910152565b03925af1801561083e5761407e5750565b9190917f49fa719b76f0f6b7e76be94b56c26671a548e1c712d5b13dc2874f70a75982765f526020526040519160405260605f20916040526010525f5260305fa0565b1561418e57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b3d156141e5573d906141cc82610ba5565b916141da6040519384610b28565b82523d5f602084013e565b606090565b9291906001600160a01b03808316946e22d473030f116ddee9f6b43ac78ba386146109b8575f9181169073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee82036143135750505061423c90476145bf565b938051155f1461429757505061426d575f80809381935af161425c6141bb565b90156142655750565b602081519101fd5b60046040517f01da1572000000000000000000000000000000000000000000000000000000008152fd5b909392602083018084116116c05782511061163457835f9460208695850101525b602083519301915af16142c96141bb565b90156142655751159081614309575b506142df57565b60046040517f82d5d76a000000000000000000000000000000000000000000000000000000008152fd5b90503b155f6142d8565b8192959391979497155f146143325750505061426d575f9283926142b8565b6040969594969392938051937f70a08231000000000000000000000000000000000000000000000000000000008552600495308787015260209560249587828881865afa8015611eb4575f90614571575b61438d92506145bf565b91868101808211614546578b5110614536578683918c0101528881036143c0575b50505050505050915f929183926142b8565b90856044928451938480927fdd62ed3e000000000000000000000000000000000000000000000000000000008252308c8301528d8a8301525afa91821561452c575f926144fd575b508110614416575b806143ae565b6144a2575b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff93925f8093604493519687937f095ea7b30000000000000000000000000000000000000000000000000000000085528b8a8601528401525af1156124ba57503d15601f3d1160015f5114161715614497578080808080614410565b633e3f8f735f52601cfd5b80517f095ea7b300000000000000000000000000000000000000000000000000000000815287868201525f84820152845f60448382875af1156124ba57503d15601f3d1160015f5114161761441b5784633e3f8f735f52601cfd5b9091508581813d8311614525575b6145158183610b28565b8101031261020b5751905f614408565b503d61450b565b83513d5f823e3d90fd5b85603288634e487b715f5252601cfd5b8660118a7f4e487b71000000000000000000000000000000000000000000000000000000005f52525ffd5b508782813d8311614599575b6145878183610b28565b8101031261020b5761438d9151614383565b503d61457d565b9081602091031261020b57516001600160a01b038116810361020b5790565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8282098282029182808310920391808303916127109586910992828611156116ae571461463c577fbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e919350828211900360fc1b910360041c170290565b50500490565b929091670de0b6b3a7640000918285800204948381870204955f935b60ff85106146905760046040517f481b61af000000000000000000000000000000000000000000000000000000008152fd5b85818002048789886003878286890181898402040204958587105f1461471257020204018883830302049182156146d1575b505060019101945b019361465e565b14905061470757600180820188888083800204860181848902040204116146fa5750875f6146c2565b9750505050509350505090565b955050509350505090565b02020401888284030204918215614730575b505060019103946146ca565b1490508015614747575b614707576001875f614724565b5086867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830181808280020486019187020402041061473a565b917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82840981838502938480841093039509908085146148085782805f0316809304600280826003021880830282030280830282030280830282030280830282030280830282030280920290030294600184805f0304019185841191030302920304170290565b505091500490565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000903581811693926014811061484557505050565b60140360031b82901b16169150563ae13a6a1d3eea900d733ebc1d1ba9d772e6b41500000000000000000000000000000000000000000000000000000000000000000000, operation=1, safeTxGas=0, baseGas=0, gasPrice=0, gasToken= 0x0000000000000000000000000000000000000000, refundReceiver= 0x0000000000000000000000000000000000000000, signatures=0xdbbf823266a94a89a4747d88ec1b65fe28783a02f00032603e380938f3d7952f7715392bb6d901e53e807bd0554fe313b422344d05496dbfa51cab3992901ba61c9187188deebd3f8a41f2c45215339760e9be3a3b1b9bb1378c090b0e7bd9a479347b834e506aa32d02ee0db303e5dc32d29a37c4c9516eff11e0877eae0961721b) (true)
-