From 7e1ae74d2b2b325a82dfe687f80b79f6b8dffda5 Mon Sep 17 00:00:00 2001 From: saucepoint Date: Fri, 15 Nov 2024 21:35:20 +0700 Subject: [PATCH] arb sepolia --- .../421614/run-latest.json | 71 +++++++++++++++++++ .../421614/run-latest.json | 55 ++++++++++++++ .../421614/run-latest.json | 55 ++++++++++++++ .../DeployPosm.s.sol/421614/run-latest.json | 63 ++++++++++++++++ .../DeployQuoter.s.sol/421614/run-latest.json | 55 ++++++++++++++ .../421614/run-latest.json | 55 ++++++++++++++ deploy.sh | 12 ---- foundry.toml | 1 + 8 files changed, 355 insertions(+), 12 deletions(-) create mode 100644 broadcast/01_PoolManager.s.sol/421614/run-latest.json create mode 100644 broadcast/02_PoolModifyLiquidityTest.s.sol/421614/run-latest.json create mode 100644 broadcast/03_PoolSwapTest.s.sol/421614/run-latest.json create mode 100644 broadcast/DeployPosm.s.sol/421614/run-latest.json create mode 100644 broadcast/DeployQuoter.s.sol/421614/run-latest.json create mode 100644 broadcast/DeployStateView.s.sol/421614/run-latest.json delete mode 100755 deploy.sh diff --git a/broadcast/01_PoolManager.s.sol/421614/run-latest.json b/broadcast/01_PoolManager.s.sol/421614/run-latest.json new file mode 100644 index 00000000..76aa94a9 --- /dev/null +++ b/broadcast/01_PoolManager.s.sol/421614/run-latest.json @@ -0,0 +1,71 @@ +{ + "transactions": [ + { + "hash": "0xbe34421dbed56d9c6449e7fe0d7f62e714b940d0d5c13b9fa41a5508d93e6267", + "transactionType": "CREATE", + "contractName": "PoolManager", + "contractAddress": "0x6550fa0d92b38f52c37d32d71084a7b270226ba5", + "function": null, + "arguments": [ + "0x5b73C5498c1E3b4dbA84de0F1833c4a029d90519" + ], + "transaction": { + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "gas": "0x6e2772", + "value": "0x0", + "input": "0x60a03460a057601f615e8238819003918201601f19168301916001600160401b0383118484101760a45780849260209460405283398101031260a057516001600160a01b0381169081900360a0575f80546001600160a01b0319168217815560405191907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a330608052615dc990816100b98239608051816135260152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60a0806040526004361015610012575f80fd5b5f3560e01c908162fdd58e14612cd55750806301ffc9a714612c16578063095bcdb614612b6c5780630b0d9c0914612ae057806311da60b414612a85578063156e29f6146129d55780631e2eaeaf1461299b578063234266d7146126fc5780632d7713891461265157806335fd631a146125dd5780633dd45adb14612579578063426a8493146124f557806348c894911461226a5780635275965114612152578063558a72971461207b578063598af9e714611fe35780635a6bcfda1461144f5780636276cbbe14610f965780637e87ce7d14610e5957806380f0b44c14610d875780638161b87414610c315780638da5cb5b14610be157806397e8cd4e14610b7e5780639bf6645f14610b31578063a584119414610a66578063b6363cf2146109d5578063dbd035ff1461097f578063f02de3b21461092e578063f135baaa146108f4578063f2fde38b14610848578063f3cd914c146104ff578063f5298aca146103345763fe99049a14610186575f80fd5b346103305760807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576101bd612d3f565b6101c5612d62565b90604435917f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac72885961027973ffffffffffffffffffffffffffffffffffffffff80606435951693843314158061030d575b610287575b845f52600460205260405f20875f5260205260405f2061023a878254612fed565b90551693845f52600460205260405f20865f5260205260405f2061025f828254612ffa565b905560408051338152602081019290925290918291820190565b0390a4602060405160018152f35b845f52600560205260405f208233165f5260205260405f20875f5260205260405f2054867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036102da575b5050610219565b6102e391612fed565b855f52600560205260405f208333165f5260205260405f20885f5260205260405f20555f866102d3565b50845f52600360205260405f208233165f5260205260ff60405f20541615610214565b5f80fd5b346103305761034236612d85565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d7577f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac7288596103ed73ffffffffffffffffffffffffffffffffffffffff805f9516956103bb6103b3866130aa565b3390896130f0565b169233841415806104a0575b6103f2575b8385526004602052604085208686526020526040852061025f828254612fed565b0390a4005b83855260056020526040852073ffffffffffffffffffffffffffffffffffffffff33168652602052604085208686526020526040852054817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610459575b50506103cc565b61046291612fed565b84865260056020526040862073ffffffffffffffffffffffffffffffffffffffff331687526020526040862087875260205260408620558681610452565b5083855260036020526040852073ffffffffffffffffffffffffffffffffffffffff3316865260205260ff604086205416156103c7565b7f54e3ca0d000000000000000000000000000000000000000000000000000000005f5260045ffd5b34610330576101207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761053836612e81565b60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c360112610330576040519061056f82612df6565b60a4358015158103610330578252602082019060c435825260e4359073ffffffffffffffffffffffffffffffffffffffff8216820361033057604084019182526101043567ffffffffffffffff8111610330576105d0903690600401612f4d565b9290937fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75761060261350f565b51156108205760a0822092835f52600660205260405f209061062382613576565b60808401958482828a8a5173ffffffffffffffffffffffffffffffffffffffff169361064e94613b44565b90949195606088015160020b908b511515905173ffffffffffffffffffffffffffffffffffffffff1691604051986106858a612e12565b895260208901526040880152606087015262ffffff166080860152885115155f149862ffffff6107a2986106db61078f9860209d6108005773ffffffffffffffffffffffffffffffffffffffff8b511695614959565b9492968291926107d3575b505073ffffffffffffffffffffffffffffffffffffffff845116938e6fffffffffffffffffffffffffffffffff60408301511691015160020b90604051958860801d600f0b875288600f0b60208801526040870152606086015260808501521660a08301527f40e9cecb9f5f1f1c5b9c97dec2917b7ee92e57ba5563708daca94dd84ad7112f60c03393a38673ffffffffffffffffffffffffffffffffffffffff8a5116613d81565b809491946107aa575b5050823391613652565b604051908152f35b73ffffffffffffffffffffffffffffffffffffffff6107cc9251169083613652565b8480610798565b73ffffffffffffffffffffffffffffffffffffffff165f5260018f5260405f209081540190558e806106e6565b73ffffffffffffffffffffffffffffffffffffffff8e8c01511695614959565b7fbe8b8507000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330577fffffffffffffffffffffffff00000000000000000000000000000000000000006108a0612d3f565b73ffffffffffffffffffffffffffffffffffffffff5f54916108c58284163314613007565b1691829116175f55337f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576004355c5f5260205ff35b34610330575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057602073ffffffffffffffffffffffffffffffffffffffff60025416604051908152f35b346103305761098d36612f7b565b6040519160408360208152836020820152019160051b8301916020806040850193925b83355481520191019084838210156109cc5750602080916109b0565b60408186030190f35b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610a0c612d3f565b73ffffffffffffffffffffffffffffffffffffffff610a29612d62565b91165f52600360205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f52602052602060ff60405f2054166040519015158152f35b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610a9d612d3f565b73ffffffffffffffffffffffffffffffffffffffff81169081610ae15750505f7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95d005b610aea90613a92565b907f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95d7f1e0745a7db1623981f0b2a5d4232364c00787266eb75ad546f190e6cebe9bd955d005b3461033057610b3f36612f7b565b6040519160408360208152836020820152019160051b8301916020806040850193925b83355c81520191019084838210156109cc575060208091610b62565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305773ffffffffffffffffffffffffffffffffffffffff610bca612d3f565b165f526001602052602060405f2054604051908152f35b34610330575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057602073ffffffffffffffffffffffffffffffffffffffff5f5416604051908152f35b346103305760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610c68612d3f565b610c70612d62565b60443573ffffffffffffffffffffffffffffffffffffffff600254163303610d5f5773ffffffffffffffffffffffffffffffffffffffff821680151580610d1f575b610cf7576020936107a29280610cef5750815f526001855260405f20549384925b5f526001865260405f20610ce8848254612fed565b90556131f8565b938492610cd3565b7fc79e5948000000000000000000000000000000000000000000000000000000005f5260045ffd5b508073ffffffffffffffffffffffffffffffffffffffff7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95c1614610cb2565b7f48f5c3ed000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610dbe612d3f565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d757335f90815273ffffffffffffffffffffffffffffffffffffffff8216602052604090205c610e146024356130aa565b9081600f0b03610e3157610e2f9133915f03600f0b906130f0565b005b7fbda73abf000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610e9136612e81565b610e99612e6f565b9073ffffffffffffffffffffffffffffffffffffffff600254163303610d5f57623e900062fff0008316106103e9610fff8416101615610f6557602060a07fe9c42593e71f84403b84352cd168d693e2c9fcd1fdbcc3feb21d92b43e6696f9922092835f526006825260405f20610f0f81613576565b805479ffffff00000000000000000000000000000000000000000000008360b81b16907fffffffffffff000000ffffffffffffffffffffffffffffffffffffffffffffff1617905562ffffff60405191168152a2005b62ffffff827fa7abe2f7000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b346103305760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610fce36612e81565b60a4359073ffffffffffffffffffffffffffffffffffffffff821680830361033057610ff861350f565b6060820191825160020b617fff81136114245750825160020b600181126113f9575073ffffffffffffffffffffffffffffffffffffffff815116602082019073ffffffffffffffffffffffffffffffffffffffff825116808210156113c2575050608082019073ffffffffffffffffffffffffffffffffffffffff82511690604084019161108c62ffffff845116826139b7565b1561139757506110a162ffffff835116613a75565b96835173ffffffffffffffffffffffffffffffffffffffff8116908133036112e0575b505060a0852090815f52600660205260405f2090815473ffffffffffffffffffffffffffffffffffffffff166112b8576020997fdd466e674ea557f56295e2d0218a125ea4b4f0f6f3307b95f85e6110838d6438927cffffff000000000000000000000000000000000000000000000000000061114260a0946145fc565b9260d01b168a76ffffff000000000000000000000000000000000000000084861b161717905562ffffff73ffffffffffffffffffffffffffffffffffffffff808a5116965116965116995160020b73ffffffffffffffffffffffffffffffffffffffff885116906040519b8c528c8c015260408b01528860608b015260020b98896080820152a45173ffffffffffffffffffffffffffffffffffffffff8116908133036111f4575b8585604051908152f35b61100016611203575b806111ea565b6112af9261128d604051937f6fe7e6eb0000000000000000000000000000000000000000000000000000000088860152336024860152604485019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b60e48301528361010483015261010482526112aa61012483612e2e565b613f25565b508280806111fd565b7f7983c051000000000000000000000000000000000000000000000000000000005f5260045ffd5b612000166112ef575b806110c4565b61139090604051907fdc98354e00000000000000000000000000000000000000000000000000000000602083015233602483015261137a604483018973ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8860e483015260e482526112aa61010483612e2e565b50886112e9565b7fe65af6a0000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b60449250604051917f6e6c983000000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b7fe9e90588000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b7fb70024f8000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b34610330576101407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761148836612e81565b60807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c36011261033057604051906114bf82612dda565b60a4358060020b810361033057825260c4358060020b810361033057602083015260e43560408301526101043560608301526101243567ffffffffffffffff811161033057611512903690600401612f4d565b90927fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75761154361350f565b60a0832093845f52600660205260405f20608052611562608051613576565b608084015173ffffffffffffffffffffffffffffffffffffffff811690813303611ede575b5050815160020b92602083015160020b916115a56040850151613785565b93606087015160020b9760608201516040519960c08b018b811067ffffffffffffffff821117611eb157604052338b528860208c01528660408c015287600f0b60608c015260808b015260a08a01525f9185881215611e7a577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276188812611e4e57620d89e88613611e22576040519261163c84612dda565b5f84525f60208501525f60408501525f606085015287600f0b611b25575b600460805101978960020b5f528860205260405f20988860020b5f5260205260405f206080515460a01c60020b8b81125f14611acf575060028060018c0154600184015490039b015491015490039b5b60a073ffffffffffffffffffffffffffffffffffffffff825116910151906040519160268301528960068301528b600383015281525f603a600c83012091816040820152816020820152525f5260066080510160205260405f20976fffffffffffffffffffffffffffffffff8954169982600f0b155f14611a72578a15611a4a5761176f61176960409f9b61184e9c6118609e5b60018301956117616002611755848a548503615703565b95019283548503615703565b9655556130aa565b916130aa565b6fffffffffffffffffffffffffffffffff169060801b179a8b965f84600f0b126119dc575b5082600f0b611898575b5050506117c46117b58560801d8360801d01613785565b9185600f0b90600f0b01613785565b6fffffffffffffffffffffffffffffffff169060801b1791815160020b90602083015160020b8c8401516060850151918e5194855260208501528d84015260608301527ff208f4912782fd25c7f114ca3723a2d5dd6f3bcc3ac8db5af63baa85f711d5ec60803393a38873ffffffffffffffffffffffffffffffffffffffff60808201511661385b565b8094919461186c575b50833391613652565b82519182526020820152f35b6118929073ffffffffffffffffffffffffffffffffffffffff6080840151169083613652565b85611857565b60805154929350909173ffffffffffffffffffffffffffffffffffffffff81169060a01c60020b828112156118fe575050906118f2926118e76118dd6118ed94614158565b91600f0b92614158565b90614527565b613785565b60801b5b8b808061179e565b92809193125f146119a95761193d9161192a6118ed6118ed9361192488600f0b91614158565b87614527565b9361193886600f0b92614158565b6144ca565b6fffffffffffffffffffffffffffffffff169060801b17906fffffffffffffffffffffffffffffffff61197c60036080510192600f0b8284541661456e565b167fffffffffffffffffffffffffffffffff000000000000000000000000000000008254161790556118f6565b906118ed9250926119bf6118dd6119c595614158565b906144ca565b6fffffffffffffffffffffffffffffffff166118f6565b808f9151611a1e575b01516119f2575b8e611794565b611a198260805160049160020b5f52016020525f6002604082208281558260018201550155565b6119ec565b611a458360805160049160020b5f52016020525f6002604082208281558260018201550155565b6119e5565b7faefeb924000000000000000000000000000000000000000000000000000000005f5260045ffd5b61176f61176960409f9b61184e9c6118609e6fffffffffffffffffffffffffffffffff611aa289600f0b8361456e565b167fffffffffffffffffffffffffffffffff0000000000000000000000000000000084541617835561173e565b9099908913611af55760028060018c0154600184015490039b015491015490039b6116aa565b9860026001608051015460018c01549003600183015490039a81806080510154910154900391015490039b6116aa565b6004608051018960020b5f5280602052898960405f20611b7e81546fffffffffffffffffffffffffffffffff611b6181831695600f0b8661456e565b16931594858515141595611dee575b508d600f0b9060801d613d3a565b60801b82179055602087015285528760020b5f5260205260405f208054906fffffffffffffffffffffffffffffffff8216611bbc8b600f0b8261456e565b901592836fffffffffffffffffffffffffffffffff831615141593611dc1575b8b600f0b9060801d600f0b03916f7fffffffffffffffffffffffffffffff83137fffffffffffffffffffffffffffffffff80000000000000000000000000000000841217611d9457826fffffffffffffffffffffffffffffffff935060801b83831617905516606086015260408501525f88600f0b1215611ca1575b8351611c85575b60408401511561165a57611c8060808c015160020b8860056080510161410c565b61165a565b611c9c60808c015160020b8a60056080510161410c565b611c5f565b60808b015160020b6fffffffffffffffffffffffffffffffff600181602088015116925f817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276180712817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27618050390620d89e8050301810416809111611d68576fffffffffffffffffffffffffffffffff6060860151161115611c5857867fb8e3c385000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b897fb8e3c385000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6080515460a01c60020b8b13611bdc57600160805101546001840155600260805101546002840155611bdc565b6080515460a01c60020b1215611e05575b8e611b70565b600160805101546001840155600260805101546002840155611dff565b857f1ad777f8000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b877fd5e2f7ab000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b60448887604051917fc4433ed500000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f604085015113808091611fd6575b15611f6b5750506040517f259982e5000000000000000000000000000000000000000000000000000000006020820152611f62916112aa82611f368887898c33602487016136cb565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101845283612e2e565b505b8580611587565b159081611fc8575b50611f7f575b50611f64565b6040517f21d0ee70000000000000000000000000000000000000000000000000000000006020820152611fc1916112aa82611f368887898c33602487016136cb565b5085611f79565b610200915016151587611f73565b5061080082161515611eed565b346103305760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761201a612d3f565b73ffffffffffffffffffffffffffffffffffffffff612037612d62565b91165f52600560205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f5260205260405f206044355f52602052602060405f2054604051908152f35b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576120b2612d3f565b602435908115158092036103305773ffffffffffffffffffffffffffffffffffffffff90335f52600360205260405f208282165f5260205260405f207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff851617905560405192835216907fceb576d9f15e4e200fdb5096d64d5dfd667e16def20c1eefd14256d8e3faa26760203392a3602060405160018152f35b346103305760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761218a36612e81565b612192612e6f565b906280000062ffffff60408301511614801590612246575b61221e5760a0906121ba8361368e565b205f52600660205260405f20906121d082613576565b81547fffffff000000ffffffffffffffffffffffffffffffffffffffffffffffffffff1660d09190911b7cffffff000000000000000000000000000000000000000000000000000016179055005b7f30d21641000000000000000000000000000000000000000000000000000000005f5260045ffd5b5073ffffffffffffffffffffffffffffffffffffffff6080820151163314156121aa565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305760043567ffffffffffffffff8111610330576122b9903690600401612f4d565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c6124cd57612345915f9160017fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235d60405193849283927f91dd734600000000000000000000000000000000000000000000000000000000845260206004850152602484019161306c565b038183335af19081156124c2575f9161241a575b507f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5c6123f25760406020915f7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f835194859381855280519182918282880152018686015e5f85828601015201168101030190f35b7f5212cba1000000000000000000000000000000000000000000000000000000005f5260045ffd5b90503d805f833e61242b8183612e2e565b8101906020818303126103305780519067ffffffffffffffff8211610330570181601f820112156103305780519067ffffffffffffffff8211611eb1576040519261249e60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601160185612e2e565b8284526020838301011161033057815f9260208093018386015e8301015281612359565b6040513d5f823e3d90fd5b7f5090d6c6000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305773ffffffffffffffffffffffffffffffffffffffff61251836612d85565b91929092335f52600560205260405f208282165f5260205260405f20845f526020528260405f205560405192835216907fb3fd5071835887567a0671151121894ddccc2842f1d10bedad13e0d17cace9a760203392a4602060405160018152f35b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576125ab612d3f565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d7576107a260209161342d565b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576024356004356040519160408360208152826020820152019060051b8301916001602060408501935b835481520191019084838210156109cc57506020600191612635565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305773ffffffffffffffffffffffffffffffffffffffff61269d612d3f565b6126ab825f54163314613007565b16807fffffffffffffffffffffffff000000000000000000000000000000000000000060025416176002557fb4bd8ef53df690b9943d3318996006dbb82a25f54719d8c8035b516a2a5b8acc5f80a2005b34610330576101007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761273536612e81565b60c4359060a43560e43567ffffffffffffffff81116103305761275c903690600401612f4d565b9190937fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75761278e61350f565b60a0842094855f52600660205260405f20946127a986613576565b60808101805173ffffffffffffffffffffffffffffffffffffffff811690813303612943575b50506fffffffffffffffffffffffffffffffff60038801541697881561291b576020986127fb876130aa565b5f03612806876130aa565b5f036fffffffffffffffffffffffffffffffff169060801b179887612907575b866128f2575b5050612839338985613652565b60405190868252858a8301527f29ef05caaff9404b7cb6d1c0e9bbae9eaa7ab2541feba1a9c4248594c08156cb60403393a3519273ffffffffffffffffffffffffffffffffffffffff841693843303612897575b8888604051908152f35b6010166128a5575b8061288d565b6128e6956112aa93611f36926040519788957fe1b4af69000000000000000000000000000000000000000000000000000000008d88015233602488016135bc565b5082808080808061289f565b600201908660801b048154019055898061282c565b60018101828960801b048154019055612826565b7fa74f97ab000000000000000000000000000000000000000000000000000000005f5260045ffd5b602016612951575b806127cf565b6040517fb6a8b0fa000000000000000000000000000000000000000000000000000000006020820152612994916112aa82611f368b898b8d8b33602488016135bc565b508861294b565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057600435545f5260205ff35b34610330576129e336612d85565b907fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d7577f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac7288596103ed73ffffffffffffffffffffffffffffffffffffffff805f941695612a62612a55876130aa565b8603600f0b3390896130f0565b16938484526004602052604084208685526020526040842061025f828254612ffa565b5f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330577fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75760206107a23361342d565b346103305760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057612b17612d3f565b612b1f612d62565b604435907fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d757610e2f92612b67612b5a846130aa565b5f03600f0b3390836130f0565b6131f8565b346103305773ffffffffffffffffffffffffffffffffffffffff612b8f36612d85565b91929092335f52600460205260405f20845f5260205260405f20612bb4848254612fed565b90551690815f52600460205260405f20835f5260205260405f20612bd9828254612ffa565b9055604080513380825260208201939093527f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac7288599181908101610279565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576004357fffffffff00000000000000000000000000000000000000000000000000000000811680910361033057807f01ffc9a70000000000000000000000000000000000000000000000000000000060209214908115612cab575b506040519015158152f35b7f0f632fb30000000000000000000000000000000000000000000000000000000091501482612ca0565b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305760209073ffffffffffffffffffffffffffffffffffffffff612d24612d3f565b165f526004825260405f206024355f52825260405f20548152f35b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361033057565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361033057565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60609101126103305760043573ffffffffffffffffffffffffffffffffffffffff8116810361033057906024359060443590565b6080810190811067ffffffffffffffff821117611eb157604052565b6060810190811067ffffffffffffffff821117611eb157604052565b60a0810190811067ffffffffffffffff821117611eb157604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117611eb157604052565b60a4359062ffffff8216820361033057565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60a09101126103305760405190612eb882612e12565b8160043573ffffffffffffffffffffffffffffffffffffffff8116810361033057815260243573ffffffffffffffffffffffffffffffffffffffff8116810361033057602082015260443562ffffff811681036103305760408201526064358060020b81036103305760608201526084359073ffffffffffffffffffffffffffffffffffffffff821682036103305760800152565b9181601f840112156103305782359167ffffffffffffffff8311610330576020838186019501011161033057565b9060207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8301126103305760043567ffffffffffffffff811161033057826023820112156103305780600401359267ffffffffffffffff84116103305760248460051b83010111610330576024019190565b91908203918211611d9457565b91908201809211611d9457565b1561300e57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152fd5b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe093818652868601375f8582860101520116010190565b6f800000000000000000000000000000008110156130c857600f0b90565b7f93dafdf1000000000000000000000000000000000000000000000000000000005f5260045ffd5b9190600f0b9182156131f357613126919073ffffffffffffffffffffffffffffffffffffffff8092165f521660205260405f2090565b613132815c9283613b29565b80915d6131a357507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5c017f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5d5b565b156131aa57565b60017f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5c017f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5d565b505050565b90919073ffffffffffffffffffffffffffffffffffffffff811690816132ea5750505f80808093855af11561322a5750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d011673ffffffffffffffffffffffffffffffffffffffff604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301525f6024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff4b3b1bc0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b60205f60448194968260409573ffffffffffffffffffffffffffffffffffffffff988751998a947fa9059cbb00000000000000000000000000000000000000000000000000000000865216600485015260248401525af13d15601f3d116001855114161716928281528260208201520152156133635750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d0116604051917f90bfb86500000000000000000000000000000000000000000000000000000000835260048301527fa9059cbb000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff27f64e40000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95c919073ffffffffffffffffffffffffffffffffffffffff8316613482576131a19034935b61347c856130aa565b906130f0565b346134e7576131a1906134be7f1e0745a7db1623981f0b2a5d4232364c00787266eb75ad546f190e6cebe9bd955c6134b986613a92565b612fed565b935f7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95d613473565b7fb0ec849e000000000000000000000000000000000000000000000000000000005f5260045ffd5b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016300361354e57565b7f0d89438e000000000000000000000000000000000000000000000000000000005f5260045ffd5b5473ffffffffffffffffffffffffffffffffffffffff161561359457565b7f486aa307000000000000000000000000000000000000000000000000000000005f5260045ffd5b91926136376101209473ffffffffffffffffffffffffffffffffffffffff61364f999794168552602085019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b60c083015260e082015281610100820152019161306c565b90565b9073ffffffffffffffffffffffffffffffffffffffff60206131a1949361368185848351168660801d906130f0565b01511690600f0b906130f0565b62ffffff16620f424081116136a05750565b7f14002113000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b9061364f95936137486101609473ffffffffffffffffffffffffffffffffffffffff61377794168552602085019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051600290810b60c08501526020820151900b60e0840152604081015161010084015260600151610120830152565b81610140820152019161306c565b9081600f0b9182036130c857565b926138419061381261364f99979473ffffffffffffffffffffffffffffffffffffffff6101a09895168752602087019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051600290810b60c08701526020820151900b60e0860152604081015161010086015260600151610120850152565b61014083015261016082015281610180820152019161306c565b939590919296945f9673ffffffffffffffffffffffffffffffffffffffff861633146139ac57885f6040870151135f1461393b5761040087166138a2575b50505050505050565b61392e9799985092613927969594926138ef9261391b956040519788967f9f063efc0000000000000000000000000000000000000000000000000000000060208901523360248901613793565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282612e2e565b6002821615159161459f565b80926145bf565b915f808080808080613899565b95949392919061010086166139535750505050505050565b61392e979950869850916138ef916139a09493613927986040519788967f6c2bbe7e0000000000000000000000000000000000000000000000000000000060208901523360248901613793565b6001821615159161459f565b505f96505050505050565b608081161580613a69575b613a3f57604081161580613a5d575b613a3f5761040081161580613a51575b613a3f5761010081161580613a45575b613a3f5773ffffffffffffffffffffffffffffffffffffffff8116613a1f575062ffffff1662800000141590565b613fff161590811591613a30575090565b62800000915062ffffff161490565b50505f90565b506001811615156139f1565b506002811615156139e1565b506004811615156139d1565b506008811615156139c2565b6280000062ffffff821614613a8d5761364f8161368e565b505f90565b73ffffffffffffffffffffffffffffffffffffffff1680613ab257504790565b6020602491604051928380927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa9081156124c2575f91613afa575090565b90506020813d602011613b21575b81613b1560209383612e2e565b81010312610330575190565b3d9150613b08565b9190915f8382019384129112908015821691151617611d9457565b6020830151955f9586959194913373ffffffffffffffffffffffffffffffffffffffff851614613d2d5760808416613b7e575b5050505050565b613c66926138ef613c6092613c4c946040519586947f575e24b4000000000000000000000000000000000000000000000000000000006020870152336024870152613c16604487018c73ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051151560e487015260208101516101048701526040015173ffffffffffffffffffffffffffffffffffffffff16610124860152565b61014061014485015261016484019161306c565b82613f25565b916060835103613d05576040015162ffffff166280000014613cf9575b600816613c94575b80808080613b77565b604001519250608083901d600f0b8015613c8b57613cb5905f861295613b29565b9315613cf1575f84135b613cc9575f613c8b565b7ffa0b71d6000000000000000000000000000000000000000000000000000000005f5260045ffd5b5f8412613cbf565b60608201519350613c83565b7f1e048e1d000000000000000000000000000000000000000000000000000000005f5260045ffd5b505f965086955050505050565b90600f0b90600f0b01907fffffffffffffffffffffffffffffffff8000000000000000000000000000000082126f7fffffffffffffffffffffffffffffff831317611d9457565b9196959394929473ffffffffffffffffffffffffffffffffffffffff83163314613f18578460801d94600f0b938860408516613e40575b50505050505f9481600f0b15801590613e34575b613dd8575b5050509190565b613e0f9395505f60208201511290511515145f14613e17576fffffffffffffffffffffffffffffffff169060801b175b80936145bf565b5f8080613dd1565b906fffffffffffffffffffffffffffffffff169060801b17613e08565b5082600f0b1515613dcc565b613efc613f08946138ef6118ed95613f0e999895613ee1613c16966040519788967fb47b2fb1000000000000000000000000000000000000000000000000000000006020890152336024890152604488019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8c61014485015261016061016485015261018484019161306c565b6004821615159161459f565b90613d3a565b5f80808088613db8565b5050505050909150905f90565b9190918251925f8060208301958682865af115613fc3575050604051917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f3d011683016040523d83523d9060208401915f833e6020845110918215613f8f575b5050613d0557565b5190517fffffffff000000000000000000000000000000000000000000000000000000009182169116141590505f80613f87565b5183517fffffffff00000000000000000000000000000000000000000000000000000000811691600481106140d7575b50507fffffffff000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d01169173ffffffffffffffffffffffffffffffffffffffff604051947f90bfb865000000000000000000000000000000000000000000000000000000008652166004850152166024830152608060448301528060a00160648301523d60848301523d5f60a484013e7fa9e35b2f0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7fffffffff000000000000000000000000000000000000000000000000000000009250829060040360031b1b16168280613ff3565b919060020b9060020b9081810761413a5705908160081d5f52602052600160ff60405f2092161b8154189055565b601c906044926040519163d4d8f3e683526020830152604082015201fd5b60020b908160ff1d82810118620d89e8811161449e5763ffffffff9192600182167001fffcb933bd6fad37aa2d162d1a59400102700100000000000000000000000000000000189160028116614482575b60048116614466575b6008811661444a575b6010811661442e575b60208116614412575b604081166143f6575b608081166143da575b61010081166143be575b61020081166143a2575b6104008116614386575b610800811661436a575b611000811661434e575b6120008116614332575b6140008116614316575b61800081166142fa575b6201000081166142de575b6202000081166142c3575b6204000081166142a8575b620800001661428f575b5f12614268575b0160201c90565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04614261565b6b048a170391f7dc42444e8fa290910260801c9061425a565b6d2216e584f5fa1ea926041bedfe9890920260801c91614250565b916e5d6af8dedb81196699c329225ee6040260801c91614245565b916f09aa508b5b7a84e1c677de54f3e99bc90260801c9161423a565b916f31be135f97d08fd981231505542fcfa60260801c9161422f565b916f70d869a156d2a1b890bb3df62baf32f70260801c91614225565b916fa9f746462d870fdf8a65dc1f90e061e50260801c9161421b565b916fd097f3bdfd2022b8845ad8f792aa58250260801c91614211565b916fe7159475a2c29b7443b29c7fa6e889d90260801c91614207565b916ff3392b0822b70005940c7a398e4b70f30260801c916141fd565b916ff987a7253ac413176f2b074cf7815e540260801c916141f3565b916ffcbe86c7900a88aedcffc83b479aa3a40260801c916141e9565b916ffe5dee046a99a2a811c461f1969c30530260801c916141df565b916fff2ea16466c96a3843ec78b326b528610260801c916141d6565b916fff973b41fa98c081472e6896dfb254c00260801c916141cd565b916fffcb9843d60f6159c9db58835c9266440260801c916141c4565b916fffe5caca7e10e4e61c3624eaa0941cd00260801c916141bb565b916ffff2e50f5f656932ef12357cf3c7fdcc0260801c916141b2565b916ffff97272373d413259a46990580e213a0260801c916141a9565b827f8b86327a000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b905f83600f0b125f146144ff576144f5925f036fffffffffffffffffffffffffffffffff1691615a3d565b5f81126130c85790565b61451b926fffffffffffffffffffffffffffffffff16916159e2565b5f81126130c8575f0390565b905f83600f0b125f14614552576144f5925f036fffffffffffffffffffffffffffffffff1691615b34565b61451b926fffffffffffffffffffffffffffffffff1691615a7d565b906fffffffffffffffffffffffffffffffff90600f0b911601908160801c61459257565b6393dafdf15f526004601cfd5b906145a991613f25565b9015613a8d576040815103613d05576040015190565b6145e2906145d48360801d8260801d03613785565b92600f0b90600f0b03613785565b6fffffffffffffffffffffffffffffffff169060801b1790565b73fffd8963efd1fc6a506488495d951d516396168273ffffffffffffffffffffffffffffffffffffffff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffd895d830116116148e05777ffffffffffffffffffffffffffffffffffffffff000000008160201b168060ff61467983615bdb565b1691608083106148d457507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8182011c5b800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c80029081607f1c8260ff1c1c80029283607f1c8460ff1c1c80029485607f1c8660ff1c1c80029687607f1c8860ff1c1c80029889607f1c8a60ff1c1c80029a8b607f1c8c60ff1c1c80029c8d80607f1c9060ff1c1c800260cd1c6604000000000000169d60cc1c6608000000000000169c60cb1c6610000000000000169b60ca1c6620000000000000169a60c91c6640000000000000169960c81c6680000000000000169860c71c670100000000000000169760c61c670200000000000000169660c51c670400000000000000169560c41c670800000000000000169460c31c671000000000000000169360c21c672000000000000000169260c11c674000000000000000169160c01c67800000000000000016907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800160401b1717171717171717171717171717693627a301d71055774c85027ffffffffffffffffffffffffffffffffffd709b7e5480fba5a50fed5e62ffc556810160801d60020b906fdb2df09e81959a81455e260799a0632f0160801d60020b918282145f146148915750905090565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff6148c584614158565b16116148cf575090565b905090565b905081607f031b6146a9565b73ffffffffffffffffffffffffffffffffffffffff907f61487524000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b811561492c570490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b6040519290915f61496985612df6565b5f855260208501925f845260408601955f875280968654956040860151159586155f146156f557610fff8860b81c16945b8151925f948a73ffffffffffffffffffffffffffffffffffffffff16918288528b60a01c60020b90526fffffffffffffffffffffffffffffffff60038d0154169052608083015162400000811615155f146156e65762bfffff166149fd8161368e565b61ffff88166156cb575b8096620f424062ffffff8316101561569a575b8451156156845750508861562457606083019073ffffffffffffffffffffffffffffffffffffffff825116818110156155ed5750505173ffffffffffffffffffffffffffffffffffffffff166401000276a38111156155c257505b604051986101008a018a811067ffffffffffffffff821117611eb1576040525f8a525f60208b01525f60408b01525f60608b01525f60808b01525f60a08b01525f60c08b015288155f146155b45760018b0154949390945b60e08b01525b8015801561557a575b6154205788868d8c8e73ffffffffffffffffffffffffffffffffffffffff8351168252602083015160020b602089015160020b90815f8183071291050386155f14615275576fffffffffffffffffffffffffffffffff937ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2761860409460019484600560ff60609716938260020b60081d890b5f5201602052875f207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8460ff031c9054169283151593845f146152635790614bb760ff92615bdb565b90031660020b900360020b0260020b5b905b15158684015260020b8060208401521315615238575b620d89e8602082015160020b121561522a575b73ffffffffffffffffffffffffffffffffffffffff614c17602083015160020b614158565b16918291015273ffffffffffffffffffffffffffffffffffffffff8551169673ffffffffffffffffffffffffffffffffffffffff60608c0151169283911516818310189118021892015116928d73ffffffffffffffffffffffffffffffffffffffff8316821015915f87125f1461507f5762ffffff8516620f424003614c9f81895f03615785565b94841561506e57614cb1888483615a7d565b955b868110614fb257509660a093929173ffffffffffffffffffffffffffffffffffffffff98978891620f424062ffffff8316145f14614f9e575050865b955b15614f905791614d0092615a3d565b925b60c0820152015260808d0152168c525f8351135f14614f605760a08a0151905f82126130c8570392614d3d60808b015160c08c015190612ffa565b5f81126130c8578103908113600116611d9457935b61ffff8716614f18575b6fffffffffffffffffffffffffffffffff60408d01511680614efe575b5073ffffffffffffffffffffffffffffffffffffffff8c511673ffffffffffffffffffffffffffffffffffffffff60608c01511681145f14614ec2575060408a0151614e10575b88614e03577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b015160020b0160020b5b60020b60208d01525b9392614ad3565b60208a015160020b614df3565b88614e96576fffffffffffffffffffffffffffffffff614e7d8d8d8d600460e08201519260206002820154935b015160020b60020b5f520160205260405f2091600183019081549003905560028201908154900390555460801d908c15614e88575b60400151831661456e565b1660408d0152614dc0565b5f91909103600f0b90614e72565b6fffffffffffffffffffffffffffffffff614e7d8d8d8d6004600183015492602060e084015193614e3d565b73ffffffffffffffffffffffffffffffffffffffff8b51168103614ee7575b50614dfc565b614ef0906145fc565b60020b60208d01525f614ee1565b60c08b015160801b0460e08b01510160e08b01525f614d79565b9662ffffff861661ffff881603614f435760c08a0151905b8160c08c01510360c08c01520196614d5c565b620f424060808b015161ffff89169060c08d015101020490614f30565b60808a015160c08b015101905f82126130c857019260a08a01515f81126130c857614f8a91613b29565b93614d52565b614f9992615b34565b614d00565b62ffffff614fad921689615c68565b614cef565b9650505092505082918415811517615061578e60a09173ffffffffffffffffffffffffffffffffffffffff96845f14614ffc57614ff0878284615d07565b80978a015f0395614cf1565b87871161503a576150356150306150286fffffffffffffffffffffffffffffffff84168a60601b614922565b8a8516612ffa565b615d9b565b614ff0565b61503561503061505c6fffffffffffffffffffffffffffffffff84168a61588a565b615028565b634f2461b85f526004601cfd5b6150798882856159e2565b95614cb3565b9193509190831561521957615095858284615a3d565b915b8287106150f7579073ffffffffffffffffffffffffffffffffffffffff9560a09280965b156150e857916150ca92615a7d565b925b6150e362ffffff8d16620f42408190039086615c68565b614d02565b6150f1926159e2565b926150cc565b50915050838315821517615061578d83156151ef575073ffffffffffffffffffffffffffffffffffffffff851161519c578460601b6fffffffffffffffffffffffffffffffff851680820615159104015b73ffffffffffffffffffffffffffffffffffffffff8316928184111561518f578f939573ffffffffffffffffffffffffffffffffffffffff60a093819803165b80966150bb565b634323a5555f526004601cfd5b6fffffffffffffffffffffffffffffffff84166151c7816c0100000000000000000000000088615943565b90801561492c576c010000000000000000000000008709156151485760010180615148575f80fd5b9180856152148873ffffffffffffffffffffffffffffffffffffffff9860a095615c91565b615188565b615224858383615b34565b91615097565b620d89e86020820152614bf2565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276186020820152614bdf565b5060020b900360020b0260020b614bc7565b60019194939650600592955001938460020b60081d60010b5f520160205260405f207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600160ff86161b0119905416908d8b831592831597885f146153c15750505050610330578f9160018f8f96907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276186060928f989560409660ff896fffffffffffffffffffffffffffffffff9a5f03166101e07f804040554300526644320000502061067405302602000010750620017611707760fc7fb6db6db6ddddddddd34d34d349249249210842108c6318c639ce739cffffffff840260f81c161b60f71c167e1f0d1e100c1d070f090b19131c1706010e11080a1a141802121b1503160405601f85851693831c63d76453e004161a17031660020b9060020b0160020b0260020b5b90614bc9565b90956fffffffffffffffffffffffffffffffff955060409450600193987ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27618918960ff6060969b811681031660020b9060020b0160020b0260020b6153bb565b949891955099969298919598602088015160a01b76ffffff0000000000000000000000000000000000000000167fffffffffffffffffff000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff8a51169216171782556fffffffffffffffffffffffffffffffff6003830154166fffffffffffffffffffffffffffffffff604089015116809103615535575b5082156155265760e060029101519101555b825190155f82121461551057506154ee6154f69293613785565b925103613785565b6fffffffffffffffffffffffffffffffff169060801b1793565b6154f69250906155209103613785565b91613785565b60e060019101519101556154d4565b6fffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffff000000000000000000000000000000006003840154161760038301555f6154c2565b5073ffffffffffffffffffffffffffffffffffffffff8c511673ffffffffffffffffffffffffffffffffffffffff60608501511614614adc565b60028b015494939094614acd565b7f9e4d7cc7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b60449250604051917f7c9c6e8f00000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b606083019073ffffffffffffffffffffffffffffffffffffffff825116818111156155ed5750505173ffffffffffffffffffffffffffffffffffffffff1673fffd8963efd1fc6a506488495d951d5263988d268110156155c25750614a75565b9a509a50509950505050505050505f925f929190565b5f85511315614a1a577f96206246000000000000000000000000000000000000000000000000000000005f5260045ffd5b62ffffff610fff89169116620f424081830204910103614a07565b508960d01c62ffffff166149fd565b610fff8860c41c169461499a565b90808202917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828209918380841093039280840393847001000000000000000000000000000000001115610330571461577c57700100000000000000000000000000000000910990828211900360801b910360801c1790565b50505060801c90565b818102907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83820990828083109203918083039283620f424011156103305714615804577fde8f6cefed634549b62c77574f722e1ac57e23f24d8fd5cb790fb65668c2613993620f4240910990828211900360fa1b910360061c170290565b5050620f424091500490565b90808202917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828209918380841093039280840393846c0100000000000000000000000011156103305714615881576c01000000000000000000000000910990828211900360a01b910360601c1790565b50505060601c90565b908160601b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c01000000000000000000000000840992828085109403938085039485841115610330571461593c576c0100000000000000000000000082910981805f03168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b5091500490565b91818302917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8185099383808610950394808603958685111561033057146159da579082910981805f03168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b505091500490565b6fffffffffffffffffffffffffffffffff6c010000000000000000000000009173ffffffffffffffffffffffffffffffffffffffff80600195169116038060ff1d90810118931692615a348185615810565b93091515160190565b6fffffffffffffffffffffffffffffffff9073ffffffffffffffffffffffffffffffffffffffff8061364f9594169116038060ff1d908101189116615810565b9073ffffffffffffffffffffffffffffffffffffffff811673ffffffffffffffffffffffffffffffffffffffff831611615b2e575b73ffffffffffffffffffffffffffffffffffffffff8216928315615b22577bffffffffffffffffffffffffffffffff00000000000000000000000073ffffffffffffffffffffffffffffffffffffffff615b16948185169403169160601b16615c68565b90808206151591040190565b62bfc9215f526004601cfd5b90615ab2565b73ffffffffffffffffffffffffffffffffffffffff821673ffffffffffffffffffffffffffffffffffffffff821611615bd5575b73ffffffffffffffffffffffffffffffffffffffff8116918215615b225761364f937bffffffffffffffffffffffffffffffff00000000000000000000000073ffffffffffffffffffffffffffffffffffffffff615bd0948185169403169160601b16615943565b614922565b90615b68565b8015610330577f07060605060205000602030205040001060502050303040105050304000000006f8421084210842108cc6318c6db6d54be826fffffffffffffffffffffffffffffffff1060071b83811c67ffffffffffffffff1060061b1783811c63ffffffff1060051b1783811c61ffff1060041b1783811c60ff1060031b1792831c1c601f161a1790565b929190615c76828286615943565b93821561492c5709615c8457565b9060010190811561033057565b91908115615d02577bffffffffffffffffffffffffffffffff00000000000000000000000073ffffffffffffffffffffffffffffffffffffffff9160601b169216918282029183838311918404141615615cf55761364f9261503092820391615c68565b63f5c787f15f526004601cfd5b505090565b90918015615d955773ffffffffffffffffffffffffffffffffffffffff7bffffffffffffffffffffffffffffffff000000000000000000000000819460601b16921680820281615d578483614922565b14615d7d575b5090615d6c615d719284614922565b612ffa565b80820615159104011690565b8301838110615d5d579150615d9192615c68565b1690565b50905090565b9073ffffffffffffffffffffffffffffffffffffffff82169182036130c85756fea164736f6c634300081a000a0000000000000000000000005b73c5498c1e3b4dba84de0f1833c4a029d90519", + "nonce": "0x1c", + "chainId": "0x66eee" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x53a2dd", + "logs": [ + { + "address": "0x6550fa0d92b38f52c37d32d71084a7b270226ba5", + "topics": [ + "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000005b73c5498c1e3b4dba84de0f1833c4a029d90519" + ], + "data": "0x", + "blockHash": "0xf66fa2fcfd28a176a4e37f0cc7ab81975b1082acc25c57a3d53a8f106a2daa79", + "blockNumber": "0x5d1755e", + "transactionHash": "0xbe34421dbed56d9c6449e7fe0d7f62e714b940d0d5c13b9fa41a5508d93e6267", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "logsBloom": "0x00000000000000000000000000000000000000000000000000800000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000020000000000000000000800008000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000020000000000000000000000000000040000000000000000000000000000000000200", + "type": "0x2", + "transactionHash": "0xbe34421dbed56d9c6449e7fe0d7f62e714b940d0d5c13b9fa41a5508d93e6267", + "transactionIndex": "0x1", + "blockHash": "0xf66fa2fcfd28a176a4e37f0cc7ab81975b1082acc25c57a3d53a8f106a2daa79", + "blockNumber": "0x5d1755e", + "gasUsed": "0x53a2dd", + "effectiveGasPrice": "0x5f5e100", + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "to": null, + "contractAddress": "0x6550fa0d92b38f52c37d32d71084a7b270226ba5", + "gasUsedForL1": "0x3a006", + "l1BlockNumber": "0x6c1215" + } + ], + "libraries": [], + "pending": [], + "returns": { + "manager": { + "internal_type": "contract IPoolManager", + "value": "0x6550fa0D92B38F52C37D32d71084A7B270226Ba5" + } + }, + "timestamp": 1731680229, + "chain": 421614, + "commit": "49e1534b" +} \ No newline at end of file diff --git a/broadcast/02_PoolModifyLiquidityTest.s.sol/421614/run-latest.json b/broadcast/02_PoolModifyLiquidityTest.s.sol/421614/run-latest.json new file mode 100644 index 00000000..3b304299 --- /dev/null +++ b/broadcast/02_PoolModifyLiquidityTest.s.sol/421614/run-latest.json @@ -0,0 +1,55 @@ +{ + "transactions": [ + { + "hash": "0x40b36411a0bbf9cb7e38d3f9847816d2d295ca50f5af0227810bde0ce84b5c4e", + "transactionType": "CREATE", + "contractName": "PoolModifyLiquidityTest", + "contractAddress": "0x0b5c43b24aefa0b385612a32b08590bca60a9f93", + "function": null, + "arguments": [ + "0x6550fa0D92B38F52C37D32d71084A7B270226Ba5" + ], + "transaction": { + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "gas": "0x1c7279", + "value": "0x0", + "input": "0x60a034607a57601f61183538819003918201601f19168301916001600160401b03831184841017607e57808492602094604052833981010312607a57516001600160a01b0381168103607a576080526040516117a29081610093823960805181818160b50152818161099001528181610ac101526111390152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80630a5b11e414610ae5578063481c6a7514610a775780635a6bcfda14610790576391dd734614610045575f80fd5b346107795760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126107795760043567ffffffffffffffff8111610779573660238201121561077957806004013567ffffffffffffffff81116107795781016024810190368211610779577f00000000000000000000000000000000000000000000000000000000000000009273ffffffffffffffffffffffffffffffffffffffff841690813303610779576020818403126107795760248101359067ffffffffffffffff82116107795701906101a082840312610779576040519161012d83610c27565b61013960248201610ce9565b835260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08286030112610779576040519361017485610c70565b61018060448301610ce9565b855261018e60648301610ce9565b6020860152608482013562ffffff811681036107795760408601526101b560a48301610d0a565b606086015260c482013573ffffffffffffffffffffffffffffffffffffffff81168103610779577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1c83608093602493858a01526020880198895203010112610779576040519561022487610c8c565b61023060e48301610d0a565b875261023f6101048301610d0a565b6020880152610124820135604088015261014482013560608801526040840196875261016482013567ffffffffffffffff81116107795761039f96602461028892850101610e8a565b916060850192835260406102b36101a46102a56101848501610ed0565b936080890194855201610ed0565b9360a087019485526102e060a08951208b51805160020b6060602083015160020b92015192309089610f80565b5050956103715f8c6103b38c519151955187519e8f97889687957f5a6bcfda000000000000000000000000000000000000000000000000000000008752600487019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051600290810b60a48701526020820151900b60c4860152604081015160e486015260600151610104850152565b610140610124840152610144830190610edd565b03925af1968715610785575f9761074d575b506103eb60a08751208951805160020b6060602083015160020b92015192309087610f80565b50509061042a73ffffffffffffffffffffffffffffffffffffffff88515116309073ffffffffffffffffffffffffffffffffffffffff89511690611114565b939150506fffffffffffffffffffffffffffffffff61047e73ffffffffffffffffffffffffffffffffffffffff60208b51015116309073ffffffffffffffffffffffffffffffffffffffff8b511690611114565b9891505016600f0b9060408b510151915f8382019384129112908015821691151617610720576fffffffffffffffffffffffffffffffff16600f0b036106c2576040610548995101515f81125f1461067d57505f82138015610674575b6104e490610f20565b5f8212801561066b575b6104f89015610f20565b5f821261061d575b5f85126105ca575b505f8113610583575b505f831361054c575b868660405190602082015260208152610534604082610ca8565b604051918291602083526020830190610edd565b0390f35b73ffffffffffffffffffffffffffffffffffffffff80602061057997510151169451169151151593611545565b5f8080808061051a565b6105c49073ffffffffffffffffffffffffffffffffffffffff875151169073ffffffffffffffffffffffffffffffffffffffff875116848651151593611545565b5f610511565b6106179073ffffffffffffffffffffffffffffffffffffffff602089510151169073ffffffffffffffffffffffffffffffffffffffff8851168561060d89610f54565b925115159361120d565b5f610508565b61066673ffffffffffffffffffffffffffffffffffffffff8851511673ffffffffffffffffffffffffffffffffffffffff88511661065a85610f54565b9086855115159361120d565b610500565b505f85126104ee565b505f85136104db565b5f12156104f8575f821280156106b9575b61069790610f20565b5f821380156106b0575b6106ab9015610f20565b6104f8565b505f85136106a1565b505f851261068e565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f6c6971756964697479206368616e676520696e636f72726563740000000000006044820152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b9096506040813d60401161077d575b8161076960409383610ca8565b810103126107795751955f6103c5565b5f80fd5b3d915061075c565b6040513d5f823e3d90fd5b6101407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610779576107c436610d18565b6107cd36610de4565b90610124359167ffffffffffffffff83116107795761093b5f9273ffffffffffffffffffffffffffffffffffffffff9261080e610976963690600401610e8a565b916108fc6040519361081f85610c27565b3385526020850192835260408501938452606085019081526108e760808601948986526108b560a08801958b87526040519a8b996020808c0152511660408a015251606089019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b518051600290810b6101008901526020820151900b610120880152604081015161014088015260600151610160870152565b516101a06101808601526101e0850190610edd565b915115156101a08401525115156101c0830152037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610ca8565b604051809381927f48c89491000000000000000000000000000000000000000000000000000000008352602060048401526024830190610edd565b03818373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af1908115610785575f916109fd575b50602081805181010312610779576020015147806109e4575b602082604051908152f35b5f80808093335af1156109f757816109d9565b33611656565b90503d805f833e610a0e8183610ca8565b8101906020818303126107795780519067ffffffffffffffff8211610779570181601f8201121561077957805190610a4582610e50565b92610a536040519485610ca8565b8284526020838301011161077957815f9260208093018386015e83010152816109c0565b34610779575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261077957602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b6101807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261077957610b1936610d18565b610b2236610de4565b906101243567ffffffffffffffff811161077957610b44903690600401610e8a565b91610144359283151580940361077957610164359283151580940361077957610976945f946108fc61093b946108e773ffffffffffffffffffffffffffffffffffffffff976108b560405197610b9989610c27565b3389526020890190815260408901928352606089019485526080890197885260a089019687526040519a8b996020808c0152511660408a015251606089019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b60c0810190811067ffffffffffffffff821117610c4357604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60a0810190811067ffffffffffffffff821117610c4357604052565b6080810190811067ffffffffffffffff821117610c4357604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610c4357604052565b359073ffffffffffffffffffffffffffffffffffffffff8216820361077957565b35908160020b820361077957565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60a09101126107795760405190610d4f82610c70565b8160043573ffffffffffffffffffffffffffffffffffffffff8116810361077957815260243573ffffffffffffffffffffffffffffffffffffffff8116810361077957602082015260443562ffffff811681036107795760408201526064358060020b81036107795760608201526084359073ffffffffffffffffffffffffffffffffffffffff821682036107795760800152565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c60809101126107795760405190610e1b82610c8c565b8160a4358060020b810361077957815260c4358060020b810361077957602082015260e4356040820152606061010435910152565b67ffffffffffffffff8111610c4357601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b81601f8201121561077957803590610ea182610e50565b92610eaf6040519485610ca8565b8284526020838301011161077957815f926020809301838601378301015290565b3590811515820361077957565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b15610f2757565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b7f80000000000000000000000000000000000000000000000000000000000000008114610720575f0390565b94939290926040519460268601526006850152600384015282525f603a600c8401209281604082015281602082015252604051602081019182526006604082015260408152610fd0606082610ca8565b51902091600683018093116107205760445f9273ffffffffffffffffffffffffffffffffffffffff946040519060208201928352604082015260408152611018606082610ca8565b51902060405194859384927f35fd631a000000000000000000000000000000000000000000000000000000008452600484015260036024840152165afa908115610785575f91611078575b50602081015160408201516060909201519092565b90503d805f833e6110898183610ca8565b8101906020818303126107795780519067ffffffffffffffff821161077957019080601f830112156107795781519167ffffffffffffffff8311610c43578260051b90604051936110dd6020840186610ca8565b845260208085019282010192831161077957602001905b828210611104575050505f611063565b81518152602091820191016110f4565b92906111209084611716565b9273ffffffffffffffffffffffffffffffffffffffff807f00000000000000000000000000000000000000000000000000000000000000001691816111658483611716565b95165f5216602052602060405f206024604051809481937ff135baaa00000000000000000000000000000000000000000000000000000000835260048301525afa908115610785575f916111b7575090565b90506020813d6020116111de575b816111d260209383610ca8565b81010312610779575190565b3d91506111c5565b90816020910312610779575180151581036107795790565b90816020910312610779575190565b9293156112af5773ffffffffffffffffffffffffffffffffffffffff16803b15610779576040517ff5298aca00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff92831660048201529290911660248301526044820192909252905f908290818381606481015b03925af18015610785576112a35750565b5f6112ad91610ca8565b565b9173ffffffffffffffffffffffffffffffffffffffff168061134d57505073ffffffffffffffffffffffffffffffffffffffff600460209260405194859384927f11da60b4000000000000000000000000000000000000000000000000000000008452165af18015610785576113225750565b6113439060203d602011611346575b61133b8183610ca8565b8101906111fe565b50565b503d611331565b90929173ffffffffffffffffffffffffffffffffffffffff1691823b1561077957604051937fa58411940000000000000000000000000000000000000000000000000000000085525f948360048201525f8160248183895af180156107855761151c575b5073ffffffffffffffffffffffffffffffffffffffff16843082146114a8576020929160649160405195869485937f23b872dd000000000000000000000000000000000000000000000000000000008552600485015288602485015260448401525af1801561149d57916020918493611470575b505b6004604051809581937f11da60b40000000000000000000000000000000000000000000000000000000083525af190811561146457506113225750565b604051903d90823e3d90fd5b61148f90833d8511611496575b6114878183610ca8565b8101906111e6565b505f611425565b503d61147d565b6040513d85823e3d90fd5b929050604460209260405194859384927fa9059cbb00000000000000000000000000000000000000000000000000000000845288600485015260248401525af1801561149d579160209184936114ff575b50611427565b61151590833d8511611496576114878183610ca8565b505f6114f9565b6115299195505f90610ca8565b5f9373ffffffffffffffffffffffffffffffffffffffff6113b1565b9293156115ce5773ffffffffffffffffffffffffffffffffffffffff16803b15610779576040517f156e29f600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff92831660048201529290911660248301526044820192909252905f90829081838160648101611292565b90929073ffffffffffffffffffffffffffffffffffffffff16803b15610779575f928360649273ffffffffffffffffffffffffffffffffffffffff948560405198899788967f0b0d9c0900000000000000000000000000000000000000000000000000000000885216600487015216602485015260448401525af18015610785576112a35750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d011673ffffffffffffffffffffffffffffffffffffffff604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301525f6024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff4b3b1bc0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b73ffffffffffffffffffffffffffffffffffffffff168061173657503190565b9073ffffffffffffffffffffffffffffffffffffffff602460209260405194859384927f70a082310000000000000000000000000000000000000000000000000000000084521660048301525afa908115610785575f916111b757509056fea164736f6c634300081a000a0000000000000000000000006550fa0d92b38f52c37d32d71084a7b270226ba5", + "nonce": "0x1d", + "chainId": "0x66eee" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1595c4", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x40b36411a0bbf9cb7e38d3f9847816d2d295ca50f5af0227810bde0ce84b5c4e", + "transactionIndex": "0x1", + "blockHash": "0x1ec086b8c947268b91b0a6e5b583fb6bc220ee2adcb649aeb220a4b5588d3c7c", + "blockNumber": "0x5d18007", + "gasUsed": "0x1595c4", + "effectiveGasPrice": "0x5f5e100", + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "to": null, + "contractAddress": "0x0b5c43b24aefa0b385612a32b08590bca60a9f93", + "gasUsedForL1": "0xe4ea", + "l1BlockNumber": "0x6c1253" + } + ], + "libraries": [], + "pending": [], + "returns": { + "testModifyRouter": { + "internal_type": "contract PoolModifyLiquidityTest", + "value": "0x0B5C43b24AeFa0B385612a32B08590bCa60A9F93" + } + }, + "timestamp": 1731681001, + "chain": 421614, + "commit": "49e1534b" +} \ No newline at end of file diff --git a/broadcast/03_PoolSwapTest.s.sol/421614/run-latest.json b/broadcast/03_PoolSwapTest.s.sol/421614/run-latest.json new file mode 100644 index 00000000..45afdfba --- /dev/null +++ b/broadcast/03_PoolSwapTest.s.sol/421614/run-latest.json @@ -0,0 +1,55 @@ +{ + "transactions": [ + { + "hash": "0x432874ed51aeed341551dc0836ffc880189148a86536fca679c8a6723a770208", + "transactionType": "CREATE", + "contractName": "PoolSwapTest", + "contractAddress": "0xf0b8f48380ccd8bcdd4c953479ad0164f926ce7e", + "function": null, + "arguments": [ + "0x6550fa0D92B38F52C37D32d71084A7B270226Ba5" + ], + "transaction": { + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "gas": "0x203169", + "value": "0x0", + "input": "0x60a034607a57601f611bb938819003918201601f19168301916001600160401b03831184841017607e57808492602094604052833981010312607a57516001600160a01b0381168103607a57608052604051611b269081610093823960805181818160ab01528181610d29015281816110a6015261158c0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80632229d0b414610d4d578063481c6a7514610cdf576391dd73461461003a575f80fd5b34610c0c5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610c0c5760043567ffffffffffffffff8111610c0c5736602382011215610c0c57806004013567ffffffffffffffff8111610c0c578101906024820191368311610c0c577f00000000000000000000000000000000000000000000000000000000000000009273ffffffffffffffffffffffffffffffffffffffff841692833303610c0c57602081840312610c0c5760248101359067ffffffffffffffff8211610c0c57019061018082840312610c0c576040519161012383611236565b61012f602482016112f8565b835260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08286030112610c0c576040519061016a8261129b565b61017660448201611319565b825261018460648201611319565b60208301526020840191825260a060247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7c838803010112610c0c57604051946101cc86611236565b6101d8608483016112f8565b86526101e660a483016112f8565b602087015260c482013562ffffff81168103610c0c57604087015260e48201358060020b8103610c0c57606087015261010482013573ffffffffffffffffffffffffffffffffffffffff81168103610c0c577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffedc8360609360249360808b015260408901998a5203010112610c0c57604051926102818461127f565b61028e6101248301611319565b8452610144820135602085015261016482013573ffffffffffffffffffffffffffffffffffffffff81168103610c0c576040850152606085019384526101848201359167ffffffffffffffff8311610c0c576102ed9201602401611360565b946080840195865261033073ffffffffffffffffffffffffffffffffffffffff8651511673ffffffffffffffffffffffffffffffffffffffff8651163091611567565b91505061037273ffffffffffffffffffffffffffffffffffffffff60208851015116309073ffffffffffffffffffffffffffffffffffffffff88511690611567565b92915050610c8157610c2357610447956020916104135f885161045b885195516040519c8d97889687957ff3cd914c000000000000000000000000000000000000000000000000000000008752600487019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051151560a4860152602081015160c48601526040015173ffffffffffffffffffffffffffffffffffffffff1660e4850152565b6101206101048401526101248301906113a6565b03925af1948515610c18575f95610be0575b506104aa73ffffffffffffffffffffffffffffffffffffffff85515116309073ffffffffffffffffffffffffffffffffffffffff86511690611567565b979150506104ed73ffffffffffffffffffffffffffffffffffffffff60208751015116309073ffffffffffffffffffffffffffffffffffffffff87511690611567565b855180519196935091501561092357505f602082510151125f146107cb575160200151871261072157610527878760801d600f0b146113f8565b5f831261069d57610582965b5f811261065b575b5f8412610606575b5f81136105be575b505f8313610586575b86866040519060208201526020815261056e6040826112b7565b6040519182916020835260208301906113a6565b0390f35b73ffffffffffffffffffffffffffffffffffffffff8060206105b49751015116945116915151151593611989565b5f80808080610554565b6106009073ffffffffffffffffffffffffffffffffffffffff875151169073ffffffffffffffffffffffffffffffffffffffff87511684865151151593611989565b5f61054b565b61065673ffffffffffffffffffffffffffffffffffffffff6020885101511673ffffffffffffffffffffffffffffffffffffffff8751166106468761150e565b9085602088510151151593611651565b610543565b61069873ffffffffffffffffffffffffffffffffffffffff8751511673ffffffffffffffffffffffffffffffffffffffff8751166106468461150e565b61053b565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f64656c7461416674657231206973206e6f742067726561746572207468616e2060448201527f6f7220657175616c20746f2030000000000000000000000000000000000000006064820152fd5b60a46040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f64656c7461416674657230206973206e6f742067726561746572207468616e2060448201527f6f7220657175616c20746f20646174612e706172616d732e616d6f756e74537060648201527f65636966696564000000000000000000000000000000000000000000000000006084820152fd5b5f881361089f576020906107e38589600f0b14611483565b51015183136107f55761058296610533565b60a46040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604460248201527f64656c7461416674657231206973206e6f74206c657373207468616e206f722060448201527f657175616c20746f20646174612e706172616d732e616d6f756e74537065636960648201527f66696564000000000000000000000000000000000000000000000000000000006084820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f64656c7461416674657230206973206e6f74206c657373207468616e206f722060448201527f657175616c20746f207a65726f000000000000000000000000000000000000006064820152fd5b602001515f1315610a8557516020015183126109db576109478387600f0b14611483565b5f87126109575761058296610533565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f64656c7461416674657230206973206e6f742067726561746572207468616e2060448201527f6f7220657175616c20746f2030000000000000000000000000000000000000006064820152fd5b60a46040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f64656c7461416674657231206973206e6f742067726561746572207468616e2060448201527f6f7220657175616c20746f20646174612e706172616d732e616d6f756e74537060648201527f65636966696564000000000000000000000000000000000000000000000000006084820152fd5b5f8413610b5c57602090610aa0898960801d600f0b146113f8565b5101518713610ab25761058296610533565b60a46040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604460248201527f64656c7461416674657230206973206e6f74206c657373207468616e206f722060448201527f657175616c20746f20646174612e706172616d732e616d6f756e74537065636960648201527f66696564000000000000000000000000000000000000000000000000000000006084820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f64656c7461416674657231206973206e6f74206c657373207468616e206f722060448201527f657175616c20746f2030000000000000000000000000000000000000000000006064820152fd5b9094506020813d602011610c10575b81610bfc602093836112b7565b81010312610c0c5751935f61046d565b5f80fd5b3d9150610bef565b6040513d5f823e3d90fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f64656c74614265666f726531206973206e6f7420657175616c20746f203000006044820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f64656c74614265666f726530206973206e6f7420657175616c20746f203000006044820152fd5b34610c0c575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610c0c57602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36016101608112610c0c5760a013610c0c57604051610d8c81611236565b60043573ffffffffffffffffffffffffffffffffffffffff81168103610c0c57815260243573ffffffffffffffffffffffffffffffffffffffff81168103610c0c57602082015260443562ffffff81168103610c0c5760408201526064358060020b8103610c0c57606082015260843573ffffffffffffffffffffffffffffffffffffffff81168103610c0c57608082015260607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c360112610c0c57604051610e548161127f565b60a4358015158103610c0c57815260c435602082015260e43573ffffffffffffffffffffffffffffffffffffffff81168103610c0c57604082015260407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefc360112610c0c5760405191610ec68361129b565b610104358015158103610c0c578352610124358015158103610c0c5760208401526101443567ffffffffffffffff8111610c0c5761108c9361102573ffffffffffffffffffffffffffffffffffffffff936110105f96610fd8610f30611051973690600401611360565b93602060405197610f4089611236565b3389528189019081526040890192835260608901948552608089019687526040519a8b9983808c0152511660408a0152518051151560608a01520151151560808801525160a087019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b518051151561014086015260208101516101608601526040015173ffffffffffffffffffffffffffffffffffffffff16610180850152565b516101806101a08401526101c08301906113a6565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081018352826112b7565b604051809381927f48c894910000000000000000000000000000000000000000000000000000000083526020600484015260248301906113a6565b03818373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af1908115610c18575f916111bc575b5060208151918180820193849201010312610c0c575147806110fe575b602082604051908152f35b5f80808093335af11561111157816110f3565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d0116604051907f90bfb8650000000000000000000000000000000000000000000000000000000082523360048301525f6024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff4b3b1bc0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b90503d805f833e6111cd81836112b7565b810190602081830312610c0c5780519067ffffffffffffffff8211610c0c570181601f82011215610c0c5780519061120482611326565b9261121260405194856112b7565b82845260208383010111610c0c57815f9260208093018386015e83010152816110d6565b60a0810190811067ffffffffffffffff82111761125257604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6060810190811067ffffffffffffffff82111761125257604052565b6040810190811067ffffffffffffffff82111761125257604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761125257604052565b359073ffffffffffffffffffffffffffffffffffffffff82168203610c0c57565b35908115158203610c0c57565b67ffffffffffffffff811161125257601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b81601f82011215610c0c5780359061137782611326565b9261138560405194856112b7565b82845260208383010111610c0c57815f926020809301838601378301015290565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b90816020910312610c0c575190565b156113ff57565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f64656c74612e616d6f756e74302829206973206e6f7420657175616c20746f2060448201527f64656c74614166746572300000000000000000000000000000000000000000006064820152fd5b1561148a57565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f64656c74612e616d6f756e74312829206973206e6f7420657175616c20746f2060448201527f64656c74614166746572310000000000000000000000000000000000000000006064820152fd5b7f8000000000000000000000000000000000000000000000000000000000000000811461153a575f0390565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b92906115739084611a9a565b9273ffffffffffffffffffffffffffffffffffffffff807f00000000000000000000000000000000000000000000000000000000000000001691816115b88483611a9a565b95165f5216602052602060405f206024604051809481937ff135baaa00000000000000000000000000000000000000000000000000000000835260048301525afa908115610c18575f9161160a575090565b90506020813d602011611631575b81611625602093836112b7565b81010312610c0c575190565b3d9150611618565b90816020910312610c0c57518015158103610c0c5790565b9293156116f35773ffffffffffffffffffffffffffffffffffffffff16803b15610c0c576040517ff5298aca00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff92831660048201529290911660248301526044820192909252905f908290818381606481015b03925af18015610c18576116e75750565b5f6116f1916112b7565b565b9173ffffffffffffffffffffffffffffffffffffffff168061179157505073ffffffffffffffffffffffffffffffffffffffff600460209260405194859384927f11da60b4000000000000000000000000000000000000000000000000000000008452165af18015610c18576117665750565b6117879060203d60201161178a575b61177f81836112b7565b8101906113e9565b50565b503d611775565b90929173ffffffffffffffffffffffffffffffffffffffff1691823b15610c0c57604051937fa58411940000000000000000000000000000000000000000000000000000000085525f948360048201525f8160248183895af18015610c1857611960575b5073ffffffffffffffffffffffffffffffffffffffff16843082146118ec576020929160649160405195869485937f23b872dd000000000000000000000000000000000000000000000000000000008552600485015288602485015260448401525af180156118e1579160209184936118b4575b505b6004604051809581937f11da60b40000000000000000000000000000000000000000000000000000000083525af19081156118a857506117665750565b604051903d90823e3d90fd5b6118d390833d85116118da575b6118cb81836112b7565b810190611639565b505f611869565b503d6118c1565b6040513d85823e3d90fd5b929050604460209260405194859384927fa9059cbb00000000000000000000000000000000000000000000000000000000845288600485015260248401525af180156118e157916020918493611943575b5061186b565b61195990833d85116118da576118cb81836112b7565b505f61193d565b61196d9195505f906112b7565b5f9373ffffffffffffffffffffffffffffffffffffffff6117f5565b929315611a125773ffffffffffffffffffffffffffffffffffffffff16803b15610c0c576040517f156e29f600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff92831660048201529290911660248301526044820192909252905f908290818381606481016116d6565b90929073ffffffffffffffffffffffffffffffffffffffff16803b15610c0c575f928360649273ffffffffffffffffffffffffffffffffffffffff948560405198899788967f0b0d9c0900000000000000000000000000000000000000000000000000000000885216600487015216602485015260448401525af18015610c18576116e75750565b73ffffffffffffffffffffffffffffffffffffffff1680611aba57503190565b9073ffffffffffffffffffffffffffffffffffffffff602460209260405194859384927f70a082310000000000000000000000000000000000000000000000000000000084521660048301525afa908115610c18575f9161160a57509056fea164736f6c634300081a000a0000000000000000000000006550fa0d92b38f52c37d32d71084a7b270226ba5", + "nonce": "0x1e", + "chainId": "0x66eee" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x19b86a", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x432874ed51aeed341551dc0836ffc880189148a86536fca679c8a6723a770208", + "transactionIndex": "0x2", + "blockHash": "0x55ca01eadb27d62b8aac99972179af63e1264f16c2773a036c2cdfa3fb7521de", + "blockNumber": "0x5d180a7", + "gasUsed": "0x187224", + "effectiveGasPrice": "0x5f5e100", + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "to": null, + "contractAddress": "0xf0b8f48380ccd8bcdd4c953479ad0164f926ce7e", + "gasUsedForL1": "0xdf43", + "l1BlockNumber": "0x6c1257" + } + ], + "libraries": [], + "pending": [], + "returns": { + "testSwapRouter": { + "internal_type": "contract PoolSwapTest", + "value": "0xf0B8F48380ccD8bCdD4c953479ad0164f926ce7e" + } + }, + "timestamp": 1731681041, + "chain": 421614, + "commit": "49e1534b" +} \ No newline at end of file diff --git a/broadcast/DeployPosm.s.sol/421614/run-latest.json b/broadcast/DeployPosm.s.sol/421614/run-latest.json new file mode 100644 index 00000000..cfd55f01 --- /dev/null +++ b/broadcast/DeployPosm.s.sol/421614/run-latest.json @@ -0,0 +1,63 @@ +{ + "transactions": [ + { + "hash": "0x5027dea3dcacedb3ae38865f87645b4128422ad5831ef512b6d59d1bf7bab191", + "transactionType": "CREATE", + "contractName": "PositionManager", + "contractAddress": "0xff34e285f8ed393e366046153e3c16484a4dd674", + "function": null, + "arguments": [ + "0x6550fa0D92B38F52C37D32d71084A7B270226Ba5", + "0x000000000022D473030F116dDEE9F6B43aC78BA3", + "200000", + "0x0000000000000000000000000000000000000000", + "0x980B62Da83eFf3D4576C647993b0c1D7faf17c73" + ], + "transaction": { + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "gas": "0x6e1d82", + "value": "0x0", + "input": "0x61018080604052346105285760a0816162ea8038038091610020828561052c565b8339810103126105285780516001600160a01b03811681036105285760208201516001600160a01b03811681036105285760408301516060840151936001600160a01b03851685036105285760800151926001600160a01b03841684036105285760405161008f60408261052c565b6018815260208101907f556e697377617020763420506f736974696f6e73204e4654000000000000000082526040516100c960408261052c565b600b81526a554e492d56342d504f534d60a81b602082015281516001600160401b03811161043c575f54600181811c9116801561051e575b602082101461041e57601f81116104bc575b50806020601f821160011461045b575f91610450575b508160011b915f199060031b1c1916175f555b8051906001600160401b03821161043c5760015490600182811c92168015610432575b602083101461041e5781601f8493116103b0575b50602090601f831160011461034a575f9261033f575b50508160011b915f199060031b1c1916176001555b5190208060c0524660a05260405160208101917f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86683526040820152466060820152306080820152608081526101f460a08261052c565b51902060805260e052610100526101205261014052600160085561016052604051615d9a9081610550823960805181612dba015260a05181612d94015260c05181612e09015260e051818181610d0b015281816111a2015281816114d101528181611e4a0152818161223e015281816122f101528181612785015281816128b401528181612b1c0152818161325c015281816137c0015281816146f2015281816147eb0152818161488301528181614a0701528181614a68015281816153fa015281816155c6015281816156df01528181615789015261593701526101005181818161180b01526140ea0152610120518181816103e501528181610bbc0152818161107e015261571d015261014051818181611878015281816131ed015281816143da0152818161443b0152818161456001526145f6015261016051818181611aac01526126390152f35b015190505f80610189565b60015f9081528281209350601f198516905b8181106103985750908460019594939210610380575b505050811b0160015561019e565b01515f1960f88460031b161c191690555f8080610372565b9293602060018192878601518155019501930161035c565b60015f529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f840160051c81019160208510610414575b90601f859493920160051c01905b8181106104065750610173565b5f81558493506001016103f9565b90915081906103eb565b634e487b7160e01b5f52602260045260245ffd5b91607f169161015f565b634e487b7160e01b5f52604160045260245ffd5b90508301515f610129565b5f8080528181209250601f198416905b8181106104a45750908360019493921061048c575b5050811b015f5561013c565b8501515f1960f88460031b161c191690555f80610480565b9192602060018192868a01518155019401920161046b565b5f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563601f830160051c81019160208410610514575b601f0160051c01905b8181106105095750610113565b5f81556001016104fc565b90915081906104f3565b90607f1690610101565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761043c5760405256fe60806040526004361015610022575b3615610018575f80fd5b6100206131d6565b005b5f3560e01c80622a3e3a1461029057806301ffc9a71461028b57806305c1ee201461028657806306fdde0314610281578063081812fc1461027c578063095ea7b3146102775780630f5730f11461027257806312261ee71461026d57806316a24131146102685780631efeed331461026357806323b872dd1461025e5780632b67b570146102595780632b9261de146102545780633644e5151461024f5780633aea60f01461024a57806342842e0e146102455780634767565f146102405780634aa4a4fc1461023b5780634afe393c14610236578063502e1a16146102315780635a9d7a681461022c5780636352211e1461022757806370a082311461022257806375794a3c1461021d5780637ba03aad1461021857806386b6be7d1461021357806389097a6a1461020e57806391dd73461461020957806395d89b4114610204578063a22cb465146101ff578063ac9650d8146101fa578063ad0b27fb146101f5578063b88d4fde146101f0578063c87b56dd146101eb578063d737d0c7146101e6578063dc4c90d3146101e1578063dd46508f146101dc578063e985e9c5146101d75763f70204050361000e57612a02565b612964565b6127a9565b61273b565b6126cb565b6125b9565b61227e565b61220c565b6120f1565b612023565b611f50565b611de3565b611d9b565b611cd4565b611c3a565b611bff565b611b2a565b611ad0565b611a62565b6119ed565b6118cd565b61182e565b6117d6565b6114be565b6113ba565b61136b565b611141565b610fe2565b610cf7565b610c3e565b610be0565b610b72565b610a2b565b61094c565b6108ee565b6107b9565b6106ea565b6105fa565b610349565b73ffffffffffffffffffffffffffffffffffffffff8116036102b357565b5f80fd5b35906102c282610295565b565b9181601f840112156102b35782359167ffffffffffffffff83116102b357602083818601950101116102b357565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b9060206103469281815201906102f2565b90565b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043561037f81610295565b6024359067ffffffffffffffff82116102b3578136039160607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8401126102b35760443567ffffffffffffffff81116102b3576103e09036906004016102c4565b6060947f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1693909290843b156102b35773ffffffffffffffffffffffffffffffffffffffff604051967f2a2d80d10000000000000000000000000000000000000000000000000000000088521660048701526060602487015260c48601937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd826004013591018112156102b35781016024600482013591019467ffffffffffffffff82116102b3578160071b360386136102b35760606064890152819052869460e48601949392915f5b8181106105a8575050506105595f96948694889460448561052361050660248b99016102b7565b73ffffffffffffffffffffffffffffffffffffffff166084890152565b013560a48601527ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc858403016044860152612ca5565b03925af1908161058e575b506105855750610581610575612d4b565b60405191829182610335565b0390f35b61058190610575565b8061059c5f6105a293610778565b80610720565b5f610564565b91965091929394608080826105bf6001948b612c2c565b0197019101918896959493926104df565b7fffffffff000000000000000000000000000000000000000000000000000000008116036102b357565b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760207fffffffff00000000000000000000000000000000000000000000000000000000600435610658816105d0565b167f01ffc9a70000000000000000000000000000000000000000000000000000000081149081156106c0575b8115610696575b506040519015158152f35b7f5b5e139f000000000000000000000000000000000000000000000000000000009150145f61068b565b7f80ac58cd0000000000000000000000000000000000000000000000000000000081149150610684565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35761002060043533613284565b5f9103126102b357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60a0810190811067ffffffffffffffff82111761077357604052565b61072a565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761077357604052565b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576040515f80548060011c90600181169081156108e4575b6020831082146108b75782855260208501919081156108805750600114610830575b6105818461057581860382610778565b5f8080529250907f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b81841061086c5750500161057582610820565b805484840152602090930192600101610859565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682525090151560051b01905061057582610820565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f16916107fe565b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576004355f526004602052602073ffffffffffffffffffffffffffffffffffffffff60405f205416604051908152f35b346102b35760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043561098781610295565b602435805f52600260205273ffffffffffffffffffffffffffffffffffffffff60405f2054169182331415806109ed575b6109c557610020926132f2565b7f82b42900000000000000000000000000000000000000000000000000000000005f5260045ffd5b50825f52600560205260ff610a233360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5416156109b8565b60a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357600435610a6181610295565b602435604435916064359260843567ffffffffffffffff81116102b357610a8c9036906004016102c4565b94824211610b4a57610b3f85610b459361002098610b39885f80998682526002602052818973ffffffffffffffffffffffffffffffffffffffff6040832054169c8d9981604051977f49ecf333e5b8c95c40fdafc95c1ad136e8914a8fb55e9dc8bb01eaa83a2df9ad895273ffffffffffffffffffffffffffffffffffffffff60208a01911681526040890192835260608901948552608089019687528160a08a20995252525252613383565b9161343c565b82613284565b6132f2565b7f5a9165ff000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576004355f526007602052602073ffffffffffffffffffffffffffffffffffffffff60405f205416604051908152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576020610c93600435610c7e81612f5b565b919082851c60020b9260081c60020b916136e6565b6fffffffffffffffffffffffffffffffff60405191168152f35b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60609101126102b357600435610ce381610295565b90602435610cf081610295565b9060443590565b346102b357610d0536610cad565b91610d2f7f0000000000000000000000000000000000000000000000000000000000000000613841565b610fba5782610d7f610d66610d4c835f52600260205260405f2090565b5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1690565b610da173ffffffffffffffffffffffffffffffffffffffff84169182146138e1565b73ffffffffffffffffffffffffffffffffffffffff841690610dc4821515613946565b8033148015610f62575b8015610f3d575b610dde906139ab565b610e068473ffffffffffffffffffffffffffffffffffffffff165f52600360205260405f2090565b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019055610e548573ffffffffffffffffffffffffffffffffffffffff165f52600360205260405f2090565b80546001019055610eb185610e71855f52600260205260405f2090565b9073ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b610eee610ec6845f52600460205260405f2090565b80547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4610f2e610f27845f52600960205260405f2090565b5460ff1690565b610f3457005b61002092613a10565b50610dde610f59610d66610d4c865f52600460205260405f2090565b33149050610dd5565b50610fb5610f2733610f928773ffffffffffffffffffffffffffffffffffffffff165f52600560205260405f2090565b9073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b610dce565b7fd4b05fe0000000000000000000000000000000000000000000000000000000005f5260045ffd5b6101007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043561101981610295565b60c07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc3601126102b35760e43567ffffffffffffffff81116102b3576110639036906004016102c4565b9160609273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016803b156102b35773ffffffffffffffffffffffffffffffffffffffff5f8094610559604051978896879586947f2b67b5700000000000000000000000000000000000000000000000000000000086521660048501526110ff60248501612ba7565b73ffffffffffffffffffffffffffffffffffffffff60a43561112081610295565b1660a485015260c43560c485015261010060e4850152610104840191612ca5565b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760243560043561117a82610295565b60443567ffffffffffffffff81116102b35761119a9036906004016102c4565b6111c69391937f0000000000000000000000000000000000000000000000000000000000000000613841565b610fba576111d48333613b73565b1561133f5773ffffffffffffffffffffffffffffffffffffffff611203610d4c855f52600760205260405f2090565b16806112f657505f838152600960205260409020805460011790556112c6906112c2906112bc73ffffffffffffffffffffffffffffffffffffffff85169661125788610e71895f52600760205260405f2090565b6112906040519384927f8d57f6b20000000000000000000000000000000000000000000000000000000060208501528960248501612d7a565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610778565b83613c49565b1590565b6112f157507f9709492381f90bdc5938bb4e3b8e35b7e0eac8af058619e27191c5a40ce79fa95f80a3005b613c8a565b7f25fbd8be000000000000000000000000000000000000000000000000000000005f52600484905273ffffffffffffffffffffffffffffffffffffffff1660245260445ffd5b5ffd5b7f0ca968d8000000000000000000000000000000000000000000000000000000005f523360045260245ffd5b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760206113a3612d91565b604051908152f35b6044359081151582036102b357565b60c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576004356113f081610295565b6024356113fc81610295565b6114046113ab565b906064359260843560a43567ffffffffffffffff81116102b35761142c9036906004016102c4565b869291924211610b4a57836114b993610b3f92610b39885f6100209c8189818f81604051977f6673cb397ee2a50b6b8401653d3638b4ac8b3db9c28aa6870ffceb7574ec2f76895273ffffffffffffffffffffffffffffffffffffffff60208a0191168152600160408a019316835260608901948552608089019687528160a08a20995252525252613383565b613f0a565b346102b3576114cc36610cad565b6114f57f0000000000000000000000000000000000000000000000000000000000000000613841565b610fba57611511610d66610d4c835f52600260205260405f2090565b9161153473ffffffffffffffffffffffffffffffffffffffff85169384146138e1565b8173ffffffffffffffffffffffffffffffffffffffff82168094611559821515613946565b80331480156117a1575b801561177c575b611573906139ab565b61159b8773ffffffffffffffffffffffffffffffffffffffff165f52600360205260405f2090565b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190556115e98473ffffffffffffffffffffffffffffffffffffffff165f52600360205260405f2090565b8054600101905561160684610e71855f52600260205260405f2090565b61161b610ec6845f52600460205260405f2090565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4611654610f27835f52600960205260405f2090565b61176c575b3b1591821561166c575b61002083612e63565b6040517f150b7a0200000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9490941660248501526044840191909152608060648401525f6084840181905260209250839160a49183915af18015611767577fffffffff000000000000000000000000000000000000000000000000000000007f150b7a020000000000000000000000000000000000000000000000000000000091610020935f91611738575b5016145f80611663565b61175a915060203d602011611760575b6117528183610778565b810190612e4e565b5f61172e565b503d611748565b612ce3565b611777818584613a10565b611659565b50611573611798610d66610d4c865f52600460205260405f2090565b3314905061156a565b506117d1610f2733610f928a73ffffffffffffffffffffffffffffffffffffffff165f52600560205260405f2090565b611563565b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b9181601f840112156102b35782359167ffffffffffffffff83116102b3576020808501948460051b0101116102b357565b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043567ffffffffffffffff81116102b3576119179036906004016102c4565b60243567ffffffffffffffff81116102b35761193790369060040161189c565b9173ffffffffffffffffffffffffffffffffffffffff7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c166119c5576119a093337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d613fd7565b5f7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d005b7f6f5ffb7e000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102b35760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357600435611a2881610295565b73ffffffffffffffffffffffffffffffffffffffff60243591165f52600660205260405f20905f52602052602060405f2054604051908152f35b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576020611b0c600435612f2d565b73ffffffffffffffffffffffffffffffffffffffff60405191168152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35773ffffffffffffffffffffffffffffffffffffffff600435611b7a81610295565b168015611ba1575f52600360205261058160405f2054604051918291829190602083019252565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f4144445245535300000000000000000000000000000000000000006044820152fd5b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576020600854604051908152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760c0611c76600435612f5b565b611ccd604051809373ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b60a0820152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576004357fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000081168091036102b3575f908152600a602090815260409182902080546001820154600292830154855173ffffffffffffffffffffffffffffffffffffffff93841681528383169581019590955260a082811c62ffffff169686019690965260b89190911c90920b6060840152166080820152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576004355f526009602052602060405f2054604051908152f35b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043567ffffffffffffffff81116102b357611e329036906004016102c4565b9073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303611f285760408135189063ffffffff60408201351663ffffffe0601f8201169260608401602084013518179282019260608401359483641fffffffe08760051b16805f905b88818310611ef95790506080929150010191011017611eec576060608063ffffffff611ee1961694019201613fd7565b610581610575612d37565b633b99b53d5f526004601cfd5b8294509263ffffffe0601f60808060209687969801013599848b1817998d010135011601019201869291611eb1565b7fae18210a000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576040515f6001548060011c9060018116908115612019575b6020831082146108b75782855260208501919081156108805750600114611fc7576105818461057581860382610778565b60015f9081529250907fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b8184106120055750500161057582610820565b805484840152602090930192600101611ff2565b91607f1691611f96565b346102b35760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043561205e81610295565b60243580151581036102b3576100209133613f0a565b602081016020825282518091526040820191602060408360051b8301019401925f915b8383106120a657505050505090565b90919293946020806120e2837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0866001960301875289516102f2565b97019301930191939290612097565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043567ffffffffffffffff81116102b35761213b90369060040161189c565b906121458261306d565b916121536040519384610778565b8083527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe06121808261306d565b015f5b8181106121fb5750505f5b8181106121a357604051806105818682612074565b5f806121b08385876130b2565b906121c060405180938193613117565b0390305af46121cd612d4b565b90156121f357906001916121e18287613124565b526121ec8186613124565b500161218e565b602081519101fd5b806060602080938801015201612183565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576004356122627f0000000000000000000000000000000000000000000000000000000000000000613841565b610fba576122708133613b73565b1561133f5761002090614040565b346102b35760807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b3576004356122b981610295565b602435906122c682610295565b60443560643567ffffffffffffffff81116102b3576122e99036906004016102c4565b9390916123157f0000000000000000000000000000000000000000000000000000000000000000613841565b610fba57612331610d66610d4c835f52600260205260405f2090565b9161235473ffffffffffffffffffffffffffffffffffffffff86169384146138e1565b8173ffffffffffffffffffffffffffffffffffffffff82168094612379821515613946565b8033148015612584575b801561255f575b612393906139ab565b6123bb8873ffffffffffffffffffffffffffffffffffffffff165f52600360205260405f2090565b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190556124098473ffffffffffffffffffffffffffffffffffffffff165f52600360205260405f2090565b8054600101905561242684610e71855f52600260205260405f2090565b61243b610ec6845f52600460205260405f2090565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4612474610f27835f52600960205260405f2090565b61254f575b3b1593841561248c575b61002085612e63565b602094505f906124cc604051978896879586947f150b7a020000000000000000000000000000000000000000000000000000000086523360048701613138565b03925af18015611767577fffffffff000000000000000000000000000000000000000000000000000000007f150b7a020000000000000000000000000000000000000000000000000000000091610020935f91612530575b5016145f808080612483565b612549915060203d602011611760576117528183610778565b5f612524565b61255a818684613a10565b612479565b5061239361257b610d66610d4c865f52600460205260405f2090565b3314905061238a565b506125b4610f2733610f928b73ffffffffffffffffffffffffffffffffffffffff165f52600560205260405f2090565b612383565b346102b35760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357600435604051907fe9dc637500000000000000000000000000000000000000000000000000000000825230600483015260248201525f8160448173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa8015611767575f90612678575b6105819060405191829182610335565b503d805f833e6126888183610778565b8101906020818303126102b35780519067ffffffffffffffff82116102b3570181601f820112156102b357610581918160206126c693519101613173565b612668565b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760207f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c73ffffffffffffffffffffffffffffffffffffffff60405191168152f35b346102b3575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b35760043567ffffffffffffffff81116102b3576127f39036906004016102c4565b60243573ffffffffffffffffffffffffffffffffffffffff7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c166119c557337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d804211612939576040517f48c89491000000000000000000000000000000000000000000000000000000008152602060048201525f818061289a602482018789612ca5565b03818373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af18015611767576128e9575b610020613fb2565b3d805f833e6128f88183610778565b8101906020818303126102b35780519067ffffffffffffffff82116102b357019080601f830112156102b357815161293292602001613173565b50806128e1565b7fbfb22adf000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b346102b35760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102b357602060ff6129f66004356129a681610295565b73ffffffffffffffffffffffffffffffffffffffff602435916129c883610295565b165f526005845260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54166040519015158152f35b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360160c081126102b35760a0136102b35760a435612a4081610295565b73ffffffffffffffffffffffffffffffffffffffff604051917f6276cbbe00000000000000000000000000000000000000000000000000000000835281600435612a8981610295565b16600484015281602435612a9c81610295565b16602484015262ffffff604435612ab2816131c9565b166044840152606435612ac4816131a9565b60020b6064840152612af8608435612adb81610295565b73ffffffffffffffffffffffffffffffffffffffff166084850152565b1660a482015260208160c4815f73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af1801561176757610581915f91612b65575b5060405160029190910b81529081906020820190565b612b87915060203d602011612b8d575b612b7f8183610778565b8101906131b4565b5f612b4f565b503d612b75565b359065ffffffffffff821682036102b357565b73ffffffffffffffffffffffffffffffffffffffff602435612bc881610295565b16815273ffffffffffffffffffffffffffffffffffffffff604435612bec81610295565b16602082015260643565ffffffffffff81168091036102b357604082015260843565ffffffffffff811681036102b35765ffffffffffff60609116910152565b65ffffffffffff612c9f6060809373ffffffffffffffffffffffffffffffffffffffff8135612c5a81610295565b16865273ffffffffffffffffffffffffffffffffffffffff6020820135612c8081610295565b16602087015283612c9360408301612b94565b16604087015201612b94565b16910152565b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe093818652868601375f8582860101520116010190565b6040513d5f823e3d90fd5b604051906102c2608083610778565b67ffffffffffffffff811161077357601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b60405190612d46602083610778565b5f8252565b3d15612d75573d90612d5c82612cfd565b91612d6a6040519384610778565b82523d5f602084013e565b606090565b604090610346949281528160208201520191612ca5565b467f000000000000000000000000000000000000000000000000000000000000000003612ddc577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86682527f0000000000000000000000000000000000000000000000000000000000000000604082015246606082015230608082015260808152612e4860a082610778565b51902090565b908160209103126102b35751610346816105d0565b15612e6a57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f554e534146455f524543495049454e54000000000000000000000000000000006044820152fd5b15612ecf57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e4f545f4d494e544544000000000000000000000000000000000000000000006044820152fd5b5f52600260205273ffffffffffffffffffffffffffffffffffffffff60405f205416906102c2821515612ec8565b5f6080604051612f6a81610757565b82815282602082015282604082015282606082015201525f52600960205260405f2054807fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000165f52600a60205260405f2061306a61304d600260405193612fd085610757565b73ffffffffffffffffffffffffffffffffffffffff8154168552613032613028600183015473ffffffffffffffffffffffffffffffffffffffff8116602089015262ffffff8160a01c16604089015260b81c60020b90565b60020b6060870152565b015473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff166080830152565b91565b67ffffffffffffffff81116107735760051b60200190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b91908110156131125760051b810135907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1813603018212156102b357019081359167ffffffffffffffff83116102b35760200182360381136102b3579190565b613085565b908092918237015f815290565b80518210156131125760209160051b010190565b909273ffffffffffffffffffffffffffffffffffffffff60809381610346989616845216602083015260408201528160608201520191612ca5565b92919261317f82612cfd565b9161318d6040519384610778565b8294818452818301116102b3578281602093845f96015e010152565b8060020b036102b357565b908160209103126102b35751610346816131a9565b62ffffff8116036102b357565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633141580613244575b61321c57565b7f38bbd576000000000000000000000000000000000000000000000000000000005f5260045ffd5b5073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016331415613216565b9073ffffffffffffffffffffffffffffffffffffffff600160ff83161b92165f52600660205260405f209060081c5f5260205260405f208181541880915516156132ca57565b7f1fb09b80000000000000000000000000000000000000000000000000000000005f5260045ffd5b9073ffffffffffffffffffffffffffffffffffffffff8091845f52600460205261335a8160405f209073ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b1691167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4565b9061338c612d91565b91604051927f19010000000000000000000000000000000000000000000000000000000000008452600284015260228301525f604060428420938281528260208201520152565b91908260409103126102b3576020823592013590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b60ff601b9116019060ff821161342857565b6133e9565b90604010156131125760400190565b90833b6135eb576041810361355f57906020926134c58361349d6134976134716134695f988801886133d3565b94909761342d565b357fff000000000000000000000000000000000000000000000000000000000000001690565b60f81c90565b935b604051948594859094939260ff6060936080840197845216602083015260408201520152565b838052039060015afa156117675773ffffffffffffffffffffffffffffffffffffffff5f51169081156135375773ffffffffffffffffffffffffffffffffffffffff160361350f57565b7f815e1d64000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f8baa579f000000000000000000000000000000000000000000000000000000005f5260045ffd5b90604082036135c35760209261357c825f946134c59401906133d3565b9290926135bd6135b86135b27f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84169360ff1c90565b60ff1690565b613416565b9361349f565b7f4be6321b000000000000000000000000000000000000000000000000000000005f5260045ffd5b909261363f9373ffffffffffffffffffffffffffffffffffffffff602094604051968795869485937f1626ba7e00000000000000000000000000000000000000000000000000000000855260048501612d7a565b0392165afa908115611767577f1626ba7e00000000000000000000000000000000000000000000000000000000917fffffffff00000000000000000000000000000000000000000000000000000000915f916136c7575b50160361369f57565b7fb0669cbc000000000000000000000000000000000000000000000000000000005f5260045ffd5b6136e0915060203d602011611760576117528183610778565b5f613696565b929160a092604051946026860152600685015260038401523083525f603a600c850120938160408201528160208201525220604051602081019182526006604082015260408152613738606082610778565b5190206006810180911161342857604080516020818101948552918101929092526137a792909161376c8160608101611290565b519020604051809381927f1e2eaeaf000000000000000000000000000000000000000000000000000000008352600483019190602083019252565b038173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa8015611767576fffffffffffffffffffffffffffffffff915f9161380557501690565b613827915060203d60201161382b575b61381f8183610778565b810190613832565b1690565b503d613815565b908160209103126102b3575190565b602073ffffffffffffffffffffffffffffffffffffffff916024604051809481937ff135baaa0000000000000000000000000000000000000000000000000000000083527fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab236004840152165afa908115611767575f916138c2575b50151590565b6138db915060203d60201161382b5761381f8183610778565b5f6138bc565b156138e857565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f57524f4e475f46524f4d000000000000000000000000000000000000000000006044820152fd5b1561394d57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f494e56414c49445f524543495049454e540000000000000000000000000000006044820152fd5b156139b257565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a45440000000000000000000000000000000000006044820152fd5b73ffffffffffffffffffffffffffffffffffffffff613a8b9293825f526007602052818060405f20541695604051947f876fda07000000000000000000000000000000000000000000000000000000006020870152602486015216604484015216606482015260648152613a85608482610778565b82613c49565b15613a935750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d011673ffffffffffffffffffffffffffffffffffffffff604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301527f876fda07000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7f8b6bc10d0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b73ffffffffffffffffffffffffffffffffffffffff613b9183612f2d565b169173ffffffffffffffffffffffffffffffffffffffff8216928314928315613c1b575b508215613bc157505090565b60ff92509073ffffffffffffffffffffffffffffffffffffffff613be7613c1693612f2d565b165f52600560205260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b541690565b908093505f52600460205273ffffffffffffffffffffffffffffffffffffffff60405f20541614915f613bb5565b803b15613c6257815f92918360208194519301915af190565b7f7c402b21000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d011673ffffffffffffffffffffffffffffffffffffffff604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301527f8d57f6b2000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7f81ea5e9e0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d011673ffffffffffffffffffffffffffffffffffffffff604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301527fa9059cbb000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff27f64e40000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d011673ffffffffffffffffffffffffffffffffffffffff604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301525f6024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff4b3b1bc0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b602073ffffffffffffffffffffffffffffffffffffffff807f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31931693845f5260058352613f788160405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b951515957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff88161790556040519586521693a3565b5f7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d565b90929193828403614018575f5b848110156140105760019061400a81850161400083888b6130b2565b913560f81c6141cd565b01613fe4565b509350505050565b7faaad13f7000000000000000000000000000000000000000000000000000000005f5260045ffd5b73ffffffffffffffffffffffffffffffffffffffff61406a610d4c835f52600760205260405f2090565b1690811561417d575f81815260096020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556140ba610ec6825f52600760205260405f2090565b813b6140e7575b7fa0ebb1de82db929a9153472f37d3a66dbede4436258311ad0f52a35a2c91d1505f80a3565b5a7f000000000000000000000000000000000000000000000000000000000000000080911061417857823b156102b3575f60405180927faf45dd140000000000000000000000000000000000000000000000000000000082528183878261415689600483019190602083019252565b0393f1614164575b506140c1565b8061059c5f61417293610778565b5f61415e565b6141a5565b7f237e6c28000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fed43c3a6000000000000000000000000000000000000000000000000000000005f5260045ffd5b909190600981101561429d57806141f857506141ec906102c292615251565b949390939291926152f8565b6001810361421a575061420e906102c292615251565b94939093929192615293565b600281036142495750614233614243916102c293614da3565b989097969195929594939461465a565b95614fe8565b916003831461428557505061133c91505b7f5cda29d7000000000000000000000000000000000000000000000000000000005f52600452602490565b6102c292509061429491614b9f565b93929092614bdb565b9050601181036142b857506102c29060208101359035614b61565b601581036142ea57506142e46142db6102c2928035916040602083013592013590565b9290919261465a565b91614b46565b60098103614328575061431c6143226143106102c2938035916040602083013592013590565b9382949392919361492c565b9261495a565b9161499b565b60128103614364575061435e61435861434e6102c2938035916040602083013592013590565b928294929161465a565b92614850565b91614864565b6017810361437757506102c290356147e4565b6018810361439057506102c290602081013590356146ca565b601981036143b357506102c2908035906143ad906020013561465a565b906146ac565b6020810361440657506144016102c29173ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690356144e5565b6145d7565b906021821461441a575061133c915061425a565b6102c29150614460903573ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016614465565b614541565b614470903090615359565b7f800000000000000000000000000000000000000000000000000000000000000082146144e05781156144cf575b81116144a75790565b7ff4d678b8000000000000000000000000000000000000000000000000000000005f5260045ffd5b90506144da5f6153f3565b9061449e565b905090565b906144f0305f615359565b907f8000000000000000000000000000000000000000000000000000000000000000831461453b578215614529575b5081116144a75790565b6145349192506153f3565b905f61451f565b50905090565b806145495750565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690813b156102b3575f916024839260405194859384927f2e1a7d4d00000000000000000000000000000000000000000000000000000000845260048401525af18015611767576145cd5750565b5f6102c291610778565b806145df5750565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016803b156102b3575f906004604051809481937fd0e30db00000000000000000000000000000000000000000000000000000000083525af18015611767576145cd5750565b73ffffffffffffffffffffffffffffffffffffffff8116600181036146a05750507f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c90565b60020361034657503090565b906146b682615472565b90816146c157505050565b6102c2926154f2565b906146d4826155bf565b90811161478c5773ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001691823b156102b35773ffffffffffffffffffffffffffffffffffffffff925f926040519485937f80f0b44c00000000000000000000000000000000000000000000000000000000855216600484015260248301528183604482800301925af180156117675761477e5750565b8061059c5f6102c293610778565b6102c2917f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c90614864565b7f80000000000000000000000000000000000000000000000000000000000000008114613428575f0390565b61480f81307f0000000000000000000000000000000000000000000000000000000000000000615638565b907f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c5f831215614846576143226102c2936147b8565b6102c29291614864565b90816148605761034691506155bf565b5090565b909180156149275773ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016803b156102b3575f928360649273ffffffffffffffffffffffffffffffffffffffff948560405198899788967f0b0d9c0900000000000000000000000000000000000000000000000000000000885216600487015216602485015260448401525af18015611767576149125750565b8061491e5f8093610778565b8003126102b357565b505050565b15614956577f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c90565b3090565b907f8000000000000000000000000000000000000000000000000000000000000000820361498c576103469150615472565b816148605761034691506153f3565b919081156149275773ffffffffffffffffffffffffffffffffffffffff8316614a51575060049150602090604051928380927f11da60b400000000000000000000000000000000000000000000000000000000825273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af1801561176757614a365750565b614a4e9060203d60201161382b5761381f8183610778565b50565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690813b156102b3576040517fa584119400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152925f8460248183875af1918215611767575f95602095614af794614b32575b506156a3565b6004604051809481937f11da60b40000000000000000000000000000000000000000000000000000000083525af1801561176757614a365750565b8061059c89614b4093610778565b5f614af1565b91614b586102c2938261435e826155bf565b61435e826155bf565b906102c291614b967f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c9182614322826153f3565b614322826153f3565b919082359260208101359260408201359263ffffffff60608401351683019063ffffffff82351693602080840193860101910110611eec579190565b937f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c614c088682613b73565b15614d61575090849291614c1b84612f5b565b9590916fffffffffffffffffffffffffffffffff614c478860201c60020b8960081c60020b868a6136e6565b1691865f5260096020525f6040812055865f526002602052865f73ffffffffffffffffffffffffffffffffffffffff604082205416614c87811515612ec8565b8082526003602052604082207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8154019055614cce610ec6845f52600260205260405f2090565b614ce3610ec6845f52600460205260405f2090565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8280a482614d27575b5050505050505060ff16614d1e5750565b6102c290614040565b614d5596614d5094614d43614d3e614d4a966157da565b6147b8565b908a6158b7565b906159b6565b6159f3565b815f8080808080614d0d565b73ffffffffffffffffffffffffffffffffffffffff907f0ca968d8000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b9091819260a08301359260c08101359260e08201359261010083013592610120810135926101408201359263ffffffff6101608401351683019063ffffffff82351693602080840193860101910110611eec579190565b91908260a09103126102b357604051614e1281610757565b60808082948035614e2281610295565b84526020810135614e3281610295565b60208501526040810135614e45816131c9565b60408501526060810135614e58816131a9565b6060850152013591614e6983610295565b0152565b600260806102c293614ec48135614e8381610295565b859073ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b60018401614f1a6020830135614ed981610295565b829073ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b6040820135614f28816131c9565b81547fffffffffffff000000000000ffffffffffffffffffffffffffffffffffffffff76ffffff00000000000000000000000000000000000000006060860135614f71816131a9565b60b81b79ffffff0000000000000000000000000000000000000000000000169360a01b16911617179055013591614fa783610295565b019073ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b909194969297939597600854926001840160085573ffffffffffffffffffffffffffffffffffffffff8a169961501f8b1515613946565b845f52600260205273ffffffffffffffffffffffffffffffffffffffff60405f2054166151f35761510f6151aa986151a493876102c29e61509e8661508561519c9873ffffffffffffffffffffffffffffffffffffffff165f52600360205260405f2090565b80546001019055610e71845f52600260205260405f2090565b5f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a46150cd3688614dfa565b63ffffff007fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000060a066ffffff000000009320169260081b169260201b16171790565b9283615123875f52600960205260405f2090565b55837fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000168561518c6001615181847fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000165f52600a60205260405f2090565b015460b81c60020b90565b60020b156151b0575b50506157da565b923690614dfa565b906158b7565b50615aba565b6151e76151ec927fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000165f52600a60205260405f2090565b614e6d565b5f85615195565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f414c52454144595f4d494e5445440000000000000000000000000000000000006044820152fd5b909181359260208301359260408101359260608201359263ffffffff60808401351683019063ffffffff82351693602080840193860101910110611eec579190565b90959495939192937f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c6152c78382613b73565b15614d61575095614d509282614d3e6102c298996152f26152ea614d4a97612f5b565b9390926157da565b916158b7565b90959495939192937f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c61532c8382613b73565b15614d6157509561535492826152f26102c2989961534c614d4a96612f5b565b9290916157da565b615aba565b73ffffffffffffffffffffffffffffffffffffffff811661537957503190565b9073ffffffffffffffffffffffffffffffffffffffff60246020928260405195869485937f70a08231000000000000000000000000000000000000000000000000000000008552166004840152165afa908115611767575f916153da575090565b610346915060203d60201161382b5761381f8183610778565b61541e81307f0000000000000000000000000000000000000000000000000000000000000000615638565b905f82136154305750610346906147b8565b73ffffffffffffffffffffffffffffffffffffffff907f3351b260000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff811661549257504790565b6040517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152906020908290602490829073ffffffffffffffffffffffffffffffffffffffff165afa908115611767575f916153da575090565b90919073ffffffffffffffffffffffffffffffffffffffff811661552c57505f80808061552094865af11590565b6155275750565b613e4a565b919073ffffffffffffffffffffffffffffffffffffffff604051927fa9059cbb00000000000000000000000000000000000000000000000000000000845216600483015260248201525f604060208260448582885af13d15601f3d116001855114161716928281528260208201520152156155a45750565b73ffffffffffffffffffffffffffffffffffffffff16613d6a565b6155ea81307f0000000000000000000000000000000000000000000000000000000000000000615638565b905f82126155f6575090565b73ffffffffffffffffffffffffffffffffffffffff907f4c085bf1000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff809381602094165f52168252602460405f2060405194859384927ff135baaa0000000000000000000000000000000000000000000000000000000084526004840152165afa908115611767575f916153da575090565b90919073ffffffffffffffffffffffffffffffffffffffff83163003615705576102c2925073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906154f2565b9073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016803b156102b3576040517f36c7851600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff94851660048201527f00000000000000000000000000000000000000000000000000000000000000008516602482015291841660448301529190921660648301525f908290608490829084905af180156117675761477e5750565b905f82126157e457565b7f93dafdf1000000000000000000000000000000000000000000000000000000005f5260045ffd5b91908260409103126102b3576020825192015190565b60606103469593615880836101409573ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b805160020b60a0840152602081015160020b60c0840152604081015160e08401520151610100820152816101208201520191612ca5565b95939460409161591d6158c8612cee565b60088a901c60020b81529260208a811c60020b908501528585850152866060850152845198899485947f5a6bcfda00000000000000000000000000000000000000000000000000000000865260048601615822565b03815f73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af1908115611767575f945f92615982575b5081949560ff1661597957505050565b6102c292615c1d565b9094506159a7915060403d6040116159af575b61599f8183610778565b81019061580c565b90935f615969565b503d615995565b6159d9906159cb8360801d8260801d03615d60565b92600f0b90600f0b03615d60565b6fffffffffffffffffffffffffffffffff169060801b1790565b929190926fffffffffffffffffffffffffffffffff8160801d9481615a1787615d6e565b91169182911610615a9f57506fffffffffffffffffffffffffffffffff929350600f0b9082615a4583615d6e565b91169283911610615a54575050565b90615a6f6fffffffffffffffffffffffffffffffff92615d6e565b907f12816f22000000000000000000000000000000000000000000000000000000005f526004521660245260445ffd5b6fffffffffffffffffffffffffffffffff90615a6f86615d6e565b908160801d600f0b91600f0b915f811280615be8575b615b865750505f811280615b4f575b615ae7575050565b90615b0c615af761133c936147b8565b6fffffffffffffffffffffffffffffffff1690565b7f31e30ad0000000000000000000000000000000000000000000000000000000005f526fffffffffffffffffffffffffffffffff91821660045216602452604490565b506fffffffffffffffffffffffffffffffff80615b6b836147b8565b16166fffffffffffffffffffffffffffffffff831610615adf565b906fffffffffffffffffffffffffffffffff615ba461133c936147b8565b7f31e30ad0000000000000000000000000000000000000000000000000000000005f526fffffffffffffffffffffffffffffffff9283166004521616602452604490565b506fffffffffffffffffffffffffffffffff615c03826147b8565b166fffffffffffffffffffffffffffffffff831610615ad0565b615c8e9192815f52600760205273ffffffffffffffffffffffffffffffffffffffff60405f20541693604051927fd8865c2700000000000000000000000000000000000000000000000000000000602085015260248401526044830152606482015260648152613a85608482610778565b15615c965750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d0116604051917f90bfb86500000000000000000000000000000000000000000000000000000000835260048301527fd8865c27000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7fe94f10e20000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b9081600f0b9182036157e457565b5f81600f0b126157e4576fffffffffffffffffffffffffffffffff169056fea164736f6c634300081a000a0000000000000000000000006550fa0d92b38f52c37d32d71084a7b270226ba5000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000000000000000000000000000000000000000030d400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000980b62da83eff3d4576c647993b0c1d7faf17c73", + "nonce": "0x21", + "chainId": "0x66eee" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x53a870", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x5027dea3dcacedb3ae38865f87645b4128422ad5831ef512b6d59d1bf7bab191", + "transactionIndex": "0x1", + "blockHash": "0xcaae8f2502a94e98d5a2afaa8ecb189fae395c5bd96eaa1b13abd501485f0d44", + "blockNumber": "0x5d1825f", + "gasUsed": "0x53a870", + "effectiveGasPrice": "0x5f5e100", + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "to": null, + "contractAddress": "0xff34e285f8ed393e366046153e3c16484a4dd674", + "gasUsedForL1": "0x326f1", + "l1BlockNumber": "0x6c1260" + } + ], + "libraries": [], + "pending": [], + "returns": { + "positionDescriptor": { + "internal_type": "contract PositionDescriptor", + "value": "0x0000000000000000000000000000000000000000" + }, + "posm": { + "internal_type": "contract PositionManager", + "value": "0xFf34e285F8ED393E366046153e3C16484A4dD674" + } + }, + "timestamp": 1731681164, + "chain": 421614, + "commit": "49e1534b" +} \ No newline at end of file diff --git a/broadcast/DeployQuoter.s.sol/421614/run-latest.json b/broadcast/DeployQuoter.s.sol/421614/run-latest.json new file mode 100644 index 00000000..7387852d --- /dev/null +++ b/broadcast/DeployQuoter.s.sol/421614/run-latest.json @@ -0,0 +1,55 @@ +{ + "transactions": [ + { + "hash": "0x4f381da032dc2f6f3af4b757a603c45a9ce7636d1c5920c22a4c981275be4663", + "transactionType": "CREATE", + "contractName": "Quoter", + "contractAddress": "0x39bf2eff94201cfaa471932655404f63315147a4", + "function": null, + "arguments": [ + "0x6550fa0D92B38F52C37D32d71084A7B270226Ba5" + ], + "transaction": { + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "gas": "0x1b558a", + "value": "0x0", + "input": "0x60a034607b57601f61175038819003918201601f19168301916001600160401b03831184841017607f57808492602094604052833981010312607b57516001600160a01b0381168103607b576080526040516116bc908161009482396080518181816101b5015281816102ab015281816105b001526114910152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c8063147d2af91461087f578063587330731461082d578063595323f5146107815780636a36a38c1461065657806391dd73461461052c578063aa2f15011461037f578063aa9d21cb1461032d578063ca253dc9146101d9578063dc4c90d31461016b5763eebe0c6a14610087575f80fd5b346101675761009536610d77565b30330361013f57806101016100fb6100f660a06fffffffffffffffffffffffffffffffff9501936100c5856110fd565b6100de876100d560c0850161110a565b16600f0b611289565b906100ec60e0840184611127565b9490933690610c2a565b61134b565b916110fd565b156101355781165b7fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b60801d8116610109565b7f29c3b7ee000000000000000000000000000000000000000000000000000000005f5260045ffd5b5f80fd5b34610167575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016757602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101675760406101e936610a53565b5f806102915f61022b6102575a9688519283917f6a36a38c00000000000000000000000000000000000000000000000000000000602084015260248301610e99565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610936565b8651809381927f48c89491000000000000000000000000000000000000000000000000000000008352602060048401526024830190610de7565b03818373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af1908161030d575b506103055750506102f76102f16102e9611020565b925a9061104f565b916112b5565b905b82519182526020820152f35b9091506102f9565b610328903d805f833e6103208183610936565b810190610fbd565b6102d4565b3461016757604061033d36610c93565b5f806102915f61022b6102575a9688519283917feebe0c6a0000000000000000000000000000000000000000000000000000000060208401526024830161105c565b346101675761038d36610e2a565b30330361013f57602081016103a281836111a7565b90506103b06040840161110a565b916103ba846111fb565b9190815b610400576fffffffffffffffffffffffffffffffff847fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b90919261040d82866111a7565b91907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85018581116104dc5761046561045e6fffffffffffffffffffffffffffffffff926104ac966104819561121c565b9788611588565b939061047460808a018a611127565b939092169085159061134b565b90156105095761049390600f0b611178565b6fffffffffffffffffffffffffffffffff165b936111fb565b9180156104dc577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190816103be565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6105159060801d611178565b6fffffffffffffffffffffffffffffffff166104a6565b346101675760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101675760043567ffffffffffffffff811161016757366023820112156101675780600401359067ffffffffffffffff82116101675736602483830101116101675773ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016330361062e575f6024819284806040519384930183378101838152039082305af16105f9611020565b9061060657602081519101fd5b7fe0752a5a000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fae18210a000000000000000000000000000000000000000000000000000000005f5260045ffd5b346101675761066436610e2a565b30330361013f57602081019061067a82826111a7565b90506106886040830161110a565b91610692816111fb565b935f915b8383106106db576fffffffffffffffffffffffffffffffff857fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b9091929361075c6fffffffffffffffffffffffffffffffff61073d61072860019461071a6107138a61070d8b8b6111a7565b9061121c565b9b8c611588565b948593919216600f0b611289565b61073560808d018d611127565b93909261134b565b9015610767576fffffffffffffffffffffffffffffffff165b966111fb565b959493019190610696565b60801d6fffffffffffffffffffffffffffffffff16610756565b346101675761078f36610d77565b30330361013f57806107db6100fb6100f660a06fffffffffffffffffffffffffffffffff9501936107bf856110fd565b866107cc60c0840161110a565b16906100ec60e0840184611127565b1561081a576107ec9060801d611178565b81167fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b61082690600f0b611178565b8116610109565b3461016757604061083d36610c93565b5f806102915f61022b6102575a9688519283917f595323f50000000000000000000000000000000000000000000000000000000060208401526024830161105c565b3461016757604061088f36610a53565b5f806102915f61022b6102575a9688519283917faa2f150100000000000000000000000000000000000000000000000000000000602084015260248301610e99565b6060810190811067ffffffffffffffff8211176108ed57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60a0810190811067ffffffffffffffff8211176108ed57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176108ed57604052565b359073ffffffffffffffffffffffffffffffffffffffff8216820361016757565b359062ffffff8216820361016757565b35908160020b820361016757565b67ffffffffffffffff81116108ed57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b81601f8201121561016757803590610a07826109b6565b92610a156040519485610936565b8284526020838301011161016757815f926020809301838601378301015290565b35906fffffffffffffffffffffffffffffffff8216820361016757565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8201126101675760043567ffffffffffffffff81116101675760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc82840301126101675760405191610ac8836108d1565b610ad482600401610977565b8352602482013567ffffffffffffffff811161016757820190806023830112156101675760048201359167ffffffffffffffff83116108ed578260051b60405193610b226020830186610936565b845281016024019060208401908383116101675760248101915b838310610b615750505050506020830152610b5990604401610a36565b604082015290565b823567ffffffffffffffff8111610167576004908301019060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe083880301126101675760405190610bb28261091a565b610bbe60208401610977565b8252610bcc60408401610998565b6020830152610bdd606084016109a8565b6040830152610bee60808401610977565b606083015260a08301359167ffffffffffffffff831161016757610c1a886020809695819601016109f0565b6080820152815201920191610b3c565b91908260a091031261016757604051610c428161091a565b6080610c8e818395610c5381610977565b8552610c6160208201610977565b6020860152610c7260408201610998565b6040860152610c83606082016109a8565b606086015201610977565b910152565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8201126101675760043567ffffffffffffffff8111610167576101007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc828403011261016757604051916080830183811067ffffffffffffffff8211176108ed57604052610d278183600401610c2a565b835260a48201358015158103610167576020840152610d4860c48301610a36565b604084015260e48201359167ffffffffffffffff831161016757610d6f92016004016109f0565b606082015290565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc820112610167576004359067ffffffffffffffff8211610167577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc82610100920301126101675760040190565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc820112610167576004359067ffffffffffffffff8211610167577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc826060920301126101675760040190565b60208152608081019173ffffffffffffffffffffffffffffffffffffffff815116602083015260208101519260606040840152835180915260a0830190602060a08260051b8601019501915f905b828210610f1157505050506fffffffffffffffffffffffffffffffff604060609201511691015290565b90919295602080610faf837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff608a6001960301865260a060808c5173ffffffffffffffffffffffffffffffffffffffff815116845262ffffff868201511686850152604081015160020b604085015273ffffffffffffffffffffffffffffffffffffffff60608201511660608501520151918160808201520190610de7565b980192019201909291610ee7565b6020818303126101675780519067ffffffffffffffff8211610167570181601f8201121561016757805190610ff1826109b6565b92610fff6040519485610936565b8284526020838301011161016757815f9260208093018386015e8301015290565b3d1561104a573d90611031826109b6565b9161103f6040519384610936565b82523d5f602084013e565b606090565b919082039182116104dc57565b61012060606110fa93602084526110c160208501825173ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b6020810151151560c08501526fffffffffffffffffffffffffffffffff60408201511660e0850152015191610100808201520190610de7565b90565b3580151581036101675790565b356fffffffffffffffffffffffffffffffff811681036101675790565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe181360301821215610167570180359067ffffffffffffffff82116101675760200191813603831361016757565b600f0b7fffffffffffffffffffffffffffffffff8000000000000000000000000000000081146104dc575f0390565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe181360301821215610167570180359067ffffffffffffffff821161016757602001918160051b3603831361016757565b3573ffffffffffffffffffffffffffffffffffffffff811681036101675790565b919081101561125c5760051b810135907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6181360301821215610167570190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f800000000000000000000000000000000000000000000000000000000000000081146104dc575f0390565b7fecbd9804000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000060208301511603611309576024015190565b611347906040519182917f6190b2b0000000000000000000000000000000000000000000000000000000008352602060048401526024830190610de7565b0390fd5b92949390801561156d576401000276a4915b806040519261136b846108d1565b1515978884526020840194868652604085019073ffffffffffffffffffffffffffffffffffffffff1681526040519586957ff3cd914c00000000000000000000000000000000000000000000000000000000875260048701611417908b73ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b51151560a48701525160c48601525173ffffffffffffffffffffffffffffffffffffffff1660e48501526101048401610120905281610124850152610144840137808201610144015f9052601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01681010361014401817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1691815a6020945f91f1908115611562575f91611530575b5080945f8312145f146115285760801d5b600f0b036114f95750565b60a090207f7a5ed734000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b600f0b6114ee565b90506020813d60201161155a575b8161154b60209383610936565b8101031261016757515f6114dd565b3d915061153e565b6040513d5f823e3d90fd5b73fffd8963efd1fc6a506488495d951d5263988d259161135d565b905f60806040516115988161091a565b82815282602082015282604082015282606082015201526115b8826111fb565b73ffffffffffffffffffffffffffffffffffffffff82169173ffffffffffffffffffffffffffffffffffffffff82168084105f14611690575073ffffffffffffffffffffffffffffffffffffffff905b1680921492602081013562ffffff8116809103610167576040820135918260020b80930361016757606001359273ffffffffffffffffffffffffffffffffffffffff84168094036101675773ffffffffffffffffffffffffffffffffffffffff90604051956116768761091a565b865216602085015260408401526060830152608082015291565b91505073ffffffffffffffffffffffffffffffffffffffff829161160856fea164736f6c634300081a000a0000000000000000000000006550fa0d92b38f52c37d32d71084a7b270226ba5", + "nonce": "0x1f", + "chainId": "0x66eee" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x14be3d", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x4f381da032dc2f6f3af4b757a603c45a9ce7636d1c5920c22a4c981275be4663", + "transactionIndex": "0x1", + "blockHash": "0x2fedab57be7301f5d221217a3147e970bf307e9316262f0c11eade2f21bf2337", + "blockNumber": "0x5d18139", + "gasUsed": "0x14be3d", + "effectiveGasPrice": "0x5f5e100", + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "to": null, + "contractAddress": "0x39bf2eff94201cfaa471932655404f63315147a4", + "gasUsedForL1": "0xd1ff", + "l1BlockNumber": "0x6c1259" + } + ], + "libraries": [], + "pending": [], + "returns": { + "state": { + "internal_type": "contract Quoter", + "value": "0x39BF2eFF94201cfAA471932655404F63315147a4" + } + }, + "timestamp": 1731681079, + "chain": 421614, + "commit": "49e1534b" +} \ No newline at end of file diff --git a/broadcast/DeployStateView.s.sol/421614/run-latest.json b/broadcast/DeployStateView.s.sol/421614/run-latest.json new file mode 100644 index 00000000..5460c7d5 --- /dev/null +++ b/broadcast/DeployStateView.s.sol/421614/run-latest.json @@ -0,0 +1,55 @@ +{ + "transactions": [ + { + "hash": "0xdc744ad8bee531b5844f812c86a2bfca06e6b6b6bd3935aeb3ce04da482019d4", + "transactionType": "CREATE", + "contractName": "StateView", + "contractAddress": "0x841b5a0b3dbc473c8a057e2391014aa4c4751351", + "function": null, + "arguments": [ + "0x6550fa0D92B38F52C37D32d71084A7B270226Ba5" + ], + "transaction": { + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "gas": "0x1108d9", + "value": "0x0", + "input": "0x60a03460b357601f610e9738819003918201601f19168301916001600160401b0383118484101760b75780849260209460405283398101031260b357516001600160a01b038116810360b357608052604051610dcb90816100cc823960805181818161012b01528181610246015281816102db0152818161039e0152818161048101528181610549015281816105db01528181610622015281816106870152818161073401528181610810015261096a0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80631c7ccb4c146108ac57806353e9c1fb146107c95780637c40f1fe146106ab5780638a2bb9e61461064657806397fd7b421461060b5780639ec538c8146105a2578063c815641c1461050b578063caedab54146103f6578063dacf1d2f146102ff578063dc4c90d314610291578063f0928f29146101e65763fa6793d51461009d575f80fd5b346101a25760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576100d7600435610d2f565b600381018091116101b957604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f90610177575b6020906fffffffffffffffffffffffffffffffff60405191168152f35b506020813d6020116101a6575b8161019160209383610a2b565b810103126101a2576020905161015a565b5f80fd5b3d9150610184565b6040513d5f823e3d90fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b346101a2576101fd6101f7366109f7565b90610d8b565b604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f90610177576020906fffffffffffffffffffffffffffffffff60405191168152f35b346101a2575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a257602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a25760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760243573ffffffffffffffffffffffffffffffffffffffff811681036101a2576103566109e7565b6064358060020b81036101a2576103f2926103c2926040519260843560268501526006840152600383015281525f603a600c83012091816040820152816020820152526004357f0000000000000000000000000000000000000000000000000000000000000000610bc0565b604080516fffffffffffffffffffffffffffffffff90941684526020840192909252908201529081906060820190565b0390f35b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576104386104306109d7565b600435610d55565b604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f906104d8575b6040908151906fffffffffffffffffffffffffffffffff8116825260801d600f0b6020820152f35b506020813d602011610503575b816104f260209383610a2b565b810103126101a257604090516104b0565b3d91506104e5565b346101a25760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a257608062ffffff8061056d6004357f0000000000000000000000000000000000000000000000000000000000000000610c63565b92949173ffffffffffffffffffffffffffffffffffffffff6040519616865260020b6020860152166040840152166060820152f35b346101a25760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760406105ff6004357f0000000000000000000000000000000000000000000000000000000000000000610c58565b82519182526020820152f35b346101a2576103f26103c261061f366109f7565b907f0000000000000000000000000000000000000000000000000000000000000000610bc0565b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760406105ff6106826109d7565b6004357f0000000000000000000000000000000000000000000000000000000000000000610b1e565b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576106e56104306109d7565b604051907f35fd631a0000000000000000000000000000000000000000000000000000000082526004820152600360248201525f8160448173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae576080915f916107a7575b506020810151906060604082015191015190604051926fffffffffffffffffffffffffffffffff81168452841d600f0b602084015260408301526060820152f35b6107c391503d805f833e6107bb8183610a2b565b810190610a99565b82610766565b346101a25760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760406004356108056109d7565b9061080e6109e7565b7f00000000000000000000000000000000000000000000000000000000000000009061083a8383610c58565b90610846868686610b1e565b96909361085f610857828989610b1e565b989097610c63565b5050905060020b9160020b82125f14610885575050505003910382519182526020820152f35b95969593949360020b1361089d5750500391036105ff565b949392909403039203036105ff565b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576024358060010b8091036101a2576108f4600435610d2f565b600581018091116101b957604051906020820192835260408201526040815261091e606082610a2b565b519020604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f906109a4575b602090604051908152f35b506020813d6020116109cf575b816109be60209383610a2b565b810103126101a25760209051610999565b3d91506109b1565b602435908160020b82036101a257565b604435908160020b82036101a257565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60409101126101a2576004359060243590565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610a6c57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6020818303126101a25780519067ffffffffffffffff82116101a257019080601f830112156101a25781519167ffffffffffffffff8311610a6c578260051b9060405193610aea6020840186610a2b565b84526020808501928201019283116101a257602001905b828210610b0e5750505090565b8151815260209182019101610b01565b9291610b2991610d55565b600181018091116101b95773ffffffffffffffffffffffffffffffffffffffff9260445f9260405195869384927f35fd631a000000000000000000000000000000000000000000000000000000008452600484015260026024840152165afa9182156101ae575f92610ba4575b506040602083015192015190565b610bb99192503d805f833e6107bb8183610a2b565b905f610b96565b6044610be273ffffffffffffffffffffffffffffffffffffffff945f94610d8b565b60405194859384927f35fd631a000000000000000000000000000000000000000000000000000000008452600484015260036024840152165afa9081156101ae575f91610c3e575b506020810151916060604083015192015190565b610c5291503d805f833e6107bb8183610a2b565b5f610c2a565b9190610b2990610d2f565b6020906024610c8773ffffffffffffffffffffffffffffffffffffffff9594610d2f565b60405195869384927f1e2eaeaf0000000000000000000000000000000000000000000000000000000084526004840152165afa9182156101ae575f92610cfb575b5073ffffffffffffffffffffffffffffffffffffffff8216918060a01c60020b9162ffffff808360b81c169260d01c1690565b9091506020813d602011610d27575b81610d1760209383610a2b565b810103126101a25751905f610cc8565b3d9150610d0a565b604051602081019182526006604082015260408152610d4f606082610a2b565b51902090565b610d5e90610d2f565b600481018091116101b95760405190602082019260020b8352604082015260408152610d4f606082610a2b565b610d9490610d2f565b600681018091116101b9576040519060208201928352604082015260408152610d4f606082610a2b56fea164736f6c634300081a000a0000000000000000000000006550fa0d92b38f52c37d32d71084a7b270226ba5", + "nonce": "0x20", + "chainId": "0x66eee" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x10e283", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xdc744ad8bee531b5844f812c86a2bfca06e6b6b6bd3935aeb3ce04da482019d4", + "transactionIndex": "0x2", + "blockHash": "0x2d8242d3099be94cd3e591d6e9e2690fc488e754d7fd5fcd10e6543b007a96a6", + "blockNumber": "0x5d181c2", + "gasUsed": "0xcea78", + "effectiveGasPrice": "0x5f5e100", + "from": "0x7024cc7e60d6560f0b5877da2bb921fcbf1f4375", + "to": null, + "contractAddress": "0x841b5a0b3dbc473c8a057e2391014aa4c4751351", + "gasUsedForL1": "0x840b", + "l1BlockNumber": "0x6c125c" + } + ], + "libraries": [], + "pending": [], + "returns": { + "state": { + "internal_type": "contract StateView", + "value": "0x841B5A0b3DBc473c8A057E2391014aa4C4751351" + } + }, + "timestamp": 1731681122, + "chain": 421614, + "commit": "49e1534b" +} \ No newline at end of file diff --git a/deploy.sh b/deploy.sh deleted file mode 100755 index 04c43c20..00000000 --- a/deploy.sh +++ /dev/null @@ -1,12 +0,0 @@ -# forge script script/DeployQuoter.s.sol --sig "run(address)" 0xcfa0a7b03da220b5d68ffa048aacf48daee1915e --rpc-url base_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_BASE_SEPOLIA --verify --broadcast -# forge script script/DeployQuoter.s.sol --sig "run(address)" 0x1411060f44da12017adbb34de5f9238912db2055 --rpc-url op_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_OP_SEPOLIA --verify --broadcast - -# forge script script/DeployStateView.s.sol --sig "run(address)" 0xbac21cdee1c59ccbda4547fc531803bd0d038251 --rpc-url sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_SEPOLIA --verify --broadcast -# forge script script/DeployStateView.s.sol --sig "run(address)" 0xd51ccb81de8426637f7b6fa8405b1990a3b81648 --rpc-url unichain_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_SEPOLIA --verify --broadcast -# forge script script/DeployStateView.s.sol --sig "run(address)" 0xcfa0a7b03da220b5d68ffa048aacf48daee1915e --rpc-url base_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_BASE_SEPOLIA --verify --broadcast -# forge script script/DeployStateView.s.sol --sig "run(address)" 0x1411060f44da12017adbb34de5f9238912db2055 --rpc-url op_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_OP_SEPOLIA --verify --broadcast - -forge script script/DeployPosm.s.sol --sig "run(address,address,uint256,address)" 0xbac21cdee1c59ccbda4547fc531803bd0d038251 0x000000000022D473030F116dDEE9F6B43aC78BA3 200000 0xfFf9976782d46CC05630D1f6eBAb18b2324d6B14 --rpc-url sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_SEPOLIA --verify --broadcast -forge script script/DeployPosm.s.sol --sig "run(address,address,uint256,address)" 0xd51ccb81de8426637f7b6fa8405b1990a3b81648 0x000000000022D473030F116dDEE9F6B43aC78BA3 200000 0x4200000000000000000000000000000000000006 --rpc-url unichain_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_SEPOLIA --verify --broadcast -forge script script/DeployPosm.s.sol --sig "run(address,address,uint256,address)" 0xcfa0a7b03da220b5d68ffa048aacf48daee1915e 0x000000000022D473030F116dDEE9F6B43aC78BA3 200000 0x4200000000000000000000000000000000000006 --rpc-url base_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_BASE_SEPOLIA --verify --broadcast -forge script script/DeployPosm.s.sol --sig "run(address,address,uint256,address)" 0x1411060f44da12017adbb34de5f9238912db2055 0x000000000022D473030F116dDEE9F6B43aC78BA3 200000 0x4200000000000000000000000000000000000006 --rpc-url op_sepolia --private-key $SEPOLIA_PK --etherscan-api-key $ETHERSCAN_API_KEY_OP_SEPOLIA --verify --broadcast diff --git a/foundry.toml b/foundry.toml index b664eadb..192b8ced 100644 --- a/foundry.toml +++ b/foundry.toml @@ -27,3 +27,4 @@ sepolia = "https://rpc.sepolia.org" unichain_sepolia = "https://sepolia.unichain.org" base_sepolia = "https://sepolia.base.org" op_sepolia = "https://sepolia.optimism.io" +arbitrum_sepolia = "https://sepolia-rollup.arbitrum.io/rpc"