Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| 0x61010034 | 22684525 | 366 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"hub_","type":"address"},{"internalType":"address","name":"hook_","type":"address"},{"internalType":"address","name":"quoter_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"GuardedCall","type":"error"},{"inputs":[{"components":[{"internalType":"Currency","name":"currency0","type":"address"},{"internalType":"Currency","name":"currency1","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"int24","name":"tickSpacing","type":"int24"},{"internalType":"contract IHooks","name":"hooks","type":"address"}],"internalType":"struct PoolKey","name":"key","type":"tuple"},{"internalType":"uint256","name":"inverseCumulativeAmountInput","type":"uint256"},{"internalType":"uint256","name":"totalLiquidity","type":"uint256"},{"internalType":"bool","name":"zeroForOne","type":"bool"},{"internalType":"bool","name":"exactIn","type":"bool"},{"internalType":"int24","name":"twapTick","type":"int24"},{"internalType":"int24","name":"","type":"int24"},{"internalType":"bytes32","name":"ldfParams","type":"bytes32"},{"internalType":"bytes32","name":"ldfState","type":"bytes32"}],"name":"computeSwap","outputs":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"int24","name":"roundedTick","type":"int24"},{"internalType":"uint256","name":"cumulativeAmount0_","type":"uint256"},{"internalType":"uint256","name":"cumulativeAmount1_","type":"uint256"},{"internalType":"uint256","name":"swapLiquidity","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"Currency","name":"currency0","type":"address"},{"internalType":"Currency","name":"currency1","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"int24","name":"tickSpacing","type":"int24"},{"internalType":"contract IHooks","name":"hooks","type":"address"}],"internalType":"struct PoolKey","name":"key","type":"tuple"},{"internalType":"int24","name":"roundedTick","type":"int24"},{"internalType":"uint256","name":"totalLiquidity","type":"uint256"},{"internalType":"int24","name":"twapTick","type":"int24"},{"internalType":"int24","name":"","type":"int24"},{"internalType":"bytes32","name":"ldfParams","type":"bytes32"},{"internalType":"bytes32","name":"ldfState","type":"bytes32"}],"name":"cumulativeAmount0","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"Currency","name":"currency0","type":"address"},{"internalType":"Currency","name":"currency1","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"int24","name":"tickSpacing","type":"int24"},{"internalType":"contract IHooks","name":"hooks","type":"address"}],"internalType":"struct PoolKey","name":"key","type":"tuple"},{"internalType":"int24","name":"roundedTick","type":"int24"},{"internalType":"uint256","name":"totalLiquidity","type":"uint256"},{"internalType":"int24","name":"twapTick","type":"int24"},{"internalType":"int24","name":"","type":"int24"},{"internalType":"bytes32","name":"ldfParams","type":"bytes32"},{"internalType":"bytes32","name":"ldfState","type":"bytes32"}],"name":"cumulativeAmount1","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"Currency","name":"currency0","type":"address"},{"internalType":"Currency","name":"currency1","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"int24","name":"tickSpacing","type":"int24"},{"internalType":"contract IHooks","name":"hooks","type":"address"}],"internalType":"struct PoolKey","name":"key","type":"tuple"},{"internalType":"uint24","name":"twapSecondsAgo","type":"uint24"},{"internalType":"bytes32","name":"ldfParams","type":"bytes32"},{"internalType":"enum LDFType","name":"ldfType","type":"uint8"}],"name":"isValidParams","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"Currency","name":"currency0","type":"address"},{"internalType":"Currency","name":"currency1","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"int24","name":"tickSpacing","type":"int24"},{"internalType":"contract IHooks","name":"hooks","type":"address"}],"internalType":"struct PoolKey","name":"key","type":"tuple"},{"internalType":"int24","name":"roundedTick","type":"int24"},{"internalType":"int24","name":"twapTick","type":"int24"},{"internalType":"int24","name":"","type":"int24"},{"internalType":"bytes32","name":"ldfParams","type":"bytes32"},{"internalType":"bytes32","name":"ldfState","type":"bytes32"}],"name":"query","outputs":[{"internalType":"uint256","name":"liquidityDensityX96_","type":"uint256"},{"internalType":"uint256","name":"cumulativeAmount0DensityX96","type":"uint256"},{"internalType":"uint256","name":"cumulativeAmount1DensityX96","type":"uint256"},{"internalType":"bytes32","name":"newLdfState","type":"bytes32"},{"internalType":"bool","name":"shouldSurge","type":"bool"}],"stateMutability":"view","type":"function"}]Contract Creation Code
610100346100a257601f6140b138819003918201601f19168301916001600160401b038311848410176100a6578084926060946040528339810103126100a257610048816100ba565b90610061604061005a602084016100ba565b92016100ba565b913060805260a05260c05260e052604051613fe290816100cf8239608051816106c1015260a0518161063f015260c0518161074a015260e0518161070a0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100a25756fe6101006040526004361015610012575f80fd5b5f3560e01c80633e33e1271461050a578063685056ff146102b3578063b50c7a9814610221578063c42d62c21461015c5763d5fac49314610051575f80fd5b34610158577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36016101a081126101585760a0136101585760e435801515810361015857610104359081151582036101585761012435908160020b82036101585760a0926100e061011f936100c4610589565b506100cd610628565b61016435906100da61060a565b90610772565b9095919492939290836101843560f881901c6001149060e01c62ffffff1660020b9190610144575b50505061011361060a565b9160c43560a435610b89565b92604092919251941515855260020b6020850152604084015260608301526080820152f35b61014f9395506108f5565b915f8080610108565b5f80fd5b34610158577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360161010081126101585760a0136101585760a43562ffffff811681036101585760c4359060e435906003821015610158576020926101d56101c261060a565b938263ffffffff8160901c169486611bb3565b9283610217575b836101ef575b5050506040519015158152f35b61020f935061ffff63ffffffff8360b01c169260d01c1660010b90611e2a565b8280806101e2565b82151593506101dc565b3461015857602061029161025460606102393661059a565b9497939691509194610249610628565b01936100da8561061a565b909793610278819894979398969062ffffff60018360f81c149260e01c1660020b90565b9190610299575b50505061028b9061061a565b91610b03565b604051908152f35b61028b939650906102aa92916108f5565b93908a8061027f565b34610158577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360161014081126101585760a0136101585760a4358060020b81036101585760c435908160020b82036101585761030e610579565b50610317610628565b6103295f9261010435906100da61060a565b9593809391939661034e610124359062ffffff60018360f81c149260e01c1660020b90565b92906104de575b5050508583838380848a9897819761036b61060a565b9a8b9a8b97889687968761037e9561144d565b9c8888858083878761039084896109ab565b9561039d90828587610d6a565b986103ad9397948b9c939c610f22565b946103b89488611067565b6103c191610950565b92878d6103ce828961095d565b6103d7916109ab565b916103e194610f22565b6103ea91610950565b60041c9b6103f791610ac9565b986104058a98838387610d6a565b9c929790919b936104159461159a565b94610420948b611739565b61042991610950565b956104339161095d565b61043d908a6109ab565b916104479461159a565b61045091610950565b60041c9362ffffff1663010000000163ffffffff81116104b15760a0947fffffffff00000000000000000000000000000000000000000000000000000000926040519586526020860152604085015260e01b16606083015215156080820152f35b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b85985087959493965090826104f2926108f5565b968792839260020b8360020b14159693509394610355565b3461015857602061029161052260606102393661059a565b909793610546819894979398969062ffffff60018360f81c149260e01c1660020b90565b919061055f575b5050506105599061061a565b916109e5565b6105599396509061057092916108f5565b93908a8061054d565b60e435908160020b820361015857565b61014435908160020b820361015857565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0161016081126101585760a0136101585760049060a4358060020b8103610158579060c4359060e4358060020b81036101585790610104358060020b8103610158579061012435906101443590565b6064358060020b81036101585790565b358060020b81036101585790565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633141580610732575b806106f2575b806106e9575b80156106a9575b61068157565b7fd9711eeb000000000000000000000000000000000000000000000000000000005f5260045ffd5b5073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630141561067b565b50331515610674565b5073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633141561066e565b5073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016331415610668565b91928360f81c9260048410156108c85760d085901c61ffff1660010b92605086901c6fffffffff000000000000000000000000169160b087901c63ffffffff1680159084046c0100000000000000000000000014176305f5e10002156108bb576003861461089d57816107f46107f99262ffffff8a60e01c1660020b906109ab565b612132565b8161080381612177565b0260020b9180610812816121a5565b0260020b908260020b8481125f1461084157505050506305f5e10063ffffffff91955b920493949560901c1691565b90919297935061085a610854838961095d565b84610ac9565b60020b12610875575b50506305f5e10063ffffffff91610835565b63ffffffff9296506305f5e10091610890610896928861095d565b90610ac9565b9591610863565b505063ffffffff6305f5e10062ffffff8760e01c1660020b95610835565b63ad251c275f526004601cfd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9160048110156108c85760018114908161093f575b811561091f575b5061091a575090565b905090565b600291501480610930575b5f610911565b508060020b8260020b1261092a565b90508160020b8360020b139061090a565b919082018092116104b157565b9060020b9060020b02908160020b9182036104b157565b60020b60010190627fffff82137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008312176104b157565b9060020b9060020b01907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008212627fffff8313176104b157565b610a51610a1e610a709887610a6395610a4b999a610a4b99610a3599610a5b9860e05260c05260a05260805260a0519060c05190610e84565b9892939060a0989298519160c0519060e051610f22565b91896080519160a0519060c0519060e051611067565b90610950565b9560c0519061095d565b60a0516109ab565b9060c0519060e051610f22565b90565b60020b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008212627fffff8313176104b157565b9060020b9060020b0390627fffff82137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008312176104b157565b610a51610b3c610a709887610b6995610a4b999a610a4b99610b5399610a5b9860e05260c05260a05260805260a0519060c05190610e84565b9892939060a0989298519160c0519060e05161159a565b91896080519160a0519060c0519060e051611739565b9060c0519060e05161159a565b818102929181159184041417156104b157565b948699958199949893979295971515891515145f14610c5157610bb192859289888794611fce565b989098978915610c3b579181838a868484848b8f9b8f9d9c819b8f9d849e88935f14610c2c57610bea95610be5828d6109ab565b6109e5565b9e5f149b610c0a9a610c0f9d610c1557610c0396610b03565b988b61144d565b610b76565b60601c90565b610c2282610c2798610ac9565b610b03565b610c03565b610c36958b6109e5565b610bea565b505050505093505050505f905f905f905f905f90565b610c63928592898887949c9b9c611edb565b989098978915610c3b579181838a868484848e8c8f86610c0f9f9e9c8790610c0a9f868c955f14610cc45786610c2282610c9c98610ac9565b9f15610cb257610cab966109e5565b998b61144d565b610be582610cbf986109ab565b610cab565b86610cce96610b03565b610c9c565b60020b9060020b908115610d30577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82147fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008214166104b1570590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b919082039182116104b157565b9290919280610d7881612177565b0260020b9281610d87816121a5565b0260020b918493610daa87610da584610da08a89610ac9565b610cd3565b610ac9565b955f8760020b1315610e665750670de0b6b3a76400000394670de0b6b3a764000086116104b1576c1000000000000000000000000095807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048711610e53575b670de0b6b3a764000090870204968787039687116104b15762ffffff610e3f8192610da5610e4996610da0610e50998b610ac9565b16911690866120cd565b8094610d5d565b94565b8015610e0a5763bac65e5b5f526004601cfd5b5f986c10000000000000000000000000985089975090955092505050565b93919281610e9181612177565b0260020b9180610ea0816121a5565b0260020b928094610eb984610da585610da0868a610ac9565b915f8360020b1315610f135750670de0b6b3a76400000392670de0b6b3a764000084116104b15762ffffff610e3f8192610da5610e4996610da0610f0c610f048f9b610e509c6121b6565b9e8f90610d5d565b9c8b610ac9565b5f998a98509096509350505050565b93929190918360020b8560020b908082129081159161102a575b5015610f4c575050505050505f90565b8160020b13611022575b610f78610f72610f72610f809594610da062ffffff9589610ac9565b95612203565b931690612575565b91808273ffffffffffffffffffffffffffffffffffffffff821673ffffffffffffffffffffffffffffffffffffffff821611611017575b505073ffffffffffffffffffffffffffffffffffffffff821692831561100b5773ffffffffffffffffffffffffffffffffffffffff610fff938184169303169060601b61273b565b90808206151591040190565b62bfc9215f526004601cfd5b915091505f80610fb7565b935083610f56565b90508260020b12155f610f3c565b60020b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000081146104b1575f0390565b92919390935f938060020b8460020b81125f146114145750505f5b73ffffffffffffffffffffffffffffffffffffffff6110b3816110ac6110a786611038565b612203565b1695612203565b16966c0100000000000000000000000081111561126a5780156108bb57780100000000000000000000000000000000000000000000000004600284810b9083900b12611108575050505050610a709250612594565b9091929394506111188285610ac9565b9162ffffff86831193169073ffffffffffffffffffffffffffffffffffffffff61115c6110a7611148858761262f565b9461115289611038565b9060020b9061095d565b1693836c0100000000000000000000000003916c0100000000000000000000000083116104b1576111ca6111c46111cf946110a7948c896111d79b62ffffff9a845f1461125b57906111ad91610d5d565b925b1561125257906111be91610d5d565b9161271d565b97611038565b61095d565b94169061262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b15773ffffffffffffffffffffffffffffffffffffffff61121b93169061271d565b906c0100000000000000000000000003926c0100000000000000000000000084116104b157610a709361124d9261271d565b612594565b6111be91610d5d565b61126491610d5d565b926111af565b95969495939290600282810b9082900b1261128f5750505050505090610a7091612594565b9091928481959697500292848685041486151760601b156108bb576112b962ffffff83168761262f565b906112c962ffffff85168861262f565b966c0100000000000000000000000003926c0100000000000000000000000084116104b15773ffffffffffffffffffffffffffffffffffffffff6113386110a761134b976111ca611332611345988661132b6110a761133f9a6111ca8d611038565b16906126ee565b96611038565b16886126ee565b90610d5d565b90610b76565b926c0100000000000000000000000003906c0100000000000000000000000082116104b15760601c6c01000000000000000000000000036c0100000000000000000000000081116104b15761139f91610b76565b906c0100000000000000000000000003916c0100000000000000000000000083116104b1576113cd9261273b565b906c010000000000000000000000006113e68284613552565b92096113f7575b90610a7091612594565b60010190811561140757906113ed565b63ae47f7025f526004601cfd5b611427611421848661095d565b866109ab565b60020b1361143a57505050505050505f90565b81610da08561144893610ac9565b611082565b93929190938060020b8260020b811215908161157b575b5015611497579361147494612902565b90670de0b6b3a764000003670de0b6b3a764000081116104b157610a70916121b6565b50509050610da582610da0816114af6114c696612177565b0260020b826114bd816121a5565b0260020b610ac9565b905f8260020b131561157557670de0b6b3a764000003670de0b6b3a764000081116104b157807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff046c0100000000000000000000000011611562575b670de0b6b3a76400009060601b046c01000000000000000000000000036c0100000000000000000000000081116104b15762ffffff610a70921690612575565b80156115225763bac65e5b5f526004601cfd5b50505f90565b905061159061158a878661095d565b846109ab565b60020b135f611464565b92939190918460020b908460020b9180831290811561172b575b50156115c4575050505050505f90565b85916115d08483610ac9565b60020b126116db575b9262ffffff61161c6110a78561161661161073ffffffffffffffffffffffffffffffffffffffff9998610da0611624998c9b610ac9565b9a612203565b986109ab565b961690612575565b93169116038060ff1d90810118808202821582848304141760601b15611663576001916c010000000000000000000000009160601c935b091515160190565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82840981811082019003916c01000000000000000000000000818509836c0100000000000000000000000011156114075760019383826c01000000000000000000000000950360601c9211900360a01b179361165b565b935073ffffffffffffffffffffffffffffffffffffffff9262ffffff61161c6110a78561161661161082610da0611624996117178d9c8f610ac9565b9d999c5099505050505095505050506115d9565b90508160020b13155f6115b4565b9490939291948060020b8360020b81125f1461175a57505050505050505f90565b8391879161177161176b848961095d565b856109ab565b60020b13611b465750505061178583610a73565b905b73ffffffffffffffffffffffffffffffffffffffff6117a587612203565b16956c010000000000000000000000008211156119735781156108bb57817801000000000000000000000000000000000000000000000000045f8460020b125f146117fb57505050505050610a7091505f612594565b73ffffffffffffffffffffffffffffffffffffffff6118256110a76111c462ffffff8a168561262f565b1695888402898582041460601b156108bb5760601c947fffffffffffffffffffffffffffffffffffffffff00000000000000000000000085019485116104b1577fffffffffffffffffffffffffffffffffffffffff00000000000000000000000086019586116104b15773ffffffffffffffffffffffffffffffffffffffff61132b6110a76118e1966111ca6118d68c9862ffffff6118cf6118ca8a6118dc9c610ac9565b610a73565b169061262f565b95610974565b610d5d565b926c0100000000000000000000000003926c0100000000000000000000000084116104b157838160601b9173ffffffffffffffffffffffffffffffffffffffff81161402156108bb578361193b948204910615150161271d565b907fffffffffffffffffffffffffffffffffffffffff00000000000000000000000084019384116104b157610a709361124d9261271d565b91925f8460029693960b125f14611994575050505050610a7091505f612594565b6119b273ffffffffffffffffffffffffffffffffffffffff91612203565b169286850290878683041486151760601b156108bb5773ffffffffffffffffffffffffffffffffffffffff61132b6110a7611a0b9460601c96611a056118d662ffffff6119fe88610974565b168c61262f565b9061095d565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000810190856c01000000000000000000000000036c0100000000000000000000000081116104b157611ab49282611a84936c0100000000000000000000000011906c010000000000000000000000000382180218610b76565b9462ffffff7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000850193169061262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b15782611b05936c0100000000000000000000000011906c010000000000000000000000000382180218610b76565b937fffffffffffffffffffffffffffffffffffffffff00000000000000000000000081019081116104b157610a709461124d93611b419261273b565b6126ee565b611b5392610da091610ac9565b90611787565b9060020b908115610d305760020b0790565b81810292915f82127f80000000000000000000000000000000000000000000000000000000000000008214166104b15781840514901517156104b157565b8115610d30570490565b929183611bbf81612177565b0260020b84611bcd816121a5565b0260020b908260f81c9162ffffff8460e01c1660020b9361ffff8160d01c1660010b9563ffffffff8260b01c169460038111611e1c576003149788918215611ddf575b5081611dcc575b50611d5857611c268886611b59565b60020b611d58575f8613801590611db4575b8015611d9f575b8015611d7e575b611d58576103e884108015611d71575b8015611d64575b611d585760501c6fffffffff0000000000000000000000001683158482046c0100000000000000000000000014176305f5e10002156108bb576305f5e10090049573ffffffffffffffffffffffffffffffffffffffff611cbc89612203565b168714611d5857611d1d575b50506305f5e1001015611cf957611cdf9381612902565b6a4189374bc6a7ef9db22d0e11611cf557600190565b5f90565b83611d13611d0d611d18966111ca86610a73565b836109ab565b612902565b611cdf565b611d2a61176b888761095d565b918412918215611d4b575b5050611d42575f80611cc8565b50505050505f90565b60020b1390505f80611d35565b50505050505050505f90565b506305f5e1008414611c5d565b506347868c008411611c56565b50611d8886611038565b611d928985610cd3565b60020b9060020b12611c46565b50611daa8883610cd3565b60020b8613611c3f565b50627fffff611dc68960020b88611b6b565b13611c38565b905060038110156108c85715155f611c17565b62ffffff91925016158015611e08575b611dfb5787905f611c10565b5050505050505050505f90565b5060038110156108c8576002811415611def565b505050505050505050505f90565b91908160601b6305f5e1006c010000000000000000000000008483041484151702156108bb576305f5e10080910492115f14611e8d57611e69926128cf565b905b670de0b6b3a764000003670de0b6b3a764000081116104b157611cdf916121b6565b611e9a836111ca83610a73565b60020b927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008412627fffff8513176104b157611ed59361275e565b90611e6b565b9590949192948615611fb45790848685611ef494610e84565b611f0989838988839e999a98969c979e61159a565b8086111580611fab575b15611f2b575050505050611f279550612949565b9091565b9194909398969550611f3e929750610d5d565b96611f598787878787611f5461158a838661095d565b611739565b808911611f6c57505050611f2795612afb565b9250809394919650611f8557505050505050505f905f90565b611f9f84611f99611fa594611f279a610d5d565b9661095d565b906109ab565b92612949565b50861515611f13565b505050915050611fc99150806114bd81612177565b600191565b9395909491929484156120b25790868685611fe894610e84565b9793929061201d898b89866120176120118361200b8d9b9e9b611f9f838961095d565b9561095d565b8b6109ab565b92610f22565b80891115806120a9575b1561204857505050505061204290611f9f84611f279861095d565b92613055565b919496955092989661205b929850610d5d565b9061206a878787878782611067565b9788831161207e575050611f279650613128565b939496509450905081612097575050505050505f905f90565b611f27956120a491610d5d565b613055565b50861515612027565b505050925050506120c2816121a5565b0260020b9060019190565b81810291811591830414178202156108bb570490565b60020b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000081146104b1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b90610a70916121418282610cd3565b90825f8260020b129182612161575b50501561095d575b6111ca906120e3565b61216b9250611b59565b60020b1515825f612150565b60020b8015610d30577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276180590565b60020b8015610d3057620d89e80590565b90807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482116121f0575b670de0b6b3a764000091020490565b80156121e15763bac65e5b5f526004601cfd5b60020b908160ff1d82810118620d89e881116125495763ffffffff9192600182167001fffcb933bd6fad37aa2d162d1a5940010270010000000000000000000000000000000018916002811661252d575b60048116612511575b600881166124f5575b601081166124d9575b602081166124bd575b604081166124a1575b60808116612485575b6101008116612469575b610200811661244d575b6104008116612431575b6108008116612415575b61100081166123f9575b61200081166123dd575b61400081166123c1575b61800081166123a5575b620100008116612389575b62020000811661236e575b620400008116612353575b620800001661233a575b5f12612313575b0160201c90565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0461230c565b6b048a170391f7dc42444e8fa290910260801c90612305565b6d2216e584f5fa1ea926041bedfe9890920260801c916122fb565b916e5d6af8dedb81196699c329225ee6040260801c916122f0565b916f09aa508b5b7a84e1c677de54f3e99bc90260801c916122e5565b916f31be135f97d08fd981231505542fcfa60260801c916122da565b916f70d869a156d2a1b890bb3df62baf32f70260801c916122d0565b916fa9f746462d870fdf8a65dc1f90e061e50260801c916122c6565b916fd097f3bdfd2022b8845ad8f792aa58250260801c916122bc565b916fe7159475a2c29b7443b29c7fa6e889d90260801c916122b2565b916ff3392b0822b70005940c7a398e4b70f30260801c916122a8565b916ff987a7253ac413176f2b074cf7815e540260801c9161229e565b916ffcbe86c7900a88aedcffc83b479aa3a40260801c91612294565b916ffe5dee046a99a2a811c461f1969c30530260801c9161228a565b916fff2ea16466c96a3843ec78b326b528610260801c91612281565b916fff973b41fa98c081472e6896dfb254c00260801c91612278565b916fffcb9843d60f6159c9db58835c9266440260801c9161226f565b916fffe5caca7e10e4e61c3624eaa0941cd00260801c91612266565b916ffff2e50f5f656932ef12357cf3c7fdcc0260801c9161225d565b916ffff97272373d413259a46990580e213a0260801c91612254565b827f8b86327a000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b90801561258757808204910615150190565b6365244e4e5f526004601cfd5b91908083028315828583041417156125d1576c010000000000000000000000009060601c915b8294096125c45750565b6001019150811561140757565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828509818110820190038060601c156126125763ae47f7025f526004601cfd5b6c010000000000000000000000009160601c9060a01b01916125ba565b919082811560601b93612640575050565b90925060018316816c0100000000000000000000000018026c01000000000000000000000000189260011c90815b612676575050565b8080026b80000000000000000000000081019160801c908210176126e15760601c90600181166126ab575b60011c908161266e565b92818082026b80000000000000000000000081019282828510920418176126d7575b5060601c926126a1565b6126e157816126cd565b6349f7642b5f526004601cfd5b9080820290808383041483151760601b156108bb576c010000000000000000000000009160601c920915150190565b8181029291811591840414178102156108bb57808204910615150190565b929190612749828286613611565b930961275157565b9060010190811561140757565b9291928060020b5f81129081156128af575b506128a75762ffffff91610da05f61278793610ac9565b16916c0100000000000000000000000082111561283a5781156108bb576127d96127d362ffffff8478010000000000000000000000000000000000000000000000000493169485610d5d565b8261262f565b927fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083019283116104b15761280d9161262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b157610a7092613611565b9091826c0100000000000000000000000003926c0100000000000000000000000084116104b15762ffffff61287261287a938361262f565b93169061262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b157610a70926120cd565b505050505f90565b90506128c46128be848761095d565b5f6109ab565b60020b13155f612770565b9190916128df6128be828561095d565b60020b5f12156128fb5761278762ffffff91610da05f80610ac9565b5050505f90565b91909392938260020b8260020b811290811561292f575b50611d4257610da06127879262ffffff94610ac9565b905061293e61158a838861095d565b60020b13155f612919565b9094929193948115612aa2576129ba9073ffffffffffffffffffffffffffffffffffffffff61297c87610da0878b610ac9565b9361299f61298987612203565b9362ffffff6129978c612203565b971690612575565b828211612a93576129b29160601b611ba9565b915b16610950565b74010000000000000000000000000000000000000000811015612a865773ffffffffffffffffffffffffffffffffffffffff90811691168111612a6157612a00906136b6565b9360020b92838560020b14612a76575b612a1c81600196612132565b93612a278284610ac9565b60020b908560020b918212918215612a6b575b5050612a6157612a4a9082610ac9565b60020b8360020b14612a595750565b600193509150565b505f935083925050565b121590505f80612a3a565b93612a8090610a73565b93612a10565b6335278d125f526004601cfd5b612a9c91613552565b916129b4565b5050611fc992919350610ac9565b907ffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c000082019182136001166104b157565b9190915f83820193841291129080158216911516176104b157565b95939495801561304657612b0f8282613552565b73ffffffffffffffffffffffffffffffffffffffff612b2d85612203565b89159291168981028a81048214841760601b156108bb5760601c612b5081613a5a565b938a8c6c01000000000000000000000000811115612e195750506108bb57612b9862ffffff8b168c78010000000000000000000000000000000000000000000000000461262f565b9273ffffffffffffffffffffffffffffffffffffffff612bba6110a78b611038565b16917fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008d01918d83116104b1577fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082019182116104b157856c0100000000000000000000000003946c0100000000000000000000000086116104b1577fffffffffffffffffffffffffffffffffffffffff00000000000000000000000081019081116104b157612c7294612c6d926120cd565b6120cd565b818102918183041490151760601b156108bb5760601c612c928282610950565b15612e0a5791612cd6612cbb612cb6612cb1612cdb95612ce097610950565b613ca9565b613cbe565b612cd0612cc78d613cbe565b8c60020b611b6b565b90612ae0565b613ee5565b612ab0565b965b612ceb87610a73565b60020b92670de0b6b3a7640000840293808505670de0b6b3a764000014901517156104b157838913612dd0575b505050506001948282612d34670de0b6b3a76400008405613f8b565b925f81139081612dbc575b50612da4575b612d5290612d579361095d565b6109ab565b938482612d648186610ac9565b60020b9160020b918212928315612d87575b505050612a6157612a4a9082610ac9565b612d979293509061158a9161095d565b60020b13155f8281612d76565b505060020b627fffff81146104b15785018282612d45565b670de0b6b3a764000091500715155f612d3f565b879698509685858099611f5461158a612dee9798996111ca87610a73565b1015612dfe57505050505f905f90565b9391925f808080612d18565b505f9850889750505050505050565b915093929173ffffffffffffffffffffffffffffffffffffffff612e3c8b612203565b1690612e817fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082019362ffffff836c010000000000000000000000001198169061262f565b6c01000000000000000000000000036c0100000000000000000000000081116104b157612ecb9387612ec5936c010000000000000000000000000382180218610b76565b93613552565b917fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082019182116104b157612eff92613611565b908080613002575b612fdc5715612f7957886c01000000000000000000000000036c0100000000000000000000000081116104b157612f3d91611ba9565b6c01000000000000000000000000036c0100000000000000000000000081116104b157612f7391612cd6612cb6612cdb93613ca9565b96612ce2565b886c01000000000000000000000000036c0100000000000000000000000081116104b157612fa691611ba9565b6c0100000000000000000000000001806c01000000000000000000000000116104b157612f7391612cd6612cb6612cdb93613ca9565b50505093949092809692612ff09482611739565b10612ffb5760019190565b5f91508190565b50896c01000000000000000000000000036c0100000000000000000000000081116104b1576130319083611ba9565b6c010000000000000000000000001115612f07565b5050919350611fc99250610ac9565b94929394801561311e576130a673ffffffffffffffffffffffffffffffffffffffff9161308685610da0898b610ac9565b6130a061309289612203565b9562ffffff610f788c612203565b90613f15565b911673ffffffffffffffffffffffffffffffffffffffff821610612a61576130cd906136b6565b936130da82600196612132565b938460020b9060020b8112908115613111575b50612a61578060020b8460020b14613103575050565b90919350611fc99250610ac9565b90508160020b125f6130ed565b5060019493505050565b9095939492919281156135405761313f8783613552565b876c01000000000000000000000000840961352b575b73ffffffffffffffffffffffffffffffffffffffff6131766110a787611038565b1673ffffffffffffffffffffffffffffffffffffffff61319586612203565b1690808402928415938286820414851760601b156108bb5760601c936131ba85613cbe565b946c0100000000000000000000000087111561343e57506108bb57847801000000000000000000000000000000000000000000000000049061320162ffffff8c168361262f565b9083831194846c0100000000000000000000000003906c0100000000000000000000000082116104b1576132349261271d565b906c01000000000000000000000000036c0100000000000000000000000081116104b157613261916126ee565b9181841561342f579061327391610d5d565b905b6c0100000000000000000000000003906c0100000000000000000000000082116104b1576132a29261271d565b6132b26110a78a6111ca8a611038565b9180158061340f575b6133ec576132f561330f9493612cd6936132fa935f146133cd5773ffffffffffffffffffffffffffffffffffffffff612cb1921690610950565b613a5a565b612cd061330686613a5a565b8b60020b611b6b565b965b5f881261339f575b50505061334f81612d528460019861333a670de0b6b3a76400008205613f8b565b905f8112908161338b575b506121585761095d565b9061336461335e84849761095d565b826109ab565b9160020b9060020b81129081156131115750612a61578060020b8460020b14613103575050565b670de0b6b3a764000091500715155f613345565b8695975095838581986133b29596611067565b10156133c1575050505f905f90565b5f9391925f8080613319565b73ffffffffffffffffffffffffffffffffffffffff612cb19216610d5d565b505050509183613408611d0d612ff0966111ca8a96999a610a73565b9788611067565b508173ffffffffffffffffffffffffffffffffffffffff841611156132bb565b61343891610d5d565b90613275565b949362ffffff8c1693929150613454848861262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b157866c0100000000000000000000000003916c0100000000000000000000000083116104b1576134b0926134aa91610b76565b926126ee565b916c0100000000000000000000000003906c0100000000000000000000000082116104b1576134de9261273b565b90846c0100000000000000000000000003916c0100000000000000000000000083116104b15761352594610a4b6132f59361351f612cd696612cb195611ba9565b9261262f565b96613311565b600101806131555763ae47f7025f526004601cfd5b5050919350611f9f90611fc99361095d565b908160601b91816c0100000000000000000000000082850414821517021561357a5750900490565b816c010000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81840985811086019003920990825f03831692818111156114075783900480600302600218808202600203028082026002030280820260020302808202600203028082026002030280910260020302936001848483030494805f0304019211900302170290565b8181029291811582850482141783021561362c575050900490565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8492840985811086019003920990825f03831692818111156114075783900480600302600218808202600203028082026002030280820260020302808202600203028082026002030280910260020302936001848483030494805f0304019211900302170290565b73fffd8963efd1fc6a506488495d951d516396168273ffffffffffffffffffffffffffffffffffffffff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffd895d83011611613a185777ffffffffffffffffffffffffffffffffffffffff000000008160201b168081156101585760ff826fffffffffffffffffffffffffffffffff1060071b83811c67ffffffffffffffff1060061b1783811c63ffffffff1060051b1783811c61ffff1060041b1783811c821060031b177f07060605060205000602030205040001060502050303040105050304000000006f8421084210842108cc6318c6db6d54be85831c1c601f161a17169160808310155f14613a0c57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8182011c5b800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c80029081607f1c8260ff1c1c80029283607f1c8460ff1c1c80029485607f1c8660ff1c1c80029687607f1c8860ff1c1c80029889607f1c8a60ff1c1c80029a8b607f1c8c60ff1c1c80029c8d80607f1c9060ff1c1c800260cd1c6604000000000000169d60cc1c6608000000000000169c60cb1c6610000000000000169b60ca1c6620000000000000169a60c91c6640000000000000169960c81c6680000000000000169860c71c670100000000000000169760c61c670200000000000000169660c51c670400000000000000169560c41c670800000000000000169460c31c671000000000000000169360c21c672000000000000000169260c11c674000000000000000169160c01c67800000000000000016907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800160401b1717171717171717171717171717693627a301d71055774c85027ffffffffffffffffffffffffffffffffffd709b7e5480fba5a50fed5e62ffc556810160801d60020b906fdb2df09e81959a81455e260799a0632f0160801d60020b918282145f146139ce5750905090565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff613a0284612203565b161161091a575090565b905081607f031b6137e6565b73ffffffffffffffffffffffffffffffffffffffff907f61487524000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b806fffffffffffffffffffffffffffffffff1060071b81811c67ffffffffffffffff1060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1781811c60ff1060031b175f821315613c9c577ff8f9f9faf9fdfafbf9fdfcfdfafbfcfef9fafdfafcfcfbfefafafcfbffffffff6f8421084210842108cc6318c6db6d54be83831c1c601f161a1890811b609f1c7ffffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000816c465772b2bbbb5f824b15207a3001820260601d6d0388eaa27412d5aca026815d636e01820260601d6d0df99ac502031bf953eff472fdcc01820260601d6d13cdffb29d51d99322bdff5f221101820260601d6d0a0f742023def783a307a986912e01820260601d6d01920d8043ca89b5239253284e4201820260601d6c0b7a86d7375468fac667a0a52701917fffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832817ffffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f817fffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9818080806c29508e458543d8aa4df2abee78010260601d6d0139601a2efabe717e604cbb4894010260601d6d02247f7a7b6594320649aa03aba1010260601d010260601d010260601d010201056c058ca53c07678b86e4c893de470290609f0377b17217f7d1cf79abc9e3b39803f2f6af40f343267298b62d0201906bffffffffffffffffffffffff8260601d9216613c9557565b9060010190565b63e65fd7ca5f526004601cfd5b5f811215610a70576335278d125f526004601cfd5b806fffffffffffffffffffffffffffffffff1060071b81811c67ffffffffffffffff1060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1781811c60ff1060031b175f821315613c9c577ff8f9f9faf9fdfafbf9fdfcfdfafbfcfef9fafdfafcfcfbfefafafcfbffffffff6f8421084210842108cc6318c6db6d54be83831c1c601f161a1890811b609f1c7ffffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000816c465772b2bbbb5f824b15207a3001820260601d6d0388eaa27412d5aca026815d636e01820260601d6d0df99ac502031bf953eff472fdcc01820260601d6d13cdffb29d51d99322bdff5f221101820260601d6d0a0f742023def783a307a986912e01820260601d6d01920d8043ca89b5239253284e4201820260601d6c0b7a86d7375468fac667a0a52701917fffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832817ffffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f817fffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9818080806c29508e458543d8aa4df2abee78010260601d6d0139601a2efabe717e604cbb4894010260601d6d02247f7a7b6594320649aa03aba1010260601d010260601d010260601d010201056c058ca53c07678b86e4c893de470290609f0377b17217f7d1cf79abc9e3b39803f2f6af40f343267298b62d020160601d90565b670de0b6b3a7640000810290670de0b6b3a7640000820514820215613f08570590565b635c43740d5f526004601cfd5b90918015613f855773ffffffffffffffffffffffffffffffffffffffff809360601b921680820281613f478483611ba9565b14613f6d575b5090613f5c613f619284611ba9565b610950565b80820615159104011690565b8301838110613f4d579150613f819261273b565b1690565b50905090565b80628000000160181c15613fa6576335278d125f526004601cfd5b60020b9056fea2646970667358221220af6b9dd8133825057aae070b201f15d4820b8529a9698b75cd79f615ce357fe764736f6c634300081e0033000000000000000000000000000000000049c7bcbca294e63567b4d21eb765f1000000000000000000000000000052423c1db6b7ff8641b85a7eefc7b279188800000000000000000000000000000000e15009d51c6d57f7164f4ed4996ae55c
Deployed Bytecode
0x6101006040526004361015610012575f80fd5b5f3560e01c80633e33e1271461050a578063685056ff146102b3578063b50c7a9814610221578063c42d62c21461015c5763d5fac49314610051575f80fd5b34610158577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36016101a081126101585760a0136101585760e435801515810361015857610104359081151582036101585761012435908160020b82036101585760a0926100e061011f936100c4610589565b506100cd610628565b61016435906100da61060a565b90610772565b9095919492939290836101843560f881901c6001149060e01c62ffffff1660020b9190610144575b50505061011361060a565b9160c43560a435610b89565b92604092919251941515855260020b6020850152604084015260608301526080820152f35b61014f9395506108f5565b915f8080610108565b5f80fd5b34610158577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360161010081126101585760a0136101585760a43562ffffff811681036101585760c4359060e435906003821015610158576020926101d56101c261060a565b938263ffffffff8160901c169486611bb3565b9283610217575b836101ef575b5050506040519015158152f35b61020f935061ffff63ffffffff8360b01c169260d01c1660010b90611e2a565b8280806101e2565b82151593506101dc565b3461015857602061029161025460606102393661059a565b9497939691509194610249610628565b01936100da8561061a565b909793610278819894979398969062ffffff60018360f81c149260e01c1660020b90565b9190610299575b50505061028b9061061a565b91610b03565b604051908152f35b61028b939650906102aa92916108f5565b93908a8061027f565b34610158577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360161014081126101585760a0136101585760a4358060020b81036101585760c435908160020b82036101585761030e610579565b50610317610628565b6103295f9261010435906100da61060a565b9593809391939661034e610124359062ffffff60018360f81c149260e01c1660020b90565b92906104de575b5050508583838380848a9897819761036b61060a565b9a8b9a8b97889687968761037e9561144d565b9c8888858083878761039084896109ab565b9561039d90828587610d6a565b986103ad9397948b9c939c610f22565b946103b89488611067565b6103c191610950565b92878d6103ce828961095d565b6103d7916109ab565b916103e194610f22565b6103ea91610950565b60041c9b6103f791610ac9565b986104058a98838387610d6a565b9c929790919b936104159461159a565b94610420948b611739565b61042991610950565b956104339161095d565b61043d908a6109ab565b916104479461159a565b61045091610950565b60041c9362ffffff1663010000000163ffffffff81116104b15760a0947fffffffff00000000000000000000000000000000000000000000000000000000926040519586526020860152604085015260e01b16606083015215156080820152f35b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b85985087959493965090826104f2926108f5565b968792839260020b8360020b14159693509394610355565b3461015857602061029161052260606102393661059a565b909793610546819894979398969062ffffff60018360f81c149260e01c1660020b90565b919061055f575b5050506105599061061a565b916109e5565b6105599396509061057092916108f5565b93908a8061054d565b60e435908160020b820361015857565b61014435908160020b820361015857565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0161016081126101585760a0136101585760049060a4358060020b8103610158579060c4359060e4358060020b81036101585790610104358060020b8103610158579061012435906101443590565b6064358060020b81036101585790565b358060020b81036101585790565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000049c7bcbca294e63567b4d21eb765f11633141580610732575b806106f2575b806106e9575b80156106a9575b61068157565b7fd9711eeb000000000000000000000000000000000000000000000000000000005f5260045ffd5b5073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000007ca9919151b275fabea64a4f557aa1f61630141561067b565b50331515610674565b5073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000e15009d51c6d57f7164f4ed4996ae55c1633141561066e565b5073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000052423c1db6b7ff8641b85a7eefc7b279188816331415610668565b91928360f81c9260048410156108c85760d085901c61ffff1660010b92605086901c6fffffffff000000000000000000000000169160b087901c63ffffffff1680159084046c0100000000000000000000000014176305f5e10002156108bb576003861461089d57816107f46107f99262ffffff8a60e01c1660020b906109ab565b612132565b8161080381612177565b0260020b9180610812816121a5565b0260020b908260020b8481125f1461084157505050506305f5e10063ffffffff91955b920493949560901c1691565b90919297935061085a610854838961095d565b84610ac9565b60020b12610875575b50506305f5e10063ffffffff91610835565b63ffffffff9296506305f5e10091610890610896928861095d565b90610ac9565b9591610863565b505063ffffffff6305f5e10062ffffff8760e01c1660020b95610835565b63ad251c275f526004601cfd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9160048110156108c85760018114908161093f575b811561091f575b5061091a575090565b905090565b600291501480610930575b5f610911565b508060020b8260020b1261092a565b90508160020b8360020b139061090a565b919082018092116104b157565b9060020b9060020b02908160020b9182036104b157565b60020b60010190627fffff82137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008312176104b157565b9060020b9060020b01907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008212627fffff8313176104b157565b610a51610a1e610a709887610a6395610a4b999a610a4b99610a3599610a5b9860e05260c05260a05260805260a0519060c05190610e84565b9892939060a0989298519160c0519060e051610f22565b91896080519160a0519060c0519060e051611067565b90610950565b9560c0519061095d565b60a0516109ab565b9060c0519060e051610f22565b90565b60020b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008212627fffff8313176104b157565b9060020b9060020b0390627fffff82137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008312176104b157565b610a51610b3c610a709887610b6995610a4b999a610a4b99610b5399610a5b9860e05260c05260a05260805260a0519060c05190610e84565b9892939060a0989298519160c0519060e05161159a565b91896080519160a0519060c0519060e051611739565b9060c0519060e05161159a565b818102929181159184041417156104b157565b948699958199949893979295971515891515145f14610c5157610bb192859289888794611fce565b989098978915610c3b579181838a868484848b8f9b8f9d9c819b8f9d849e88935f14610c2c57610bea95610be5828d6109ab565b6109e5565b9e5f149b610c0a9a610c0f9d610c1557610c0396610b03565b988b61144d565b610b76565b60601c90565b610c2282610c2798610ac9565b610b03565b610c03565b610c36958b6109e5565b610bea565b505050505093505050505f905f905f905f905f90565b610c63928592898887949c9b9c611edb565b989098978915610c3b579181838a868484848e8c8f86610c0f9f9e9c8790610c0a9f868c955f14610cc45786610c2282610c9c98610ac9565b9f15610cb257610cab966109e5565b998b61144d565b610be582610cbf986109ab565b610cab565b86610cce96610b03565b610c9c565b60020b9060020b908115610d30577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82147fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008214166104b1570590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b919082039182116104b157565b9290919280610d7881612177565b0260020b9281610d87816121a5565b0260020b918493610daa87610da584610da08a89610ac9565b610cd3565b610ac9565b955f8760020b1315610e665750670de0b6b3a76400000394670de0b6b3a764000086116104b1576c1000000000000000000000000095807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048711610e53575b670de0b6b3a764000090870204968787039687116104b15762ffffff610e3f8192610da5610e4996610da0610e50998b610ac9565b16911690866120cd565b8094610d5d565b94565b8015610e0a5763bac65e5b5f526004601cfd5b5f986c10000000000000000000000000985089975090955092505050565b93919281610e9181612177565b0260020b9180610ea0816121a5565b0260020b928094610eb984610da585610da0868a610ac9565b915f8360020b1315610f135750670de0b6b3a76400000392670de0b6b3a764000084116104b15762ffffff610e3f8192610da5610e4996610da0610f0c610f048f9b610e509c6121b6565b9e8f90610d5d565b9c8b610ac9565b5f998a98509096509350505050565b93929190918360020b8560020b908082129081159161102a575b5015610f4c575050505050505f90565b8160020b13611022575b610f78610f72610f72610f809594610da062ffffff9589610ac9565b95612203565b931690612575565b91808273ffffffffffffffffffffffffffffffffffffffff821673ffffffffffffffffffffffffffffffffffffffff821611611017575b505073ffffffffffffffffffffffffffffffffffffffff821692831561100b5773ffffffffffffffffffffffffffffffffffffffff610fff938184169303169060601b61273b565b90808206151591040190565b62bfc9215f526004601cfd5b915091505f80610fb7565b935083610f56565b90508260020b12155f610f3c565b60020b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000081146104b1575f0390565b92919390935f938060020b8460020b81125f146114145750505f5b73ffffffffffffffffffffffffffffffffffffffff6110b3816110ac6110a786611038565b612203565b1695612203565b16966c0100000000000000000000000081111561126a5780156108bb57780100000000000000000000000000000000000000000000000004600284810b9083900b12611108575050505050610a709250612594565b9091929394506111188285610ac9565b9162ffffff86831193169073ffffffffffffffffffffffffffffffffffffffff61115c6110a7611148858761262f565b9461115289611038565b9060020b9061095d565b1693836c0100000000000000000000000003916c0100000000000000000000000083116104b1576111ca6111c46111cf946110a7948c896111d79b62ffffff9a845f1461125b57906111ad91610d5d565b925b1561125257906111be91610d5d565b9161271d565b97611038565b61095d565b94169061262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b15773ffffffffffffffffffffffffffffffffffffffff61121b93169061271d565b906c0100000000000000000000000003926c0100000000000000000000000084116104b157610a709361124d9261271d565b612594565b6111be91610d5d565b61126491610d5d565b926111af565b95969495939290600282810b9082900b1261128f5750505050505090610a7091612594565b9091928481959697500292848685041486151760601b156108bb576112b962ffffff83168761262f565b906112c962ffffff85168861262f565b966c0100000000000000000000000003926c0100000000000000000000000084116104b15773ffffffffffffffffffffffffffffffffffffffff6113386110a761134b976111ca611332611345988661132b6110a761133f9a6111ca8d611038565b16906126ee565b96611038565b16886126ee565b90610d5d565b90610b76565b926c0100000000000000000000000003906c0100000000000000000000000082116104b15760601c6c01000000000000000000000000036c0100000000000000000000000081116104b15761139f91610b76565b906c0100000000000000000000000003916c0100000000000000000000000083116104b1576113cd9261273b565b906c010000000000000000000000006113e68284613552565b92096113f7575b90610a7091612594565b60010190811561140757906113ed565b63ae47f7025f526004601cfd5b611427611421848661095d565b866109ab565b60020b1361143a57505050505050505f90565b81610da08561144893610ac9565b611082565b93929190938060020b8260020b811215908161157b575b5015611497579361147494612902565b90670de0b6b3a764000003670de0b6b3a764000081116104b157610a70916121b6565b50509050610da582610da0816114af6114c696612177565b0260020b826114bd816121a5565b0260020b610ac9565b905f8260020b131561157557670de0b6b3a764000003670de0b6b3a764000081116104b157807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff046c0100000000000000000000000011611562575b670de0b6b3a76400009060601b046c01000000000000000000000000036c0100000000000000000000000081116104b15762ffffff610a70921690612575565b80156115225763bac65e5b5f526004601cfd5b50505f90565b905061159061158a878661095d565b846109ab565b60020b135f611464565b92939190918460020b908460020b9180831290811561172b575b50156115c4575050505050505f90565b85916115d08483610ac9565b60020b126116db575b9262ffffff61161c6110a78561161661161073ffffffffffffffffffffffffffffffffffffffff9998610da0611624998c9b610ac9565b9a612203565b986109ab565b961690612575565b93169116038060ff1d90810118808202821582848304141760601b15611663576001916c010000000000000000000000009160601c935b091515160190565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82840981811082019003916c01000000000000000000000000818509836c0100000000000000000000000011156114075760019383826c01000000000000000000000000950360601c9211900360a01b179361165b565b935073ffffffffffffffffffffffffffffffffffffffff9262ffffff61161c6110a78561161661161082610da0611624996117178d9c8f610ac9565b9d999c5099505050505095505050506115d9565b90508160020b13155f6115b4565b9490939291948060020b8360020b81125f1461175a57505050505050505f90565b8391879161177161176b848961095d565b856109ab565b60020b13611b465750505061178583610a73565b905b73ffffffffffffffffffffffffffffffffffffffff6117a587612203565b16956c010000000000000000000000008211156119735781156108bb57817801000000000000000000000000000000000000000000000000045f8460020b125f146117fb57505050505050610a7091505f612594565b73ffffffffffffffffffffffffffffffffffffffff6118256110a76111c462ffffff8a168561262f565b1695888402898582041460601b156108bb5760601c947fffffffffffffffffffffffffffffffffffffffff00000000000000000000000085019485116104b1577fffffffffffffffffffffffffffffffffffffffff00000000000000000000000086019586116104b15773ffffffffffffffffffffffffffffffffffffffff61132b6110a76118e1966111ca6118d68c9862ffffff6118cf6118ca8a6118dc9c610ac9565b610a73565b169061262f565b95610974565b610d5d565b926c0100000000000000000000000003926c0100000000000000000000000084116104b157838160601b9173ffffffffffffffffffffffffffffffffffffffff81161402156108bb578361193b948204910615150161271d565b907fffffffffffffffffffffffffffffffffffffffff00000000000000000000000084019384116104b157610a709361124d9261271d565b91925f8460029693960b125f14611994575050505050610a7091505f612594565b6119b273ffffffffffffffffffffffffffffffffffffffff91612203565b169286850290878683041486151760601b156108bb5773ffffffffffffffffffffffffffffffffffffffff61132b6110a7611a0b9460601c96611a056118d662ffffff6119fe88610974565b168c61262f565b9061095d565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000810190856c01000000000000000000000000036c0100000000000000000000000081116104b157611ab49282611a84936c0100000000000000000000000011906c010000000000000000000000000382180218610b76565b9462ffffff7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000850193169061262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b15782611b05936c0100000000000000000000000011906c010000000000000000000000000382180218610b76565b937fffffffffffffffffffffffffffffffffffffffff00000000000000000000000081019081116104b157610a709461124d93611b419261273b565b6126ee565b611b5392610da091610ac9565b90611787565b9060020b908115610d305760020b0790565b81810292915f82127f80000000000000000000000000000000000000000000000000000000000000008214166104b15781840514901517156104b157565b8115610d30570490565b929183611bbf81612177565b0260020b84611bcd816121a5565b0260020b908260f81c9162ffffff8460e01c1660020b9361ffff8160d01c1660010b9563ffffffff8260b01c169460038111611e1c576003149788918215611ddf575b5081611dcc575b50611d5857611c268886611b59565b60020b611d58575f8613801590611db4575b8015611d9f575b8015611d7e575b611d58576103e884108015611d71575b8015611d64575b611d585760501c6fffffffff0000000000000000000000001683158482046c0100000000000000000000000014176305f5e10002156108bb576305f5e10090049573ffffffffffffffffffffffffffffffffffffffff611cbc89612203565b168714611d5857611d1d575b50506305f5e1001015611cf957611cdf9381612902565b6a4189374bc6a7ef9db22d0e11611cf557600190565b5f90565b83611d13611d0d611d18966111ca86610a73565b836109ab565b612902565b611cdf565b611d2a61176b888761095d565b918412918215611d4b575b5050611d42575f80611cc8565b50505050505f90565b60020b1390505f80611d35565b50505050505050505f90565b506305f5e1008414611c5d565b506347868c008411611c56565b50611d8886611038565b611d928985610cd3565b60020b9060020b12611c46565b50611daa8883610cd3565b60020b8613611c3f565b50627fffff611dc68960020b88611b6b565b13611c38565b905060038110156108c85715155f611c17565b62ffffff91925016158015611e08575b611dfb5787905f611c10565b5050505050505050505f90565b5060038110156108c8576002811415611def565b505050505050505050505f90565b91908160601b6305f5e1006c010000000000000000000000008483041484151702156108bb576305f5e10080910492115f14611e8d57611e69926128cf565b905b670de0b6b3a764000003670de0b6b3a764000081116104b157611cdf916121b6565b611e9a836111ca83610a73565b60020b927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008412627fffff8513176104b157611ed59361275e565b90611e6b565b9590949192948615611fb45790848685611ef494610e84565b611f0989838988839e999a98969c979e61159a565b8086111580611fab575b15611f2b575050505050611f279550612949565b9091565b9194909398969550611f3e929750610d5d565b96611f598787878787611f5461158a838661095d565b611739565b808911611f6c57505050611f2795612afb565b9250809394919650611f8557505050505050505f905f90565b611f9f84611f99611fa594611f279a610d5d565b9661095d565b906109ab565b92612949565b50861515611f13565b505050915050611fc99150806114bd81612177565b600191565b9395909491929484156120b25790868685611fe894610e84565b9793929061201d898b89866120176120118361200b8d9b9e9b611f9f838961095d565b9561095d565b8b6109ab565b92610f22565b80891115806120a9575b1561204857505050505061204290611f9f84611f279861095d565b92613055565b919496955092989661205b929850610d5d565b9061206a878787878782611067565b9788831161207e575050611f279650613128565b939496509450905081612097575050505050505f905f90565b611f27956120a491610d5d565b613055565b50861515612027565b505050925050506120c2816121a5565b0260020b9060019190565b81810291811591830414178202156108bb570490565b60020b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000081146104b1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b90610a70916121418282610cd3565b90825f8260020b129182612161575b50501561095d575b6111ca906120e3565b61216b9250611b59565b60020b1515825f612150565b60020b8015610d30577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276180590565b60020b8015610d3057620d89e80590565b90807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482116121f0575b670de0b6b3a764000091020490565b80156121e15763bac65e5b5f526004601cfd5b60020b908160ff1d82810118620d89e881116125495763ffffffff9192600182167001fffcb933bd6fad37aa2d162d1a5940010270010000000000000000000000000000000018916002811661252d575b60048116612511575b600881166124f5575b601081166124d9575b602081166124bd575b604081166124a1575b60808116612485575b6101008116612469575b610200811661244d575b6104008116612431575b6108008116612415575b61100081166123f9575b61200081166123dd575b61400081166123c1575b61800081166123a5575b620100008116612389575b62020000811661236e575b620400008116612353575b620800001661233a575b5f12612313575b0160201c90565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0461230c565b6b048a170391f7dc42444e8fa290910260801c90612305565b6d2216e584f5fa1ea926041bedfe9890920260801c916122fb565b916e5d6af8dedb81196699c329225ee6040260801c916122f0565b916f09aa508b5b7a84e1c677de54f3e99bc90260801c916122e5565b916f31be135f97d08fd981231505542fcfa60260801c916122da565b916f70d869a156d2a1b890bb3df62baf32f70260801c916122d0565b916fa9f746462d870fdf8a65dc1f90e061e50260801c916122c6565b916fd097f3bdfd2022b8845ad8f792aa58250260801c916122bc565b916fe7159475a2c29b7443b29c7fa6e889d90260801c916122b2565b916ff3392b0822b70005940c7a398e4b70f30260801c916122a8565b916ff987a7253ac413176f2b074cf7815e540260801c9161229e565b916ffcbe86c7900a88aedcffc83b479aa3a40260801c91612294565b916ffe5dee046a99a2a811c461f1969c30530260801c9161228a565b916fff2ea16466c96a3843ec78b326b528610260801c91612281565b916fff973b41fa98c081472e6896dfb254c00260801c91612278565b916fffcb9843d60f6159c9db58835c9266440260801c9161226f565b916fffe5caca7e10e4e61c3624eaa0941cd00260801c91612266565b916ffff2e50f5f656932ef12357cf3c7fdcc0260801c9161225d565b916ffff97272373d413259a46990580e213a0260801c91612254565b827f8b86327a000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b90801561258757808204910615150190565b6365244e4e5f526004601cfd5b91908083028315828583041417156125d1576c010000000000000000000000009060601c915b8294096125c45750565b6001019150811561140757565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828509818110820190038060601c156126125763ae47f7025f526004601cfd5b6c010000000000000000000000009160601c9060a01b01916125ba565b919082811560601b93612640575050565b90925060018316816c0100000000000000000000000018026c01000000000000000000000000189260011c90815b612676575050565b8080026b80000000000000000000000081019160801c908210176126e15760601c90600181166126ab575b60011c908161266e565b92818082026b80000000000000000000000081019282828510920418176126d7575b5060601c926126a1565b6126e157816126cd565b6349f7642b5f526004601cfd5b9080820290808383041483151760601b156108bb576c010000000000000000000000009160601c920915150190565b8181029291811591840414178102156108bb57808204910615150190565b929190612749828286613611565b930961275157565b9060010190811561140757565b9291928060020b5f81129081156128af575b506128a75762ffffff91610da05f61278793610ac9565b16916c0100000000000000000000000082111561283a5781156108bb576127d96127d362ffffff8478010000000000000000000000000000000000000000000000000493169485610d5d565b8261262f565b927fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083019283116104b15761280d9161262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b157610a7092613611565b9091826c0100000000000000000000000003926c0100000000000000000000000084116104b15762ffffff61287261287a938361262f565b93169061262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b157610a70926120cd565b505050505f90565b90506128c46128be848761095d565b5f6109ab565b60020b13155f612770565b9190916128df6128be828561095d565b60020b5f12156128fb5761278762ffffff91610da05f80610ac9565b5050505f90565b91909392938260020b8260020b811290811561292f575b50611d4257610da06127879262ffffff94610ac9565b905061293e61158a838861095d565b60020b13155f612919565b9094929193948115612aa2576129ba9073ffffffffffffffffffffffffffffffffffffffff61297c87610da0878b610ac9565b9361299f61298987612203565b9362ffffff6129978c612203565b971690612575565b828211612a93576129b29160601b611ba9565b915b16610950565b74010000000000000000000000000000000000000000811015612a865773ffffffffffffffffffffffffffffffffffffffff90811691168111612a6157612a00906136b6565b9360020b92838560020b14612a76575b612a1c81600196612132565b93612a278284610ac9565b60020b908560020b918212918215612a6b575b5050612a6157612a4a9082610ac9565b60020b8360020b14612a595750565b600193509150565b505f935083925050565b121590505f80612a3a565b93612a8090610a73565b93612a10565b6335278d125f526004601cfd5b612a9c91613552565b916129b4565b5050611fc992919350610ac9565b907ffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c000082019182136001166104b157565b9190915f83820193841291129080158216911516176104b157565b95939495801561304657612b0f8282613552565b73ffffffffffffffffffffffffffffffffffffffff612b2d85612203565b89159291168981028a81048214841760601b156108bb5760601c612b5081613a5a565b938a8c6c01000000000000000000000000811115612e195750506108bb57612b9862ffffff8b168c78010000000000000000000000000000000000000000000000000461262f565b9273ffffffffffffffffffffffffffffffffffffffff612bba6110a78b611038565b16917fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008d01918d83116104b1577fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082019182116104b157856c0100000000000000000000000003946c0100000000000000000000000086116104b1577fffffffffffffffffffffffffffffffffffffffff00000000000000000000000081019081116104b157612c7294612c6d926120cd565b6120cd565b818102918183041490151760601b156108bb5760601c612c928282610950565b15612e0a5791612cd6612cbb612cb6612cb1612cdb95612ce097610950565b613ca9565b613cbe565b612cd0612cc78d613cbe565b8c60020b611b6b565b90612ae0565b613ee5565b612ab0565b965b612ceb87610a73565b60020b92670de0b6b3a7640000840293808505670de0b6b3a764000014901517156104b157838913612dd0575b505050506001948282612d34670de0b6b3a76400008405613f8b565b925f81139081612dbc575b50612da4575b612d5290612d579361095d565b6109ab565b938482612d648186610ac9565b60020b9160020b918212928315612d87575b505050612a6157612a4a9082610ac9565b612d979293509061158a9161095d565b60020b13155f8281612d76565b505060020b627fffff81146104b15785018282612d45565b670de0b6b3a764000091500715155f612d3f565b879698509685858099611f5461158a612dee9798996111ca87610a73565b1015612dfe57505050505f905f90565b9391925f808080612d18565b505f9850889750505050505050565b915093929173ffffffffffffffffffffffffffffffffffffffff612e3c8b612203565b1690612e817fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082019362ffffff836c010000000000000000000000001198169061262f565b6c01000000000000000000000000036c0100000000000000000000000081116104b157612ecb9387612ec5936c010000000000000000000000000382180218610b76565b93613552565b917fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082019182116104b157612eff92613611565b908080613002575b612fdc5715612f7957886c01000000000000000000000000036c0100000000000000000000000081116104b157612f3d91611ba9565b6c01000000000000000000000000036c0100000000000000000000000081116104b157612f7391612cd6612cb6612cdb93613ca9565b96612ce2565b886c01000000000000000000000000036c0100000000000000000000000081116104b157612fa691611ba9565b6c0100000000000000000000000001806c01000000000000000000000000116104b157612f7391612cd6612cb6612cdb93613ca9565b50505093949092809692612ff09482611739565b10612ffb5760019190565b5f91508190565b50896c01000000000000000000000000036c0100000000000000000000000081116104b1576130319083611ba9565b6c010000000000000000000000001115612f07565b5050919350611fc99250610ac9565b94929394801561311e576130a673ffffffffffffffffffffffffffffffffffffffff9161308685610da0898b610ac9565b6130a061309289612203565b9562ffffff610f788c612203565b90613f15565b911673ffffffffffffffffffffffffffffffffffffffff821610612a61576130cd906136b6565b936130da82600196612132565b938460020b9060020b8112908115613111575b50612a61578060020b8460020b14613103575050565b90919350611fc99250610ac9565b90508160020b125f6130ed565b5060019493505050565b9095939492919281156135405761313f8783613552565b876c01000000000000000000000000840961352b575b73ffffffffffffffffffffffffffffffffffffffff6131766110a787611038565b1673ffffffffffffffffffffffffffffffffffffffff61319586612203565b1690808402928415938286820414851760601b156108bb5760601c936131ba85613cbe565b946c0100000000000000000000000087111561343e57506108bb57847801000000000000000000000000000000000000000000000000049061320162ffffff8c168361262f565b9083831194846c0100000000000000000000000003906c0100000000000000000000000082116104b1576132349261271d565b906c01000000000000000000000000036c0100000000000000000000000081116104b157613261916126ee565b9181841561342f579061327391610d5d565b905b6c0100000000000000000000000003906c0100000000000000000000000082116104b1576132a29261271d565b6132b26110a78a6111ca8a611038565b9180158061340f575b6133ec576132f561330f9493612cd6936132fa935f146133cd5773ffffffffffffffffffffffffffffffffffffffff612cb1921690610950565b613a5a565b612cd061330686613a5a565b8b60020b611b6b565b965b5f881261339f575b50505061334f81612d528460019861333a670de0b6b3a76400008205613f8b565b905f8112908161338b575b506121585761095d565b9061336461335e84849761095d565b826109ab565b9160020b9060020b81129081156131115750612a61578060020b8460020b14613103575050565b670de0b6b3a764000091500715155f613345565b8695975095838581986133b29596611067565b10156133c1575050505f905f90565b5f9391925f8080613319565b73ffffffffffffffffffffffffffffffffffffffff612cb19216610d5d565b505050509183613408611d0d612ff0966111ca8a96999a610a73565b9788611067565b508173ffffffffffffffffffffffffffffffffffffffff841611156132bb565b61343891610d5d565b90613275565b949362ffffff8c1693929150613454848861262f565b6c0100000000000000000000000003906c0100000000000000000000000082116104b157866c0100000000000000000000000003916c0100000000000000000000000083116104b1576134b0926134aa91610b76565b926126ee565b916c0100000000000000000000000003906c0100000000000000000000000082116104b1576134de9261273b565b90846c0100000000000000000000000003916c0100000000000000000000000083116104b15761352594610a4b6132f59361351f612cd696612cb195611ba9565b9261262f565b96613311565b600101806131555763ae47f7025f526004601cfd5b5050919350611f9f90611fc99361095d565b908160601b91816c0100000000000000000000000082850414821517021561357a5750900490565b816c010000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81840985811086019003920990825f03831692818111156114075783900480600302600218808202600203028082026002030280820260020302808202600203028082026002030280910260020302936001848483030494805f0304019211900302170290565b8181029291811582850482141783021561362c575050900490565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8492840985811086019003920990825f03831692818111156114075783900480600302600218808202600203028082026002030280820260020302808202600203028082026002030280910260020302936001848483030494805f0304019211900302170290565b73fffd8963efd1fc6a506488495d951d516396168273ffffffffffffffffffffffffffffffffffffffff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffd895d83011611613a185777ffffffffffffffffffffffffffffffffffffffff000000008160201b168081156101585760ff826fffffffffffffffffffffffffffffffff1060071b83811c67ffffffffffffffff1060061b1783811c63ffffffff1060051b1783811c61ffff1060041b1783811c821060031b177f07060605060205000602030205040001060502050303040105050304000000006f8421084210842108cc6318c6db6d54be85831c1c601f161a17169160808310155f14613a0c57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8182011c5b800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c80029081607f1c8260ff1c1c80029283607f1c8460ff1c1c80029485607f1c8660ff1c1c80029687607f1c8860ff1c1c80029889607f1c8a60ff1c1c80029a8b607f1c8c60ff1c1c80029c8d80607f1c9060ff1c1c800260cd1c6604000000000000169d60cc1c6608000000000000169c60cb1c6610000000000000169b60ca1c6620000000000000169a60c91c6640000000000000169960c81c6680000000000000169860c71c670100000000000000169760c61c670200000000000000169660c51c670400000000000000169560c41c670800000000000000169460c31c671000000000000000169360c21c672000000000000000169260c11c674000000000000000169160c01c67800000000000000016907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800160401b1717171717171717171717171717693627a301d71055774c85027ffffffffffffffffffffffffffffffffffd709b7e5480fba5a50fed5e62ffc556810160801d60020b906fdb2df09e81959a81455e260799a0632f0160801d60020b918282145f146139ce5750905090565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff613a0284612203565b161161091a575090565b905081607f031b6137e6565b73ffffffffffffffffffffffffffffffffffffffff907f61487524000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b806fffffffffffffffffffffffffffffffff1060071b81811c67ffffffffffffffff1060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1781811c60ff1060031b175f821315613c9c577ff8f9f9faf9fdfafbf9fdfcfdfafbfcfef9fafdfafcfcfbfefafafcfbffffffff6f8421084210842108cc6318c6db6d54be83831c1c601f161a1890811b609f1c7ffffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000816c465772b2bbbb5f824b15207a3001820260601d6d0388eaa27412d5aca026815d636e01820260601d6d0df99ac502031bf953eff472fdcc01820260601d6d13cdffb29d51d99322bdff5f221101820260601d6d0a0f742023def783a307a986912e01820260601d6d01920d8043ca89b5239253284e4201820260601d6c0b7a86d7375468fac667a0a52701917fffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832817ffffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f817fffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9818080806c29508e458543d8aa4df2abee78010260601d6d0139601a2efabe717e604cbb4894010260601d6d02247f7a7b6594320649aa03aba1010260601d010260601d010260601d010201056c058ca53c07678b86e4c893de470290609f0377b17217f7d1cf79abc9e3b39803f2f6af40f343267298b62d0201906bffffffffffffffffffffffff8260601d9216613c9557565b9060010190565b63e65fd7ca5f526004601cfd5b5f811215610a70576335278d125f526004601cfd5b806fffffffffffffffffffffffffffffffff1060071b81811c67ffffffffffffffff1060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1781811c60ff1060031b175f821315613c9c577ff8f9f9faf9fdfafbf9fdfcfdfafbfcfef9fafdfafcfcfbfefafafcfbffffffff6f8421084210842108cc6318c6db6d54be83831c1c601f161a1890811b609f1c7ffffffffffffffff5f6af8f7b3396644f18e15796000000000000000000000000816c465772b2bbbb5f824b15207a3001820260601d6d0388eaa27412d5aca026815d636e01820260601d6d0df99ac502031bf953eff472fdcc01820260601d6d13cdffb29d51d99322bdff5f221101820260601d6d0a0f742023def783a307a986912e01820260601d6d01920d8043ca89b5239253284e4201820260601d6c0b7a86d7375468fac667a0a52701917fffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832817ffffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f817fffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9818080806c29508e458543d8aa4df2abee78010260601d6d0139601a2efabe717e604cbb4894010260601d6d02247f7a7b6594320649aa03aba1010260601d010260601d010260601d010201056c058ca53c07678b86e4c893de470290609f0377b17217f7d1cf79abc9e3b39803f2f6af40f343267298b62d020160601d90565b670de0b6b3a7640000810290670de0b6b3a7640000820514820215613f08570590565b635c43740d5f526004601cfd5b90918015613f855773ffffffffffffffffffffffffffffffffffffffff809360601b921680820281613f478483611ba9565b14613f6d575b5090613f5c613f619284611ba9565b610950565b80820615159104011690565b8301838110613f4d579150613f819261273b565b1690565b50905090565b80628000000160181c15613fa6576335278d125f526004601cfd5b60020b9056fea2646970667358221220af6b9dd8133825057aae070b201f15d4820b8529a9698b75cd79f615ce357fe764736f6c634300081e0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000049c7bcbca294e63567b4d21eb765f1000000000000000000000000000052423c1db6b7ff8641b85a7eefc7b279188800000000000000000000000000000000e15009d51c6d57f7164f4ed4996ae55c
-----Decoded View---------------
Arg [0] : hub_ (address): 0x000000000049C7bcBCa294E63567b4D21EB765f1
Arg [1] : hook_ (address): 0x000052423c1dB6B7ff8641b85A7eEfc7B2791888
Arg [2] : quoter_ (address): 0x00000000E15009D51C6d57f7164f4Ed4996ae55C
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000000000000049c7bcbca294e63567b4d21eb765f1
Arg [1] : 000000000000000000000000000052423c1db6b7ff8641b85a7eefc7b2791888
Arg [2] : 00000000000000000000000000000000e15009d51c6d57f7164f4ed4996ae55c
🤖 Code Reader
Generate instant answers for your smart contract questions using Al Models. Read more.
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.


