From 2ce89a74c3cc799c18763d8914cf7f049277b177 Mon Sep 17 00:00:00 2001 From: david-uniswap <274080779+david-uniswap@users.noreply.github.com> Date: Tue, 26 May 2026 11:30:11 -0700 Subject: [PATCH 1/2] deploy Universal Router 2.1 to Robinhood Chain Adds UniversalRouter v2.1 to the Robinhood Chain (4663) deployment, with UnsupportedProtocol as the acrossSpokePool placeholder. Deployed: - UniversalRouter (v2.1): 0x248a454ac3584c2a48d1fcb28d3910a6b6ea00af Tx: 0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3 - UnsupportedProtocol: 0x7332D11BD10d18A04B119Cd4671a96f3148002c4 Tx: 0x029d23d957e6d9f39b2bd655a10d01e764999b32344c2ccdcb9667259cd80f24 Why v2.1 over v2.0: v2.1 includes features that have nothing to do with Across (proxy approval swapping via SwapProxy, PAY_PORTION_FULL_PRECISION for high-precision fees, per-hop slippage via minHopPriceX36 on v3SwapExactInput/Output). The spokePool arg is only consumed by command 0x40 (ACROSS_V4_DEPOSIT_V3); pointing it at UnsupportedProtocol means any attempted Across call reverts cleanly with UnsupportedProtocolError() instead of the empty extcodesize revert that address(0) produces. Deploy was run in two steps because Deploy-all.s.sol reads acrossSpokePool.value directly from the task config and doesn't propagate UnsupportedProtocol's deployed address. Step A deployed UnsupportedProtocol; Step B wired its address into acrossSpokePool.value and deployed UR. Chronicles required a manual patch into deployments/json/4663.json: UR v2.1 uses CREATE2 via the canonical 0x4e59...956c deployer, which leaves contractName=null in the broadcast file and causes chronicles to skip it (ambiguous match against v2.0 vs v2.1 artifacts). v2.0 used plain CREATE, which was self-labeling. Constructor args (RouterParameters struct): - permit2: 0x000000000022D473030F116dDEE9F6B43aC78BA3 - weth9: 0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73 - v2Factory: 0x8bcEaA40B9AcdfAedF85AdF4FF01F5Ad6517937f - v3Factory: 0x1f7d7550B1b028f7571E69A784071F0205FD2EfA - v2PairInitCodeHash: 0x96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f - v3PoolInitCodeHash: 0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54 - v4PoolManager: 0x8366a39CC670B4001A1121B8F6A443A643e40951 - v3NFTPositionMgr: 0x73991a25C818Bf1f1128dEAaB1492D45638DE0D3 - v4PositionMgr: 0x58daec3116aae6D93017bAAea7749052E8a04fA7 - spokePool: 0x7332D11BD10d18A04B119Cd4671a96f3148002c4 (UnsupportedProtocol) --- .../4663/run-1779818847710.json | 48 ++ .../4663/run-1779819181252.json | 49 ++ .../Deploy-all.s.sol/4663/run-latest.json | 663 +----------------- deployments/4663.md | 208 +++--- deployments/index.md | 4 +- deployments/json/4663.json | 18 +- script/deploy/tasks/4663/task-1779819138.json | 609 ++++++++++++++++ script/deploy/tasks/4663/task-pending.json | 609 ++++++++++++++++ 8 files changed, 1475 insertions(+), 733 deletions(-) create mode 100644 broadcast/Deploy-all.s.sol/4663/run-1779818847710.json create mode 100644 broadcast/Deploy-all.s.sol/4663/run-1779819181252.json create mode 100644 script/deploy/tasks/4663/task-1779819138.json create mode 100644 script/deploy/tasks/4663/task-pending.json diff --git a/broadcast/Deploy-all.s.sol/4663/run-1779818847710.json b/broadcast/Deploy-all.s.sol/4663/run-1779818847710.json new file mode 100644 index 00000000..e7aada47 --- /dev/null +++ b/broadcast/Deploy-all.s.sol/4663/run-1779818847710.json @@ -0,0 +1,48 @@ +{ + "transactions": [ + { + "hash": "0x029d23d957e6d9f39b2bd655a10d01e764999b32344c2ccdcb9667259cd80f24", + "transactionType": "CREATE", + "contractName": "UnsupportedProtocol", + "contractAddress": "0x7332d11bd10d18a04b119cd4671a96f3148002c4", + "function": null, + "arguments": null, + "transaction": { + "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", + "gas": "0x1499f", + "value": "0x0", + "input": "0x6080604052348015600e575f5ffd5b50603580601a5f395ff3fe6080604052348015600e575f5ffd5b5060405163ea3559ef60e01b815260040160405180910390fdfea164736f6c634300081e000a", + "nonce": "0x2e", + "chainId": "0x1237" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x106ae", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x0", + "transactionHash": "0x029d23d957e6d9f39b2bd655a10d01e764999b32344c2ccdcb9667259cd80f24", + "transactionIndex": "0x1", + "blockHash": "0xe57988b035ca995a0efc18ce4e37206b6aa3c3dce4431dfc363faee4ee20beaf", + "blockNumber": "0x4597", + "gasUsed": "0x106ae", + "effectiveGasPrice": "0x5f62f20", + "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", + "to": null, + "contractAddress": "0x7332d11bd10d18a04b119cd4671a96f3148002c4", + "gasUsedForL1": "0x920", + "l1BlockNumber": "0x1803bff" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1779818847710, + "chain": 4663, + "commit": "dbef74e" +} \ No newline at end of file diff --git a/broadcast/Deploy-all.s.sol/4663/run-1779819181252.json b/broadcast/Deploy-all.s.sol/4663/run-1779819181252.json new file mode 100644 index 00000000..89b3d0b8 --- /dev/null +++ b/broadcast/Deploy-all.s.sol/4663/run-1779819181252.json @@ -0,0 +1,49 @@ +{ + "transactions": [ + { + "hash": "0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3", + "transactionType": "CREATE2", + "contractName": null, + "contractAddress": "0x248a454ac3584c2a48d1fcb28d3910a6b6ea00af", + "function": null, + "arguments": null, + "transaction": { + "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x643b3f", + "value": "0x0", + "input": "0x00000000000000000000000000000000000000000000000000000000000000006102a080604052346104145761014081615c2380380380916100218285610433565b833981010312610414576040519061014082016001600160401b038111838210176104005760405261005281610456565b825261006060208201610456565b6020830190815261007360408301610456565b906040840191825261008760608401610456565b91606085019283526080840151946080810195865260a08501519360a082019485526100b560c08701610456565b9660c083019788526100c960e08801610456565b958660e08501526100f16101206100e36101008b01610456565b998a61010088015201610456565b98896101208601526040519761010689610418565b6001600160a01b03908116895298891660208901908152905194519651604051919991979082169695821695911661013d88610418565b8752602087019586525192519151905160405190936001600160a01b039384169316608082016001600160401b0381118382101761040057604052815260208101928352604081019182526060810193845260405161019d604082610433565b600f815260208101906e2ab734bb32b939b0b62937baba32b960891b8252604051916101ca604084610433565b600183526020830191601960f91b83526101e38161046a565b610120526101f084610600565b61014052519020918260e05251902080610100524660a0526040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261025960c082610433565b5190206080523060c052516001600160a01b0390811661016052905161018052905181166101a05290516101c0526101e091909152905181166102005290518116610220529051811661024052905181166102605216610280526040516154ea9081610739823960805181614008015260a051816140c5015260c05181613fd9015260e051816140570152610100518161407d0152610120518161061d0152610140518161064601526101605181818161191f01528181611b020152613d230152610180518181816118fe01528181611b240152613d0201526101a0518161333f01526101c0518161339201526101e0518181816086015281816103a20152818161051d015281816124670152818161298201528181614c7101528181614ce801528181614dba01528181614f2e01526152c6015261020051818181602401528181611ec8015261202b0152610220518181816115d70152818161221901526137000152610240518181816107380152818161258e015261267a01526102605181818161042a0152612a5001526102805181818161077b01528181612da20152612ef40152f35b634e487b7160e01b5f52604160045260245ffd5b5f80fd5b604081019081106001600160401b0382111761040057604052565b601f909101601f19168101906001600160401b0382119082101761040057604052565b51906001600160a01b038216820361041457565b908151602081105f146104e4575090601f8151116104a4576020815191015160208210610495571790565b5f198260200360031b1b161790565b604460209160405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b6001600160401b038111610400575f54600181811c911680156105f6575b60208210146105e257601f81116105b0575b50602092601f821160011461055157928192935f92610546575b50508160011b915f199060031b1c1916175f5560ff90565b015190505f8061052e565b601f198216935f8052805f20915f5b8681106105985750836001959610610580575b505050811b015f5560ff90565b01515f1960f88460031b161c191690555f8080610573565b91926020600181928685015181550194019201610560565b5f8052601f60205f20910160051c810190601f830160051c015b8181106105d75750610514565b5f81556001016105ca565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610502565b908151602081105f1461062b575090601f8151116104a4576020815191015160208210610495571790565b6001600160401b03811161040057600154600181811c9116801561072e575b60208210146105e257601f81116106fb575b50602092601f821160011461069a57928192935f9261068f575b50508160011b915f199060031b1c19161760015560ff90565b015190505f80610676565b601f1982169360015f52805f20915f5b8681106106e357508360019596106106cb575b505050811b0160015560ff90565b01515f1960f88460031b161c191690555f80806106bd565b919260206001819286850151815501940192016106aa565b60015f52601f60205f20910160051c810190601f830160051c015b818110610723575061065c565b5f8155600101610716565b90607f169061064a56fe60c08060405260043610156100ae575b50361561001a575f80fd5b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163314158061007b575b61005357005b7f38bbd576000000000000000000000000000000000000000000000000000000005f5260045ffd5b506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633141561004d565b5f3560e01c9081631a27b20114610df85750806324856bc314610d495780633593564c14610c6357806344684dc31461079f5780638021fef71461075c578063817122dc1461071957806384b0196e1461060557806391dd7346146104e2578063d04d79a21461044e578063d0c9f6cb1461040b578063d737d0c7146103c6578063dc4c90d3146103835763fa461e3314610149575f61000f565b3461027d57606060031936011261027d5760243560043560443567ffffffffffffffff811161027d57610180903690600401610e54565b5f831391821580610379575b6103515781810160408282031261027d5781359067ffffffffffffffff821161027d576101ba918301613160565b506020810135916001600160a01b03831680930361027d576101db91613278565b90601790602b8310610329578035968760601c9561020962ffffff8585013560601c9a60481c168a896132cb565b6001600160a01b033391160361030157156102f757508685105b1561023957505050610237935033916133df565b005b91935091939482602b0180602b116102e3578410610281575082821161027d578101910390600160ff1b84101561027d5761023793610278339161317e565b61344a565b5f80fd5b925050507faf28d9864a81dfdf71cab65f4e5d79a0cf9b083905fb8971425e6cb581b3f6929291925c82116102bb576102379233916133df565b7f739dbe52000000000000000000000000000000000000000000000000000000005f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b9550848710610223565b7f32b13d91000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3b99b53d000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f316cf0eb000000000000000000000000000000000000000000000000000000005f5260045ffd5b505f85131561018c565b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461027d575f60031936011261027d5760207f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c6001600160a01b0360405191168152f35b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461027d575f60031936011261027d5760607fd317c76a4357223a1868125ee857a1f31cabfcec288f6cdd0ea8c52b6a71ee315c7fa42de8dec63499ed8713dc6815ea14006a1f8e80e1664c66e3beb461bb65b0da5c7f17350132762f24cc4b86e10621ea1e0b5c33483a51cca86a1b11e7ed029b6eb65c906001600160a01b036040519316835260208301526040820152f35b3461027d57602060031936011261027d5760043567ffffffffffffffff811161027d57610513903690600401610e54565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036105dd5761054c916139c0565b908183036105b5575f5b8381106105895761058560405161056e6020826130d3565b5f8152604051918291602083526020830190610eb3565b0390f35b806105af61059a6001938789610ed8565b3560f81c6105a9838787610f17565b916141e4565b01610556565b7faaad13f7000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fae18210a000000000000000000000000000000000000000000000000000000005f5260045ffd5b3461027d575f60031936011261027d576106bd6106417f0000000000000000000000000000000000000000000000000000000000000000613796565b61066a7f00000000000000000000000000000000000000000000000000000000000000006138f0565b60206106cb6040519261067d83856130d3565b5f84525f3681376040519586957f0f00000000000000000000000000000000000000000000000000000000000000875260e08588015260e0870190610eb3565b908582036040870152610eb3565b4660608501523060808501525f60a085015283810360c08501528180845192838152019301915f5b82811061070257505050500390f35b8351855286955093810193928101926001016106f3565b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b61010060031936011261027d5760043567ffffffffffffffff811161027d576107cc903690600401610e54565b60243567ffffffffffffffff811161027d576107ec903690600401610e82565b91604435608435801515810361027d5760c43567ffffffffffffffff811161027d5761081c903690600401610e54565b9160e435804211610c3b57908891610833896130f6565b61084060405191826130d3565b89815261084c8a6130f6565b601f196020830191013682375f5b8b8110610be25750604051915160208301929183915f5b818110610bc9575050509361097c9693604293836108a06109859b99956109769903601f1981018352826130d3565b5190209115610bb7576001600160a01b036108bf33945b8d369161312a565b60208151910120936040519360208501957f4b503a2e339bf072a489301f3eec7abaefc520266c462796ed9267bbcc6e407c8752604086015260608501528b608085015260643560a08501521660c083015260a43560e08301526101008201526101008152610930610120826130d3565b51902061093b613fcf565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522092369161312a565b906140eb565b90929192614125565b5f1960a43503610b20575b7fd317c76a4357223a1868125ee857a1f31cabfcec288f6cdd0ea8c52b6a71ee315d7fa42de8dec63499ed8713dc6815ea14006a1f8e80e1664c66e3beb461bb65b0da5d6064357f17350132762f24cc4b86e10621ea1e0b5c33483a51cca86a1b11e7ed029b6eb65d333014610b12576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c16610aea57610a5b93337f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d610f32565b5f7f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d5b5f7fd317c76a4357223a1868125ee857a1f31cabfcec288f6cdd0ea8c52b6a71ee315d5f7fa42de8dec63499ed8713dc6815ea14006a1f8e80e1664c66e3beb461bb65b0da5d5f7f17350132762f24cc4b86e10621ea1e0b5c33483a51cca86a1b11e7ed029b6eb65d005b7f6f5ffb7e000000000000000000000000000000000000000000000000000000005f5260045ffd5b610b1b93610f32565b610a7f565b6001600160a01b038116805f52600260205260405f2060a4355f5260205260ff60405f205416610b8f575f52600260205260405f2060a4355f5260205260405f2060017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00825416179055610990565b7f1fb09b80000000000000000000000000000000000000000000000000000000005f5260045ffd5b6001600160a01b036108bf5f946108b7565b825184528f985060209384019390920191600101610871565b909192939450610bfd610bf6828d8d610f17565b369161312a565b60208151910120908351811015610c275760019160208260051b8601015201908b9493929161085a565b634e487b7160e01b5f52603260045260245ffd5b7f5bf6f916000000000000000000000000000000000000000000000000000000005f5260045ffd5b606060031936011261027d5760043567ffffffffffffffff811161027d57610c8f903690600401610e54565b60243567ffffffffffffffff811161027d57610caf903690600401610e82565b916044354211610c3b57333014610d40576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c16610aea57610d1b93337f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d610f32565b5f7f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d005b61023793610f32565b604060031936011261027d5760043567ffffffffffffffff811161027d57610d75903690600401610e54565b60243567ffffffffffffffff811161027d57610d95903690600401610e82565b91333014610d40576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c16610aea57610d1b93337f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d610f32565b3461027d57604060031936011261027d57600435906001600160a01b03821680920361027d576020915f526002825260405f206024355f52825260ff60405f20541615158152f35b35906001600160a01b038216820361027d57565b9181601f8401121561027d5782359167ffffffffffffffff831161027d576020838186019501011161027d57565b9181601f8401121561027d5782359167ffffffffffffffff831161027d576020808501948460051b01011161027d57565b90601f19601f602080948051918291828752018686015e5f8582860101520116010190565b90821015610c27570190565b903590601e198136030182121561027d570180359067ffffffffffffffff821161027d5760200191813603831361027d57565b90821015610c2757610f2e9160051b810190610ee4565b9091565b929080820361308f579291905f915b848310610f4f575050505050565b9091929394610f5f848787610ed8565b3592610f6c858285610f17565b979092606097607f8760f81c1695600196602181105f14612ae657601081101561240157600881101561186a57806112fc5750610fae60208701359b876132a0565b95906080880135156112f5577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c9c5b610fe889356135e0565b9d918881608052600160ff1b8314611282575b50505b604260a052602b600160ff1b82101561027d5760a0518f908a1061127c575030915b89821161027d576040916001600160a01b035f60805135956110f861108f6110a3856110658b60601c6017608051013560601c62ffffff8183109e60481c16916132cb565b16968a8614611261576401000276a49b5b878b519485938d6020860152606085019060805161318e565b91168b83015203601f1981018352826130d3565b8488519a8b98899788967f128acb080000000000000000000000000000000000000000000000000000000088521660048701528b6024870152604486015216606484015260a0608484015260a4830190610eb3565b03925af1908115611256575f905f9261121a575b61111c935015611213575061317e565b60a05190969081106111635730908060171161027d576080805160170190527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe90196610ffe565b50979396929a509794909893604090910135116111eb575b1590816111dc575b50611195575060010191909392610f41565b906111d86040519283927f2c4029e90000000000000000000000000000000000000000000000000000000084526004840152604060248401526044830190610eb3565b0390fd5b600160ff1b915016155f611183565b7f39d35496000000000000000000000000000000000000000000000000000000005f5260045ffd5b905061317e565b9150506040823d821161124e575b81611235604093836130d3565b8101031261027d5781602061111c93519101519161110c565b3d9150611228565b6040513d5f823e3d90fd5b73fffd8963efd1fc6a506488495d951d5263988d259b611076565b91611020565b601491925010610329576020602491604051928380926370a0823160e01b82523060048301523560601c5afa908115611256575f916112c4575b505f80610ffb565b90506020813d82116112ed575b816112de602093836130d3565b8101031261027d57515f6112bc565b3d91506112d1565b309c610fde565b6001819c929a97939b96999598949c145f14611419575090611323602082013592826132a0565b608083013515611412577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c915b604061135d85356135e0565b9401357faf28d9864a81dfdf71cab65f4e5d79a0cf9b083905fb8971425e6cb581b3f6925d600160ff1b85101561027d5761139b936102788661317e565b9091901561140357506113ad9061317e565b036113db575f7faf28d9864a81dfdf71cab65f4e5d79a0cf9b083905fb8971425e6cb581b3f6925d5b61117b565b7fd4e0248e000000000000000000000000000000000000000000000000000000005f5260045ffd5b61140d915061317e565b6113ad565b3091611351565b6002810361146357506113d691604081013591507f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c61145c60208301356135e0565b91356136f4565b9394919390929060038103611633575050508135820163ffffffff60208401351683019163ffffffff83351693602080850194860101910110611626577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c92604051926001600160a01b0360208501957f2a2d80d10000000000000000000000000000000000000000000000000000000087521660248501526060604485015260e48401928035601e198236030181121561027d5781016020813591019467ffffffffffffffff821161027d578160071b3603861361027d5781906060608489015252610104860194905f905b80821061160857505050936115bc5f969482946115ca946040896001600160a01b0361158060208e9d01610e40565b1660a4880152013560c48601527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc85840301606486015261318e565b03601f1981018352826130d3565b5190826001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b9161117b565b9091956080808261161b6001948b61321d565b019701920190611551565b633b99b53d5f526004601cfd5b9194939092509060048103611766575061165060208201356135e0565b906001600160a01b038060408301351691351680155f146116b95750479081106116915780611681575b505061117b565b61168a91613a77565b5f8061167a565b7f6a12f104000000000000000000000000000000000000000000000000000000005f5260045ffd5b91604051916370a0823160e01b8352306004840152602083602481875afa928315611256575f93611733575b50821061170b57816116fa575b50505061117b565b61170392613f20565b5f80806116f2565b7f675cae38000000000000000000000000000000000000000000000000000000005f5260045ffd5b9092506020813d821161175e575b8161174e602093836130d3565b8101031261027d5751915f6116e5565b3d9150611741565b6005810361178d57508060406113d69201359061178660208201356135e0565b903561365a565b6006810361183f57506040810135906001600160a01b036117b160208301356135e0565b913516806117cd57506117c76113d69247613ede565b90613a77565b906040516370a0823160e01b8152306004820152602081602481865afa908115611256575f9161180c575b506113d69361180691613ede565b91613f20565b90506020813d8211611837575b81611826602093836130d3565b8101031261027d57516113d66117f8565b3d9150611819565b7fd76a1e9e000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b6008819c929a97939b96999598949c145f14611ab45750611890602083013591836135a8565b90608084013515611aad577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c915b6118c985356135e0565b928215610c27576118d9826135cc565b8360011015610c27576118fb611943916118f5602086016135cc565b90614ae9565b907f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000614b07565b948581611a93575b5050505f1982018281116102e35761197461196f6001600160a01b0392858561363d565b6135cc565b1693604051926370a0823160e01b84526001600160a01b038516928360048601526020856024818a5afa948515611256575f95611a56575b50946119bc929160209596613b35565b6024604051809581936370a0823160e01b835260048301525afa918215611256575f92611a22575b5060406119f4929301359261364d565b101561117b577f849eaf98000000000000000000000000000000000000000000000000000000005f5260045ffd5b91506020823d8211611a4e575b81611a3c602093836130d3565b8101031261027d5790519060406119e4565b3d9150611a2f565b92919450946020833d8211611a8b575b81611a73602093836130d3565b8101031261027d5791519194919390916119bc6119ac565b3d9150611a66565b611aa592611aa0856135cc565b6133df565b5f808561194b565b30916118bf565b60098103611d9a5750611ac790826135a8565b608083013515611d93577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c915b611aff84356135e0565b917f0000000000000000000000000000000000000000000000000000000000000000937f0000000000000000000000000000000000000000000000000000000000000000955f9560028510611d6b576020820135975f1986018681116102e3579190825b611bb957505050604001358611611b91578215610c27576113d69585611b8c92611aa0856135cc565b613b35565b7f8ab0bc16000000000000000000000000000000000000000000000000000000005f5260045ffd5b90919897505f198901978989116102e357611bdb61196f611bfd9a898961363d565b611bf2611bec61196f8d8b8b61363d565b82614ae9565b8185879d939d614b07565b90604051907f0902f1ac0000000000000000000000000000000000000000000000000000000082526060826004816001600160a01b0387165afa918215611256575f905f93611d1b575b506001600160a01b036dffffffffffffffffffffffffffff8082931694169d169116145f14611d155799905b9980158015611d0d575b611ce55782611c8b91613ead565b916103e88302928084046103e814901517156102e357611caa9161364d565b6103e58102908082046103e514901517156102e357611cc891613ec0565b600181018091116102e3579880156102e3575f1901919082611b63565b7f7b9c8916000000000000000000000000000000000000000000000000000000005f5260045ffd5b508115611c7d565b90611c73565b6dffffffffffffffffffffffffffff8094506001600160a01b039250611d58839260603d8111611d64575b611d5081836130d3565b810190613aff565b50959093505050611c47565b503d611d46565b7f20db8267000000000000000000000000000000000000000000000000000000005f5260045ffd5b3091611af5565b93949193909290600a8103611e815750505063ffffffff60c08301351682019063ffffffff82351690836020808501948401019101106116265760a06115ca5f946115bc86957f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c956040519586946001600160a01b0360208701997f2b67b570000000000000000000000000000000000000000000000000000000008b52166024870152611e4c604487018261321d565b6001600160a01b03611e6060808301610e40565b1660c4870152013560e485015261010061010485015261012484019161318e565b91949390929091600b810361200c575050611ea1602082013591356135e0565b81600160ff1b8103611fdd57504791505b81611ebe57505061117b565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b1561027d576040517fd0e30db00000000000000000000000000000000000000000000000000000000081525f8160048185885af1801561125657611fcd575b50306001600160a01b03831603611f42575b5061167a565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152602482015290602090829060449082905f905af1801561125657611f9f575b8080611f3c565b611fbf9060203d8111611fc6575b611fb781836130d3565b810190613625565b505f611f98565b503d611fad565b5f611fd7916130d3565b5f611f2a565b471015611eb2577f6a12f104000000000000000000000000000000000000000000000000000000005f5260045ffd5b600c810361214357505061202081356135e0565b906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016604051916370a0823160e01b8352306004840152602083602481855afa928315611256575f9361210f575b50602001358210611691578161208e5750505061117b565b803b1561027d575f80916024604051809481937f2e1a7d4d0000000000000000000000000000000000000000000000000000000083528760048401525af18015611256576120ff575b50306001600160a01b038316036120ef575b806116f2565b6120f891613a77565b5f806120e9565b5f612109916130d3565b5f6120d7565b9092506020813d821161213b575b8161212a602093836130d3565b8101031261027d5751916020612076565b3d915061211d565b600d819c939c9b929597989b99949699145f1461232f57508a358b01988935946121756020808d019e8d0301876133d2565b11610329576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c169a935f5b86811015612201578c6001600160a01b036121cb60208f8560071b01016135cc565b16036121d9576001016121a9565b7fe7002877000000000000000000000000000000000000000000000000000000005f5260045ffd5b50989593979694929b919a5098506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690813b1561027d576040517f0d58b1db000000000000000000000000000000000000000000000000000000008152602060048201526024810184905292839160448301915f905b8082106122b55750505091815f81819503925af18015611256576122a5575b5061117b565b5f6122af916130d3565b5f61229f565b919350916080806001926001600160a01b036122d088610e40565b1681526001600160a01b036122e760208901610e40565b1660208201526001600160a01b0361230160408901610e40565b1660408201526001600160a01b0361231b60608901610e40565b166060820152019401920185939291612280565b80929b93989550600e919a97969450145f1461183f5750604051906370a0823160e01b82526001600160a01b0381351660048301526020826024816001600160a01b0384860135165afa918215611256575f926123cd575b50604001351115806113d65791506040517fa3281672000000000000000000000000000000000000000000000000000000006020820152600481526116026024826130d3565b9091506020813d82116123f9575b816123e8602093836130d3565b8101031261027d5751906040612387565b3d91506123db565b6010819c929a97939b96999598949c145f1461250f575061245a915f9160405193849283927f48c8949100000000000000000000000000000000000000000000000000000000845260206004850152602484019161318e565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1801561125657612499575061117b565b3d805f833e6124a881836130d3565b81019060208183031261027d5780519067ffffffffffffffff821161027d570181601f8201121561027d5780516124de8161310e565b926124ec60405194856130d3565b8184526020828401011161027d575f928160208094018483015e0101525f61229f565b80929495506011919350145f146125e45750907fffffffff000000000000000000000000000000000000000000000000000000008135167f7ac2ff7b0000000000000000000000000000000000000000000000000000000081036125b95750815f92918392604051928392833781018381520390826001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b7ff801e525000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b601281036128bc57507f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c917fffffffff000000000000000000000000000000000000000000000000000000008135167f0c49ccbe0000000000000000000000000000000000000000000000000000000081148015612893575b801561286a575b156125b9575060048101356001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016936040517f6352211e000000000000000000000000000000000000000000000000000000008152826004820152602081602481895afa908115611256576001600160a01b039182915f9161284c575b50169116908082149182156127c5575b8215612754575b505015612729575091815f809481946040519384928337810182815203925af1906116026131ae565b7fbb25d4c5000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b909150604051917fe985e9c500000000000000000000000000000000000000000000000000000000835260048301526024820152602081604481885afa908115611256575f916127a7575b505f80612700565b6127bf915060203d8111611fc657611fb781836130d3565b5f61279f565b91506040517f081812fc0000000000000000000000000000000000000000000000000000000081528360048201526020816024818a5afa9081156112565783916001600160a01b03915f9161281e575b501614916126f9565b61283f915060203d8111612845575b61283781836130d3565b810190613a58565b5f612815565b503d61282d565b612864915060203d81116128455761283781836130d3565b5f6126e9565b507f42966c68000000000000000000000000000000000000000000000000000000008114612665565b507ffc6f786500000000000000000000000000000000000000000000000000000000811461265e565b601381036129ad5750505f80916040516001600160a01b0360a060208301937f6276cbbe0000000000000000000000000000000000000000000000000000000085528261290882610e40565b1660248501528261291b60208301610e40565b16604485015262ffffff612931604083016131dd565b166064850152612943606082016131ed565b60020b60848501528261295860808301610e40565b1660a485015201351660c482015260c4815261297560e4826130d3565b5190826001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b6014810361183f57507fffffffff000000000000000000000000000000000000000000000000000000008235167fdd46508f0000000000000000000000000000000000000000000000000000000081036125b957508060041161027d57612a24612a1e600319830160048501613278565b90613278565b5f5b818110612a7b575050505f9182914791816040519283928337810184815203916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b612a86818385610ed8565b3560f81c8015908115612adb575b8115612ad0575b50612aa857600101612a26565b7f5d1d0f9f000000000000000000000000000000000000000000000000000000005f5260045ffd5b60039150145f612a9b565b600181149150612a94565b90989591996040829c949c999699989598105f14612c2f57506021810361183f575090612b12916139c0565b612b556040959395519460208601967f24856bc300000000000000000000000000000000000000000000000000000000885260406024880152606487019161318e565b927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc858503016044860152818452602084019160208160051b86010194845f90601e19813603015b848310612bd35750505050505050509181612bc45f9493859403601f1981018352826130d3565b519082305af1906116026131ae565b9091929394959697601f1985820301885288358281121561027d578301906020823592019167ffffffffffffffff811161027d57803603831361027d57612c1f60209283928b9561318e565b9a01980196959493019190612b9d565b949392906040810361183f575081019060208183031261027d5780359067ffffffffffffffff821161027d5701906101a08282031261027d57604051906101a0820182811067ffffffffffffffff82111761307b57604052612c9083610e40565b8252612c9e60208401610e40565b9060208301918252612cb260408501610e40565b60408401908152612cc4888601610e40565b92888501938452608085016080870135815260a086019660a0810135885260c087019460c08201358652612cfa60e08301610e40565b60e08901908152612d0e6101008401613597565b6101008a01908152612d236101208501613597565b916101208b01928352612d396101408601613597565b936101408c0194855261016086013567ffffffffffffffff811161027d5761018091612d66918801613160565b956101608d019687520135958615159081880361027d576101808d0197885251965f91600160ff1b8914612ffc575b505115612ebd575085985b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169b516001600160a01b031697516001600160a01b031698516001600160a01b03169a516001600160a01b03169c51905191516001600160a01b0316925163ffffffff16935163ffffffff16945163ffffffff169551968c3b1561027d576040519d8e9c8d9b8c9b7f7b939232000000000000000000000000000000000000000000000000000000008d5260048d015260248c015260448b015260648a0152608489015260a488015260c487015260e4860152610104850152610124840152610144830152610164820161018090526101848201612ea691610eb3565b03915a945f95f18015611256576122a5575061117b565b88516040517f095ea7b300000000000000000000000000000000000000000000000000000000602082019081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166024840181905260448085018d90528452949d949316905f908190612f3b6064866130d3565b84519082855af1612f4a6131ae565b81612fcd575b5080612fc3575b15612f65575b505050612da0565b612fb6612fbb93604051907f095ea7b300000000000000000000000000000000000000000000000000000000602083015260248201525f604482015260448152612fb06064826130d3565b82614a64565b614a64565b5f8080612f5d565b50803b1515612f57565b8051801592508215612fe2575b50505f612f50565b612ff59250602080918301019101613625565b5f80612fda565b9097501561300d5747965b5f612d95565b602460206001600160a01b038b5116604051928380926370a0823160e01b82523060048301525afa908115611256575f9161304a575b5096613007565b90506020813d8211613073575b81613064602093836130d3565b8101031261027d57515f613043565b3d9150613057565b634e487b7160e01b5f52604160045260245ffd5b7fff633a38000000000000000000000000000000000000000000000000000000005f5260045ffd5b60a0810190811067ffffffffffffffff82111761307b57604052565b90601f601f19910116810190811067ffffffffffffffff82111761307b57604052565b67ffffffffffffffff811161307b5760051b60200190565b67ffffffffffffffff811161307b57601f01601f191660200190565b9291926131368261310e565b9161314460405193846130d3565b82948184528183011161027d578281602093845f960137010152565b9080601f8301121561027d5781602061317b9335910161312a565b90565b600160ff1b81146102e3575f0390565b601f8260209493601f1993818652868601375f8582860101520116010190565b3d156131d8573d906131bf8261310e565b916131cd60405193846130d3565b82523d5f602084013e565b606090565b359062ffffff8216820361027d57565b35908160020b820361027d57565b9081602091031261027d575190565b359065ffffffffffff8216820361027d57565b65ffffffffffff613272606080936001600160a01b0361323c82610e40565b1686526001600160a01b0361325360208301610e40565b166020870152836132666040830161320a565b1660408701520161320a565b16910152565b909163ffffffff82351682019263ffffffff8435169260208086019585010191011061162657565b909163ffffffff60608301351682019263ffffffff8435169260208086019585010191011061162657565b906001600160a01b0392838216848416116133ca575b62ffffff9084604051938160208601961686521660408401521660608201526060815261330f6080826130d3565b5190206040517fff00000000000000000000000000000000000000000000000000000000000000602082019081527f000000000000000000000000000000000000000000000000000000000000000060601b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016602183015260358201929092527f000000000000000000000000000000000000000000000000000000000000000060558201526133c381607581016115bc565b5190201690565b9091906132e1565b919082018092116102e357565b909291906001600160a01b03841630036133ff576133fd935061365a565b565b91926001600160a01b038411613422576001600160a01b036133fd9416926136f4565b7fc4bd89a9000000000000000000000000000000000000000000000000000000005f5260045ffd5b939290602b8210610329578235938460601c92601785013560601c9380851094859760481c62ffffff169061347e926132cb565b6001600160a01b031692845f146040966001600160a01b0380956134db5f9661352e9561357c576401000276a4925b846134c78e51978f9489956020870152606086019161318e565b91168d83015203601f1981018552846130d3565b89519b8c998a9889977f128acb080000000000000000000000000000000000000000000000000000000089521660048801526024870152604486015216606484015260a0608484015260a4830190610eb3565b03925af18015611256575f925f9161354557509192565b9250506040823d604011613574575b81613561604093836130d3565b8101031261027d57602082519201519192565b3d9150613554565b73fffd8963efd1fc6a506488495d951d5263988d25926134ad565b359063ffffffff8216820361027d57565b9160608301358301916135c56020843595818601950301856133d2565b1161032957565b356001600160a01b038116810361027d5790565b6001600160a01b038116600181036136195750507f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c90565b60020361317b57503090565b9081602091031261027d5751801515810361027d5790565b9190811015610c275760051b0190565b919082039182116102e357565b9091906001600160a01b03168061367557506133fd91613a77565b600160ff1b821461368b575b916133fd92613f20565b9050604051916370a0823160e01b8352306004840152602083602481855afa8015611256575f906136c0575b90925090613681565b506020833d6020116136ec575b816136da602093836130d3565b8101031261027d576133fd92516136b7565b3d91506136cd565b91926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b1561027d575f6001600160a01b039384829681608496816040519b8c9a8b997f36c78516000000000000000000000000000000000000000000000000000000008b521660048a01521660248801521660448601521660648401525af180156112565761378c5750565b5f6133fd916130d3565b60ff81146137f55760ff811690601f82116137cd57604051916137ba6040846130d3565b6020808452838101919036833783525290565b7fb3512b0c000000000000000000000000000000000000000000000000000000005f5260045ffd5b506040515f80548060011c91600182169182156138e6575b6020841083146138d25783855284929081156138955750600114613838575b61317b925003826130d3565b505f80805290917f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b81831061387957505090602061317b9282010161382c565b6020919350806001915483858801015201910190918392613861565b6020925061317b9491507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682840152151560051b82010161382c565b634e487b7160e01b5f52602260045260245ffd5b92607f169261380d565b60ff81146139145760ff811690601f82116137cd57604051916137ba6040846130d3565b506040515f6001548060011c91600182169182156139b6575b6020841083146138d257838552849290811561389557506001146139575761317b925003826130d3565b5060015f90815290917fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b81831061399a57505090602061317b9282010161382c565b6020919350806001915483858801015201910190918392613982565b92607f169261392d565b604081351891606082019363ffffffff6040840135169363ffffffe0601f8601169060608201602086013518179084019260608401359463ffffffff861694641fffffffe0608082019760051b1680915f925b808410613a2b57506080925001019101101761162657565b90916020809163ffffffe0601f60808089890101359b848d18179b88010135011601019301929190613a13565b9081602091031261027d57516001600160a01b038116810361027d5790565b5f80809381935af115613a8657565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4554485f5452414e534645525f4641494c4544000000000000000000000000006044820152fd5b51906dffffffffffffffffffffffffffff8216820361027d57565b9081606091031261027d57613b1381613ae4565b916040613b2260208401613ae4565b92015163ffffffff8116810361027d5790565b9160028210613e85578115610c2757613b4d836135cc565b8260011015610c2757613b69906118f5602086979596016135cc565b50925f198101937ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe8201955f90602093601f198501965b888410613bb35750505050505050505050565b613bc161196f85848661363d565b946001600160a01b03613bdb61196f60018801868861363d565b921695604051917f0902f1ac0000000000000000000000000000000000000000000000000000000083526060836004818b5afa91821561125657895f945f94613e3f575b506001600160a01b03806dffffffffffffffffffffffffffff80602496979816971693169416841494855f14613e395791935b604051938480926370a0823160e01b82528d60048301525afa918215611256575f92613e0a575b5080820392811592838015613e02575b611ce557826103e586029586046103e514911417156102e357613cac9084613ead565b916103e882029182046103e81417156102e357613cd292613ccc916133d2565b90613ec0565b9015613dfb575f90915b8b861015613df25790613cfd613d47926118f561196f60028a01888a61363d565b8193917f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000614b07565b915b9660405190613d588a836130d3565b5f82528b368b840137803b1561027d57613dc6945f8094604051978895869485937f022c0d9f000000000000000000000000000000000000000000000000000000008552600485015260248401526001600160a01b0389166044840152608060648401526084830190610eb3565b03925af191821561125657600192613de2575b50930192613ba0565b5f613dec916130d3565b5f613dd9565b5087905f613d49565b5f91613cdc565b508115613c89565b9091508981813d8311613e32575b613e2281836130d3565b8101031261027d5751905f613c79565b503d613e18565b93613c52565b6dffffffffffffffffffffffffffff955060249394506001600160a01b0386613e76829360603d8111611d6457611d5081836130d3565b50989098979650505050613c1f565b7fae52ad0c000000000000000000000000000000000000000000000000000000005f5260045ffd5b818102929181159184041417156102e357565b8115613eca570490565b634e487b7160e01b5f52601260045260245ffd5b6127108211613ef85761271091613ef491613ead565b0490565b7fdeaa01e6000000000000000000000000000000000000000000000000000000005f5260045ffd5b5f9182604492602095604051937fa9059cbb000000000000000000000000000000000000000000000000000000008552600485015260248401525af13d15601f3d1160015f511416171615613f7157565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f5452414e534645525f4641494c454400000000000000000000000000000000006044820152fd5b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163014806140c2575b1561402a577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a081526140bc60c0826130d3565b51902090565b507f00000000000000000000000000000000000000000000000000000000000000004614614001565b815191906041830361411b576141149250602082015190606060408401519301515f1a90614bd0565b9192909190565b50505f9160029190565b60048110156141d05780614137575050565b60018103614167577ff645eedf000000000000000000000000000000000000000000000000000000005f5260045ffd5b6002810361419b57507ffce698f7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b6003146141a55750565b7fd78bce0c000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b929190600b84101561489257600784036144375761420392935061503b565b60208101906142128282615049565b5f93915080614220846135cc565b9261422d60608601614fa8565b6fffffffffffffffffffffffffffffffff811615614420575b60408601916142558388615049565b801515958692509082614415575b50506143ed575f9591949395945b8486106142f457505050505050506080016fffffffffffffffffffffffffffffffff8061429d83614fa8565b1692169182106142ab575050565b6142c56fffffffffffffffffffffffffffffffff91614fa8565b7f8b063d73000000000000000000000000000000000000000000000000000000005f521660045260245260445ffd5b86985061435461434f6fffffffffffffffffffffffffffffffff9261433161432a8a614324888f9e9c9d9e615049565b9061507f565b9687615359565b94909116936143436080880188610ee4565b929091865f03916151d3565b615432565b98614372575b50600161436789936135cc565b960194939591614271565b61439990670de0b6b3a76400006fffffffffffffffffffffffffffffffff8b169102613ec0565b6143ad876143a7868b615049565b9061363d565b358082116143bb575061435a565b877fa9b7edf7000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b7f947446a5000000000000000000000000000000000000000000000000000000005f5260045ffd5b14159050855f614263565b5061443261442d85614c6a565b61518e565b614246565b6006840361452e5761444a929350614f99565b61445660c08201614fa8565b6fffffffffffffffffffffffffffffffff8116156144dd575b6144c061434f60e09261449f6fffffffffffffffffffffffffffffffff61449860a08801614fc5565b921661317e565b906144ae610100870187610ee4565b9290916144bb3689614fd2565b6151d3565b91016fffffffffffffffffffffffffffffffff8061429d83614fa8565b506144ea60a08201614fc5565b156145145760e06144c061434f61450b61442d614506866135cc565b614c6a565b9250505061446f565b60e06144c061434f61450b61442d614506602087016135cc565b600984036147455761454192935061503b565b60208101906145508282615049565b90505f9261456060608401614fa8565b9161456a846135cc565b926fffffffffffffffffffffffffffffffff811615614733575b6040850190826145948388615049565b801515958692509082614728575b50506143ed57949093929493845b61462f575050505050506080016fffffffffffffffffffffffffffffffff806145d883614fa8565b1692169182116145e6575050565b6146006fffffffffffffffffffffffffffffffff91614fa8565b7f12bacdd3000000000000000000000000000000000000000000000000000000005f521660045260245260445ffd5b8597506fffffffffffffffffffffffffffffffff61469361468961432a9361466c61465e898d9c9a9b9c615049565b96905f198d0197889161507f565b94909116938461467f6080890189610ee4565b93909215906151d3565b600f0b5f0361518e565b986146b3575b50505f196146a788926135cc565b950193929490846145b0565b6146d990670de0b6b3a76400006fffffffffffffffffffffffffffffffff8b1602613ec0565b906146e8816143a7868b615049565b35908183116146f75750614699565b7fe6518043000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b14159050815f6145a2565b5061474061442d84614f27565b614584565b6008841461477c575050505b7f5cda29d7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b614787929350614f99565b61479360c08201614fa8565b6fffffffffffffffffffffffffffffffff811615614817575b6147fa61442d6147f26fffffffffffffffffffffffffffffffff60e0946147d560a08801614fc5565b6147e3610100890189610ee4565b93909216906144bb368a614fd2565b600f0b61317e565b91016fffffffffffffffffffffffffffffffff806145d883614fa8565b5061482460a08201614fc5565b156148675760e06147fa61442d6147f26fffffffffffffffffffffffffffffffff61485c61442d614857602089016135cc565b614f27565b9450505050506147ac565b60e06147fa61442d6147f26fffffffffffffffffffffffffffffffff61485c61442d614857886135cc565b92600c810361491657506148a69192614f14565b906148b081614f27565b918083116148e65750906133fd917f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c90614da8565b90507f12bacdd3000000000000000000000000000000000000000000000000000000005f5260045260245260445ffd5b600f810361499957506149299192614f14565b9061493381614c6a565b918083106149695750906133fd917f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c90614cd6565b90507f8b063d73000000000000000000000000000000000000000000000000000000005f5260045260245260445ffd5b600b81036149f257506149b0906133fd9293614c52565b156149e7576149e1827f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c92614d83565b91614da8565b6149e1823092614d83565b600e8103614a255750614a19614a0f614a1f926133fd9495614c52565b92829492916135e0565b92614d6f565b91614cd6565b9260108414614a3657505050614751565b6133fd929350614a4c614a5592614a1f92614c52565b929193906135e0565b91614a5f84614c6a565b613ede565b5f806001600160a01b03614a8d93169360208151910182865af1614a866131ae565b9083615451565b8051908115159182614ace575b5050614aa35750565b7f5274afe7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b614ae19250602080918301019101613625565b155f80614a9a565b6001600160a01b0382166001600160a01b038216105f14610f2e5791565b916133c3906001600160a01b03947fffffffffffffffffffffffffffffffffffffffff0000000000000000000000006040519181602084019460601b16845260601b16603482015260288152614b5e6048826130d3565b5190206115bc604051938492602084019687917fffffffffffffffffffffffffffffffffffffffff000000000000000000000000605594927fff00000000000000000000000000000000000000000000000000000000000000855260601b166001840152601583015260358201520190565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411614c47579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa15611256575f516001600160a01b03811615614c3d57905f905f90565b505f906001905f90565b5050505f9160039190565b90606011611626578035916040602083013592013590565b614c9581307f00000000000000000000000000000000000000000000000000000000000000006150bf565b905f8212614ca1575090565b6001600160a01b03907f4c085bf1000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b90918015614d6a576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b1561027d575f92836064926001600160a01b03948560405198899788967f0b0d9c0900000000000000000000000000000000000000000000000000000000885216600487015216602485015260448401525af180156112565761378c5750565b505050565b9081614d7f5761317b9150614c6a565b5090565b90600160ff1b8203614d995761317b915061514c565b81614d7f5761317b9150614f27565b5f918315614f0e576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b1561027d576001600160a01b03604051917fa584119400000000000000000000000000000000000000000000000000000000835216908160048201525f8160248183885af1801561125657614ef9575b5080614eac5750506020906004604051809581937f11da60b40000000000000000000000000000000000000000000000000000000083525af1908115614ea05750614e755750565b614e969060203d602011614e99575b614e8e81836130d3565b8101906131fb565b50565b503d614e84565b604051903d90823e3d90fd5b83948360209493614ebc936133df565b6004604051809581937f11da60b40000000000000000000000000000000000000000000000000000000083525af1908115614ea05750614e755750565b614f069194505f906130d3565b5f925f614e2d565b50505050565b9190604011611626576020823592013590565b614f5281307f00000000000000000000000000000000000000000000000000000000000000006150bf565b905f8213614f64575061317b9061317e565b6001600160a01b03907f3351b260000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b90610140116116265780350190565b356fffffffffffffffffffffffffffffffff8116810361027d5790565b35801515810361027d5790565b91908260a091031261027d57604051614fea816130b7565b6080615036818395614ffb81610e40565b855261500960208201610e40565b602086015261501a604082016131dd565b604086015261502b606082016131ed565b606086015201610e40565b910152565b9060a0116116265780350190565b903590601e198136030182121561027d570180359067ffffffffffffffff821161027d57602001918160051b3603831361027d57565b9190811015610c275760051b810135907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff618136030182121561027d570190565b6001600160a01b03809381602094165f52168252602460405f2060405194859384927ff135baaa0000000000000000000000000000000000000000000000000000000084526004840152165afa908115611256575f9161511d575090565b90506020813d602011615144575b81615138602093836130d3565b8101031261027d575190565b3d915061512b565b6001600160a01b03168061515f57504790565b6020602491604051928380926370a0823160e01b82523060048301525afa908115611256575f9161511d575090565b906fffffffffffffffffffffffffffffffff82168092036151ab57565b7f93dafdf1000000000000000000000000000000000000000000000000000000005f5260045ffd5b909290831561533e576401000276a4905b60405194606086019386851067ffffffffffffffff86111761307b576001600160a01b0397886080956152b9946020986040521515998a8152888101908a82528360408201931683526040519c8d998a997ff3cd914c000000000000000000000000000000000000000000000000000000008b528281511660048c0152828d8201511660248c015262ffffff60408201511660448c0152606081015160020b60648c0152015116608489015251151560a48801525160c4870152511660e485015261012061010485015261012484019161318e565b03815f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1928315611256575f9361530a575b505f130361530457600f0b90565b60801d90565b9092506020813d602011615336575b81615326602093836130d3565b8101031261027d5751915f6152f6565b3d9150615319565b73fffd8963efd1fc6a506488495d951d5263988d25906151e4565b905f6080604051615369816130b7565b8281528260208201528260408201528260608201520152615389826135cc565b6001600160a01b038216916001600160a01b0382168084105f1461542057506001600160a01b03905b1680921492602081013562ffffff811680910361027d576040820135918260020b80930361027d5760600135926001600160a01b03841680940361027d576001600160a01b039060405195615406876130b7565b865216602085015260408401526060830152608082015291565b9150506001600160a01b0382916153b2565b5f81600f0b126151ab576fffffffffffffffffffffffffffffffff1690565b9061548e575080511561546657805190602001fd5b7f1425ea42000000000000000000000000000000000000000000000000000000005f5260045ffd5b815115806154d4575b61549f575090565b6001600160a01b03907f9996b315000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b50803b1561549756fea164736f6c634300081a000a000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad730000000000000000000000008bceaa40b9acdfaedf85adf4ff01f5ad6517937f0000000000000000000000001f7d7550b1b028f7571e69a784071f0205fd2efa96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b540000000000000000000000008366a39cc670b4001a1121b8f6a443a643e4095100000000000000000000000073991a25c818bf1f1128deaab1492d45638de0d300000000000000000000000058daec3116aae6d93017baaea7749052e8a04fa70000000000000000000000007332d11bd10d18a04b119cd4671a96f3148002c4", + "nonce": "0x2f", + "chainId": "0x1237" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x4b1cc3", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x0", + "transactionHash": "0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3", + "transactionIndex": "0x1", + "blockHash": "0x70f677a707a300f12aa4130fae081f69f90981a6d08525e5642d09d59fa0dc94", + "blockNumber": "0x459d", + "gasUsed": "0x4b1cc3", + "effectiveGasPrice": "0x5f5e100", + "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": null, + "gasUsedForL1": "0x28bee", + "l1BlockNumber": "0x1803c1b" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1779819181252, + "chain": 4663, + "commit": "dbef74e" +} \ No newline at end of file diff --git a/broadcast/Deploy-all.s.sol/4663/run-latest.json b/broadcast/Deploy-all.s.sol/4663/run-latest.json index fd6ade64..89b3d0b8 100644 --- a/broadcast/Deploy-all.s.sol/4663/run-latest.json +++ b/broadcast/Deploy-all.s.sol/4663/run-latest.json @@ -1,309 +1,19 @@ { "transactions": [ { - "hash": "0x6fc488375115e6de29f6ffc19ca5a7ed4971643b4b12e3e27933e3c73770ed5c", - "transactionType": "CREATE", - "contractName": "UniswapInterfaceMulticall", - "contractAddress": "0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3", - "function": null, - "arguments": null, - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "gas": "0x6fbbe", - "value": "0x0", - "input": "0x608060405234801561001057600080fd5b50610567806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630f28c97d146100465780631749e1e3146100645780634d2301cc14610085575b600080fd5b61004e610098565b60405161005b919061041f565b60405180910390f35b6100776100723660046102a7565b61009c565b60405161005b929190610428565b61004e610093366004610286565b610220565b4290565b8051439060609067ffffffffffffffff811180156100b957600080fd5b506040519080825280602002602001820160405280156100f357816020015b6100e061023a565b8152602001906001900390816100d85790505b50905060005b835181101561021a57600080600086848151811061011357fe5b60200260200101516000015187858151811061012b57fe5b60200260200101516020015188868151811061014357fe5b60200260200101516040015192509250925060005a90506000808573ffffffffffffffffffffffffffffffffffffffff1685856040516101839190610403565b60006040518083038160008787f1925050503d80600081146101c1576040519150601f19603f3d011682016040523d82523d6000602084013e6101c6565b606091505b509150915060005a8403905060405180606001604052808415158152602001828152602001838152508989815181106101fb57fe5b60200260200101819052505050505050505080806001019150506100f9565b50915091565b73ffffffffffffffffffffffffffffffffffffffff163190565b604051806060016040528060001515815260200160008152602001606081525090565b803573ffffffffffffffffffffffffffffffffffffffff8116811461028157600080fd5b919050565b600060208284031215610297578081fd5b6102a08261025d565b9392505050565b600060208083850312156102b9578182fd5b823567ffffffffffffffff808211156102d0578384fd5b818501915085601f8301126102e3578384fd5b8135818111156102ef57fe5b6102fc8485830201610506565b81815284810190848601875b848110156103f457813587017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0606081838f03011215610346578a8bfd5b60408051606081018181108b8211171561035c57fe5b8252610369848d0161025d565b8152818401358c82015260608401358a811115610384578d8efd5b8085019450508e603f850112610398578c8dfd5b8b8401358a8111156103a657fe5b6103b68d85601f84011601610506565b93508084528f838287010111156103cb578d8efd5b808386018e86013783018c018d9052908101919091528552509287019290870190600101610308565b50909998505050505050505050565b6000825161041581846020870161052a565b9190910192915050565b90815260200190565b600060408083018584526020828186015281865180845260609350838701915083838202880101838901875b838110156104f6578983037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa001855281518051151584528681015187850152880151888401889052805188850181905260806104b582828801858c0161052a565b96880196601f919091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01694909401909301925090850190600101610454565b50909a9950505050505050505050565b60405181810167ffffffffffffffff8111828210171561052257fe5b604052919050565b60005b8381101561054557818101518382015260200161052d565b83811115610554576000848401525b5050505056fea164736f6c6343000706000a", - "nonce": "0x5", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x62f593041cda98f3418898cfaae97617421de867c0d6fd4480f8a652ffe721b5", - "transactionType": "CREATE", - "contractName": "QuoterV2", - "contractAddress": "0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7", - "function": null, - "arguments": [ - "0x1f7d7550B1b028f7571E69A784071F0205FD2EfA", - "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "gas": "0x247003", - "value": "0x0", - "input": "0x60c06040523480156200001157600080fd5b506040516200212c3803806200212c833981016040819052620000349162000070565b6001600160601b0319606092831b8116608052911b1660a052620000a7565b80516001600160a01b03811681146200006b57600080fd5b919050565b6000806040838503121562000083578182fd5b6200008e8362000053565b91506200009e6020840162000053565b90509250929050565b60805160601c60a05160601c612051620000db60003980610321525080610577528061095d5280610b9252506120516000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c8063c45a01551161005b578063c45a0155146100e6578063c6a5026a146100ee578063cdca175314610101578063fa461e33146101145761007d565b80632f80bb1d146100825780634aa4a4fc146100ae578063bd21704a146100c3575b600080fd5b610095610090366004611b2b565b610129565b6040516100a59493929190611eac565b60405180910390f35b6100b661031f565b6040516100a59190611def565b6100d66100d1366004611c49565b610343565b6040516100a59493929190611f54565b6100b6610575565b6100d66100fc366004611c49565b610599565b61009561010f366004611b2b565b610754565b610127610122366004611b91565b61092c565b005b6000606080600061013986610ae8565b67ffffffffffffffff8111801561014f57600080fd5b50604051908082528060200260200182016040528015610179578160200160208202803683370190505b50925061018586610ae8565b67ffffffffffffffff8111801561019b57600080fd5b506040519080825280602002602001820160405280156101c5578160200160208202803683370190505b50915060005b60008060006101d98a610b17565b92509250925060008060008061025c6040518060a001604052808873ffffffffffffffffffffffffffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff1681526020018f81526020018762ffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff16815250610343565b9350935093509350828b898151811061027157fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050818a89815181106102b857fe5b63ffffffff90921660209283029190910190910152929b50968201966001909601958b926102e58e610b48565b156102fa576102f38e610b50565b9d5061030a565b8c9b505050505050505050610316565b505050505050506101cb565b92959194509250565b7f000000000000000000000000000000000000000000000000000000000000000081565b60208101518151606083015160009283928392839273ffffffffffffffffffffffffffffffffffffffff808216908416109284926103819290610b8b565b9050866080015173ffffffffffffffffffffffffffffffffffffffff16600014156103af5760408701516000555b60005a90508173ffffffffffffffffffffffffffffffffffffffff1663128acb0830856103df8c60400151610bc9565b6000038c6080015173ffffffffffffffffffffffffffffffffffffffff1660001461040e578c60800151610434565b8761042d5773fffd8963efd1fc6a506488495d951d5263988d25610434565b6401000276a45b8d602001518e606001518f6000015160405160200161045593929190611d89565b6040516020818303038152906040526040518663ffffffff1660e01b8152600401610484959493929190611e10565b6040805180830381600087803b15801561049d57600080fd5b505af19250505080156104eb575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526104e891810190611b6e565b60015b610568573d808015610519576040519150601f19603f3d011682016040523d82523d6000602084013e61051e565b606091505b505a82039450886080015173ffffffffffffffffffffffffffffffffffffffff166000141561054c57600080555b610557818487610bfb565b97509750975097505050505061056e565b50505050505b9193509193565b7f000000000000000000000000000000000000000000000000000000000000000081565b60208101518151606083015160009283928392839273ffffffffffffffffffffffffffffffffffffffff808216908416109284926105d79290610b8b565b905060005a90508173ffffffffffffffffffffffffffffffffffffffff1663128acb0830856106098c60400151610bc9565b60808d015173ffffffffffffffffffffffffffffffffffffffff1615610633578c60800151610659565b876106525773fffd8963efd1fc6a506488495d951d5263988d25610659565b6401000276a45b8d600001518e606001518f6020015160405160200161067a93929190611d89565b6040516020818303038152906040526040518663ffffffff1660e01b81526004016106a9959493929190611e10565b6040805180830381600087803b1580156106c257600080fd5b505af1925050508015610710575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820190925261070d91810190611b6e565b60015b610568573d80801561073e576040519150601f19603f3d011682016040523d82523d6000602084013e610743565b606091505b505a82039450610557818487610bfb565b6000606080600061076486610ae8565b67ffffffffffffffff8111801561077a57600080fd5b506040519080825280602002602001820160405280156107a4578160200160208202803683370190505b5092506107b086610ae8565b67ffffffffffffffff811180156107c657600080fd5b506040519080825280602002602001820160405280156107f0578160200160208202803683370190505b50915060005b60008060006108048a610b17565b9250925092506000806000806108876040518060a001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020018f81526020018762ffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff16815250610599565b9350935093509350828b898151811061089c57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050818a89815181106108e357fe5b63ffffffff90921660209283029190910190910152929b50968201966001909601958b926109108e610b48565b156102fa5761091e8e610b50565b9d50505050505050506107f6565b600083138061093b5750600082135b61094457600080fd5b600080600061095284610b17565b9250925092506109847f0000000000000000000000000000000000000000000000000000000000000000848484610ccf565b5060008060008089136109ca578573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1610888a6000036109ff565b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161089896000035b9250925092506000610a12878787610b8b565b90506000808273ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b158015610a5d57600080fd5b505afa158015610a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a959190611c6b565b5050505050915091508515610abb57604051848152826020820152816040820152606081fd5b60005415610ad1576000548414610ad157600080fd5b604051858152826020820152816040820152606081fd5b805160177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec909101045b919050565b60008080610b258482610cee565b9250610b32846014610dee565b9050610b3f846017610cee565b91509193909250565b516042111590565b8051606090610b859083906017907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe901610ede565b92915050565b6000610bc17f0000000000000000000000000000000000000000000000000000000000000000610bbc8686866110c5565b611142565b949350505050565b60007f80000000000000000000000000000000000000000000000000000000000000008210610bf757600080fd5b5090565b6000806000806000808773ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b158015610c4a57600080fd5b505afa158015610c5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c829190611c6b565b50939650610c9794508d935061127892505050565b91975095509050610cbf73ffffffffffffffffffffffffffffffffffffffff89168383611339565b9350869250505093509350935093565b6000610ce585610ce08686866110c5565b611991565b95945050505050565b600081826014011015610d6257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f746f416464726573735f6f766572666c6f770000000000000000000000000000604482015290519081900360640190fd5b8160140183511015610dd557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f746f416464726573735f6f75744f66426f756e64730000000000000000000000604482015290519081900360640190fd5b5001602001516c01000000000000000000000000900490565b600081826003011015610e6257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f746f55696e7432345f6f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b8160030183511015610ed557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f746f55696e7432345f6f75744f66426f756e6473000000000000000000000000604482015290519081900360640190fd5b50016003015190565b60608182601f011015610f5257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f736c6963655f6f766572666c6f77000000000000000000000000000000000000604482015290519081900360640190fd5b828284011015610fc357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f736c6963655f6f766572666c6f77000000000000000000000000000000000000604482015290519081900360640190fd5b8183018451101561103557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f736c6963655f6f75744f66426f756e6473000000000000000000000000000000604482015290519081900360640190fd5b60608215801561105457604051915060008252602082016040526110bc565b6040519150601f8416801560200281840101858101878315602002848b0101015b8183101561108d578051835260209283019201611075565b5050858452601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016604052505b50949350505050565b6110cd6119fa565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161115611105579192915b506040805160608101825273ffffffffffffffffffffffffffffffffffffffff948516815292909316602083015262ffffff169181019190915290565b6000816020015173ffffffffffffffffffffffffffffffffffffffff16826000015173ffffffffffffffffffffffffffffffffffffffff161061118457600080fd5b508051602080830151604093840151845173ffffffffffffffffffffffffffffffffffffffff94851681850152939091168385015262ffffff166060808401919091528351808403820181526080840185528051908301207fff0000000000000000000000000000000000000000000000000000000000000060a085015294901b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660a183015260b58201939093527fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b5460d5808301919091528251808303909101815260f5909101909152805191012090565b60008060008351606014611318576044845110156112cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c290611e75565b60405180910390fd5b600484019350838060200190518101906112e59190611bdf565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c29190611e62565b8380602001905181019061132c9190611d02565b9250925092509193909250565b60008060008060008060008060088b73ffffffffffffffffffffffffffffffffffffffff1663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561138d57600080fd5b505afa1580156113a1573d6000803e3d6000fd5b505050506040513d60208110156113b757600080fd5b5051600290810b908c900b816113c957fe5b0560020b901d905060006101008c73ffffffffffffffffffffffffffffffffffffffff1663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561141c57600080fd5b505afa158015611430573d6000803e3d6000fd5b505050506040513d602081101561144657600080fd5b5051600290810b908d900b8161145857fe5b0560020b8161146357fe5b079050600060088d73ffffffffffffffffffffffffffffffffffffffff1663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b1580156114b057600080fd5b505afa1580156114c4573d6000803e3d6000fd5b505050506040513d60208110156114da57600080fd5b5051600290810b908d900b816114ec57fe5b0560020b901d905060006101008e73ffffffffffffffffffffffffffffffffffffffff1663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561153f57600080fd5b505afa158015611553573d6000803e3d6000fd5b505050506040513d602081101561156957600080fd5b5051600290810b908e900b8161157b57fe5b0560020b8161158657fe5b07905060008160ff166001901b8f73ffffffffffffffffffffffffffffffffffffffff16635339c296856040518263ffffffff1660e01b8152600401808260010b815260200191505060206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b5051161180156116a457508d73ffffffffffffffffffffffffffffffffffffffff1663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561166257600080fd5b505afa158015611676573d6000803e3d6000fd5b505050506040513d602081101561168c57600080fd5b5051600290810b908d900b8161169e57fe5b0760020b155b80156116b557508b60020b8d60020b135b945060008360ff166001901b8f73ffffffffffffffffffffffffffffffffffffffff16635339c296876040518263ffffffff1660e01b8152600401808260010b815260200191505060206040518083038186803b15801561171557600080fd5b505afa158015611729573d6000803e3d6000fd5b505050506040513d602081101561173f57600080fd5b5051161180156117d257508d73ffffffffffffffffffffffffffffffffffffffff1663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561179057600080fd5b505afa1580156117a4573d6000803e3d6000fd5b505050506040513d60208110156117ba57600080fd5b5051600290810b908e900b816117cc57fe5b0760020b155b80156117e357508b60020b8d60020b125b95508160010b8460010b128061180f57508160010b8460010b14801561180f57508060ff168360ff1611155b1561182557839950829750819850809650611832565b8199508097508398508296505b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff87161b9150505b8560010b8760010b13611969578560010b8760010b14156118a3577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff858103161c165b6000818c73ffffffffffffffffffffffffffffffffffffffff16635339c2968a6040518263ffffffff1660e01b8152600401808260010b815260200191505060206040518083038186803b1580156118fa57600080fd5b505afa15801561190e573d6000803e3d6000fd5b505050506040513d602081101561192457600080fd5b5051169050611932816119c1565b61ffff16989098019750506001909501947fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61185e565b8115611976576001880397505b8215611983576001880397505b505050505050509392505050565b600061199d8383611142565b90503373ffffffffffffffffffffffffffffffffffffffff821614610b8557600080fd5b6000805b8215610b85577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8301909216916001016119c5565b604080516060810182526000808252602082018190529181019190915290565b600082601f830112611a2a578081fd5b8135611a3d611a3882611faf565b611f8b565b818152846020838601011115611a51578283fd5b816020850160208301379081016020019190915292915050565b8051600281900b8114610b1257600080fd5b600060a08284031215611a8e578081fd5b60405160a0810181811067ffffffffffffffff82111715611aab57fe5b6040529050808235611abc8161201f565b81526020830135611acc8161201f565b602082015260408381013590820152606083013562ffffff81168114611af157600080fd5b6060820152611b0260808401611b0e565b60808201525092915050565b8035610b128161201f565b805161ffff81168114610b1257600080fd5b60008060408385031215611b3d578182fd5b823567ffffffffffffffff811115611b53578283fd5b611b5f85828601611a1a565b95602094909401359450505050565b60008060408385031215611b80578182fd5b505080516020909101519092909150565b600080600060608486031215611ba5578081fd5b8335925060208401359150604084013567ffffffffffffffff811115611bc9578182fd5b611bd586828701611a1a565b9150509250925092565b600060208284031215611bf0578081fd5b815167ffffffffffffffff811115611c06578182fd5b8201601f81018413611c16578182fd5b8051611c24611a3882611faf565b818152856020838501011115611c38578384fd5b610ce5826020830160208601611fef565b600060a08284031215611c5a578081fd5b611c648383611a7d565b9392505050565b600080600080600080600060e0888a031215611c85578283fd5b8751611c908161201f565b9650611c9e60208901611a6b565b9550611cac60408901611b19565b9450611cba60608901611b19565b9350611cc860808901611b19565b925060a088015160ff81168114611cdd578283fd5b60c08901519092508015158114611cf2578182fd5b8091505092959891949750929550565b600080600060608486031215611d16578081fd5b835192506020840151611d288161201f565b9150611d3660408501611a6b565b90509250925092565b60008151808452611d57816020860160208601611fef565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b606093841b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000908116825260e89390931b7fffffff0000000000000000000000000000000000000000000000000000000000166014820152921b166017820152602b0190565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b600073ffffffffffffffffffffffffffffffffffffffff8088168352861515602084015285604084015280851660608401525060a06080830152611e5760a0830184611d3f565b979650505050505050565b600060208252611c646020830184611d3f565b60208082526010908201527f556e6578706563746564206572726f7200000000000000000000000000000000604082015260600190565b600060808201868352602060808185015281875180845260a0860191508289019350845b81811015611f0257845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101611ed0565b505084810360408601528651808252908201925081870190845b81811015611f3e57825163ffffffff1685529383019391830191600101611f1c565b5050505060609290920192909252949350505050565b93845273ffffffffffffffffffffffffffffffffffffffff92909216602084015263ffffffff166040830152606082015260800190565b60405181810167ffffffffffffffff81118282101715611fa757fe5b604052919050565b600067ffffffffffffffff821115611fc357fe5b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b60005b8381101561200a578181015183820152602001611ff2565b83811115612019576000848401525b50505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461204157600080fd5b5056fea164736f6c6343000706000a0000000000000000000000001f7d7550b1b028f7571e69a784071f0205fd2efa0000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad73", - "nonce": "0x6", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0xac803b65ac1d16bc3489342e08f3888d176a7491ff19551e394b4258931408f5", - "transactionType": "CREATE", - "contractName": "TickLens", - "contractAddress": "0x7dfd4f31be6814d2906bde155c3e1b146eac1468", - "function": null, - "arguments": null, - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "gas": "0x6fc0c", - "value": "0x0", - "input": "0x608060405234801561001057600080fd5b50610569806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063351fb47814610030575b600080fd5b61004361003e36600461037c565b610059565b60405161005091906104aa565b60405180910390f35b606060008373ffffffffffffffffffffffffffffffffffffffff16635339c296846040518263ffffffff1660e01b8152600401610096919061051b565b60206040518083038186803b1580156100ae57600080fd5b505afa1580156100c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100e69190610492565b90506000805b610100811015610110576001811b831615610108576001909101905b6001016100ec565b5060008573ffffffffffffffffffffffffffffffffffffffff1663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561015957600080fd5b505afa15801561016d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019191906103ba565b90508167ffffffffffffffff811180156101aa57600080fd5b506040519080825280602002602001820160405280156101e457816020015b6101d1610328565b8152602001906001900390816101c95790505b50935060005b61010081101561031e576001811b841615610316576040517ff30dba93000000000000000000000000000000000000000000000000000000008152600187900b60020b60081b8201830290600090819073ffffffffffffffffffffffffffffffffffffffff8b169063f30dba9390610266908690600401610529565b6101006040518083038186803b15801561027f57600080fd5b505afa158015610293573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b791906103e2565b5050505050509150915060405180606001604052808460020b815260200182600f0b8152602001836fffffffffffffffffffffffffffffffff168152508887600190039750878151811061030757fe5b60200260200101819052505050505b6001016101ea565b5050505092915050565b604080516060810182526000808252602082018190529181019190915290565b8051801515811461035857600080fd5b919050565b805161035881610537565b805163ffffffff8116811461035857600080fd5b6000806040838503121561038e578182fd5b823561039981610537565b91506020830135600181900b81146103af578182fd5b809150509250929050565b6000602082840312156103cb578081fd5b81518060020b81146103db578182fd5b9392505050565b600080600080600080600080610100898b0312156103fe578384fd5b88516fffffffffffffffffffffffffffffffff8116811461041d578485fd5b80985050602089015180600f0b8114610434578485fd5b80975050604089015195506060890151945060808901518060060b8114610459578485fd5b935061046760a08a0161035d565b925061047560c08a01610368565b915061048360e08a01610348565b90509295985092959890939650565b6000602082840312156104a3578081fd5b5051919050565b602080825282518282018190526000919060409081850190868401855b8281101561050e578151805160020b855286810151600f0b878601528501516fffffffffffffffffffffffffffffffff1685850152606090930192908501906001016104c7565b5091979650505050505050565b60019190910b815260200190565b60029190910b815260200190565b73ffffffffffffffffffffffffffffffffffffffff8116811461055957600080fd5b5056fea164736f6c6343000706000a", - "nonce": "0x7", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x76beabf4d46eb1bfdbe77a17918b85748b2bd246b4e0c901fec23ebc81b34fa6", + "hash": "0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3", "transactionType": "CREATE2", - "contractName": "NFTDescriptor", - "contractAddress": "0x2e9d45bb7b30549f5216813ada9a6b7982c5b3ed", - "function": null, - "arguments": null, - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x70c2fe", - "value": "0x0", - "input": "0x0000000000000000000000000000000000000000000000000000000000000000615fdb610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c8063c49917d71461003a575b600080fd5b61004d610048366004613f06565b610063565b60405161005a9190614648565b60405180910390f35b6060600061007e83610079856101800151610170565b6103d1565b905060006100b2610092856060015161048c565b61009f866080015161048c565b6100ad876101a00151610644565b61065a565b905060006101006100c6866000015161068c565b6100d3876080015161048c565b6100e08860200151610644565b6100ed8960400151610644565b6100fb8a6101800151610170565b610767565b905060006101156101108761079d565b6109d8565b90506101458484848460405160200161013194939291906142c3565b6040516020818303038152906040526109d8565b6040516020016101559190614603565b6040516020818303038152906040529450505050505b919050565b606062ffffff82166101b6575060408051808201909152600281527f3025000000000000000000000000000000000000000000000000000000000000602082015261016b565b816000805b62ffffff8316156102065760ff8116156101d7576001016101f0565b600a62ffffff84160662ffffff166000146101f0576001015b600190910190600a62ffffff84160492506101bb565b61020e613e00565b60006005841061030357600060046102298660ff8716610b5b565b1015610236576001610239565b60005b60ff908116915061024d9085166001610b5b565b610258866005610b5b565b106102845761027f61026e60ff86166001610b5b565b610279876005610b5b565b90610b5b565b610287565b60005b60ff8516608085018190529092506102a6906001906102799085610bb8565b60ff90811660a085015260808401516102cd9183916102c791166001610b5b565b90610bb8565b60ff90811660408501526102f59082906102c7906102ee9088166001610bb8565b8590610bb8565b60ff16602084015250610373565b61030e600585610b5b565b60026080840181905290915061032c90600190610279908490610bb8565b60ff90811660a084015261034e906103479085166002610bb8565b8290610bb8565b60ff1660208301819052610363906002610b5b565b60ff166040830152600160c08301525b6103926103838560ff8616610b5b565b62ffffff891690600a0a610c12565b8252600160e0830152600484116103aa5760006103b5565b6103b5846004610b5b565b60ff1660608301526103c682610c79565b979650505050505050565b6060816103e1846060015161048c565b6103ee856080015161048c565b6104278660e00151156104065786610120015161040d565b8661010001515b8761016001518860c001518960a001518a60e00151610ea5565b6104608760e001511561043f57876101000151610446565b8761012001515b8861016001518960c001518a60a001518b60e00151610ea5565b6040516020016104749594939291906143ea565b60405160208183030381529060405290505b92915050565b6060816000805b82518160ff1610156104f057828160ff16815181106104ae57fe5b6020910101517fff0000000000000000000000000000000000000000000000000000000000000016601160f91b14156104e8576001909101905b600101610493565b5060ff81161561063c5760008160ff1683510167ffffffffffffffff8111801561051957600080fd5b506040519080825280601f01601f191660200182016040528015610544576020820181803683370190505b5090506000805b84518160ff16101561062f57848160ff168151811061056657fe5b6020910101517fff0000000000000000000000000000000000000000000000000000000000000016601160f91b14156105e4577f5c000000000000000000000000000000000000000000000000000000000000008383806001019450815181106105cc57fe5b60200101906001600160f81b031916908160001a9053505b848160ff16815181106105f357fe5b602001015160f81c60f81b83838060010194508151811061061057fe5b60200101906001600160f81b031916908160001a90535060010161054b565b508194505050505061016b565b509192915050565b60606104866001600160a01b0383166014610fcf565b6060838383866040516020016106739493929190614177565b60405160208183030381529060405290505b9392505050565b6060816106b157506040805180820190915260018152600360fc1b602082015261016b565b8160005b81156106c957600101600a820491506106b5565b60008167ffffffffffffffff811180156106e257600080fd5b506040519080825280601f01601f19166020018201604052801561070d576020820181803683370190505b50859350905060001982015b831561075e57600a840660300160f81b8282806001900393508151811061073c57fe5b60200101906001600160f81b031916908160001a905350600a84049350610719565b50949350505050565b606083858484896040516020016107829594939291906144eb565b60405160208183030381529060405290505b95945050505050565b60606000604051806102a001604052806107ba8560200151610644565b81526020016107cc8560400151610644565b8152602001846101a001516001600160a01b031681526020018460600151815260200184608001518152602001610807856101800151610170565b815260200184610100015160020b815260200184610120015160020b815260200184610160015160020b8152602001610850856101000151866101200151876101400151611157565b60000b81526020018460000151815260200161087a85602001516001600160a01b0316608861118e565b815260200161089785604001516001600160a01b0316608861118e565b81526020016108b485602001516001600160a01b0316600061118e565b81526020016108d185604001516001600160a01b0316600061118e565b81526020016109046108f686602001516001600160a01b03166010886000015161119d565b600060ff60106101126111bd565b815260200161093761092986604001516001600160a01b03166010886000015161119d565b600060ff60646101e46111bd565b815260200161095c6108f686602001516001600160a01b03166020886000015161119d565b815260200161098161092986604001516001600160a01b03166020886000015161119d565b81526020016109a66108f686602001516001600160a01b03166030886000015161119d565b81526020016109cb61092986604001516001600160a01b03166030886000015161119d565b9052905061068581611205565b60608151600014156109f9575060408051602081019091526000815261016b565b600060405180606001604052806040815260200161526960409139905060006003845160020181610a2657fe5b04600402905060008160200167ffffffffffffffff81118015610a4857600080fd5b506040519080825280601f01601f191660200182016040528015610a73576020820181803683370190505b509050818152600183018586518101602084015b81831015610adf576003830192508251603f8160121c168501518253600182019150603f81600c1c168501518253600182019150603f8160061c168501518253600182019150603f8116850151825350600101610a87565b600389510660018114610af95760028114610b2557610b4d565b7f3d3d000000000000000000000000000000000000000000000000000000000000600119830152610b4d565b7f3d000000000000000000000000000000000000000000000000000000000000006000198301525b509398975050505050505050565b600082821115610bb2576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610685576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000808211610c68576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610c7157fe5b049392505050565b60606000826020015160ff1667ffffffffffffffff81118015610c9b57600080fd5b506040519080825280601f01601f191660200182016040528015610cc6576020820181803683370190505b5090508260e0015115610d1c577f250000000000000000000000000000000000000000000000000000000000000081600183510381518110610d0457fe5b60200101906001600160f81b031916908160001a9053505b8260c0015115610d7957600360fc1b81600081518110610d3857fe5b60200101906001600160f81b031916908160001a905350601760f91b81600181518110610d6157fe5b60200101906001600160f81b031916908160001a9053505b608083015160ff165b60a0840151610d959060ff166001610bb8565b811015610dcc57603060f81b828281518110610dad57fe5b60200101906001600160f81b031916908160001a905350600101610d82565b505b825115610486576000836060015160ff16118015610df95750826060015160ff16836040015160ff16145b15610e3c5760408301805160ff600019820181169092528251601760f91b92849216908110610e2457fe5b60200101906001600160f81b031916908160001a9053505b8251610e4e90603090600a9006610bb8565b60f81b818460400180518091906001900360ff1660ff1681525060ff1681518110610e7557fe5b60200101906001600160f81b031916908160001a905350600a8360000181815181610e9c57fe5b04905250610dce565b606084600281900b620d89e71981610eb957fe5b050260020b8660020b1415610f13578115610eef576040518060400160405280600381526020016209a82b60eb1b815250610f0c565b6040518060400160405280600381526020016226a4a760e91b8152505b9050610794565b84600281900b620d89e881610f2457fe5b050260020b8660020b1415610f7a578115610f5a576040518060400160405280600381526020016226a4a760e91b815250610f0c565b5060408051808201909152600381526209a82b60eb1b6020820152610794565b6000610f8587611494565b90508215610fbc57610fb978010000000000000000000000000000000000000000000000006001600160a01b038316610c12565b90505b610fc78186866117e2565b915050610794565b606060008260020260020167ffffffffffffffff81118015610ff057600080fd5b506040519080825280601f01601f19166020018201604052801561101b576020820181803683370190505b509050600360fc1b8160008151811061103057fe5b60200101906001600160f81b031916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061107557fe5b60200101906001600160f81b031916908160001a905350600160028402015b6001811115611103577f303132333435363738396162636465660000000000000000000000000000000085600f16601081106110cc57fe5b1a60f81b8282815181106110dc57fe5b60200101906001600160f81b031916908160001a90535060049490941c9360001901611094565b508315610685576040805162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015290519081900360640190fd5b60008360020b8260020b12156111705750600019610685565b8260020b8260020b131561118657506001610685565b506000610685565b606061068583831c60036119b0565b600060ff826111ac8686611a77565b02816111b457fe5b06949350505050565b60606111fb6111f6846102c76111d3888a610b5b565b6111f06111e0888a610b5b565b6111ea8d8d610b5b565b90611a7e565b90610c12565b61068c565b9695505050505050565b606061121082611ad7565b61122c836000015184602001518560600151866080015161218b565b611243846060015185608001518660a001516124b6565b6112618560c001518660e00151876101000151886101200151612606565b61128161127287610140015161068c565b8760c001518860e00151612959565b6112948761014001518860400151612d8a565b6040516020018087805190602001908083835b602083106112c65780518252601f1990920191602091820191016112a7565b51815160209384036101000a600019018019909216911617905289519190930192890191508083835b6020831061130e5780518252601f1990920191602091820191016112ef565b51815160209384036101000a600019018019909216911617905288519190930192880191508083835b602083106113565780518252601f199092019160209182019101611337565b51815160209384036101000a600019018019909216911617905287519190930192870191508083835b6020831061139e5780518252601f19909201916020918201910161137f565b51815160209384036101000a600019018019909216911617905286519190930192860191508083835b602083106113e65780518252601f1990920191602091820191016113c7565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b6020831061142e5780518252601f19909201916020918201910161140f565b5181516020939093036101000a60001901801990911692169190911790527f3c2f7376673e000000000000000000000000000000000000000000000000000092019182525060408051808303601919018152600690920190529998505050505050505050565b60008060008360020b126114ab578260020b6114b3565b8260020b6000035b9050620d89e881111561150d576040805162461bcd60e51b815260206004820152600160248201527f5400000000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60006001821661152157600160801b611533565b6ffffcb933bd6fad37aa2d162d1a5940015b70ffffffffffffffffffffffffffffffffff1690506002821615611567576ffff97272373d413259a46990580e213a0260801c5b6004821615611586576ffff2e50f5f656932ef12357cf3c7fdcc0260801c5b60088216156115a5576fffe5caca7e10e4e61c3624eaa0941cd00260801c5b60108216156115c4576fffcb9843d60f6159c9db58835c9266440260801c5b60208216156115e3576fff973b41fa98c081472e6896dfb254c00260801c5b6040821615611602576fff2ea16466c96a3843ec78b326b528610260801c5b6080821615611621576ffe5dee046a99a2a811c461f1969c30530260801c5b610100821615611641576ffcbe86c7900a88aedcffc83b479aa3a40260801c5b610200821615611661576ff987a7253ac413176f2b074cf7815e540260801c5b610400821615611681576ff3392b0822b70005940c7a398e4b70f30260801c5b6108008216156116a1576fe7159475a2c29b7443b29c7fa6e889d90260801c5b6110008216156116c1576fd097f3bdfd2022b8845ad8f792aa58250260801c5b6120008216156116e1576fa9f746462d870fdf8a65dc1f90e061e50260801c5b614000821615611701576f70d869a156d2a1b890bb3df62baf32f70260801c5b618000821615611721576f31be135f97d08fd981231505542fcfa60260801c5b62010000821615611742576f09aa508b5b7a84e1c677de54f3e99bc90260801c5b62020000821615611762576e5d6af8dedb81196699c329225ee6040260801c5b62040000821615611781576d2216e584f5fa1ea926041bedfe980260801c5b6208000082161561179e576b048a170391f7dc42444e8fa20260801c5b60008460020b13156117b95780600019816117b557fe5b0490505b6401000000008106156117cd5760016117d0565b60005b60ff16602082901c0192505050919050565b606060006117f1858585612e02565b90506000611809828368010000000000000000612f04565b90506c010000000000000000000000008210801561184a576118438272047bf19673df52e37f2410011d100000000000600160801b612f04565b915061185f565b61185c82620186a0600160801b612f04565b91505b8160005b811561187757600101600a82049150611863565b600019016000806118888684612fb3565b915091508015611899576001909201915b6118a1613e00565b851561190e576118c06118b8602b60ff8716610b5b565b600790610bb8565b60ff9081166020830152600260808301526118e6906001906102c790602b908816610b5b565b60ff90811660a0830152602082015161190191166001610b5b565b60ff166040820152611985565b60098460ff16106119575761192760ff85166004610b5b565b60ff166020820181905260056080830152611943906001610b5b565b60ff1660a082015260046040820152611985565b6006602082015260056040820181905261197c906001906102c79060ff881690610b5b565b60ff1660608201525b82815285151560c0820152600060e08201526119a081610c79565b9c9b505050505050505050505050565b606060008260020267ffffffffffffffff811180156119ce57600080fd5b506040519080825280601f01601f1916602001820160405280156119f9576020820181803683370190505b5080519091505b8015611a6f577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110611a3557fe5b1a60f81b826001830381518110611a4857fe5b60200101906001600160f81b031916908160001a90535060049490941c9360001901611a00565b509392505050565b1c60ff1690565b600082611a8d57506000610486565b82820282848281611a9a57fe5b04146106855760405162461bcd60e51b81526004018080602001828103825260218152602001806154886021913960400191505060405180910390fd5b6060611b6c82610160015160405160200180806150426081913960810182805190602001908083835b60208310611b1f5780518252601f199092019160209182019101611b00565b6001836020036101000a038019825116818451168082178552505050505050905001806813979f1e17b9bb339f60b91b8152506009019150506040516020818303038152906040526109d8565b611cd8836101e001518461020001518561018001516040516020018080614b7f6063913960630184805190602001908083835b60208310611bbe5780518252601f199092019160209182019101611b9f565b51815160209384036101000a600019018019909216911617905265272063793d2760d01b919093019081528551600690910192860191508083835b60208310611c185780518252601f199092019160209182019101611bf9565b51815160209384036101000a60001901801990921691161790527f2720723d273132307078272066696c6c3d272300000000000000000000000000919093019081528451601390910192850191508083835b60208310611c895780518252601f199092019160209182019101611c6a565b6001836020036101000a038019825116818451168082178552505050505050905001806813979f1e17b9bb339f60b91b81525060090193505050506040516020818303038152906040526109d8565b611d29846102200151856102400151866101a001516040516020018080614b7f60639139606301848051906020019080838360208310611bbe5780518252601f199092019160209182019101611b9f565b611e48856102600151866102800151876101c001516040516020018080614b7f6063913960630184805190602001908083835b60208310611d7b5780518252601f199092019160209182019101611d5c565b51815160209384036101000a600019018019909216911617905265272063793d2760d01b919093019081528551600690910192860191508083835b60208310611dd55780518252601f199092019160209182019101611db6565b51815160001960209485036101000a019081169019919091161790527f2720723d273130307078272066696c6c3d272300000000000000000000000000939091019283528451601390930192908501915080838360208310611c895780518252601f199092019160209182019101611c6a565b6101608601516040516020018060566148fa8239605601602c6152a982397f3c646566733e0000000000000000000000000000000000000000000000000000602c820152603201604b614ff78239604b0186805190602001908083835b60208310611ec45780518252601f199092019160209182019101611ea5565b6001836020036101000a03801982511681845116808217855250505050505090500180615b2f603e9139603e0185805190602001908083835b60208310611f1c5780518252601f199092019160209182019101611efd565b6001836020036101000a038019825116818451168082178552505050505050905001806150c3603e9139603e0184805190602001908083835b60208310611f745780518252601f199092019160209182019101611f55565b5181516020939093036101000a60001901801990911692169190911790527f22202f3e00000000000000000000000000000000000000000000000000000000920191825250600401603b6147f28239603b0183805190602001908083835b60208310611ff15780518252601f199092019160209182019101611fd2565b6001836020036101000a03801982511681845116808217855250505050505090500180614c3f60999139609901607f6156e08239607f016088615aa782396088016041614cd88239604101605d615c678239605d01607261578c8239607201604961475b823960490160be614f39823960be016071614a0b8239607101607561562382396075016066614d19823960660160a46152d5823960a4016085615b6d82397f3c6720636c69702d706174683d2275726c2823636f726e65727329223e00000060858201527f3c726563742066696c6c3d22000000000000000000000000000000000000000060a2820152825160ae9091019060208401908083835b6020831061210f5780518252601f1990920191602091820191016120f0565b6001836020036101000a03801982511681845116808217855250505050505090500180614d7f60319139603101604e6147a48239604e01605d614be28239605d0160416152288239604101605261510182396052016075615bf28239607501955050505050506040516020818303038152906040529050919050565b60608382858488878a896040516020018080615d4a60259139602501607d614ebc8239607d0189805190602001908083835b602083106121dc5780518252601f1990920191602091820191016121bd565b51815160209384036101000a600019018019909216911617905264010714051160dd1b919093019081528a516005909101928b0191508083835b602083106122355780518252601f199092019160209182019101612216565b6001836020036101000a03801982511681845116808217855250505050505090500180614db0607991396079016086615cc4823960860187805190602001908083835b602083106122975780518252601f199092019160209182019101612278565b51815160209384036101000a600019018019909216911617905264010714051160dd1b919093019081528851600590910192890191508083835b602083106122f05780518252601f1990920191602091820191016122d1565b6001836020036101000a0380198251168184511680821785525050505050509050018061498660859139608501607b6159158239607b0185805190602001908083835b602083106123525780518252601f199092019160209182019101612333565b51815160209384036101000a600019018019909216911617905264010714051160dd1b919093019081528651600590910192870191508083835b602083106123ab5780518252601f19909201916020918201910161238c565b6001836020036101000a03801982511681845116808217855250505050505090500180614ad0605d9139605d0160a3615580823960a30183805190602001908083835b6020831061240d5780518252601f1990920191602091820191016123ee565b51815160209384036101000a600019018019909216911617905264010714051160dd1b919093019081528451600590910192850191508083835b602083106124665780518252601f199092019160209182019101612447565b6001836020036101000a038019825116818451168082178552505050505050905001806146d0608b9139608b01985050505050505050506040516020818303038152906040529050949350505050565b6060838383604051602001808061482d60cd913960cd0184805190602001908083835b602083106124f85780518252601f1990920191602091820191016124d9565b6001836020036101000a03801982511681845116808217855250505050505090500180602f60f81b81525060010183805190602001908083835b602083106125515780518252601f199092019160209182019101612532565b6001836020036101000a03801982511681845116808217855250505050505090500180615ef36077913960770182805190602001908083835b602083106125a95780518252601f19909201916020918201910161258a565b5181516020939093036101000a60001901801990911692169190911790526a1e17ba32bc3a1f1e17b39f60a91b920191825250600b016073615d938239607301935050505060405160208183030381529060405290509392505050565b606060008260000b600114612698578260000b6000191461265c576040518060400160405280600581526020017f236e6f6e65000000000000000000000000000000000000000000000000000000815250612693565b6040518060400160405280600a81526020017f23666164652d646f776e000000000000000000000000000000000000000000008152505b6126cf565b6040518060400160405280600881526020017f23666164652d75700000000000000000000000000000000000000000000000008152505b905060006126de878787613024565b9050818183836126ed88613272565b60405160200180807f3c67206d61736b3d2275726c2800000000000000000000000000000000000000815250600d0186805190602001908083835b602083106127475780518252601f199092019160209182019101612728565b5181516020939093036101000a600019018019909116921691909117905261149160f11b9201918252506002016077615379823960770185805190602001908083835b602083106127a95780518252601f19909201916020918201910161278a565b6001836020036101000a03801982511681845116808217855250505050505090500180614a7c60549139605401807f3c2f673e3c67206d61736b3d2275726c2800000000000000000000000000000081525060110184805190602001908083835b602083106128295780518252601f19909201916020918201910161280a565b5181516020939093036101000a600019018019909116921691909117905261149160f11b92019182525060020160296153f0823960290160456154438239604501807f3c7061746820643d22000000000000000000000000000000000000000000000081525060090183805190602001908083835b602083106128bd5780518252601f19909201916020918201910161289e565b6001836020036101000a038019825116818451168082178552505050505050905001806156986048913960480182805190602001908083835b602083106129155780518252601f1990920191602091820191016128f6565b6001836020036101000a0380198251168184511680821785525050505050509050019550505050505060405160208183030381529060405292505050949350505050565b6060600061296684613746565b9050600061297384613746565b865183518251929350600490910191600a91820191016000806129968a8a613850565b915091506129a98560040160070261068c565b8b6129b98660040160070261068c565b896129c98760040160070261068c565b8a8787604051602001808061575f602d9139602d01806c1e3932b1ba103bb4b23a341e9160991b815250600d0189805190602001908083835b60208310612a215780518252601f199092019160209182019101612a02565b6001836020036101000a03801982511681845116808217855250505050505090500180615153603d9139603d01608d615e068239608d0188805190602001908083835b60208310612a835780518252601f199092019160209182019101612a64565b5181516020939093036101000a60001901801990911692169190911790526a1e17ba32bc3a1f1e17b39f60a91b920191825250600b01602d615fa28239602d01806c1e3932b1ba103bb4b23a341e9160991b815250600d0187805190602001908083835b60208310612b065780518252601f199092019160209182019101612ae7565b6001836020036101000a03801982511681845116808217855250505050505090500180615153603d9139603d016093614e29823960930186805190602001908083835b60208310612b685780518252601f199092019160209182019101612b49565b5181516020939093036101000a60001901801990911692169190911790526a1e17ba32bc3a1f1e17b39f60a91b920191825250600b01602d614b2d8239602d01806c1e3932b1ba103bb4b23a341e9160991b815250600d0185805190602001908083835b60208310612beb5780518252601f199092019160209182019101612bcc565b6001836020036101000a03801982511681845116808217855250505050505090500180615153603d9139603d016093615990823960930184805190602001908083835b60208310612c4d5780518252601f199092019160209182019101612c2e565b6001836020036101000a03801982511681845116808217855250505050505090500180615f6a603891396038016060615e938239606001606461551c82396064016025614b5a823960250183805190602001908083835b60208310612cc35780518252601f199092019160209182019101612ca4565b51815160209384036101000a60001901801990921691161790527f70782c2000000000000000000000000000000000000000000000000000000000919093019081528451600490910192850191508083835b60208310612d345780518252601f199092019160209182019101612d15565b6001836020036101000a0380198251168184511680821785525050505050509050018061495060369139603601985050505050505050506040516020818303038152906040529750505050505050509392505050565b6060612d968383613c81565b15612dec5760405160200180608d6158888239608d0160736154a9823960730160716151b78239607101608a6157fe8239608a016084615a23823960840190506040516020818303038152906040529050610486565b5060408051602081019091526000815292915050565b600080612e1d612e1860ff868116908616613ce4565b613d49565b9050600081118015612e30575060128111155b15612ef1578260ff168460ff161115612e9a57612e64612e51826002610c12565b6001600160a01b03871690600a0a611a7e565b91506002810660011415612e9557612e92827003298b075b4b6a5240945790619b37fd4a600160801b612f04565b91505b612eec565b612ebb612ea8826002610c12565b6001600160a01b03871690600a0a610c12565b91506002810660011415612eec57612ee982600160801b7003298b075b4b6a5240945790619b37fd4a612f04565b91505b611a6f565b50506001600160a01b0390921692915050565b6000808060001985870986860292508281109083900303905080612f3a5760008411612f2f57600080fd5b508290049050610685565b808411612f4657600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b600080600060058460ff161115612fdb57612fd88560ff600419870116600a0a610c12565b94505b60006004600a8706119050612ff186600a610c12565b95508015613000578560010195505b85620186a0141561301657600a86049550600191505b5084925090505b9250929050565b606060008260020b85850360020b8161303957fe5b05905060048160020b13613084576040518060400160405280601a81526020017f4d312031433431203431203130352031303520313435203134350000000000008152509150611a6f565b60088160020b136130cc576040518060400160405280601981526020017f4d312031433333203439203937203131332031343520313435000000000000008152509150611a6f565b60108160020b13613114576040518060400160405280601981526020017f4d312031433333203537203839203131332031343520313435000000000000008152509150611a6f565b60208160020b1361315c576040518060400160405280601981526020017f4d312031433235203635203831203132312031343520313435000000000000008152509150611a6f565b60408160020b136131a4576040518060400160405280601981526020017f4d312031433137203733203733203132392031343520313435000000000000008152509150611a6f565b60808160020b136131ec576040518060400160405280601881526020017f4d312031433920383120363520313337203134352031343500000000000000008152509150611a6f565b6101008160020b13613235576040518060400160405280601a81526020017f4d31203143312038392035372e352031343520313435203134350000000000008152509150611a6f565b505060408051808201909152601881527f4d3120314331203937203439203134352031343520313435000000000000000060208201529392505050565b604080518082018252600281527f37330000000000000000000000000000000000000000000000000000000000006020808301919091528251808401845260038082527f313930000000000000000000000000000000000000000000000000000000000082840152845180860186528181527f32313700000000000000000000000000000000000000000000000000000000008185015285518087019096529085527f3333340000000000000000000000000000000000000000000000000000000000928501929092526060939091906001600087900b148061335957508560000b600019145b15613550578560000b600019146133705781613372565b835b8660000b600019146133845781613386565b835b8760000b60001914613398578361339a565b855b8860000b600019146133ac57836133ae565b855b60405160200180806b1e31b4b931b6329031bc1e9160a11b815250600c0185805190602001908083835b602083106133f75780518252601f1990920191602091820191016133d8565b51815160209384036101000a600019018019909216911617905267383c111031bc9e9160c11b919093019081528651600890910192870191508083835b602083106134535780518252601f199092019160209182019101613434565b6001836020036101000a038019825116818451168082178552505050505050905001806151906027913960270183805190602001908083835b602083106134ab5780518252601f19909201916020918201910161348c565b51815160209384036101000a600019018019909216911617905267383c111031bc9e9160c11b919093019081528451600890910192850191508083835b602083106135075780518252601f1990920191602091820191016134e8565b6001836020036101000a03801982511681845116808217855250505050505090500180615419602a9139602a01945050505050604051602081830303815290604052945061373d565b8383838360405160200180806b1e31b4b931b6329031bc1e9160a11b815250600c0185805190602001908083835b6020831061359d5780518252601f19909201916020918201910161357e565b51815160209384036101000a600019018019909216911617905267383c111031bc9e9160c11b919093019081528651600890910192870191508083835b602083106135f95780518252601f1990920191602091820191016135da565b51815160209384036101000a60001901801990921691161790527f70782220723d22347078222066696c6c3d22776869746522202f3e0000000000919093019081526b1e31b4b931b6329031bc1e9160a11b601b8201528551602790910192860191508083835b6020831061367f5780518252601f199092019160209182019101613660565b51815160209384036101000a600019018019909216911617905267383c111031bc9e9160c11b919093019081528451600890910192850191508083835b602083106136db5780518252601f1990920191602091820191016136bc565b6001836020036101000a038019825116818451168082178552505050505050905001807f70782220723d22347078222066696c6c3d22776869746522202f3e0000000000815250601b0194505050505060405160208183030381529060405294505b50505050919050565b6060600060405180602001604052806000815250905060008360020b121561378c5782600019029250604051806040016040528060018152602001602d60f81b81525090505b806137998460020b61068c565b6040516020018083805190602001908083835b602083106137cb5780518252601f1990920191602091820191016137ac565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b602083106138135780518252601f1990920191602091820191016137f4565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052915050919050565b60608060006002858501810b0590506201e847198160020b12156138c857604051806040016040528060018152602001600760fb1b8152506040518060400160405280600181526020017f3700000000000000000000000000000000000000000000000000000000000000815250925092505061301d565b620124f7198160020b121561393157604051806040016040528060018152602001600760fb1b8152506040518060400160405280600481526020017f31302e3500000000000000000000000000000000000000000000000000000000815250925092505061301d565b6161a7198160020b121561399957604051806040016040528060018152602001600760fb1b8152506040518060400160405280600581526020017f31342e3235000000000000000000000000000000000000000000000000000000815250925092505061301d565b611387198160020b1215613a02576040518060400160405280600281526020017f313000000000000000000000000000000000000000000000000000000000000081525060405180604001604052806002815260200161062760f31b815250925092505061301d565b60008160020b1215613a69576040518060400160405280600281526020017f313100000000000000000000000000000000000000000000000000000000000081525060405180604001604052806002815260200161323160f01b815250925092505061301d565b6113888160020b1215613aec576040518060400160405280600281526020017f31330000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600281526020017f3233000000000000000000000000000000000000000000000000000000000000815250925092505061301d565b6161a88160020b1215613b6f576040518060400160405280600281526020017f31350000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600281526020017f3235000000000000000000000000000000000000000000000000000000000000815250925092505061301d565b620124f88160020b1215613bd85760405180604001604052806002815260200161062760f31b8152506040518060400160405280600281526020017f3236000000000000000000000000000000000000000000000000000000000000815250925092505061301d565b6201e8488160020b1215613c265760405180604001604052806002815260200161323160f01b81525060405180604001604052806002815260200161323760f01b815250925092505061301d565b6040518060400160405280600281526020017f323400000000000000000000000000000000000000000000000000000000000081525060405180604001604052806002815260200161323760f01b815250925092505061301d565b6040805160208082018590526bffffffffffffffffffffffff19606085901b16828401528251603481840301815260549092019092528051910120600090613cc884613d60565b60020260010160ff1660001981613cdb57fe5b04119392505050565b6000818303818312801590613cf95750838113155b80613d0e5750600083128015613d0e57508381135b6106855760405162461bcd60e51b8152600401808060200182810382526024815260200180615d6f6024913960400191505060405180910390fd5b600080821215613d5c5781600003610486565b5090565b6000808211613d6e57600080fd5b600160801b8210613d8157608091821c91015b680100000000000000008210613d9957604091821c91015b6401000000008210613dad57602091821c91015b620100008210613dbf57601091821c91015b6101008210613dd057600891821c91015b60108210613de057600491821c91015b60048210613df057600291821c91015b6002821061016b57600101919050565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915290565b80356001600160a01b038116811461016b57600080fd5b8035801515811461016b57600080fd5b8035600281900b811461016b57600080fd5b600082601f830112613e8d578081fd5b813567ffffffffffffffff811115613ea157fe5b613eb4601f8201601f191660200161467b565b818152846020838601011115613ec8578283fd5b816020850160208301379081016020019190915292915050565b803562ffffff8116811461016b57600080fd5b803560ff8116811461016b57600080fd5b600060208284031215613f17578081fd5b813567ffffffffffffffff80821115613f2e578283fd5b81840191506101c0808387031215613f44578384fd5b613f4d8161467b565b905082358152613f5f60208401613e44565b6020820152613f7060408401613e44565b6040820152606083013582811115613f86578485fd5b613f9287828601613e7d565b606083015250608083013582811115613fa9578485fd5b613fb587828601613e7d565b608083015250613fc760a08401613ef5565b60a0820152613fd860c08401613ef5565b60c0820152613fe960e08401613e5b565b60e08201526101009150613ffe828401613e6b565b828201526101209150614012828401613e6b565b828201526101409150614026828401613e6b565b82820152610160915061403a828401613e6b565b82820152610180915061404e828401613ee2565b828201526101a09150614062828401613e44565b91810191909152949350505050565b6000815161408381856020860161469f565b9290920192915050565b7fe29aa0efb88f20444953434c41494d45523a204475652064696c6967656e636581527f20697320696d7065726174697665207768656e20617373657373696e6720746860208201527f6973204e46542e204d616b65207375726520746f6b656e20616464726573736560408201527f73206d617463682074686520657870656374656420746f6b656e732c2061732060608201527f746f6b656e2073796d626f6c73206d617920626520696d6974617465642e00006080820152609e0190565b7f5c6e5c6e00000000000000000000000000000000000000000000000000000000815260040190565b60007f54686973204e465420726570726573656e74732061206c69717569646974792082527f706f736974696f6e20696e206120556e69737761702056332000000000000000602083015285516141d5816039850160208a0161469f565b602d60f81b60399184019182015285516141f681603a840160208a0161469f565b7f20706f6f6c2e2000000000000000000000000000000000000000000000000000603a92909101918201527f546865206f776e6572206f662074686973204e46542063616e206d6f6469667960418201527f206f722072656465656d2074686520706f736974696f6e2e5c6e00000000000060618201527f5c6e506f6f6c20416464726573733a2000000000000000000000000000000000607b82015284516142a681608b84016020890161469f565b612e3760f11b608b92909101918201526103c6608d820185614071565b60007f7b226e616d65223a220000000000000000000000000000000000000000000000825285516142fb816009850160208a0161469f565b7f222c20226465736372697074696f6e223a220000000000000000000000000000600991840191820152855161433881601b840160208a0161469f565b855191019061434e81601b84016020890161469f565b7f222c2022696d616765223a202200000000000000000000000000000000000000601b92909101918201527f646174613a696d6167652f7376672b786d6c3b6261736536342c000000000000602882015283516143b281604284016020880161469f565b7f227d000000000000000000000000000000000000000000000000000000000000604292909101918201526044019695505050505050565b60007f556e6973776170202d20000000000000000000000000000000000000000000008252865161442281600a850160208b0161469f565b80830190507f202d20000000000000000000000000000000000000000000000000000000000080600a830152875161446181600d850160208c0161469f565b602f60f81b600d9390910192830152865161448381600e850160208b0161469f565b600e920191820152845161449e81601184016020890161469f565b7f3c3e0000000000000000000000000000000000000000000000000000000000006011929091019182015283516144dc81601384016020880161469f565b01601301979650505050505050565b60007f20416464726573733a2000000000000000000000000000000000000000000000808352875161452481600a860160208c0161469f565b612e3760f11b600a91850191820152875161454681600c840160208c0161469f565b01600c810191909152855190614563826016830160208a0161469f565b8181019150507f5c6e46656520546965723a200000000000000000000000000000000000000000601682015284516145a281602284016020890161469f565b7f5c6e546f6b656e2049443a2000000000000000000000000000000000000000006022929091019182015283516145e081602e84016020880161469f565b6145f66145f1602e8385010161414e565b61408d565b9998505050505050505050565b60007f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000008252825161463b81601d85016020870161469f565b91909101601d0192915050565b600060208252825180602084015261466781604085016020870161469f565b601f01601f19169190910160400192915050565b60405181810167ffffffffffffffff8111828210171561469757fe5b604052919050565b60005b838110156146ba5781810151838201526020016146a2565b838111156146c9576000848401525b5050505056fe203c616e696d6174652061646469746976653d2273756d22206174747269627574654e616d653d2273746172744f6666736574222066726f6d3d2230252220746f3d22313030252220626567696e3d22307322206475723d223330732220726570656174436f756e743d22696e646566696e69746522202f3e3c2f74657874506174683e3c2f746578743e3c73746f70206f66667365743d222e39222073746f702d636f6c6f723d227768697465222073746f702d6f7061636974793d223022202f3e3c2f6c696e6561724772616469656e743e3c72656374207374796c653d2266696c7465723a2075726c28236631292220783d223070782220793d22307078222077696474683d22323930707822206865696768743d22353030707822202f3e3c6665496d61676520726573756c743d2270332220786c696e6b3a687265663d22646174613a696d6167652f7376672b786d6c3b6261736536342c3c67206d61736b3d2275726c2823666164652d73796d626f6c29223e3c726563742066696c6c3d226e6f6e652220783d223070782220793d22307078222077696474683d22323930707822206865696768743d22323030707822202f3e203c7465787420793d22373070782220783d2233327078222066696c6c3d2277686974652220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d7765696768743d223230302220666f6e742d73697a653d2233367078223e3c7376672077696474683d2232393022206865696768743d22353030222076696577426f783d2230203020323930203530302220786d6c6e733d22687474703a2f2f7777772e77332e6f72672f323030302f7376672270782c2030707829222063783d22307078222063793d223070782220723d22347078222066696c6c3d227768697465222f3e3c2f673e203c616e696d6174652061646469746976653d2273756d22206174747269627574654e616d653d2273746172744f6666736574222066726f6d3d2230252220746f3d22313030252220626567696e3d22307322206475723d223330732220726570656174436f756e743d22696e646566696e69746522202f3e203c2f74657874506174683e3c6d61736b2069643d22666164652d757022206d61736b436f6e74656e74556e6974733d226f626a656374426f756e64696e67426f78223e3c726563742077696474683d223122206865696768743d2231222066696c6c3d2275726c2823677261642d75702922202f3e3c2f6d61736b3e22207374726f6b653d227267626128302c302c302c302e332922207374726f6b652d77696474683d2233327078222066696c6c3d226e6f6e6522207374726f6b652d6c696e656361703d22726f756e6422202f3e203c616e696d6174652061646469746976653d2273756d22206174747269627574654e616d653d2273746172744f6666736574222066726f6d3d2230252220746f3d22313030252220626567696e3d22307322206475723d2233307322203c67207374796c653d227472616e73666f726d3a7472616e736c61746528323970782c20343434707829223e3c636972636c65207374796c653d227472616e73666f726d3a7472616e736c6174653364283c7376672077696474683d2732393027206865696768743d27353030272076696577426f783d2730203020323930203530302720786d6c6e733d27687474703a2f2f7777772e77332e6f72672f323030302f737667273e3c636972636c652063783d27203c67207374796c653d2266696c7465723a75726c2823746f702d726567696f6e2d626c7572293b207472616e73666f726d3a7363616c6528312e35293b207472616e73666f726d2d6f726967696e3a63656e74657220746f703b223e22202f3e3c6665426c656e64206d6f64653d226f7665726c61792220696e3d2270302220696e323d22703122202f3e3c6665426c656e64206d6f64653d226578636c7573696f6e2220696e323d22703222202f3e3c6665426c656e64206d6f64653d226f7665726c61792220696e323d2270332220726573756c743d22626c656e644f757422202f3e3c6665476175737369616e426c7572203c706174682069643d226d696e696d61702220643d224d3233342034343443323334203435372e393439203234322e323120343633203235332034363322202f3e3c6d61736b2069643d226e6f6e6522206d61736b436f6e74656e74556e6974733d226f626a656374426f756e64696e67426f78223e3c726563742077696474683d223122206865696768743d2231222066696c6c3d22776869746522202f3e3c2f6d61736b3e2220783d223070782220793d22307078222077696474683d22323930707822206865696768743d22353030707822202f3e203c616e696d6174652061646469746976653d2273756d22206174747269627574654e616d653d2273746172744f6666736574222066726f6d3d2230252220746f3d22313030252220626567696e3d22307322206475723d223330732220726570656174436f756e743d22696e646566696e69746522202f3e3c7465787420783d22313270782220793d22313770782220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d2231327078222066696c6c3d227768697465223e3c747370616e2066696c6c3d2272676261283235352c3235352c3235352c302e3629223e4d696e205469636b3a203c2f747370616e3e3c74657874506174682073746172744f66667365743d222d31303025222066696c6c3d2277686974652220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d22313070782220786c696e6b3a687265663d2223746578742d706174682d61223e3c6c696e6561724772616469656e742069643d22677261642d646f776e222078313d2230222078323d2231222079313d2230222079323d2231223e3c73746f70206f66667365743d22302e30222073746f702d636f6c6f723d227768697465222073746f702d6f7061636974793d223122202f3e3c73746f70206f66667365743d22302e39222073746f702d636f6c6f723d227768697465222073746f702d6f7061636974793d223022202f3e3c2f6c696e6561724772616469656e743e3c66696c7465722069643d226631223e3c6665496d61676520726573756c743d2270302220786c696e6b3a687265663d22646174613a696d6167652f7376672b786d6c3b6261736536342c3c7376672077696474683d2732393027206865696768743d27353030272076696577426f783d2730203020323930203530302720786d6c6e733d27687474703a2f2f7777772e77332e6f72672f323030302f737667273e3c726563742077696474683d27323930707827206865696768743d273530307078272066696c6c3d2723222f3e3c6665496d61676520726573756c743d2270322220786c696e6b3a687265663d22646174613a696d6167652f7376672b786d6c3b6261736536342c3c656c6c697073652063783d22353025222063793d22307078222072783d223138307078222072793d223132307078222066696c6c3d222330303022206f7061636974793d22302e383522202f3e3c2f673e707822206865696768743d2232367078222072783d22387078222072793d22387078222066696c6c3d227267626128302c302c302c302e362922202f3e70782220723d22347078222066696c6c3d22776869746522202f3e3c636972636c652063783d2231312e333437384c32342031324c31342e343334312031322e363532324c32322e333932332031384c31332e373831392031332e373831394c31382032322e333932334c31322e363532322031342e343334314c31322032344c31312e333437382031342e343334314c362032322e33393c726563742066696c6c3d226e6f6e652220783d223070782220793d22307078222077696474683d22323930707822206865696768743d22353030707822202f3e4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f20786d6c6e733a786c696e6b3d27687474703a2f2f7777772e77332e6f72672f313939392f786c696e6b273e3c6c696e6561724772616469656e742069643d22677261642d73796d626f6c223e3c73746f70206f66667365743d22302e37222073746f702d636f6c6f723d227768697465222073746f702d6f7061636974793d223122202f3e3c73746f70206f66667365743d222e3935222073746f702d636f6c6f723d227768697465222073746f702d6f7061636974793d223022202f3e3c2f6c696e6561724772616469656e743e207374796c653d227472616e73666f726d3a7472616e736c61746528373270782c313839707829223e3c7265637420783d222d313670782220793d222d31367078222077696474683d22313830707822206865696768743d223138307078222066696c6c3d226e6f6e6522202f3e3c7061746820643d22207374796c653d227472616e73666f726d3a7472616e736c61746528373270782c313839707829223e70782220723d2232347078222066696c6c3d226e6f6e6522207374726f6b653d22776869746522202f3e3c7265637420783d222d313670782220793d222d31367078222077696474683d22313830707822206865696768743d223138307078222066696c6c3d226e6f6e6522202f3e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f773c673e3c70617468207374796c653d227472616e73666f726d3a7472616e736c617465283670782c367078292220643d224d313220304c31322e3635323220392e35363538374c313820312e363037374c31332e373831392031302e323138314c32322e3339323320364c31342e34333431203c70617468207374726f6b652d6c696e656361703d22726f756e642220643d224d38203943382e30303030342032322e393439342031362e32303939203238203237203238222066696c6c3d226e6f6e6522207374726f6b653d22776869746522202f3e20726570656174436f756e743d22696e646566696e69746522202f3e3c2f74657874506174683e3c74657874506174682073746172744f66667365743d222d353025222066696c6c3d2277686974652220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d22313070782220786c696e6b3a687265663d2223746578742d706174682d61223e3c6d61736b2069643d22666164652d646f776e22206d61736b436f6e74656e74556e6974733d226f626a656374426f756e64696e67426f78223e3c726563742077696474683d223122206865696768743d2231222066696c6c3d2275726c2823677261642d646f776e2922202f3e3c2f6d61736b3e22207374726f6b653d2272676261283235352c3235352c3235352c3129222066696c6c3d226e6f6e6522207374726f6b652d6c696e656361703d22726f756e6422202f3e3c2f673e696e3d22626c656e644f75742220737464446576696174696f6e3d22343222202f3e3c2f66696c7465723e203c636c6970506174682069643d22636f726e657273223e3c726563742077696474683d2232393022206865696768743d22353030222072783d223432222072793d22343222202f3e3c2f636c6970506174683e203c67207374796c653d227472616e73666f726d3a7472616e736c61746528323970782c20333834707829223e3c6c696e6561724772616469656e742069643d22677261642d7570222078313d2231222078323d2230222079313d2231222079323d2230223e3c73746f70206f66667365743d22302e30222073746f702d636f6c6f723d227768697465222073746f702d6f7061636974793d223122202f3e32334c31302e323138312031332e373831394c312e363037372031384c392e35363538372031322e363532324c302031324c392e35363538372031312e333437384c312e3630373720364c31302e323138312031302e323138314c3620312e363037374c31312e3334373820392e35363538374c313220305a222066696c6c3d22776869746522202f3e3c67207374796c653d227472616e73666f726d3a7472616e736c6174652832323670782c20333932707829223e3c726563742077696474683d223336707822206865696768743d2233367078222072783d22387078222072793d22387078222066696c6c3d226e6f6e6522207374726f6b653d2272676261283235352c3235352c3235352c302e322922202f3e3c74657874506174682073746172744f66667365743d22353025222066696c6c3d2277686974652220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d22313070782220786c696e6b3a687265663d2223746578742d706174682d61223e3c7465787420783d22313270782220793d22313770782220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d2231327078222066696c6c3d227768697465223e3c747370616e2066696c6c3d2272676261283235352c3235352c3235352c302e3629223e4d6178205469636b3a203c2f747370616e3e3c616e696d6174655472616e73666f726d206174747269627574654e616d653d227472616e73666f726d2220747970653d22726f74617465222066726f6d3d22302031382031382220746f3d2233363020313820313822206475723d223130732220726570656174436f756e743d22696e646566696e697465222f3e3c2f673e3c2f673e3c706174682069643d22746578742d706174682d612220643d224d34302031322048323530204132382032382030203020312032373820343020563436302041323820323820302030203120323530203438382048343020413238203238203020302031203132203436302056343020413238203238203020302031203430203132207a22202f3e222f3e3c6665496d61676520726573756c743d2270312220786c696e6b3a687265663d22646174613a696d6167652f7376672b786d6c3b6261736536342c3c6d61736b2069643d22666164652d73796d626f6c22206d61736b436f6e74656e74556e6974733d227573657253706163654f6e557365223e3c726563742077696474683d22323930707822206865696768743d223230307078222066696c6c3d2275726c2823677261642d73796d626f6c2922202f3e3c2f6d61736b3e3c2f646566733e3c7265637420783d22302220793d2230222077696474683d2232393022206865696768743d22353030222072783d223432222072793d223432222066696c6c3d227267626128302c302c302c302922207374726f6b653d2272676261283235352c3235352c3235352c302e322922202f3e3c2f673e3c66696c7465722069643d22746f702d726567696f6e2d626c7572223e3c6665476175737369616e426c757220696e3d22536f75726365477261706869632220737464446576696174696f6e3d22323422202f3e3c2f66696c7465723e3c2f74657874506174683e203c74657874506174682073746172744f66667365743d223025222066696c6c3d2277686974652220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d22313070782220786c696e6b3a687265663d2223746578742d706174682d61223e3c7465787420746578742d72656e646572696e673d226f7074696d697a655370656564223e5369676e6564536166654d6174683a207375627472616374696f6e206f766572666c6f773c7265637420783d2231362220793d223136222077696474683d2232353822206865696768743d22343638222072783d223236222072793d223236222066696c6c3d227267626128302c302c302c302922207374726f6b653d2272676261283235352c3235352c3235352c302e322922202f3e3c7465787420783d22313270782220793d22313770782220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d2231327078222066696c6c3d227768697465223e3c747370616e2066696c6c3d2272676261283235352c3235352c3235352c302e3629223e49443a203c2f747370616e3e3c726563742077696474683d223336707822206865696768743d2233367078222072783d22387078222072793d22387078222066696c6c3d226e6f6e6522207374726f6b653d2272676261283235352c3235352c3235352c302e322922202f3e3c2f746578743e3c7465787420793d2231313570782220783d2233327078222066696c6c3d2277686974652220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d7765696768743d223230302220666f6e742d73697a653d2233367078223e3c2f746578743e3c2f673e3c67207374796c653d227472616e73666f726d3a7472616e736c6174652832323670782c20343333707829223e203c67207374796c653d227472616e73666f726d3a7472616e736c61746528323970782c20343134707829223ea164736f6c6343000706000a", - "nonce": "0x8", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0xd4a9ab6d6f1f7dae3f1eacb975d46776892e0d1c68f700a7d1346b725ebed5bb", - "transactionType": "CREATE", "contractName": null, - "contractAddress": "0x2bb4e3af3f07353a3e3c91126bd30654abf03369", + "contractAddress": "0x248a454ac3584c2a48d1fcb28d3910a6b6ea00af", "function": null, "arguments": null, - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "gas": "0x17c83d", - "value": "0x0", - "input": "0x60c060405234801561001057600080fd5b5060405161158038038061158083398101604081905261002f9161004a565b60609190911b6001600160601b03191660805260a052610082565b6000806040838503121561005c578182fd5b82516001600160a01b0381168114610072578283fd5b6020939093015192949293505050565b60805160601c60a0516114bf6100c16000398061028f52806102c35280610377525080610107528061014c528061061a528061066e52506114bf6000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c8063a18246e211610050578063a18246e2146100d5578063b7af3cdc146100dd578063e9dc6375146100f257610072565b80634aa4a4fc146100775780637e5af771146100955780639d7b0ea8146100b5575b600080fd5b61007f610105565b60405161008c9190611311565b60405180910390f35b6100a86100a3366004611017565b610129565b60405161008c9190611325565b6100c86100c3366004611057565b610148565b60405161008c9190611330565b6100c861028d565b6100e56102b1565b60405161008c9190611339565b6100e5610100366004611057565b6103d7565b7f000000000000000000000000000000000000000000000000000000000000000081565b60006101358383610148565b61013f8584610148565b13949350505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316141561018d5750606319610287565b8160011415610283576001600160a01b03831673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4814156101c4575061012c610287565b6001600160a01b03831673dac17f958d2ee523a2206206994597c13d831ec714156101f1575060c8610287565b6001600160a01b038316736b175474e89094c44da98b954eedeac495271d0f141561021e57506064610287565b6001600160a01b038316738daebade922df735c38c80c7ebd708af50815faa141561024c575060c719610287565b6001600160a01b038316732260fac5e5542a773aa44fbcfedf7c193bc2c599141561027b575061012b19610287565b506000610287565b5060005b92915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060005b60208110801561031657507f000000000000000000000000000000000000000000000000000000000000000081602081106102ed57fe5b1a60f81b7fff000000000000000000000000000000000000000000000000000000000000001615155b15610323576001016102b6565b60008167ffffffffffffffff8111801561033c57600080fd5b506040519080825280601f01601f191660200182016040528015610367576020820181803683370190505b50905060005b828110156103d0577f000000000000000000000000000000000000000000000000000000000000000081602081106103a157fe5b1a60f81b8282815181106103b157fe5b60200101906001600160f81b031916908160001a90535060010161036d565b5091505090565b60606000806000806000876001600160a01b03166399fbab88886040518263ffffffff1660e01b815260040161040d9190611330565b6101806040518083038186803b15801561042657600080fd5b505afa15801561043a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061045e91906111dc565b5050505050965096509650965096505050600061051c896001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156104ad57600080fd5b505afa1580156104c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e59190610ff4565b6040518060600160405280896001600160a01b03168152602001886001600160a01b031681526020018762ffffff168152506108e7565b9050600061052d87876100a36109e3565b90506000811561053d578761053f565b865b90506000821561054f5787610551565b885b90506000846001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b15801561058e57600080fd5b505afa1580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c69190611133565b5050505050915050732e9d45bb7b30549f5216813ada9a6b7982c5b3ed63c49917d7604051806101c001604052808f8152602001866001600160a01b03168152602001856001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316876001600160a01b03161461065f5761065a876109e7565b610667565b6106676102b1565b81526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b0316146106b3576106ae866109e7565b6106bb565b6106bb6102b1565b8152602001866001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156106f957600080fd5b505afa15801561070d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073191906111c2565b60ff168152602001856001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561077257600080fd5b505afa158015610786573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107aa91906111c2565b60ff16815260200187151581526020018a60020b81526020018960020b81526020018460020b8152602001886001600160a01b031663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561080e57600080fd5b505afa158015610822573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108469190611082565b60020b81526020018b62ffffff168152602001886001600160a01b03168152506040518263ffffffff1660e01b8152600401610882919061134c565b60006040518083038186803b15801561089a57600080fd5b505af41580156108ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108d6919081019061109c565b9d9c50505050505050505050505050565b600081602001516001600160a01b031682600001516001600160a01b03161061090f57600080fd5b50805160208083015160409384015184516001600160a01b0394851681850152939091168385015262ffffff166060808401919091528351808403820181526080840185528051908301207fff0000000000000000000000000000000000000000000000000000000000000060a085015294901b6bffffffffffffffffffffffff191660a183015260b58201939093527fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b5460d5808301919091528251808303909101815260f5909101909152805191012090565b4690565b60606000610a15837f95d89b4100000000000000000000000000000000000000000000000000000000610a3a565b9050805160001415610a3257610a2a83610c8f565b915050610a35565b90505b919050565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000085161781529151815160609360009384936001600160a01b03891693919290918291908083835b60208310610ad35780518252601f199092019160209182019101610ab4565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114610b33576040519150601f19603f3d011682016040523d82523d6000602084013e610b38565b606091505b5091509150811580610b4957508051155b15610b67576040518060200160405280600081525092505050610287565b805160201415610b9f576000818060200190516020811015610b8857600080fd5b50519050610b9581610c9c565b9350505050610287565b604081511115610c7757808060200190516020811015610bbe57600080fd5b8101908080516040519392919084640100000000821115610bde57600080fd5b908301906020820185811115610bf357600080fd5b8251640100000000811182820188101715610c0d57600080fd5b82525081516020918201929091019080838360005b83811015610c3a578181015183820152602001610c22565b50505050905090810190601f168015610c675780820380516001836020036101000a031916815260200191505b5060405250505092505050610287565b50506040805160208101909152600081529392505050565b6060610a32826006610ddc565b604080516020808252818301909252606091600091906020820181803683370190505090506000805b6020811015610d3e576000858260208110610cdc57fe5b1a60f81b90507fff00000000000000000000000000000000000000000000000000000000000000811615610d355780848481518110610d1757fe5b60200101906001600160f81b031916908160001a9053506001909201915b50600101610cc5565b5060008167ffffffffffffffff81118015610d5857600080fd5b506040519080825280601f01601f191660200182016040528015610d83576020820181803683370190505b50905060005b82811015610dd357838181518110610d9d57fe5b602001015160f81c60f81b828281518110610db457fe5b60200101906001600160f81b031916908160001a905350600101610d89565b50949350505050565b606060028206158015610def5750600082115b8015610dfc575060288211155b610e6757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f41646472657373537472696e675574696c3a20494e56414c49445f4c454e0000604482015290519081900360640190fd5b60008267ffffffffffffffff81118015610e8057600080fd5b506040519080825280601f01601f191660200182016040528015610eab576020820181803683370190505b5090506001600160a01b03841660005b60028504811015610f4f57600860138290030282901c600f600482901c1660f082168203610ee882610f59565b868560020281518110610ef757fe5b60200101906001600160f81b031916908160001a905350610f1781610f59565b868560020260010181518110610f2957fe5b60200101906001600160f81b031916908160001a9053505060019092019150610ebb9050565b5090949350505050565b6000600a8260ff161015610f7457506030810160f81b610a35565b506037810160f81b610a35565b8051610a358161149a565b8051600281900b8114610a3557600080fd5b80516fffffffffffffffffffffffffffffffff81168114610a3557600080fd5b805161ffff81168114610a3557600080fd5b805162ffffff81168114610a3557600080fd5b805160ff81168114610a3557600080fd5b600060208284031215611005578081fd5b81516110108161149a565b9392505050565b60008060006060848603121561102b578182fd5b83356110368161149a565b925060208401356110468161149a565b929592945050506040919091013590565b60008060408385031215611069578182fd5b82356110748161149a565b946020939093013593505050565b600060208284031215611093578081fd5b61101082610f8c565b6000602082840312156110ad578081fd5b815167ffffffffffffffff808211156110c4578283fd5b818401915084601f8301126110d7578283fd5b8151818111156110e357fe5b604051601f8201601f19168101602001838111828210171561110157fe5b604052818152838201602001871015611118578485fd5b61112982602083016020870161146a565b9695505050505050565b600080600080600080600060e0888a03121561114d578283fd5b87516111588161149a565b965061116660208901610f8c565b955061117460408901610fbe565b945061118260608901610fbe565b935061119060808901610fbe565b925061119e60a08901610fe3565b915060c088015180151581146111b2578182fd5b8091505092959891949750929550565b6000602082840312156111d3578081fd5b61101082610fe3565b6000806000806000806000806000806000806101808d8f0312156111fe578485fd5b8c516bffffffffffffffffffffffff81168114611219578586fd5b9b5061122760208e01610f81565b9a5061123560408e01610f81565b995061124360608e01610f81565b985061125160808e01610fd0565b975061125f60a08e01610f8c565b965061126d60c08e01610f8c565b955061127b60e08e01610f9e565b94506101008d015193506101208d0151925061129a6101408e01610f9e565b91506112a96101608e01610f9e565b90509295989b509295989b509295989b565b6001600160a01b03169052565b15159052565b60020b9052565b600081518084526112ed81602086016020860161146a565b601f01601f19169290920160200192915050565b62ffffff169052565b60ff169052565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b60006020825261101060208301846112d5565b60006020825282516020830152602083015161136b60408401826112bb565b50604083015161137e60608401826112bb565b5060608301516101c080608085015261139b6101e08501836112d5565b91506080850151601f198584030160a08601526113b883826112d5565b92505060a08501516113cd60c086018261130a565b5060c08501516113e060e086018261130a565b5060e08501516101006113f5818701836112c8565b8601519050610120611409868201836112ce565b860151905061014061141d868201836112ce565b8601519050610160611431868201836112ce565b8601519050610180611445868201836112ce565b86015190506101a061145986820183611301565b8601519050610f4f858301826112bb565b60005b8381101561148557818101518382015260200161146d565b83811115611494576000848401525b50505050565b6001600160a01b03811681146114af57600080fd5b5056fea164736f6c6343000706000a0000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad734554480000000000000000000000000000000000000000000000000000000000", - "nonce": "0x9", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02", - "transactionType": "CREATE", - "contractName": "TransparentUpgradeableProxy", - "contractAddress": "0x6f84dae9c064ff453e5c8af51efb819f8f610225", - "function": null, - "arguments": [ - "0x2Bb4E3aF3f07353A3e3c91126BD30654Abf03369", - "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52", - "0x" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "gas": "0xa54ac", - "value": "0x0", - "input": "0x60a0604052610a47803803806100148161026b565b92833981016060828203126102675761002c82610290565b61003860208401610290565b604084015190936001600160401b03821161026757019180601f8401121561026757825161006d610068826102a4565b61026b565b9381855260208501926020838301011161026757815f926020809301855e85010152813b15610246577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a282511561022e575f809161012d945190845af43d15610226573d9161011e610068846102a4565b9283523d5f602085013e6102bf565b505b604051906104198083016001600160401b0381118482101761021257602092849261060e84396001600160a01b031681520301905ff080156102075760018060a01b0316806080525f80516020610a27833981519152547f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6040805160018060a01b0384168152846020820152a181156101f4576001600160a01b031916175f80516020610a27833981519152556040516102f0908161031e82396080518160070152f35b633173bdd160e11b5f525f60045260245ffd5b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b6060916102bf565b505050341561012f5763b398979f60e01b5f5260045ffd5b50634c9c8ce360e01b5f9081526001600160a01b0391909116600452602490fd5b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761021257604052565b51906001600160a01b038216820361026757565b6001600160401b03811161021257601f01601f191660200190565b906102e357508051156102d457805190602001fd5b63d6bda27560e01b5f5260045ffd5b81511580610314575b6102f4575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b156102ec56fe6080604052337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031603610066575f356001600160e01b03191663278f794360e11b1461005c576334ad5dbb60e21b5f5260045ffd5b61006461010a565b005b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc545f9081906001600160a01b0316368280378136915af43d5f803e156100ab573d5ff35b3d5ffd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff8111838210176100e957604052565b6100af565b67ffffffffffffffff81116100e957601f01601f191660200190565b36600411610193576040366003190112610193576004356001600160a01b03811690819003610193576024359067ffffffffffffffff8211610193573660238301121561019357816004013590610168610163836100ee565b6100c3565b918083523660248286010111610193576020815f92602461019197018387013784010152610197565b565b5f80fd5b90813b1561022b577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a2805115610213576102109161024c565b50565b50503461021c57565b63b398979f60e01b5f5260045ffd5b50634c9c8ce360e01b5f9081526001600160a01b0391909116600452602490fd5b5f8061027e93602081519101845af43d15610281573d9161026f610163846100ee565b9283523d5f602085013e610285565b90565b6060915b906102a9575080511561029a57805190602001fd5b63d6bda27560e01b5f5260045ffd5b815115806102da575b6102ba575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b156102b256fea164736f6c634300081a000a60803460b857601f61041938819003918201601f19168301916001600160401b0383118484101760bc5780849260209460405283398101031260b857516001600160a01b0381169081900360b857801560a5575f80546001600160a01b031981168317825560405192916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a361034890816100d18239f35b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f803560e01c8063715018a6146102785780638da5cb5b146102515780639623609d1461012e578063ad3cb1cc146100e15763f2fde38b14610051575f80fd5b346100de5760203660031901126100de576004356001600160a01b038116908190036100da5761007f610315565b80156100c65781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b631e4fbdf760e01b82526004829052602482fd5b5080fd5b80fd5b50346100de57806003193601126100de575061012a6040516101046040826102cf565b60058152640352e302e360dc1b60208201526040519182916020835260208301906102f1565b0390f35b506060366003190112610239576004356001600160a01b03811690819003610239576024356001600160a01b038116908190036102395760443567ffffffffffffffff8111610239573660238201121561023957806004013567ffffffffffffffff811161023d57604051916101ae601f8301601f1916602001846102cf565b818352366024838301011161023957815f9260246020930183860137830101526101d6610315565b823b156102395761020c925f9260405180958194829363278f794360e11b845260048401526040602484015260448301906102f1565b039134905af1801561022e57610220575080f35b61022c91505f906102cf565b005b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b34610239575f366003190112610239575f546040516001600160a01b039091168152602090f35b34610239575f36600319011261023957610290610315565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b90601f8019910116810190811067ffffffffffffffff82111761023d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b5f546001600160a01b0316330361032857565b63118cdaa760e01b5f523360045260245ffdfea164736f6c634300081a000ab53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61030000000000000000000000002bb4e3af3f07353a3e3c91126bd30654abf033690000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a5200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000", - "nonce": "0xa", - "chainId": "0x1237" - }, - "additionalContracts": [ - { - "transactionType": "CREATE", - "contractName": "ProxyAdmin", - "address": "0x89473d1ff90a8cf9a81388e1c6e5ad393ff0e894", - "initCode": "0x60803460b857601f61041938819003918201601f19168301916001600160401b0383118484101760bc5780849260209460405283398101031260b857516001600160a01b0381169081900360b857801560a5575f80546001600160a01b031981168317825560405192916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a361034890816100d18239f35b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f803560e01c8063715018a6146102785780638da5cb5b146102515780639623609d1461012e578063ad3cb1cc146100e15763f2fde38b14610051575f80fd5b346100de5760203660031901126100de576004356001600160a01b038116908190036100da5761007f610315565b80156100c65781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b631e4fbdf760e01b82526004829052602482fd5b5080fd5b80fd5b50346100de57806003193601126100de575061012a6040516101046040826102cf565b60058152640352e302e360dc1b60208201526040519182916020835260208301906102f1565b0390f35b506060366003190112610239576004356001600160a01b03811690819003610239576024356001600160a01b038116908190036102395760443567ffffffffffffffff8111610239573660238201121561023957806004013567ffffffffffffffff811161023d57604051916101ae601f8301601f1916602001846102cf565b818352366024838301011161023957815f9260246020930183860137830101526101d6610315565b823b156102395761020c925f9260405180958194829363278f794360e11b845260048401526040602484015260448301906102f1565b039134905af1801561022e57610220575080f35b61022c91505f906102cf565b005b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b34610239575f366003190112610239575f546040516001600160a01b039091168152602090f35b34610239575f36600319011261023957610290610315565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b90601f8019910116810190811067ffffffffffffffff82111761023d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b5f546001600160a01b0316330361032857565b63118cdaa760e01b5f523360045260245ffdfea164736f6c634300081a000a0000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a52" - } - ], - "isFixedGasLimit": false - }, - { - "hash": "0x9a8d07e70166be68c325939e2cece936f3ce5b16c580f49291f844d7cd718d4e", - "transactionType": "CREATE", - "contractName": "NonfungiblePositionManager", - "contractAddress": "0x73991a25c818bf1f1128deaab1492d45638de0d3", - "function": null, - "arguments": [ - "0x1f7d7550B1b028f7571E69A784071F0205FD2EfA", - "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73", - "0x6F84dAE9c064ff453E5C8af51EfB819f8f610225" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "gas": "0x6c9130", - "value": "0x0", - "input": "0x610120604052600d80546001600160b01b0319166001176001600160b01b0316600160b01b1790553480156200003457600080fd5b50604051620062e9380380620062e98339810160408190526200005791620002db565b82826040518060400160405280601b81526020017f556e697377617020563320506f736974696f6e73204e46542d563100000000008152506040518060400160405280600a815260200169554e492d56332d504f5360b01b815250604051806040016040528060018152602001603160f81b8152508282620000e66301ffc9a760e01b6200018d60201b60201c565b8151620000fb90600690602085019062000212565b5080516200011190600790602084019062000212565b50620001246380ac58cd60e01b6200018d565b62000136635b5e139f60e01b6200018d565b6200014863780e9d6360e01b6200018d565b50508251602093840120608052805192019190912060a052506001600160601b0319606092831b811660c05290821b811660e05291901b166101005250620003249050565b6001600160e01b03198082161415620001ed576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826200024a576000855562000295565b82601f106200026557805160ff191683800117855562000295565b8280016001018555821562000295579182015b828111156200029557825182559160200191906001019062000278565b50620002a3929150620002a7565b5090565b5b80821115620002a35760008155600101620002a8565b80516001600160a01b0381168114620002d657600080fd5b919050565b600080600060608486031215620002f0578283fd5b620002fb84620002be565b92506200030b60208501620002be565b91506200031b60408501620002be565b90509250925092565b60805160a05160c05160601c60e05160601c6101005160601c615f40620003a960003980612a835250806102995280611718528061180e52806118965280613e5d5280613ea35280613f17525080610aa75280610dde5280610ea55280612a1d5280612b235280612e4452806136e15250806114ff5250806114de5250615f406000f3fe6080604052600436106102895760003560e01c80636352211e11610153578063ac9650d8116100cb578063d34879971161007f578063e985e9c511610064578063e985e9c5146106f5578063f3995c6714610715578063fc6f7865146107285761030d565b8063d3487997146106c2578063df2ab5bb146106e25761030d565b8063c2e3140a116100b0578063c2e3140a1461067a578063c45a01551461068d578063c87b56dd146106a25761030d565b8063ac9650d81461063a578063b88d4fde1461065a5761030d565b8063883164561161012257806399fbab881161010757806399fbab88146105cf578063a22cb46514610607578063a4a78f0c146106275761030d565b8063883164561461059757806395d89b41146105ba5761030d565b80636352211e1461052f5780636c0360eb1461054f57806370a08231146105645780637ac2ff7b146105845761030d565b806323b872dd1161020157806342966c68116101b557806349404b7c1161019a57806349404b7c146104e75780634aa4a4fc146104fa5780634f6ccce71461050f5761030d565b806342966c68146104c15780634659a494146104d45761030d565b806330adf81f116101e657806330adf81f146104775780633644e5151461048c57806342842e0e146104a15761030d565b806323b872dd146104375780632f745c59146104575761030d565b80630c49ccbe1161025857806313ead5621161023d57806313ead562146103e057806318160ddd146103f3578063219f5d17146104155761030d565b80630c49ccbe146103b757806312210e8a146103d85761030d565b806301ffc9a71461031257806306fdde0314610348578063081812fc1461036a578063095ea7b3146103975761030d565b3661030d57336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461030b576040805162461bcd60e51b815260206004820152600960248201527f4e6f742057455448390000000000000000000000000000000000000000000000604482015290519081900360640190fd5b005b600080fd5b34801561031e57600080fd5b5061033261032d3660046153a6565b61073b565b60405161033f919061591e565b60405180910390f35b34801561035457600080fd5b5061035d610776565b60405161033f9190615971565b34801561037657600080fd5b5061038a6103853660046156b8565b61080c565b60405161033f91906157e2565b3480156103a357600080fd5b5061030b6103b2366004615270565b610868565b6103ca6103c5366004615483565b61093e565b60405161033f929190615b42565b61030b610daa565b61038a6103ee366004615103565b610dbc565b3480156103ff57600080fd5b506104086110c9565b60405161033f9190615929565b610428610423366004615494565b6110da565b60405161033f93929190615afd565b34801561044357600080fd5b5061030b61045236600461515c565b611413565b34801561046357600080fd5b50610408610472366004615270565b61146a565b34801561048357600080fd5b50610408611495565b34801561049857600080fd5b506104086114b9565b3480156104ad57600080fd5b5061030b6104bc36600461515c565b611577565b61030b6104cf3660046156b8565b611592565b61030b6104e23660046152dc565b611661565b61030b6104f53660046156d0565b611714565b34801561050657600080fd5b5061038a611894565b34801561051b57600080fd5b5061040861052a3660046156b8565b6118b8565b34801561053b57600080fd5b5061038a61054a3660046156b8565b6118ce565b34801561055b57600080fd5b5061035d6118f6565b34801561057057600080fd5b5061040861057f3660046150af565b6118fb565b61030b6105923660046152dc565b611963565b6105aa6105a5366004615550565b611e0f565b60405161033f9493929190615b1e565b3480156105c657600080fd5b5061035d612370565b3480156105db57600080fd5b506105ef6105ea3660046156b8565b6123d1565b60405161033f9c9b9a99989796959493929190615b50565b34801561061357600080fd5b5061030b610622366004615243565b612600565b61030b6106353660046152dc565b612723565b61064d610648366004615337565b6127d5565b60405161033f91906158a0565b34801561066657600080fd5b5061030b61067536600461519c565b612915565b61030b6106883660046152dc565b612973565b34801561069957600080fd5b5061038a612a1b565b3480156106ae57600080fd5b5061035d6106bd3660046156b8565b612a3f565b3480156106ce57600080fd5b5061030b6106dd366004615717565b612b0e565b61030b6106f036600461529b565b612b8c565b34801561070157600080fd5b506103326107103660046150cb565b612c6f565b61030b6107233660046152dc565b612c9d565b6103ca61073636600461546c565b612d28565b7fffffffff00000000000000000000000000000000000000000000000000000000811660009081526020819052604090205460ff165b919050565b60068054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156108025780601f106107d757610100808354040283529160200191610802565b820191906000526020600020905b8154815290600101906020018083116107e557829003601f168201915b5050505050905090565b600061081782613246565b61083c5760405162461bcd60e51b8152600401610833906159bb565b60405180910390fd5b506000908152600c60205260409020546c0100000000000000000000000090046001600160a01b031690565b6000610873826118ce565b9050806001600160a01b0316836001600160a01b031614156108c65760405162461bcd60e51b8152600401808060200182810382526021815260200180615ee26021913960400191505060405180910390fd5b806001600160a01b03166108d8613253565b6001600160a01b031614806108f457506108f481610710613253565b61092f5760405162461bcd60e51b8152600401808060200182810382526038815260200180615e0c6038913960400191505060405180910390fd5b6109398383613257565b505050565b600080823561094d33826132db565b6109695760405162461bcd60e51b815260040161083390615984565b836080013580610977613377565b11156109ca576040805162461bcd60e51b815260206004820152601360248201527f5472616e73616374696f6e20746f6f206f6c6400000000000000000000000000604482015290519081900360640190fd5b60006109dc6040870160208801615562565b6001600160801b0316116109ef57600080fd5b84356000908152600c602090815260409182902060018101549092600160801b9091046001600160801b031691610a2a918901908901615562565b6001600160801b0316816001600160801b03161015610a4857600080fd5b60018281015469ffffffffffffffffffff166000908152600b60209081526040808320815160608101835281546001600160a01b039081168252919095015490811692850192909252600160a01b90910462ffffff1690830152610acc7f00000000000000000000000000000000000000000000000000000000000000008361337b565b60018501549091506001600160a01b0382169063a34123a7906a01000000000000000000008104600290810b91600160681b9004900b610b1260408e0160208f01615562565b6040518463ffffffff1660e01b8152600401610b309392919061594b565b6040805180830381600087803b158015610b4957600080fd5b505af1158015610b5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b8191906156f4565b909850965060408901358810801590610b9e575088606001358710155b610bba5760405162461bcd60e51b815260040161083390615a18565b6001840154600090610bea9030906a01000000000000000000008104600290810b91600160681b9004900b613477565b9050600080836001600160a01b031663514ea4bf846040518263ffffffff1660e01b8152600401610c1b9190615929565b60a06040518083038186803b158015610c3357600080fd5b505afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b91906155ac565b50509250925050610c9087600201548303876001600160801b0316600160801b6134d1565b6004880180546fffffffffffffffffffffffffffffffff198116928e016001600160801b039182160181169290921790556003880154610cda91908303908816600160801b6134d1565b6004880180546001600160801b03808216938e01600160801b9283900482160116029190911790556002870182905560038701819055610d2060408d0160208e01615562565b86038760010160106101000a8154816001600160801b0302191690836001600160801b031602179055508b600001357f26f6a048ee9138f2c0ce266f322cb99228e8d619ae2bff30c67f8dcf9d2377b48d6020016020810190610d839190615562565b8d8d604051610d9493929190615afd565b60405180910390a2505050505050505050915091565b4715610dba57610dba3347613580565b565b6000836001600160a01b0316856001600160a01b031610610ddc57600080fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631698ee828686866040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018262ffffff168152602001935050505060206040518083038186803b158015610e6757600080fd5b505afa158015610e7b573d6000803e3d6000fd5b505050506040513d6020811015610e9157600080fd5b505190506001600160a01b038116610fe0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a16712958686866040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018262ffffff1681526020019350505050602060405180830381600087803b158015610f3057600080fd5b505af1158015610f44573d6000803e3d6000fd5b505050506040513d6020811015610f5a57600080fd5b5051604080517ff637731d0000000000000000000000000000000000000000000000000000000081526001600160a01b03858116600483015291519293509083169163f637731d9160248082019260009290919082900301818387803b158015610fc357600080fd5b505af1158015610fd7573d6000803e3d6000fd5b505050506110c1565b6000816001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b15801561101b57600080fd5b505afa15801561102f573d6000803e3d6000fd5b505050506040513d60e081101561104557600080fd5b505190506001600160a01b0381166110bf57816001600160a01b031663f637731d846040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156110a657600080fd5b505af11580156110ba573d6000803e3d6000fd5b505050505b505b949350505050565b60006110d56002613689565b905090565b60008060008360a00135806110ed613377565b1115611140576040805162461bcd60e51b815260206004820152601360248201527f5472616e73616374696f6e20746f6f206f6c6400000000000000000000000000604482015290519081900360640190fd5b84356000908152600c6020908152604080832060018082015469ffffffffffffffffffff81168652600b855283862084516060808201875282546001600160a01b039081168352929094015480831682890190815262ffffff600160a01b9092048216838901908152885161014081018a528451861681529151909416818a01529251168287015230828501526a01000000000000000000008304600290810b810b608080850191909152600160681b909404810b900b60a0830152958c013560c0820152938b013560e0850152908a0135610100840152890135610120830152929061122c90613694565b6001870154939a50919850965091506000906112669030906a01000000000000000000008104600290810b91600160681b9004900b613477565b9050600080836001600160a01b031663514ea4bf846040518263ffffffff1660e01b81526004016112979190615929565b60a06040518083038186803b1580156112af57600080fd5b505afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e791906155ac565b50509250925050611323866002015483038760010160109054906101000a90046001600160801b03166001600160801b0316600160801b6134d1565b6004870180546001600160801b0380821690930183166fffffffffffffffffffffffffffffffff19909116179055600387015460018801546113739291840391600160801b9182900416906134d1565b6004870180546001600160801b03600160801b80830482169094018116840291811691909117909155600288018490556003880183905560018801805483810483168e018316909302929091169190911790556040518b35907f3067048beee31b25b2f1681f88dac838c8bba36af25bfb2b7cf7473a5847e35f906113fd908d908d908d90615afd565b60405180910390a2505050505050509193909250565b61142461141e613253565b826132db565b61145f5760405162461bcd60e51b8152600401808060200182810382526031815260200180615f036031913960400191505060405180910390fd5b6109398383836138cf565b6001600160a01b038216600090815260016020526040812061148c9083613a1b565b90505b92915050565b7f49ecf333e5b8c95c40fdafc95c1ad136e8914a8fb55e9dc8bb01eaa83a2df9ad81565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611526613a27565b3060405160200180868152602001858152602001848152602001838152602001826001600160a01b031681526020019550505050505060405160208183030381529060405280519060200120905090565b61093983838360405180602001604052806000815250612915565b8061159d33826132db565b6115b95760405162461bcd60e51b815260040161083390615984565b6000828152600c602052604090206001810154600160801b90046001600160801b03161580156115f4575060048101546001600160801b0316155b801561161257506004810154600160801b90046001600160801b0316155b61162e5760405162461bcd60e51b815260040161083390615a86565b6000838152600c602052604081208181556001810182905560028101829055600381018290556004015561093983613a2b565b604080517f8fcbaf0c00000000000000000000000000000000000000000000000000000000815233600482015230602482015260448101879052606481018690526001608482015260ff851660a482015260c4810184905260e4810183905290516001600160a01b03881691638fcbaf0c9161010480830192600092919082900301818387803b1580156116f457600080fd5b505af1158015611708573d6000803e3d6000fd5b50505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561178357600080fd5b505afa158015611797573d6000803e3d6000fd5b505050506040513d60208110156117ad57600080fd5b5051905082811015611806576040805162461bcd60e51b815260206004820152601260248201527f496e73756666696369656e742057455448390000000000000000000000000000604482015290519081900360640190fd5b8015610939577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632e1a7d4d826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561187257600080fd5b505af1158015611886573d6000803e3d6000fd5b505050506109398282613580565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000806118c6600284613af8565b509392505050565b600061148f82604051806060016040528060298152602001615e6e6029913960029190613b16565b606090565b60006001600160a01b0382166119425760405162461bcd60e51b815260040180806020018281038252602a815260200180615e44602a913960400191505060405180910390fd5b6001600160a01b038216600090815260016020526040902061148f90613689565b8361196c613377565b11156119bf576040805162461bcd60e51b815260206004820152600e60248201527f5065726d69742065787069726564000000000000000000000000000000000000604482015290519081900360640190fd5b60006119c96114b9565b7f49ecf333e5b8c95c40fdafc95c1ad136e8914a8fb55e9dc8bb01eaa83a2df9ad88886119f581613b23565b604080516020808201969096526001600160a01b03909416848201526060840192909252608083015260a08083018a90528151808403909101815260c0830182528051908401207f190100000000000000000000000000000000000000000000000000000000000060e084015260e283019490945261010280830194909452805180830390940184526101229091019052815191012090506000611a98876118ce565b9050806001600160a01b0316886001600160a01b03161415611aeb5760405162461bcd60e51b8152600401808060200182810382526027815260200180615d6f6027913960400191505060405180910390fd5b611af481613b62565b15611ccf576040805160208082018790528183018690527fff0000000000000000000000000000000000000000000000000000000000000060f889901b16606083015282516041818403018152606183018085527f1626ba7e0000000000000000000000000000000000000000000000000000000090526065830186815260858401948552815160a585015281516001600160a01b03871695631626ba7e958995919260c59091019185019080838360005b83811015611bbe578181015183820152602001611ba6565b50505050905090810190601f168015611beb5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b158015611c0957600080fd5b505afa158015611c1d573d6000803e3d6000fd5b505050506040513d6020811015611c3357600080fd5b50517fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014611cca576040805162461bcd60e51b815260206004820152600c60248201527f556e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b611dfb565b600060018387878760405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015611d2b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611d93576040805162461bcd60e51b815260206004820152601160248201527f496e76616c6964207369676e6174757265000000000000000000000000000000604482015290519081900360640190fd5b816001600160a01b0316816001600160a01b031614611df9576040805162461bcd60e51b815260206004820152600c60248201527f556e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b505b611e058888613257565b5050505050505050565b60008060008084610140013580611e24613377565b1115611e77576040805162461bcd60e51b815260206004820152601360248201527f5472616e73616374696f6e20746f6f206f6c6400000000000000000000000000604482015290519081900360640190fd5b604080516101408101909152600090611f439080611e9860208b018b6150af565b6001600160a01b03168152602001896020016020810190611eb991906150af565b6001600160a01b03168152602001611ed760608b0160408c0161569e565b62ffffff168152306020820152604001611ef760808b0160608c016153e6565b60020b8152602001611f0f60a08b0160808c016153e6565b60020b81526020018960a0013581526020018960c0013581526020018960e001358152602001896101000135815250613694565b92975090955093509050611fb7611f6261014089016101208a016150af565b600d80547fffffffffffffffffffff000000000000000000000000000000000000000000008116600175ffffffffffffffffffffffffffffffffffffffffffff92831690810190921617909155975087613b68565b6000611fe230611fcd60808b0160608c016153e6565b611fdd60a08c0160808d016153e6565b613477565b9050600080836001600160a01b031663514ea4bf846040518263ffffffff1660e01b81526004016120139190615929565b60a06040518083038186803b15801561202b57600080fd5b505afa15801561203f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206391906155ac565b5050925092505060006120dc8560405180606001604052808e600001602081019061208e91906150af565b6001600160a01b031681526020018e60200160208101906120af91906150af565b6001600160a01b031681526020018e60400160208101906120d0919061569e565b62ffffff169052613c96565b905060405180610140016040528060006bffffffffffffffffffffffff16815260200160006001600160a01b031681526020018269ffffffffffffffffffff1681526020018c606001602081019061213491906153e6565b60020b815260200161214c60a08e0160808f016153e6565b60020b81526020018a6001600160801b0316815260200184815260200183815260200160006001600160801b0316815260200160006001600160801b0316815250600c60008c815260200190815260200160002060008201518160000160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550602082015181600001600c6101000a8154816001600160a01b0302191690836001600160a01b0316021790555060408201518160010160006101000a81548169ffffffffffffffffffff021916908369ffffffffffffffffffff160217905550606082015181600101600a6101000a81548162ffffff021916908360020b62ffffff160217905550608082015181600101600d6101000a81548162ffffff021916908360020b62ffffff16021790555060a08201518160010160106101000a8154816001600160801b0302191690836001600160801b0316021790555060c0820151816002015560e082015181600301556101008201518160040160006101000a8154816001600160801b0302191690836001600160801b031602179055506101208201518160040160106101000a8154816001600160801b0302191690836001600160801b03160217905550905050897f3067048beee31b25b2f1681f88dac838c8bba36af25bfb2b7cf7473a5847e35f8a8a8a60405161235b93929190615afd565b60405180910390a25050505050509193509193565b60078054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156108025780601f106107d757610100808354040283529160200191610802565b6000818152600c6020908152604080832081516101408101835281546bffffffffffffffffffffffff811682526001600160a01b036c010000000000000000000000009091041693810193909352600181015469ffffffffffffffffffff81169284018390526a01000000000000000000008104600290810b810b810b6060860152600160681b8204810b810b810b60808601526001600160801b03600160801b92839004811660a08701529083015460c0860152600383015460e0860152600490920154808316610100860152041661012083015282918291829182918291829182918291829182918291906124da5760405162461bcd60e51b815260040161083390615a4f565b6000600b6000836040015169ffffffffffffffffffff1669ffffffffffffffffffff1681526020019081526020016000206040518060600160405290816000820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020016001820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020016001820160149054906101000a900462ffffff1662ffffff1662ffffff1681525050905081600001518260200151826000015183602001518460400151866060015187608001518860a001518960c001518a60e001518b61010001518c61012001519d509d509d509d509d509d509d509d509d509d509d509d50505091939597999b5091939597999b565b612608613253565b6001600160a01b0316826001600160a01b0316141561266e576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b806005600061267b613253565b6001600160a01b0390811682526020808301939093526040918201600090812091871680825291909352912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016921515929092179091556126dd613253565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b604080517fdd62ed3e0000000000000000000000000000000000000000000000000000000081523360048201523060248201529051600019916001600160a01b0389169163dd62ed3e91604480820192602092909190829003018186803b15801561278d57600080fd5b505afa1580156127a1573d6000803e3d6000fd5b505050506040513d60208110156127b757600080fd5b505110156127cd576127cd868686868686611661565b505050505050565b60608167ffffffffffffffff811180156127ee57600080fd5b5060405190808252806020026020018201604052801561282257816020015b606081526020019060019003908161280d5790505b50905060005b8281101561290e576000803086868581811061284057fe5b90506020028101906128529190615bef565b6040516128609291906157d2565b600060405180830381855af49150503d806000811461289b576040519150601f19603f3d011682016040523d82523d6000602084013e6128a0565b606091505b5091509150816128ec576044815110156128b957600080fd5b600481019050808060200190518101906128d39190615402565b60405162461bcd60e51b81526004016108339190615971565b808484815181106128f957fe5b60209081029190910101525050600101612828565b5092915050565b612926612920613253565b836132db565b6129615760405162461bcd60e51b8152600401808060200182810382526031815260200180615f036031913960400191505060405180910390fd5b61296d84848484613de6565b50505050565b604080517fdd62ed3e000000000000000000000000000000000000000000000000000000008152336004820152306024820152905186916001600160a01b0389169163dd62ed3e91604480820192602092909190829003018186803b1580156129db57600080fd5b505afa1580156129ef573d6000803e3d6000fd5b505050506040513d6020811015612a0557600080fd5b505110156127cd576127cd868686868686612c9d565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060612a4a82613246565b612a5357600080fd5b6040517fe9dc63750000000000000000000000000000000000000000000000000000000081526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e9dc637590612aba9030908690600401615932565b60006040518083038186803b158015612ad257600080fd5b505afa158015612ae6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261148f9190810190615402565b6000612b1c828401846154a5565b9050612b4c7f00000000000000000000000000000000000000000000000000000000000000008260000151613e38565b508415612b67578051516020820151612b6791903388613e5b565b8315612b8557612b8581600001516020015182602001513387613e5b565b5050505050565b6000836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015612bdb57600080fd5b505afa158015612bef573d6000803e3d6000fd5b505050506040513d6020811015612c0557600080fd5b5051905082811015612c5e576040805162461bcd60e51b815260206004820152601260248201527f496e73756666696369656e7420746f6b656e0000000000000000000000000000604482015290519081900360640190fd5b801561296d5761296d848383613feb565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b604080517fd505accf000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018790526064810186905260ff8516608482015260a4810184905260c4810183905290516001600160a01b0388169163d505accf9160e480830192600092919082900301818387803b1580156116f457600080fd5b6000808235612d3733826132db565b612d535760405162461bcd60e51b815260040161083390615984565b6000612d656060860160408701615562565b6001600160801b03161180612d9257506000612d876080860160608701615562565b6001600160801b0316115b612d9b57600080fd5b600080612dae60408701602088016150af565b6001600160a01b031614612dd157612dcc60408601602087016150af565b612dd3565b305b85356000908152600c6020908152604080832060018082015469ffffffffffffffffffff168552600b8452828520835160608101855281546001600160a01b039081168252919092015490811694820194909452600160a01b90930462ffffff169183019190915292935090612e697f00000000000000000000000000000000000000000000000000000000000000008361337b565b600484015460018501549192506001600160801b0380821692600160801b92839004821692900416156130865760018501546040517fa34123a70000000000000000000000000000000000000000000000000000000081526001600160a01b0385169163a34123a791612f00916a01000000000000000000008104600290810b92600160681b909204900b9060009060040161594b565b6040805180830381600087803b158015612f1957600080fd5b505af1158015612f2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f5191906156f4565b5050600185015460009081906001600160a01b0386169063514ea4bf90612f969030906a01000000000000000000008104600290810b91600160681b9004900b613477565b6040518263ffffffff1660e01b8152600401612fb29190615929565b60a06040518083038186803b158015612fca57600080fd5b505afa158015612fde573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061300291906155ac565b5050925092505061303e876002015483038860010160109054906101000a90046001600160801b03166001600160801b0316600160801b6134d1565b84019350613077876003015482038860010160109054906101000a90046001600160801b03166001600160801b0316600160801b6134d1565b60028801929092556003870155015b6000806001600160801b0384166130a360608e0160408f01615562565b6001600160801b0316116130c6576130c160608d0160408e01615562565b6130c8565b835b836001600160801b03168d60600160208101906130e59190615562565b6001600160801b0316116131085761310360808e0160608f01615562565b61310a565b835b60018901546040517f4f1eb3d80000000000000000000000000000000000000000000000000000000081529294509092506001600160a01b03871691634f1eb3d89161317d918c916a01000000000000000000008104600290810b92600160681b909204900b9088908890600401615839565b6040805180830381600087803b15801561319657600080fd5b505af11580156131aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131ce919061557e565b6004890180546fffffffffffffffffffffffffffffffff196001600160801b03918216600160801b878a0384160217168689038216179091556040519281169d50169a508c35907f40d0efd1a53d60ecbf40971b9daf7dc90178c3aadc7aab1765632738fa8b8f0190610d94908b9086908690615876565b600061148f60028361417b565b3390565b6000818152600c6020526040902080546bffffffffffffffffffffffff166c010000000000000000000000006001600160a01b0385169081029190911790915581906132a2826118ce565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006132e682613246565b6133215760405162461bcd60e51b815260040180806020018281038252602c815260200180615de0602c913960400191505060405180910390fd5b600061332c836118ce565b9050806001600160a01b0316846001600160a01b031614806133675750836001600160a01b031661335c8461080c565b6001600160a01b0316145b806110c157506110c18185612c6f565b4290565b600081602001516001600160a01b031682600001516001600160a01b0316106133a357600080fd5b50805160208083015160409384015184516001600160a01b0394851681850152939091168385015262ffffff166060808401919091528351808403820181526080840185528051908301207fff0000000000000000000000000000000000000000000000000000000000000060a085015294901b6bffffffffffffffffffffffff191660a183015260b58201939093527fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b5460d5808301919091528251808303909101815260f5909101909152805191012090565b604080516bffffffffffffffffffffffff19606086901b16602080830191909152600285810b60e890811b60348501529085900b901b60378301528251601a818403018152603a90920190925280519101205b9392505050565b600080806000198587098686029250828110908390030390508061350757600084116134fc57600080fd5b5082900490506134ca565b80841161351357600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b604080516000808252602082019092526001600160a01b0384169083906040518082805190602001908083835b602083106135cc5780518252601f1990920191602091820191016135ad565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461362e576040519150601f19603f3d011682016040523d82523d6000602084013e613633565b606091505b5050905080610939576040805162461bcd60e51b815260206004820152600360248201527f5354450000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b600061148f82614187565b6000806000806000604051806060016040528087600001516001600160a01b0316815260200187602001516001600160a01b03168152602001876040015162ffffff1681525090506137067f00000000000000000000000000000000000000000000000000000000000000008261337b565b91506000826001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b15801561374357600080fd5b505afa158015613757573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061377b919061560d565b50505050505090506000613792886080015161418b565b905060006137a38960a0015161418b565b90506137ba8383838c60c001518d60e001516144d9565b9750505050816001600160a01b0316633c8a7d8d876060015188608001518960a00151896040518060400160405280888152602001336001600160a01b031681525060405160200161380c9190615abd565b6040516020818303038152906040526040518663ffffffff1660e01b815260040161383b9594939291906157f6565b6040805180830381600087803b15801561385457600080fd5b505af1158015613868573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061388c91906156f4565b610100880151919550935084108015906138ab57508561012001518310155b6138c75760405162461bcd60e51b815260040161083390615a18565b509193509193565b826001600160a01b03166138e2826118ce565b6001600160a01b0316146139275760405162461bcd60e51b8152600401808060200182810382526029815260200180615eb96029913960400191505060405180910390fd5b6001600160a01b03821661396c5760405162461bcd60e51b8152600401808060200182810382526024815260200180615d966024913960400191505060405180910390fd5b613977838383610939565b613982600082613257565b6001600160a01b03831660009081526001602052604090206139a4908261459d565b506001600160a01b03821660009081526001602052604090206139c790826145a9565b506139d4600282846145b5565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b600061148c83836145cb565b4690565b6000613a36826118ce565b9050613a4481600084610939565b613a4f600083613257565b6000828152600860205260409020546002600019610100600184161502019091160415613a8d576000828152600860205260408120613a8d9161501f565b6001600160a01b0381166000908152600160205260409020613aaf908361459d565b50613abb60028361462f565b5060405182906000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000808080613b07868661463b565b909450925050505b9250929050565b60006110c18484846146b6565b6000908152600c6020526040902080546bffffffffffffffffffffffff19811660016bffffffffffffffffffffffff9283169081019092161790915590565b3b151590565b6001600160a01b038216613bc3576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b613bcc81613246565b15613c1e576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b613c2a60008383610939565b6001600160a01b0382166000908152600160205260409020613c4c90826145a9565b50613c59600282846145b5565b5060405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160a01b0382166000908152600a602052604090205469ffffffffffffffffffff168061148f5750600d8054600169ffffffffffffffffffff76010000000000000000000000000000000000000000000080840482168381019092160275ffffffffffffffffffffffffffffffffffffffffffff909316929092179092556001600160a01b038085166000908152600a6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffff000000000000000000001686179055848352600b825291829020865181549085167fffffffffffffffffffffffff000000000000000000000000000000000000000091821617825591870151950180549287015162ffffff16600160a01b027fffffffffffffffffff000000ffffffffffffffffffffffffffffffffffffffff969094169290911691909117939093161790915592915050565b613df18484846138cf565b613dfd84848484614780565b61296d5760405162461bcd60e51b8152600401808060200182810382526032815260200180615d3d6032913960400191505060405180910390fd5b6000613e44838361337b565b9050336001600160a01b0382161461148f57600080fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316148015613e9c5750804710155b15613fbe577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b158015613efc57600080fd5b505af1158015613f10573d6000803e3d6000fd5b50505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015613f8c57600080fd5b505af1158015613fa0573d6000803e3d6000fd5b505050506040513d6020811015613fb657600080fd5b5061296d9050565b6001600160a01b038316301415613fdf57613fda848383613feb565b61296d565b61296d8484848461495c565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001781529251825160009485949389169392918291908083835b602083106140955780518252601f199092019160209182019101614076565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146140f7576040519150601f19603f3d011682016040523d82523d6000602084013e6140fc565b606091505b509150915081801561412a57508051158061412a575080806020019051602081101561412757600080fd5b50515b612b85576040805162461bcd60e51b815260206004820152600260248201527f5354000000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b600061148c8383614af4565b5490565b60008060008360020b126141a2578260020b6141aa565b8260020b6000035b9050620d89e8811115614204576040805162461bcd60e51b815260206004820152600160248201527f5400000000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60006001821661421857600160801b61422a565b6ffffcb933bd6fad37aa2d162d1a5940015b70ffffffffffffffffffffffffffffffffff169050600282161561425e576ffff97272373d413259a46990580e213a0260801c5b600482161561427d576ffff2e50f5f656932ef12357cf3c7fdcc0260801c5b600882161561429c576fffe5caca7e10e4e61c3624eaa0941cd00260801c5b60108216156142bb576fffcb9843d60f6159c9db58835c9266440260801c5b60208216156142da576fff973b41fa98c081472e6896dfb254c00260801c5b60408216156142f9576fff2ea16466c96a3843ec78b326b528610260801c5b6080821615614318576ffe5dee046a99a2a811c461f1969c30530260801c5b610100821615614338576ffcbe86c7900a88aedcffc83b479aa3a40260801c5b610200821615614358576ff987a7253ac413176f2b074cf7815e540260801c5b610400821615614378576ff3392b0822b70005940c7a398e4b70f30260801c5b610800821615614398576fe7159475a2c29b7443b29c7fa6e889d90260801c5b6110008216156143b8576fd097f3bdfd2022b8845ad8f792aa58250260801c5b6120008216156143d8576fa9f746462d870fdf8a65dc1f90e061e50260801c5b6140008216156143f8576f70d869a156d2a1b890bb3df62baf32f70260801c5b618000821615614418576f31be135f97d08fd981231505542fcfa60260801c5b62010000821615614439576f09aa508b5b7a84e1c677de54f3e99bc90260801c5b62020000821615614459576e5d6af8dedb81196699c329225ee6040260801c5b62040000821615614478576d2216e584f5fa1ea926041bedfe980260801c5b62080000821615614495576b048a170391f7dc42444e8fa20260801c5b60008460020b13156144b05780600019816144ac57fe5b0490505b6401000000008106156144c45760016144c7565b60005b60ff16602082901c0192505050919050565b6000836001600160a01b0316856001600160a01b031611156144f9579293925b846001600160a01b0316866001600160a01b0316116145245761451d858585614b0c565b9050614594565b836001600160a01b0316866001600160a01b0316101561458657600061454b878686614b0c565b9050600061455a878986614b78565b9050806001600160801b0316826001600160801b03161061457b578061457d565b815b92505050614594565b614591858584614b78565b90505b95945050505050565b600061148c8383614bbe565b600061148c8383614c84565b60006110c184846001600160a01b038516614cce565b8154600090821061460d5760405162461bcd60e51b8152600401808060200182810382526022815260200180615d1b6022913960400191505060405180910390fd5b82600001828154811061461c57fe5b9060005260206000200154905092915050565b600061148c8383614d65565b81546000908190831061467f5760405162461bcd60e51b8152600401808060200182810382526022815260200180615e976022913960400191505060405180910390fd5b600084600001848154811061469057fe5b906000526020600020906002020190508060000154816001015492509250509250929050565b600082815260018401602052604081205482816147515760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156147165781810151838201526020016146fe565b50505050905090810190601f1680156147435780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5084600001600182038154811061476457fe5b9060005260206000209060020201600101549150509392505050565b6000614794846001600160a01b0316613b62565b6147a0575060016110c1565b60006148f17f150b7a02000000000000000000000000000000000000000000000000000000006147ce613253565b88878760405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561483557818101518382015260200161481d565b50505050905090810190601f1680156148625780820380516001836020036101000a031916815260200191505b5095505050505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051806060016040528060328152602001615d3d603291396001600160a01b0388169190614e39565b9050600081806020019051602081101561490a57600080fd5b50517fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a02000000000000000000000000000000000000000000000000000000001492505050949350505050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd00000000000000000000000000000000000000000000000000000000178152925182516000948594938a169392918291908083835b60208310614a0e5780518252601f1990920191602091820191016149ef565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114614a70576040519150601f19603f3d011682016040523d82523d6000602084013e614a75565b606091505b5091509150818015614aa3575080511580614aa35750808060200190516020811015614aa057600080fd5b50515b6127cd576040805162461bcd60e51b815260206004820152600360248201527f5354460000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60009081526001919091016020526040902054151590565b6000826001600160a01b0316846001600160a01b03161115614b2c579192915b6000614b58856001600160a01b0316856001600160a01b03166c010000000000000000000000006134d1565b9050614594614b7384838888036001600160a01b03166134d1565b614e48565b6000826001600160a01b0316846001600160a01b03161115614b98579192915b6110c1614b73836c010000000000000000000000008787036001600160a01b03166134d1565b60008181526001830160205260408120548015614c7a5783546000198083019190810190600090879083908110614bf157fe5b9060005260206000200154905080876000018481548110614c0e57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080614c3e57fe5b6001900381819060005260206000200160009055905586600101600087815260200190815260200160002060009055600194505050505061148f565b600091505061148f565b6000614c908383614af4565b614cc65750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561148f565b50600061148f565b600082815260018401602052604081205480614d335750506040805180820182528381526020808201848152865460018181018955600089815284812095516002909302909501918255915190820155865486845281880190925292909120556134ca565b82856000016001830381548110614d4657fe5b90600052602060002090600202016001018190555060009150506134ca565b60008181526001830160205260408120548015614c7a5783546000198083019190810190600090879083908110614d9857fe5b9060005260206000209060020201905080876000018481548110614db857fe5b600091825260208083208454600290930201918255600193840154918401919091558354825289830190526040902090840190558654879080614df757fe5b600082815260208082206002600019909401938402018281556001908101839055929093558881528982019092526040822091909155945061148f9350505050565b60606110c18484600085614e5e565b806001600160801b038116811461077157600080fd5b606082471015614e9f5760405162461bcd60e51b8152600401808060200182810382526026815260200180615dba6026913960400191505060405180910390fd5b614ea885613b62565b614ef9576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b60208310614f375780518252601f199092019160209182019101614f18565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114614f99576040519150601f19603f3d011682016040523d82523d6000602084013e614f9e565b606091505b5091509150614fae828286614fb9565b979650505050505050565b60608315614fc85750816134ca565b825115614fd85782518084602001fd5b60405162461bcd60e51b81526020600482018181528451602484015284518593919283926044019190850190808383600083156147165781810151838201526020016146fe565b50805460018160011615610100020316600290046000825580601f106150455750615063565b601f0160209004906000526020600020908101906150639190615066565b50565b5b8082111561507b5760008155600101615067565b5090565b803561077181615cc4565b805161ffff8116811461077157600080fd5b803562ffffff8116811461077157600080fd5b6000602082840312156150c0578081fd5b81356134ca81615cc4565b600080604083850312156150dd578081fd5b82356150e881615cc4565b915060208301356150f881615cc4565b809150509250929050565b60008060008060808587031215615118578182fd5b843561512381615cc4565b9350602085013561513381615cc4565b92506151416040860161509c565b9150606085013561515181615cc4565b939692955090935050565b600080600060608486031215615170578081fd5b833561517b81615cc4565b9250602084013561518b81615cc4565b929592945050506040919091013590565b600080600080608085870312156151b1578182fd5b84356151bc81615cc4565b935060208501356151cc81615cc4565b925060408501359150606085013567ffffffffffffffff8111156151ee578182fd5b8501601f810187136151fe578182fd5b803561521161520c82615c76565b615c52565b818152886020838501011115615225578384fd5b81602084016020830137908101602001929092525092959194509250565b60008060408385031215615255578182fd5b823561526081615cc4565b915060208301356150f881615cd9565b60008060408385031215615282578182fd5b823561528d81615cc4565b946020939093013593505050565b6000806000606084860312156152af578081fd5b83356152ba81615cc4565b92506020840135915060408401356152d181615cc4565b809150509250925092565b60008060008060008060c087890312156152f4578384fd5b86356152ff81615cc4565b95506020870135945060408701359350606087013561531d81615d0b565b9598949750929560808101359460a0909101359350915050565b60008060208385031215615349578182fd5b823567ffffffffffffffff80821115615360578384fd5b818501915085601f830112615373578384fd5b813581811115615381578485fd5b8660208083028501011115615394578485fd5b60209290920196919550909350505050565b6000602082840312156153b7578081fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146134ca578182fd5b6000602082840312156153f7578081fd5b81356134ca81615ce7565b600060208284031215615413578081fd5b815167ffffffffffffffff811115615429578182fd5b8201601f81018413615439578182fd5b805161544761520c82615c76565b81815285602083850101111561545b578384fd5b614594826020830160208601615c98565b60006080828403121561547d578081fd5b50919050565b600060a0828403121561547d578081fd5b600060c0828403121561547d578081fd5b600081830360808112156154b7578182fd5b6040516040810167ffffffffffffffff82821081831117156154d557fe5b8160405260608412156154e6578485fd5b60a08301935081841081851117156154fa57fe5b50826040528435925061550c83615cc4565b91825260208401359161551e83615cc4565b8260608301526155306040860161509c565b608083015281526155436060850161507f565b6020820152949350505050565b6000610160828403121561547d578081fd5b600060208284031215615573578081fd5b81356134ca81615cf6565b60008060408385031215615590578182fd5b825161559b81615cf6565b60208401519092506150f881615cf6565b600080600080600060a086880312156155c3578283fd5b85516155ce81615cf6565b80955050602086015193506040860151925060608601516155ee81615cf6565b60808701519092506155ff81615cf6565b809150509295509295909350565b600080600080600080600060e0888a031215615627578485fd5b875161563281615cc4565b602089015190975061564381615ce7565b95506156516040890161508a565b945061565f6060890161508a565b935061566d6080890161508a565b925060a088015161567d81615d0b565b60c089015190925061568e81615cd9565b8091505092959891949750929550565b6000602082840312156156af578081fd5b61148c8261509c565b6000602082840312156156c9578081fd5b5035919050565b600080604083850312156156e2578182fd5b8235915060208301356150f881615cc4565b60008060408385031215615706578182fd5b505080516020909101519092909150565b6000806000806060858703121561572c578182fd5b8435935060208501359250604085013567ffffffffffffffff80821115615751578384fd5b818701915087601f830112615764578384fd5b813581811115615772578485fd5b886020828501011115615783578485fd5b95989497505060200194505050565b600081518084526157aa816020860160208601615c98565b601f01601f19169290920160200192915050565b60020b9052565b6001600160801b03169052565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b60006001600160a01b03871682528560020b60208301528460020b60408301526001600160801b038416606083015260a06080830152614fae60a0830184615792565b6001600160a01b03959095168552600293840b60208601529190920b60408401526001600160801b03918216606084015216608082015260a00190565b6001600160a01b039390931683526001600160801b03918216602084015216604082015260600190565b6000602080830181845280855180835260408601915060408482028701019250838701855b82811015615911577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08886030184526158ff858351615792565b945092850192908501906001016158c5565b5092979650505050505050565b901515815260200190565b90815260200190565b6001600160a01b03929092168252602082015260400190565b600293840b81529190920b60208201526001600160801b03909116604082015260600190565b60006020825261148c6020830184615792565b6020808252600c908201527f4e6f7420617070726f7665640000000000000000000000000000000000000000604082015260600190565b6020808252602c908201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860408201527f697374656e7420746f6b656e0000000000000000000000000000000000000000606082015260800190565b60208082526014908201527f507269636520736c69707061676520636865636b000000000000000000000000604082015260600190565b60208082526010908201527f496e76616c696420746f6b656e20494400000000000000000000000000000000604082015260600190565b6020808252600b908201527f4e6f7420636c6561726564000000000000000000000000000000000000000000604082015260600190565b815180516001600160a01b03908116835260208083015182168185015260409283015162ffffff1692840192909252920151909116606082015260800190565b6001600160801b039390931683526020830191909152604082015260600190565b9384526001600160801b039290921660208401526040830152606082015260800190565b918252602082015260400190565b6bffffffffffffffffffffffff8d1681526001600160a01b038c811660208301528b811660408301528a16606082015262ffffff89166080820152600288900b60a08201526101808101615ba760c08301896157be565b615bb460e08301886157c5565b8561010083015284610120830152615bd06101408301856157c5565b615bde6101608301846157c5565b9d9c50505050505050505050505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112615c23578283fd5b83018035915067ffffffffffffffff821115615c3d578283fd5b602001915036819003821315613b0f57600080fd5b60405181810167ffffffffffffffff81118282101715615c6e57fe5b604052919050565b600067ffffffffffffffff821115615c8a57fe5b50601f01601f191660200190565b60005b83811015615cb3578181015183820152602001615c9b565b8381111561296d5750506000910152565b6001600160a01b038116811461506357600080fd5b801515811461506357600080fd5b8060020b811461506357600080fd5b6001600160801b038116811461506357600080fd5b60ff8116811461506357600080fdfe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732315065726d69743a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e7366657220746f20746865207a65726f2061646472657373416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c4552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e64734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a164736f6c6343000706000a0000000000000000000000001f7d7550b1b028f7571e69a784071f0205fd2efa0000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad730000000000000000000000006f84dae9c064ff453e5c8af51efb819f8f610225", - "nonce": "0xb", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x4fb28d4935866f462582c6c931c6f2705e55f5be5eb178c7d8d9329a95c44c41", - "transactionType": "CREATE2", - "contractName": "PoolManager", - "contractAddress": "0x8366a39cc670b4001a1121b8f6a443a643e40951", - "function": null, - "arguments": [ - "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x753fb8", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000060a03460a057601f615e8238819003918201601f19168301916001600160401b0383118484101760a45780849260209460405283398101031260a057516001600160a01b0381169081900360a0575f80546001600160a01b0319168217815560405191907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a330608052615dc990816100b98239608051816135260152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60a0806040526004361015610012575f80fd5b5f3560e01c908162fdd58e14612cd55750806301ffc9a714612c16578063095bcdb614612b6c5780630b0d9c0914612ae057806311da60b414612a85578063156e29f6146129d55780631e2eaeaf1461299b578063234266d7146126fc5780632d7713891461265157806335fd631a146125dd5780633dd45adb14612579578063426a8493146124f557806348c894911461226a5780635275965114612152578063558a72971461207b578063598af9e714611fe35780635a6bcfda1461144f5780636276cbbe14610f965780637e87ce7d14610e5957806380f0b44c14610d875780638161b87414610c315780638da5cb5b14610be157806397e8cd4e14610b7e5780639bf6645f14610b31578063a584119414610a66578063b6363cf2146109d5578063dbd035ff1461097f578063f02de3b21461092e578063f135baaa146108f4578063f2fde38b14610848578063f3cd914c146104ff578063f5298aca146103345763fe99049a14610186575f80fd5b346103305760807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576101bd612d3f565b6101c5612d62565b90604435917f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac72885961027973ffffffffffffffffffffffffffffffffffffffff80606435951693843314158061030d575b610287575b845f52600460205260405f20875f5260205260405f2061023a878254612fed565b90551693845f52600460205260405f20865f5260205260405f2061025f828254612ffa565b905560408051338152602081019290925290918291820190565b0390a4602060405160018152f35b845f52600560205260405f208233165f5260205260405f20875f5260205260405f2054867fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036102da575b5050610219565b6102e391612fed565b855f52600560205260405f208333165f5260205260405f20885f5260205260405f20555f866102d3565b50845f52600360205260405f208233165f5260205260ff60405f20541615610214565b5f80fd5b346103305761034236612d85565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d7577f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac7288596103ed73ffffffffffffffffffffffffffffffffffffffff805f9516956103bb6103b3866130aa565b3390896130f0565b169233841415806104a0575b6103f2575b8385526004602052604085208686526020526040852061025f828254612fed565b0390a4005b83855260056020526040852073ffffffffffffffffffffffffffffffffffffffff33168652602052604085208686526020526040852054817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610459575b50506103cc565b61046291612fed565b84865260056020526040862073ffffffffffffffffffffffffffffffffffffffff331687526020526040862087875260205260408620558681610452565b5083855260036020526040852073ffffffffffffffffffffffffffffffffffffffff3316865260205260ff604086205416156103c7565b7f54e3ca0d000000000000000000000000000000000000000000000000000000005f5260045ffd5b34610330576101207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761053836612e81565b60607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c360112610330576040519061056f82612df6565b60a4358015158103610330578252602082019060c435825260e4359073ffffffffffffffffffffffffffffffffffffffff8216820361033057604084019182526101043567ffffffffffffffff8111610330576105d0903690600401612f4d565b9290937fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75761060261350f565b51156108205760a0822092835f52600660205260405f209061062382613576565b60808401958482828a8a5173ffffffffffffffffffffffffffffffffffffffff169361064e94613b44565b90949195606088015160020b908b511515905173ffffffffffffffffffffffffffffffffffffffff1691604051986106858a612e12565b895260208901526040880152606087015262ffffff166080860152885115155f149862ffffff6107a2986106db61078f9860209d6108005773ffffffffffffffffffffffffffffffffffffffff8b511695614959565b9492968291926107d3575b505073ffffffffffffffffffffffffffffffffffffffff845116938e6fffffffffffffffffffffffffffffffff60408301511691015160020b90604051958860801d600f0b875288600f0b60208801526040870152606086015260808501521660a08301527f40e9cecb9f5f1f1c5b9c97dec2917b7ee92e57ba5563708daca94dd84ad7112f60c03393a38673ffffffffffffffffffffffffffffffffffffffff8a5116613d81565b809491946107aa575b5050823391613652565b604051908152f35b73ffffffffffffffffffffffffffffffffffffffff6107cc9251169083613652565b8480610798565b73ffffffffffffffffffffffffffffffffffffffff165f5260018f5260405f209081540190558e806106e6565b73ffffffffffffffffffffffffffffffffffffffff8e8c01511695614959565b7fbe8b8507000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330577fffffffffffffffffffffffff00000000000000000000000000000000000000006108a0612d3f565b73ffffffffffffffffffffffffffffffffffffffff5f54916108c58284163314613007565b1691829116175f55337f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576004355c5f5260205ff35b34610330575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057602073ffffffffffffffffffffffffffffffffffffffff60025416604051908152f35b346103305761098d36612f7b565b6040519160408360208152836020820152019160051b8301916020806040850193925b83355481520191019084838210156109cc5750602080916109b0565b60408186030190f35b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610a0c612d3f565b73ffffffffffffffffffffffffffffffffffffffff610a29612d62565b91165f52600360205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f52602052602060ff60405f2054166040519015158152f35b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610a9d612d3f565b73ffffffffffffffffffffffffffffffffffffffff81169081610ae15750505f7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95d005b610aea90613a92565b907f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95d7f1e0745a7db1623981f0b2a5d4232364c00787266eb75ad546f190e6cebe9bd955d005b3461033057610b3f36612f7b565b6040519160408360208152836020820152019160051b8301916020806040850193925b83355c81520191019084838210156109cc575060208091610b62565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305773ffffffffffffffffffffffffffffffffffffffff610bca612d3f565b165f526001602052602060405f2054604051908152f35b34610330575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057602073ffffffffffffffffffffffffffffffffffffffff5f5416604051908152f35b346103305760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610c68612d3f565b610c70612d62565b60443573ffffffffffffffffffffffffffffffffffffffff600254163303610d5f5773ffffffffffffffffffffffffffffffffffffffff821680151580610d1f575b610cf7576020936107a29280610cef5750815f526001855260405f20549384925b5f526001865260405f20610ce8848254612fed565b90556131f8565b938492610cd3565b7fc79e5948000000000000000000000000000000000000000000000000000000005f5260045ffd5b508073ffffffffffffffffffffffffffffffffffffffff7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95c1614610cb2565b7f48f5c3ed000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610dbe612d3f565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d757335f90815273ffffffffffffffffffffffffffffffffffffffff8216602052604090205c610e146024356130aa565b9081600f0b03610e3157610e2f9133915f03600f0b906130f0565b005b7fbda73abf000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610e9136612e81565b610e99612e6f565b9073ffffffffffffffffffffffffffffffffffffffff600254163303610d5f57623e900062fff0008316106103e9610fff8416101615610f6557602060a07fe9c42593e71f84403b84352cd168d693e2c9fcd1fdbcc3feb21d92b43e6696f9922092835f526006825260405f20610f0f81613576565b805479ffffff00000000000000000000000000000000000000000000008360b81b16907fffffffffffff000000ffffffffffffffffffffffffffffffffffffffffffffff1617905562ffffff60405191168152a2005b62ffffff827fa7abe2f7000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b346103305760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057610fce36612e81565b60a4359073ffffffffffffffffffffffffffffffffffffffff821680830361033057610ff861350f565b6060820191825160020b617fff81136114245750825160020b600181126113f9575073ffffffffffffffffffffffffffffffffffffffff815116602082019073ffffffffffffffffffffffffffffffffffffffff825116808210156113c2575050608082019073ffffffffffffffffffffffffffffffffffffffff82511690604084019161108c62ffffff845116826139b7565b1561139757506110a162ffffff835116613a75565b96835173ffffffffffffffffffffffffffffffffffffffff8116908133036112e0575b505060a0852090815f52600660205260405f2090815473ffffffffffffffffffffffffffffffffffffffff166112b8576020997fdd466e674ea557f56295e2d0218a125ea4b4f0f6f3307b95f85e6110838d6438927cffffff000000000000000000000000000000000000000000000000000061114260a0946145fc565b9260d01b168a76ffffff000000000000000000000000000000000000000084861b161717905562ffffff73ffffffffffffffffffffffffffffffffffffffff808a5116965116965116995160020b73ffffffffffffffffffffffffffffffffffffffff885116906040519b8c528c8c015260408b01528860608b015260020b98896080820152a45173ffffffffffffffffffffffffffffffffffffffff8116908133036111f4575b8585604051908152f35b61100016611203575b806111ea565b6112af9261128d604051937f6fe7e6eb0000000000000000000000000000000000000000000000000000000088860152336024860152604485019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b60e48301528361010483015261010482526112aa61012483612e2e565b613f25565b508280806111fd565b7f7983c051000000000000000000000000000000000000000000000000000000005f5260045ffd5b612000166112ef575b806110c4565b61139090604051907fdc98354e00000000000000000000000000000000000000000000000000000000602083015233602483015261137a604483018973ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8860e483015260e482526112aa61010483612e2e565b50886112e9565b7fe65af6a0000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b60449250604051917f6e6c983000000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b7fe9e90588000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b7fb70024f8000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b34610330576101407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761148836612e81565b60807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5c36011261033057604051906114bf82612dda565b60a4358060020b810361033057825260c4358060020b810361033057602083015260e43560408301526101043560608301526101243567ffffffffffffffff811161033057611512903690600401612f4d565b90927fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75761154361350f565b60a0832093845f52600660205260405f20608052611562608051613576565b608084015173ffffffffffffffffffffffffffffffffffffffff811690813303611ede575b5050815160020b92602083015160020b916115a56040850151613785565b93606087015160020b9760608201516040519960c08b018b811067ffffffffffffffff821117611eb157604052338b528860208c01528660408c015287600f0b60608c015260808b015260a08a01525f9185881215611e7a577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276188812611e4e57620d89e88613611e22576040519261163c84612dda565b5f84525f60208501525f60408501525f606085015287600f0b611b25575b600460805101978960020b5f528860205260405f20988860020b5f5260205260405f206080515460a01c60020b8b81125f14611acf575060028060018c0154600184015490039b015491015490039b5b60a073ffffffffffffffffffffffffffffffffffffffff825116910151906040519160268301528960068301528b600383015281525f603a600c83012091816040820152816020820152525f5260066080510160205260405f20976fffffffffffffffffffffffffffffffff8954169982600f0b155f14611a72578a15611a4a5761176f61176960409f9b61184e9c6118609e5b60018301956117616002611755848a548503615703565b95019283548503615703565b9655556130aa565b916130aa565b6fffffffffffffffffffffffffffffffff169060801b179a8b965f84600f0b126119dc575b5082600f0b611898575b5050506117c46117b58560801d8360801d01613785565b9185600f0b90600f0b01613785565b6fffffffffffffffffffffffffffffffff169060801b1791815160020b90602083015160020b8c8401516060850151918e5194855260208501528d84015260608301527ff208f4912782fd25c7f114ca3723a2d5dd6f3bcc3ac8db5af63baa85f711d5ec60803393a38873ffffffffffffffffffffffffffffffffffffffff60808201511661385b565b8094919461186c575b50833391613652565b82519182526020820152f35b6118929073ffffffffffffffffffffffffffffffffffffffff6080840151169083613652565b85611857565b60805154929350909173ffffffffffffffffffffffffffffffffffffffff81169060a01c60020b828112156118fe575050906118f2926118e76118dd6118ed94614158565b91600f0b92614158565b90614527565b613785565b60801b5b8b808061179e565b92809193125f146119a95761193d9161192a6118ed6118ed9361192488600f0b91614158565b87614527565b9361193886600f0b92614158565b6144ca565b6fffffffffffffffffffffffffffffffff169060801b17906fffffffffffffffffffffffffffffffff61197c60036080510192600f0b8284541661456e565b167fffffffffffffffffffffffffffffffff000000000000000000000000000000008254161790556118f6565b906118ed9250926119bf6118dd6119c595614158565b906144ca565b6fffffffffffffffffffffffffffffffff166118f6565b808f9151611a1e575b01516119f2575b8e611794565b611a198260805160049160020b5f52016020525f6002604082208281558260018201550155565b6119ec565b611a458360805160049160020b5f52016020525f6002604082208281558260018201550155565b6119e5565b7faefeb924000000000000000000000000000000000000000000000000000000005f5260045ffd5b61176f61176960409f9b61184e9c6118609e6fffffffffffffffffffffffffffffffff611aa289600f0b8361456e565b167fffffffffffffffffffffffffffffffff0000000000000000000000000000000084541617835561173e565b9099908913611af55760028060018c0154600184015490039b015491015490039b6116aa565b9860026001608051015460018c01549003600183015490039a81806080510154910154900391015490039b6116aa565b6004608051018960020b5f5280602052898960405f20611b7e81546fffffffffffffffffffffffffffffffff611b6181831695600f0b8661456e565b16931594858515141595611dee575b508d600f0b9060801d613d3a565b60801b82179055602087015285528760020b5f5260205260405f208054906fffffffffffffffffffffffffffffffff8216611bbc8b600f0b8261456e565b901592836fffffffffffffffffffffffffffffffff831615141593611dc1575b8b600f0b9060801d600f0b03916f7fffffffffffffffffffffffffffffff83137fffffffffffffffffffffffffffffffff80000000000000000000000000000000841217611d9457826fffffffffffffffffffffffffffffffff935060801b83831617905516606086015260408501525f88600f0b1215611ca1575b8351611c85575b60408401511561165a57611c8060808c015160020b8860056080510161410c565b61165a565b611c9c60808c015160020b8a60056080510161410c565b611c5f565b60808b015160020b6fffffffffffffffffffffffffffffffff600181602088015116925f817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276180712817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27618050390620d89e8050301810416809111611d68576fffffffffffffffffffffffffffffffff6060860151161115611c5857867fb8e3c385000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b897fb8e3c385000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6080515460a01c60020b8b13611bdc57600160805101546001840155600260805101546002840155611bdc565b6080515460a01c60020b1215611e05575b8e611b70565b600160805101546001840155600260805101546002840155611dff565b857f1ad777f8000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b877fd5e2f7ab000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b60448887604051917fc4433ed500000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f604085015113808091611fd6575b15611f6b5750506040517f259982e5000000000000000000000000000000000000000000000000000000006020820152611f62916112aa82611f368887898c33602487016136cb565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101845283612e2e565b505b8580611587565b159081611fc8575b50611f7f575b50611f64565b6040517f21d0ee70000000000000000000000000000000000000000000000000000000006020820152611fc1916112aa82611f368887898c33602487016136cb565b5085611f79565b610200915016151587611f73565b5061080082161515611eed565b346103305760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761201a612d3f565b73ffffffffffffffffffffffffffffffffffffffff612037612d62565b91165f52600560205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f5260205260405f206044355f52602052602060405f2054604051908152f35b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576120b2612d3f565b602435908115158092036103305773ffffffffffffffffffffffffffffffffffffffff90335f52600360205260405f208282165f5260205260405f207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff851617905560405192835216907fceb576d9f15e4e200fdb5096d64d5dfd667e16def20c1eefd14256d8e3faa26760203392a3602060405160018152f35b346103305760c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761218a36612e81565b612192612e6f565b906280000062ffffff60408301511614801590612246575b61221e5760a0906121ba8361368e565b205f52600660205260405f20906121d082613576565b81547fffffff000000ffffffffffffffffffffffffffffffffffffffffffffffffffff1660d09190911b7cffffff000000000000000000000000000000000000000000000000000016179055005b7f30d21641000000000000000000000000000000000000000000000000000000005f5260045ffd5b5073ffffffffffffffffffffffffffffffffffffffff6080820151163314156121aa565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305760043567ffffffffffffffff8111610330576122b9903690600401612f4d565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c6124cd57612345915f9160017fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235d60405193849283927f91dd734600000000000000000000000000000000000000000000000000000000845260206004850152602484019161306c565b038183335af19081156124c2575f9161241a575b507f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5c6123f25760406020915f7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f835194859381855280519182918282880152018686015e5f85828601015201168101030190f35b7f5212cba1000000000000000000000000000000000000000000000000000000005f5260045ffd5b90503d805f833e61242b8183612e2e565b8101906020818303126103305780519067ffffffffffffffff8211610330570181601f820112156103305780519067ffffffffffffffff8211611eb1576040519261249e60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601160185612e2e565b8284526020838301011161033057815f9260208093018386015e8301015281612359565b6040513d5f823e3d90fd5b7f5090d6c6000000000000000000000000000000000000000000000000000000005f5260045ffd5b346103305773ffffffffffffffffffffffffffffffffffffffff61251836612d85565b91929092335f52600560205260405f208282165f5260205260405f20845f526020528260405f205560405192835216907fb3fd5071835887567a0671151121894ddccc2842f1d10bedad13e0d17cace9a760203392a4602060405160018152f35b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576125ab612d3f565b7fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d7576107a260209161342d565b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576024356004356040519160408360208152826020820152019060051b8301916001602060408501935b835481520191019084838210156109cc57506020600191612635565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305773ffffffffffffffffffffffffffffffffffffffff61269d612d3f565b6126ab825f54163314613007565b16807fffffffffffffffffffffffff000000000000000000000000000000000000000060025416176002557fb4bd8ef53df690b9943d3318996006dbb82a25f54719d8c8035b516a2a5b8acc5f80a2005b34610330576101007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305761273536612e81565b60c4359060a43560e43567ffffffffffffffff81116103305761275c903690600401612f4d565b9190937fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75761278e61350f565b60a0842094855f52600660205260405f20946127a986613576565b60808101805173ffffffffffffffffffffffffffffffffffffffff811690813303612943575b50506fffffffffffffffffffffffffffffffff60038801541697881561291b576020986127fb876130aa565b5f03612806876130aa565b5f036fffffffffffffffffffffffffffffffff169060801b179887612907575b866128f2575b5050612839338985613652565b60405190868252858a8301527f29ef05caaff9404b7cb6d1c0e9bbae9eaa7ab2541feba1a9c4248594c08156cb60403393a3519273ffffffffffffffffffffffffffffffffffffffff841693843303612897575b8888604051908152f35b6010166128a5575b8061288d565b6128e6956112aa93611f36926040519788957fe1b4af69000000000000000000000000000000000000000000000000000000008d88015233602488016135bc565b5082808080808061289f565b600201908660801b048154019055898061282c565b60018101828960801b048154019055612826565b7fa74f97ab000000000000000000000000000000000000000000000000000000005f5260045ffd5b602016612951575b806127cf565b6040517fb6a8b0fa000000000000000000000000000000000000000000000000000000006020820152612994916112aa82611f368b898b8d8b33602488016135bc565b508861294b565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057600435545f5260205ff35b34610330576129e336612d85565b907fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d7577f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac7288596103ed73ffffffffffffffffffffffffffffffffffffffff805f941695612a62612a55876130aa565b8603600f0b3390896130f0565b16938484526004602052604084208685526020526040842061025f828254612ffa565b5f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330577fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d75760206107a23361342d565b346103305760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261033057612b17612d3f565b612b1f612d62565b604435907fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab235c156104d757610e2f92612b67612b5a846130aa565b5f03600f0b3390836130f0565b6131f8565b346103305773ffffffffffffffffffffffffffffffffffffffff612b8f36612d85565b91929092335f52600460205260405f20845f5260205260405f20612bb4848254612fed565b90551690815f52600460205260405f20835f5260205260405f20612bd9828254612ffa565b9055604080513380825260208201939093527f1b3d7edb2e9c0b0e7c525b20aaaef0f5940d2ed71663c7d39266ecafac7288599181908101610279565b346103305760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610330576004357fffffffff00000000000000000000000000000000000000000000000000000000811680910361033057807f01ffc9a70000000000000000000000000000000000000000000000000000000060209214908115612cab575b506040519015158152f35b7f0f632fb30000000000000000000000000000000000000000000000000000000091501482612ca0565b346103305760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126103305760209073ffffffffffffffffffffffffffffffffffffffff612d24612d3f565b165f526004825260405f206024355f52825260405f20548152f35b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361033057565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361033057565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60609101126103305760043573ffffffffffffffffffffffffffffffffffffffff8116810361033057906024359060443590565b6080810190811067ffffffffffffffff821117611eb157604052565b6060810190811067ffffffffffffffff821117611eb157604052565b60a0810190811067ffffffffffffffff821117611eb157604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117611eb157604052565b60a4359062ffffff8216820361033057565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60a09101126103305760405190612eb882612e12565b8160043573ffffffffffffffffffffffffffffffffffffffff8116810361033057815260243573ffffffffffffffffffffffffffffffffffffffff8116810361033057602082015260443562ffffff811681036103305760408201526064358060020b81036103305760608201526084359073ffffffffffffffffffffffffffffffffffffffff821682036103305760800152565b9181601f840112156103305782359167ffffffffffffffff8311610330576020838186019501011161033057565b9060207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8301126103305760043567ffffffffffffffff811161033057826023820112156103305780600401359267ffffffffffffffff84116103305760248460051b83010111610330576024019190565b91908203918211611d9457565b91908201809211611d9457565b1561300e57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f554e415554484f52495a454400000000000000000000000000000000000000006044820152fd5b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe093818652868601375f8582860101520116010190565b6f800000000000000000000000000000008110156130c857600f0b90565b7f93dafdf1000000000000000000000000000000000000000000000000000000005f5260045ffd5b9190600f0b9182156131f357613126919073ffffffffffffffffffffffffffffffffffffffff8092165f521660205260405f2090565b613132815c9283613b29565b80915d6131a357507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5c017f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5d5b565b156131aa57565b60017f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5c017f7d4b3164c6e45b97e7d87b7125a44c5828d005af88f9d751cfd78729c5d99a0b5d565b505050565b90919073ffffffffffffffffffffffffffffffffffffffff811690816132ea5750505f80808093855af11561322a5750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d011673ffffffffffffffffffffffffffffffffffffffff604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301525f6024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff4b3b1bc0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b60205f60448194968260409573ffffffffffffffffffffffffffffffffffffffff988751998a947fa9059cbb00000000000000000000000000000000000000000000000000000000865216600485015260248401525af13d15601f3d116001855114161716928281528260208201520152156133635750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d0116604051917f90bfb86500000000000000000000000000000000000000000000000000000000835260048301527fa9059cbb000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff27f64e40000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95c919073ffffffffffffffffffffffffffffffffffffffff8316613482576131a19034935b61347c856130aa565b906130f0565b346134e7576131a1906134be7f1e0745a7db1623981f0b2a5d4232364c00787266eb75ad546f190e6cebe9bd955c6134b986613a92565b612fed565b935f7f27e098c505d44ec3574004bca052aabf76bd35004c182099d8c575fb238593b95d613473565b7fb0ec849e000000000000000000000000000000000000000000000000000000005f5260045ffd5b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016300361354e57565b7f0d89438e000000000000000000000000000000000000000000000000000000005f5260045ffd5b5473ffffffffffffffffffffffffffffffffffffffff161561359457565b7f486aa307000000000000000000000000000000000000000000000000000000005f5260045ffd5b91926136376101209473ffffffffffffffffffffffffffffffffffffffff61364f999794168552602085019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b60c083015260e082015281610100820152019161306c565b90565b9073ffffffffffffffffffffffffffffffffffffffff60206131a1949361368185848351168660801d906130f0565b01511690600f0b906130f0565b62ffffff16620f424081116136a05750565b7f14002113000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b9061364f95936137486101609473ffffffffffffffffffffffffffffffffffffffff61377794168552602085019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051600290810b60c08501526020820151900b60e0840152604081015161010084015260600151610120830152565b81610140820152019161306c565b9081600f0b9182036130c857565b926138419061381261364f99979473ffffffffffffffffffffffffffffffffffffffff6101a09895168752602087019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051600290810b60c08701526020820151900b60e0860152604081015161010086015260600151610120850152565b61014083015261016082015281610180820152019161306c565b939590919296945f9673ffffffffffffffffffffffffffffffffffffffff861633146139ac57885f6040870151135f1461393b5761040087166138a2575b50505050505050565b61392e9799985092613927969594926138ef9261391b956040519788967f9f063efc0000000000000000000000000000000000000000000000000000000060208901523360248901613793565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282612e2e565b6002821615159161459f565b80926145bf565b915f808080808080613899565b95949392919061010086166139535750505050505050565b61392e979950869850916138ef916139a09493613927986040519788967f6c2bbe7e0000000000000000000000000000000000000000000000000000000060208901523360248901613793565b6001821615159161459f565b505f96505050505050565b608081161580613a69575b613a3f57604081161580613a5d575b613a3f5761040081161580613a51575b613a3f5761010081161580613a45575b613a3f5773ffffffffffffffffffffffffffffffffffffffff8116613a1f575062ffffff1662800000141590565b613fff161590811591613a30575090565b62800000915062ffffff161490565b50505f90565b506001811615156139f1565b506002811615156139e1565b506004811615156139d1565b506008811615156139c2565b6280000062ffffff821614613a8d5761364f8161368e565b505f90565b73ffffffffffffffffffffffffffffffffffffffff1680613ab257504790565b6020602491604051928380927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa9081156124c2575f91613afa575090565b90506020813d602011613b21575b81613b1560209383612e2e565b81010312610330575190565b3d9150613b08565b9190915f8382019384129112908015821691151617611d9457565b6020830151955f9586959194913373ffffffffffffffffffffffffffffffffffffffff851614613d2d5760808416613b7e575b5050505050565b613c66926138ef613c6092613c4c946040519586947f575e24b4000000000000000000000000000000000000000000000000000000006020870152336024870152613c16604487018c73ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8051151560e487015260208101516101048701526040015173ffffffffffffffffffffffffffffffffffffffff16610124860152565b61014061014485015261016484019161306c565b82613f25565b916060835103613d05576040015162ffffff166280000014613cf9575b600816613c94575b80808080613b77565b604001519250608083901d600f0b8015613c8b57613cb5905f861295613b29565b9315613cf1575f84135b613cc9575f613c8b565b7ffa0b71d6000000000000000000000000000000000000000000000000000000005f5260045ffd5b5f8412613cbf565b60608201519350613c83565b7f1e048e1d000000000000000000000000000000000000000000000000000000005f5260045ffd5b505f965086955050505050565b90600f0b90600f0b01907fffffffffffffffffffffffffffffffff8000000000000000000000000000000082126f7fffffffffffffffffffffffffffffff831317611d9457565b9196959394929473ffffffffffffffffffffffffffffffffffffffff83163314613f18578460801d94600f0b938860408516613e40575b50505050505f9481600f0b15801590613e34575b613dd8575b5050509190565b613e0f9395505f60208201511290511515145f14613e17576fffffffffffffffffffffffffffffffff169060801b175b80936145bf565b5f8080613dd1565b906fffffffffffffffffffffffffffffffff169060801b17613e08565b5082600f0b1515613dcc565b613efc613f08946138ef6118ed95613f0e999895613ee1613c16966040519788967fb47b2fb1000000000000000000000000000000000000000000000000000000006020890152336024890152604488019073ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b8c61014485015261016061016485015261018484019161306c565b6004821615159161459f565b90613d3a565b5f80808088613db8565b5050505050909150905f90565b9190918251925f8060208301958682865af115613fc3575050604051917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f3d011683016040523d83523d9060208401915f833e6020845110918215613f8f575b5050613d0557565b5190517fffffffff000000000000000000000000000000000000000000000000000000009182169116141590505f80613f87565b5183517fffffffff00000000000000000000000000000000000000000000000000000000811691600481106140d7575b50507fffffffff000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d01169173ffffffffffffffffffffffffffffffffffffffff604051947f90bfb865000000000000000000000000000000000000000000000000000000008652166004850152166024830152608060448301528060a00160648301523d60848301523d5f60a484013e7fa9e35b2f0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7fffffffff000000000000000000000000000000000000000000000000000000009250829060040360031b1b16168280613ff3565b919060020b9060020b9081810761413a5705908160081d5f52602052600160ff60405f2092161b8154189055565b601c906044926040519163d4d8f3e683526020830152604082015201fd5b60020b908160ff1d82810118620d89e8811161449e5763ffffffff9192600182167001fffcb933bd6fad37aa2d162d1a59400102700100000000000000000000000000000000189160028116614482575b60048116614466575b6008811661444a575b6010811661442e575b60208116614412575b604081166143f6575b608081166143da575b61010081166143be575b61020081166143a2575b6104008116614386575b610800811661436a575b611000811661434e575b6120008116614332575b6140008116614316575b61800081166142fa575b6201000081166142de575b6202000081166142c3575b6204000081166142a8575b620800001661428f575b5f12614268575b0160201c90565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04614261565b6b048a170391f7dc42444e8fa290910260801c9061425a565b6d2216e584f5fa1ea926041bedfe9890920260801c91614250565b916e5d6af8dedb81196699c329225ee6040260801c91614245565b916f09aa508b5b7a84e1c677de54f3e99bc90260801c9161423a565b916f31be135f97d08fd981231505542fcfa60260801c9161422f565b916f70d869a156d2a1b890bb3df62baf32f70260801c91614225565b916fa9f746462d870fdf8a65dc1f90e061e50260801c9161421b565b916fd097f3bdfd2022b8845ad8f792aa58250260801c91614211565b916fe7159475a2c29b7443b29c7fa6e889d90260801c91614207565b916ff3392b0822b70005940c7a398e4b70f30260801c916141fd565b916ff987a7253ac413176f2b074cf7815e540260801c916141f3565b916ffcbe86c7900a88aedcffc83b479aa3a40260801c916141e9565b916ffe5dee046a99a2a811c461f1969c30530260801c916141df565b916fff2ea16466c96a3843ec78b326b528610260801c916141d6565b916fff973b41fa98c081472e6896dfb254c00260801c916141cd565b916fffcb9843d60f6159c9db58835c9266440260801c916141c4565b916fffe5caca7e10e4e61c3624eaa0941cd00260801c916141bb565b916ffff2e50f5f656932ef12357cf3c7fdcc0260801c916141b2565b916ffff97272373d413259a46990580e213a0260801c916141a9565b827f8b86327a000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b905f83600f0b125f146144ff576144f5925f036fffffffffffffffffffffffffffffffff1691615a3d565b5f81126130c85790565b61451b926fffffffffffffffffffffffffffffffff16916159e2565b5f81126130c8575f0390565b905f83600f0b125f14614552576144f5925f036fffffffffffffffffffffffffffffffff1691615b34565b61451b926fffffffffffffffffffffffffffffffff1691615a7d565b906fffffffffffffffffffffffffffffffff90600f0b911601908160801c61459257565b6393dafdf15f526004601cfd5b906145a991613f25565b9015613a8d576040815103613d05576040015190565b6145e2906145d48360801d8260801d03613785565b92600f0b90600f0b03613785565b6fffffffffffffffffffffffffffffffff169060801b1790565b73fffd8963efd1fc6a506488495d951d516396168273ffffffffffffffffffffffffffffffffffffffff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffd895d830116116148e05777ffffffffffffffffffffffffffffffffffffffff000000008160201b168060ff61467983615bdb565b1691608083106148d457507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8182011c5b800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c800280607f1c8160ff1c1c80029081607f1c8260ff1c1c80029283607f1c8460ff1c1c80029485607f1c8660ff1c1c80029687607f1c8860ff1c1c80029889607f1c8a60ff1c1c80029a8b607f1c8c60ff1c1c80029c8d80607f1c9060ff1c1c800260cd1c6604000000000000169d60cc1c6608000000000000169c60cb1c6610000000000000169b60ca1c6620000000000000169a60c91c6640000000000000169960c81c6680000000000000169860c71c670100000000000000169760c61c670200000000000000169660c51c670400000000000000169560c41c670800000000000000169460c31c671000000000000000169360c21c672000000000000000169260c11c674000000000000000169160c01c67800000000000000016907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800160401b1717171717171717171717171717693627a301d71055774c85027ffffffffffffffffffffffffffffffffffd709b7e5480fba5a50fed5e62ffc556810160801d60020b906fdb2df09e81959a81455e260799a0632f0160801d60020b918282145f146148915750905090565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff6148c584614158565b16116148cf575090565b905090565b905081607f031b6146a9565b73ffffffffffffffffffffffffffffffffffffffff907f61487524000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b811561492c570490565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b6040519290915f61496985612df6565b5f855260208501925f845260408601955f875280968654956040860151159586155f146156f557610fff8860b81c16945b8151925f948a73ffffffffffffffffffffffffffffffffffffffff16918288528b60a01c60020b90526fffffffffffffffffffffffffffffffff60038d0154169052608083015162400000811615155f146156e65762bfffff166149fd8161368e565b61ffff88166156cb575b8096620f424062ffffff8316101561569a575b8451156156845750508861562457606083019073ffffffffffffffffffffffffffffffffffffffff825116818110156155ed5750505173ffffffffffffffffffffffffffffffffffffffff166401000276a38111156155c257505b604051986101008a018a811067ffffffffffffffff821117611eb1576040525f8a525f60208b01525f60408b01525f60608b01525f60808b01525f60a08b01525f60c08b015288155f146155b45760018b0154949390945b60e08b01525b8015801561557a575b6154205788868d8c8e73ffffffffffffffffffffffffffffffffffffffff8351168252602083015160020b602089015160020b90815f8183071291050386155f14615275576fffffffffffffffffffffffffffffffff937ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2761860409460019484600560ff60609716938260020b60081d890b5f5201602052875f207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8460ff031c9054169283151593845f146152635790614bb760ff92615bdb565b90031660020b900360020b0260020b5b905b15158684015260020b8060208401521315615238575b620d89e8602082015160020b121561522a575b73ffffffffffffffffffffffffffffffffffffffff614c17602083015160020b614158565b16918291015273ffffffffffffffffffffffffffffffffffffffff8551169673ffffffffffffffffffffffffffffffffffffffff60608c0151169283911516818310189118021892015116928d73ffffffffffffffffffffffffffffffffffffffff8316821015915f87125f1461507f5762ffffff8516620f424003614c9f81895f03615785565b94841561506e57614cb1888483615a7d565b955b868110614fb257509660a093929173ffffffffffffffffffffffffffffffffffffffff98978891620f424062ffffff8316145f14614f9e575050865b955b15614f905791614d0092615a3d565b925b60c0820152015260808d0152168c525f8351135f14614f605760a08a0151905f82126130c8570392614d3d60808b015160c08c015190612ffa565b5f81126130c8578103908113600116611d9457935b61ffff8716614f18575b6fffffffffffffffffffffffffffffffff60408d01511680614efe575b5073ffffffffffffffffffffffffffffffffffffffff8c511673ffffffffffffffffffffffffffffffffffffffff60608c01511681145f14614ec2575060408a0151614e10575b88614e03577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b015160020b0160020b5b60020b60208d01525b9392614ad3565b60208a015160020b614df3565b88614e96576fffffffffffffffffffffffffffffffff614e7d8d8d8d600460e08201519260206002820154935b015160020b60020b5f520160205260405f2091600183019081549003905560028201908154900390555460801d908c15614e88575b60400151831661456e565b1660408d0152614dc0565b5f91909103600f0b90614e72565b6fffffffffffffffffffffffffffffffff614e7d8d8d8d6004600183015492602060e084015193614e3d565b73ffffffffffffffffffffffffffffffffffffffff8b51168103614ee7575b50614dfc565b614ef0906145fc565b60020b60208d01525f614ee1565b60c08b015160801b0460e08b01510160e08b01525f614d79565b9662ffffff861661ffff881603614f435760c08a0151905b8160c08c01510360c08c01520196614d5c565b620f424060808b015161ffff89169060c08d015101020490614f30565b60808a015160c08b015101905f82126130c857019260a08a01515f81126130c857614f8a91613b29565b93614d52565b614f9992615b34565b614d00565b62ffffff614fad921689615c68565b614cef565b9650505092505082918415811517615061578e60a09173ffffffffffffffffffffffffffffffffffffffff96845f14614ffc57614ff0878284615d07565b80978a015f0395614cf1565b87871161503a576150356150306150286fffffffffffffffffffffffffffffffff84168a60601b614922565b8a8516612ffa565b615d9b565b614ff0565b61503561503061505c6fffffffffffffffffffffffffffffffff84168a61588a565b615028565b634f2461b85f526004601cfd5b6150798882856159e2565b95614cb3565b9193509190831561521957615095858284615a3d565b915b8287106150f7579073ffffffffffffffffffffffffffffffffffffffff9560a09280965b156150e857916150ca92615a7d565b925b6150e362ffffff8d16620f42408190039086615c68565b614d02565b6150f1926159e2565b926150cc565b50915050838315821517615061578d83156151ef575073ffffffffffffffffffffffffffffffffffffffff851161519c578460601b6fffffffffffffffffffffffffffffffff851680820615159104015b73ffffffffffffffffffffffffffffffffffffffff8316928184111561518f578f939573ffffffffffffffffffffffffffffffffffffffff60a093819803165b80966150bb565b634323a5555f526004601cfd5b6fffffffffffffffffffffffffffffffff84166151c7816c0100000000000000000000000088615943565b90801561492c576c010000000000000000000000008709156151485760010180615148575f80fd5b9180856152148873ffffffffffffffffffffffffffffffffffffffff9860a095615c91565b615188565b615224858383615b34565b91615097565b620d89e86020820152614bf2565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276186020820152614bdf565b5060020b900360020b0260020b614bc7565b60019194939650600592955001938460020b60081d60010b5f520160205260405f207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600160ff86161b0119905416908d8b831592831597885f146153c15750505050610330578f9160018f8f96907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff276186060928f989560409660ff896fffffffffffffffffffffffffffffffff9a5f03166101e07f804040554300526644320000502061067405302602000010750620017611707760fc7fb6db6db6ddddddddd34d34d349249249210842108c6318c639ce739cffffffff840260f81c161b60f71c167e1f0d1e100c1d070f090b19131c1706010e11080a1a141802121b1503160405601f85851693831c63d76453e004161a17031660020b9060020b0160020b0260020b5b90614bc9565b90956fffffffffffffffffffffffffffffffff955060409450600193987ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27618918960ff6060969b811681031660020b9060020b0160020b0260020b6153bb565b949891955099969298919598602088015160a01b76ffffff0000000000000000000000000000000000000000167fffffffffffffffffff000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff8a51169216171782556fffffffffffffffffffffffffffffffff6003830154166fffffffffffffffffffffffffffffffff604089015116809103615535575b5082156155265760e060029101519101555b825190155f82121461551057506154ee6154f69293613785565b925103613785565b6fffffffffffffffffffffffffffffffff169060801b1793565b6154f69250906155209103613785565b91613785565b60e060019101519101556154d4565b6fffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffff000000000000000000000000000000006003840154161760038301555f6154c2565b5073ffffffffffffffffffffffffffffffffffffffff8c511673ffffffffffffffffffffffffffffffffffffffff60608501511614614adc565b60028b015494939094614acd565b7f9e4d7cc7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b60449250604051917f7c9c6e8f00000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b606083019073ffffffffffffffffffffffffffffffffffffffff825116818111156155ed5750505173ffffffffffffffffffffffffffffffffffffffff1673fffd8963efd1fc6a506488495d951d5263988d268110156155c25750614a75565b9a509a50509950505050505050505f925f929190565b5f85511315614a1a577f96206246000000000000000000000000000000000000000000000000000000005f5260045ffd5b62ffffff610fff89169116620f424081830204910103614a07565b508960d01c62ffffff166149fd565b610fff8860c41c169461499a565b90808202917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828209918380841093039280840393847001000000000000000000000000000000001115610330571461577c57700100000000000000000000000000000000910990828211900360801b910360801c1790565b50505060801c90565b818102907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83820990828083109203918083039283620f424011156103305714615804577fde8f6cefed634549b62c77574f722e1ac57e23f24d8fd5cb790fb65668c2613993620f4240910990828211900360fa1b910360061c170290565b5050620f424091500490565b90808202917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828209918380841093039280840393846c0100000000000000000000000011156103305714615881576c01000000000000000000000000910990828211900360a01b910360601c1790565b50505060601c90565b908160601b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c01000000000000000000000000840992828085109403938085039485841115610330571461593c576c0100000000000000000000000082910981805f03168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b5091500490565b91818302917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8185099383808610950394808603958685111561033057146159da579082910981805f03168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b505091500490565b6fffffffffffffffffffffffffffffffff6c010000000000000000000000009173ffffffffffffffffffffffffffffffffffffffff80600195169116038060ff1d90810118931692615a348185615810565b93091515160190565b6fffffffffffffffffffffffffffffffff9073ffffffffffffffffffffffffffffffffffffffff8061364f9594169116038060ff1d908101189116615810565b9073ffffffffffffffffffffffffffffffffffffffff811673ffffffffffffffffffffffffffffffffffffffff831611615b2e575b73ffffffffffffffffffffffffffffffffffffffff8216928315615b22577bffffffffffffffffffffffffffffffff00000000000000000000000073ffffffffffffffffffffffffffffffffffffffff615b16948185169403169160601b16615c68565b90808206151591040190565b62bfc9215f526004601cfd5b90615ab2565b73ffffffffffffffffffffffffffffffffffffffff821673ffffffffffffffffffffffffffffffffffffffff821611615bd5575b73ffffffffffffffffffffffffffffffffffffffff8116918215615b225761364f937bffffffffffffffffffffffffffffffff00000000000000000000000073ffffffffffffffffffffffffffffffffffffffff615bd0948185169403169160601b16615943565b614922565b90615b68565b8015610330577f07060605060205000602030205040001060502050303040105050304000000006f8421084210842108cc6318c6db6d54be826fffffffffffffffffffffffffffffffff1060071b83811c67ffffffffffffffff1060061b1783811c63ffffffff1060051b1783811c61ffff1060041b1783811c60ff1060031b1792831c1c601f161a1790565b929190615c76828286615943565b93821561492c5709615c8457565b9060010190811561033057565b91908115615d02577bffffffffffffffffffffffffffffffff00000000000000000000000073ffffffffffffffffffffffffffffffffffffffff9160601b169216918282029183838311918404141615615cf55761364f9261503092820391615c68565b63f5c787f15f526004601cfd5b505090565b90918015615d955773ffffffffffffffffffffffffffffffffffffffff7bffffffffffffffffffffffffffffffff000000000000000000000000819460601b16921680820281615d578483614922565b14615d7d575b5090615d6c615d719284614922565b612ffa565b80820615159104011690565b8301838110615d5d579150615d9192615c68565b1690565b50905090565b9073ffffffffffffffffffffffffffffffffffffffff82169182036130c85756fea164736f6c634300081a000a0000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "nonce": "0xc", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x6a12fc28ab5da16c1fe341d10c6a562becd330c4982e4f74fbbb7c1a10d155e4", - "transactionType": "CREATE2", - "contractName": "PositionDescriptor", - "contractAddress": "0xc1514adf9caed7ab2cf2dd7b3225761df61f03a8", - "function": null, - "arguments": [ - "0x8366a39CC670B4001A1121B8F6A443A643e40951", - "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73", - "0x4554480000000000000000000000000000000000000000000000000000000000" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x6f15a3", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000060e0346100b357601f615ed138819003918201601f19168301916001600160401b038311848410176100b7578084926060946040528339810103126100b3578051906001600160a01b03821682036100b3576020810151906001600160a01b03821682036100b357604001519160c05260805260a052604051615e0590816100cc8239608051818181607a0152613f05015260a05181818161402c0152614082015260c0518181816101530152613d6c0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe610440806040526004361015610013575f80fd5b5f60a0525f3560e01c908163166c597814613dc257508063b7af3cdc14613d9b578063dc4c90d314613d57578063dee91a2c14613d0e578063e9dc6375146100af5763eb6d3a1114610063575f80fd5b346100a95760a0513660031901126100a9576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b60a05180fd5b34613c29576040366003190112613c29576004356001600160a01b03811690819003613c2957602460c081359260405192838092637ba03aad60e01b82528660048301525afa8015613c35575f915f91613c53575b5066ffffffffffffff19811615613c405760a08220604051602081019182526006604082015260408152610139606082613f42565b519020604051631e2eaeaf60e01b815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031693909290602084602481885afa938415613c35575f94613bfd575b50815160208301516001600160a01b039182169691166101b587613e2a565b6101be82613e2a565b129687159188613bf65780925b15613bee5750955b6101e46101de614001565b836140cb565b956101f66101f0614001565b896140cb565b6101ff84614254565b976102098a614254565b99606089015160020b9562ffffff60408b01511699608060018060a01b0391015116986040516102c0526101e06102c051016102c051811060018060401b03821117613b82576040526102c05152600160a01b60019003166102c05160200152600160a01b60019003166102c051604001526102c051606001526102c051608001526102c05160a0019660ff1687526102c05160c0019760ff1688526102c05160e0019889528060081c60020b6102c051610100015260201c60020b6102c051610120015260a01c60020b6102c05161014001526102c0516101600152826102c05161018001526102c0516101a001526102c0516101c0015261030b9061458d565b906102c0516060015161031d90614828565b916102c0516080015161032f90614828565b93855115805f149660036020600298602a82849a816103bc61046b9f9c60019b610388849f9c859d613bdd576101006102c051015160020b5b6101606102c051015160020b9160ff85511690159260ff87511692614d92565b9a51158015613bcb576101206102c051015160020b915b60ff806101606102c051015160020b925116921594511692614d92565b9a6040516103e0526902ab734b9bbb0b81016960b51b826103e0510152805191829101856103e051015e6103e05101906201016960ed1b84830152805192839101602d83015e010190602f60f81b84830152805192839101600483015e0101906201016960ed1b84830152805192839101600483015e010190611e1f60f11b84830152805192839101600583015e01015f828201526103e051900301601f1981016103e051526103e051613f42565b6105ec6002605961048260606102c0510151614828565b61049260806102c0510151614828565b90600160206104af828060a01b036101a06102c051015116615481565b604051610400527f54686973204e465420726570726573656e74732061206c697175696469747920826104005101527803837b9b4ba34b7b71034b71030902ab734b9bbb0b8103b1a1603d1b604061040051015285828551968187019780898561040051015e610400510190602d60f81b84830152805192839101605a83015e010190660103837b7b617160cd1b848301527f546865206f776e6572206f662074686973204e46542063616e206d6f646966796008830152791037b9103932b232b2b6903a3432903837b9b4ba34b7b7172e3760311b60288301527702e372837b7b61026b0b730b3b2b91020b2323932b9b99d160451b6042830152805192839101605a83015e010190612e3760f11b84830152518092605b83015e01015f8282015261040051900301601f198101610400515261040051613f42565b61085c60ac600c8060206106036102c0515161492e565b60108261061660806102c0510151614828565b6102c0518201516001600160a01b031680613bb95750600a826106376142d5565b925b6102c051604001516001600160a01b031680613ba8575060028261065b6142d5565b6102c0516101c001516001600160a01b031680613b965750602a8261067e6142f9565b955b8161069762ffffff6101806102c05101511661458d565b9a6040516103c0526901020b2323932b9b99d160b51b826103c0510152805191829101856103c051015e6103c0510190612e3760f11b84830152805192839101602c83015e0101906901020b2323932b9b99d160b51b848301528051928391018d83015e0101906f02e372437b7b59020b2323932b9b99d160851b84830152805192839101601a83015e0101906b02e372332b2902a34b2b91d160a51b84830152805192839101601c83015e0101906b02e372a37b5b2b71024a21d160a51b84830152805192839101601883015e0101632e372e3760e11b828201527fe29aa0efb88f20444953434c41494d45523a204475652064696c6967656e636560108201527f20697320696d7065726174697665207768656e20617373657373696e6720746860308201527f6973204e46542e204d616b6520737572652063757272656e637920616464726560508201527f73736573206d61746368207468652065787065637465642063757272656e636960708201527f65732c2061732063757272656e63792073796d626f6c73206d6179206265206960908201526736b4ba30ba32b21760c11b60b08201526103c051900301608c81016103c05152016103c051613f42565b6102c05160200151610876906001600160a01b0316615481565b6102c05160400151610890906001600160a01b0316615481565b610320526102c0516101c08101516001600160a01b03166102e05260608101516080820151610180909201519091906108cd9062ffffff1661458d565b6101006102c051015160020b916101206102c051015160020b610360526101606102c051015160020b610380526109136101406102c051015160020b610360518561553d565b610420526102c051519361093560018060a01b0360206102c051015116615564565b610300526102c05160400151610953906001600160a01b0316615564565b6102c05160200151909690610970906001600160a01b03166155c3565b610260526102c0516040015161098e906001600160a01b03166155c3565b610280526102c0516020810151905160ff916109af919060101c8316614a76565b6101026103a08190529190068181029181159183041417156137e25760ff610340526109e36109e891610340519004614527565b61492e565b6102a0526102c051604081015190516103405191610a14919060101c83166001600160901b0316614a76565b6101806102408190529190068181029181159183041417156137e2576103405115613b15576109e3610a4b91610340519004614535565b610220526102c05160208181015191516103405192610a75921c83166001600160801b0316614a76565b6103a0519190068181029181159183041417156137e2576103405115613b15576109e3610aa791610340519004614527565b610200526102c051604081015190516103405191610ad3919060201c83166001600160801b0316614a76565b610240519190068181029181159183041417156137e2576103405115613b15576109e3610b0591610340519004614535565b6101e0526102c051602081015190516103405191610b31919060301c83166001600160701b0316614a76565b6103a0519190068181029181159183041417156137e2576103405115613b15576109e3610b6391610340519004614527565b6101c0526102c051604081015190516103405191610b8f919060301c83166001600160701b0316614a76565b610240519190068181029181159183041417156137e2576103405115613b15576109e3610bc191610340519004614535565b6101a0526040516101808190526102a081019081106001600160401b03821117613b825760405261018051526103205160206101805101526102e05160406101805101526060610180510152608061018051015260a061018051015260c06101805101526103605160e061018051015261038051610100610180510152610420515f0b6101206101805101526101406101805101526103005161016061018051015261024051610180510152610260516101a0610180510152610280516101c06101805101526102a0516101e061018051015261022051610200610180510152610200516102206101805101526101e0516102406101805101526101c0516102606101805101526101a051610280610180510152611c206101e4610655603f6020610da36040515f80516020615cb9833981519152838201525f80516020615db983398151915260408201527f2f2f7777772e77332e6f72672f323030302f737667273e3c726563742077696460608201527f74683d27323930707827206865696768743d273530307078272066696c6c3d276080820152602360f81b60a0820152610d9e600960a1836103005151808861030051018484015e81016813979f1e17b9bb339f60b91b838201520301601619810184520182613f42565b614a89565b603e82610e4f81610d9e600960136101e0610180510151600685610200610180510151816102405161018051015191604051998a96610de3828901615661565b90805192839101825e019065272063793d2760d01b82528051928391018683015e0190722720723d273132307078272066696c6c3d272360681b84830152805192839101601983015e01016813979f1e17b9bb339f60b91b838201520301601619810184520182613f42565b8282610e8d81610d9e60096013610220610180510151600685610240610180510151816101a061018051015191604051998a96610de3828901615661565b60f382610f3881610d9e60096013610260610180510151600685610280610180510151816101c061018051015191604051998a96610ecc828901615661565b90805192839101825e019065272063793d2760d01b82528051928391018683015e0190722720723d273130307078272066696c6c3d272360681b84830152805192839101601983015e01016813979f1e17b9bb339f60b91b838201520301601619810184520182613f42565b95816101606101805101519a60405160c0527f3c7376672077696474683d2232393022206865696768743d22353030222076698260c05101527f6577426f783d2230203020323930203530302220786d6c6e733d22687474703a604060c0510152751797bbbbbb973b999737b933979918181817b9bb339160511b606060c05101527f20786d6c6e733a786c696e6b3d27687474703a2f2f7777772e77332e6f72672f607660c05101526b189c9c9c97bc3634b735939f60a11b609660c0510152651e3232b3399f60d11b60a260c05101527f3c66696c7465722069643d226631223e3c6665496d61676520726573756c743d60a860c05101527f2270302220786c696e6b3a687265663d22646174613a696d6167652f7376672b60c860c05101526a1e1b5b0ed8985cd94d8d0b60aa1b60e860c05101528051918291018560c051015e60c05101907f222f3e3c6665496d61676520726573756c743d2270312220786c696e6b3a6872848301525f80516020615c9983398151915261011383015280519283910161013183015e0101907f222f3e3c6665496d61676520726573756c743d2270322220786c696e6b3a6872848301525f80516020615c99833981519152605e830152805192839101607c83015e010190631110179f60e11b848301527f3c6665496d61676520726573756c743d2270332220786c696e6b3a687265663d60428301527a0899185d184e9a5b5859d94bdcdd99cade1b5b0ed8985cd94d8d0b602a1b6062830152805192839101607d83015e7f22202f3e3c6665426c656e64206d6f64653d226f7665726c61792220696e3d22910191909101848101919091527f70302220696e323d22703122202f3e3c6665426c656e64206d6f64653d226578605f8201527f636c7573696f6e2220696e323d22703222202f3e3c6665426c656e64206d6f64607f8201527f653d226f7665726c61792220696e323d2270332220726573756c743d22626c65609f820152780373227baba1110179f1e3332a3b0bab9b9b4b0b721363ab91603d1b60bf8201527f696e3d22626c656e644f75742220737464446576696174696f6e3d223432222060d88201527f2f3e3c2f66696c7465723e203c636c6970506174682069643d22636f726e657260f88201527f73223e3c726563742077696474683d2232393022206865696768743d223530306101188201527f222072783d223432222072793d22343222202f3e3c2f636c6970506174683e006101388201527f3c706174682069643d22746578742d706174682d612220643d224d34302031326101578201527f20483235302041323820323820302030203120323738203430205634363020416101778201527f32382032382030203020312032353020343838204834302041323820323820306101978201527f20302031203132203436302056343020413238203238203020302031203430206101b7820152671899103d1110179f60c11b6101d78201527f3c706174682069643d226d696e696d61702220643d224d3233342034343443326101df8201527f3334203435372e393439203234322e323120343633203235332034363322202f6101ff820152601f60f91b61021f8201527f3c66696c7465722069643d22746f702d726567696f6e2d626c7572223e3c66656102208201527f476175737369616e426c757220696e3d22536f757263654772617068696322206102408201527f737464446576696174696f6e3d22323422202f3e3c2f66696c7465723e0000006102608201527f3c6c696e6561724772616469656e742069643d22677261642d7570222078313d61027d8201527f2231222078323d2230222079313d2231222079323d2230223e3c73746f70206f61029d8201527f66667365743d22302e30222073746f702d636f6c6f723d2277686974652220736102bd820152713a37b816b7b830b1b4ba3c9e91189110179f60711b6102dd8201527f3c73746f70206f66667365743d222e39222073746f702d636f6c6f723d2277686102ef8201527f697465222073746f702d6f7061636974793d223022202f3e3c2f6c696e65617261030f8201526823b930b234b2b73a1f60b91b61032f8201527f3c6c696e6561724772616469656e742069643d22677261642d646f776e2220786103388201527f313d2230222078323d2231222079313d2230222079323d2231223e3c73746f706103588201527f206f66667365743d22302e30222073746f702d636f6c6f723d227768697465226103788201527f2073746f702d6f7061636974793d223122202f3e3c73746f70206f66667365746103988201527f3d22302e39222073746f702d636f6c6f723d227768697465222073746f702d6f6103b88201527f7061636974793d223022202f3e3c2f6c696e6561724772616469656e743e00006103d88201527f3c6d61736b2069643d22666164652d757022206d61736b436f6e74656e74556e6103f68201527f6974733d226f626a656374426f756e64696e67426f78223e3c726563742077696104168201527f6474683d223122206865696768743d2231222066696c6c3d2275726c282367726104368201527030b216bab8149110179f1e17b6b0b9b59f60791b6104568201527f3c6d61736b2069643d22666164652d646f776e22206d61736b436f6e74656e746104678201527f556e6974733d226f626a656374426f756e64696e67426f78223e3c72656374206104878201527f77696474683d223122206865696768743d2231222066696c6c3d2275726c28236104a78201527433b930b216b237bbb7149110179f1e17b6b0b9b59f60591b6104c78201527f3c6d61736b2069643d226e6f6e6522206d61736b436f6e74656e74556e6974736104dc8201527f3d226f626a656374426f756e64696e67426f78223e3c726563742077696474686104fc8201527f3d223122206865696768743d2231222066696c6c3d22776869746522202f3e3c61051c8201526517b6b0b9b59f60d11b61053c8201527f3c6c696e6561724772616469656e742069643d22677261642d73796d626f6c226105428201527f3e3c73746f70206f66667365743d22302e37222073746f702d636f6c6f723d226105628201527f7768697465222073746f702d6f7061636974793d223122202f3e3c73746f70206105828201527f6f66667365743d222e3935222073746f702d636f6c6f723d22776869746522206105a28201527f73746f702d6f7061636974793d223022202f3e3c2f6c696e65617247726164696105c28201526332b73a1f60e11b6105e28201527f3c6d61736b2069643d22666164652d73796d626f6c22206d61736b436f6e74656105e68201527f6e74556e6974733d227573657253706163654f6e557365223e3c7265637420776106068201527f696474683d22323930707822206865696768743d223230307078222066696c6c6106268201527f3d2275726c2823677261642d73796d626f6c2922202f3e3c2f6d61736b3e3c2f610646820152643232b3399f60d91b6106668201527f3c6720636c69702d706174683d2275726c2823636f726e65727329223e00000061066b8201526b1e3932b1ba103334b6361e9160a11b610688820152815192909183910161069483015e01017f2220783d223070782220793d22307078222077696474683d223239307078222082820152703432b4b3b43a1e911a9818383c1110179f60791b6106758201527f3c72656374207374796c653d2266696c7465723a2075726c28236631292220786106868201527f3d223070782220793d22307078222077696474683d22323930707822206865696106a68201526d33b43a1e911a9818383c1110179f60911b6106c68201527f203c67207374796c653d2266696c7465723a75726c2823746f702d726567696f6106d48201527f6e2d626c7572293b207472616e73666f726d3a7363616c6528312e35293b20746106f48201527f72616e73666f726d2d6f726967696e3a63656e74657220746f703b223e0000006107148201527f3c726563742066696c6c3d226e6f6e652220783d223070782220793d223070786107318201527f222077696474683d22323930707822206865696768743d22353030707822202f610751820152601f60f91b6107718201527f3c656c6c697073652063783d22353025222063793d22307078222072783d22316107728201527f38307078222072793d223132307078222066696c6c3d222330303022206f70616107928201527131b4ba3c9e9118171c1a9110179f1e17b39f60711b6107b28201527f3c7265637420783d22302220793d2230222077696474683d22323930222068656107c48201527f696768743d22353030222072783d223432222072793d223432222066696c6c3d6107e48201527f227267626128302c302c302c302922207374726f6b653d2272676261283235356108048201527416191a9a96191a9a96181719149110179f1e17b39f60591b61082482015260c0519003016101c4810160c051520160c051613f42565b61217f608b6005610100610180515160206101805101518360606101805101519160806101805101519060405186527f3c7465787420746578742d72656e646572696e673d226f7074696d697a6553706020875101526432b2b2111f60d91b6040875101527f3c74657874506174682073746172744f66667365743d222d31303025222066696045875101527f6c6c3d2277686974652220666f6e742d66616d696c793d2227436f75726965726065875101527f204e6577272c206d6f6e6f73706163652220666f6e742d73697a653d223130706085875101527f782220786c696e6b3a687265663d2223746578742d706174682d61223e00000060a5875101528281516020830190808260c28b51015e8851019264010714051160dd1b60c285015260c285516020870195818760c783015e0101905f80516020615c79833981519152848301525f80516020615d5983398151915260258301525f80516020615d398339815191526045830152783832b0ba21b7bab73a1e9134b73232b334b734ba329110179f60391b60658301527f3c2f74657874506174683e203c74657874506174682073746172744f66667365607e8301527f743d223025222066696c6c3d2277686974652220666f6e742d66616d696c793d609e8301527f2227436f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d60be8301527f73697a653d22313070782220786c696e6b3a687265663d2223746578742d706160de830152653a3416b0911f60d11b60fe83015251809261010483015e01019164010714051160dd1b6103405184015251809161010484015e610340519101015f80516020615c79833981519152828201525f80516020615d5983398151915260258201525f80516020615d3983398151915260458201527f70656174436f756e743d22696e646566696e69746522202f3e203c2f746578746065820152642830ba341f60d91b60858201527f3c74657874506174682073746172744f66667365743d22353025222066696c6c608a8201527f3d2277686974652220666f6e742d66616d696c793d2227436f7572696572204e60aa8201527f6577272c206d6f6e6f73706163652220666f6e742d73697a653d22313070782260ca8201527a103c3634b7359d343932b31e9111ba32bc3a16b830ba3416b0911f60291b60ea8201528184516020860192818461010583015e01019364010714051160dd1b868601528584516020860196818861010583015e0101905f80516020615c79833981519152848301525f80516020615d5983398151915260258301527f6f3d22313030252220626567696e3d22307322206475723d223330732200000060458301527f20726570656174436f756e743d22696e646566696e69746522202f3e3c2f746560628301527f7874506174683e3c74657874506174682073746172744f66667365743d222d3560828301527f3025222066696c6c3d2277686974652220666f6e742d66616d696c793d22274360a28301527f6f7572696572204e6577272c206d6f6e6f73706163652220666f6e742d73697a60c28301527f653d22313070782220786c696e6b3a687265663d2223746578742d706174682d60e28301526230911f60e91b6103a05183015251809261010583015e01019064010714051160dd1b8483015251809261010583015e01015f80516020615c79833981519152828201525f80516020615d5983398151915260258201525f80516020615d3983398151915260458201527f70656174436f756e743d22696e646566696e69746522202f3e3c2f746578745060658201526a30ba341f1e17ba32bc3a1f60a91b608582015261010051900301606b810161010051520161010051613f42565b6020612418607e60776060610180510151600185608061018051015160ed8260a0610180510151926040519a8b977f3c67206d61736b3d2275726c2823666164652d73796d626f6c29223e3c726563828a01527f742066696c6c3d226e6f6e652220783d223070782220793d223070782220776960408a01527f6474683d22323930707822206865696768743d22323030707822202f3e203c7460608a01527f65787420793d22373070782220783d2233327078222066696c6c3d227768697460808a01527f652220666f6e742d66616d696c793d2227436f7572696572204e6577272c206d60a08a01527f6f6e6f73706163652220666f6e742d7765696768743d223230302220666f6e7460c08a01526c16b9b4bd329e91199b383c111f60991b60e08a0152805191829101858a015e870190602f60f81b8483015280519283910160ee83015e0101907f3c2f746578743e3c7465787420793d2231313570782220783d22333270782220848301527f66696c6c3d2277686974652220666f6e742d66616d696c793d2227436f75726960218301527f6572204e6577272c206d6f6e6f73706163652220666f6e742d7765696768743d6041830152761119181811103337b73a16b9b4bd329e91199b383c111f60491b6061830152805192839101607883015e01016a1e17ba32bc3a1f1e17b39f60a91b838201527f3c7265637420783d2231362220793d223136222077696474683d22323538222060828201527f6865696768743d22343638222072783d223236222072793d223236222066696c60a28201527f6c3d227267626128302c302c302c302922207374726f6b653d2272676261283260c2820152721a9a96191a9a96191a9a96181719149110179f60691b60e28201520301605e810184520182613f42565b60c061018051015160020b9060e061018051015160020b9161010061018051015160020b906101206101805101515f0b90600182145f14613b2957604051612461604082613f42565b6008815267023666164652d75760c41b6020820152945b03627fffff198112627fffff8213176137e25760020b908215613b1557627fffff1982145f198414166137e25761293f926048920560020b600481136139365750607960206040516124cb604082613f42565b601a8152794d3120314334312034312031303520313035203134352031343560301b82820152925b60406101608190528051906125089082613f42565b6002815261373360f01b838201908152610160518051939061252a9085613f42565b60038452848401906203139360ec1b825261016051519261254e6101605185613f42565b60038452868401926232313760e81b84526101605151936125726101605186613f42565b6003855288850191620ccccd60ea1b8352600185146001860361392c575b15613840575050505092602786602a946008828196602c82809c6126c39c5f191493845f14613839578a5b85156138325782985b861561382a5750945b156138225750955b61016051516b1e31b4b931b6329031bc1e9160a11b8f8201528a51909e8f9b829101858d015e8a019067383c111031bc9e9160c11b84830152805192839101603483015e0101907f70782220723d22347078222066696c6c3d22776869746522202f3e3c63697263848301526636329031bc1e9160c91b6028830152805192839101602f83015e01019067383c111031bc9e9160c11b84830152805192839101602f83015e01017f70782220723d2232347078222066696c6c3d226e6f6e6522207374726f6b653d8382015269113bb434ba329110179f60b11b60288201520301600a810184520182613f42565b606561016051519889956c078ce40dac2e6d67a44eae4d85609b1b85880152858251868401908082602d8c015e89019361149160f11b602d8601525f80516020615dd9833981519152602f8601527f2c313839707829223e3c7265637420783d222d313670782220793d222d313670604f8601527f78222077696474683d22313830707822206865696768743d2231383070782220606f860152763334b6361e913737b7329110179f1e3830ba3410321e9160491b608f860152602d845189860196818860a683015e0101907f22207374726f6b653d227267626128302c302c302c302e332922207374726f6b848301527f652d77696474683d2233327078222066696c6c3d226e6f6e6522207374726f6b6099830152733296b634b732b1b0b81e913937bab7321110179f60611b60b9830152700785ece7c78ce40dac2e6d67a44eae4d85607b1b60cd83015251809260de83015e01019061149160f11b848301525f80516020615dd983398151915260678301526816189c1cb83c14911f60b91b60878301527f3c7265637420783d222d313670782220793d222d31367078222077696474683d60908301527f22313830707822206865696768743d223138307078222066696c6c3d226e6f6e60b083015264329110179f60d91b60d0830152681e3830ba3410321e9160b91b60d583015251809260de83015e0101907f22207374726f6b653d2272676261283235352c3235352c3235352c3129222066848301527f696c6c3d226e6f6e6522207374726f6b652d6c696e656361703d22726f756e646099830152671110179f1e17b39f60c11b60b983015280519283910160c183015e01015f838201520301601f198101845283613f42565b61295061014061018051015161492e565b60018060a01b0360406101805101511660c061018051015160020b9160e061018051015160020b9261298183615481565b60e05261298d8161591c565b6129968561591c565b928051946004860186116137e2576136bb576129b06142f9565b80519360058501928386116136a357845191600a83018084116136a357885195600a8701928388116136a35760049c6129e891615a45565b9c909b6008810191829101116136a357806007029060078204036136a357612a1160099161492e565b99018091116136a357806007029060078204036136a357612a33600e9161492e565b94018091116136a357806007029060078204036136a357612a55600e9161492e565b95018091116136a35760078181020481036136a357600702612a769061492e565b9561016051516080526080516020015f80516020615d9983398151915290526c1cb83c1610199a9a383c14911f60991b6101605160805101526c1e3932b1ba103bb4b23a341e9160991b608051604d015280516020819201608051605a015e60805101605a0160a0518152612aea906156bc565b5f80516020615cf98339815191528152602081015f80516020615cd983398151915290526101605181015f80516020615d798339815191529052606081015f80516020615d198339815191529052608081016c1f24a21d101e17ba39b830b71f60991b905281516020819301608d83015e6a1e17ba32bc3a1f1e17b39f60a91b608d92909101918201525f80516020615d9983398151915260988201526c1cb83c1610199c1a383c14911f60991b60b88201526c1e3932b1ba103bb4b23a341e9160991b60c5820152815191829060200160d283015e01608d0160450160a0518152612bd5906156bc565b5f80516020615cf98339815191528152602081015f80516020615cd983398151915290526101605181015f80516020615d798339815191529052606081015f80516020615d198339815191529052608081016e1f2437b7b59d101e17ba39b830b71f60891b905281516020819301608f83015e6a1e17ba32bc3a1f1e17b39f60a91b608f92909101918201525f80516020615d99833981519152609a8201526c1cb83c16101a189a383c14911f60991b60ba8201526c1e3932b1ba103bb4b23a341e9160991b60c7820152815191829060200160d483015e01608f0160450160a0518152612cc2906156bc565b5f80516020615cf98339815191528152602081015f80516020615cd983398151915290526101605181015f80516020615d798339815191529052606081015f80516020615d19833981519152905260808101721f26b4b7102a34b1b59d101e17ba39b830b71f60691b905281516020819301609383015e6a1e17ba32bc3a1f1e17b39f60a91b609392909101918201525f80516020615d99833981519152609e8201526c1cb83c16101a1a1a383c14911f60991b60be8201526c1e3932b1ba103bb4b23a341e9160991b60cb820152815191829060200160d883015e0160930160450160a0518152612db3906156bc565b5f80516020615cf98339815191528152602081015f80516020615cd983398151915290526101605181015f80516020615d798339815191529052606081015f80516020615d19833981519152905260808101721f26b0bc102a34b1b59d101e17ba39b830b71f60691b905281516020819301609383015e7f3c2f746578743e3c2f673e3c67207374796c653d227472616e73666f726d3a7460939290910191820152773930b739b630ba329419191b383c16101a1999b83c14911f60411b60b38201527f3c726563742077696474683d223336707822206865696768743d22333670782260cb8201527f2072783d22387078222072793d22387078222066696c6c3d226e6f6e6522207360eb8201527f74726f6b653d2272676261283235352c3235352c3235352c302e322922202f3e61010b8201527f3c70617468207374726f6b652d6c696e656361703d22726f756e642220643d2261012b8201527f4d38203943382e30303030342032322e393439342031362e323039392032382061014b8201527f3237203238222066696c6c3d226e6f6e6522207374726f6b653d22776869746561016b820152631110179f60e11b61018b8201527f3c636972636c65207374796c653d227472616e73666f726d3a7472616e736c6161018f820152640e8ca66c8560db1b6101af82015281519182906020016101b483015e016093016101218101630383c16160e51b90528151602081930161012583015e7f70782c2030707829222063783d22307078222063793d223070782220723d2234610125929091019182015275383c11103334b6361e913bb434ba3291179f1e17b39f60511b6101458201526080805161013b9281900392830190525161303b9161015b0190613f42565b61018051610140015191610180516040015160a0515060606101605151906020820192868452600160601b6001900319911b166101605182015260348152613084605482613f42565b5190209280156100a9578060018060801b031060071b81811c60018060401b031060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1781811c610340511060031b17906f8421084210842108cc6318c6db6d54be7b01c1818141808140018080c0814100004181408140c0c100414140c160221b91831c1c601f161a1760011b6101fe811660fe8216036136a35760fe9060a0515016600101906103405182116136a3576103405182161561368b5761360f6020610d9e6002602761353c84610d9e6006829b83603d9b61366c9f61365e9e61034051165f1904115f14613670578161016051517f3c67207374796c653d227472616e73666f726d3a7472616e736c617465283232828201527f3670782c20333932707829223e3c726563742077696474683d22333670782220610160518201527f6865696768743d2233367078222072783d22387078222072793d22387078222060608201527f66696c6c3d226e6f6e6522207374726f6b653d2272676261283235352c32353560808201526c16191a9a96181719149110179f60991b60a08201527f3c673e3c70617468207374796c653d227472616e73666f726d3a7472616e736c60ad8201527f617465283670782c367078292220643d224d313220304c31322e36353232203960cd8201527f2e35363538374c313820312e363037374c31332e373831392031302e3231383160ed82015272026191917199c9919901b26189a171a199a189606d1b61010d8201527f31312e333437384c32342031324c31342e343334312031322e363532324c32326101208201527f2e333932332031384c31332e373831392031332e373831394c31382032322e336101408201527f3932334c31322e363532322031342e343334314c31322032344c31312e33343761016082015270382031342e343334314c362032322e333960781b610240518201527f32334c31302e323138312031332e373831394c312e363037372031384c392e356101918201527f363538372031322e363532324c302031324c392e35363538372031312e3334376101b18201527f384c312e3630373720364c31302e323138312031302e323138314c3620312e366101d18201527f3037374c31312e3334373820392e35363538374c313220305a222066696c6c3d6101f182015269113bb434ba329110179f60b11b6102118201527f3c616e696d6174655472616e73666f726d206174747269627574654e616d653d61021b8201527f227472616e73666f726d2220747970653d22726f74617465222066726f6d3d2261023b8201527f302031382031382220746f3d2233363020313820313822206475723d2231307361025b8201527f2220726570656174436f756e743d22696e646566696e697465222f3e3c2f673e61027b820152631e17b39f60e11b61029b82015261027f81526134ac61029f82613f42565b915b61016051519788958160c05151808260c05101838b015e88018181019060a051825261010051518092846101005101905e01019060a0518252805192839101825e019060a0518252805192839101825e0160a05181526080515190818460805101825e019060a0518252805192839101825e01651e17b9bb339f60d11b815203601919810184520182613f42565b6101605151948591683d913730b6b2911d1160b91b82840152601260296103e0515180856103e051018388015e850171111610113232b9b1b934b83a34b7b7111d1160711b8282015261040051519081866104005101603b83015e01018181019060a05182526103c051518092866103c05101905e0101906c1116101134b6b0b3b2911d101160991b82527919185d184e9a5b5859d94bdcdd99cade1b5b0ed8985cd94d8d0b60321b600d8301528051928391018583015e0161227d60f01b838201520301601d19810184520182613f42565b61016051519384917f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000828401528051918291018484015e810160a051838201520301601f198101835282613f42565b610160515191829182613e00565b0390f35b8161016051516136808282613f42565b60a0518152916134ae565b634e487b7160e01b60a051526012600452602460a051fd5b634e487b7160e01b60a051526011600452602460a051fd5b60055f60a0526136cb6005613f65565b610140526101605151610120526136e86101405161012051613f42565b600561012051526101205150601f196137016005613f65565b013660206101205101375f5b8181106137f65750505f60a052600361372581613f65565b61373461016051519182613f42565b818152601f1961374383613f65565b0136602083013760275b602a81106137ac5750602091816137a792508361016051519485926101205151808361012051018487015e8401906217171760e91b83830152805192839101602383015e01015f838201520301601f198101835282613f42565b6129b0565b60ff60f81b6137bd8260e051613fdc565b51169060261981018181116137e2576137db6001935f1a9185613fdc565b530161374d565b634e487b7160e01b5f52601160045260245ffd5b60019060ff60f81b61380a8260e051613fdc565b51165f1a61381b8261012051613fdc565b530161370d565b9050956125d5565b9050946125cd565b81986125c4565b879a6125bb565b61392797945060089591601b97602c88936027979c61016051519d8e9a6b1e31b4b931b6329031bc1e9160a11b60208d0152518091858d015e8a019067383c111031bc9e9160c11b84830152518092603483015e0101907a383c1110391e911a383c11103334b6361e913bb434ba329110179f60291b848301526b1e31b4b931b6329031bc1e9160a11b6023830152518092602f83015e01019067383c111031bc9e9160c11b84830152518092602f83015e01017a383c1110391e911a383c11103334b6361e913bb434ba329110179f60291b838201520301600419810184520182613f42565b6126c3565b505f198514612590565b6008811361397c575060796020604051613951604082613f42565b60198152784d31203143333320343920393720313133203134352031343560381b82820152926124f3565b601081136139c2575060796020604051613997604082613f42565b60198152784d31203143333320353720383920313133203134352031343560381b82820152926124f3565b60208113613a085750607960206040516139dd604082613f42565b60198152784d31203143323520363520383120313231203134352031343560381b82820152926124f3565b60408113613a4e575060796020604051613a23604082613f42565b60198152784d31203143313720373320373320313239203134352031343560381b82820152926124f3565b60808113613a93575060796020604051613a69604082613f42565b60188152774d312031433920383120363520313337203134352031343560401b82820152926124f3565b61010012613ad95760796020604051613aad604082613f42565b601a8152794d31203143312038392035372e3520313435203134352031343560301b82820152926124f3565b60796020604051613aeb604082613f42565b60188152774d312031433120393720343920313435203134352031343560401b82820152926124f3565b634e487b7160e01b5f52601260045260245ffd5b5f198203613b5d57604051613b3f604082613f42565b600a81526911b330b23296b237bbb760b11b60208201525b94612478565b604051613b6b604082613f42565b6005815264236e6f6e6560d81b6020820152613b57565b634e487b7160e01b5f52604160045260245ffd5b82613ba2602a92615481565b95610680565b82613bb4600292615481565b61065b565b82613bc5600a92615481565b92610639565b6101006102c051015160020b9161039f565b6101206102c051015160020b610368565b9050956101d3565b81926101cb565b9093506020813d602011613c2d575b81613c1960209383613f42565b81010312613c2957519285610196565b5f80fd5b3d9150613c0c565b6040513d5f823e3d90fd5b8263ed15e6cf60e01b5f5260045260245ffd5b9150508060c03d60c011613d07575b613c6c8183613f42565b81010360c08112613c295760a013613c29576040519060a082016001600160401b03811183821017613b8257604052613ca4816140b7565b8252613cb2602082016140b7565b6020830152604081015162ffffff81168103613c2957604083015260608101518060020b8103613c295760608301526080810151906001600160a01b0382168203613c295760a0916080840152015183610104565b503d613c62565b34613c29576040366003190112613c2957613d27613dea565b6024356001600160a01b0381168103613c2957613d4e613d48602093613e2a565b91613e2a565b12604051908152f35b34613c29575f366003190112613c29576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b34613c29575f366003190112613c295761366c613db6614001565b60405191829182613e00565b34613c29576020366003190112613c2957602090613de6613de1613dea565b613e2a565b8152f35b600435906001600160a01b0382168203613c2957565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b6001600160a01b031680158015613f02575b613efb5760014614613e4e575b505f90565b73a0b86991c6218b36c1d19d4a2e9eb0ce3606eb488103613e70575061012c90565b73dac17f958d2ee523a2206206994597c13d831ec78103613e91575060c890565b736b175474e89094c44da98b954eedeac495271d0f8103613eb25750606490565b738daebade922df735c38c80c7ebd708af50815faa8103613ed4575060c71990565b732260fac5e5542a773aa44fbcfedf7c193bc2c59914613ef4575f613e49565b61012b1990565b5060631990565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168114613e3c565b5f1981146137e25760010190565b601f909101601f19168101906001600160401b03821190821017613b8257604052565b6001600160401b038111613b8257601f01601f191660200190565b613f8a6006613f65565b90613f986040519283613f42565b6006825281601f19613faa6006613f65565b0190602036910137565b90613fbe82613f65565b613fcb6040519182613f42565b8281528092613faa601f1991613f65565b908151811015613fed570160200190565b634e487b7160e01b5f52603260045260245ffd5b5f5b602081108061407b575b156140205761401b90613f34565b614003565b61402981613fb4565b907f0000000000000000000000000000000000000000000000000000000000000000905f5b81811061405b5750505090565b6020811015613fed5780836001921a6140748287613fdc565b530161404e565b15613fed577f0000000000000000000000000000000000000000000000000000000000000000811a60f81b6001600160f81b031916151561400d565b51906001600160a01b0382168203613c2957565b6001600160a01b038116915f9190831561421e57506140e99061431e565b9182511561416b5750600c8251116140ff575090565b9061410a600c613f65565b916141186040519384613f42565b600c8352601f19614129600c613f65565b01366020850137805b600c81106141405750505090565b6001906001600160f81b03196141568286613fdc565b5116831a6141648287613fdc565b5301614132565b915050614176613f80565b905f5b6003811061418657505090565b80601303601381116137e2576001600160fd1b03811681036137e257829060031b1c9060f080600f198416161660ff8316039160ff83116137e257600f6141d09160041c1661561f565b600182901b926001600160ff1b03831683036137e2576141fc915f1a6141f68588613fdc565b5361561f565b91600181018091116137e2576142176001935f1a9186613fdc565b5301614179565b9250505090565b3d1561424f573d9061423682613f65565b916142446040519384613f42565b82523d5f602084013e565b606090565b6001600160a01b038116156142cf575f8091604051602081019063313ce56760e01b825260048152614287602482613f42565b51915afa614293614225565b9015613e49578051602081146142aa575b50505f90565b8160209181010312613c29576020015160ff8111156142c957806142a4565b60ff1690565b50601290565b604051906142e4604083613f42565b60068252654e617469766560d01b6020830152565b60405190614308604083613f42565b60078252664e6f20486f6f6b60c81b6020830152565b5f809160405160208101906395d89b4160e01b825260048152614342602482613f42565b51915afa61434e614225565b90156144ad57805160208103614420575060208151918180820193849201010312613c2957519060405191614384604084613f42565b602080845236848201375f905f5b602081106143e15750506143a581613fb4565b905f5b8181106143b6575090925050565b6001906001600160f81b03196143cc8288613fdc565b51165f1a6143da8286613fdc565b53016143a8565b81811a60f881901b6001600160f81b031916614401575b50600101614392565b83614419916144136001949689613fdc565b53613f34565b92906143f8565b6040811161443e575050604051614438602082613f42565b5f815290565b810190602081818401930312613c29576020810151906001600160401b038211613c29570181603f82011215613c295760208101519061447d82613f65565b9261448b6040519485613f42565b82845260408284010111613c2957815f926040602093018386015e8301015290565b50604051614438602082613f42565b60ff1660ff81146137e25760010190565b6040519061010082016001600160401b03811183821017613b82576040525f60e0838281528260208201528260408201528260608201528260808201528260a08201528260c08201520152565b919082039182116137e257565b90601082018092116137e257565b90606482018092116137e257565b919082018092116137e257565b60ff5f199116019060ff82116137e257565b60ff6004199116019060ff82116137e257565b604d81116137e257600a0a90565b8115613b15570490565b62ffffff8116906280000082146148015781156147df575f9262ffffff5f925b169182156146195760ff8116156145de57600a6145d66145d062ffffff936144bc565b96613f34565b9593046145ad565b9362ffffff600a8406166145fc575b600a6145d662ffffff92613f34565b93600a6145d661460f62ffffff936144bc565b96925050506145ed565b90939291506146266144cd565b916005841061475f5760ff8216916004614640848761451a565b106147565760ff5f5b169260041986018681116137e25760ff61466284614550565b1681101561473a57505f905b60808601918183526146808183614543565b5f198101939084116137e2576146b18760ff6146ab8180958d60a0836146bc9c169101525116614550565b16614543565b166040880152614543565b92600184018094116137e25760ff6146f292816146df6146ed946146f898614543565b1660208801525b168661451a565b614575565b90614583565b8152600160e0820152600482111561472d5760031982019182116137e25760ff8061472a93165b166060820152614be7565b90565b61472a915060ff5f61471f565b6147509060ff61474985614550565b169061451a565b9061466e565b60ff6001614649565b83600503600581116137e2576002608085015260028101908181116137e257600181019182116137e25760ff61479f921660a086015260ff841690614543565b600281018091116137e25760ff168060208501526001190160ff81116137e2576146ed60ff6146f894816146f294166040880152600160c08801526146e6565b50506040516147ef604082613f42565b6002815261302560f01b602082015290565b5050604051614811604082613f42565b600781526644796e616d696360c81b602082015290565b905f805b835160ff82169081101561488157614859906001600160f81b0319906148529087613fdc565b5116615413565b61486c575b614867906144bc565b61482c565b90614879614867916144bc565b91905061485e565b505060ff168061488e5750565b61489c6148a1918451614543565b613fb4565b5f925f5b815160ff8216908110156149265761490691906148ce6001600160f81b03196148528387613fdc565b61490b575b6001600160f81b0319906148e79085613fdc565b5116956149006148f682613f34565b975f1a9186613fdc565b536144bc565b6148a5565b605c61492061491989613f34565b9887613fdc565b536148d3565b509193505050565b5f908072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b811015614a53575b600a906904ee2d6d415b85acef8160201b811015614a37575b662386f26fc10000811015614a23575b6305f5e100811015614a12575b612710811015614a03575b60648110156149f5575b10156149ea575b600a60216149b260018501613fb4565b938401015b5f1901916f181899199a1a9b1b9c1cb0b131b232b360811b8282061a83530480156149e557600a90916149b7565b505090565b6001909101906149a2565b60646002910493019261499b565b61271060049104930192614991565b6305f5e10060089104930192614986565b662386f26fc1000060109104930192614979565b602093909301926904ee2d6d415b85acef8160201b9004614969565b506040915072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8104614950565b818102929181159184041417156137e257565b90815115614bc55760405191614aa0606084613f42565b604083527f4142434445464748494a4b4c4d4e4f505152535455565758595a61626364656660208401527f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f60408401528051600281018091116137e257600390046001600160fe1b03811681036137e257614b1d9060021b613fb4565b90602082019080815182019560208701908151925f83525b888110614b775750506003939495965052510680600114614b6557600214614b5b575090565b603d905f19015390565b50603d90815f19820153600119015390565b600360049199969901986001603f8b5182828260121c16870101518453828282600c1c16870101518385015382828260061c1687010151600285015316840101516003820153019497614b35565b9050604051614438602082613f42565b60ff60019116019060ff82116137e257565b614bf760ff602083015116613fb4565b9060e0810151614d1a575b60c0810151614cf6575b60ff6080820151165b60ff614c268160a085015116614bd5565b16811015614c4457806030614c3d60019386613fdc565b5301614c15565b50915b825115614cf15760ff6060840151168015159081614ce0575b50614cb4575b600a835106603001806030116137e257604084018051909160f81b6001600160f81b0319165f1a90614c9b9060ff1685613fdc565b5360ff5f198183511601169052600a8351048352614c47565b6040830160ff8151169081156137e2575f19820160ff169052602e90614cda9084613fdc565b53614c66565b905060ff604085015116145f614c60565b915090565b815115613fed5760306020830153815160011015613fed57602e6021830153614c0c565b81515f1981019081116137e257614d3360259184613fdc565b53614c02565b9060020b9060020b02908160020b9182036137e257565b60405190614d5f604083613f42565b600382526226a4a760e91b6020830152565b60405190614d80604083613f42565b600382526209a82b60eb1b6020830152565b909392938060020b8015613b1557614db08282620d89e71905614d39565b600293840b930b8303614dda57505050509050155f14614dd25761472a614d50565b61472a614d71565b90614de991620d89e805614d39565b60020b8103614e0c57505015159050614e045761472a614d71565b61472a614d50565b8060ff1d8181011890620d89e882116154015763ffffffff91600160801b7001fffcb933bd6fad37aa2d162d1a5940016001831602189190600281166153e5575b600481166153c9575b600881166153ad575b60108116615391575b60208116615375575b60408116615359575b6080811661533d575b6101008116615321575b6102008116615305575b61040081166152e9575b61080081166152cd575b61100081166152b1575b6120008116615295575b6140008116615279575b618000811661525d575b620100008116615241575b620200008116615226575b62040000811661520b575b62080000166151f2575b5f126151ea575b0160201c916151c5575b60ff80911692168083035f8212848212811690858313901516176137e2575f81126151b257925b831515806151a7575b156151955760019283929091111561516957614f6d90614f6085841c614575565b90838060a01b0316614a76565b92161461515b575b614f7f8180615826565b600160601b9190911190811561514c57614f98906158b9565b905b815f815b61513857614fac9150614550565b905f83600560ff85161161510c575b50600a6004818606119404936150fa575b620186a084146150ec575b6150dc575b614fe46144cd565b9181156150605760ff16602b039260ff84116137e25760ff84166007019360ff85116137e25760ff602085019516855260026080850152602b81116137e257600181018091116137e25761504760ff61472a968180941660a08801525116614550565b1660408401525b825260c08201525f60e0820152614be7565b60ff811690600982106150aa5750600319019260ff84116137e25760ff6150988161472a961680602087015260056080870152614550565b1660a08401526004604084015261504e565b61472a9491506150d16150cc60ff926006602088015260056040880152614562565b614bd5565b16606084015261504e565b906150e6906144bc565b90614fdc565b5091600a9004916001614fd7565b92600181018091116137e25792614fcc565b90935060ff61511a84614562565b1690604d82116137e25761513191600a0a90614583565b925f614fbb565b615143600a916144bc565b91049081614f9e565b6151559061586f565b90614f9a565b615164906157aa565b614f75565b6151859061517885841c614575565b90838060a01b0316614583565b921603614f75576151649061570b565b50506001600160a01b03169050614f75565b506012841115614f3f565b600160ff1b81146137e2575f0392614f36565b906001600160a01b03168015613b1557600160c01b046001600160a01b031690614f0f565b5f1904614f05565b6b048a170391f7dc42444e8fa290910260801c90614efe565b6d2216e584f5fa1ea926041bedfe9890920260801c91614ef4565b916e5d6af8dedb81196699c329225ee6040260801c91614ee9565b916f09aa508b5b7a84e1c677de54f3e99bc90260801c91614ede565b916f31be135f97d08fd981231505542fcfa60260801c91614ed3565b916f70d869a156d2a1b890bb3df62baf32f70260801c91614ec9565b916fa9f746462d870fdf8a65dc1f90e061e50260801c91614ebf565b916fd097f3bdfd2022b8845ad8f792aa58250260801c91614eb5565b916fe7159475a2c29b7443b29c7fa6e889d90260801c91614eab565b916ff3392b0822b70005940c7a398e4b70f30260801c91614ea1565b916ff987a7253ac413176f2b074cf7815e540260801c91614e97565b916ffcbe86c7900a88aedcffc83b479aa3a40260801c91614e8d565b916ffe5dee046a99a2a811c461f1969c30530260801c91614e83565b916fff2ea16466c96a3843ec78b326b528610260801c91614e7a565b916fff973b41fa98c081472e6896dfb254c00260801c91614e71565b916fffcb9843d60f6159c9db58835c9266440260801c91614e68565b916fffe5caca7e10e4e61c3624eaa0941cd00260801c91614e5f565b916ffff2e50f5f656932ef12357cf3c7fdcc0260801c91614e56565b916ffff97272373d413259a46990580e213a0260801c91614e4d565b6345c3193d60e11b5f5260045260245ffd5b60ff60f81b16601160f91b8114908115615467575b8115615459575b811561544b575b8115615440575090565b600960f81b14919050565b600d60f81b81149150615436565b600560f91b8114915061542f565b600360fa1b81149150615428565b80156137e2575f190190565b8061548c602a613f65565b9161549a6040519384613f42565b602a83526154a8602a613f65565b6020840190601f1901368237835115613fed5760309053825160011015613fed576078602184015360295b600181116154fb57506154e4575090565b63e22e27eb60e01b5f52600452601460245260445ffd5b90600f8116906010821015613fed57615538916f181899199a1a9b1b9c1cb0b131b232b360811b901a61552e8487613fdc565b5360041c91615475565b6154d3565b600292830b920b8212156155525750505f1990565b60020b121561556057600190565b5f90565b60881c61556f613f80565b90815190815b61557e57505090565b600f8116906010821015613fed575f1983018381116137e2576155bc926f181899199a1a9b1b9c1cb0b131b232b360811b901a9061552e9086613fdc565b9081615575565b6155cb613f80565b90815190815b6155da57505090565b600f8116906010821015613fed575f1983018381116137e257615618926f181899199a1a9b1b9c1cb0b131b232b360811b901a9061552e9086613fdc565b90816155d1565b60ff16600a8110156156465760300160ff81116137e25760f81b6001600160f81b03191690565b60370160ff81116137e25760f81b6001600160f81b03191690565b5f80516020615cb983398151915281525f80516020615db983398151915260208201527f2f2f7777772e77332e6f72672f323030302f737667273e3c636972636c652063604082015262783d2760e81b606082015260630190565b7f707822206865696768743d2232367078222072783d22387078222072793d223881527f7078222066696c6c3d227267626128302c302c302c302e362922202f3e0000006020820152603d0190565b608081901b5f19600160801b83098180821091039080820391827003298b075b4b6a5240945790619b37fd4a1115613c295714615791577f1f514b8ee5362595de309a65c03ce543f7e851e1625ea646b8fe88b81023b92d927003298b075b4b6a5240945790619b37fd4a90600160801b900990828211900360ff1b910360011c170290565b507003298b075b4b6a5240945790619b37fd4a91500490565b7003298b075b4b6a5240945790619b37fd4a8102905f197003298b075b4b6a5240945790619b37fd4a820990828083109203918083039283600160801b1115613c29571461581e57600160801b907003298b075b4b6a5240945790619b37fd4a900990828211900360801b910360801c1790565b505060801c90565b81810291905f1982820991838084109303928084039384600160401b1115613c29571461586657600160401b910990828211900360c01b910360401c1790565b50505060401c90565b620186a08102905f19620186a0820990828083109203918083039283600160801b1115613c29571461581e57600160801b90620186a0900990828211900360801b910360801c1790565b6c47bf19673df52e37f2410011d1602c1b81810291905f1990820990828083109203918083039283600160801b1115613c29571461581e57600160801b906c47bf19673df52e37f2410011d1602c1b900990828211900360801b910360801c1790565b60209060405161592c8382613f42565b5f8152828260020b5f8112615983575b508061594f62ffffff61472a951661492e565b6040519584879551918291018487015e8401908282015f8152815193849201905e01015f815203601f198101835282613f42565b925050505f038060020b9081036137e25761472a90828061594f62ffffff6040516159af604082613f42565b60018152602d60f81b84820152949550505061593c565b604051906159d5604083613f42565b6002825261323760f01b6020830152565b604051906159f5604083613f42565b6002825261323160f01b6020830152565b60405190615a15604083613f42565b6002825261062760f31b6020830152565b60405190615a35604083613f42565b60018252600760fb1b6020830152565b9060020b9060020b01627fffff198112627fffff8213176137e257600290810b0560020b6201e8471981125f14615a9f5750615a7f615a26565b90604051615a8e604082613f42565b60018152603760f81b602082015290565b620124f719811215615ad75750615ab4615a26565b90604051615ac3604082613f42565b600481526331302e3560e01b602082015290565b6161a719811215615b0f5750615aeb615a26565b90604051615afa604082613f42565b600581526431342e323560d81b602082015290565b61138719811215615b415750604051615b29604082613f42565b6002815261031360f41b60208201529061472a615a06565b5f811215615b705750604051615b58604082613f42565b6002815261313160f01b60208201529061472a6159e6565b611388811215615bb95750604051615b89604082613f42565b6002815261313360f01b602082015290604051615ba7604082613f42565b6002815261323360f01b602082015290565b6161a8811215615c025750604051615bd2604082613f42565b6002815261313560f01b602082015290604051615bf0604082613f42565b6002815261323560f01b602082015290565b620124f8811215615c375750615c16615a06565b90604051615c25604082613f42565b6002815261191b60f11b602082015290565b6201e8481315615c5257615c496159e6565b9061472a6159c6565b604051615c60604082613f42565b60028152610c8d60f21b60208201529061472a6159c656fe203c616e696d6174652061646469746976653d2273756d22206174747269627565663d22646174613a696d6167652f7376672b786d6c3b6261736536342c00003c7376672077696474683d2732393027206865696768743d2735303027207669696c793d2227436f7572696572204e6577272c206d6f6e6f73706163652220663c7465787420783d22313270782220793d22313770782220666f6e742d66616d70616e2066696c6c3d2272676261283235352c3235352c3235352c302e3629226f3d22313030252220626567696e3d22307322206475723d223330732220726574654e616d653d2273746172744f6666736574222066726f6d3d2230252220746f6e742d73697a653d2231317078222066696c6c3d227768697465223e3c7473203c67207374796c653d227472616e73666f726d3a7472616e736c61746528326577426f783d2730203020323930203530302720786d6c6e733d27687474703a207374796c653d227472616e73666f726d3a7472616e736c6174652837327078a164736f6c634300081a000a0000000000000000000000008366a39cc670b4001a1121b8f6a443a643e409510000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad734554480000000000000000000000000000000000000000000000000000000000", - "nonce": "0xd", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2", - "transactionType": "CREATE2", - "contractName": "TransparentUpgradeableProxy", - "contractAddress": "0x9639443158e8c5efa35bd45287bf2effd3d8dc06", - "function": null, - "arguments": [ - "0xC1514AdF9caEd7Ab2cf2Dd7B3225761DF61f03A8", - "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52", - "0x" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0xb00cc", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000060a0604052610a47803803806100148161026b565b92833981016060828203126102675761002c82610290565b61003860208401610290565b604084015190936001600160401b03821161026757019180601f8401121561026757825161006d610068826102a4565b61026b565b9381855260208501926020838301011161026757815f926020809301855e85010152813b15610246577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a282511561022e575f809161012d945190845af43d15610226573d9161011e610068846102a4565b9283523d5f602085013e6102bf565b505b604051906104198083016001600160401b0381118482101761021257602092849261060e84396001600160a01b031681520301905ff080156102075760018060a01b0316806080525f80516020610a27833981519152547f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6040805160018060a01b0384168152846020820152a181156101f4576001600160a01b031916175f80516020610a27833981519152556040516102f0908161031e82396080518160070152f35b633173bdd160e11b5f525f60045260245ffd5b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b6060916102bf565b505050341561012f5763b398979f60e01b5f5260045ffd5b50634c9c8ce360e01b5f9081526001600160a01b0391909116600452602490fd5b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761021257604052565b51906001600160a01b038216820361026757565b6001600160401b03811161021257601f01601f191660200190565b906102e357508051156102d457805190602001fd5b63d6bda27560e01b5f5260045ffd5b81511580610314575b6102f4575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b156102ec56fe6080604052337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031603610066575f356001600160e01b03191663278f794360e11b1461005c576334ad5dbb60e21b5f5260045ffd5b61006461010a565b005b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc545f9081906001600160a01b0316368280378136915af43d5f803e156100ab573d5ff35b3d5ffd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff8111838210176100e957604052565b6100af565b67ffffffffffffffff81116100e957601f01601f191660200190565b36600411610193576040366003190112610193576004356001600160a01b03811690819003610193576024359067ffffffffffffffff8211610193573660238301121561019357816004013590610168610163836100ee565b6100c3565b918083523660248286010111610193576020815f92602461019197018387013784010152610197565b565b5f80fd5b90813b1561022b577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a2805115610213576102109161024c565b50565b50503461021c57565b63b398979f60e01b5f5260045ffd5b50634c9c8ce360e01b5f9081526001600160a01b0391909116600452602490fd5b5f8061027e93602081519101845af43d15610281573d9161026f610163846100ee565b9283523d5f602085013e610285565b90565b6060915b906102a9575080511561029a57805190602001fd5b63d6bda27560e01b5f5260045ffd5b815115806102da575b6102ba575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b156102b256fea164736f6c634300081a000a60803460b857601f61041938819003918201601f19168301916001600160401b0383118484101760bc5780849260209460405283398101031260b857516001600160a01b0381169081900360b857801560a5575f80546001600160a01b031981168317825560405192916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a361034890816100d18239f35b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f803560e01c8063715018a6146102785780638da5cb5b146102515780639623609d1461012e578063ad3cb1cc146100e15763f2fde38b14610051575f80fd5b346100de5760203660031901126100de576004356001600160a01b038116908190036100da5761007f610315565b80156100c65781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b631e4fbdf760e01b82526004829052602482fd5b5080fd5b80fd5b50346100de57806003193601126100de575061012a6040516101046040826102cf565b60058152640352e302e360dc1b60208201526040519182916020835260208301906102f1565b0390f35b506060366003190112610239576004356001600160a01b03811690819003610239576024356001600160a01b038116908190036102395760443567ffffffffffffffff8111610239573660238201121561023957806004013567ffffffffffffffff811161023d57604051916101ae601f8301601f1916602001846102cf565b818352366024838301011161023957815f9260246020930183860137830101526101d6610315565b823b156102395761020c925f9260405180958194829363278f794360e11b845260048401526040602484015260448301906102f1565b039134905af1801561022e57610220575080f35b61022c91505f906102cf565b005b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b34610239575f366003190112610239575f546040516001600160a01b039091168152602090f35b34610239575f36600319011261023957610290610315565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b90601f8019910116810190811067ffffffffffffffff82111761023d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b5f546001600160a01b0316330361032857565b63118cdaa760e01b5f523360045260245ffdfea164736f6c634300081a000ab53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103000000000000000000000000c1514adf9caed7ab2cf2dd7b3225761df61f03a80000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a5200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000", - "nonce": "0xe", - "chainId": "0x1237" - }, - "additionalContracts": [ - { - "transactionType": "CREATE", - "contractName": "ProxyAdmin", - "address": "0x525b4bd46d3a33f16ac815b4a303b3110fb9d10b", - "initCode": "0x60803460b857601f61041938819003918201601f19168301916001600160401b0383118484101760bc5780849260209460405283398101031260b857516001600160a01b0381169081900360b857801560a5575f80546001600160a01b031981168317825560405192916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a361034890816100d18239f35b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f803560e01c8063715018a6146102785780638da5cb5b146102515780639623609d1461012e578063ad3cb1cc146100e15763f2fde38b14610051575f80fd5b346100de5760203660031901126100de576004356001600160a01b038116908190036100da5761007f610315565b80156100c65781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b631e4fbdf760e01b82526004829052602482fd5b5080fd5b80fd5b50346100de57806003193601126100de575061012a6040516101046040826102cf565b60058152640352e302e360dc1b60208201526040519182916020835260208301906102f1565b0390f35b506060366003190112610239576004356001600160a01b03811690819003610239576024356001600160a01b038116908190036102395760443567ffffffffffffffff8111610239573660238201121561023957806004013567ffffffffffffffff811161023d57604051916101ae601f8301601f1916602001846102cf565b818352366024838301011161023957815f9260246020930183860137830101526101d6610315565b823b156102395761020c925f9260405180958194829363278f794360e11b845260048401526040602484015260448301906102f1565b039134905af1801561022e57610220575080f35b61022c91505f906102cf565b005b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b34610239575f366003190112610239575f546040516001600160a01b039091168152602090f35b34610239575f36600319011261023957610290610315565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b90601f8019910116810190811067ffffffffffffffff82111761023d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b5f546001600160a01b0316330361032857565b63118cdaa760e01b5f523360045260245ffdfea164736f6c634300081a000a0000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a52" - } - ], - "isFixedGasLimit": false - }, - { - "hash": "0x228c18ada6cb46b4fbcc18f4ec1519953415393e256fa8349aafbd5a2db037c8", - "transactionType": "CREATE2", - "contractName": "PositionManager", - "contractAddress": "0x58daec3116aae6d93017baaea7749052e8a04fa7", - "function": null, - "arguments": [ - "0x8366a39CC670B4001A1121B8F6A443A643e40951", - "0x000000000022D473030F116dDEE9F6B43aC78BA3", - "300000", - "0x9639443158E8C5efa35Bd45287bf2EFfd3D8dC06", - "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x758475", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000061018080604052346105365760a0816162a38038038091610020828561053a565b8339810103126105365780516001600160a01b03811681036105365760208201516001600160a01b03811681036105365760408301516060840151936001600160a01b03851685036105365760800151926001600160a01b03841684036105365760405161008f60408261053a565b6018815260208101907f556e697377617020763420506f736974696f6e73204e4654000000000000000082526040516100c960408261053a565b600b81526a554e492d56342d504f534d60a81b602082015281516001600160401b03811161044a575f54600181811c9116801561052c575b602082101461042c57601f81116104ca575b50806020601f8211600114610469575f9161045e575b508160011b915f199060031b1c1916175f555b8051906001600160401b03821161044a5760015490600182811c92168015610440575b602083101461042c5781601f8493116103be575b50602090601f8311600114610358575f9261034d575b50508160011b915f199060031b1c1916176001555b5190208060c0524660a05260405160208101917f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86683526040820152466060820152306080820152608081526101f460a08261053a565b51902060805260e052610100526101205261014052600160085561016052604051615d45908161055e8239608051816124d5015260a051816124af015260c05181612524015260e051818181610af601528181610eb501528181611174015281816118c001528181611c3c01528181611cd1015281816120a1015281816121980152818161295801528181612a2c01528181612f1b01528181613d4601528181613e3901528181613edc01528181613ff30152818161431b0152818161457401528181614ae901528181614c6601528181614de401528181614ec901528181614f59015261576f01526101005181818161144001526131fb01526101205181818161039c01528181610a0e01528181610dc90152614efa015261014051818181611482015281816129ca01528181613a4201528181613a9e01528181613bc20152613c4b0152610160518181816116350152611fab0152f35b015190505f80610189565b60015f9081528281209350601f198516905b8181106103a6575090846001959493921061038e575b505050811b0160015561019e565b01515f1960f88460031b161c191690555f8080610380565b9293602060018192878601518155019501930161036a565b60015f529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f840160051c81019160208510610422575b90601f859493920160051c01905b8181106104145750610173565b5f8155849350600101610407565b90915081906103f9565b634e487b7160e01b5f52602260045260245ffd5b91607f169161015f565b634e487b7160e01b5f52604160045260245ffd5b90508301515f610129565b5f8080528181209250601f198416905b8181106104b25750908360019493921061049a575b5050811b015f5561013c565b8501515f1960f88460031b161c191690555f8061048e565b9192602060018192868a015181550194019201610479565b5f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563601f830160051c81019160208410610522575b601f0160051c01905b8181106105175750610113565b5f815560010161050a565b9091508190610501565b90607f1690610101565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761044a5760405256fe60806040526004361015610022575b3615610018575f80fd5b6100206129c0565b005b5f3560e01c80622a3e3a1461029057806301ffc9a71461028b57806305c1ee201461028657806306fdde0314610281578063081812fc1461027c578063095ea7b3146102775780630f5730f11461027257806312261ee71461026d57806316a24131146102685780631efeed331461026357806323b872dd1461025e5780632b67b570146102595780632b9261de146102545780633644e5151461024f5780633aea60f01461024a57806342842e0e146102455780634767565f146102405780634aa4a4fc1461023b5780634afe393c14610236578063502e1a16146102315780635a9d7a681461022c5780636352211e1461022757806370a082311461022257806375794a3c1461021d5780637ba03aad1461021857806386b6be7d1461021357806389097a6a1461020e57806391dd73461461020957806395d89b4114610204578063a22cb465146101ff578063ac9650d8146101fa578063ad0b27fb146101f5578063b88d4fde146101f0578063c87b56dd146101eb578063d737d0c7146101e6578063dc4c90d3146101e1578063dd46508f146101dc578063e985e9c5146101d75763f70204050361000e576122ae565b612248565b6120c5565b612082565b61203d565b611f56565b611c7c565b611c28565b611b2b565b611a7b565b6119c6565b611884565b61185a565b6117be565b61174f565b611732565b611688565b611659565b611616565b6115cc565b6114d7565b611463565b611429565b611161565b611088565b611057565b610e72565b610d58565b610ae2565b610a65565b610a32565b6109ef565b6108e0565b610839565b610806565b6106ef565b61063e565b61056c565b61033c565b6001600160a01b038116036102a657565b5f80fd5b35906102b582610295565b565b9181601f840112156102a65782359167ffffffffffffffff83116102a657602083818601950101116102a657565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b9060206103399281815201906102e5565b90565b60606003193601126102a65760043561035481610295565b6024359067ffffffffffffffff82116102a6578136039160606003198401126102a65760443567ffffffffffffffff81116102a6576103979036906004016102b7565b6060947f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031693909290843b156102a6576001600160a01b03604051967f2a2d80d10000000000000000000000000000000000000000000000000000000088521660048701526060602487015260c48601937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd826004013591018112156102a65781016024600482013591019467ffffffffffffffff82116102a6578160071b360386136102a65760606064890152819052869460e48601949392915f5b81811061051a575050506104cb5f9694869488946044856104b36104a360248b99016102aa565b6001600160a01b03166084890152565b013560a48601526003198584030160448601526123c0565b03925af19081610500575b506104f757506104f36104e7612466565b60405191829182610328565b0390f35b6104f3906104e7565b8061050e5f610514936106ae565b80610656565b5f6104d6565b91965091929394608080826105316001948b612361565b01970191019188969594939261047c565b7fffffffff000000000000000000000000000000000000000000000000000000008116036102a657565b346102a65760206003193601126102a65760207fffffffff000000000000000000000000000000000000000000000000000000006004356105ac81610542565b167f01ffc9a7000000000000000000000000000000000000000000000000000000008114908115610614575b81156105ea575b506040519015158152f35b7f5b5e139f000000000000000000000000000000000000000000000000000000009150145f6105df565b7f80ac58cd00000000000000000000000000000000000000000000000000000000811491506105d8565b60206003193601126102a65761002060043533612a54565b5f9103126102a657565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60a0810190811067ffffffffffffffff8211176106a957604052565b610660565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176106a957604052565b346102a6575f6003193601126102a6576040515f80548060011c90600181169081156107fc575b6020831082146107cf5782855260208501919081156107985750600114610748575b6104f3846104e7818603826106ae565b5f8080529250907f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b818410610784575050016104e782610738565b805484840152602090930192600101610771565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682525090151560051b0190506104e782610738565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691610716565b346102a65760206003193601126102a6576004355f52600460205260206001600160a01b0360405f205416604051908152f35b346102a65760406003193601126102a65760043561085681610295565b602435805f5260026020526001600160a01b0360405f2054169182331415806108af575b6108875761002092612ab5565b7f82b42900000000000000000000000000000000000000000000000000000000005f5260045ffd5b50825f52600560205260ff6108d83360405f20906001600160a01b03165f5260205260405f2090565b54161561087a565b60a06003193601126102a6576004356108f881610295565b602435604435916064359260843567ffffffffffffffff81116102a6576109239036906004016102b7565b948242116109c7576109bc856109c293610020986109b6885f8099868252600260205281896001600160a01b036040832054169c8d9981604051977f49ecf333e5b8c95c40fdafc95c1ad136e8914a8fb55e9dc8bb01eaa83a2df9ad89526001600160a01b0360208a01911681526040890192835260608901948552608089019687528160a08a20995252525252612b2c565b91612be5565b82612a54565b612ab5565b7f5a9165ff000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102a6575f6003193601126102a65760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346102a65760206003193601126102a6576004355f52600760205260206001600160a01b0360405f205416604051908152f35b346102a65760206003193601126102a6576020610a9c600435610a8781612669565b919082851c60020b9260081c60020b91612e68565b6fffffffffffffffffffffffffffffffff60405191168152f35b60031960609101126102a657600435610ace81610295565b90602435610adb81610295565b9060443590565b346102a657610af036610ab6565b91610b1a7f0000000000000000000000000000000000000000000000000000000000000000612f9c565b610d30578291610c41610b54610b48610b3b865f52600260205260405f2090565b546001600160a01b031690565b6001600160a01b031690565b91610b6a6001600160a01b03851693841461302f565b610bb46001600160a01b03821694610b83861515613094565b8433148015610cf2575b8015610ccd575b610b9d906130f9565b6001600160a01b03165f52600360205260405f2090565b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019055610bf5816001600160a01b03165f52600360205260405f2090565b80546001019055610c0e855f52600260205260405f2090565b906001600160a01b03167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b610c7e610c56845f52600460205260405f2090565b80547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4610cbe610cb7825f52600960205260405f2090565b5460ff1690565b610cc457005b6100209061315e565b50610b9d610ce9610b48610b3b8a5f52600460205260405f2090565b33149050610b94565b50610d2b610cb733610d15846001600160a01b03165f52600560205260405f2090565b906001600160a01b03165f5260205260405f2090565b610b8d565b7fd4b05fe0000000000000000000000000000000000000000000000000000000005f5260045ffd5b6101006003193601126102a657600435610d7181610295565b60c07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc3601126102a65760e43567ffffffffffffffff81116102a657610dbb9036906004016102b7565b916060926001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b156102a6576001600160a01b035f80946104cb604051978896879586947f2b67b570000000000000000000000000000000000000000000000000000000008652166004850152610e3d602485016122f6565b6001600160a01b0360a435610e5181610295565b1660a485015260c43560c485015261010060e48501526101048401916123c0565b60606003193601126102a657602435600435610e8d82610295565b60443567ffffffffffffffff81116102a657610ead9036906004016102b7565b610ed99391937f0000000000000000000000000000000000000000000000000000000000000000612f9c565b610d3057610ee783336132b6565b1561102b576001600160a01b03610f09610b3b855f52600760205260405f2090565b1680610fef57505f83815260096020526040902080546001179055610fbf90610fbb90610fb56001600160a01b03851696610f5088610c0e895f52600760205260405f2090565b610f896040519384927f8d57f6b20000000000000000000000000000000000000000000000000000000060208501528960248501612495565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081018352826106ae565b8361334b565b1590565b610fea57507f9709492381f90bdc5938bb4e3b8e35b7e0eac8af058619e27191c5a40ce79fa95f80a3005b61338c565b7f25fbd8be000000000000000000000000000000000000000000000000000000005f5260048490526001600160a01b031660245260445ffd5b5ffd5b7f0ca968d8000000000000000000000000000000000000000000000000000000005f523360045260245ffd5b346102a6575f6003193601126102a65760206110716124ac565b604051908152f35b6044359081151582036102a657565b60c06003193601126102a6576004356110a081610295565b6024356110ac81610295565b6110b4611079565b906064359260843560a43567ffffffffffffffff81116102a6576110dc9036906004016102b7565b8692919242116109c7578361115c936109bc926109b6885f6100209c8189818f81604051977f6673cb397ee2a50b6b8401653d3638b4ac8b3db9c28aa6870ffceb7574ec2f7689526001600160a01b0360208a0191168152600160408a019316835260608901948552608089019687528160a08a20995252525252612b2c565b6136b8565b346102a65761116f36610ab6565b6111987f0000000000000000000000000000000000000000000000000000000000000000612f9c565b610d30576111b4610b48610b3b835f52600260205260405f2090565b916111ca6001600160a01b03851693841461302f565b816001600160a01b03821680946111e2821515613094565b8033148015611401575b80156113dc575b6111fc906130f9565b611217876001600160a01b03165f52600360205260405f2090565b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019055611258846001600160a01b03165f52600360205260405f2090565b8054600101905561127584610c0e855f52600260205260405f2090565b61128a610c56845f52600460205260405f2090565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a46112c3610cb7835f52600960205260405f2090565b6113ce575b3b159182156112db575b6100208361257e565b6040517f150b7a020000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b039490941660248501526044840191909152608060648401525f6084840181905260209250839160a49183915af180156113c9577fffffffff000000000000000000000000000000000000000000000000000000007f150b7a020000000000000000000000000000000000000000000000000000000091610020935f9161139a575b5016145f806112d2565b6113bc915060203d6020116113c2575b6113b481836106ae565b810190612569565b5f611390565b503d6113aa565b6123fe565b6113d78261315e565b6112c8565b506111fc6113f8610b48610b3b865f52600460205260405f2090565b331490506111f3565b50611424610cb733610d158a6001600160a01b03165f52600560205260405f2090565b6111ec565b346102a6575f6003193601126102a65760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346102a6575f6003193601126102a65760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b9181601f840112156102a65782359167ffffffffffffffff83116102a6576020808501948460051b0101116102a657565b60406003193601126102a65760043567ffffffffffffffff81116102a6576115039036906004016102b7565b60243567ffffffffffffffff81116102a6576115239036906004016114a6565b916001600160a01b037f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c166115a45761157f93337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d61376b565b5f7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d005b7f6f5ffb7e000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102a65760406003193601126102a6576004356115e981610295565b6001600160a01b0360243591165f52600660205260405f20905f52602052602060405f2054604051908152f35b346102a6575f6003193601126102a65760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346102a65760206003193601126102a6576020611677600435612648565b6001600160a01b0360405191168152f35b346102a65760206003193601126102a6576001600160a01b036004356116ad81610295565b1680156116d4575f5260036020526104f360405f2054604051918291829190602083019252565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f4144445245535300000000000000000000000000000000000000006044820152fd5b346102a6575f6003193601126102a6576020600854604051908152f35b346102a65760206003193601126102a65760c061176d600435612669565b6117b760405180936001600160a01b036080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b60a0820152f35b346102a65760206003193601126102a6576004357fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000081168091036102a6575f908152600a60209081526040918290208054600182015460029283015485516001600160a01b0393841681528383169581019590955260a082811c62ffffff169686019690965260b89190911c90920b6060840152166080820152f35b346102a65760206003193601126102a6576004355f526009602052602060405f2054604051908152f35b346102a65760206003193601126102a65760043567ffffffffffffffff81116102a6576118b59036906004016102b7565b906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016330361199e5760408135189063ffffffff60408201351663ffffffe0601f8201169260608401602084013518179282019260608401359483641fffffffe08760051b16805f905b8881831061196f5790506080929150010191011017611962576060608063ffffffff61195796169401920161376b565b6104f36104e7612452565b633b99b53d5f526004601cfd5b8294509263ffffffe0601f60808060209687969801013599848b1817998d010135011601019201869291611927565b7fae18210a000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102a6575f6003193601126102a6576040515f6001548060011c9060018116908115611a71575b6020831082146107cf5782855260208501919081156107985750600114611a1f576104f3846104e7818603826106ae565b60015f9081529250907fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b818410611a5d575050016104e782610738565b805484840152602090930192600101611a4a565b91607f16916119ee565b346102a65760406003193601126102a657600435611a9881610295565b60243580151581036102a65761002091336136b8565b602081016020825282518091526040820191602060408360051b8301019401925f915b838310611ae057505050505090565b9091929394602080611b1c837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0866001960301875289516102e5565b97019301930191939290611ad1565b60206003193601126102a65760043567ffffffffffffffff81116102a657611b579036906004016114a6565b90611b6182612747565b91611b6f60405193846106ae565b8083527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0611b9c82612747565b015f5b818110611c175750505f5b818110611bbf57604051806104f38682611aae565b5f80611bcc83858761278c565b90611bdc604051809381936127f1565b0390305af4611be9612466565b9015611c0f5790600191611bfd82876127fe565b52611c0881866127fe565b5001611baa565b602081519101fd5b806060602080938801015201611b9f565b60206003193601126102a657600435611c607f0000000000000000000000000000000000000000000000000000000000000000612f9c565b610d3057611c6e81336132b6565b1561102b576100209061315e565b346102a65760806003193601126102a657600435611c9981610295565b60243590611ca682610295565b60443560643567ffffffffffffffff81116102a657611cc99036906004016102b7565b939091611cf57f0000000000000000000000000000000000000000000000000000000000000000612f9c565b610d3057611d11610b48610b3b835f52600260205260405f2090565b91611d276001600160a01b03861693841461302f565b816001600160a01b0382168094611d3f821515613094565b8033148015611f2e575b8015611f09575b611d59906130f9565b611d74886001600160a01b03165f52600360205260405f2090565b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019055611db5846001600160a01b03165f52600360205260405f2090565b80546001019055611dd284610c0e855f52600260205260405f2090565b611de7610c56845f52600460205260405f2090565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4611e20610cb7835f52600960205260405f2090565b611efb575b3b15938415611e38575b6100208561257e565b602094505f90611e78604051978896879586947f150b7a020000000000000000000000000000000000000000000000000000000086523360048701612812565b03925af180156113c9577fffffffff000000000000000000000000000000000000000000000000000000007f150b7a020000000000000000000000000000000000000000000000000000000091610020935f91611edc575b5016145f808080611e2f565b611ef5915060203d6020116113c2576113b481836106ae565b5f611ed0565b611f048261315e565b611e25565b50611d59611f25610b48610b3b865f52600460205260405f2090565b33149050611d50565b50611f51610cb733610d158b6001600160a01b03165f52600560205260405f2090565b611d49565b346102a65760206003193601126102a657600435604051907fe9dc637500000000000000000000000000000000000000000000000000000000825230600483015260248201525f816044816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa80156113c9575f90611fea575b6104f39060405191829182610328565b503d805f833e611ffa81836106ae565b8101906020818303126102a65780519067ffffffffffffffff82116102a6570181601f820112156102a6576104f39181602061203893519101612840565b611fda565b346102a6575f6003193601126102a65760207f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c6001600160a01b0360405191168152f35b346102a6575f6003193601126102a65760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b60406003193601126102a65760043567ffffffffffffffff81116102a6576120f19036906004016102b7565b6024356001600160a01b037f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c166115a457337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d80421161221d576040517f48c89491000000000000000000000000000000000000000000000000000000008152602060048201525f818061218b6024820187896123c0565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af180156113c9576121cd575b610020613746565b3d805f833e6121dc81836106ae565b8101906020818303126102a65780519067ffffffffffffffff82116102a657019080601f830112156102a657815161221692602001612840565b50806121c5565b7fbfb22adf000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b346102a65760406003193601126102a657602060ff6122a260043561226c81610295565b6001600160a01b036024359161228183610295565b165f526005845260405f20906001600160a01b03165f5260205260405f2090565b54166040519015158152f35b600319360160c081126102a65760a0136102a65760206122d860a4356122d381610295565b6128a3565b6040519060020b8152f35b359065ffffffffffff821682036102a657565b6001600160a01b0360243561230a81610295565b1681526001600160a01b0360443561232181610295565b16602082015260643565ffffffffffff81168091036102a657604082015260843565ffffffffffff811681036102a65765ffffffffffff60609116910152565b65ffffffffffff6123ba606080936001600160a01b03813561238281610295565b1686526001600160a01b03602082013561239b81610295565b166020870152836123ae604083016122e3565b166040870152016122e3565b16910152565b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe093818652868601375f8582860101520116010190565b6040513d5f823e3d90fd5b604051906102b56080836106ae565b67ffffffffffffffff81116106a957601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b604051906124616020836106ae565b5f8252565b3d15612490573d9061247782612418565b9161248560405193846106ae565b82523d5f602084013e565b606090565b6040906103399492815281602082015201916123c0565b467f0000000000000000000000000000000000000000000000000000000000000000036124f7577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86682527f000000000000000000000000000000000000000000000000000000000000000060408201524660608201523060808201526080815261256360a0826106ae565b51902090565b908160209103126102a6575161033981610542565b1561258557565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f554e534146455f524543495049454e54000000000000000000000000000000006044820152fd5b156125ea57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e4f545f4d494e544544000000000000000000000000000000000000000000006044820152fd5b5f5260026020526001600160a01b0360405f205416906102b58215156125e3565b5f60806040516126788161068d565b82815282602082015282604082015282606082015201525f52600960205260405f2054807fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000165f52600a60205260405f206127446127346002604051936126de8561068d565b6001600160a01b03815416855261272661271c60018301546001600160a01b038116602089015262ffffff8160a01c16604089015260b81c60020b90565b60020b6060870152565b01546001600160a01b031690565b6001600160a01b03166080830152565b91565b67ffffffffffffffff81116106a95760051b60200190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b91908110156127ec5760051b810135907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1813603018212156102a657019081359167ffffffffffffffff83116102a65760200182360381136102a6579190565b61275f565b908092918237015f815290565b80518210156127ec5760209160051b010190565b90926001600160a01b03608093816103399896168452166020830152604082015281606082015201916123c0565b92919261284c82612418565b9161285a60405193846106ae565b8294818452818301116102a6578281602093845f96015e010152565b8060020b036102a657565b908160209103126102a6575161033981612876565b62ffffff8116036102a657565b6001600160a01b03604051917f6276cbbe000000000000000000000000000000000000000000000000000000008352816004356128df81610295565b166004840152816024356128f281610295565b16602484015262ffffff60443561290881612896565b16604484015260643561291a81612876565b60020b606484015261294160843561293181610295565b6001600160a01b03166084850152565b1660a482015260208160c4815f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af15f918161298f575b506103395750627fffff90565b6129b291925060203d6020116129b9575b6129aa81836106ae565b810190612881565b905f612982565b503d6129a0565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633141580612a21575b6129f957565b7f38bbd576000000000000000000000000000000000000000000000000000000005f5260045ffd5b506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163314156129f3565b906001600160a01b03600160ff83161b92165f52600660205260405f209060081c5f5260205260405f20818154188091551615612a8d57565b7f1fb09b80000000000000000000000000000000000000000000000000000000005f5260045ffd5b906001600160a01b038091845f526004602052612b038160405f20906001600160a01b03167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b1691167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4565b90612b356124ac565b91604051927f19010000000000000000000000000000000000000000000000000000000000008452600284015260228301525f604060428420938281528260208201520152565b91908260409103126102a6576020823592013590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b60ff601b9116019060ff8211612bd157565b612b92565b90604010156127ec5760400190565b90833b612d7a5760418103612cee5790602092612c6e83612c46612c40612c1a612c125f98880188612b7c565b949097612bd6565b357fff000000000000000000000000000000000000000000000000000000000000001690565b60f81c90565b935b604051948594859094939260ff6060936080840197845216602083015260408201520152565b838052039060015afa156113c9576001600160a01b035f5116908115612cc6576001600160a01b031603612c9e57565b7f815e1d64000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f8baa579f000000000000000000000000000000000000000000000000000000005f5260045ffd5b9060408203612d5257602092612d0b825f94612c6e940190612b7c565b929092612d4c612d47612d417f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84169360ff1c90565b60ff1690565b612bbf565b93612c48565b7f4be6321b000000000000000000000000000000000000000000000000000000005f5260045ffd5b9092612dc1936001600160a01b03602094604051968795869485937f1626ba7e00000000000000000000000000000000000000000000000000000000855260048501612495565b0392165afa9081156113c9577f1626ba7e00000000000000000000000000000000000000000000000000000000917fffffffff00000000000000000000000000000000000000000000000000000000915f91612e49575b501603612e2157565b7fb0669cbc000000000000000000000000000000000000000000000000000000005f5260045ffd5b612e62915060203d6020116113c2576113b481836106ae565b5f612e18565b9290612ea39260a092604051956026870152600686015260038501523084525f603a600c860120948160408201528160208201525220614bbf565b60068101809111612bd15760408051602081810194855291810192909252612f0f929091612ed48160608101610f89565b519020604051809381927f1e2eaeaf000000000000000000000000000000000000000000000000000000008352600483019190602083019252565b03816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa80156113c9576fffffffffffffffffffffffffffffffff915f91612f6057501690565b612f82915060203d602011612f86575b612f7a81836106ae565b810190612f8d565b1690565b503d612f70565b908160209103126102a6575190565b60206001600160a01b03916024604051809481937ff135baaa0000000000000000000000000000000000000000000000000000000083527fc090fc4683624cfc3884e9d8de5eca132f2d0ec062aff75d43c0465d5ceeab236004840152165afa9081156113c9575f91613010575b50151590565b613029915060203d602011612f8657612f7a81836106ae565b5f61300a565b1561303657565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f57524f4e475f46524f4d000000000000000000000000000000000000000000006044820152fd5b1561309b57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f494e56414c49445f524543495049454e540000000000000000000000000000006044820152fd5b1561310057565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a45440000000000000000000000000000000000006044820152fd5b6001600160a01b0361317b610b3b835f52600760205260405f2090565b1690811561328e575f81815260096020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556131cb610c56825f52600760205260405f2090565b813b6131f8575b7fa0ebb1de82db929a9153472f37d3a66dbede4436258311ad0f52a35a2c91d1505f80a3565b5a7f000000000000000000000000000000000000000000000000000000000000000080911061328957823b156102a6575f60405180927faf45dd140000000000000000000000000000000000000000000000000000000082528183878261326789600483019190602083019252565b0393f1613275575b506131d2565b8061050e5f613283936106ae565b5f61326f565b6137d4565b7f237e6c28000000000000000000000000000000000000000000000000000000005f5260045ffd5b6001600160a01b036132c783612648565b16916001600160a01b03821692831492831561332a575b5082156132ea57505090565b60ff9250906001600160a01b0361330361332593612648565b165f52600560205260405f20906001600160a01b03165f5260205260405f2090565b541690565b908093505f5260046020526001600160a01b0360405f20541614915f6132de565b803b1561336457815f92918360208194519301915af190565b7f7c402b21000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d01166001600160a01b03604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301527f8d57f6b2000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7f81ea5e9e0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d01166001600160a01b03604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301527fa9059cbb000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff27f64e40000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d01166001600160a01b03604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301525f6024830152608060448301528060a00160648301523d60848301523d5f60a484013e7ff4b3b1bc0000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d01166001600160a01b03604051927f90bfb8650000000000000000000000000000000000000000000000000000000084521660048301527fb1a9116f000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7face944810000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b60206001600160a01b03807f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31931693845f526005835261370c8160405f20906001600160a01b03165f5260205260405f2090565b951515957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff88161790556040519586521693a3565b5f7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d565b909291938284036137ac575f5b848110156137a45760019061379e81850161379483888b61278c565b913560f81c6137fc565b01613778565b509350505050565b7faaad13f7000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fed43c3a6000000000000000000000000000000000000000000000000000000005f5260045ffd5b909190600b8110156139175780613827575061381b906102b5926149cc565b94939093929192614b63565b60048103613846575061383d906102b592614185565b93929092614a79565b60018103613868575061385c906102b5926149cc565b94939093929192614a0e565b600281036138975750613881613891916102b5936145df565b9890979691959295949394613cc2565b9561478a565b600581036138c357506138b06138bd916102b593614481565b9790969591949294613cc2565b94614543565b91600383146138ff57505061102891505b7f5cda29d7000000000000000000000000000000000000000000000000000000005f52600452602490565b6102b592509061390e91614185565b939290926141c1565b600d8103613933575061392d906102b592613caf565b90614147565b6011810361395b575061394c613955916102b593613e9e565b92909192613cc2565b9161412c565b600b810361398f5750613989613977613983926102b594613e9e565b93829493929193613f73565b92613fa1565b91613fe2565b600e81036139c157506139b56139ab6139bb926102b594613e9e565b9282949291613cc2565b92613eb6565b91613eca565b601281036139dc57506139d7906102b592613ac8565b613e32565b601381036139f857506139f2906102b592613caf565b90613d25565b60148103613a1f5750613a11613a19916102b593613caf565b919091613cc2565b90613d07565b60158103613a6d5750613a38613a68916102b593613ac8565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690613b54565b613c39565b9160168314613a8257505061102891506138d4565b6102b59250613ac391613a9491613ac8565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016613ad4565b613bb0565b90602011611962573590565b613adf903090614bdf565b7f80000000000000000000000000000000000000000000000000000000000000008214613b4f578115613b3e575b8111613b165790565b7ff4d678b8000000000000000000000000000000000000000000000000000000005f5260045ffd5b9050613b495f614c5f565b90613b0d565b905090565b90613b5f305f614bdf565b907f80000000000000000000000000000000000000000000000000000000000000008314613baa578215613b98575b508111613b165790565b613ba3919250614c5f565b905f613b8e565b50905090565b80613bb85750565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690813b156102a6575f916024839260405194859384927f2e1a7d4d00000000000000000000000000000000000000000000000000000000845260048401525af180156113c957613c2f5750565b5f6102b5916106ae565b80613c415750565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b156102a6575f906004604051809481937fd0e30db00000000000000000000000000000000000000000000000000000000083525af180156113c957613c2f5750565b9190604011611962576020823592013590565b6001600160a01b03811660018103613cfb5750507f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c90565b60020361033957503090565b90613d1182614cd1565b9081613d1c57505050565b6102b592614d37565b90613d2f82614ddd565b908115613e01578111613dd5576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b156102a6575f9283926040519485809481937f80f0b44c0000000000000000000000000000000000000000000000000000000083526020600484016001600160a01b036040820194168152015203925af180156113c957613dc75750565b8061050e5f6102b5936106ae565b6102b5917f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c90613eca565b505050565b7f80000000000000000000000000000000000000000000000000000000000000008114612bd1575f0390565b613e5d81307f0000000000000000000000000000000000000000000000000000000000000000614e49565b907f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c5f831215613e94576139896102b593613e06565b6102b59291613eca565b90606011611962578035916040602083013592013590565b9081613ec6576103399150614ddd565b5090565b90918015613e01576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b156102a6575f92836064926001600160a01b03948560405198899788967f0b0d9c0900000000000000000000000000000000000000000000000000000000885216600487015216602485015260448401525af180156113c957613f5e5750565b80613f6a5f80936106ae565b8003126102a657565b15613f9d577f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c90565b3090565b907f80000000000000000000000000000000000000000000000000000000000000008203613fd3576103399150614cd1565b81613ec6576103399150614c5f565b908215613e01576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b156102a6576040517fa58411940000000000000000000000000000000000000000000000000000000081526001600160a01b03821660048201525f8160248183885af180156113c957614118575b506001600160a01b0381166140ce5750506020906004604051809481937f11da60b40000000000000000000000000000000000000000000000000000000083525af180156113c9576140b35750565b6140cb9060203d602011612f8657612f7a81836106ae565b50565b5f93602093926140dd92614ea7565b6004604051809481937f11da60b40000000000000000000000000000000000000000000000000000000083525af180156113c9576140b35750565b8061050e5f614126936106ae565b5f614064565b9161413e6102b593826139bb82614ddd565b6139bb82614ddd565b906102b59161417c7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c918261398982614c5f565b61398982614c5f565b919082359260208101359260408201359263ffffffff60608401351683019063ffffffff82351693602080840193860101910110611962579190565b939290927f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c6141f186826132b6565b156143ae575061420085612669565b9290938360081c60020b958460201c60020b9661423761422289838a8d612e68565b6fffffffffffffffffffffffffffffffff1690565b966142418a612648565b955f6142558c5f52600960205260405f2090565b5561425f8b614faa565b5f9989614291575b505050505050508160ff1661427e575b5050505050565b614287946151b4565b5f80808080614277565b60409495969a509061430e916142d16142b16142ac8d61507e565b613e06565b916142c76142bd612409565b97889060020b9052565b60020b6020870152565b858501528b606085015284519a8b9485947f5a6bcfda000000000000000000000000000000000000000000000000000000008652600486016143f9565b03815f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af180156113c9575f965f9161436e575b509061435d826143629493986150b0565b6150ed565b5f808080808080614267565b61435d97506143629392915061439b9060403d6040116143a7575b61439381836106ae565b8101906143e3565b9790979192935061434c565b503d614389565b6001600160a01b03907f0ca968d8000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b91908260409103126102a6576020825192015190565b6060610339959361444a83610140956001600160a01b036080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b805160020b60a0840152602081015160020b60c0840152604081015160e084015201516101008201528161012082015201916123c0565b91908260a08101359260c08201359260e083013592610100810135926101208201359263ffffffff6101408401351683019063ffffffff82351693602080840193860101910110611962579190565b91908260a09103126102a6576040516144e88161068d565b608080829480356144f881610295565b8452602081013561450881610295565b6020850152604081013561451b81612896565b6040850152606081013561452e81612876565b606085015201359161453f83610295565b0152565b90916102b59796959493926fffffffffffffffffffffffffffffffff6145d861459860a061457136886144d0565b207f0000000000000000000000000000000000000000000000000000000000000000615264565b5050506145a484615303565b6145ad86615303565b6145c088356145bb81610295565b614ddd565b916145d260208a01356145bb81610295565b9361564f565b169261478a565b9091819260a08301359260c08101359260e08201359261010083013592610120810135926101408201359263ffffffff6101608401351683019063ffffffff82351693602080840193860101910110611962579190565b600260806102b593614680813561464c81610295565b85906001600160a01b03167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b600184016146c9602083013561469581610295565b82906001600160a01b03167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b60408201356146d781612896565b81547fffffffffffff000000000000ffffffffffffffffffffffffffffffffffffffff76ffffff0000000000000000000000000000000000000000606086013561472081612876565b60b81b79ffffff0000000000000000000000000000000000000000000000169360a01b1691161717905501359161475683610295565b01906001600160a01b03167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b90919496929793959760085492600184016008556001600160a01b038a16996147b48b1515613094565b845f5260026020526001600160a01b0360405f20541661496e5761488a6149259861491f93876102b59e61481986614800614917986001600160a01b03165f52600360205260405f2090565b80546001019055610c0e845f52600260205260405f2090565b5f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a461484836886144d0565b63ffffff007fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000060a066ffffff000000009320169260081b169260201b16171790565b928361489e875f52600960205260405f2090565b55837fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000168561490760016148fc847fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000165f52600a60205260405f2090565b015460b81c60020b90565b60020b1561492b575b505061507e565b9236906144d0565b906156fc565b506157de565b614962614967927fffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000165f52600a60205260405f2090565b614636565b5f85614910565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f414c52454144595f4d494e5445440000000000000000000000000000000000006044820152fd5b909181359260208301359260408101359260608201359263ffffffff60808401351683019063ffffffff82351693602080840193860101910110611962579190565b90959495939192937f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c614a4283826132b6565b156143ae57509561435d92826142ac6102b59899614a6d614a65614a7397612669565b93909261507e565b916156fc565b906150b0565b949394929091927f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c614aac82826132b6565b156143ae57506102b59495614b5e9282614ac8614a7394612669565b90614a6d6fffffffffffffffffffffffffffffffff614b58614b0d60a085207f0000000000000000000000000000000000000000000000000000000000000000615264565b505050614b1f8660081c60020b615303565b614b2e8760201c60020b615303565b614b416001600160a01b03885116614ddd565b916145d26001600160a01b0360208a015116614ddd565b1661507e565b6157de565b90959495939192937f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c614b9783826132b6565b156143ae575095614b5e9282614a6d6102b59899614bb7614a7396612669565b92909161507e565b6040516020810191825260066040820152604081526125636060826106ae565b6001600160a01b038116614bf257503190565b906001600160a01b0360246020928260405195869485937f70a08231000000000000000000000000000000000000000000000000000000008552166004840152165afa9081156113c9575f91614c46575090565b610339915060203d602011612f8657612f7a81836106ae565b614c8a81307f0000000000000000000000000000000000000000000000000000000000000000614e49565b905f8213614c9c575061033990613e06565b6001600160a01b03907f3351b260000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b6001600160a01b038116614ce457504790565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015290602090829060249082906001600160a01b03165afa9081156113c9575f91614c46575090565b9091906001600160a01b038116614d6457505f808080614d5894865af11590565b614d5f5750565b613532565b91906001600160a01b03604051927fa9059cbb00000000000000000000000000000000000000000000000000000000845216600483015260248201525f604060208260448582885af13d15601f3d11600185511416171692828152826020820152015215614dcf5750565b6001600160a01b031661345f565b614e0881307f0000000000000000000000000000000000000000000000000000000000000000614e49565b905f8212614e14575090565b6001600160a01b03907f4c085bf1000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b6001600160a01b03809381602094165f52168252602460405f2060405194859384927ff135baaa0000000000000000000000000000000000000000000000000000000084526004840152165afa9081156113c9575f91614c46575090565b9091906001600160a01b0383163003614eef576102b592506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690614d37565b906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b156102a6576040517f36c785160000000000000000000000000000000000000000000000000000000081526001600160a01b0394851660048201527f00000000000000000000000000000000000000000000000000000000000000008516602482015291841660448301529190921660648301525f908290608490829084905af180156113c957613dc75750565b805f5260026020525f6001600160a01b03604082205416614fcc8115156125e3565b8082526003602052604082207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8154019055615010835f52600260205260405f2090565b80548360031b906001600160a01b03808616831b921b191617905561503d835f52600460205260405f2090565b80548360031b906001600160a01b03808616831b921b19161790557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8280a4565b905f821261508857565b7f93dafdf1000000000000000000000000000000000000000000000000000000005f5260045ffd5b6150d3906150c58360801d8260801d0361592c565b92600f0b90600f0b0361592c565b6fffffffffffffffffffffffffffffffff169060801b1790565b929190926fffffffffffffffffffffffffffffffff8160801d94816151118761593a565b9116918291161061519957506fffffffffffffffffffffffffffffffff929350600f0b908261513f8361593a565b9116928391161061514e575050565b906151696fffffffffffffffffffffffffffffffff9261593a565b907f12816f22000000000000000000000000000000000000000000000000000000005f526004521660245260445ffd5b6fffffffffffffffffffffffffffffffff906151698661593a565b5f81815260076020526040902080547fffffffffffffffffffffffff000000000000000000000000000000000000000081169091556001600160a01b039081169561525895610fbb959394919390929091604051957fb1a9116f00000000000000000000000000000000000000000000000000000000602088015260248701521660448501526064840152608483015260a482015260a48152610fb560c4826106ae565b61525f5750565b6135e5565b602090602461527b6001600160a01b039594614bbf565b60405195869384927f1e2eaeaf0000000000000000000000000000000000000000000000000000000084526004840152165afa9182156113c9575f926152e2575b506001600160a01b038216918060a01c60020b9162ffffff808360b81c169260d01c1690565b6152fc91925060203d602011612f8657612f7a81836106ae565b905f6152bc565b60020b908160ff1d82810118620d89e881116156495763ffffffff9192600182167001fffcb933bd6fad37aa2d162d1a5940010270010000000000000000000000000000000018916002811661562d575b60048116615611575b600881166155f5575b601081166155d9575b602081166155bd575b604081166155a1575b60808116615585575b6101008116615569575b610200811661554d575b6104008116615531575b6108008116615515575b61100081166154f9575b61200081166154dd575b61400081166154c1575b61800081166154a5575b620100008116615489575b62020000811661546e575b620400008116615453575b620800001661543a575b5f12615413575b0160201c90565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0461540c565b6b048a170391f7dc42444e8fa290910260801c90615405565b6d2216e584f5fa1ea926041bedfe9890920260801c916153fb565b916e5d6af8dedb81196699c329225ee6040260801c916153f0565b916f09aa508b5b7a84e1c677de54f3e99bc90260801c916153e5565b916f31be135f97d08fd981231505542fcfa60260801c916153da565b916f70d869a156d2a1b890bb3df62baf32f70260801c916153d0565b916fa9f746462d870fdf8a65dc1f90e061e50260801c916153c6565b916fd097f3bdfd2022b8845ad8f792aa58250260801c916153bc565b916fe7159475a2c29b7443b29c7fa6e889d90260801c916153b2565b916ff3392b0822b70005940c7a398e4b70f30260801c916153a8565b916ff987a7253ac413176f2b074cf7815e540260801c9161539e565b916ffcbe86c7900a88aedcffc83b479aa3a40260801c91615394565b916ffe5dee046a99a2a811c461f1969c30530260801c9161538a565b916fff2ea16466c96a3843ec78b326b528610260801c91615381565b916fff973b41fa98c081472e6896dfb254c00260801c91615378565b916fffcb9843d60f6159c9db58835c9266440260801c9161536f565b916fffe5caca7e10e4e61c3624eaa0941cd00260801c91615366565b916ffff2e50f5f656932ef12357cf3c7fdcc0260801c9161535d565b916ffff97272373d413259a46990580e213a0260801c91615354565b82615959565b936001600160a01b0383166001600160a01b038316116156f4575b6001600160a01b0385811695908316861161568b57505061033993506159b7565b92909391946001600160a01b038216115f146156e85782916156b1916156b795946159b7565b93615987565b6fffffffffffffffffffffffffffffffff81166fffffffffffffffffffffffffffffffff8316105f14613b4f575090565b91505061033992615987565b90919061566a565b95939460409161576261570d612409565b60088a901c60020b81529260208a811c60020b908501528585850152866060850152845198899485947f5a6bcfda000000000000000000000000000000000000000000000000000000008652600486016143f9565b03815f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af19081156113c9575f945f926157ba575b5081949560ff166157b157505050565b6102b592615a00565b9094506157d6915060403d6040116143a75761439381836106ae565b90935f6157a1565b908160801d600f0b91600f0b915f8112806158f7575b6158955750505f81128061585e575b61580b575050565b9061581b61422261102893613e06565b7f31e30ad0000000000000000000000000000000000000000000000000000000005f526fffffffffffffffffffffffffffffffff91821660045216602452604490565b506fffffffffffffffffffffffffffffffff8061587a83613e06565b16166fffffffffffffffffffffffffffffffff831610615803565b906fffffffffffffffffffffffffffffffff6158b361102893613e06565b7f31e30ad0000000000000000000000000000000000000000000000000000000005f526fffffffffffffffffffffffffffffffff9283166004521616602452604490565b506fffffffffffffffffffffffffffffffff61591282613e06565b166fffffffffffffffffffffffffffffffff8316106157f4565b9081600f0b91820361508857565b5f81600f0b12615088576fffffffffffffffffffffffffffffffff1690565b7f8b86327a000000000000000000000000000000000000000000000000000000005f5260020b60045260245ffd5b916001600160a01b03610339936159ac93828116838316116159b1575b031690615b43565b615d1b565b906159a4565b916159ac91610339936001600160a01b0382166001600160a01b038216116159fa575b6001600160a01b03906159f1828416838316615bff565b92031691615c79565b906159da565b615a6a9192815f5260076020526001600160a01b0360405f20541693604051927fd8865c2700000000000000000000000000000000000000000000000000000000602085015260248401526044830152606482015260648152615a646084826106ae565b8261334b565b15615a725750565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f3d0116604051917f90bfb86500000000000000000000000000000000000000000000000000000000835260048301527fd8865c27000000000000000000000000000000000000000000000000000000006024830152608060448301528060a00160648301523d60848301523d5f60a484013e7fe94f10e20000000000000000000000000000000000000000000000000000000060c4828401600460a4820152015260e40190fd5b156102a657565b908160601b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c010000000000000000000000008409928280851094039380850394615b91868511615b3c565b14615bf8576c0100000000000000000000000082910981805f03168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b5091500490565b90808202917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828209918380841093039280840393846c0100000000000000000000000011156102a65714615c70576c01000000000000000000000000910990828211900360a01b910360601c1790565b50505060601c90565b91818302917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff818509938380861095039480860395615cb9878611615b3c565b14615d13579082910981805f03168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b505091500490565b906fffffffffffffffffffffffffffffffff82168092036150885756fea164736f6c634300081a000a0000000000000000000000008366a39cc670b4001a1121b8f6a443a643e40951000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba300000000000000000000000000000000000000000000000000000000000493e00000000000000000000000009639443158e8c5efa35bd45287bf2effd3d8dc060000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad73", - "nonce": "0xf", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x6bf436d72a17f87284ddcab43094689bd320dfb39b535213b9a0b669fabc4ab4", - "transactionType": "CREATE2", - "contractName": "V4Quoter", - "contractAddress": "0x8dc178efb8111bb0973dd9d722ebeff267c98f94", - "function": null, - "arguments": [ - "0x8366a39CC670B4001A1121B8F6A443A643e40951" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x1ea2b7", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000060a034607b57601f61187a38819003918201601f19168301916001600160401b03831184841017607f57808492602094604052833981010312607b57516001600160a01b0381168103607b576080526040516117e6908161009482396080518181816101c0015281816103490152818161069401526115bb0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c8063147d2af9146109865780635873307314610911578063595323f5146108655780636a36a38c1461073a57806391dd734614610610578063aa2f150114610463578063aa9d21cb146103ee578063ca253dc914610254578063d737d0c7146101e4578063dc4c90d3146101765763eebe0c6a14610092575f80fd5b34610172576100a036610ea1565b30330361014a578061010c61010661010160a06fffffffffffffffffffffffffffffffff9501936100d085611227565b6100e9876100e060c08501611234565b16600f0b6113b3565b906100f760e0840184611251565b9490933690610d54565b611475565b91611227565b156101405781165b7fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b60801d8116610114565b7f29c3b7ee000000000000000000000000000000000000000000000000000000005f5260045ffd5b5f80fd5b34610172575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261017257602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b34610172575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101725760207f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5c73ffffffffffffffffffffffffffffffffffffffff60405191168152f35b3461017257604061026436610b7d565b337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d5f8061032f5f6102c96102f55a9688519283917f6a36a38c00000000000000000000000000000000000000000000000000000000602084015260248301610fc3565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610a60565b8651809381927f48c89491000000000000000000000000000000000000000000000000000000008352602060048401526024830190610f11565b03818373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af190816103ce575b506103c657505061039561038f61038761114a565b925a90611179565b916113df565b905b5f7f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d82519182526020820152f35b909150610397565b6103e9903d805f833e6103e18183610a60565b8101906110e7565b610372565b346101725760406103fe36610dbd565b337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d5f8061032f5f6102c96102f55a9688519283917feebe0c6a00000000000000000000000000000000000000000000000000000000602084015260248301611186565b346101725761047136610f54565b30330361014a576020810161048681836112d1565b905061049460408401611234565b9161049e84611325565b9190815b6104e4576fffffffffffffffffffffffffffffffff847fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b9091926104f182866112d1565b91907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85018581116105c0576105496105426fffffffffffffffffffffffffffffffff926105909661056595611346565b97886116b2565b939061055860808a018a611251565b9390921690851590611475565b90156105ed5761057790600f0b6112a2565b6fffffffffffffffffffffffffffffffff165b93611325565b9180156105c0577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190816104a2565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6105f99060801d6112a2565b6fffffffffffffffffffffffffffffffff1661058a565b346101725760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101725760043567ffffffffffffffff811161017257366023820112156101725780600401359067ffffffffffffffff82116101725736602483830101116101725773ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303610712575f6024819284806040519384930183378101838152039082305af16106dd61114a565b906106ea57602081519101fd5b7fe0752a5a000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fae18210a000000000000000000000000000000000000000000000000000000005f5260045ffd5b346101725761074836610f54565b30330361014a57602081019061075e82826112d1565b905061076c60408301611234565b9161077681611325565b935f915b8383106107bf576fffffffffffffffffffffffffffffffff857fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b909192936108406fffffffffffffffffffffffffffffffff61082161080c6001946107fe6107f78a6107f18b8b6112d1565b90611346565b9b8c6116b2565b948593919216600f0b6113b3565b61081960808d018d611251565b939092611475565b901561084b576fffffffffffffffffffffffffffffffff165b96611325565b95949301919061077a565b60801d6fffffffffffffffffffffffffffffffff1661083a565b346101725761087336610ea1565b30330361014a57806108bf61010661010160a06fffffffffffffffffffffffffffffffff9501936108a385611227565b866108b060c08401611234565b16906100f760e0840184611251565b156108fe576108d09060801d6112a2565b81167fecbd9804000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b61090a90600f0b6112a2565b8116610114565b3461017257604061092136610dbd565b337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d5f8061032f5f6102c96102f55a9688519283917f595323f500000000000000000000000000000000000000000000000000000000602084015260248301611186565b3461017257604061099636610b7d565b337f0aedd6bde10e3aa2adec092b02a3e3e805795516cda41f27aa145b8f300af87a5d5f8061032f5f6102c96102f55a9688519283917faa2f150100000000000000000000000000000000000000000000000000000000602084015260248301610fc3565b6060810190811067ffffffffffffffff821117610a1757604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60a0810190811067ffffffffffffffff821117610a1757604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610a1757604052565b359073ffffffffffffffffffffffffffffffffffffffff8216820361017257565b359062ffffff8216820361017257565b35908160020b820361017257565b67ffffffffffffffff8111610a1757601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b81601f8201121561017257803590610b3182610ae0565b92610b3f6040519485610a60565b8284526020838301011161017257815f926020809301838601378301015290565b35906fffffffffffffffffffffffffffffffff8216820361017257565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8201126101725760043567ffffffffffffffff81116101725760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc82840301126101725760405191610bf2836109fb565b610bfe82600401610aa1565b8352602482013567ffffffffffffffff811161017257820190806023830112156101725760048201359167ffffffffffffffff8311610a17578260051b60405193610c4c6020830186610a60565b845281016024019060208401908383116101725760248101915b838310610c8b5750505050506020830152610c8390604401610b60565b604082015290565b823567ffffffffffffffff8111610172576004908301019060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe083880301126101725760405190610cdc82610a44565b610ce860208401610aa1565b8252610cf660408401610ac2565b6020830152610d0760608401610ad2565b6040830152610d1860808401610aa1565b606083015260a08301359167ffffffffffffffff831161017257610d4488602080969581960101610b1a565b6080820152815201920191610c66565b91908260a091031261017257604051610d6c81610a44565b6080610db8818395610d7d81610aa1565b8552610d8b60208201610aa1565b6020860152610d9c60408201610ac2565b6040860152610dad60608201610ad2565b606086015201610aa1565b910152565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8201126101725760043567ffffffffffffffff8111610172576101007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc828403011261017257604051916080830183811067ffffffffffffffff821117610a1757604052610e518183600401610d54565b835260a48201358015158103610172576020840152610e7260c48301610b60565b604084015260e48201359167ffffffffffffffff831161017257610e999201600401610b1a565b606082015290565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc820112610172576004359067ffffffffffffffff8211610172577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc82610100920301126101725760040190565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc820112610172576004359067ffffffffffffffff8211610172577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc826060920301126101725760040190565b60208152608081019173ffffffffffffffffffffffffffffffffffffffff815116602083015260208101519260606040840152835180915260a0830190602060a08260051b8601019501915f905b82821061103b57505050506fffffffffffffffffffffffffffffffff604060609201511691015290565b909192956020806110d9837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff608a6001960301865260a060808c5173ffffffffffffffffffffffffffffffffffffffff815116845262ffffff868201511686850152604081015160020b604085015273ffffffffffffffffffffffffffffffffffffffff60608201511660608501520151918160808201520190610f11565b980192019201909291611011565b6020818303126101725780519067ffffffffffffffff8211610172570181601f820112156101725780519061111b82610ae0565b926111296040519485610a60565b8284526020838301011161017257815f9260208093018386015e8301015290565b3d15611174573d9061115b82610ae0565b916111696040519384610a60565b82523d5f602084013e565b606090565b919082039182116105c057565b610120606061122493602084526111eb60208501825173ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b6020810151151560c08501526fffffffffffffffffffffffffffffffff60408201511660e0850152015191610100808201520190610f11565b90565b3580151581036101725790565b356fffffffffffffffffffffffffffffffff811681036101725790565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe181360301821215610172570180359067ffffffffffffffff82116101725760200191813603831361017257565b600f0b7fffffffffffffffffffffffffffffffff8000000000000000000000000000000081146105c0575f0390565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe181360301821215610172570180359067ffffffffffffffff821161017257602001918160051b3603831361017257565b3573ffffffffffffffffffffffffffffffffffffffff811681036101725790565b91908110156113865760051b810135907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6181360301821215610172570190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f800000000000000000000000000000000000000000000000000000000000000081146105c0575f0390565b7fecbd9804000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000060208301511603611433576024015190565b611471906040519182917f6190b2b0000000000000000000000000000000000000000000000000000000008352602060048401526024830190610f11565b0390fd5b929493908015611697576401000276a4915b8060405192611495846109fb565b1515978884526020840194868652604085019073ffffffffffffffffffffffffffffffffffffffff1681526040519586957ff3cd914c00000000000000000000000000000000000000000000000000000000875260048701611541908b73ffffffffffffffffffffffffffffffffffffffff6080809282815116855282602082015116602086015262ffffff6040820151166040860152606081015160020b6060860152015116910152565b51151560a48701525160c48601525173ffffffffffffffffffffffffffffffffffffffff1660e48501526101048401610120905281610124850152610144840137808201610144015f9052601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01681010361014401817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1691815a6020945f91f190811561168c575f9161165a575b5080945f8312145f146116525760801d5b600f0b036116235750565b60a090207f7a5ed734000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b600f0b611618565b90506020813d602011611684575b8161167560209383610a60565b8101031261017257515f611607565b3d9150611668565b6040513d5f823e3d90fd5b73fffd8963efd1fc6a506488495d951d5263988d2591611487565b905f60806040516116c281610a44565b82815282602082015282604082015282606082015201526116e282611325565b73ffffffffffffffffffffffffffffffffffffffff82169173ffffffffffffffffffffffffffffffffffffffff82168084105f146117ba575073ffffffffffffffffffffffffffffffffffffffff905b1680921492602081013562ffffff8116809103610172576040820135918260020b80930361017257606001359273ffffffffffffffffffffffffffffffffffffffff84168094036101725773ffffffffffffffffffffffffffffffffffffffff90604051956117a087610a44565b865216602085015260408401526060830152608082015291565b91505073ffffffffffffffffffffffffffffffffffffffff829161173256fea164736f6c634300081a000a0000000000000000000000008366a39cc670b4001a1121b8f6a443a643e40951", - "nonce": "0x10", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x3d61e2c9eeb482385b1aa436b9e8f812167ea579cc390e4f93bc5abde00582f4", - "transactionType": "CREATE2", - "contractName": "StateView", - "contractAddress": "0xf3334192d15450cdd385c8b70e03f9a6bd9e673b", - "function": null, - "arguments": [ - "0x8366a39CC670B4001A1121B8F6A443A643e40951" - ], "transaction": { "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x112985", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000060a03460b357601f610e9738819003918201601f19168301916001600160401b0383118484101760b75780849260209460405283398101031260b357516001600160a01b038116810360b357608052604051610dcb90816100cc823960805181818161012b01528181610246015281816102db0152818161039e0152818161048101528181610549015281816105db01528181610622015281816106870152818161073401528181610810015261096a0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80631c7ccb4c146108ac57806353e9c1fb146107c95780637c40f1fe146106ab5780638a2bb9e61461064657806397fd7b421461060b5780639ec538c8146105a2578063c815641c1461050b578063caedab54146103f6578063dacf1d2f146102ff578063dc4c90d314610291578063f0928f29146101e65763fa6793d51461009d575f80fd5b346101a25760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576100d7600435610d2f565b600381018091116101b957604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f90610177575b6020906fffffffffffffffffffffffffffffffff60405191168152f35b506020813d6020116101a6575b8161019160209383610a2b565b810103126101a2576020905161015a565b5f80fd5b3d9150610184565b6040513d5f823e3d90fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b346101a2576101fd6101f7366109f7565b90610d8b565b604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f90610177576020906fffffffffffffffffffffffffffffffff60405191168152f35b346101a2575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a257602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a25760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760243573ffffffffffffffffffffffffffffffffffffffff811681036101a2576103566109e7565b6064358060020b81036101a2576103f2926103c2926040519260843560268501526006840152600383015281525f603a600c83012091816040820152816020820152526004357f0000000000000000000000000000000000000000000000000000000000000000610bc0565b604080516fffffffffffffffffffffffffffffffff90941684526020840192909252908201529081906060820190565b0390f35b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576104386104306109d7565b600435610d55565b604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f906104d8575b6040908151906fffffffffffffffffffffffffffffffff8116825260801d600f0b6020820152f35b506020813d602011610503575b816104f260209383610a2b565b810103126101a257604090516104b0565b3d91506104e5565b346101a25760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a257608062ffffff8061056d6004357f0000000000000000000000000000000000000000000000000000000000000000610c63565b92949173ffffffffffffffffffffffffffffffffffffffff6040519616865260020b6020860152166040840152166060820152f35b346101a25760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760406105ff6004357f0000000000000000000000000000000000000000000000000000000000000000610c58565b82519182526020820152f35b346101a2576103f26103c261061f366109f7565b907f0000000000000000000000000000000000000000000000000000000000000000610bc0565b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760406105ff6106826109d7565b6004357f0000000000000000000000000000000000000000000000000000000000000000610b1e565b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576106e56104306109d7565b604051907f35fd631a0000000000000000000000000000000000000000000000000000000082526004820152600360248201525f8160448173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae576080915f916107a7575b506020810151906060604082015191015190604051926fffffffffffffffffffffffffffffffff81168452841d600f0b602084015260408301526060820152f35b6107c391503d805f833e6107bb8183610a2b565b810190610a99565b82610766565b346101a25760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a25760406004356108056109d7565b9061080e6109e7565b7f00000000000000000000000000000000000000000000000000000000000000009061083a8383610c58565b90610846868686610b1e565b96909361085f610857828989610b1e565b989097610c63565b5050905060020b9160020b82125f14610885575050505003910382519182526020820152f35b95969593949360020b1361089d5750500391036105ff565b949392909403039203036105ff565b346101a25760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a2576024358060010b8091036101a2576108f4600435610d2f565b600581018091116101b957604051906020820192835260408201526040815261091e606082610a2b565b519020604051907f1e2eaeaf000000000000000000000000000000000000000000000000000000008252600482015260208160248173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101ae575f906109a4575b602090604051908152f35b506020813d6020116109cf575b816109be60209383610a2b565b810103126101a25760209051610999565b3d91506109b1565b602435908160020b82036101a257565b604435908160020b82036101a257565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60409101126101a2576004359060243590565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610a6c57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6020818303126101a25780519067ffffffffffffffff82116101a257019080601f830112156101a25781519167ffffffffffffffff8311610a6c578260051b9060405193610aea6020840186610a2b565b84526020808501928201019283116101a257602001905b828210610b0e5750505090565b8151815260209182019101610b01565b9291610b2991610d55565b600181018091116101b95773ffffffffffffffffffffffffffffffffffffffff9260445f9260405195869384927f35fd631a000000000000000000000000000000000000000000000000000000008452600484015260026024840152165afa9182156101ae575f92610ba4575b506040602083015192015190565b610bb99192503d805f833e6107bb8183610a2b565b905f610b96565b6044610be273ffffffffffffffffffffffffffffffffffffffff945f94610d8b565b60405194859384927f35fd631a000000000000000000000000000000000000000000000000000000008452600484015260036024840152165afa9081156101ae575f91610c3e575b506020810151916060604083015192015190565b610c5291503d805f833e6107bb8183610a2b565b5f610c2a565b9190610b2990610d2f565b6020906024610c8773ffffffffffffffffffffffffffffffffffffffff9594610d2f565b60405195869384927f1e2eaeaf0000000000000000000000000000000000000000000000000000000084526004840152165afa9182156101ae575f92610cfb575b5073ffffffffffffffffffffffffffffffffffffffff8216918060a01c60020b9162ffffff808360b81c169260d01c1690565b9091506020813d602011610d27575b81610d1760209383610a2b565b810103126101a25751905f610cc8565b3d9150610d0a565b604051602081019182526006604082015260408152610d4f606082610a2b565b51902090565b610d5e90610d2f565b600481018091116101b95760405190602082019260020b8352604082015260408152610d4f606082610a2b565b610d9490610d2f565b600681018091116101b9576040519060208201928352604082015260408152610d4f606082610a2b56fea164736f6c634300081a000a0000000000000000000000008366a39cc670b4001a1121b8f6a443a643e40951", - "nonce": "0x11", - "chainId": "0x1237" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0xeaa1bf6bd8e86ab33150936414780779800a2aa04a98667f4059ef5dfc0cdf92", - "transactionType": "CREATE", - "contractName": "SwapRouter02", - "contractAddress": "0xcaf681a66d020601342297493863e78c959e5cb2", - "function": null, - "arguments": [ - "0x8bcEaA40B9AcdfAedF85AdF4FF01F5Ad6517937f", - "0x1f7d7550B1b028f7571E69A784071F0205FD2EfA", - "0x73991a25C818Bf1f1128dEAaB1492D45638DE0D3", - "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73" - ], - "transaction": { - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "gas": "0x6a05be", + "gas": "0x643b3f", "value": "0x0", - "input": "0x6101006040526000196000553480156200001857600080fd5b5060405162006135380380620061358339810160408190526200003b9162000087565b6001600160601b0319606094851b811660805291841b821660a05291831b811660c052911b1660e052620000e3565b80516001600160a01b03811681146200008257600080fd5b919050565b600080600080608085870312156200009d578384fd5b620000a8856200006a565b9350620000b8602086016200006a565b9250620000c8604086016200006a565b9150620000d8606086016200006a565b905092959194509250565b60805160601c60a05160601c60c05160601c60e05160601c615fb162000184600039806102c15280610b3c52806112ad52806113d7528061147e52806116af52806117d95280612d8f5280612def5280612e70525080611e4c52806124df5280613cdb52508061166f5280611b1a5280611e9c52806132a6525080610c625280610d365280610fe2528061164b5280612fc252806131855250615fb16000f3fe6080604052600436106102a45760003560e01c80639b2c0a371161016e578063dee00f35116100cb578063f100b2051161007f578063f2d5d56b11610064578063f2d5d56b1461066e578063f3995c6714610681578063fa461e33146106945761034f565b8063f100b2051461063b578063f25801a71461064e5761034f565b8063e0e189a0116100b0578063e0e189a0146105f5578063e90a182f14610608578063efdeed8e1461061b5761034f565b8063dee00f35146105b5578063df2ab5bb146105e25761034f565b8063b858183f11610122578063c45a015511610107578063c45a01551461057a578063cab372ce1461058f578063d4ef38de146105a25761034f565b8063b858183f14610554578063c2e3140a146105675761034f565b8063ab3fdd5011610153578063ab3fdd501461051b578063ac9650d81461052e578063b3a2af13146105415761034f565b80639b2c0a37146104f5578063a4a78f0c146105085761034f565b8063472b43f31161021c578063571ac8b0116101d0578063639d71a9116101b5578063639d71a9146104b857806368e0d4e1146104cb578063791b98bc146104e05761034f565b8063571ac8b0146104925780635ae401dc146104a55761034f565b80634961699711610201578063496169971461044a5780634aa4a4fc1461045d5780635023b4df1461047f5761034f565b8063472b43f31461042457806349404b7c146104375761034f565b80631c58db4f116102735780633068c554116102585780633068c554146103eb57806342712a67146103fe5780634659a494146104115761034f565b80631c58db4f146103b85780631f0464d1146103cb5761034f565b806304e45aaf1461035457806309b813461461037d57806311ed56c91461039057806312210e8a146103b05761034f565b3661034f573373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161461034d57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e6f742057455448390000000000000000000000000000000000000000000000604482015290519081900360640190fd5b005b600080fd5b610367610362366004615543565b6106b4565b6040516103749190615dfd565b60405180910390f35b61036761038b3660046155de565b61083c565b6103a361039e366004615638565b61091c565b6040516103749190615b7a565b61034d610b28565b61034d6103c63660046157bb565b610b3a565b6103de6103d93660046152a7565b610bbe565b6040516103749190615afc565b61034d6103f93660046150d8565b610c48565b61036761040c366004615885565b610c5b565b61034d61041f366004615121565b610e35565b610367610432366004615885565b610ef5565b61034d6104453660046157eb565b6112a9565b61034d6104583660046157bb565b61146f565b34801561046957600080fd5b5061047261147c565b6040516103749190615a3c565b61036761048d366004615616565b6114a0565b61034d6104a0366004614feb565b611589565b6103de6104b33660046152a7565b6115bc565b61034d6104c6366004614feb565b611635565b3480156104d757600080fd5b50610472611649565b3480156104ec57600080fd5b5061047261166d565b61034d61050336600461581a565b611691565b61034d610516366004615121565b6118a7565b61034d610529366004614feb565b61197c565b6103de61053c36600461517c565b6119ba565b6103a361054f3660046152f1565b611b14565b61036761056236600461549d565b611bd2565b61034d610575366004615121565b611d95565b34801561058657600080fd5b50610472611e4a565b61034d61059d366004614feb565b611990565b61034d6105b0366004615858565b611e6e565b3480156105c157600080fd5b506105d56105d036600461500e565b611e7a565b6040516103749190615b8d565b61034d6105f0366004615039565b612027565b61034d61060336600461507a565b61213e565b61034d61061636600461500e565b6122a4565b34801561062757600080fd5b5061034d6106363660046151bc565b6122b3565b6103a3610649366004615627565b612305565b34801561065a57600080fd5b5061034d610669366004615324565b6123a5565b61034d61067c36600461500e565b6123f6565b61034d61068f366004615121565b612402565b3480156106a057600080fd5b5061034d6106af3660046153b8565b61249a565b600080600083608001511415610771575081516040517f70a0823100000000000000000000000000000000000000000000000000000000815260019173ffffffffffffffffffffffffffffffffffffffff16906370a082319061071b903090600401615a3c565b60206040518083038186803b15801561073357600080fd5b505afa158015610747573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076b91906157d3565b60808401525b6107ed836080015184606001518560c001516040518060400160405280886000015189604001518a602001516040516020016107af939291906159aa565b6040516020818303038152906040528152602001866107ce57336107d0565b305b73ffffffffffffffffffffffffffffffffffffffff1690526125de565b91508260a00151821015610836576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c7d565b60405180910390fd5b50919050565b60006108b0604083018035906108559060208601614feb565b604080518082019091526000908061086d8880615e41565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050908252503360209091015261278f565b505060005460608201358111156108f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c0f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600055919050565b604080516101608101909152606090610b20907f8831645600000000000000000000000000000000000000000000000000000000908061095f6020870187614feb565b73ffffffffffffffffffffffffffffffffffffffff16815260200185602001602081019061098d9190614feb565b73ffffffffffffffffffffffffffffffffffffffff1681526020016109b860608701604088016157a1565b62ffffff1681526020016109d26080870160608801615379565b60020b81526020016109ea60a0870160808801615379565b60020b8152602090810190610a0a90610a0590880188614feb565b612976565b8152602001610a25866020016020810190610a059190614feb565b815260a0860135602082015260c08601356040820152606001610a4f610100870160e08801614feb565b73ffffffffffffffffffffffffffffffffffffffff1681526020017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff815250604051602401610a9e9190615cf8565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152611b14565b90505b919050565b4715610b3857610b383347612a1b565b565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b158015610ba257600080fd5b505af1158015610bb6573d6000803e3d6000fd5b505050505050565b60608380600143034014610c3357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f426c6f636b686173680000000000000000000000000000000000000000000000604482015290519081900360640190fd5b610c3d84846119ba565b91505b509392505050565b610c55848433858561213e565b50505050565b6000610cbb7f000000000000000000000000000000000000000000000000000000000000000087868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250612b6992505050565b600081518110610cc757fe5b6020026020010151905084811115610d0b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c0f565b610da484846000818110610d1b57fe5b9050602002016020810190610d309190614feb565b33610d9e7f000000000000000000000000000000000000000000000000000000000000000088886000818110610d6257fe5b9050602002016020810190610d779190614feb565b89896001818110610d8457fe5b9050602002016020810190610d999190614feb565b612ca2565b84612d8d565b73ffffffffffffffffffffffffffffffffffffffff821660011415610dcb57339150610dee565b73ffffffffffffffffffffffffffffffffffffffff821660021415610dee573091505b610e2c848480806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250869250612f6b915050565b95945050505050565b604080517f8fcbaf0c00000000000000000000000000000000000000000000000000000000815233600482015230602482015260448101879052606481018690526001608482015260ff851660a482015260c4810184905260e48101839052905173ffffffffffffffffffffffffffffffffffffffff881691638fcbaf0c9161010480830192600092919082900301818387803b158015610ed557600080fd5b505af1158015610ee9573d6000803e3d6000fd5b50505050505050505050565b60008086610fab575060018484600081610f0b57fe5b9050602002016020810190610f209190614feb565b73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610f589190615a3c565b60206040518083038186803b158015610f7057600080fd5b505afa158015610f84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa891906157d3565b96505b61103685856000818110610fbb57fe5b9050602002016020810190610fd09190614feb565b82610fdb5733610fdd565b305b6110307f00000000000000000000000000000000000000000000000000000000000000008989600081811061100e57fe5b90506020020160208101906110239190614feb565b8a8a6001818110610d8457fe5b8a612d8d565b73ffffffffffffffffffffffffffffffffffffffff83166001141561105d57339250611080565b73ffffffffffffffffffffffffffffffffffffffff831660021415611080573092505b600085857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81018181106110b057fe5b90506020020160208101906110c59190614feb565b73ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b81526004016110fd9190615a3c565b60206040518083038186803b15801561111557600080fd5b505afa158015611129573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061114d91906157d3565b905061118d868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250889250612f6b915050565b6112628187877fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81018181106111bf57fe5b90506020020160208101906111d49190614feb565b73ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b815260040161120c9190615a3c565b60206040518083038186803b15801561122457600080fd5b505afa158015611238573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125c91906157d3565b90613270565b92508683101561129e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c7d565b505095945050505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561133257600080fd5b505afa158015611346573d6000803e3d6000fd5b505050506040513d602081101561135c57600080fd5b50519050828110156113cf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f496e73756666696369656e742057455448390000000000000000000000000000604482015290519081900360640190fd5b801561146a577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561144857600080fd5b505af115801561145c573d6000803e3d6000fd5b5050505061146a8282612a1b565b505050565b61147981336112a9565b50565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000611549608083018035906114b99060608601614feb565b6114c960e0860160c08701614feb565b60405180604001604052808760200160208101906114e79190614feb565b6114f760608a0160408b016157a1565b61150460208b018b614feb565b604051602001611516939291906159aa565b60405160208183030381529060405281526020013373ffffffffffffffffffffffffffffffffffffffff1681525061278f565b90508160a001358111156108f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c0f565b6115b3817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff613280565b61147957600080fd5b606083806115c86133cc565b1115610c3357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f5472616e73616374696f6e20746f6f206f6c6400000000000000000000000000604482015290519081900360640190fd5b611640816000613280565b61158957600080fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000821180156116a2575060648211155b6116ab57600080fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561173457600080fd5b505afa158015611748573d6000803e3d6000fd5b505050506040513d602081101561175e57600080fd5b50519050848110156117d157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f496e73756666696369656e742057455448390000000000000000000000000000604482015290519081900360640190fd5b80156118a0577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561184a57600080fd5b505af115801561185e573d6000803e3d6000fd5b50505050600061271061187a85846133d090919063ffffffff16565b8161188157fe5b0490508015611894576118948382612a1b565b610bb685828403612a1b565b5050505050565b604080517fdd62ed3e00000000000000000000000000000000000000000000000000000000815233600482015230602482015290517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9173ffffffffffffffffffffffffffffffffffffffff89169163dd62ed3e91604480820192602092909190829003018186803b15801561193c57600080fd5b505afa158015611950573d6000803e3d6000fd5b505050506040513d602081101561196657600080fd5b50511015610bb657610bb6868686868686610e35565b611987816000613280565b61199057600080fd5b6115b3817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe613280565b60608167ffffffffffffffff811180156119d357600080fd5b50604051908082528060200260200182016040528015611a0757816020015b60608152602001906001900390816119f25790505b50905060005b82811015611b0d5760008030868685818110611a2557fe5b9050602002810190611a379190615e41565b604051611a45929190615a10565b600060405180830381855af49150503d8060008114611a80576040519150601f19603f3d011682016040523d82523d6000602084013e611a85565b606091505b509150915081611aeb57604481511015611a9e57600080fd5b60048101905080806020019051810190611ab89190615433565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d9190615b7a565b80848481518110611af857fe5b60209081029190910101525050600101611a0d565b5092915050565b606060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1683604051611b5d9190615a20565b6000604051808303816000865af19150503d8060008114611b9a576040519150601f19603f3d011682016040523d82523d6000602084013e611b9f565b606091505b50925090508061083657604482511015611bb857600080fd5b60048201915081806020019051810190611ab89190615433565b600080600083604001511415611ca357600190506000611bf584600001516133f4565b50506040517f70a0823100000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff8216906370a0823190611c4c903090600401615a3c565b60206040518083038186803b158015611c6457600080fd5b505afa158015611c78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c9c91906157d3565b6040850152505b600081611cb05733611cb2565b305b90505b6000611cc48560000151613425565b9050611d1d856040015182611cdd578660200151611cdf565b305b60006040518060400160405280611cf98b6000015161342d565b81526020018773ffffffffffffffffffffffffffffffffffffffff168152506125de565b60408601528015611d3d578451309250611d369061343c565b8552611d4a565b8460400151935050611d50565b50611cb5565b8360600151831015611d8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c7d565b5050919050565b604080517fdd62ed3e0000000000000000000000000000000000000000000000000000000081523360048201523060248201529051869173ffffffffffffffffffffffffffffffffffffffff89169163dd62ed3e91604480820192602092909190829003018186803b158015611e0a57600080fd5b505afa158015611e1e573d6000803e3d6000fd5b505050506040513d6020811015611e3457600080fd5b50511015610bb657610bb6868686868686612402565b7f000000000000000000000000000000000000000000000000000000000000000081565b61146a83338484611691565b6000818373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e307f00000000000000000000000000000000000000000000000000000000000000006040518363ffffffff1660e01b8152600401611ed8929190615a5d565b60206040518083038186803b158015611ef057600080fd5b505afa158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906157d3565b10611f3557506000612021565b611f5f837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff613280565b15611f6c57506001612021565b611f96837ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe613280565b15611fa357506002612021565b611fae836000613280565b611fb757600080fd5b611fe1837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff613280565b15611fee57506003612021565b612018837ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe613280565b1561034f575060045b92915050565b60008373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561209057600080fd5b505afa1580156120a4573d6000803e3d6000fd5b505050506040513d60208110156120ba57600080fd5b505190508281101561212d57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f496e73756666696369656e7420746f6b656e0000000000000000000000000000604482015290519081900360640190fd5b8015610c5557610c55848383613471565b60008211801561214f575060648211155b61215857600080fd5b60008573ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156121c157600080fd5b505afa1580156121d5573d6000803e3d6000fd5b505050506040513d60208110156121eb57600080fd5b505190508481101561225e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f496e73756666696369656e7420746f6b656e0000000000000000000000000000604482015290519081900360640190fd5b8015610bb657600061271061227383866133d0565b8161227a57fe5b049050801561228e5761228e878483613471565b61229b8786838503613471565b50505050505050565b6122af828233612027565b5050565b6000806122c1868685613646565b915091508362ffffff1681830312610bb6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c46565b6060610b2063219f5d1760e01b6040518060c001604052808560400135815260200161233d866000016020810190610a059190614feb565b8152602001612358866020016020810190610a059190614feb565b815260200185606001358152602001856080013581526020017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff815250604051602401610a9e9190615cb4565b6000806123b28584613859565b915091508362ffffff16818303126118a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615c46565b6122af82333084613ae1565b604080517fd505accf000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018790526064810186905260ff8516608482015260a4810184905260c48101839052905173ffffffffffffffffffffffffffffffffffffffff88169163d505accf9160e480830192600092919082900301818387803b158015610ed557600080fd5b60008413806124a95750600083135b6124b257600080fd5b60006124c08284018461564a565b905060008060006124d484600001516133f4565b9250925092506125067f0000000000000000000000000000000000000000000000000000000000000000848484613cbe565b5060008060008a13612547578473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161089612578565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16108a5b915091508115612597576125928587602001513384612d8d565b610ee9565b85516125a290613425565b156125c75785516125b29061343c565b86526125c1813360008961278f565b50610ee9565b80600081905550610ee98487602001513384612d8d565b600073ffffffffffffffffffffffffffffffffffffffff8416600114156126075733935061262a565b73ffffffffffffffffffffffffffffffffffffffff84166002141561262a573093505b600080600061263c85600001516133f4565b9194509250905073ffffffffffffffffffffffffffffffffffffffff8083169084161060008061266d868686613cd4565b73ffffffffffffffffffffffffffffffffffffffff1663128acb088b856126938f613d12565b73ffffffffffffffffffffffffffffffffffffffff8e16156126b5578d6126db565b876126d45773fffd8963efd1fc6a506488495d951d5263988d256126db565b6401000276a45b8d6040516020016126ec9190615da6565b6040516020818303038152906040526040518663ffffffff1660e01b815260040161271b959493929190615a84565b6040805180830381600087803b15801561273457600080fd5b505af1158015612748573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061276c9190615395565b915091508261277b578161277d565b805b6000039b9a5050505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8416600114156127b8573393506127db565b73ffffffffffffffffffffffffffffffffffffffff8416600214156127db573093505b60008060006127ed85600001516133f4565b9194509250905073ffffffffffffffffffffffffffffffffffffffff8084169083161060008061281e858786613cd4565b73ffffffffffffffffffffffffffffffffffffffff1663128acb088b856128448f613d12565b60000373ffffffffffffffffffffffffffffffffffffffff8e1615612869578d61288f565b876128885773fffd8963efd1fc6a506488495d951d5263988d2561288f565b6401000276a45b8d6040516020016128a09190615da6565b6040516020818303038152906040526040518663ffffffff1660e01b81526004016128cf959493929190615a84565b6040805180830381600087803b1580156128e857600080fd5b505af11580156128fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129209190615395565b9150915060008361293557818360000361293b565b82826000035b909850905073ffffffffffffffffffffffffffffffffffffffff8a16612967578b811461296757600080fd5b50505050505050949350505050565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff8316906370a08231906129cb903090600401615a3c565b60206040518083038186803b1580156129e357600080fd5b505afa1580156129f7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2091906157d3565b6040805160008082526020820190925273ffffffffffffffffffffffffffffffffffffffff84169083906040518082805190602001908083835b60208310612a9257805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101612a55565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114612af4576040519150601f19603f3d011682016040523d82523d6000602084013e612af9565b606091505b505090508061146a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f5354450000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6060600282511015612b7a57600080fd5b815167ffffffffffffffff81118015612b9257600080fd5b50604051908082528060200260200182016040528015612bbc578160200160208202803683370190505b5090508281600183510381518110612bd057fe5b602090810291909101015281517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b8015610c4057600080612c3d87866001860381518110612c1c57fe5b6020026020010151878681518110612c3057fe5b6020026020010151613d44565b91509150612c5f848481518110612c5057fe5b60200260200101518383613e2c565b846001850381518110612c6e57fe5b602090810291909101015250507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01612c00565b6000806000612cb18585613f02565b604080517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606094851b811660208084019190915293851b81166034830152825160288184030181526048830184528051908501207fff0000000000000000000000000000000000000000000000000000000000000060688401529a90941b9093166069840152607d8301989098527f96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f609d808401919091528851808403909101815260bd909201909752805196019590952095945050505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015612de85750804710155b15612f31577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b158015612e5557600080fd5b505af1158015612e69573d6000803e3d6000fd5b50505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612eff57600080fd5b505af1158015612f13573d6000803e3d6000fd5b505050506040513d6020811015612f2957600080fd5b50610c559050565b73ffffffffffffffffffffffffffffffffffffffff8316301415612f5f57612f5a848383613471565b610c55565b610c5584848484613ae1565b60005b600183510381101561146a57600080848381518110612f8957fe5b6020026020010151858460010181518110612fa057fe5b6020026020010151915091506000612fb88383613f02565b5090506000612fe87f00000000000000000000000000000000000000000000000000000000000000008585612ca2565b90506000806000808473ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561303657600080fd5b505afa15801561304a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306e91906156da565b506dffffffffffffffffffffffffffff1691506dffffffffffffffffffffffffffff1691506000808773ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff16146130d05782846130d3565b83835b91509150613114828b73ffffffffffffffffffffffffffffffffffffffff166370a082318a6040518263ffffffff1660e01b815260040161120c9190615a3c565b9550613121868383613fa7565b9450505050506000808573ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff161461316557826000613169565b6000835b91509150600060028c51038a10613180578a6131c1565b6131c17f0000000000000000000000000000000000000000000000000000000000000000898e8d600201815181106131b457fe5b6020026020010151612ca2565b604080516000815260208101918290527f022c0d9f0000000000000000000000000000000000000000000000000000000090915290915073ffffffffffffffffffffffffffffffffffffffff87169063022c0d9f906132299086908690869060248101615e06565b600060405180830381600087803b15801561324357600080fd5b505af1158015613257573d6000803e3d6000fd5b50506001909b019a50612f6e9950505050505050505050565b8082038281111561202157600080fd5b60008060008473ffffffffffffffffffffffffffffffffffffffff1663095ea7b360e01b7f0000000000000000000000000000000000000000000000000000000000000000866040516024016132d7929190615ad6565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290516133609190615a20565b6000604051808303816000865af19150503d806000811461339d576040519150601f19603f3d011682016040523d82523d6000602084013e6133a2565b606091505b5091509150818015610e2c575080511580610e2c575080806020019051810190610e2c919061528d565b4290565b60008215806133eb575050818102818382816133e857fe5b04145b61202157600080fd5b60008080613402848261407d565b925061340f84601461417d565b905061341c84601761407d565b91509193909250565b516042111590565b6060610b20826000602b61426d565b8051606090610b209083906017907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe90161426d565b6040805173ffffffffffffffffffffffffffffffffffffffff8481166024830152604480830185905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001781529251825160009485949389169392918291908083835b6020831061354657805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101613509565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146135a8576040519150601f19603f3d011682016040523d82523d6000602084013e6135ad565b606091505b50915091508180156135db5750805115806135db57508080602001905160208110156135d857600080fd5b50515b6118a057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600260248201527f5354000000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b600080835185511461365757600080fd5b6000855167ffffffffffffffff8111801561367157600080fd5b506040519080825280602002602001820160405280156136ab57816020015b613698614e34565b8152602001906001900390816136905790505b5090506000865167ffffffffffffffff811180156136c857600080fd5b5060405190808252806020026020018201604052801561370257816020015b6136ef614e34565b8152602001906001900390816136e75790505b50905060005b8751811015613832576000806137318a848151811061372357fe5b602002602001015189613859565b9150915061373e82614454565b85848151811061374a57fe5b60200260200101516000019060020b908160020b8152505061376b81614454565b84848151811061377757fe5b60200260200101516000019060020b908160020b8152505088838151811061379b57fe5b60200260200101518584815181106137af57fe5b6020026020010151602001906fffffffffffffffffffffffffffffffff1690816fffffffffffffffffffffffffffffffff16815250508883815181106137f157fe5b602002602001015184848151811061380557fe5b6020908102919091018101516fffffffffffffffffffffffffffffffff9092169101525050600101613708565b5061383c82614465565b60020b935061384a81614465565b60020b92505050935093915050565b6000806000806138688661454d565b90506000805b82811015613a865760008060006138848b6133f4565b9250925092506000613897848484613cd4565b905060008063ffffffff8d166138c0576138b083614578565b600291820b9350900b9050613962565b6138ca838e614810565b8160020b915050809250508273ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b15801561391b57600080fd5b505afa15801561392f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139539190615715565b50505060029290920b93505050505b600189038714156139a3578473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161099506139b2565b6139ac8e61343c565b9d508597505b6000871580613a5357508673ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff1610613a23578673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1610613a53565b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16105b90508015613a68579b82019b9a81019a613a73565b828d039c50818c039b505b50506001909501945061386e9350505050565b5082613ad7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff850294507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff840293505b5050509250929050565b6040805173ffffffffffffffffffffffffffffffffffffffff85811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd00000000000000000000000000000000000000000000000000000000178152925182516000948594938a169392918291908083835b60208310613bbe57805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101613b81565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114613c20576040519150601f19603f3d011682016040523d82523d6000602084013e613c25565b606091505b5091509150818015613c53575080511580613c535750808060200190516020811015613c5057600080fd5b50515b610bb657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f5354460000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6000610e2c85613ccf868686614c41565b614cbe565b6000613d0a7f0000000000000000000000000000000000000000000000000000000000000000613d05868686614c41565b614cee565b949350505050565b60007f80000000000000000000000000000000000000000000000000000000000000008210613d4057600080fd5b5090565b6000806000613d538585613f02565b509050600080613d64888888612ca2565b73ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b158015613da957600080fd5b505afa158015613dbd573d6000803e3d6000fd5b505050506040513d6060811015613dd357600080fd5b5080516020909101516dffffffffffffffffffffffffffff918216935016905073ffffffffffffffffffffffffffffffffffffffff87811690841614613e1a578082613e1d565b81815b90999098509650505050505050565b6000808411613e9c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f494e53554646494349454e545f4f55545055545f414d4f554e54000000000000604482015290519081900360640190fd5b600083118015613eac5750600082115b613eb557600080fd5b6000613ecd6103e8613ec786886133d0565b906133d0565b90506000613ee16103e5613ec78689613270565b9050613ef86001828481613ef157fe5b0490614e24565b9695505050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415613f3e57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1610613f78578284613f7b565b83835b909250905073ffffffffffffffffffffffffffffffffffffffff8216613fa057600080fd5b9250929050565b600080841161401757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f494e53554646494349454e545f494e5055545f414d4f554e5400000000000000604482015290519081900360640190fd5b6000831180156140275750600082115b61403057600080fd5b600061403e856103e56133d0565b9050600061404c82856133d0565b9050600061406683614060886103e86133d0565b90614e24565b905080828161407157fe5b04979650505050505050565b6000818260140110156140f157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f746f416464726573735f6f766572666c6f770000000000000000000000000000604482015290519081900360640190fd5b816014018351101561416457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f746f416464726573735f6f75744f66426f756e64730000000000000000000000604482015290519081900360640190fd5b5001602001516c01000000000000000000000000900490565b6000818260030110156141f157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f746f55696e7432345f6f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b816003018351101561426457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f746f55696e7432345f6f75744f66426f756e6473000000000000000000000000604482015290519081900360640190fd5b50016003015190565b60608182601f0110156142e157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f736c6963655f6f766572666c6f77000000000000000000000000000000000000604482015290519081900360640190fd5b82828401101561435257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f736c6963655f6f766572666c6f77000000000000000000000000000000000000604482015290519081900360640190fd5b818301845110156143c457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f736c6963655f6f75744f66426f756e6473000000000000000000000000000000604482015290519081900360640190fd5b6060821580156143e3576040519150600082526020820160405261444b565b6040519150601f8416801560200281840101858101878315602002848b0101015b8183101561441c578051835260209283019201614404565b5050858452601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016604052505b50949350505050565b80600281900b8114610b2357600080fd5b6000806000805b84518110156144fa5784818151811061448157fe5b6020026020010151602001516fffffffffffffffffffffffffffffffff168582815181106144ab57fe5b60200260200101516000015160020b02830192508481815181106144cb57fe5b6020026020010151602001516fffffffffffffffffffffffffffffffff1682019150808060010191505061446c565b5080828161450457fe5b05925060008212801561451f575080828161451b57fe5b0715155b15611d8e5750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01919050565b5160177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec9091010490565b6000806000808473ffffffffffffffffffffffffffffffffffffffff16633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b1580156145c457600080fd5b505afa1580156145d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145fc9190615715565b50939750919550935050600161ffff84161191506146489050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615bd8565b6000808673ffffffffffffffffffffffffffffffffffffffff1663252c09d7856040518263ffffffff1660e01b81526004016146849190615dee565b60806040518083038186803b15801561469c57600080fd5b505afa1580156146b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906146d491906158e0565b5050915091506146e26133cc565b63ffffffff168263ffffffff16146146fc57849550614807565b60008361ffff1660018561ffff168761ffff1601038161471857fe5b06905060008060008a73ffffffffffffffffffffffffffffffffffffffff1663252c09d7856040518263ffffffff1660e01b81526004016147599190615dfd565b60806040518083038186803b15801561477157600080fd5b505afa158015614785573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906147a991906158e0565b93505092509250806147e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082d90615ba1565b82860363ffffffff811683870360060b816147fe57fe5b059a5050505050505b50505050915091565b60008063ffffffff831661488557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600260248201527f4250000000000000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60408051600280825260608201835260009260208301908036833701905050905083816000815181106148b457fe5b602002602001019063ffffffff16908163ffffffff16815250506000816001815181106148dd57fe5b63ffffffff9092166020928302919091018201526040517f883bdbfd00000000000000000000000000000000000000000000000000000000815260048101828152835160248301528351600093849373ffffffffffffffffffffffffffffffffffffffff8b169363883bdbfd9388939192839260449091019185820191028083838b5b83811015614978578181015183820152602001614960565b505050509050019250505060006040518083038186803b15801561499b57600080fd5b505afa1580156149af573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160409081528110156149f657600080fd5b8101908080516040519392919084640100000000821115614a1657600080fd5b908301906020820185811115614a2b57600080fd5b8251866020820283011164010000000082111715614a4857600080fd5b82525081516020918201928201910280838360005b83811015614a75578181015183820152602001614a5d565b5050505090500160405260200180516040519392919084640100000000821115614a9e57600080fd5b908301906020820185811115614ab357600080fd5b8251866020820283011164010000000082111715614ad057600080fd5b82525081516020918201928201910280838360005b83811015614afd578181015183820152602001614ae5565b5050505090500160405250505091509150600082600081518110614b1d57fe5b602002602001015183600181518110614b3257fe5b6020026020010151039050600082600081518110614b4c57fe5b602002602001015183600181518110614b6157fe5b60200260200101510390508763ffffffff168260060b81614b7e57fe5b05965060008260060b128015614ba857508763ffffffff168260060b81614ba157fe5b0760060b15155b15614bd3577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909601955b63ffffffff881673ffffffffffffffffffffffffffffffffffffffff0277ffffffffffffffffffffffffffffffffffffffff00000000602083901b1677ffffffffffffffffffffffffffffffffffffffffffffffff821681614c3157fe5b0496505050505050509250929050565b614c49614e4b565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161115614c81579192915b506040805160608101825273ffffffffffffffffffffffffffffffffffffffff948516815292909316602083015262ffffff169181019190915290565b6000614cca8383614cee565b90503373ffffffffffffffffffffffffffffffffffffffff82161461202157600080fd5b6000816020015173ffffffffffffffffffffffffffffffffffffffff16826000015173ffffffffffffffffffffffffffffffffffffffff1610614d3057600080fd5b508051602080830151604093840151845173ffffffffffffffffffffffffffffffffffffffff94851681850152939091168385015262ffffff166060808401919091528351808403820181526080840185528051908301207fff0000000000000000000000000000000000000000000000000000000000000060a085015294901b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660a183015260b58201939093527fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b5460d5808301919091528251808303909101815260f5909101909152805191012090565b8082018281101561202157600080fd5b604080518082019091526000808252602082015290565b604080516060810182526000808252602082018190529181019190915290565b8035610b2381615f52565b60008083601f840112614e87578182fd5b50813567ffffffffffffffff811115614e9e578182fd5b6020830191508360208083028501011115613fa057600080fd5b600082601f830112614ec8578081fd5b81356020614edd614ed883615ec8565b615ea4565b8281528181019085830183850287018401881015614ef9578586fd5b855b85811015614f345781356fffffffffffffffffffffffffffffffff81168114614f22578788fd5b84529284019290840190600101614efb565b5090979650505050505050565b80518015158114610b2357600080fd5b600082601f830112614f61578081fd5b8135614f6f614ed882615ee6565b818152846020838601011115614f83578283fd5b816020850160208301379081016020019190915292915050565b80516dffffffffffffffffffffffffffff81168114610b2357600080fd5b805161ffff81168114610b2357600080fd5b803562ffffff81168114610b2357600080fd5b8035610b2381615f83565b600060208284031215614ffc578081fd5b813561500781615f52565b9392505050565b60008060408385031215615020578081fd5b823561502b81615f52565b946020939093013593505050565b60008060006060848603121561504d578081fd5b833561505881615f52565b925060208401359150604084013561506f81615f52565b809150509250925092565b600080600080600060a08688031215615091578283fd5b853561509c81615f52565b94506020860135935060408601356150b381615f52565b92506060860135915060808601356150ca81615f52565b809150509295509295909350565b600080600080608085870312156150ed578182fd5b84356150f881615f52565b93506020850135925060408501359150606085013561511681615f52565b939692955090935050565b60008060008060008060c08789031215615139578384fd5b863561514481615f52565b95506020870135945060408701359350606087013561516281615f95565b9598949750929560808101359460a0909101359350915050565b6000806020838503121561518e578182fd5b823567ffffffffffffffff8111156151a4578283fd5b6151b085828601614e76565b90969095509350505050565b600080600080608085870312156151d1578182fd5b843567ffffffffffffffff808211156151e8578384fd5b818701915087601f8301126151fb578384fd5b8135602061520b614ed883615ec8565b82815281810190858301885b858110156152405761522e8e8684358b0101614f51565b84529284019290840190600101615217565b50909950505088013592505080821115615258578384fd5b5061526587828801614eb8565b93505061527460408601614fcd565b915061528260608601614fe0565b905092959194509250565b60006020828403121561529e578081fd5b61500782614f41565b6000806000604084860312156152bb578081fd5b83359250602084013567ffffffffffffffff8111156152d8578182fd5b6152e486828701614e76565b9497909650939450505050565b600060208284031215615302578081fd5b813567ffffffffffffffff811115615318578182fd5b613d0a84828501614f51565b600080600060608486031215615338578081fd5b833567ffffffffffffffff81111561534e578182fd5b61535a86828701614f51565b93505061536960208501614fcd565b9150604084013561506f81615f83565b60006020828403121561538a578081fd5b813561500781615f74565b600080604083850312156153a7578182fd5b505080516020909101519092909150565b600080600080606085870312156153cd578182fd5b8435935060208501359250604085013567ffffffffffffffff808211156153f2578384fd5b818701915087601f830112615405578384fd5b813581811115615413578485fd5b886020828501011115615424578485fd5b95989497505060200194505050565b600060208284031215615444578081fd5b815167ffffffffffffffff81111561545a578182fd5b8201601f8101841361546a578182fd5b8051615478614ed882615ee6565b81815285602083850101111561548c578384fd5b610e2c826020830160208601615f26565b6000602082840312156154ae578081fd5b813567ffffffffffffffff808211156154c5578283fd5b90830190608082860312156154d8578283fd5b6040516080810181811083821117156154ed57fe5b6040528235828111156154fe578485fd5b61550a87828601614f51565b8252506020830135915061551d82615f52565b816020820152604083013560408201526060830135606082015280935050505092915050565b600060e08284031215615554578081fd5b60405160e0810181811067ffffffffffffffff8211171561557157fe5b60405261557d83614e6b565b815261558b60208401614e6b565b602082015261559c60408401614fcd565b60408201526155ad60608401614e6b565b60608201526080830135608082015260a083013560a08201526155d260c08401614e6b565b60c08201529392505050565b6000602082840312156155ef578081fd5b813567ffffffffffffffff811115615605578182fd5b820160808185031215615007578182fd5b600060e08284031215610836578081fd5b600060a08284031215610836578081fd5b60006101008284031215610836578081fd5b60006020828403121561565b578081fd5b813567ffffffffffffffff80821115615672578283fd5b9083019060408286031215615685578283fd5b60405160408101818110838211171561569a57fe5b6040528235828111156156ab578485fd5b6156b787828601614f51565b825250602083013592506156ca83615f52565b6020810192909252509392505050565b6000806000606084860312156156ee578081fd5b6156f784614f9d565b925061570560208501614f9d565b9150604084015161506f81615f83565b600080600080600080600060e0888a03121561572f578485fd5b875161573a81615f52565b602089015190975061574b81615f74565b955061575960408901614fbb565b945061576760608901614fbb565b935061577560808901614fbb565b925060a088015161578581615f95565b915061579360c08901614f41565b905092959891949750929550565b6000602082840312156157b2578081fd5b61500782614fcd565b6000602082840312156157cc578081fd5b5035919050565b6000602082840312156157e4578081fd5b5051919050565b600080604083850312156157fd578182fd5b82359150602083013561580f81615f52565b809150509250929050565b6000806000806080858703121561582f578182fd5b84359350602085013561584181615f52565b925060408501359150606085013561511681615f52565b60008060006060848603121561586c578081fd5b8335925060208401359150604084013561506f81615f52565b60008060008060006080868803121561589c578283fd5b8535945060208601359350604086013567ffffffffffffffff8111156158c0578384fd5b6158cc88828901614e76565b90945092505060608601356150ca81615f52565b600080600080608085870312156158f5578182fd5b845161590081615f83565b8094505060208501518060060b8114615917578283fd5b604086015190935061592881615f52565b915061528260608601614f41565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452615968816020860160208601615f26565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60020b9052565b62ffffff169052565b606093841b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000908116825260e89390931b7fffffff0000000000000000000000000000000000000000000000000000000000166014820152921b166017820152602b0190565b6000828483379101908152919050565b60008251615a32818460208701615f26565b9190910192915050565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b73ffffffffffffffffffffffffffffffffffffffff92831681529116602082015260400190565b600073ffffffffffffffffffffffffffffffffffffffff8088168352861515602084015285604084015280851660608401525060a06080830152615acb60a0830184615950565b979650505050505050565b73ffffffffffffffffffffffffffffffffffffffff929092168252602082015260400190565b6000602080830181845280855180835260408601915060408482028701019250838701855b82811015615b6d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452615b5b858351615950565b94509285019290850190600101615b21565b5092979650505050505050565b6000602082526150076020830184615950565b6020810160058310615b9b57fe5b91905290565b60208082526003908201527f4f4e490000000000000000000000000000000000000000000000000000000000604082015260600190565b60208082526003908201527f4e454f0000000000000000000000000000000000000000000000000000000000604082015260600190565b60208082526012908201527f546f6f206d756368207265717565737465640000000000000000000000000000604082015260600190565b60208082526002908201527f5444000000000000000000000000000000000000000000000000000000000000604082015260600190565b60208082526013908201527f546f6f206c6974746c6520726563656976656400000000000000000000000000604082015260600190565b600060c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015292915050565b600061016082019050615d0c828451615936565b6020830151615d1e6020840182615936565b506040830151615d3160408401826159a1565b506060830151615d44606084018261599a565b506080830151615d57608084018261599a565b5060a083015160a083015260c083015160c083015260e083015160e083015261010080840151818401525061012080840151615d9582850182615936565b505061014092830151919092015290565b600060208252825160406020840152615dc26060840182615950565b905073ffffffffffffffffffffffffffffffffffffffff60208501511660408401528091505092915050565b61ffff91909116815260200190565b90815260200190565b600085825284602083015273ffffffffffffffffffffffffffffffffffffffff8416604083015260806060830152613ef86080830184615950565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112615e75578283fd5b83018035915067ffffffffffffffff821115615e8f578283fd5b602001915036819003821315613fa057600080fd5b60405181810167ffffffffffffffff81118282101715615ec057fe5b604052919050565b600067ffffffffffffffff821115615edc57fe5b5060209081020190565b600067ffffffffffffffff821115615efa57fe5b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b60005b83811015615f41578181015183820152602001615f29565b83811115610c555750506000910152565b73ffffffffffffffffffffffffffffffffffffffff8116811461147957600080fd5b8060020b811461147957600080fd5b63ffffffff8116811461147957600080fd5b60ff8116811461147957600080fdfea164736f6c6343000706000a0000000000000000000000008bceaa40b9acdfaedf85adf4ff01f5ad6517937f0000000000000000000000001f7d7550b1b028f7571e69a784071f0205fd2efa00000000000000000000000073991a25c818bf1f1128deaab1492d45638de0d30000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad73", - "nonce": "0x12", + "input": "0x00000000000000000000000000000000000000000000000000000000000000006102a080604052346104145761014081615c2380380380916100218285610433565b833981010312610414576040519061014082016001600160401b038111838210176104005760405261005281610456565b825261006060208201610456565b6020830190815261007360408301610456565b906040840191825261008760608401610456565b91606085019283526080840151946080810195865260a08501519360a082019485526100b560c08701610456565b9660c083019788526100c960e08801610456565b958660e08501526100f16101206100e36101008b01610456565b998a61010088015201610456565b98896101208601526040519761010689610418565b6001600160a01b03908116895298891660208901908152905194519651604051919991979082169695821695911661013d88610418565b8752602087019586525192519151905160405190936001600160a01b039384169316608082016001600160401b0381118382101761040057604052815260208101928352604081019182526060810193845260405161019d604082610433565b600f815260208101906e2ab734bb32b939b0b62937baba32b960891b8252604051916101ca604084610433565b600183526020830191601960f91b83526101e38161046a565b610120526101f084610600565b61014052519020918260e05251902080610100524660a0526040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261025960c082610433565b5190206080523060c052516001600160a01b0390811661016052905161018052905181166101a05290516101c0526101e091909152905181166102005290518116610220529051811661024052905181166102605216610280526040516154ea9081610739823960805181614008015260a051816140c5015260c05181613fd9015260e051816140570152610100518161407d0152610120518161061d0152610140518161064601526101605181818161191f01528181611b020152613d230152610180518181816118fe01528181611b240152613d0201526101a0518161333f01526101c0518161339201526101e0518181816086015281816103a20152818161051d015281816124670152818161298201528181614c7101528181614ce801528181614dba01528181614f2e01526152c6015261020051818181602401528181611ec8015261202b0152610220518181816115d70152818161221901526137000152610240518181816107380152818161258e015261267a01526102605181818161042a0152612a5001526102805181818161077b01528181612da20152612ef40152f35b634e487b7160e01b5f52604160045260245ffd5b5f80fd5b604081019081106001600160401b0382111761040057604052565b601f909101601f19168101906001600160401b0382119082101761040057604052565b51906001600160a01b038216820361041457565b908151602081105f146104e4575090601f8151116104a4576020815191015160208210610495571790565b5f198260200360031b1b161790565b604460209160405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b6001600160401b038111610400575f54600181811c911680156105f6575b60208210146105e257601f81116105b0575b50602092601f821160011461055157928192935f92610546575b50508160011b915f199060031b1c1916175f5560ff90565b015190505f8061052e565b601f198216935f8052805f20915f5b8681106105985750836001959610610580575b505050811b015f5560ff90565b01515f1960f88460031b161c191690555f8080610573565b91926020600181928685015181550194019201610560565b5f8052601f60205f20910160051c810190601f830160051c015b8181106105d75750610514565b5f81556001016105ca565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610502565b908151602081105f1461062b575090601f8151116104a4576020815191015160208210610495571790565b6001600160401b03811161040057600154600181811c9116801561072e575b60208210146105e257601f81116106fb575b50602092601f821160011461069a57928192935f9261068f575b50508160011b915f199060031b1c19161760015560ff90565b015190505f80610676565b601f1982169360015f52805f20915f5b8681106106e357508360019596106106cb575b505050811b0160015560ff90565b01515f1960f88460031b161c191690555f80806106bd565b919260206001819286850151815501940192016106aa565b60015f52601f60205f20910160051c810190601f830160051c015b818110610723575061065c565b5f8155600101610716565b90607f169061064a56fe60c08060405260043610156100ae575b50361561001a575f80fd5b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163314158061007b575b61005357005b7f38bbd576000000000000000000000000000000000000000000000000000000005f5260045ffd5b506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633141561004d565b5f3560e01c9081631a27b20114610df85750806324856bc314610d495780633593564c14610c6357806344684dc31461079f5780638021fef71461075c578063817122dc1461071957806384b0196e1461060557806391dd7346146104e2578063d04d79a21461044e578063d0c9f6cb1461040b578063d737d0c7146103c6578063dc4c90d3146103835763fa461e3314610149575f61000f565b3461027d57606060031936011261027d5760243560043560443567ffffffffffffffff811161027d57610180903690600401610e54565b5f831391821580610379575b6103515781810160408282031261027d5781359067ffffffffffffffff821161027d576101ba918301613160565b506020810135916001600160a01b03831680930361027d576101db91613278565b90601790602b8310610329578035968760601c9561020962ffffff8585013560601c9a60481c168a896132cb565b6001600160a01b033391160361030157156102f757508685105b1561023957505050610237935033916133df565b005b91935091939482602b0180602b116102e3578410610281575082821161027d578101910390600160ff1b84101561027d5761023793610278339161317e565b61344a565b5f80fd5b925050507faf28d9864a81dfdf71cab65f4e5d79a0cf9b083905fb8971425e6cb581b3f6929291925c82116102bb576102379233916133df565b7f739dbe52000000000000000000000000000000000000000000000000000000005f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b9550848710610223565b7f32b13d91000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3b99b53d000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f316cf0eb000000000000000000000000000000000000000000000000000000005f5260045ffd5b505f85131561018c565b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461027d575f60031936011261027d5760207f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c6001600160a01b0360405191168152f35b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461027d575f60031936011261027d5760607fd317c76a4357223a1868125ee857a1f31cabfcec288f6cdd0ea8c52b6a71ee315c7fa42de8dec63499ed8713dc6815ea14006a1f8e80e1664c66e3beb461bb65b0da5c7f17350132762f24cc4b86e10621ea1e0b5c33483a51cca86a1b11e7ed029b6eb65c906001600160a01b036040519316835260208301526040820152f35b3461027d57602060031936011261027d5760043567ffffffffffffffff811161027d57610513903690600401610e54565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036105dd5761054c916139c0565b908183036105b5575f5b8381106105895761058560405161056e6020826130d3565b5f8152604051918291602083526020830190610eb3565b0390f35b806105af61059a6001938789610ed8565b3560f81c6105a9838787610f17565b916141e4565b01610556565b7faaad13f7000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fae18210a000000000000000000000000000000000000000000000000000000005f5260045ffd5b3461027d575f60031936011261027d576106bd6106417f0000000000000000000000000000000000000000000000000000000000000000613796565b61066a7f00000000000000000000000000000000000000000000000000000000000000006138f0565b60206106cb6040519261067d83856130d3565b5f84525f3681376040519586957f0f00000000000000000000000000000000000000000000000000000000000000875260e08588015260e0870190610eb3565b908582036040870152610eb3565b4660608501523060808501525f60a085015283810360c08501528180845192838152019301915f5b82811061070257505050500390f35b8351855286955093810193928101926001016106f3565b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461027d575f60031936011261027d5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b61010060031936011261027d5760043567ffffffffffffffff811161027d576107cc903690600401610e54565b60243567ffffffffffffffff811161027d576107ec903690600401610e82565b91604435608435801515810361027d5760c43567ffffffffffffffff811161027d5761081c903690600401610e54565b9160e435804211610c3b57908891610833896130f6565b61084060405191826130d3565b89815261084c8a6130f6565b601f196020830191013682375f5b8b8110610be25750604051915160208301929183915f5b818110610bc9575050509361097c9693604293836108a06109859b99956109769903601f1981018352826130d3565b5190209115610bb7576001600160a01b036108bf33945b8d369161312a565b60208151910120936040519360208501957f4b503a2e339bf072a489301f3eec7abaefc520266c462796ed9267bbcc6e407c8752604086015260608501528b608085015260643560a08501521660c083015260a43560e08301526101008201526101008152610930610120826130d3565b51902061093b613fcf565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522092369161312a565b906140eb565b90929192614125565b5f1960a43503610b20575b7fd317c76a4357223a1868125ee857a1f31cabfcec288f6cdd0ea8c52b6a71ee315d7fa42de8dec63499ed8713dc6815ea14006a1f8e80e1664c66e3beb461bb65b0da5d6064357f17350132762f24cc4b86e10621ea1e0b5c33483a51cca86a1b11e7ed029b6eb65d333014610b12576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c16610aea57610a5b93337f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d610f32565b5f7f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d5b5f7fd317c76a4357223a1868125ee857a1f31cabfcec288f6cdd0ea8c52b6a71ee315d5f7fa42de8dec63499ed8713dc6815ea14006a1f8e80e1664c66e3beb461bb65b0da5d5f7f17350132762f24cc4b86e10621ea1e0b5c33483a51cca86a1b11e7ed029b6eb65d005b7f6f5ffb7e000000000000000000000000000000000000000000000000000000005f5260045ffd5b610b1b93610f32565b610a7f565b6001600160a01b038116805f52600260205260405f2060a4355f5260205260ff60405f205416610b8f575f52600260205260405f2060a4355f5260205260405f2060017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00825416179055610990565b7f1fb09b80000000000000000000000000000000000000000000000000000000005f5260045ffd5b6001600160a01b036108bf5f946108b7565b825184528f985060209384019390920191600101610871565b909192939450610bfd610bf6828d8d610f17565b369161312a565b60208151910120908351811015610c275760019160208260051b8601015201908b9493929161085a565b634e487b7160e01b5f52603260045260245ffd5b7f5bf6f916000000000000000000000000000000000000000000000000000000005f5260045ffd5b606060031936011261027d5760043567ffffffffffffffff811161027d57610c8f903690600401610e54565b60243567ffffffffffffffff811161027d57610caf903690600401610e82565b916044354211610c3b57333014610d40576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c16610aea57610d1b93337f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d610f32565b5f7f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d005b61023793610f32565b604060031936011261027d5760043567ffffffffffffffff811161027d57610d75903690600401610e54565b60243567ffffffffffffffff811161027d57610d95903690600401610e82565b91333014610d40576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c16610aea57610d1b93337f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085d610f32565b3461027d57604060031936011261027d57600435906001600160a01b03821680920361027d576020915f526002825260405f206024355f52825260ff60405f20541615158152f35b35906001600160a01b038216820361027d57565b9181601f8401121561027d5782359167ffffffffffffffff831161027d576020838186019501011161027d57565b9181601f8401121561027d5782359167ffffffffffffffff831161027d576020808501948460051b01011161027d57565b90601f19601f602080948051918291828752018686015e5f8582860101520116010190565b90821015610c27570190565b903590601e198136030182121561027d570180359067ffffffffffffffff821161027d5760200191813603831361027d57565b90821015610c2757610f2e9160051b810190610ee4565b9091565b929080820361308f579291905f915b848310610f4f575050505050565b9091929394610f5f848787610ed8565b3592610f6c858285610f17565b979092606097607f8760f81c1695600196602181105f14612ae657601081101561240157600881101561186a57806112fc5750610fae60208701359b876132a0565b95906080880135156112f5577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c9c5b610fe889356135e0565b9d918881608052600160ff1b8314611282575b50505b604260a052602b600160ff1b82101561027d5760a0518f908a1061127c575030915b89821161027d576040916001600160a01b035f60805135956110f861108f6110a3856110658b60601c6017608051013560601c62ffffff8183109e60481c16916132cb565b16968a8614611261576401000276a49b5b878b519485938d6020860152606085019060805161318e565b91168b83015203601f1981018352826130d3565b8488519a8b98899788967f128acb080000000000000000000000000000000000000000000000000000000088521660048701528b6024870152604486015216606484015260a0608484015260a4830190610eb3565b03925af1908115611256575f905f9261121a575b61111c935015611213575061317e565b60a05190969081106111635730908060171161027d576080805160170190527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe90196610ffe565b50979396929a509794909893604090910135116111eb575b1590816111dc575b50611195575060010191909392610f41565b906111d86040519283927f2c4029e90000000000000000000000000000000000000000000000000000000084526004840152604060248401526044830190610eb3565b0390fd5b600160ff1b915016155f611183565b7f39d35496000000000000000000000000000000000000000000000000000000005f5260045ffd5b905061317e565b9150506040823d821161124e575b81611235604093836130d3565b8101031261027d5781602061111c93519101519161110c565b3d9150611228565b6040513d5f823e3d90fd5b73fffd8963efd1fc6a506488495d951d5263988d259b611076565b91611020565b601491925010610329576020602491604051928380926370a0823160e01b82523060048301523560601c5afa908115611256575f916112c4575b505f80610ffb565b90506020813d82116112ed575b816112de602093836130d3565b8101031261027d57515f6112bc565b3d91506112d1565b309c610fde565b6001819c929a97939b96999598949c145f14611419575090611323602082013592826132a0565b608083013515611412577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c915b604061135d85356135e0565b9401357faf28d9864a81dfdf71cab65f4e5d79a0cf9b083905fb8971425e6cb581b3f6925d600160ff1b85101561027d5761139b936102788661317e565b9091901561140357506113ad9061317e565b036113db575f7faf28d9864a81dfdf71cab65f4e5d79a0cf9b083905fb8971425e6cb581b3f6925d5b61117b565b7fd4e0248e000000000000000000000000000000000000000000000000000000005f5260045ffd5b61140d915061317e565b6113ad565b3091611351565b6002810361146357506113d691604081013591507f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c61145c60208301356135e0565b91356136f4565b9394919390929060038103611633575050508135820163ffffffff60208401351683019163ffffffff83351693602080850194860101910110611626577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c92604051926001600160a01b0360208501957f2a2d80d10000000000000000000000000000000000000000000000000000000087521660248501526060604485015260e48401928035601e198236030181121561027d5781016020813591019467ffffffffffffffff821161027d578160071b3603861361027d5781906060608489015252610104860194905f905b80821061160857505050936115bc5f969482946115ca946040896001600160a01b0361158060208e9d01610e40565b1660a4880152013560c48601527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc85840301606486015261318e565b03601f1981018352826130d3565b5190826001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b9161117b565b9091956080808261161b6001948b61321d565b019701920190611551565b633b99b53d5f526004601cfd5b9194939092509060048103611766575061165060208201356135e0565b906001600160a01b038060408301351691351680155f146116b95750479081106116915780611681575b505061117b565b61168a91613a77565b5f8061167a565b7f6a12f104000000000000000000000000000000000000000000000000000000005f5260045ffd5b91604051916370a0823160e01b8352306004840152602083602481875afa928315611256575f93611733575b50821061170b57816116fa575b50505061117b565b61170392613f20565b5f80806116f2565b7f675cae38000000000000000000000000000000000000000000000000000000005f5260045ffd5b9092506020813d821161175e575b8161174e602093836130d3565b8101031261027d5751915f6116e5565b3d9150611741565b6005810361178d57508060406113d69201359061178660208201356135e0565b903561365a565b6006810361183f57506040810135906001600160a01b036117b160208301356135e0565b913516806117cd57506117c76113d69247613ede565b90613a77565b906040516370a0823160e01b8152306004820152602081602481865afa908115611256575f9161180c575b506113d69361180691613ede565b91613f20565b90506020813d8211611837575b81611826602093836130d3565b8101031261027d57516113d66117f8565b3d9150611819565b7fd76a1e9e000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b6008819c929a97939b96999598949c145f14611ab45750611890602083013591836135a8565b90608084013515611aad577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c915b6118c985356135e0565b928215610c27576118d9826135cc565b8360011015610c27576118fb611943916118f5602086016135cc565b90614ae9565b907f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000614b07565b948581611a93575b5050505f1982018281116102e35761197461196f6001600160a01b0392858561363d565b6135cc565b1693604051926370a0823160e01b84526001600160a01b038516928360048601526020856024818a5afa948515611256575f95611a56575b50946119bc929160209596613b35565b6024604051809581936370a0823160e01b835260048301525afa918215611256575f92611a22575b5060406119f4929301359261364d565b101561117b577f849eaf98000000000000000000000000000000000000000000000000000000005f5260045ffd5b91506020823d8211611a4e575b81611a3c602093836130d3565b8101031261027d5790519060406119e4565b3d9150611a2f565b92919450946020833d8211611a8b575b81611a73602093836130d3565b8101031261027d5791519194919390916119bc6119ac565b3d9150611a66565b611aa592611aa0856135cc565b6133df565b5f808561194b565b30916118bf565b60098103611d9a5750611ac790826135a8565b608083013515611d93577f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c915b611aff84356135e0565b917f0000000000000000000000000000000000000000000000000000000000000000937f0000000000000000000000000000000000000000000000000000000000000000955f9560028510611d6b576020820135975f1986018681116102e3579190825b611bb957505050604001358611611b91578215610c27576113d69585611b8c92611aa0856135cc565b613b35565b7f8ab0bc16000000000000000000000000000000000000000000000000000000005f5260045ffd5b90919897505f198901978989116102e357611bdb61196f611bfd9a898961363d565b611bf2611bec61196f8d8b8b61363d565b82614ae9565b8185879d939d614b07565b90604051907f0902f1ac0000000000000000000000000000000000000000000000000000000082526060826004816001600160a01b0387165afa918215611256575f905f93611d1b575b506001600160a01b036dffffffffffffffffffffffffffff8082931694169d169116145f14611d155799905b9980158015611d0d575b611ce55782611c8b91613ead565b916103e88302928084046103e814901517156102e357611caa9161364d565b6103e58102908082046103e514901517156102e357611cc891613ec0565b600181018091116102e3579880156102e3575f1901919082611b63565b7f7b9c8916000000000000000000000000000000000000000000000000000000005f5260045ffd5b508115611c7d565b90611c73565b6dffffffffffffffffffffffffffff8094506001600160a01b039250611d58839260603d8111611d64575b611d5081836130d3565b810190613aff565b50959093505050611c47565b503d611d46565b7f20db8267000000000000000000000000000000000000000000000000000000005f5260045ffd5b3091611af5565b93949193909290600a8103611e815750505063ffffffff60c08301351682019063ffffffff82351690836020808501948401019101106116265760a06115ca5f946115bc86957f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c956040519586946001600160a01b0360208701997f2b67b570000000000000000000000000000000000000000000000000000000008b52166024870152611e4c604487018261321d565b6001600160a01b03611e6060808301610e40565b1660c4870152013560e485015261010061010485015261012484019161318e565b91949390929091600b810361200c575050611ea1602082013591356135e0565b81600160ff1b8103611fdd57504791505b81611ebe57505061117b565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b1561027d576040517fd0e30db00000000000000000000000000000000000000000000000000000000081525f8160048185885af1801561125657611fcd575b50306001600160a01b03831603611f42575b5061167a565b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b03929092166004830152602482015290602090829060449082905f905af1801561125657611f9f575b8080611f3c565b611fbf9060203d8111611fc6575b611fb781836130d3565b810190613625565b505f611f98565b503d611fad565b5f611fd7916130d3565b5f611f2a565b471015611eb2577f6a12f104000000000000000000000000000000000000000000000000000000005f5260045ffd5b600c810361214357505061202081356135e0565b906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016604051916370a0823160e01b8352306004840152602083602481855afa928315611256575f9361210f575b50602001358210611691578161208e5750505061117b565b803b1561027d575f80916024604051809481937f2e1a7d4d0000000000000000000000000000000000000000000000000000000083528760048401525af18015611256576120ff575b50306001600160a01b038316036120ef575b806116f2565b6120f891613a77565b5f806120e9565b5f612109916130d3565b5f6120d7565b9092506020813d821161213b575b8161212a602093836130d3565b8101031261027d5751916020612076565b3d915061211d565b600d819c939c9b929597989b99949699145f1461232f57508a358b01988935946121756020808d019e8d0301876133d2565b11610329576001600160a01b037f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c169a935f5b86811015612201578c6001600160a01b036121cb60208f8560071b01016135cc565b16036121d9576001016121a9565b7fe7002877000000000000000000000000000000000000000000000000000000005f5260045ffd5b50989593979694929b919a5098506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690813b1561027d576040517f0d58b1db000000000000000000000000000000000000000000000000000000008152602060048201526024810184905292839160448301915f905b8082106122b55750505091815f81819503925af18015611256576122a5575b5061117b565b5f6122af916130d3565b5f61229f565b919350916080806001926001600160a01b036122d088610e40565b1681526001600160a01b036122e760208901610e40565b1660208201526001600160a01b0361230160408901610e40565b1660408201526001600160a01b0361231b60608901610e40565b166060820152019401920185939291612280565b80929b93989550600e919a97969450145f1461183f5750604051906370a0823160e01b82526001600160a01b0381351660048301526020826024816001600160a01b0384860135165afa918215611256575f926123cd575b50604001351115806113d65791506040517fa3281672000000000000000000000000000000000000000000000000000000006020820152600481526116026024826130d3565b9091506020813d82116123f9575b816123e8602093836130d3565b8101031261027d5751906040612387565b3d91506123db565b6010819c929a97939b96999598949c145f1461250f575061245a915f9160405193849283927f48c8949100000000000000000000000000000000000000000000000000000000845260206004850152602484019161318e565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1801561125657612499575061117b565b3d805f833e6124a881836130d3565b81019060208183031261027d5780519067ffffffffffffffff821161027d570181601f8201121561027d5780516124de8161310e565b926124ec60405194856130d3565b8184526020828401011161027d575f928160208094018483015e0101525f61229f565b80929495506011919350145f146125e45750907fffffffff000000000000000000000000000000000000000000000000000000008135167f7ac2ff7b0000000000000000000000000000000000000000000000000000000081036125b95750815f92918392604051928392833781018381520390826001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b7ff801e525000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b601281036128bc57507f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c917fffffffff000000000000000000000000000000000000000000000000000000008135167f0c49ccbe0000000000000000000000000000000000000000000000000000000081148015612893575b801561286a575b156125b9575060048101356001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016936040517f6352211e000000000000000000000000000000000000000000000000000000008152826004820152602081602481895afa908115611256576001600160a01b039182915f9161284c575b50169116908082149182156127c5575b8215612754575b505015612729575091815f809481946040519384928337810182815203925af1906116026131ae565b7fbb25d4c5000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b909150604051917fe985e9c500000000000000000000000000000000000000000000000000000000835260048301526024820152602081604481885afa908115611256575f916127a7575b505f80612700565b6127bf915060203d8111611fc657611fb781836130d3565b5f61279f565b91506040517f081812fc0000000000000000000000000000000000000000000000000000000081528360048201526020816024818a5afa9081156112565783916001600160a01b03915f9161281e575b501614916126f9565b61283f915060203d8111612845575b61283781836130d3565b810190613a58565b5f612815565b503d61282d565b612864915060203d81116128455761283781836130d3565b5f6126e9565b507f42966c68000000000000000000000000000000000000000000000000000000008114612665565b507ffc6f786500000000000000000000000000000000000000000000000000000000811461265e565b601381036129ad5750505f80916040516001600160a01b0360a060208301937f6276cbbe0000000000000000000000000000000000000000000000000000000085528261290882610e40565b1660248501528261291b60208301610e40565b16604485015262ffffff612931604083016131dd565b166064850152612943606082016131ed565b60020b60848501528261295860808301610e40565b1660a485015201351660c482015260c4815261297560e4826130d3565b5190826001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b6014810361183f57507fffffffff000000000000000000000000000000000000000000000000000000008235167fdd46508f0000000000000000000000000000000000000000000000000000000081036125b957508060041161027d57612a24612a1e600319830160048501613278565b90613278565b5f5b818110612a7b575050505f9182914791816040519283928337810184815203916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1906116026131ae565b612a86818385610ed8565b3560f81c8015908115612adb575b8115612ad0575b50612aa857600101612a26565b7f5d1d0f9f000000000000000000000000000000000000000000000000000000005f5260045ffd5b60039150145f612a9b565b600181149150612a94565b90989591996040829c949c999699989598105f14612c2f57506021810361183f575090612b12916139c0565b612b556040959395519460208601967f24856bc300000000000000000000000000000000000000000000000000000000885260406024880152606487019161318e565b927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc858503016044860152818452602084019160208160051b86010194845f90601e19813603015b848310612bd35750505050505050509181612bc45f9493859403601f1981018352826130d3565b519082305af1906116026131ae565b9091929394959697601f1985820301885288358281121561027d578301906020823592019167ffffffffffffffff811161027d57803603831361027d57612c1f60209283928b9561318e565b9a01980196959493019190612b9d565b949392906040810361183f575081019060208183031261027d5780359067ffffffffffffffff821161027d5701906101a08282031261027d57604051906101a0820182811067ffffffffffffffff82111761307b57604052612c9083610e40565b8252612c9e60208401610e40565b9060208301918252612cb260408501610e40565b60408401908152612cc4888601610e40565b92888501938452608085016080870135815260a086019660a0810135885260c087019460c08201358652612cfa60e08301610e40565b60e08901908152612d0e6101008401613597565b6101008a01908152612d236101208501613597565b916101208b01928352612d396101408601613597565b936101408c0194855261016086013567ffffffffffffffff811161027d5761018091612d66918801613160565b956101608d019687520135958615159081880361027d576101808d0197885251965f91600160ff1b8914612ffc575b505115612ebd575085985b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169b516001600160a01b031697516001600160a01b031698516001600160a01b03169a516001600160a01b03169c51905191516001600160a01b0316925163ffffffff16935163ffffffff16945163ffffffff169551968c3b1561027d576040519d8e9c8d9b8c9b7f7b939232000000000000000000000000000000000000000000000000000000008d5260048d015260248c015260448b015260648a0152608489015260a488015260c487015260e4860152610104850152610124840152610144830152610164820161018090526101848201612ea691610eb3565b03915a945f95f18015611256576122a5575061117b565b88516040517f095ea7b300000000000000000000000000000000000000000000000000000000602082019081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166024840181905260448085018d90528452949d949316905f908190612f3b6064866130d3565b84519082855af1612f4a6131ae565b81612fcd575b5080612fc3575b15612f65575b505050612da0565b612fb6612fbb93604051907f095ea7b300000000000000000000000000000000000000000000000000000000602083015260248201525f604482015260448152612fb06064826130d3565b82614a64565b614a64565b5f8080612f5d565b50803b1515612f57565b8051801592508215612fe2575b50505f612f50565b612ff59250602080918301019101613625565b5f80612fda565b9097501561300d5747965b5f612d95565b602460206001600160a01b038b5116604051928380926370a0823160e01b82523060048301525afa908115611256575f9161304a575b5096613007565b90506020813d8211613073575b81613064602093836130d3565b8101031261027d57515f613043565b3d9150613057565b634e487b7160e01b5f52604160045260245ffd5b7fff633a38000000000000000000000000000000000000000000000000000000005f5260045ffd5b60a0810190811067ffffffffffffffff82111761307b57604052565b90601f601f19910116810190811067ffffffffffffffff82111761307b57604052565b67ffffffffffffffff811161307b5760051b60200190565b67ffffffffffffffff811161307b57601f01601f191660200190565b9291926131368261310e565b9161314460405193846130d3565b82948184528183011161027d578281602093845f960137010152565b9080601f8301121561027d5781602061317b9335910161312a565b90565b600160ff1b81146102e3575f0390565b601f8260209493601f1993818652868601375f8582860101520116010190565b3d156131d8573d906131bf8261310e565b916131cd60405193846130d3565b82523d5f602084013e565b606090565b359062ffffff8216820361027d57565b35908160020b820361027d57565b9081602091031261027d575190565b359065ffffffffffff8216820361027d57565b65ffffffffffff613272606080936001600160a01b0361323c82610e40565b1686526001600160a01b0361325360208301610e40565b166020870152836132666040830161320a565b1660408701520161320a565b16910152565b909163ffffffff82351682019263ffffffff8435169260208086019585010191011061162657565b909163ffffffff60608301351682019263ffffffff8435169260208086019585010191011061162657565b906001600160a01b0392838216848416116133ca575b62ffffff9084604051938160208601961686521660408401521660608201526060815261330f6080826130d3565b5190206040517fff00000000000000000000000000000000000000000000000000000000000000602082019081527f000000000000000000000000000000000000000000000000000000000000000060601b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016602183015260358201929092527f000000000000000000000000000000000000000000000000000000000000000060558201526133c381607581016115bc565b5190201690565b9091906132e1565b919082018092116102e357565b909291906001600160a01b03841630036133ff576133fd935061365a565b565b91926001600160a01b038411613422576001600160a01b036133fd9416926136f4565b7fc4bd89a9000000000000000000000000000000000000000000000000000000005f5260045ffd5b939290602b8210610329578235938460601c92601785013560601c9380851094859760481c62ffffff169061347e926132cb565b6001600160a01b031692845f146040966001600160a01b0380956134db5f9661352e9561357c576401000276a4925b846134c78e51978f9489956020870152606086019161318e565b91168d83015203601f1981018552846130d3565b89519b8c998a9889977f128acb080000000000000000000000000000000000000000000000000000000089521660048801526024870152604486015216606484015260a0608484015260a4830190610eb3565b03925af18015611256575f925f9161354557509192565b9250506040823d604011613574575b81613561604093836130d3565b8101031261027d57602082519201519192565b3d9150613554565b73fffd8963efd1fc6a506488495d951d5263988d25926134ad565b359063ffffffff8216820361027d57565b9160608301358301916135c56020843595818601950301856133d2565b1161032957565b356001600160a01b038116810361027d5790565b6001600160a01b038116600181036136195750507f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c90565b60020361317b57503090565b9081602091031261027d5751801515810361027d5790565b9190811015610c275760051b0190565b919082039182116102e357565b9091906001600160a01b03168061367557506133fd91613a77565b600160ff1b821461368b575b916133fd92613f20565b9050604051916370a0823160e01b8352306004840152602083602481855afa8015611256575f906136c0575b90925090613681565b506020833d6020116136ec575b816136da602093836130d3565b8101031261027d576133fd92516136b7565b3d91506136cd565b91926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b1561027d575f6001600160a01b039384829681608496816040519b8c9a8b997f36c78516000000000000000000000000000000000000000000000000000000008b521660048a01521660248801521660448601521660648401525af180156112565761378c5750565b5f6133fd916130d3565b60ff81146137f55760ff811690601f82116137cd57604051916137ba6040846130d3565b6020808452838101919036833783525290565b7fb3512b0c000000000000000000000000000000000000000000000000000000005f5260045ffd5b506040515f80548060011c91600182169182156138e6575b6020841083146138d25783855284929081156138955750600114613838575b61317b925003826130d3565b505f80805290917f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b81831061387957505090602061317b9282010161382c565b6020919350806001915483858801015201910190918392613861565b6020925061317b9491507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682840152151560051b82010161382c565b634e487b7160e01b5f52602260045260245ffd5b92607f169261380d565b60ff81146139145760ff811690601f82116137cd57604051916137ba6040846130d3565b506040515f6001548060011c91600182169182156139b6575b6020841083146138d257838552849290811561389557506001146139575761317b925003826130d3565b5060015f90815290917fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b81831061399a57505090602061317b9282010161382c565b6020919350806001915483858801015201910190918392613982565b92607f169261392d565b604081351891606082019363ffffffff6040840135169363ffffffe0601f8601169060608201602086013518179084019260608401359463ffffffff861694641fffffffe0608082019760051b1680915f925b808410613a2b57506080925001019101101761162657565b90916020809163ffffffe0601f60808089890101359b848d18179b88010135011601019301929190613a13565b9081602091031261027d57516001600160a01b038116810361027d5790565b5f80809381935af115613a8657565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4554485f5452414e534645525f4641494c4544000000000000000000000000006044820152fd5b51906dffffffffffffffffffffffffffff8216820361027d57565b9081606091031261027d57613b1381613ae4565b916040613b2260208401613ae4565b92015163ffffffff8116810361027d5790565b9160028210613e85578115610c2757613b4d836135cc565b8260011015610c2757613b69906118f5602086979596016135cc565b50925f198101937ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe8201955f90602093601f198501965b888410613bb35750505050505050505050565b613bc161196f85848661363d565b946001600160a01b03613bdb61196f60018801868861363d565b921695604051917f0902f1ac0000000000000000000000000000000000000000000000000000000083526060836004818b5afa91821561125657895f945f94613e3f575b506001600160a01b03806dffffffffffffffffffffffffffff80602496979816971693169416841494855f14613e395791935b604051938480926370a0823160e01b82528d60048301525afa918215611256575f92613e0a575b5080820392811592838015613e02575b611ce557826103e586029586046103e514911417156102e357613cac9084613ead565b916103e882029182046103e81417156102e357613cd292613ccc916133d2565b90613ec0565b9015613dfb575f90915b8b861015613df25790613cfd613d47926118f561196f60028a01888a61363d565b8193917f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000614b07565b915b9660405190613d588a836130d3565b5f82528b368b840137803b1561027d57613dc6945f8094604051978895869485937f022c0d9f000000000000000000000000000000000000000000000000000000008552600485015260248401526001600160a01b0389166044840152608060648401526084830190610eb3565b03925af191821561125657600192613de2575b50930192613ba0565b5f613dec916130d3565b5f613dd9565b5087905f613d49565b5f91613cdc565b508115613c89565b9091508981813d8311613e32575b613e2281836130d3565b8101031261027d5751905f613c79565b503d613e18565b93613c52565b6dffffffffffffffffffffffffffff955060249394506001600160a01b0386613e76829360603d8111611d6457611d5081836130d3565b50989098979650505050613c1f565b7fae52ad0c000000000000000000000000000000000000000000000000000000005f5260045ffd5b818102929181159184041417156102e357565b8115613eca570490565b634e487b7160e01b5f52601260045260245ffd5b6127108211613ef85761271091613ef491613ead565b0490565b7fdeaa01e6000000000000000000000000000000000000000000000000000000005f5260045ffd5b5f9182604492602095604051937fa9059cbb000000000000000000000000000000000000000000000000000000008552600485015260248401525af13d15601f3d1160015f511416171615613f7157565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f5452414e534645525f4641494c454400000000000000000000000000000000006044820152fd5b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163014806140c2575b1561402a577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a081526140bc60c0826130d3565b51902090565b507f00000000000000000000000000000000000000000000000000000000000000004614614001565b815191906041830361411b576141149250602082015190606060408401519301515f1a90614bd0565b9192909190565b50505f9160029190565b60048110156141d05780614137575050565b60018103614167577ff645eedf000000000000000000000000000000000000000000000000000000005f5260045ffd5b6002810361419b57507ffce698f7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b6003146141a55750565b7fd78bce0c000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b929190600b84101561489257600784036144375761420392935061503b565b60208101906142128282615049565b5f93915080614220846135cc565b9261422d60608601614fa8565b6fffffffffffffffffffffffffffffffff811615614420575b60408601916142558388615049565b801515958692509082614415575b50506143ed575f9591949395945b8486106142f457505050505050506080016fffffffffffffffffffffffffffffffff8061429d83614fa8565b1692169182106142ab575050565b6142c56fffffffffffffffffffffffffffffffff91614fa8565b7f8b063d73000000000000000000000000000000000000000000000000000000005f521660045260245260445ffd5b86985061435461434f6fffffffffffffffffffffffffffffffff9261433161432a8a614324888f9e9c9d9e615049565b9061507f565b9687615359565b94909116936143436080880188610ee4565b929091865f03916151d3565b615432565b98614372575b50600161436789936135cc565b960194939591614271565b61439990670de0b6b3a76400006fffffffffffffffffffffffffffffffff8b169102613ec0565b6143ad876143a7868b615049565b9061363d565b358082116143bb575061435a565b877fa9b7edf7000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b7f947446a5000000000000000000000000000000000000000000000000000000005f5260045ffd5b14159050855f614263565b5061443261442d85614c6a565b61518e565b614246565b6006840361452e5761444a929350614f99565b61445660c08201614fa8565b6fffffffffffffffffffffffffffffffff8116156144dd575b6144c061434f60e09261449f6fffffffffffffffffffffffffffffffff61449860a08801614fc5565b921661317e565b906144ae610100870187610ee4565b9290916144bb3689614fd2565b6151d3565b91016fffffffffffffffffffffffffffffffff8061429d83614fa8565b506144ea60a08201614fc5565b156145145760e06144c061434f61450b61442d614506866135cc565b614c6a565b9250505061446f565b60e06144c061434f61450b61442d614506602087016135cc565b600984036147455761454192935061503b565b60208101906145508282615049565b90505f9261456060608401614fa8565b9161456a846135cc565b926fffffffffffffffffffffffffffffffff811615614733575b6040850190826145948388615049565b801515958692509082614728575b50506143ed57949093929493845b61462f575050505050506080016fffffffffffffffffffffffffffffffff806145d883614fa8565b1692169182116145e6575050565b6146006fffffffffffffffffffffffffffffffff91614fa8565b7f12bacdd3000000000000000000000000000000000000000000000000000000005f521660045260245260445ffd5b8597506fffffffffffffffffffffffffffffffff61469361468961432a9361466c61465e898d9c9a9b9c615049565b96905f198d0197889161507f565b94909116938461467f6080890189610ee4565b93909215906151d3565b600f0b5f0361518e565b986146b3575b50505f196146a788926135cc565b950193929490846145b0565b6146d990670de0b6b3a76400006fffffffffffffffffffffffffffffffff8b1602613ec0565b906146e8816143a7868b615049565b35908183116146f75750614699565b7fe6518043000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b14159050815f6145a2565b5061474061442d84614f27565b614584565b6008841461477c575050505b7f5cda29d7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b614787929350614f99565b61479360c08201614fa8565b6fffffffffffffffffffffffffffffffff811615614817575b6147fa61442d6147f26fffffffffffffffffffffffffffffffff60e0946147d560a08801614fc5565b6147e3610100890189610ee4565b93909216906144bb368a614fd2565b600f0b61317e565b91016fffffffffffffffffffffffffffffffff806145d883614fa8565b5061482460a08201614fc5565b156148675760e06147fa61442d6147f26fffffffffffffffffffffffffffffffff61485c61442d614857602089016135cc565b614f27565b9450505050506147ac565b60e06147fa61442d6147f26fffffffffffffffffffffffffffffffff61485c61442d614857886135cc565b92600c810361491657506148a69192614f14565b906148b081614f27565b918083116148e65750906133fd917f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c90614da8565b90507f12bacdd3000000000000000000000000000000000000000000000000000000005f5260045260245260445ffd5b600f810361499957506149299192614f14565b9061493381614c6a565b918083106149695750906133fd917f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c90614cd6565b90507f8b063d73000000000000000000000000000000000000000000000000000000005f5260045260245260445ffd5b600b81036149f257506149b0906133fd9293614c52565b156149e7576149e1827f0e87e1788ebd9ed6a7e63c70a374cd3283e41cad601d21fbe27863899ed4a7085c92614d83565b91614da8565b6149e1823092614d83565b600e8103614a255750614a19614a0f614a1f926133fd9495614c52565b92829492916135e0565b92614d6f565b91614cd6565b9260108414614a3657505050614751565b6133fd929350614a4c614a5592614a1f92614c52565b929193906135e0565b91614a5f84614c6a565b613ede565b5f806001600160a01b03614a8d93169360208151910182865af1614a866131ae565b9083615451565b8051908115159182614ace575b5050614aa35750565b7f5274afe7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b614ae19250602080918301019101613625565b155f80614a9a565b6001600160a01b0382166001600160a01b038216105f14610f2e5791565b916133c3906001600160a01b03947fffffffffffffffffffffffffffffffffffffffff0000000000000000000000006040519181602084019460601b16845260601b16603482015260288152614b5e6048826130d3565b5190206115bc604051938492602084019687917fffffffffffffffffffffffffffffffffffffffff000000000000000000000000605594927fff00000000000000000000000000000000000000000000000000000000000000855260601b166001840152601583015260358201520190565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411614c47579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa15611256575f516001600160a01b03811615614c3d57905f905f90565b505f906001905f90565b5050505f9160039190565b90606011611626578035916040602083013592013590565b614c9581307f00000000000000000000000000000000000000000000000000000000000000006150bf565b905f8212614ca1575090565b6001600160a01b03907f4c085bf1000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b90918015614d6a576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b1561027d575f92836064926001600160a01b03948560405198899788967f0b0d9c0900000000000000000000000000000000000000000000000000000000885216600487015216602485015260448401525af180156112565761378c5750565b505050565b9081614d7f5761317b9150614c6a565b5090565b90600160ff1b8203614d995761317b915061514c565b81614d7f5761317b9150614f27565b5f918315614f0e576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b1561027d576001600160a01b03604051917fa584119400000000000000000000000000000000000000000000000000000000835216908160048201525f8160248183885af1801561125657614ef9575b5080614eac5750506020906004604051809581937f11da60b40000000000000000000000000000000000000000000000000000000083525af1908115614ea05750614e755750565b614e969060203d602011614e99575b614e8e81836130d3565b8101906131fb565b50565b503d614e84565b604051903d90823e3d90fd5b83948360209493614ebc936133df565b6004604051809581937f11da60b40000000000000000000000000000000000000000000000000000000083525af1908115614ea05750614e755750565b614f069194505f906130d3565b5f925f614e2d565b50505050565b9190604011611626576020823592013590565b614f5281307f00000000000000000000000000000000000000000000000000000000000000006150bf565b905f8213614f64575061317b9061317e565b6001600160a01b03907f3351b260000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b90610140116116265780350190565b356fffffffffffffffffffffffffffffffff8116810361027d5790565b35801515810361027d5790565b91908260a091031261027d57604051614fea816130b7565b6080615036818395614ffb81610e40565b855261500960208201610e40565b602086015261501a604082016131dd565b604086015261502b606082016131ed565b606086015201610e40565b910152565b9060a0116116265780350190565b903590601e198136030182121561027d570180359067ffffffffffffffff821161027d57602001918160051b3603831361027d57565b9190811015610c275760051b810135907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff618136030182121561027d570190565b6001600160a01b03809381602094165f52168252602460405f2060405194859384927ff135baaa0000000000000000000000000000000000000000000000000000000084526004840152165afa908115611256575f9161511d575090565b90506020813d602011615144575b81615138602093836130d3565b8101031261027d575190565b3d915061512b565b6001600160a01b03168061515f57504790565b6020602491604051928380926370a0823160e01b82523060048301525afa908115611256575f9161511d575090565b906fffffffffffffffffffffffffffffffff82168092036151ab57565b7f93dafdf1000000000000000000000000000000000000000000000000000000005f5260045ffd5b909290831561533e576401000276a4905b60405194606086019386851067ffffffffffffffff86111761307b576001600160a01b0397886080956152b9946020986040521515998a8152888101908a82528360408201931683526040519c8d998a997ff3cd914c000000000000000000000000000000000000000000000000000000008b528281511660048c0152828d8201511660248c015262ffffff60408201511660448c0152606081015160020b60648c0152015116608489015251151560a48801525160c4870152511660e485015261012061010485015261012484019161318e565b03815f6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1928315611256575f9361530a575b505f130361530457600f0b90565b60801d90565b9092506020813d602011615336575b81615326602093836130d3565b8101031261027d5751915f6152f6565b3d9150615319565b73fffd8963efd1fc6a506488495d951d5263988d25906151e4565b905f6080604051615369816130b7565b8281528260208201528260408201528260608201520152615389826135cc565b6001600160a01b038216916001600160a01b0382168084105f1461542057506001600160a01b03905b1680921492602081013562ffffff811680910361027d576040820135918260020b80930361027d5760600135926001600160a01b03841680940361027d576001600160a01b039060405195615406876130b7565b865216602085015260408401526060830152608082015291565b9150506001600160a01b0382916153b2565b5f81600f0b126151ab576fffffffffffffffffffffffffffffffff1690565b9061548e575080511561546657805190602001fd5b7f1425ea42000000000000000000000000000000000000000000000000000000005f5260045ffd5b815115806154d4575b61549f575090565b6001600160a01b03907f9996b315000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b50803b1561549756fea164736f6c634300081a000a000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000000bd7d308f8e1639fab988df18a8011f41eacad730000000000000000000000008bceaa40b9acdfaedf85adf4ff01f5ad6517937f0000000000000000000000001f7d7550b1b028f7571e69a784071f0205fd2efa96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b540000000000000000000000008366a39cc670b4001a1121b8f6a443a643e4095100000000000000000000000073991a25c818bf1f1128deaab1492d45638de0d300000000000000000000000058daec3116aae6d93017baaea7749052e8a04fa70000000000000000000000007332d11bd10d18a04b119cd4671a96f3148002c4", + "nonce": "0x2f", "chainId": "0x1237" }, "additionalContracts": [], @@ -313,370 +23,27 @@ "receipts": [ { "status": "0x1", - "cumulativeGasUsed": "0x65ba7", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x6fc488375115e6de29f6ffc19ca5a7ed4971643b4b12e3e27933e3c73770ed5c", - "transactionIndex": "0x1", - "blockHash": "0x41235b1e3a96c0f4f37371dad9081fea1541afeaa496c1fb6505fe5f93b7b722", - "blockNumber": "0x2366", - "gasUsed": "0x65ba7", - "effectiveGasPrice": "0x5f5e100", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": null, - "contractAddress": "0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3", - "gasUsedForL1": "0xfc77", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x1f702d", + "cumulativeGasUsed": "0x4b1cc3", "logs": [], "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x62f593041cda98f3418898cfaae97617421de867c0d6fd4480f8a652ffe721b5", + "type": "0x0", + "transactionHash": "0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3", "transactionIndex": "0x1", - "blockHash": "0x515b5c35fd9a379cc04be19363f196225007bd65466e78af9879318ddf5a7326", - "blockNumber": "0x2367", - "gasUsed": "0x1f702d", - "effectiveGasPrice": "0x5f5e100", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": null, - "contractAddress": "0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7", - "gasUsedForL1": "0x368c8", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x644c0", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0xac803b65ac1d16bc3489342e08f3888d176a7491ff19551e394b4258931408f5", - "transactionIndex": "0x1", - "blockHash": "0x748006487040645cc4962d15d99debd0474acc853f9b5cf13342714ee5d0c774", - "blockNumber": "0x2369", - "gasUsed": "0x644c0", - "effectiveGasPrice": "0x5fdd040", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": null, - "contractAddress": "0x7dfd4f31be6814d2906bde155c3e1b146eac1468", - "gasUsedForL1": "0xe554", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x5b310c", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x76beabf4d46eb1bfdbe77a17918b85748b2bd246b4e0c901fec23ebc81b34fa6", - "transactionIndex": "0x1", - "blockHash": "0x8140d7babf67f5272ea22181c4c1b3efb394bf12e43a91a8930e6e21171d1fb2", - "blockNumber": "0x236a", - "gasUsed": "0x5b310c", + "blockHash": "0x70f677a707a300f12aa4130fae081f69f90981a6d08525e5642d09d59fa0dc94", + "blockNumber": "0x459d", + "gasUsed": "0x4b1cc3", "effectiveGasPrice": "0x5f5e100", "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", "contractAddress": null, - "gasUsedForL1": "0x98ddd", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x151f98", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0xd4a9ab6d6f1f7dae3f1eacb975d46776892e0d1c68f700a7d1346b725ebed5bb", - "transactionIndex": "0x1", - "blockHash": "0xd3a26a80be36c643c8f8a3e0826980cdd224d2391a5cf35338cbbd4870c6adc2", - "blockNumber": "0x236b", - "gasUsed": "0x151f98", - "effectiveGasPrice": "0x5f6f270", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": null, - "contractAddress": "0x2bb4e3af3f07353a3e3c91126bd30654abf03369", - "gasUsedForL1": "0x2d455", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x98e95", - "logs": [ - { - "address": "0x6f84dae9c064ff453e5c8af51efb819f8f610225", - "topics": [ - "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", - "0x0000000000000000000000002bb4e3af3f07353a3e3c91126bd30654abf03369" - ], - "data": "0x", - "blockHash": "0x1c1f563b01bfce53a87e1a56f0551a7e2308d5a0d2bead9ee20ff4b3fd0412a9", - "blockNumber": "0x236c", - "blockTimestamp": "0x6a109ac6", - "transactionHash": "0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02", - "transactionIndex": "0x1", - "logIndex": "0x0", - "removed": false - }, - { - "address": "0x89473d1ff90a8cf9a81388e1c6e5ad393ff0e894", - "topics": [ - "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x0000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a52" - ], - "data": "0x", - "blockHash": "0x1c1f563b01bfce53a87e1a56f0551a7e2308d5a0d2bead9ee20ff4b3fd0412a9", - "blockNumber": "0x236c", - "blockTimestamp": "0x6a109ac6", - "transactionHash": "0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02", - "transactionIndex": "0x1", - "logIndex": "0x1", - "removed": false - }, - { - "address": "0x6f84dae9c064ff453e5c8af51efb819f8f610225", - "topics": [ - "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" - ], - "data": "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000089473d1ff90a8cf9a81388e1c6e5ad393ff0e894", - "blockHash": "0x1c1f563b01bfce53a87e1a56f0551a7e2308d5a0d2bead9ee20ff4b3fd0412a9", - "blockNumber": "0x236c", - "blockTimestamp": "0x6a109ac6", - "transactionHash": "0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02", - "transactionIndex": "0x1", - "logIndex": "0x2", - "removed": false - } - ], - "logsBloom": "0x40000000000000000000000000000000400000000000000000800000000000000000000000000000000000000000000000000000000000200000200000000000000000000000000001080000000002000001000000000000000000000000000000000000020000000000020000000800000000800000000000000000400000400000000000000000000000000000000000002000000000000000000000800000000000000400000000000000000000000000000000000000000004000000000000000020000000000000000000000000000000000400000000000000000020000000000000000000000000000000000000000000000080000040000000000000", - "type": "0x2", - "transactionHash": "0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02", - "transactionIndex": "0x1", - "blockHash": "0x1c1f563b01bfce53a87e1a56f0551a7e2308d5a0d2bead9ee20ff4b3fd0412a9", - "blockNumber": "0x236c", - "gasUsed": "0x98e95", - "effectiveGasPrice": "0x60ac890", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": null, - "contractAddress": "0x6f84dae9c064ff453e5c8af51efb819f8f610225", - "gasUsedForL1": "0x19c38", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x5e7c5e", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x9a8d07e70166be68c325939e2cece936f3ce5b16c580f49291f844d7cd718d4e", - "transactionIndex": "0x1", - "blockHash": "0x453d2e99fea8384bba9325dcd9e4e726e4631443f68bd03ab84d9ccbc88e0c52", - "blockNumber": "0x236d", - "gasUsed": "0x5e7c5e", - "effectiveGasPrice": "0x60f8380", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": null, - "contractAddress": "0x73991a25c818bf1f1128deaab1492d45638de0d3", - "gasUsedForL1": "0xaf8fe", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x5a739a", - "logs": [ - { - "address": "0x8366a39cc670b4001a1121b8f6a443a643e40951", - "topics": [ - "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x0000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a52" - ], - "data": "0x", - "blockHash": "0x9165e92381503c5e0cd1afc3e3647089d93a301c3e010722dbaf6e605d4ce38c", - "blockNumber": "0x236e", - "blockTimestamp": "0x6a109ac7", - "transactionHash": "0x4fb28d4935866f462582c6c931c6f2705e55f5be5eb178c7d8d9329a95c44c41", - "transactionIndex": "0x1", - "logIndex": "0x0", - "removed": false - } - ], - "logsBloom": "0x00000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000001000000000000000000000000000000000000020000000000020000000800000000000000000000000000000000400000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000040000002000000", - "type": "0x2", - "transactionHash": "0x4fb28d4935866f462582c6c931c6f2705e55f5be5eb178c7d8d9329a95c44c41", - "transactionIndex": "0x1", - "blockHash": "0x9165e92381503c5e0cd1afc3e3647089d93a301c3e010722dbaf6e605d4ce38c", - "blockNumber": "0x236e", - "gasUsed": "0x5a739a", - "effectiveGasPrice": "0x5f5e100", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": null, - "gasUsedForL1": "0xa4808", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x5d074f", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x6a12fc28ab5da16c1fe341d10c6a562becd330c4982e4f74fbbb7c1a10d155e4", - "transactionIndex": "0x1", - "blockHash": "0x043dd11aafa94548f91f7c39a672df23fce7a7e9bd68e32f2902132502ce3f51", - "blockNumber": "0x236f", - "gasUsed": "0x5d074f", - "effectiveGasPrice": "0x60a0540", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": null, - "gasUsedForL1": "0xc9af9", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x99605", - "logs": [ - { - "address": "0x9639443158e8c5efa35bd45287bf2effd3d8dc06", - "topics": [ - "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", - "0x000000000000000000000000c1514adf9caed7ab2cf2dd7b3225761df61f03a8" - ], - "data": "0x", - "blockHash": "0x62de7c960bbeffa2ccc0cd8613e153135d2f57f72c505c0e47dc2ec541cf51af", - "blockNumber": "0x2370", - "blockTimestamp": "0x6a109ac7", - "transactionHash": "0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2", - "transactionIndex": "0x1", - "logIndex": "0x0", - "removed": false - }, - { - "address": "0x525b4bd46d3a33f16ac815b4a303b3110fb9d10b", - "topics": [ - "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x0000000000000000000000009701fb0ade1e269c8f64ec0c7b3cfadb31a13a52" - ], - "data": "0x", - "blockHash": "0x62de7c960bbeffa2ccc0cd8613e153135d2f57f72c505c0e47dc2ec541cf51af", - "blockNumber": "0x2370", - "blockTimestamp": "0x6a109ac7", - "transactionHash": "0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2", - "transactionIndex": "0x1", - "logIndex": "0x1", - "removed": false - }, - { - "address": "0x9639443158e8c5efa35bd45287bf2effd3d8dc06", - "topics": [ - "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" - ], - "data": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000525b4bd46d3a33f16ac815b4a303b3110fb9d10b", - "blockHash": "0x62de7c960bbeffa2ccc0cd8613e153135d2f57f72c505c0e47dc2ec541cf51af", - "blockNumber": "0x2370", - "blockTimestamp": "0x6a109ac7", - "transactionHash": "0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2", - "transactionIndex": "0x1", - "logIndex": "0x2", - "removed": false - } - ], - "logsBloom": "0x00000000000000000000000001000000400000000000000000800010000000000000000100080000000000000000000000000000000000200000000000000000000000000000000000000080000002000001000000000000000000000000000000000000024000000000020000000800000000800000000000000000000000400000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000020000000004000000000000000020000000000000000000000000010000000400000000000000000020000000000000000000000000000000000000000000000000000040000000000000", - "type": "0x2", - "transactionHash": "0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2", - "transactionIndex": "0x1", - "blockHash": "0x62de7c960bbeffa2ccc0cd8613e153135d2f57f72c505c0e47dc2ec541cf51af", - "blockNumber": "0x2370", - "gasUsed": "0x99605", - "effectiveGasPrice": "0x61e2980", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": null, - "gasUsedForL1": "0x19eb5", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x5abf3a", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x228c18ada6cb46b4fbcc18f4ec1519953415393e256fa8349aafbd5a2db037c8", - "transactionIndex": "0x1", - "blockHash": "0x57535f50e190e2806787481baf10fbc16899c78db3d81fd5792b75d8447bf1dd", - "blockNumber": "0x2371", - "gasUsed": "0x5abf3a", - "effectiveGasPrice": "0x63274d0", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": null, - "gasUsedForL1": "0xa64a8", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x176832", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x6bf436d72a17f87284ddcab43094689bd320dfb39b535213b9a0b669fabc4ab4", - "transactionIndex": "0x1", - "blockHash": "0xe4e326b8cb7d06096a189ad4755858db343274c690ae2bf832132e90cc04907f", - "blockNumber": "0x2372", - "gasUsed": "0x176832", - "effectiveGasPrice": "0x63470a0", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": null, - "gasUsedForL1": "0x275a7", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0xdff5d", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x3d61e2c9eeb482385b1aa436b9e8f812167ea579cc390e4f93bc5abde00582f4", - "transactionIndex": "0x1", - "blockHash": "0x30e8a2c1d72be59a478815404c310a5608fffe4ecc22e58074ba2e77c90b6be3", - "blockNumber": "0x2373", - "gasUsed": "0xdff5d", - "effectiveGasPrice": "0x5f5e100", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": null, - "gasUsedForL1": "0x19288", - "l1BlockNumber": "0x17fcbd9" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x5ac2f3", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0xeaa1bf6bd8e86ab33150936414780779800a2aa04a98667f4059ef5dfc0cdf92", - "transactionIndex": "0x1", - "blockHash": "0x1f2bc3a30cfa810e784a5b5976f13e192584a81fae956b777d27cc6e098b3420", - "blockNumber": "0x2374", - "gasUsed": "0x5ac2f3", - "effectiveGasPrice": "0x5fac300", - "from": "0x9701fb0ade1e269c8f64ec0c7b3cfadb31a13a52", - "to": null, - "contractAddress": "0xcaf681a66d020601342297493863e78c959e5cb2", - "gasUsedForL1": "0x934af", - "l1BlockNumber": "0x17fcbd9" + "gasUsedForL1": "0x28bee", + "l1BlockNumber": "0x1803c1b" } ], "libraries": [], "pending": [], "returns": {}, - "timestamp": 1779473097006, + "timestamp": 1779819181252, "chain": 4663, - "commit": "56928a9" + "commit": "dbef74e" } \ No newline at end of file diff --git a/deployments/4663.md b/deployments/4663.md index 7b3da8b1..c54c78df 100644 --- a/deployments/4663.md +++ b/deployments/4663.md @@ -20,6 +20,8 @@ - [Uniswap V3 Factory](#uniswap-v3-factory) - [Nonfungible Token Position Descriptor](#nonfungible-token-position-descriptor) - [Permit2](#permit2) + - [Unsupported Protocol](#unsupported-protocol) + - [Universal Router](#universal-router) - [Deployment History](#deployment-history) - [Fri May 22 2026](#fri-may-22-2026) @@ -31,82 +33,92 @@ Version UniswapInterfaceMulticall - 0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3 + 0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3 N/A QuoterV2 - 0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7 + 0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7 N/A TickLens - 0x7dfd4f31be6814d2906bde155c3e1b146eac1468 + 0x7dfd4f31be6814d2906bde155c3e1b146eac1468 N/A NFTDescriptor - 0x2e9d45bb7b30549f5216813ada9a6b7982c5b3ed + 0x2e9d45bb7b30549f5216813ada9a6b7982c5b3ed N/A NonfungiblePositionManager - 0x73991a25c818bf1f1128deaab1492d45638de0d3 + 0x73991a25c818bf1f1128deaab1492d45638de0d3 N/A PoolManager - 0x8366a39cc670b4001a1121b8f6a443a643e40951 + 0x8366a39cc670b4001a1121b8f6a443a643e40951 N/A PositionDescriptor - 0x9639443158e8c5efa35bd45287bf2effd3d8dc06 + 0x9639443158e8c5efa35bd45287bf2effd3d8dc06 N/A PositionManager - 0x58daec3116aae6d93017baaea7749052e8a04fa7 + 0x58daec3116aae6d93017baaea7749052e8a04fa7 N/A V4Quoter - 0x8dc178efb8111bb0973dd9d722ebeff267c98f94 + 0x8dc178efb8111bb0973dd9d722ebeff267c98f94 N/A StateView - 0xf3334192d15450cdd385c8b70e03f9a6bd9e673b + 0xf3334192d15450cdd385c8b70e03f9a6bd9e673b N/A SwapRouter02 - 0xcaf681a66d020601342297493863e78c959e5cb2 + 0xcaf681a66d020601342297493863e78c959e5cb2 N/A UniswapV2Factory - 0x8bceaa40b9acdfaedf85adf4ff01f5ad6517937f + 0x8bceaa40b9acdfaedf85adf4ff01f5ad6517937f N/A UniswapV2Router02 - 0x89e5db8b5aa49aa85ac63f691524311aeb649eba + 0x89e5db8b5aa49aa85ac63f691524311aeb649eba N/A UniswapV3Factory - 0x1f7d7550b1b028f7571e69a784071f0205fd2efa + 0x1f7d7550b1b028f7571e69a784071f0205fd2efa N/A NonfungibleTokenPositionDescriptor - 0x6f84dae9c064ff453e5c8af51efb819f8f610225 + 0x6f84dae9c064ff453e5c8af51efb819f8f610225 N/A Permit2 - 0x000000000022d473030f116ddee9f6b43ac78ba3 + 0x000000000022d473030f116ddee9f6b43ac78ba3 + N/A + + + UnsupportedProtocol + 0x7332D11BD10d18A04B119Cd4671a96f3148002c4 + N/A + + + UniversalRouter + 0x248a454ac3584c2a48d1fcb28d3910a6b6ea00af N/A @@ -114,9 +126,9 @@ ### Uniswap Interface Multicall -Address: 0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3 +Address: [0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3) -Deployment Transaction: 0x6fc488375115e6de29f6ffc19ca5a7ed4971643b4b12e3e27933e3c73770ed5c +Deployment Transaction: [0x6fc488375115e6de29f6ffc19ca5a7ed4971643b4b12e3e27933e3c73770ed5c](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x6fc488375115e6de29f6ffc19ca5a7ed4971643b4b12e3e27933e3c73770ed5c) @@ -130,9 +142,9 @@ Fri, 22 May 2026 18:04:57 UTC ### Quoter V2 -Address: 0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7 +Address: [0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7) -Deployment Transaction: 0x62f593041cda98f3418898cfaae97617421de867c0d6fd4480f8a652ffe721b5 +Deployment Transaction: [0x62f593041cda98f3418898cfaae97617421de867c0d6fd4480f8a652ffe721b5](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x62f593041cda98f3418898cfaae97617421de867c0d6fd4480f8a652ffe721b5) @@ -146,9 +158,9 @@ Fri, 22 May 2026 18:04:57 UTC ### Tick Lens -Address: 0x7dfd4f31be6814d2906bde155c3e1b146eac1468 +Address: [0x7dfd4f31be6814d2906bde155c3e1b146eac1468](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x7dfd4f31be6814d2906bde155c3e1b146eac1468) -Deployment Transaction: 0xac803b65ac1d16bc3489342e08f3888d176a7491ff19551e394b4258931408f5 +Deployment Transaction: [0xac803b65ac1d16bc3489342e08f3888d176a7491ff19551e394b4258931408f5](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0xac803b65ac1d16bc3489342e08f3888d176a7491ff19551e394b4258931408f5) @@ -162,9 +174,9 @@ Fri, 22 May 2026 18:04:57 UTC ### N F T Descriptor -Address: 0x2e9d45bb7b30549f5216813ada9a6b7982c5b3ed +Address: [0x2e9d45bb7b30549f5216813ada9a6b7982c5b3ed](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x2e9d45bb7b30549f5216813ada9a6b7982c5b3ed) -Deployment Transaction: 0x76beabf4d46eb1bfdbe77a17918b85748b2bd246b4e0c901fec23ebc81b34fa6 +Deployment Transaction: [0x76beabf4d46eb1bfdbe77a17918b85748b2bd246b4e0c901fec23ebc81b34fa6](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x76beabf4d46eb1bfdbe77a17918b85748b2bd246b4e0c901fec23ebc81b34fa6) @@ -178,9 +190,9 @@ Fri, 22 May 2026 18:04:57 UTC ### Nonfungible Position Manager -Address: 0x73991a25c818bf1f1128deaab1492d45638de0d3 +Address: [0x73991a25c818bf1f1128deaab1492d45638de0d3](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x73991a25c818bf1f1128deaab1492d45638de0d3) -Deployment Transaction: 0x9a8d07e70166be68c325939e2cece936f3ce5b16c580f49291f844d7cd718d4e +Deployment Transaction: [0x9a8d07e70166be68c325939e2cece936f3ce5b16c580f49291f844d7cd718d4e](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x9a8d07e70166be68c325939e2cece936f3ce5b16c580f49291f844d7cd718d4e) @@ -194,9 +206,9 @@ Fri, 22 May 2026 18:04:57 UTC ### Pool Manager -Address: 0x8366a39cc670b4001a1121b8f6a443a643e40951 +Address: [0x8366a39cc670b4001a1121b8f6a443a643e40951](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x8366a39cc670b4001a1121b8f6a443a643e40951) -Deployment Transaction: 0x4fb28d4935866f462582c6c931c6f2705e55f5be5eb178c7d8d9329a95c44c41 +Deployment Transaction: [0x4fb28d4935866f462582c6c931c6f2705e55f5be5eb178c7d8d9329a95c44c41](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x4fb28d4935866f462582c6c931c6f2705e55f5be5eb178c7d8d9329a95c44c41) @@ -210,9 +222,9 @@ Fri, 22 May 2026 18:04:57 UTC ### Position Descriptor -Address: 0x9639443158e8c5efa35bd45287bf2effd3d8dc06 +Address: [0x9639443158e8c5efa35bd45287bf2effd3d8dc06](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x9639443158e8c5efa35bd45287bf2effd3d8dc06) -Deployment Transaction: 0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2 +Deployment Transaction: [0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x0092b86795c4e00150cde5bd987291a75c61ff2251e9eb99cbcc277e2c4903a2) @@ -230,11 +242,11 @@ Proxy Type: TransparentUpgradeableProxy -Implementation: 0xc1514adf9caed7ab2cf2dd7b3225761df61f03a8 +Implementation: [0xc1514adf9caed7ab2cf2dd7b3225761df61f03a8](https://8crv4vmq6tiu1yqr.blockscout.com/address/0xc1514adf9caed7ab2cf2dd7b3225761df61f03a8) -Proxy Admin: 0x525b4bd46d3a33f16ac815b4a303b3110fb9d10b +Proxy Admin: [0x525b4bd46d3a33f16ac815b4a303b3110fb9d10b](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x525b4bd46d3a33f16ac815b4a303b3110fb9d10b) @@ -248,7 +260,7 @@ Proxy Admin: 0x525b4bd46d3a33f16ac815b4a303b3110fb9d10b N/A - 0xc1514adf9caed7ab2cf2dd7b3225761df61f03a8 + 0xc1514adf9caed7ab2cf2dd7b3225761df61f03a8 56928a9 @@ -259,9 +271,9 @@ Proxy Admin: 0x525b4bd46d3a33f16ac815b4a303b3110fb9d10b ### Position Manager -Address: 0x58daec3116aae6d93017baaea7749052e8a04fa7 +Address: [0x58daec3116aae6d93017baaea7749052e8a04fa7](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x58daec3116aae6d93017baaea7749052e8a04fa7) -Deployment Transaction: 0x228c18ada6cb46b4fbcc18f4ec1519953415393e256fa8349aafbd5a2db037c8 +Deployment Transaction: [0x228c18ada6cb46b4fbcc18f4ec1519953415393e256fa8349aafbd5a2db037c8](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x228c18ada6cb46b4fbcc18f4ec1519953415393e256fa8349aafbd5a2db037c8) @@ -275,9 +287,9 @@ Fri, 22 May 2026 18:04:57 UTC ### V4 Quoter -Address: 0x8dc178efb8111bb0973dd9d722ebeff267c98f94 +Address: [0x8dc178efb8111bb0973dd9d722ebeff267c98f94](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x8dc178efb8111bb0973dd9d722ebeff267c98f94) -Deployment Transaction: 0x6bf436d72a17f87284ddcab43094689bd320dfb39b535213b9a0b669fabc4ab4 +Deployment Transaction: [0x6bf436d72a17f87284ddcab43094689bd320dfb39b535213b9a0b669fabc4ab4](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x6bf436d72a17f87284ddcab43094689bd320dfb39b535213b9a0b669fabc4ab4) @@ -291,9 +303,9 @@ Fri, 22 May 2026 18:04:57 UTC ### State View -Address: 0xf3334192d15450cdd385c8b70e03f9a6bd9e673b +Address: [0xf3334192d15450cdd385c8b70e03f9a6bd9e673b](https://8crv4vmq6tiu1yqr.blockscout.com/address/0xf3334192d15450cdd385c8b70e03f9a6bd9e673b) -Deployment Transaction: 0x3d61e2c9eeb482385b1aa436b9e8f812167ea579cc390e4f93bc5abde00582f4 +Deployment Transaction: [0x3d61e2c9eeb482385b1aa436b9e8f812167ea579cc390e4f93bc5abde00582f4](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x3d61e2c9eeb482385b1aa436b9e8f812167ea579cc390e4f93bc5abde00582f4) @@ -307,9 +319,9 @@ Fri, 22 May 2026 18:04:57 UTC ### Swap Router02 -Address: 0xcaf681a66d020601342297493863e78c959e5cb2 +Address: [0xcaf681a66d020601342297493863e78c959e5cb2](https://8crv4vmq6tiu1yqr.blockscout.com/address/0xcaf681a66d020601342297493863e78c959e5cb2) -Deployment Transaction: 0xeaa1bf6bd8e86ab33150936414780779800a2aa04a98667f4059ef5dfc0cdf92 +Deployment Transaction: [0xeaa1bf6bd8e86ab33150936414780779800a2aa04a98667f4059ef5dfc0cdf92](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0xeaa1bf6bd8e86ab33150936414780779800a2aa04a98667f4059ef5dfc0cdf92) @@ -323,9 +335,9 @@ Fri, 22 May 2026 18:04:57 UTC ### Uniswap V2 Factory -Address: 0x8bceaa40b9acdfaedf85adf4ff01f5ad6517937f +Address: [0x8bceaa40b9acdfaedf85adf4ff01f5ad6517937f](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x8bceaa40b9acdfaedf85adf4ff01f5ad6517937f) -Deployment Transaction: 0x2fc08b6c72d5f2120cec9f3be8ed0b45c210d51adbc87f33b2135886681edaf7 +Deployment Transaction: [0x2fc08b6c72d5f2120cec9f3be8ed0b45c210d51adbc87f33b2135886681edaf7](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x2fc08b6c72d5f2120cec9f3be8ed0b45c210d51adbc87f33b2135886681edaf7) @@ -339,9 +351,9 @@ Fri, 22 May 2026 17:58:27 UTC ### Uniswap V2 Router02 -Address: 0x89e5db8b5aa49aa85ac63f691524311aeb649eba +Address: [0x89e5db8b5aa49aa85ac63f691524311aeb649eba](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x89e5db8b5aa49aa85ac63f691524311aeb649eba) -Deployment Transaction: 0xd475f23df85f1a821abd8df540f6b2bdecde93593ff36310ddb393f314ce866c +Deployment Transaction: [0xd475f23df85f1a821abd8df540f6b2bdecde93593ff36310ddb393f314ce866c](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0xd475f23df85f1a821abd8df540f6b2bdecde93593ff36310ddb393f314ce866c) @@ -355,9 +367,9 @@ Fri, 22 May 2026 17:58:27 UTC ### Uniswap V3 Factory -Address: 0x1f7d7550b1b028f7571e69a784071f0205fd2efa +Address: [0x1f7d7550b1b028f7571e69a784071f0205fd2efa](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x1f7d7550b1b028f7571e69a784071f0205fd2efa) -Deployment Transaction: 0x8add72fbcad4bf7732336de35dcd06b582c1501d0832c4710a30850a7cff8977 +Deployment Transaction: [0x8add72fbcad4bf7732336de35dcd06b582c1501d0832c4710a30850a7cff8977](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x8add72fbcad4bf7732336de35dcd06b582c1501d0832c4710a30850a7cff8977) @@ -371,9 +383,9 @@ Fri, 22 May 2026 17:58:27 UTC ### Nonfungible Token Position Descriptor -Address: 0x6f84dae9c064ff453e5c8af51efb819f8f610225 +Address: [0x6f84dae9c064ff453e5c8af51efb819f8f610225](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x6f84dae9c064ff453e5c8af51efb819f8f610225) -Deployment Transaction: 0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02 +Deployment Transaction: [0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x47a78523d03f1c5215db006380c96c70a669c6e8cdee39365686dcab90f3fd02) @@ -391,11 +403,11 @@ Proxy Type: TransparentUpgradeableProxy -Implementation: 0x2bb4e3af3f07353a3e3c91126bd30654abf03369 +Implementation: [0x2bb4e3af3f07353a3e3c91126bd30654abf03369](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x2bb4e3af3f07353a3e3c91126bd30654abf03369) -Proxy Admin: 0x89473d1ff90a8cf9a81388e1c6e5ad393ff0e894 +Proxy Admin: [0x89473d1ff90a8cf9a81388e1c6e5ad393ff0e894](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x89473d1ff90a8cf9a81388e1c6e5ad393ff0e894) @@ -403,7 +415,7 @@ Proxy Admin: 0x89473d1ff90a8cf9a81388e1c6e5ad393ff0e894 ### Permit2 -Address: 0x000000000022d473030f116ddee9f6b43ac78ba3 +Address: [0x000000000022d473030f116ddee9f6b43ac78ba3](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x000000000022d473030f116ddee9f6b43ac78ba3) @@ -415,6 +427,38 @@ Invalid Date +--- + +### Unsupported Protocol + +Address: [0x7332D11BD10d18A04B119Cd4671a96f3148002c4](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x7332D11BD10d18A04B119Cd4671a96f3148002c4) + +Deployment Transaction: [0x029d23d957e6d9f39b2bd655a10d01e764999b32344c2ccdcb9667259cd80f24](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x029d23d957e6d9f39b2bd655a10d01e764999b32344c2ccdcb9667259cd80f24) + + + +Commit Hash: [dbef74e](git@github.com:Uniswap/contracts/commit/dbef74e) + +Tue, 26 May 2026 18:07:27 UTC + + + +--- + +### Universal Router + +Address: [0x248a454ac3584c2a48d1fcb28d3910a6b6ea00af](https://8crv4vmq6tiu1yqr.blockscout.com/address/0x248a454ac3584c2a48d1fcb28d3910a6b6ea00af) + +Deployment Transaction: [0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3](https://8crv4vmq6tiu1yqr.blockscout.com/tx/0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3) + + + +Commit Hash: [dbef74e](git@github.com:Uniswap/contracts/commit/dbef74e) + +Tue, 26 May 2026 18:13:00 UTC + + + ## Deployment History @@ -426,7 +470,7 @@ Deployed contracts:
- Uniswap Interface Multicall + Uniswap Interface Multicall @@ -436,7 +480,7 @@ Deployed contracts:
- Quoter V2 + Quoter V2
@@ -448,17 +492,17 @@ Deployed contracts: - + - +
_factory0x1f7d7550B1b028f7571E69A784071F0205FD2EfA0x1f7d7550B1b028f7571E69A784071F0205FD2EfA
_WETH90x0Bd7D308f8E1639FAb988df18A8011f41EAcAD730x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73
- Tick Lens + Tick Lens @@ -468,7 +512,7 @@ Deployed contracts:
- N F T Descriptor + N F T Descriptor
@@ -478,7 +522,7 @@ Deployed contracts:
- Nonfungible Position Manager + Nonfungible Position Manager
@@ -490,21 +534,21 @@ Deployed contracts: - + - + - +
_factory0x1f7d7550B1b028f7571E69A784071F0205FD2EfA0x1f7d7550B1b028f7571E69A784071F0205FD2EfA
_WETH90x0Bd7D308f8E1639FAb988df18A8011f41EAcAD730x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73
_tokenDescriptor_0x6F84dAE9c064ff453E5C8af51EfB819f8f6102250x6F84dAE9c064ff453E5C8af51EfB819f8f610225
- Pool Manager + Pool Manager @@ -516,13 +560,13 @@ Deployed contracts: - +
initialOwner0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A520x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52
- Position Descriptor (Implementation) + Position Descriptor (Implementation) @@ -534,21 +578,21 @@ Deployed contracts: - + - + - +
_poolManager0x8366a39CC670B4001A1121B8F6A443A643e409510x8366a39CC670B4001A1121B8F6A443A643e40951
_wrappedNative0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD730x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73
_nativeCurrencyLabelBytes0x45544800000000000000000000000000000000000000000000000000000000000x4554480000000000000000000000000000000000000000000000000000000000
- Position Manager + Position Manager @@ -560,11 +604,11 @@ Deployed contracts: - + - + @@ -572,17 +616,17 @@ Deployed contracts: - + - +
_poolManager0x8366a39CC670B4001A1121B8F6A443A643e409510x8366a39CC670B4001A1121B8F6A443A643e40951
_permit20x000000000022D473030F116dDEE9F6B43aC78BA30x000000000022D473030F116dDEE9F6B43aC78BA3
_unsubscribeGasLimit
_tokenDescriptor0x9639443158E8C5efa35Bd45287bf2EFfd3D8dC060x9639443158E8C5efa35Bd45287bf2EFfd3D8dC06
_weth90x0Bd7D308f8E1639FAb988df18A8011f41EAcAD730x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73
- V4 Quoter + V4 Quoter @@ -594,13 +638,13 @@ Deployed contracts: - +
_poolManager0x8366a39CC670B4001A1121B8F6A443A643e409510x8366a39CC670B4001A1121B8F6A443A643e40951
- State View + State View @@ -612,13 +656,13 @@ Deployed contracts: - +
_poolManager0x8366a39CC670B4001A1121B8F6A443A643e409510x8366a39CC670B4001A1121B8F6A443A643e40951
- Swap Router02 + Swap Router02 @@ -630,19 +674,19 @@ Deployed contracts: - + - + - + - +
_factoryV20x8bcEaA40B9AcdfAedF85AdF4FF01F5Ad6517937f0x8bcEaA40B9AcdfAedF85AdF4FF01F5Ad6517937f
factoryV30x1f7d7550B1b028f7571E69A784071F0205FD2EfA0x1f7d7550B1b028f7571E69A784071F0205FD2EfA
_positionManager0x73991a25C818Bf1f1128dEAaB1492D45638DE0D30x73991a25C818Bf1f1128dEAaB1492D45638DE0D3
_WETH90x0Bd7D308f8E1639FAb988df18A8011f41EAcAD730x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73
diff --git a/deployments/index.md b/deployments/index.md index b0fbffe4..d92f3453 100644 --- a/deployments/index.md +++ b/deployments/index.md @@ -15,9 +15,9 @@ This repository contains deployment information for the following networks: | 480 | World Chain | [View Deployment](./480.md) | | 1301 | Unichain Sepolia Testnet | [View Deployment](./1301.md) | | 1868 | Soneium | [View Deployment](./1868.md) | -| 4217 | Tempo Mainnet | [View Deployment](./4217.md) | +| 4217 | Chain 4217 | [View Deployment](./4217.md) | | 4326 | Chain 4326 | [View Deployment](./4326.md) | -| 4663 | Robinhood Chain | [View Deployment](./4663.md) | +| 4663 | Chain 4663 | [View Deployment](./4663.md) | | 8453 | Base | [View Deployment](./8453.md) | | 10143 | Monad Testnet | [View Deployment](./10143.md) | | 42161 | Arbitrum One | [View Deployment](./42161.md) | diff --git a/deployments/json/4663.json b/deployments/json/4663.json index 19dc3ff0..74b1b31b 100644 --- a/deployments/json/4663.json +++ b/deployments/json/4663.json @@ -128,6 +128,22 @@ "address": "0x000000000022d473030f116ddee9f6b43ac78ba3", "proxy": false, "note": "pre-existing canonical Permit2; not deployed by this run" + }, + "UnsupportedProtocol": { + "address": "0x7332D11BD10d18A04B119Cd4671a96f3148002c4", + "proxy": false, + "deploymentTxn": "0x029d23d957e6d9f39b2bd655a10d01e764999b32344c2ccdcb9667259cd80f24", + "initcodeHash": "be71b3dccc59971adbbc194a78fa72cdcc604e5f13e5305e725620f24378ce65", + "timestamp": 1779818847000, + "commitHash": "dbef74e" + }, + "UniversalRouter": { + "address": "0x248a454ac3584c2a48d1fcb28d3910a6b6ea00af", + "proxy": false, + "deploymentTxn": "0x66347de408f4f8f5de452b1f3b709c4ec4313c77ce75d69fea9924526004c8e3", + "initcodeHash": "3e5071cc21630ca46ee2c7f6b2b57447a7044de924c28fbda2d023d621461526", + "timestamp": 1779819180000, + "commitHash": "dbef74e" } }, "history": [ @@ -269,4 +285,4 @@ "commitHash": "56928a9" } ] -} \ No newline at end of file +} diff --git a/script/deploy/tasks/4663/task-1779819138.json b/script/deploy/tasks/4663/task-1779819138.json new file mode 100644 index 00000000..8e1b2294 --- /dev/null +++ b/script/deploy/tasks/4663/task-1779819138.json @@ -0,0 +1,609 @@ +{ + "protocols": { + "unsupported-protocol": { + "name": "Unsupported Protocol", + "deploy": false, + "contracts": { + "UnsupportedProtocol": { + "deploy": false, + "address": "0x7332D11BD10d18A04B119Cd4671a96f3148002c4" + } + } + }, + "permit2": { + "name": "Permit 2", + "deploy": false, + "contracts": { + "Permit2": { + "deploy": false, + "address": "0x000000000022D473030F116dDEE9F6B43aC78BA3", + "lookup": { + "latest": "Permit2", + "history": [ + "UniversalRouter.input.constructor.params.permit2" + ] + }, + "params": { + "salt": { + "type": "bytes32", + "value": "0x0000000000000000000000000000000000000000d3af2663da51c10215000000" + } + } + } + } + }, + "v2": { + "name": "Uniswap v2", + "deploy": true, + "contracts": { + "UniswapV2Factory": { + "deploy": false, + "address": "0x8bcEaA40B9AcdfAedF85AdF4FF01F5Ad6517937f", + "lookup": { + "latest": "UniswapV2Factory", + "history": [ + "UniversalRouter.input.constructor.params.v2Factory" + ] + }, + "params": { + "feeToSetter": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + } + }, + "UniswapV2Router02": { + "deploy": false, + "address": "0x89e5DB8B5aA49aA85AC63f691524311AEB649eba", + "params": { + "factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + } + }, + "dependencies": [ + "weth" + ] + } + } + }, + "v3": { + "name": "Uniswap v3", + "deploy": true, + "contracts": { + "UniswapV3Factory": { + "deploy": false, + "address": "0x1f7d7550B1b028f7571E69A784071F0205FD2EfA", + "lookup": { + "latest": "UniswapV3Factory", + "history": [ + "UniversalRouter.input.constructor.params.v3Factory" + ] + }, + "params": { + "initialOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + } + }, + "UniswapInterfaceMulticall": { + "deploy": false, + "address": "0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3" + }, + "QuoterV2": { + "deploy": false, + "address": "0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7", + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + } + }, + "dependencies": [ + "weth" + ] + }, + "TickLens": { + "deploy": false, + "address": "0x7dfd4f31be6814d2906bde155c3e1b146eac1468" + }, + "NonfungibleTokenPositionDescriptor": { + "deploy": false, + "address": "0x6f84dae9c064ff453e5c8af51efb819f8f610225", + "lookup": { + "latest": "NonfungibleTokenPositionDescriptor" + }, + "params": { + "nativeCurrencyLabel": { + "name": "Native token symbol", + "type": "string", + "value": "ETH" + }, + "proxyAdminOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + }, + "dependencies": [ + "weth" + ] + }, + "NonfungiblePositionManager": { + "deploy": false, + "address": "0x73991a25c818bf1f1128deaab1492d45638de0d3", + "lookup": { + "latest": "NonfungiblePositionManager" + }, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "tokenDescriptor": { + "name": "NFT Position Descriptor address", + "pointer": "protocols.v3.contracts.NonfungibleTokenPositionDescriptor" + } + }, + "dependencies": [ + "weth" + ] + }, + "V3Migrator": { + "deploy": false, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "nonfungiblePositionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + } + }, + "dependencies": [ + "weth" + ] + }, + "SwapRouter": { + "deploy": false, + "address": null, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + } + }, + "dependencies": [ + "weth" + ] + } + } + }, + "v4": { + "name": "Uniswap v4", + "deploy": true, + "contracts": { + "PoolManager": { + "deploy": false, + "address": "0x8366a39cc670b4001a1121b8f6a443a643e40951", + "lookup": { + "latest": "PoolManager" + }, + "params": { + "initialOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + } + }, + "PositionDescriptor": { + "deploy": false, + "address": "0x9639443158e8c5efa35bd45287bf2effd3d8dc06", + "lookup": { + "latest": "PositionDescriptor" + }, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "nativeCurrencyLabel": { + "name": "Native token symbol", + "type": "string", + "value": "ETH" + }, + "proxyAdminOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + }, + "dependencies": [ + "weth" + ] + }, + "PositionManager": { + "deploy": false, + "address": "0x58daec3116aae6d93017baaea7749052e8a04fa7", + "lookup": { + "latest": "PositionManager" + }, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "unsubscribeGasLimit": { + "name": "Unsubscribe gas limit", + "type": "uint256", + "value": "300000" + }, + "positionDescriptor": { + "name": "Position Descriptor address", + "pointer": "protocols.v4.contracts.PositionDescriptor" + } + }, + "dependencies": [ + "weth" + ] + }, + "V4Quoter": { + "deploy": false, + "address": "0x8dc178efb8111bb0973dd9d722ebeff267c98f94", + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + } + } + }, + "StateView": { + "deploy": false, + "address": "0xf3334192d15450cdd385c8b70e03f9a6bd9e673b", + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + } + } + } + } + }, + "hooks": { + "name": "v4 Hooks", + "deploy": false, + "contracts": { + "WETHHook": { + "deploy": false, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "salt": { + "type": "bytes32" + } + }, + "dependencies": [ + "weth" + ] + }, + "WstETHHook": { + "deploy": false, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "wstETH": { + "name": "WstETH address", + "type": "address" + }, + "salt": { + "type": "bytes32" + } + } + }, + "WstETHRoutingHook": { + "deploy": false, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "wstETH": { + "name": "WstETH address", + "type": "address" + }, + "salt": { + "type": "bytes32" + } + } + } + } + }, + "view-quoter-v3": { + "name": "View Quoter v3", + "deploy": false, + "contracts": { + "Quoter": { + "deploy": false, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + } + } + } + } + }, + "mixed-quoter": { + "name": "Mixed Quoter", + "deploy": false, + "contracts": { + "MixedRouteQuoterV2": { + "deploy": false, + "address": null, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "v3Factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "v2Factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + } + } + } + } + }, + "swap-router-contracts": { + "name": "Swap Router Contracts", + "deploy": false, + "contracts": { + "SwapRouter02": { + "deploy": false, + "params": { + "factoryV2": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + }, + "factoryV3": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "positionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + } + }, + "dependencies": [ + "weth" + ], + "address": "0xcaf681a66d020601342297493863e78c959e5cb2" + } + } + }, + "universal-router": { + "name": "Universal Router (Latest)", + "tag": "v2.1", + "deploy": true, + "contracts": { + "UniversalRouter": { + "deploy": true, + "params": { + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "v2Factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + }, + "v3Factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "v2PairInitCodeHash": { + "name": "Uniswap v2 pair init code hash", + "type": "bytes32", + "value": "0x96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.pairInitCodeHash" + ] + } + }, + "v3PoolInitCodeHash": { + "name": "Uniswap v3 pool init code hash", + "type": "bytes32", + "value": "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.poolInitCodeHash" + ] + } + }, + "v4PoolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "v3NFTPositionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + }, + "v4PositionManager": { + "name": "Uniswap v4 position manager address", + "pointer": "protocols.v4.contracts.PositionManager" + }, + "acrossSpokePool": { + "name": "Across Spoke Pool address", + "type": "address", + "value": "0x7332D11BD10d18A04B119Cd4671a96f3148002c4" + } + }, + "dependencies": [ + "weth" + ], + "lookup": { + "latest": "UniversalRouter" + } + } + } + }, + "universal-router-2_0": { + "name": "Universal Router (2.0)", + "tag": "v2.0", + "deploy": false, + "contracts": { + "UniversalRouter": { + "deploy": false, + "params": { + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "v2Factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + }, + "v3Factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "v2PairInitCodeHash": { + "name": "Uniswap v2 pair init code hash", + "type": "bytes32", + "value": "0x96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.pairInitCodeHash" + ] + } + }, + "v3PoolInitCodeHash": { + "name": "Uniswap v3 pool init code hash", + "type": "bytes32", + "value": "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.poolInitCodeHash" + ] + } + }, + "v4PoolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "v3NFTPositionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + }, + "v4PositionManager": { + "name": "Uniswap v4 position manager address", + "pointer": "protocols.v4.contracts.PositionManager" + } + }, + "dependencies": [ + "weth" + ], + "lookup": { + "latest": "UniversalRouter" + } + } + } + }, + "calibur": { + "name": "Calibur", + "deploy": false, + "contracts": { + "Calibur": { + "deploy": false, + "address": null, + "params": { + "salt": { + "type": "bytes32", + "value": "0x0000000000000000000000000000000000000000eca2ad36bee3874a279d0010" + } + } + } + } + }, + "util-contracts": { + "name": "Utils", + "deploy": false, + "contracts": { + "FeeOnTransferDetector": { + "deploy": false, + "address": null, + "params": { + "factoryV2": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + } + } + }, + "FeeCollector": { + "deploy": false, + "address": null, + "params": { + "owner": { + "type": "address" + }, + "universalRouter": { + "name": "Universal Router address", + "pointer": "protocols.universal-router.contracts.UniversalRouter" + }, + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "feeToken": { + "name": "Fee token address (usually USDC)", + "type": "address" + } + } + }, + "ERC7914Detector": { + "deploy": false, + "address": "0x000000009B1D0aF20D8C6d0A44e162d11F9b8f00", + "params": { + "caliburAddress": { + "name": "Calibur address for ERC7914 detection", + "pointer": "protocols.calibur.contracts.Calibur" + } + } + } + } + } + }, + "dependencies": { + "weth": { + "type": "address", + "value": "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.weth9", + "QuoterV2.input.constructor._WETH9", + "V3Migrator.input.constructor._WETH9", + "NonfungiblePositionManager.input.constructor._WETH9", + "NonFungibleTokenPositionDescriptor.input.constructor._WETH9", + "SwapRouter.input.constructor._WETH9", + "SwapRouter02.input.constructor._WETH9", + "Quoter.input.constructor._WETH9", + "QuoterV2.input.constructor._WETH9", + "UniswapV2Router02.input.constructor._WETH" + ] + } + } + }, + "rename": true +} diff --git a/script/deploy/tasks/4663/task-pending.json b/script/deploy/tasks/4663/task-pending.json new file mode 100644 index 00000000..8e1b2294 --- /dev/null +++ b/script/deploy/tasks/4663/task-pending.json @@ -0,0 +1,609 @@ +{ + "protocols": { + "unsupported-protocol": { + "name": "Unsupported Protocol", + "deploy": false, + "contracts": { + "UnsupportedProtocol": { + "deploy": false, + "address": "0x7332D11BD10d18A04B119Cd4671a96f3148002c4" + } + } + }, + "permit2": { + "name": "Permit 2", + "deploy": false, + "contracts": { + "Permit2": { + "deploy": false, + "address": "0x000000000022D473030F116dDEE9F6B43aC78BA3", + "lookup": { + "latest": "Permit2", + "history": [ + "UniversalRouter.input.constructor.params.permit2" + ] + }, + "params": { + "salt": { + "type": "bytes32", + "value": "0x0000000000000000000000000000000000000000d3af2663da51c10215000000" + } + } + } + } + }, + "v2": { + "name": "Uniswap v2", + "deploy": true, + "contracts": { + "UniswapV2Factory": { + "deploy": false, + "address": "0x8bcEaA40B9AcdfAedF85AdF4FF01F5Ad6517937f", + "lookup": { + "latest": "UniswapV2Factory", + "history": [ + "UniversalRouter.input.constructor.params.v2Factory" + ] + }, + "params": { + "feeToSetter": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + } + }, + "UniswapV2Router02": { + "deploy": false, + "address": "0x89e5DB8B5aA49aA85AC63f691524311AEB649eba", + "params": { + "factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + } + }, + "dependencies": [ + "weth" + ] + } + } + }, + "v3": { + "name": "Uniswap v3", + "deploy": true, + "contracts": { + "UniswapV3Factory": { + "deploy": false, + "address": "0x1f7d7550B1b028f7571E69A784071F0205FD2EfA", + "lookup": { + "latest": "UniswapV3Factory", + "history": [ + "UniversalRouter.input.constructor.params.v3Factory" + ] + }, + "params": { + "initialOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + } + }, + "UniswapInterfaceMulticall": { + "deploy": false, + "address": "0x282a3c4d320cc7f0d5eaf56b8029e4b88338f0a3" + }, + "QuoterV2": { + "deploy": false, + "address": "0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7", + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + } + }, + "dependencies": [ + "weth" + ] + }, + "TickLens": { + "deploy": false, + "address": "0x7dfd4f31be6814d2906bde155c3e1b146eac1468" + }, + "NonfungibleTokenPositionDescriptor": { + "deploy": false, + "address": "0x6f84dae9c064ff453e5c8af51efb819f8f610225", + "lookup": { + "latest": "NonfungibleTokenPositionDescriptor" + }, + "params": { + "nativeCurrencyLabel": { + "name": "Native token symbol", + "type": "string", + "value": "ETH" + }, + "proxyAdminOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + }, + "dependencies": [ + "weth" + ] + }, + "NonfungiblePositionManager": { + "deploy": false, + "address": "0x73991a25c818bf1f1128deaab1492d45638de0d3", + "lookup": { + "latest": "NonfungiblePositionManager" + }, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "tokenDescriptor": { + "name": "NFT Position Descriptor address", + "pointer": "protocols.v3.contracts.NonfungibleTokenPositionDescriptor" + } + }, + "dependencies": [ + "weth" + ] + }, + "V3Migrator": { + "deploy": false, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "nonfungiblePositionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + } + }, + "dependencies": [ + "weth" + ] + }, + "SwapRouter": { + "deploy": false, + "address": null, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + } + }, + "dependencies": [ + "weth" + ] + } + } + }, + "v4": { + "name": "Uniswap v4", + "deploy": true, + "contracts": { + "PoolManager": { + "deploy": false, + "address": "0x8366a39cc670b4001a1121b8f6a443a643e40951", + "lookup": { + "latest": "PoolManager" + }, + "params": { + "initialOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + } + }, + "PositionDescriptor": { + "deploy": false, + "address": "0x9639443158e8c5efa35bd45287bf2effd3d8dc06", + "lookup": { + "latest": "PositionDescriptor" + }, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "nativeCurrencyLabel": { + "name": "Native token symbol", + "type": "string", + "value": "ETH" + }, + "proxyAdminOwner": { + "type": "address", + "value": "0x9701fb0aDe1E269c8f64Ec0C7b3cfADB31A13A52" + } + }, + "dependencies": [ + "weth" + ] + }, + "PositionManager": { + "deploy": false, + "address": "0x58daec3116aae6d93017baaea7749052e8a04fa7", + "lookup": { + "latest": "PositionManager" + }, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "unsubscribeGasLimit": { + "name": "Unsubscribe gas limit", + "type": "uint256", + "value": "300000" + }, + "positionDescriptor": { + "name": "Position Descriptor address", + "pointer": "protocols.v4.contracts.PositionDescriptor" + } + }, + "dependencies": [ + "weth" + ] + }, + "V4Quoter": { + "deploy": false, + "address": "0x8dc178efb8111bb0973dd9d722ebeff267c98f94", + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + } + } + }, + "StateView": { + "deploy": false, + "address": "0xf3334192d15450cdd385c8b70e03f9a6bd9e673b", + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + } + } + } + } + }, + "hooks": { + "name": "v4 Hooks", + "deploy": false, + "contracts": { + "WETHHook": { + "deploy": false, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "salt": { + "type": "bytes32" + } + }, + "dependencies": [ + "weth" + ] + }, + "WstETHHook": { + "deploy": false, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "wstETH": { + "name": "WstETH address", + "type": "address" + }, + "salt": { + "type": "bytes32" + } + } + }, + "WstETHRoutingHook": { + "deploy": false, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "wstETH": { + "name": "WstETH address", + "type": "address" + }, + "salt": { + "type": "bytes32" + } + } + } + } + }, + "view-quoter-v3": { + "name": "View Quoter v3", + "deploy": false, + "contracts": { + "Quoter": { + "deploy": false, + "params": { + "factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + } + } + } + } + }, + "mixed-quoter": { + "name": "Mixed Quoter", + "deploy": false, + "contracts": { + "MixedRouteQuoterV2": { + "deploy": false, + "address": null, + "params": { + "poolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "v3Factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "v2Factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + } + } + } + } + }, + "swap-router-contracts": { + "name": "Swap Router Contracts", + "deploy": false, + "contracts": { + "SwapRouter02": { + "deploy": false, + "params": { + "factoryV2": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + }, + "factoryV3": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "positionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + } + }, + "dependencies": [ + "weth" + ], + "address": "0xcaf681a66d020601342297493863e78c959e5cb2" + } + } + }, + "universal-router": { + "name": "Universal Router (Latest)", + "tag": "v2.1", + "deploy": true, + "contracts": { + "UniversalRouter": { + "deploy": true, + "params": { + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "v2Factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + }, + "v3Factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "v2PairInitCodeHash": { + "name": "Uniswap v2 pair init code hash", + "type": "bytes32", + "value": "0x96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.pairInitCodeHash" + ] + } + }, + "v3PoolInitCodeHash": { + "name": "Uniswap v3 pool init code hash", + "type": "bytes32", + "value": "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.poolInitCodeHash" + ] + } + }, + "v4PoolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "v3NFTPositionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + }, + "v4PositionManager": { + "name": "Uniswap v4 position manager address", + "pointer": "protocols.v4.contracts.PositionManager" + }, + "acrossSpokePool": { + "name": "Across Spoke Pool address", + "type": "address", + "value": "0x7332D11BD10d18A04B119Cd4671a96f3148002c4" + } + }, + "dependencies": [ + "weth" + ], + "lookup": { + "latest": "UniversalRouter" + } + } + } + }, + "universal-router-2_0": { + "name": "Universal Router (2.0)", + "tag": "v2.0", + "deploy": false, + "contracts": { + "UniversalRouter": { + "deploy": false, + "params": { + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "v2Factory": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + }, + "v3Factory": { + "name": "Uniswap v3 factory address", + "pointer": "protocols.v3.contracts.UniswapV3Factory" + }, + "v2PairInitCodeHash": { + "name": "Uniswap v2 pair init code hash", + "type": "bytes32", + "value": "0x96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.pairInitCodeHash" + ] + } + }, + "v3PoolInitCodeHash": { + "name": "Uniswap v3 pool init code hash", + "type": "bytes32", + "value": "0xe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b54", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.poolInitCodeHash" + ] + } + }, + "v4PoolManager": { + "name": "Pool Manager", + "pointer": "protocols.v4.contracts.PoolManager" + }, + "v3NFTPositionManager": { + "name": "Uniswap v3 position manager address", + "pointer": "protocols.v3.contracts.NonfungiblePositionManager" + }, + "v4PositionManager": { + "name": "Uniswap v4 position manager address", + "pointer": "protocols.v4.contracts.PositionManager" + } + }, + "dependencies": [ + "weth" + ], + "lookup": { + "latest": "UniversalRouter" + } + } + } + }, + "calibur": { + "name": "Calibur", + "deploy": false, + "contracts": { + "Calibur": { + "deploy": false, + "address": null, + "params": { + "salt": { + "type": "bytes32", + "value": "0x0000000000000000000000000000000000000000eca2ad36bee3874a279d0010" + } + } + } + } + }, + "util-contracts": { + "name": "Utils", + "deploy": false, + "contracts": { + "FeeOnTransferDetector": { + "deploy": false, + "address": null, + "params": { + "factoryV2": { + "name": "Uniswap v2 factory address", + "pointer": "protocols.v2.contracts.UniswapV2Factory" + } + } + }, + "FeeCollector": { + "deploy": false, + "address": null, + "params": { + "owner": { + "type": "address" + }, + "universalRouter": { + "name": "Universal Router address", + "pointer": "protocols.universal-router.contracts.UniversalRouter" + }, + "permit2": { + "name": "Permit 2 address", + "pointer": "protocols.permit2.contracts.Permit2" + }, + "feeToken": { + "name": "Fee token address (usually USDC)", + "type": "address" + } + } + }, + "ERC7914Detector": { + "deploy": false, + "address": "0x000000009B1D0aF20D8C6d0A44e162d11F9b8f00", + "params": { + "caliburAddress": { + "name": "Calibur address for ERC7914 detection", + "pointer": "protocols.calibur.contracts.Calibur" + } + } + } + } + } + }, + "dependencies": { + "weth": { + "type": "address", + "value": "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73", + "lookup": { + "history": [ + "UniversalRouter.input.constructor.params.weth9", + "QuoterV2.input.constructor._WETH9", + "V3Migrator.input.constructor._WETH9", + "NonfungiblePositionManager.input.constructor._WETH9", + "NonFungibleTokenPositionDescriptor.input.constructor._WETH9", + "SwapRouter.input.constructor._WETH9", + "SwapRouter02.input.constructor._WETH9", + "Quoter.input.constructor._WETH9", + "QuoterV2.input.constructor._WETH9", + "UniswapV2Router02.input.constructor._WETH" + ] + } + } + }, + "rename": true +} From b448a9716ee64220daeddbc9dbfb73e630eb090c Mon Sep 17 00:00:00 2001 From: david-uniswap <274080779+david-uniswap@users.noreply.github.com> Date: Tue, 26 May 2026 12:40:31 -0700 Subject: [PATCH 2/2] preserve named chain labels in deployments/index.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Chronicles index regeneration overwrote "Tempo Mainnet" (4217) and "Robinhood Chain" (4663) with generic "Chain 4217" / "Chain 4663" fallbacks. Restore the human-readable names. These show up as the fallback when forge-chronicles' bundled chains.json doesn't carry the chain — both of these are recent additions not yet in chainid.network. The fix is purely cosmetic to the index page. --- deployments/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/deployments/index.md b/deployments/index.md index d92f3453..b0fbffe4 100644 --- a/deployments/index.md +++ b/deployments/index.md @@ -15,9 +15,9 @@ This repository contains deployment information for the following networks: | 480 | World Chain | [View Deployment](./480.md) | | 1301 | Unichain Sepolia Testnet | [View Deployment](./1301.md) | | 1868 | Soneium | [View Deployment](./1868.md) | -| 4217 | Chain 4217 | [View Deployment](./4217.md) | +| 4217 | Tempo Mainnet | [View Deployment](./4217.md) | | 4326 | Chain 4326 | [View Deployment](./4326.md) | -| 4663 | Chain 4663 | [View Deployment](./4663.md) | +| 4663 | Robinhood Chain | [View Deployment](./4663.md) | | 8453 | Base | [View Deployment](./8453.md) | | 10143 | Monad Testnet | [View Deployment](./10143.md) | | 42161 | Arbitrum One | [View Deployment](./42161.md) |