From 0706e82881e18cbe9366b6b5492031e02c3c3b33 Mon Sep 17 00:00:00 2001 From: steven Date: Tue, 31 Mar 2026 13:57:49 -0400 Subject: [PATCH 01/34] feat: integrate SysFeature for Interop --- packages/contracts-bedrock/snapshots/semver-lock.json | 4 ++-- .../src/L1/opcm/OPContractsManagerV2.sol | 3 +++ packages/contracts-bedrock/test/L1/SystemConfig.t.sol | 10 ++++++++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index e0490008eb99c..c48f6ecef1d9f 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -48,8 +48,8 @@ "sourceCodeHash": "0xb09cb2f7cbde8585fad5c5beb6811fa9044b156b4203da8005d3f6a7a68c30b2" }, "src/L1/opcm/OPContractsManagerV2.sol:OPContractsManagerV2": { - "initCodeHash": "0x6c8af9dac0ff4dc0c783fcf8af06bde4d444ebab065c907785a24fd4f65f2414", - "sourceCodeHash": "0x937e16a99db4a376c8855b3df8eb529d19614c0fa3d5d7dbe334006bad1452a3" + "initCodeHash": "0x74c0dcfe009950c5556298abc3c535d9f29ac7f88aae8d0434cffbb9490c2cf6", + "sourceCodeHash": "0xc646793b1b66a26d0763abe43aaae30102e172e36e32087ed83727deadd49bea" }, "src/L2/BaseFeeVault.sol:BaseFeeVault": { "initCodeHash": "0xf1fb169c6dd4eceb5cec6ed6dfa3affc45970e5a01e00827d06af1f9e8df026d", diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol index 440f104211eb8..df0e5f9360dca 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol @@ -828,6 +828,9 @@ contract OPContractsManagerV2 is ISemver, OPContractsManagerUtilsCaller { if (!_cts.systemConfig.isFeatureEnabled(Features.ETH_LOCKBOX)) { _cts.systemConfig.setFeature(Features.ETH_LOCKBOX, true); } + if (!_cts.systemConfig.isFeatureEnabled(Features.INTEROP)) { + _cts.systemConfig.setFeature(Features.INTEROP, true); + } // Migrate any ETH into the ETHLockbox. IOptimismPortalInterop(payable(_cts.optimismPortal)).migrateLiquidity(); diff --git a/packages/contracts-bedrock/test/L1/SystemConfig.t.sol b/packages/contracts-bedrock/test/L1/SystemConfig.t.sol index e4635d1b6c9e9..376f063e62d39 100644 --- a/packages/contracts-bedrock/test/L1/SystemConfig.t.sol +++ b/packages/contracts-bedrock/test/L1/SystemConfig.t.sol @@ -100,6 +100,16 @@ contract SystemConfig_Initialize_Test is SystemConfig_TestInit { skipIfForkTest("SystemConfig_Initialize_Test: cannot test initialization on forked network"); } + function test_initialize_interopFlag_succeeds() external view { + if (isDevFeatureEnabled(DevFeatures.OPTIMISM_PORTAL_INTEROP)) { + /// if devfeature flag is on, check in system config is on + vm.assertTrue(systemConfig.isFeatureEnabled(Features.INTEROP)); + } else { + /// if dev feature flag is off, check system config is off + vm.assertFalse(systemConfig.isFeatureEnabled(Features.INTEROP)); + } + } + /// @notice Tests that initialization sets the correct values. function test_initialize_succeeds() external view { assertEq(systemConfig.owner(), owner); From 5e773bc81152f3273540782549bae3798c2ce019 Mon Sep 17 00:00:00 2001 From: steven Date: Tue, 31 Mar 2026 15:15:42 -0400 Subject: [PATCH 02/34] feat: add interop migration functions and eth lockbox to portal2 --- .../interfaces/L1/IOptimismPortal2.sol | 2 +- .../snapshots/abi/OptimismPortal2.json | 90 +++++++++++++++++++ .../snapshots/semver-lock.json | 8 +- .../upgrades/current-upgrade-bundle.json | 64 ++++++------- .../src/L1/OptimismPortal2.sol | 82 ++++++++++++++++- .../src/L1/opcm/OPContractsManagerV2.sol | 6 +- .../test/L1/OptimismPortal2.t.sol | 4 +- .../test/vendor/Initializable.t.sol | 9 +- 8 files changed, 221 insertions(+), 44 deletions(-) diff --git a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol index 41d19d9f56ef3..e4da55163fdf7 100644 --- a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol +++ b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol @@ -71,7 +71,7 @@ interface IOptimismPortal2 is IProxyAdminOwnedBase { external; function finalizedWithdrawals(bytes32) external view returns (bool); function guardian() external view returns (address); - function initialize(ISystemConfig _systemConfig, IAnchorStateRegistry _anchorStateRegistry) external; + function initialize(ISystemConfig _systemConfig, IAnchorStateRegistry _anchorStateRegistry, IETHLockbox _ethLockbox) external; function initVersion() external view returns (uint8); function l2Sender() external view returns (address); function minimumGasLimit(uint64 _byteCount) external pure returns (uint64); diff --git a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json index 9d19d18dbe5db..e8ec4f27d32e3 100644 --- a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json +++ b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json @@ -294,6 +294,11 @@ "internalType": "contract IAnchorStateRegistry", "name": "_anchorStateRegistry", "type": "address" + }, + { + "internalType": "contract IETHLockbox", + "name": "_ethLockbox", + "type": "address" } ], "name": "initialize", @@ -314,6 +319,31 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [], + "name": "migrateLiquidity", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IETHLockbox", + "name": "_newLockbox", + "type": "address" + }, + { + "internalType": "contract IAnchorStateRegistry", + "name": "_newAnchorStateRegistry", + "type": "address" + } + ], + "name": "migrateToSuperRoots", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -627,6 +657,25 @@ "stateMutability": "pure", "type": "function" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "lockbox", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "name": "ETHMigrated", + "type": "event" + }, { "anonymous": false, "inputs": [ @@ -640,6 +689,37 @@ "name": "Initialized", "type": "event" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "contract IETHLockbox", + "name": "oldLockbox", + "type": "address" + }, + { + "indexed": true, + "internalType": "contract IETHLockbox", + "name": "_newLockbox", + "type": "address" + }, + { + "indexed": true, + "internalType": "contract IAnchorStateRegistry", + "name": "oldAnchorStateRegistry", + "type": "address" + }, + { + "indexed": false, + "internalType": "contract IAnchorStateRegistry", + "name": "_newAnchorStateRegistry", + "type": "address" + } + ], + "name": "PortalMigrated", + "type": "event" + }, { "anonymous": false, "inputs": [ @@ -819,6 +899,11 @@ "name": "OptimismPortal_InvalidRootClaim", "type": "error" }, + { + "inputs": [], + "name": "OptimismPortal_MigratingToSameRegistry", + "type": "error" + }, { "inputs": [], "name": "OptimismPortal_NoReentrancy", @@ -829,6 +914,11 @@ "name": "OptimismPortal_NotAllowedOnCGTMode", "type": "error" }, + { + "inputs": [], + "name": "OptimismPortal_NotUsingInterop", + "type": "error" + }, { "inputs": [], "name": "OptimismPortal_ProofNotOldEnough", diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index c48f6ecef1d9f..1eca1e81bf49b 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -28,8 +28,8 @@ "sourceCodeHash": "0x7c0cb663f82b07da8dec8a7497cf2fa56a335fb5bdc57b612c86462f8527d4d5" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { - "initCodeHash": "0x8c296124bc1b1468cf301a434eebf3f0d9a194cde06876b993a8672577f08187", - "sourceCodeHash": "0xb14d8bceab135616e55fd560a077a4cc66fc3b535f09931d3b9167ee940fa62f" + "initCodeHash": "0x874466f8cb6b49a464822a05733817aa21b205b590a23a25779b7e16d2a46f73", + "sourceCodeHash": "0xb5169dc246427c1c2cdba530c479bb0ec89b5cc875c98bcffe4bd63a222d5c72" }, "src/L1/OptimismPortalInterop.sol:OptimismPortalInterop": { "initCodeHash": "0xbafd0b80deb0a834335052e32a4199a96121148d9bda05acb62535ac18bd9909", @@ -48,8 +48,8 @@ "sourceCodeHash": "0xb09cb2f7cbde8585fad5c5beb6811fa9044b156b4203da8005d3f6a7a68c30b2" }, "src/L1/opcm/OPContractsManagerV2.sol:OPContractsManagerV2": { - "initCodeHash": "0x74c0dcfe009950c5556298abc3c535d9f29ac7f88aae8d0434cffbb9490c2cf6", - "sourceCodeHash": "0xc646793b1b66a26d0763abe43aaae30102e172e36e32087ed83727deadd49bea" + "initCodeHash": "0x535c0d6ae6d71675370ebdd8c8f63467b3fb5411347d5bd45916d91368c04c42", + "sourceCodeHash": "0xffa5d450e57e09e5afc72b4cf934999aad470866566fe24950893346b89f4bdc" }, "src/L2/BaseFeeVault.sol:BaseFeeVault": { "initCodeHash": "0xf1fb169c6dd4eceb5cec6ed6dfa3affc45970e5a01e00827d06af1f9e8df026d", diff --git a/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json b/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json index 9a75d36666995..81a472908b490 100644 --- a/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json +++ b/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json @@ -4,224 +4,224 @@ }, "transactions": [ { - "data": "0x9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4608060405234801561001057600080fd5b506105b8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610098578063e0145f5c146100d0575b600080fd5b6100826040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f91906103f7565b60405180910390f35b6100ab6100a6366004610440565b6100ea565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008f565b734e59b44847b379578588920ca78fbf26c0b4956c6100ab565b8051602080830191909120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527f4e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000602182015260358101869052605580820184905282518083039091018152607590910190915280519201919091206000919073ffffffffffffffffffffffffffffffffffffffff81163b156101d85760405173ffffffffffffffffffffffffffffffffffffffff8216907ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b90600090a291506103779050565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff168787604051602001610219929190610519565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290526102519161053f565b6000604051808303816000865af19150503d806000811461028e576040519150601f19603f3d011682016040523d82523d6000602084013e610293565b606091505b5091509150806102a29061055b565b60601c94508115806102e057508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561032257806040517fcb0fc6f700000000000000000000000000000000000000000000000000000000815260040161031991906103f7565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d28860405161036a91815260200190565b60405180910390a2505050505b92915050565b60005b83811015610398578181015183820152602001610380565b838111156103a7576000848401525b50505050565b600081518084526103c581602086016020860161037d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061040a60208301846103ad565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806040838503121561045357600080fd5b82359150602083013567ffffffffffffffff8082111561047257600080fd5b818501915085601f83011261048657600080fd5b81358181111561049857610498610411565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156104de576104de610411565b816040528281528860208487010111156104f757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b8281526000825161053181602085016020870161037d565b919091016020019392505050565b6000825161055181846020870161037d565b9190910192915050565b6000815160208301517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000808216935060148310156105a35780818460140360031b1b83161693505b50505091905056fea164736f6c634300080f000a", + "data": "0x9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4608060405234801561001057600080fd5b50610949806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610064578063e0145f5c14610094575b600080fd5b61004e6100b2565b60405161005b91906103ec565b60405180910390f35b61007e6004803603810190610079919061058d565b6100eb565b60405161008b919061062a565b60405180910390f35b61009c610337565b6040516100a9919061062a565b60405180910390f35b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60008082805190602001209050600060ff60f81b734e59b44847b379578588920ca78fbf26c0b4956c8684604051602001610129949392919061070d565b6040516020818303038152906040528051906020012060001c905060008173ffffffffffffffffffffffffffffffffffffffff163b146101b0578073ffffffffffffffffffffffffffffffffffffffff167ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b60405160405180910390a28092505050610331565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff1687876040516020016101f19291906107a2565b60405160208183030381529060405260405161020d91906107ca565b6000604051808303816000865af19150503d806000811461024a576040519150601f19603f3d011682016040523d82523d6000602084013e61024f565b606091505b50915091508061025e9061083f565b60601c945081158061029c57508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156102de57806040517fcb0fc6f70000000000000000000000000000000000000000000000000000000081526004016102d591906108f0565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d2886040516103249190610921565b60405180910390a2505050505b92915050565b6000734e59b44847b379578588920ca78fbf26c0b4956c905090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561038d578082015181840152602081019050610372565b8381111561039c576000848401525b50505050565b6000601f19601f8301169050919050565b60006103be82610353565b6103c8818561035e565b93506103d881856020860161036f565b6103e1816103a2565b840191505092915050565b6000602082019050818103600083015261040681846103b3565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61043581610422565b811461044057600080fd5b50565b6000813590506104528161042c565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61049a826103a2565b810181811067ffffffffffffffff821117156104b9576104b8610462565b5b80604052505050565b60006104cc61040e565b90506104d88282610491565b919050565b600067ffffffffffffffff8211156104f8576104f7610462565b5b610501826103a2565b9050602081019050919050565b82818337600083830152505050565b600061053061052b846104dd565b6104c2565b90508281526020810184848401111561054c5761054b61045d565b5b61055784828561050e565b509392505050565b600082601f83011261057457610573610458565b5b813561058484826020860161051d565b91505092915050565b600080604083850312156105a4576105a3610418565b5b60006105b285828601610443565b925050602083013567ffffffffffffffff8111156105d3576105d261041d565b5b6105df8582860161055f565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610614826105e9565b9050919050565b61062481610609565b82525050565b600060208201905061063f600083018461061b565b92915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6000819050919050565b61068c61068782610645565b610671565b82525050565b600061069d826105e9565b9050919050565b60008160601b9050919050565b60006106bc826106a4565b9050919050565b60006106ce826106b1565b9050919050565b6106e66106e182610692565b6106c3565b82525050565b6000819050919050565b61070761070282610422565b6106ec565b82525050565b6000610719828761067b565b60018201915061072982866106d5565b60148201915061073982856106f6565b60208201915061074982846106f6565b60208201915081905095945050505050565b600081519050919050565b600081905092915050565b600061077c8261075b565b6107868185610766565b935061079681856020860161036f565b80840191505092915050565b60006107ae82856106f6565b6020820191506107be8284610771565b91508190509392505050565b60006107d68284610771565b915081905092915050565b6000819050602082019050919050565b60007fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082169050919050565b600061082982516107f1565b80915050919050565b600082821b905092915050565b600061084a8261075b565b82610854846107e1565b905061085f8161081d565b9250601482101561089f5761089a7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083601403600802610832565b831692505b5050919050565b600082825260208201905092915050565b60006108c28261075b565b6108cc81856108a6565b93506108dc81856020860161036f565b6108e5816103a2565b840191505092915050565b6000602082019050818103600083015261090a81846108b7565b905092915050565b61091b81610422565b82525050565b60006020820190506109366000830184610912565b9291505056fea164736f6c634300080f000a", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 600000, "intent": "ConditionalDeployer Deployment", "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C" }, { - "data": "0x3659cfe6000000000000000000000000906835344844979ffd3a752eaa23728d513db00b", + "data": "0x3659cfe6000000000000000000000000c741843b3b1eaf9a90316abf785858c73cf87197", "from": "0x0000000000000000000000000000000000000000", "gasLimit": 50000, "intent": "Upgrade ConditionalDeployer Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000048a608060405234801561001057600080fd5b5061046a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a6ed563e11610076578063bd02d0f51161005b578063bd02d0f51461018e578063ca446dd9146101b8578063e2a4853a1461011557600080fd5b8063a6ed563e1461018e578063abfdcced146101aa57600080fd5b80634e91db08116100a75780634e91db081461011557806354fd4d50146101275780637ae1cfca1461017057600080fd5b80630528afe2146100c357806321f8a721146100d8575b600080fd5b6100d66100d1366004610239565b6101c6565b005b6100eb6100e63660046102ae565b610229565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6100d66101233660046102c7565b9055565b6101636040518060400160405280600581526020017f312e322e3200000000000000000000000000000000000000000000000000000081525081565b60405161010c91906102e9565b61017e6100e63660046102ae565b604051901515815260200161010c565b61019c6100e63660046102ae565b60405190815260200161010c565b6100d661012336600461035c565b6100d6610123366004610391565b8060005b81811015610223576102118484838181106101e7576101e76103cf565b90506040020160000135858584818110610203576102036103cf565b905060400201602001359055565b8061021b816103fe565b9150506101ca565b50505050565b6000610233825490565b92915050565b6000806020838503121561024c57600080fd5b823567ffffffffffffffff8082111561026457600080fd5b818501915085601f83011261027857600080fd5b81358181111561028757600080fd5b8660208260061b850101111561029c57600080fd5b60209290920196919550909350505050565b6000602082840312156102c057600080fd5b5035919050565b600080604083850312156102da57600080fd5b50508035926020909101359150565b600060208083528351808285015260005b81811015610316578581018301518582016040015282016102fa565b81811115610328576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b6000806040838503121561036f57600080fd5b823591506020830135801515811461038657600080fd5b809150509250929050565b600080604083850312156103a457600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811461038657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610456577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea164736f6c634300080f000a00000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000088d608060405234801561001057600080fd5b5061086d806100206000396000f3fe608060405234801561001057600080fd5b506004361061008e5760003560e01c80630528afe21461009357806321f8a721146100af5780634e91db08146100df57806354fd4d50146100fb5780637ae1cfca14610119578063a6ed563e14610149578063abfdcced14610179578063bd02d0f514610195578063ca446dd9146101c5578063e2a4853a146101e1575b600080fd5b6100ad60048036038101906100a891906103db565b6101fd565b005b6100c960048036038101906100c4919061045e565b61026b565b6040516100d691906104cc565b60405180910390f35b6100f960048036038101906100f491906104e7565b61027d565b005b61010361028b565b60405161011091906105c0565b60405180910390f35b610133600480360381019061012e919061045e565b6102c4565b60405161014091906105fd565b60405180910390f35b610163600480360381019061015e919061045e565b6102d6565b6040516101709190610627565b60405180910390f35b610193600480360381019061018e919061066e565b6102e8565b005b6101af60048036038101906101aa919061045e565b6102f6565b6040516101bc91906106c7565b60405180910390f35b6101df60048036038101906101da919061070e565b610308565b005b6101fb60048036038101906101f6919061077a565b610316565b005b600082829050905060005b8181101561026557610252848483818110610226576102256107ba565b5b90506040020160000135858584818110610243576102426107ba565b5b90506040020160200135610324565b808061025d90610818565b915050610208565b50505050565b60006102768261032b565b9050919050565b6102878282610324565b5050565b6040518060400160405280600581526020017f312e322e3200000000000000000000000000000000000000000000000000000081525081565b60006102cf82610336565b9050919050565b60006102e182610341565b9050919050565b6102f2828261034c565b5050565b600061030182610353565b9050919050565b610312828261035e565b5050565b6103208282610365565b5050565b8082555050565b600081549050919050565b600081549050919050565b600081549050919050565b8082555050565b600081549050919050565b8082555050565b8082555050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261039b5761039a610376565b5b8235905067ffffffffffffffff8111156103b8576103b761037b565b5b6020830191508360408202830111156103d4576103d3610380565b5b9250929050565b600080602083850312156103f2576103f161036c565b5b600083013567ffffffffffffffff8111156104105761040f610371565b5b61041c85828601610385565b92509250509250929050565b6000819050919050565b61043b81610428565b811461044657600080fd5b50565b60008135905061045881610432565b92915050565b6000602082840312156104745761047361036c565b5b600061048284828501610449565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006104b68261048b565b9050919050565b6104c6816104ab565b82525050565b60006020820190506104e160008301846104bd565b92915050565b600080604083850312156104fe576104fd61036c565b5b600061050c85828601610449565b925050602061051d85828601610449565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610561578082015181840152602081019050610546565b83811115610570576000848401525b50505050565b6000601f19601f8301169050919050565b600061059282610527565b61059c8185610532565b93506105ac818560208601610543565b6105b581610576565b840191505092915050565b600060208201905081810360008301526105da8184610587565b905092915050565b60008115159050919050565b6105f7816105e2565b82525050565b600060208201905061061260008301846105ee565b92915050565b61062181610428565b82525050565b600060208201905061063c6000830184610618565b92915050565b61064b816105e2565b811461065657600080fd5b50565b60008135905061066881610642565b92915050565b600080604083850312156106855761068461036c565b5b600061069385828601610449565b92505060206106a485828601610659565b9150509250929050565b6000819050919050565b6106c1816106ae565b82525050565b60006020820190506106dc60008301846106b8565b92915050565b6106eb816104ab565b81146106f657600080fd5b50565b600081359050610708816106e2565b92915050565b600080604083850312156107255761072461036c565b5b600061073385828601610449565b9250506020610744858286016106f9565b9150509250929050565b610757816106ae565b811461076257600080fd5b50565b6000813590506107748161074e565b92915050565b600080604083850312156107915761079061036c565b5b600061079f85828601610449565b92505060206107b085828601610765565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610823826106ae565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610855576108546107e9565b5b60018201905091905056fea164736f6c634300080f000a00000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 500000, "intent": "Deploy StorageSetter Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000022d3608060405234801561001057600080fd5b5061001961001e565b6100eb565b600054600160a81b900460ff161561008c5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff600160a01b909104811610156100e9576000805460ff60a01b191660ff60a01b17905560405160ff81527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6121d880620000fb6000396000f3fe6080604052600436106101a15760003560e01c80638cbeeef2116100e1578063c4d66de81161008a578063db505d8011610064578063db505d8014610451578063ddd5a40f1461047e578063e46e245a14610494578063ecc70428146104a957600080fd5b8063c4d66de814610409578063d764ad0b14610429578063dad544e01461043c57600080fd5b8063a7119869116100bb578063a71198691461035e578063b1b1b209146103b9578063b28ade25146103e957600080fd5b80638cbeeef2146102905780639fce812c1461035e578063a4e7f8bd1461038957600080fd5b80633f827a5a1161014e5780635644cfdf116101285780635644cfdf146102fc5780635c975abb146103125780636e296e451461033257806383a740741461034757600080fd5b80633f827a5a146102685780634c1d6a691461029057806354fd4d50146102a657600080fd5b80632f7d39221161017f5780632f7d3922146102035780633dbb202b146102195780633e47158c1461022e57600080fd5b8063028f85f7146101a65780630c568498146101d95780632828d7e8146101ee575b600080fd5b3480156101b257600080fd5b506101bb601081565b60405167ffffffffffffffff90911681526020015b60405180910390f35b3480156101e557600080fd5b506101bb603f81565b3480156101fa57600080fd5b506101bb604081565b34801561020f57600080fd5b506101bb61520881565b61022c610227366004611bb4565b61050e565b005b34801561023a57600080fd5b506102436107a1565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d0565b34801561027457600080fd5b5061027d600181565b60405161ffff90911681526020016101d0565b34801561029c57600080fd5b506101bb619c4081565b3480156102b257600080fd5b506102ef6040518060400160405280600581526020017f322e322e3100000000000000000000000000000000000000000000000000000081525081565b6040516101d09190611c86565b34801561030857600080fd5b506101bb61138881565b34801561031e57600080fd5b5060005b60405190151581526020016101d0565b34801561033e57600080fd5b506102436109ac565b34801561035357600080fd5b506101bb62030d4081565b34801561036a57600080fd5b5060cf5473ffffffffffffffffffffffffffffffffffffffff16610243565b34801561039557600080fd5b506103226103a4366004611c99565b60ce6020526000908152604090205460ff1681565b3480156103c557600080fd5b506103226103d4366004611c99565b60cb6020526000908152604090205460ff1681565b3480156103f557600080fd5b506101bb610404366004611ce1565b610a98565b34801561041557600080fd5b5061022c610424366004611dc1565b610b59565b61022c610437366004611dde565b610d60565b34801561044857600080fd5b50610243611645565b34801561045d57600080fd5b5060cf546102439073ffffffffffffffffffffffffffffffffffffffff1681565b34801561048a57600080fd5b506101bb61010481565b3480156104a057600080fd5b506101bb602881565b3480156104b557600080fd5b5061050060cd547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b6040519081526020016101d0565b60cf54604080516020601f86018190048102820181019092528481526106769273ffffffffffffffffffffffffffffffffffffffff169161056c91908790879081908401838280828437600092019190915250879250610a98915050565b347fd764ad0b000000000000000000000000000000000000000000000000000000006105d860cd547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b338a34898c8c6040516024016105f49796959493929190611ead565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526116c2565b8373ffffffffffffffffffffffffffffffffffffffff167fcb0f7ffd78f9aee47a248fae8db181db6eee833039123e026dcbff529522e52a3385856106fb60cd547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b8660405161070d959493929190611f0c565b60405180910390a260405134815233907f8ebb2ec2465bdb2a06a66fc37a0963af8a2a6a1479d81d56fdb8cbb98096d5469060200160405180910390a2505060cd80547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808216600101167fffff0000000000000000000000000000000000000000000000000000000000009091161790555050565b6000806107cc7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107ef57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108329190611f89565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061088d906060015b604051602081830303815290604052805190602001205490565b146108c4576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091526000906108e690606001610873565b905073ffffffffffffffffffffffffffffffffffffffff81161561097a578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561094f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109739190611fc6565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60cc5460009073ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff215301610a7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f43726f7373446f6d61696e4d657373656e6765723a2078446f6d61696e4d657360448201527f7361676553656e646572206973206e6f7420736574000000000000000000000060648201526084015b60405180910390fd5b5060cc5473ffffffffffffffffffffffffffffffffffffffff1690565b600080603f610aae604063ffffffff8616611fe3565b610ab89190612013565b611388619c40610acb8162030d40612061565b610ad59190612061565b610adf9190612061565b610ae99190612061565b9050600061010467ffffffffffffffff168551610b06919061208d565b9050610b44610b16601083611fe3565b610b209084612061565b67ffffffffffffffff16610b35602884611fe3565b67ffffffffffffffff16611750565b610b5090615208612061565b95945050505050565b6000547501000000000000000000000000000000000000000000900460ff1615808015610ba4575060005460017401000000000000000000000000000000000000000090910460ff16105b80610bd65750303b158015610bd6575060005474010000000000000000000000000000000000000000900460ff166001145b610c62576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a72565b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790558015610ce857600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000001790555b610cf0611769565b610cf9826117ec565b8015610d5c57600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b60f087901c60028110610e1b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604d60248201527f43726f7373446f6d61696e4d657373656e6765723a206f6e6c7920766572736960448201527f6f6e2030206f722031206d657373616765732061726520737570706f7274656460648201527f20617420746869732074696d6500000000000000000000000000000000000000608482015260a401610a72565b8061ffff16600003610f10576000610e6c878986868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508f9250611928915050565b600081815260cb602052604090205490915060ff1615610f0e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f43726f7373446f6d61696e4d657373656e6765723a206c65676163792077697460448201527f6864726177616c20616c72656164792072656c617965640000000000000000006064820152608401610a72565b505b6000610f56898989898989898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061194792505050565b9050610f9f60cf54337fffffffffffffffffffffffffeeeeffffffffffffffffffffffffffffffffeeef0173ffffffffffffffffffffffffffffffffffffffff90811691161490565b15610fd757853414610fb357610fb36120a5565b600081815260ce602052604090205460ff1615610fd257610fd26120a5565b611129565b341561108b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152605060248201527f43726f7373446f6d61696e4d657373656e6765723a2076616c7565206d75737460448201527f206265207a65726f20756e6c657373206d6573736167652069732066726f6d2060648201527f612073797374656d206164647265737300000000000000000000000000000000608482015260a401610a72565b600081815260ce602052604090205460ff16611129576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520636160448201527f6e6e6f74206265207265706c61796564000000000000000000000000000000006064820152608401610a72565b6111328761196a565b156111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f43726f7373446f6d61696e4d657373656e6765723a2063616e6e6f742073656e60448201527f64206d65737361676520746f20626c6f636b65642073797374656d206164647260648201527f6573730000000000000000000000000000000000000000000000000000000000608482015260a401610a72565b600081815260cb602052604090205460ff1615611284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520686160448201527f7320616c7265616479206265656e2072656c61796564000000000000000000006064820152608401610a72565b6112a585611296611388619c40612061565b67ffffffffffffffff166119bf565b15806112cb575060cc5473ffffffffffffffffffffffffffffffffffffffff1661dead14155b156113e457600081815260ce602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555182917f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f91a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff32016113dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f43726f7373446f6d61696e4d657373656e6765723a206661696c656420746f2060448201527f72656c6179206d657373616765000000000000000000000000000000000000006064820152608401610a72565b505061163c565b60cc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8a16179055600061147588619c405a61143891906120d4565b8988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506119dd92505050565b60cc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead1790559050801561152b57600082815260cb602052604090205460ff16156114c8576114c86120a5565b600082815260cb602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555183917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611638565b600082815260ce602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555183917f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f91a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3201611638576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f43726f7373446f6d61696e4d657373656e6765723a206661696c656420746f2060448201527f72656c6179206d657373616765000000000000000000000000000000000000006064820152608401610a72565b5050505b50505050505050565b600061164f6107a1565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611699573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116bd9190611fc6565b905090565b6040517fc2b3e5ac0000000000000000000000000000000000000000000000000000000081527342000000000000000000000000000000000000169063c2b3e5ac908490611718908890889087906004016120eb565b6000604051808303818588803b15801561173157600080fd5b505af1158015611745573d6000803e3d6000fd5b505050505050505050565b6000818310156117605781611762565b825b9392505050565b336117726107a1565b73ffffffffffffffffffffffffffffffffffffffff16141580156117b357503361179a611645565b73ffffffffffffffffffffffffffffffffffffffff1614155b156117ea576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6000547501000000000000000000000000000000000000000000900460ff16611897576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a72565b60cc5473ffffffffffffffffffffffffffffffffffffffff166118e15760cc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead1790555b60cf80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6000611936858585856119f5565b805190602001209050949350505050565b6000611957878787878787611a8e565b8051906020012090509695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82163014806119b9575073ffffffffffffffffffffffffffffffffffffffff8216734200000000000000000000000000000000000016145b92915050565b600080603f83619c4001026040850201603f5a021015949350505050565b6000806000835160208501868989f195945050505050565b606084848484604051602401611a0e949392919061212a565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fcbd4ece9000000000000000000000000000000000000000000000000000000001790529050949350505050565b6060868686868686604051602401611aab96959493929190612174565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fd764ad0b0000000000000000000000000000000000000000000000000000000017905290509695505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114611b4f57600080fd5b50565b60008083601f840112611b6457600080fd5b50813567ffffffffffffffff811115611b7c57600080fd5b602083019150836020828501011115611b9457600080fd5b9250929050565b803563ffffffff81168114611baf57600080fd5b919050565b60008060008060608587031215611bca57600080fd5b8435611bd581611b2d565b9350602085013567ffffffffffffffff811115611bf157600080fd5b611bfd87828801611b52565b9094509250611c10905060408601611b9b565b905092959194509250565b6000815180845260005b81811015611c4157602081850181015186830182015201611c25565b81811115611c53576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006117626020830184611c1b565b600060208284031215611cab57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060408385031215611cf457600080fd5b823567ffffffffffffffff80821115611d0c57600080fd5b818501915085601f830112611d2057600080fd5b813581811115611d3257611d32611cb2565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908382118183101715611d7857611d78611cb2565b81604052828152886020848701011115611d9157600080fd5b826020860160208301376000602084830101528096505050505050611db860208401611b9b565b90509250929050565b600060208284031215611dd357600080fd5b813561176281611b2d565b600080600080600080600060c0888a031215611df957600080fd5b873596506020880135611e0b81611b2d565b95506040880135611e1b81611b2d565b9450606088013593506080880135925060a088013567ffffffffffffffff811115611e4557600080fd5b611e518a828b01611b52565b989b979a50959850939692959293505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b878152600073ffffffffffffffffffffffffffffffffffffffff808916602084015280881660408401525085606083015263ffffffff8516608083015260c060a0830152611eff60c083018486611e64565b9998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff86168152608060208201526000611f3c608083018688611e64565b905083604083015263ffffffff831660608301529695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611fc157611fc1611f5a565b500290565b600060208284031215611fd857600080fd5b815161176281611b2d565b600067ffffffffffffffff8083168185168183048111821515161561200a5761200a611f5a565b02949350505050565b600067ffffffffffffffff80841680612055577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b92169190910492915050565b600067ffffffffffffffff80831681851680830382111561208457612084611f5a565b01949350505050565b600082198211156120a0576120a0611f5a565b500190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b6000828210156120e6576120e6611f5a565b500390565b73ffffffffffffffffffffffffffffffffffffffff8416815267ffffffffffffffff83166020820152606060408201526000610b506060830184611c1b565b600073ffffffffffffffffffffffffffffffffffffffff8087168352808616602084015250608060408301526121636080830185611c1b565b905082606083015295945050505050565b868152600073ffffffffffffffffffffffffffffffffffffffff808816602084015280871660408401525084606083015283608083015260c060a08301526121bf60c0830184611c1b565b9897505050505050505056fea164736f6c634300080f000a00000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000313760806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d6565b600060159054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000179565b60405180910390fd5b60ff8016600060149054906101000a900460ff1660ff161015620000f05760ff600060146101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e79190620001b9565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b600062000161602783620000f2565b91506200016e8262000103565b604082019050919050565b60006020820190508181036000830152620001948162000152565b9050919050565b600060ff82169050919050565b620001b3816200019b565b82525050565b6000602082019050620001d06000830184620001a8565b92915050565b612f5180620001e66000396000f3fe6080604052600436106101315760003560e01c8063028f85f7146101365780630c568498146101615780632828d7e81461018c5780632f7d3922146101b75780633dbb202b146101e25780633e47158c146101fe5780633f827a5a146102295780634c1d6a691461025457806354fd4d501461027f5780635644cfdf146102aa5780635c975abb146102d55780636e296e451461030057806383a740741461032b5780638cbeeef2146103565780639fce812c14610381578063a4e7f8bd146103ac578063a7119869146103e9578063b1b1b20914610414578063b28ade2514610451578063c4d66de81461048e578063d764ad0b146104b7578063dad544e0146104d3578063db505d80146104fe578063ddd5a40f14610529578063e46e245a14610554578063ecc704281461057f575b600080fd5b34801561014257600080fd5b5061014b6105aa565b6040516101589190611c11565b60405180910390f35b34801561016d57600080fd5b506101766105af565b6040516101839190611c11565b60405180910390f35b34801561019857600080fd5b506101a16105b4565b6040516101ae9190611c11565b60405180910390f35b3480156101c357600080fd5b506101cc6105b9565b6040516101d99190611c11565b60405180910390f35b6101fc60048036038101906101f79190611d3f565b6105bf565b005b34801561020a57600080fd5b506102136107f7565b6040516102209190611e12565b60405180910390f35b34801561023557600080fd5b5061023e610a50565b60405161024b9190611e4a565b60405180910390f35b34801561026057600080fd5b50610269610a55565b6040516102769190611c11565b60405180910390f35b34801561028b57600080fd5b50610294610a5b565b6040516102a19190611efe565b60405180910390f35b3480156102b657600080fd5b506102bf610a94565b6040516102cc9190611c11565b60405180910390f35b3480156102e157600080fd5b506102ea610a9a565b6040516102f79190611f3b565b60405180910390f35b34801561030c57600080fd5b50610315610a9f565b6040516103229190611f65565b60405180910390f35b34801561033757600080fd5b50610340610b5b565b60405161034d9190611c11565b60405180910390f35b34801561036257600080fd5b5061036b610b62565b6040516103789190611c11565b60405180910390f35b34801561038d57600080fd5b50610396610b68565b6040516103a39190611fa1565b60405180910390f35b3480156103b857600080fd5b506103d360048036038101906103ce9190611ff2565b610b92565b6040516103e09190611f3b565b60405180910390f35b3480156103f557600080fd5b506103fe610bb2565b60405161040b9190611fa1565b60405180910390f35b34801561042057600080fd5b5061043b60048036038101906104369190611ff2565b610bdc565b6040516104489190611f3b565b60405180910390f35b34801561045d57600080fd5b506104786004803603810190610473919061214f565b610bfc565b6040516104859190611c11565b60405180910390f35b34801561049a57600080fd5b506104b560048036038101906104b091906121e9565b610cc8565b005b6104d160048036038101906104cc919061224c565b610e15565b005b3480156104df57600080fd5b506104e8611533565b6040516104f59190611f65565b60405180910390f35b34801561050a57600080fd5b506105136115b0565b6040516105209190611fa1565b60405180910390f35b34801561053557600080fd5b5061053e6115d6565b60405161054b9190611c11565b60405180910390f35b34801561056057600080fd5b506105696115dc565b6040516105769190611c11565b60405180910390f35b34801561058b57600080fd5b506105946115e1565b6040516105a1919061230a565b60405180910390f35b601081565b603f81565b604081565b61520881565b6106c260cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661063385858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505084610bfc565b3463d764ad0b60e01b6106446115e1565b338a34898c8c6040516024016106609796959493929190612372565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061161f565b8373ffffffffffffffffffffffffffffffffffffffff167fcb0f7ffd78f9aee47a248fae8db181db6eee833039123e026dcbff529522e52a3385856107056115e1565b8660405161071795949392919061240d565b60405180910390a23373ffffffffffffffffffffffffffffffffffffffff167f8ebb2ec2465bdb2a06a66fc37a0963af8a2a6a1479d81d56fdb8cbb98096d54634604051610765919061230a565b60405180910390a260cd600081819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660010191906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505050565b6000806108267fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b6116a9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108655780915050610a4d565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516108a8919061248a565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b6109023060006040516020016108e79291906124e4565b604051602081830303815290604052805190602001206116b4565b14610939576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061096d3060016040516020016109529291906124e4565b604051602081830303815290604052805190602001206116a9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610a1b578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a129190612522565b92505050610a4d565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b600181565b619c4081565b6040518060400160405280600581526020017f322e322e3100000000000000000000000000000000000000000000000000000081525081565b61138881565b600090565b600061dead73ffffffffffffffffffffffffffffffffffffffff1660cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610b33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2a906125c1565b60405180910390fd5b60cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b62030d4081565b619c4081565b600060cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60ce6020528060005260406000206000915054906101000a900460ff1681565b600060cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60cb6020528060005260406000206000915054906101000a900460ff1681565b600080603f60408463ffffffff16610c1491906125e1565b610c1e9190612652565b611388619c408062030d40610c339190612683565b610c3d9190612683565b610c479190612683565b610c519190612683565b9050600061010467ffffffffffffffff168551610c6e91906126c1565b9050610cb1601082610c8091906125e1565b83610c8b9190612683565b67ffffffffffffffff16602883610ca291906125e1565b67ffffffffffffffff166116bf565b615208610cbe9190612683565b9250505092915050565b60008060159054906101000a900460ff16159050808015610cfb57506001600060149054906101000a900460ff1660ff16105b80610d2a5750610d0a306116d9565b158015610d2957506001600060149054906101000a900460ff1660ff16145b5b610d69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6090612789565b60405180910390fd5b6001600060146101000a81548160ff021916908360ff1602179055508015610da7576001600060156101000a81548160ff0219169083151502179055505b610daf6116fc565b610db8826117ab565b8015610e115760008060156101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610e0891906127f1565b60405180910390a15b5050565b60001515610e21610a9a565b151514610e63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5a90612858565b60405180910390fd5b6000610e6e886118d8565b91505060028161ffff1610610eb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eaf90612910565b60405180910390fd5b60008161ffff1603610f81576000610f16878986868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508c611914565b90506000151560cb600083815260200190815260200160002060009054906101000a900460ff16151514610f7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f76906129a2565b60405180910390fd5b505b6000610fd5898989898989898080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611933565b9050610fdf611956565b1561102857853414610ff457610ff36129c2565b5b60ce600082815260200190815260200160002060009054906101000a900460ff1615611023576110226129c2565b5b6110cc565b6000341461106b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106290612a89565b60405180910390fd5b60ce600082815260200190815260200160002060009054906101000a900460ff166110cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c290612b1b565b60405180910390fd5b5b600015156110d9886119b6565b15151461111b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111290612bd3565b60405180910390fd5b6000151560cb600083815260200190815260200160002060009054906101000a900460ff16151514611182576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117990612c65565b60405180910390fd5b6111a585611388619c406111969190612683565b67ffffffffffffffff16611a38565b1580611201575061dead73ffffffffffffffffffffffffffffffffffffffff1660cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156112d557600160ce600083815260200190815260200160002060006101000a81548160ff021916908315150217905550807f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f60405160405180910390a2600173ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16036112ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c590612cf7565b60405180910390fd5b505061152a565b8760cc60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600061137f88619c4067ffffffffffffffff165a6113349190612d17565b8988888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611a5a565b905061dead60cc60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550801561145d576000151560cb600084815260200190815260200160002060009054906101000a900460ff161515146113ff576113fe6129c2565b5b600160cb600084815260200190815260200160002060006101000a81548160ff021916908315150217905550817f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c60405160405180910390a2611526565b600160ce600084815260200190815260200160002060006101000a81548160ff021916908315150217905550817f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f60405160405180910390a2600173ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1603611525576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151c90612cf7565b60405180910390fd5b5b5050505b50505050505050565b600061153d6107f7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611587573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ab9190612522565b905090565b60cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61010481565b602881565b600061161a60cd60009054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001611a73565b905090565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838686856040518563ffffffff1660e01b815260040161167193929190612dc0565b6000604051808303818588803b15801561168a57600080fd5b505af115801561169e573d6000803e3d6000fd5b505050505050505050565b600081549050919050565b600081549050919050565b6000818310156116cf57816116d1565b825b905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661171b6107f7565b73ffffffffffffffffffffffffffffffffffffffff161415801561177257503373ffffffffffffffffffffffffffffffffffffffff16611759611533565b73ffffffffffffffffffffffffffffffffffffffff1614155b156117a9576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060159054906101000a900460ff166117fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f190612e70565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036118945761dead60cc60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8060cf60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000806000807dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff851691508460f01c90508181935093505050915091565b600061192285858585611a88565b805190602001209050949350505050565b6000611943878787878787611b28565b8051906020012090509695505050505050565b600060cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661199a33611bce565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b60003073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480611a31575073420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b600080603f83619c4001026040850201603f5a02101590508091505092915050565b6000806000835160208501868989f19050949350505050565b600080838360f01b1790508091505092915050565b606084848484604051602401611aa19493929190612e90565b6040516020818303038152906040527fcbd4ece9000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050949350505050565b6060868686868686604051602401611b4596959493929190612edc565b6040516020818303038152906040527fd764ad0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090509695505050505050565b600073111100000000000000000000000000000000111182039050919050565b600067ffffffffffffffff82169050919050565b611c0b81611bee565b82525050565b6000602082019050611c266000830184611c02565b92915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c6b82611c40565b9050919050565b611c7b81611c60565b8114611c8657600080fd5b50565b600081359050611c9881611c72565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112611cc357611cc2611c9e565b5b8235905067ffffffffffffffff811115611ce057611cdf611ca3565b5b602083019150836001820283011115611cfc57611cfb611ca8565b5b9250929050565b600063ffffffff82169050919050565b611d1c81611d03565b8114611d2757600080fd5b50565b600081359050611d3981611d13565b92915050565b60008060008060608587031215611d5957611d58611c36565b5b6000611d6787828801611c89565b945050602085013567ffffffffffffffff811115611d8857611d87611c3b565b5b611d9487828801611cad565b93509350506040611da787828801611d2a565b91505092959194509250565b6000819050919050565b6000611dd8611dd3611dce84611c40565b611db3565b611c40565b9050919050565b6000611dea82611dbd565b9050919050565b6000611dfc82611ddf565b9050919050565b611e0c81611df1565b82525050565b6000602082019050611e276000830184611e03565b92915050565b600061ffff82169050919050565b611e4481611e2d565b82525050565b6000602082019050611e5f6000830184611e3b565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e9f578082015181840152602081019050611e84565b83811115611eae576000848401525b50505050565b6000601f19601f8301169050919050565b6000611ed082611e65565b611eda8185611e70565b9350611eea818560208601611e81565b611ef381611eb4565b840191505092915050565b60006020820190508181036000830152611f188184611ec5565b905092915050565b60008115159050919050565b611f3581611f20565b82525050565b6000602082019050611f506000830184611f2c565b92915050565b611f5f81611c60565b82525050565b6000602082019050611f7a6000830184611f56565b92915050565b6000611f8b82611ddf565b9050919050565b611f9b81611f80565b82525050565b6000602082019050611fb66000830184611f92565b92915050565b6000819050919050565b611fcf81611fbc565b8114611fda57600080fd5b50565b600081359050611fec81611fc6565b92915050565b60006020828403121561200857612007611c36565b5b600061201684828501611fdd565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61205c82611eb4565b810181811067ffffffffffffffff8211171561207b5761207a612024565b5b80604052505050565b600061208e611c2c565b905061209a8282612053565b919050565b600067ffffffffffffffff8211156120ba576120b9612024565b5b6120c382611eb4565b9050602081019050919050565b82818337600083830152505050565b60006120f26120ed8461209f565b612084565b90508281526020810184848401111561210e5761210d61201f565b5b6121198482856120d0565b509392505050565b600082601f83011261213657612135611c9e565b5b81356121468482602086016120df565b91505092915050565b6000806040838503121561216657612165611c36565b5b600083013567ffffffffffffffff81111561218457612183611c3b565b5b61219085828601612121565b92505060206121a185828601611d2a565b9150509250929050565b60006121b682611c60565b9050919050565b6121c6816121ab565b81146121d157600080fd5b50565b6000813590506121e3816121bd565b92915050565b6000602082840312156121ff576121fe611c36565b5b600061220d848285016121d4565b91505092915050565b6000819050919050565b61222981612216565b811461223457600080fd5b50565b60008135905061224681612220565b92915050565b600080600080600080600060c0888a03121561226b5761226a611c36565b5b60006122798a828b01612237565b975050602061228a8a828b01611c89565b965050604061229b8a828b01611c89565b95505060606122ac8a828b01612237565b94505060806122bd8a828b01612237565b93505060a088013567ffffffffffffffff8111156122de576122dd611c3b565b5b6122ea8a828b01611cad565b925092505092959891949750929550565b61230481612216565b82525050565b600060208201905061231f60008301846122fb565b92915050565b61232e81611d03565b82525050565b600082825260208201905092915050565b60006123518385612334565b935061235e8385846120d0565b61236783611eb4565b840190509392505050565b600060c082019050612387600083018a6122fb565b6123946020830189611f56565b6123a16040830188611f56565b6123ae60608301876122fb565b6123bb6080830186612325565b81810360a08301526123ce818486612345565b905098975050505050505050565b60006123f76123f26123ed84611d03565b611db3565b612216565b9050919050565b612407816123dc565b82525050565b60006080820190506124226000830188611f56565b8181036020830152612435818688612345565b905061244460408301856122fb565b61245160608301846123fe565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061249582612216565b91506124a083612216565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156124d9576124d861245b565b5b828202905092915050565b60006040820190506124f96000830185611f56565b61250660208301846122fb565b9392505050565b60008151905061251c81611c72565b92915050565b60006020828403121561253857612537611c36565b5b60006125468482850161250d565b91505092915050565b7f43726f7373446f6d61696e4d657373656e6765723a2078446f6d61696e4d657360008201527f7361676553656e646572206973206e6f74207365740000000000000000000000602082015250565b60006125ab603583611e70565b91506125b68261254f565b604082019050919050565b600060208201905081810360008301526125da8161259e565b9050919050565b60006125ec82611bee565b91506125f783611bee565b92508167ffffffffffffffff04831182151516156126185761261761245b565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061265d82611bee565b915061266883611bee565b92508261267857612677612623565b5b828204905092915050565b600061268e82611bee565b915061269983611bee565b92508267ffffffffffffffff038211156126b6576126b561245b565b5b828201905092915050565b60006126cc82612216565b91506126d783612216565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561270c5761270b61245b565b5b828201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000612773602e83611e70565b915061277e82612717565b604082019050919050565b600060208201905081810360008301526127a281612766565b9050919050565b6000819050919050565b600060ff82169050919050565b60006127db6127d66127d1846127a9565b611db3565b6127b3565b9050919050565b6127eb816127c0565b82525050565b600060208201905061280660008301846127e2565b92915050565b7f43726f7373446f6d61696e4d657373656e6765723a2070617573656400000000600082015250565b6000612842601c83611e70565b915061284d8261280c565b602082019050919050565b6000602082019050818103600083015261287181612835565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206f6e6c7920766572736960008201527f6f6e2030206f722031206d657373616765732061726520737570706f7274656460208201527f20617420746869732074696d6500000000000000000000000000000000000000604082015250565b60006128fa604d83611e70565b915061290582612878565b606082019050919050565b60006020820190508181036000830152612929816128ed565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206c65676163792077697460008201527f6864726177616c20616c72656164792072656c61796564000000000000000000602082015250565b600061298c603783611e70565b915061299782612930565b604082019050919050565b600060208201905081810360008301526129bb8161297f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f43726f7373446f6d61696e4d657373656e6765723a2076616c7565206d75737460008201527f206265207a65726f20756e6c657373206d6573736167652069732066726f6d2060208201527f612073797374656d206164647265737300000000000000000000000000000000604082015250565b6000612a73605083611e70565b9150612a7e826129f1565b606082019050919050565b60006020820190508181036000830152612aa281612a66565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520636160008201527f6e6e6f74206265207265706c6179656400000000000000000000000000000000602082015250565b6000612b05603083611e70565b9150612b1082612aa9565b604082019050919050565b60006020820190508181036000830152612b3481612af8565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a2063616e6e6f742073656e60008201527f64206d65737361676520746f20626c6f636b65642073797374656d206164647260208201527f6573730000000000000000000000000000000000000000000000000000000000604082015250565b6000612bbd604383611e70565b9150612bc882612b3b565b606082019050919050565b60006020820190508181036000830152612bec81612bb0565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520686160008201527f7320616c7265616479206265656e2072656c6179656400000000000000000000602082015250565b6000612c4f603683611e70565b9150612c5a82612bf3565b604082019050919050565b60006020820190508181036000830152612c7e81612c42565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206661696c656420746f2060008201527f72656c6179206d65737361676500000000000000000000000000000000000000602082015250565b6000612ce1602d83611e70565b9150612cec82612c85565b604082019050919050565b60006020820190508181036000830152612d1081612cd4565b9050919050565b6000612d2282612216565b9150612d2d83612216565b925082821015612d4057612d3f61245b565b5b828203905092915050565b6000612d66612d61612d5c84611bee565b611db3565b612216565b9050919050565b612d7681612d4b565b82525050565b600081519050919050565b6000612d9282612d7c565b612d9c8185612334565b9350612dac818560208601611e81565b612db581611eb4565b840191505092915050565b6000606082019050612dd56000830186611f56565b612de26020830185612d6d565b8181036040830152612df48184612d87565b9050949350505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b6000612e5a602b83611e70565b9150612e6582612dfe565b604082019050919050565b60006020820190508181036000830152612e8981612e4d565b9050919050565b6000608082019050612ea56000830187611f56565b612eb26020830186611f56565b8181036040830152612ec48185612d87565b9050612ed360608301846122fb565b95945050505050565b600060c082019050612ef160008301896122fb565b612efe6020830188611f56565b612f0b6040830187611f56565b612f1860608301866122fb565b612f2560808301856122fb565b81810360a0830152612f378184612d87565b905097965050505050505056fea164736f6c634300080f000a000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 2600000, "intent": "Deploy L2CrossDomainMessenger Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001ec8608060405234801561001057600080fd5b50611ea8806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c806368d5dca6116100e3578063c59859181161008c578063f45e65d811610066578063f45e65d8146102fc578063f820614014610304578063fe173b971461029357600080fd5b8063c5985918146102ce578063de26c4a1146102d6578063f1c7a58b146102e957600080fd5b8063960e3a23116100bd578063960e3a23146102a1578063b3d72079146102b3578063b54501bc146102bb57600080fd5b806368d5dca6146102765780636ef25c3a146102935780638e98b1061461029957600080fd5b80632e0f2625116101455780634ef6e2241161011f5780634ef6e22414610218578063519b4bd31461022557806354fd4d501461022d57600080fd5b80632e0f2625146101f6578063313ce567146101fe57806349948e0e1461020557600080fd5b806322b90ab31161017657806322b90ab3146101d1578063275aedd2146101db578063291b0383146101ee57600080fd5b80630c18c16214610192578063105d0b81146101ad575b600080fd5b61019a61030c565b6040519081526020015b60405180910390f35b6000546101c1906301000000900460ff1681565b60405190151581526020016101a4565b6101d961042d565b005b61019a6101e93660046118fa565b6105b6565b6101d9610776565b61019a600681565b600661019a565b61019a610213366004611942565b61099e565b6000546101c19060ff1681565b61019a6109db565b6102696040518060400160405280600581526020017f312e362e3000000000000000000000000000000000000000000000000000000081525081565b6040516101a49190611a11565b61027e610a3c565b60405163ffffffff90911681526020016101a4565b4861019a565b6101d9610ac1565b6000546101c190610100900460ff1681565b6101d9610cbb565b6000546101c19062010000900460ff1681565b61027e610ec2565b61019a6102e4366004611942565b610f23565b61019a6102f73660046118fa565b61101d565b61019a6110f1565b61019a6111e4565b6000805460ff16156103a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f47617350726963654f7261636c653a206f76657268656164282920697320646560448201527f707265636174656400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104289190611a84565b905090565b3373deaddeaddeaddeaddeaddeaddeaddeaddead0001146104f6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e2073657420697345636f746f6e6520666c6160648201527f6700000000000000000000000000000000000000000000000000000000000000608482015260a40161039c565b60005460ff1615610589576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f47617350726963654f7261636c653a2045636f746f6e6520616c72656164792060448201527f6163746976650000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b6000805462010000900460ff166105cf57506000919050565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16634d5d9a2a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610630573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106549190611a9d565b63ffffffff169050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166316d3bc7f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e19190611ac3565b67ffffffffffffffff169050600060039054906101000a900460ff161561072a578061070d8386611b1c565b610718906064611b1c565b6107229190611b59565b949350505050565b610722620f424083860286810485148715177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01176107699190611b71565b8281019081106000031790565b3373deaddeaddeaddeaddeaddeaddeaddeaddead00011461083f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e20736574206973497374686d757320666c6160648201527f6700000000000000000000000000000000000000000000000000000000000000608482015260a40161039c565b600054610100900460ff166108d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f47617350726963654f7261636c653a20497374686d75732063616e206f6e6c7960448201527f2062652061637469766174656420616674657220466a6f726400000000000000606482015260840161039c565b60005462010000900460ff161561096f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f47617350726963654f7261636c653a20497374686d757320616c72656164792060448201527f6163746976650000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff1662010000179055565b60008054610100900460ff16156109be576109b882611245565b92915050565b60005460ff16156109d2576109b882611264565b6109b882611308565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16635cf249696040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166368d5dca66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a9d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104289190611a9d565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610b64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e20736574206973466a6f726420666c616700606482015260840161039c565b60005460ff16610bf6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f47617350726963654f7261636c653a20466a6f72642063616e206f6e6c79206260448201527f65206163746976617465642061667465722045636f746f6e6500000000000000606482015260840161039c565b600054610100900460ff1615610c8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f47617350726963654f7261636c653a20466a6f726420616c726561647920616360448201527f7469766500000000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610d6057604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e207365742069734a6f7669616e20666c6167606482015260840161039c565b60005462010000900460ff16610df8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f47617350726963654f7261636c653a204a6f7669616e2063616e206f6e6c792060448201527f62652061637469766174656420616674657220497374686d7573000000000000606482015260840161039c565b6000546301000000900460ff1615610e92576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f47617350726963654f7261636c653a204a6f7669616e20616c7265616479206160448201527f6374697665000000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff166301000000179055565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663c59859186040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a9d573d6000803e3d6000fd5b60008054610100900460ff1615610f6a57620f4240610f55610f448461145c565b51610f50906044611b59565b611779565b610f60906010611b1c565b6109b89190611b71565b6000610f75836117d8565b60005490915060ff1615610f895792915050565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fe8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100c9190611a84565b6110169082611b59565b9392505050565b60008054610100900460ff166110b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f47617350726963654f7261636c653a206765744c314665655570706572426f7560448201527f6e64206f6e6c7920737570706f72747320466a6f726400000000000000000000606482015260840161039c565b60006110c2836044611b59565b905060006110d160ff83611b71565b6110db9083611b59565b6110e6906010611b59565b905061072281611868565b6000805460ff1615611185576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f47617350726963654f7261636c653a207363616c61722829206973206465707260448201527f6563617465640000000000000000000000000000000000000000000000000000606482015260840161039c565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663f82061406040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b60006109b86112538361145c565b5161125f906044611b59565b611868565b600080611270836117d8565b9050600061127c6109db565b611284610ec2565b61128f906010611bac565b63ffffffff1661129f9190611b1c565b905060006112ab6111e4565b6112b3610a3c565b63ffffffff166112c39190611b1c565b905060006112d18284611b59565b6112db9085611b1c565b90506112e96006600a611cf8565b6112f4906010611b1c565b6112fe9082611b71565b9695505050505050565b600080611314836117d8565b9050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b9190611a84565b6113a36109db565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015611402573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114269190611a84565b6114309085611b59565b61143a9190611b1c565b6114449190611b1c565b90506114526006600a611cf8565b6107229082611b71565b60606115eb565b818153600101919050565b600082840393505b838110156110165782810151828201511860001a1590930292600101611476565b825b602082106114e35782516114ae601f83611463565b52602092909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe090910190602101611499565b81156110165782516114f86001840383611463565b520160010192915050565b60006001830392505b6101078210611544576115368360ff1661153160fd6115318760081c60e00189611463565b611463565b93506101068203915061150c565b600782106115715761156a8360ff16611531600785036115318760081c60e00189611463565b9050611016565b6107228360ff166115318560081c8560051b0187611463565b6115e38282036115c76115b784600081518060001a8160011a60081b178160021a60101b17915050919050565b639e3779b90260131c611fff1690565b8060021b6040510182815160e01c1860e01b8151188152505050565b600101919050565b6180003860405139618000604051016020830180600d8551820103826002015b8181101561171e576000805b50508051604051600082901a600183901a60081b1760029290921a60101b91909117639e3779b9810260111c617ffc16909101805160e081811c878603811890911b9091189091528401908183039084841061167357506116ae565b600184019350611fff82116116a8578251600081901a600182901a60081b1760029190911a60101b1781036116a857506116ae565b50611617565b8383106116bc57505061171e565b600183039250858311156116da576116d78787888603611497565b96505b6116ee60098501600385016003850161146e565b91506116fb878284611503565b9650506117138461170e8684860161158a565b61158a565b91505080935061160b565b50506117308383848851850103611497565b925050506040519150618000820180820391508183526020830160005b8381101561176557828101518282015260200161174d565b506000920191825250602001604052919050565b60008061178983620cc394611b1c565b6117b3907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd763200611d04565b90506117c36064620f4240611d78565b8112156109b8576110166064620f4240611d78565b80516000908190815b8181101561185b578481815181106117fb576117fb611e34565b01602001517fff000000000000000000000000000000000000000000000000000000000000001660000361183b57611834600484611b59565b9250611849565b611846601084611b59565b92505b8061185381611e63565b9150506117e1565b5061072282610440611b59565b60008061187483611779565b905060006118806111e4565b611888610a3c565b63ffffffff166118989190611b1c565b6118a06109db565b6118a8610ec2565b6118b3906010611bac565b63ffffffff166118c39190611b1c565b6118cd9190611b59565b90506118db60066002611b1c565b6118e690600a611cf8565b6118f08284611b1c565b6107229190611b71565b60006020828403121561190c57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561195457600080fd5b813567ffffffffffffffff8082111561196c57600080fd5b818401915084601f83011261198057600080fd5b81358181111561199257611992611913565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156119d8576119d8611913565b816040528281528760208487010111156119f157600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208083528351808285015260005b81811015611a3e57858101830151858201604001528201611a22565b81811115611a50576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b600060208284031215611a9657600080fd5b5051919050565b600060208284031215611aaf57600080fd5b815163ffffffff8116811461101657600080fd5b600060208284031215611ad557600080fd5b815167ffffffffffffffff8116811461101657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611b5457611b54611aed565b500290565b60008219821115611b6c57611b6c611aed565b500190565b600082611ba7577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600063ffffffff80831681851681830481118215151615611bcf57611bcf611aed565b02949350505050565b600181815b80851115611c3157817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611c1757611c17611aed565b80851615611c2457918102915b93841c9390800290611bdd565b509250929050565b600082611c48575060016109b8565b81611c55575060006109b8565b8160018114611c6b5760028114611c7557611c91565b60019150506109b8565b60ff841115611c8657611c86611aed565b50506001821b6109b8565b5060208310610133831016604e8410600b8410161715611cb4575081810a6109b8565b611cbe8383611bd8565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611cf057611cf0611aed565b029392505050565b60006110168383611c39565b6000808212827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03841381151615611d3e57611d3e611aed565b827f8000000000000000000000000000000000000000000000000000000000000000038412811615611d7257611d72611aed565b50500190565b60007f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600084136000841385830485118282161615611db957611db9611aed565b7f80000000000000000000000000000000000000000000000000000000000000006000871286820588128184161615611df457611df4611aed565b60008712925087820587128484161615611e1057611e10611aed565b87850587128184161615611e2657611e26611aed565b505050929093029392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611e9457611e94611aed565b506001019056fea164736f6c634300080f000a000000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000002a1f608060405234801561001057600080fd5b506129ff806100206000396000f3fe608060405234801561001057600080fd5b506004361061011d5760003560e01c80630c18c16214610122578063105d0b811461014057806322b90ab31461015e578063275aedd214610168578063291b0383146101985780632e0f2625146101a2578063313ce567146101c057806349948e0e146101de5780634ef6e2241461020e578063519b4bd31461022c57806354fd4d501461024a57806368d5dca6146102685780636ef25c3a146102865780638e98b106146102a4578063960e3a23146102ae578063b3d72079146102cc578063b54501bc146102d6578063c5985918146102f4578063de26c4a114610312578063f1c7a58b14610342578063f45e65d814610372578063f820614014610390578063fe173b97146103ae575b600080fd5b61012a6103cc565b604051610137919061184a565b60405180910390f35b6101486104a5565b6040516101559190611880565b60405180910390f35b6101666104b8565b005b610182600480360381019061017d91906118db565b6105aa565b60405161018f919061184a565b60405180910390f35b6101a0610752565b005b6101aa610896565b6040516101b7919061184a565b60405180910390f35b6101c861089b565b6040516101d5919061184a565b60405180910390f35b6101f860048036038101906101f39190611a4e565b6108a4565b604051610205919061184a565b60405180910390f35b6102166108fe565b6040516102239190611880565b60405180910390f35b61023461090f565b604051610241919061184a565b60405180910390f35b610252610999565b60405161025f9190611b1f565b60405180910390f35b6102706109d2565b60405161027d9190611b60565b60405180910390f35b61028e610a5c565b60405161029b919061184a565b60405180910390f35b6102ac610a64565b005b6102b6610ba6565b6040516102c39190611880565b60405180910390f35b6102d4610bb9565b005b6102de610cfd565b6040516102eb9190611880565b60405180910390f35b6102fc610d10565b6040516103099190611b60565b60405180910390f35b61032c60048036038101906103279190611a4e565b610d9a565b604051610339919061184a565b60405180910390f35b61035c600480360381019061035791906118db565b610eaf565b604051610369919061184a565b60405180910390f35b61037a610f4a565b604051610387919061184a565b60405180910390f35b610398611023565b6040516103a5919061184a565b60405180910390f35b6103b66110ad565b6040516103c3919061184a565b60405180910390f35b60008060009054906101000a900460ff161561041d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161041490611bed565b60405180910390fd5b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa15801561047c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104a09190611c22565b905090565b600060039054906101000a900460ff1681565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461053a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161053190611ce7565b60405180910390fd5b6000151560008054906101000a900460ff1615151461058e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058590611d79565b60405180910390fd5b60016000806101000a81548160ff021916908315150217905550565b60008060029054906101000a900460ff166105c8576000905061074d565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16634d5d9a2a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610629573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061064d9190611dc5565b63ffffffff169050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166316d3bc7f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106da9190611e32565b67ffffffffffffffff169050600060039054906101000a900460ff161561072757806064838661070a9190611e8e565b6107149190611e8e565b61071e9190611ee8565b9250505061074d565b610748620f424061073886856110b5565b6107429190611f6d565b826110d0565b925050505b919050565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107cb90612036565b60405180910390fd5b600060019054906101000a900460ff16610823576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081a906120c8565b60405180910390fd5b60001515600060029054906101000a900460ff16151514610879576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108709061215a565b60405180910390fd5b6001600060026101000a81548160ff021916908315150217905550565b600681565b60006006905090565b60008060019054906101000a900460ff16156108ca576108c3826110e6565b90506108f9565b60008054906101000a900460ff16156108ed576108e68261110d565b90506108f9565b6108f6826111ba565b90505b919050565b60008054906101000a900460ff1681565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16635cf249696040518163ffffffff1660e01b8152600401602060405180830381865afa158015610970573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109949190611c22565b905090565b6040518060400160405280600581526020017f312e362e3000000000000000000000000000000000000000000000000000000081525081565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166368d5dca66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a579190611dc5565b905090565b600048905090565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ae6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610add906121ec565b60405180910390fd5b60008054906101000a900460ff16610b33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2a9061227e565b60405180910390fd5b60001515600060019054906101000a900460ff16151514610b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8090612310565b60405180910390fd5b6001600060016101000a81548160ff021916908315150217905550565b600060019054906101000a900460ff1681565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c32906123a2565b60405180910390fd5b600060029054906101000a900460ff16610c8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8190612434565b60405180910390fd5b60001515600060039054906101000a900460ff16151514610ce0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd7906124c6565b60405180910390fd5b6001600060036101000a81548160ff021916908315150217905550565b600060029054906101000a900460ff1681565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663c59859186040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d959190611dc5565b905090565b60008060019054906101000a900460ff1615610def57620f42406010610dd46044610dc48661131b565b51610dcf9190611ee8565b611664565b610dde9190611e8e565b610de89190611f6d565b9050610eaa565b6000610dfa836116df565b905060008054906101000a900460ff1615610e185780915050610eaa565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9b9190611c22565b81610ea69190611ee8565b9150505b919050565b60008060019054906101000a900460ff16610eff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef690612558565b60405180910390fd5b6000604483610f0e9190611ee8565b90506000601060ff83610f219190611f6d565b83610f2c9190611ee8565b610f369190611ee8565b9050610f4181611790565b92505050919050565b60008060009054906101000a900460ff1615610f9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f92906125ea565b60405180910390fd5b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ffa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101e9190611c22565b905090565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663f82061406040518163ffffffff1660e01b8152600401602060405180830381865afa158015611084573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a89190611c22565b905090565b600048905090565b60008183026001838585870204148515170317905092915050565b6000818301838385011060000317905092915050565b600061110660446110f68461131b565b516111019190611ee8565b611790565b9050919050565b600080611119836116df565b9050600061112561090f565b601061112f610d10565b611139919061260a565b63ffffffff166111499190611e8e565b90506000611155611023565b61115d6109d2565b63ffffffff1661116d9190611e8e565b90506000818361117d9190611ee8565b846111889190611e8e565b90506006600a611198919061277b565b60106111a49190611e8e565b816111af9190611f6d565b945050505050919050565b6000806111c6836116df565b9050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015611229573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124d9190611c22565b61125561090f565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d89190611c22565b846112e39190611ee8565b6112ed9190611e8e565b6112f79190611e8e565b90506006600a611307919061277b565b816113129190611f6d565b92505050919050565b60606114f6565b600082825360018201905092915050565b600081518060001a8160011a60081b178160021a60101b17915050919050565b600082840393505b8381101561137f578381840151828401511860001a1502935060018101905061135b565b9392505050565b60008390505b602082106113b95782516113a1601f83611322565b5260218101905060208301925060208203915061138c565b81156113d85782516113ce6001840383611322565b5281810160010190505b9392505050565b60006001830392505b6101078210611425576114178360ff1661141260fd61140d8760081c60e00189611322565b611322565b611322565b9350610106820391506113e8565b6007821061145c576114558360ff166114506007850361144b8760081c60e00189611322565b611322565b611322565b905061147d565b61147a8360ff166114758560081c8560051b0187611322565b611322565b90505b9392505050565b8060021b6040510182815160e01c1860e01b8151188152505050565b60008160021b604051015160e01c9050919050565b6000611fff82639e3779b90260131c169050919050565b60006114ea8383036114e56114e085611333565b6114b5565b611484565b60018201905092915050565b6180003860405139618000604051016020830180600d8551820103826002015b81811015611603576000805b6001156115945761153283611333565b61153b816114b5565b611544816114a0565b8701935061155487860382611484565b8385039250858510611567575050611594565b600185019450611fff831161158d5761157f84611333565b820361158c575050611594565b5b5050611522565b8383106115a2575050611603565b600183039250858311156115c0576115bd8787888603611386565b96505b6115d4600985016003850160038501611353565b6115df8883836113df565b97506115f6866115f1888488016114cc565b6114cc565b9350839650505050611516565b506116148484858951860103611386565b9350604051945061800085018085038087526020870160005b8281101561164857808401518183015260208101905061162d565b5060008282015260208282010160405250505050505050919050565b60008082620cc39463ffffffff1661167c9190611e8e565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd76320060030b6116aa91906127d0565b9050620f424060646116bc9190612864565b8112156116d657620f424060646116d39190612864565b90505b80915050919050565b6000806000905060008351905060005b8181101561177857600060f81b85828151811061170f5761170e61297b565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036117555760048361174e9190611ee8565b9250611765565b6010836117629190611ee8565b92505b8080611770906129aa565b9150506116ef565b50610440826117879190611ee8565b92505050919050565b60008061179c83611664565b905060006117a8611023565b6117b06109d2565b63ffffffff166117c09190611e8e565b6117c861090f565b60106117d2610d10565b6117dc919061260a565b63ffffffff166117ec9190611e8e565b6117f69190611ee8565b9050600260066118069190611e8e565b600a611812919061277b565b818361181e9190611e8e565b6118289190611f6d565b92505050919050565b6000819050919050565b61184481611831565b82525050565b600060208201905061185f600083018461183b565b92915050565b60008115159050919050565b61187a81611865565b82525050565b60006020820190506118956000830184611871565b92915050565b6000604051905090565b600080fd5b600080fd5b6118b881611831565b81146118c357600080fd5b50565b6000813590506118d5816118af565b92915050565b6000602082840312156118f1576118f06118a5565b5b60006118ff848285016118c6565b91505092915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61195b82611912565b810181811067ffffffffffffffff8211171561197a57611979611923565b5b80604052505050565b600061198d61189b565b90506119998282611952565b919050565b600067ffffffffffffffff8211156119b9576119b8611923565b5b6119c282611912565b9050602081019050919050565b82818337600083830152505050565b60006119f16119ec8461199e565b611983565b905082815260208101848484011115611a0d57611a0c61190d565b5b611a188482856119cf565b509392505050565b600082601f830112611a3557611a34611908565b5b8135611a458482602086016119de565b91505092915050565b600060208284031215611a6457611a636118a5565b5b600082013567ffffffffffffffff811115611a8257611a816118aa565b5b611a8e84828501611a20565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611ad1578082015181840152602081019050611ab6565b83811115611ae0576000848401525b50505050565b6000611af182611a97565b611afb8185611aa2565b9350611b0b818560208601611ab3565b611b1481611912565b840191505092915050565b60006020820190508181036000830152611b398184611ae6565b905092915050565b600063ffffffff82169050919050565b611b5a81611b41565b82525050565b6000602082019050611b756000830184611b51565b92915050565b7f47617350726963654f7261636c653a206f76657268656164282920697320646560008201527f7072656361746564000000000000000000000000000000000000000000000000602082015250565b6000611bd7602883611aa2565b9150611be282611b7b565b604082019050919050565b60006020820190508181036000830152611c0681611bca565b9050919050565b600081519050611c1c816118af565b92915050565b600060208284031215611c3857611c376118a5565b5b6000611c4684828501611c0d565b91505092915050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e2073657420697345636f746f6e6520666c6160208201527f6700000000000000000000000000000000000000000000000000000000000000604082015250565b6000611cd1604183611aa2565b9150611cdc82611c4f565b606082019050919050565b60006020820190508181036000830152611d0081611cc4565b9050919050565b7f47617350726963654f7261636c653a2045636f746f6e6520616c72656164792060008201527f6163746976650000000000000000000000000000000000000000000000000000602082015250565b6000611d63602683611aa2565b9150611d6e82611d07565b604082019050919050565b60006020820190508181036000830152611d9281611d56565b9050919050565b611da281611b41565b8114611dad57600080fd5b50565b600081519050611dbf81611d99565b92915050565b600060208284031215611ddb57611dda6118a5565b5b6000611de984828501611db0565b91505092915050565b600067ffffffffffffffff82169050919050565b611e0f81611df2565b8114611e1a57600080fd5b50565b600081519050611e2c81611e06565b92915050565b600060208284031215611e4857611e476118a5565b5b6000611e5684828501611e1d565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611e9982611831565b9150611ea483611831565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611edd57611edc611e5f565b5b828202905092915050565b6000611ef382611831565b9150611efe83611831565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611f3357611f32611e5f565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611f7882611831565b9150611f8383611831565b925082611f9357611f92611f3e565b5b828204905092915050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e20736574206973497374686d757320666c6160208201527f6700000000000000000000000000000000000000000000000000000000000000604082015250565b6000612020604183611aa2565b915061202b82611f9e565b606082019050919050565b6000602082019050818103600083015261204f81612013565b9050919050565b7f47617350726963654f7261636c653a20497374686d75732063616e206f6e6c7960008201527f2062652061637469766174656420616674657220466a6f726400000000000000602082015250565b60006120b2603983611aa2565b91506120bd82612056565b604082019050919050565b600060208201905081810360008301526120e1816120a5565b9050919050565b7f47617350726963654f7261636c653a20497374686d757320616c72656164792060008201527f6163746976650000000000000000000000000000000000000000000000000000602082015250565b6000612144602683611aa2565b915061214f826120e8565b604082019050919050565b6000602082019050818103600083015261217381612137565b9050919050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e20736574206973466a6f726420666c616700602082015250565b60006121d6603f83611aa2565b91506121e18261217a565b604082019050919050565b60006020820190508181036000830152612205816121c9565b9050919050565b7f47617350726963654f7261636c653a20466a6f72642063616e206f6e6c79206260008201527f65206163746976617465642061667465722045636f746f6e6500000000000000602082015250565b6000612268603983611aa2565b91506122738261220c565b604082019050919050565b600060208201905081810360008301526122978161225b565b9050919050565b7f47617350726963654f7261636c653a20466a6f726420616c726561647920616360008201527f7469766500000000000000000000000000000000000000000000000000000000602082015250565b60006122fa602483611aa2565b91506123058261229e565b604082019050919050565b60006020820190508181036000830152612329816122ed565b9050919050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e207365742069734a6f7669616e20666c6167602082015250565b600061238c604083611aa2565b915061239782612330565b604082019050919050565b600060208201905081810360008301526123bb8161237f565b9050919050565b7f47617350726963654f7261636c653a204a6f7669616e2063616e206f6e6c792060008201527f62652061637469766174656420616674657220497374686d7573000000000000602082015250565b600061241e603a83611aa2565b9150612429826123c2565b604082019050919050565b6000602082019050818103600083015261244d81612411565b9050919050565b7f47617350726963654f7261636c653a204a6f7669616e20616c7265616479206160008201527f6374697665000000000000000000000000000000000000000000000000000000602082015250565b60006124b0602583611aa2565b91506124bb82612454565b604082019050919050565b600060208201905081810360008301526124df816124a3565b9050919050565b7f47617350726963654f7261636c653a206765744c314665655570706572426f7560008201527f6e64206f6e6c7920737570706f72747320466a6f726400000000000000000000602082015250565b6000612542603683611aa2565b915061254d826124e6565b604082019050919050565b6000602082019050818103600083015261257181612535565b9050919050565b7f47617350726963654f7261636c653a207363616c61722829206973206465707260008201527f6563617465640000000000000000000000000000000000000000000000000000602082015250565b60006125d4602683611aa2565b91506125df82612578565b604082019050919050565b60006020820190508181036000830152612603816125c7565b9050919050565b600061261582611b41565b915061262083611b41565b92508163ffffffff048311821515161561263d5761263c611e5f565b5b828202905092915050565b60008160011c9050919050565b6000808291508390505b600185111561269f5780860481111561267b5761267a611e5f565b5b600185161561268a5780820291505b808102905061269885612648565b945061265f565b94509492505050565b6000826126b85760019050612774565b816126c65760009050612774565b81600181146126dc57600281146126e657612715565b6001915050612774565b60ff8411156126f8576126f7611e5f565b5b8360020a91508482111561270f5761270e611e5f565b5b50612774565b5060208310610133831016604e8410600b841016171561274a5782820a90508381111561274557612744611e5f565b5b612774565b6127578484846001612655565b9250905081840481111561276e5761276d611e5f565b5b81810290505b9392505050565b600061278682611831565b915061279183611831565b92506127be7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846126a8565b905092915050565b6000819050919050565b60006127db826127c6565b91506127e6836127c6565b9250817f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0383136000831215161561282157612820611e5f565b5b817f800000000000000000000000000000000000000000000000000000000000000003831260008312161561285957612858611e5f565b5b828201905092915050565b600061286f826127c6565b915061287a836127c6565b9250827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821160008413600084131616156128b9576128b8611e5f565b5b817f800000000000000000000000000000000000000000000000000000000000000005831260008412600084131616156128f6576128f5611e5f565b5b827f8000000000000000000000000000000000000000000000000000000000000000058212600084136000841216161561293357612932611e5f565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff05821260008412600084121616156129705761296f611e5f565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006129b582611831565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036129e7576129e6611e5f565b5b60018201905091905056fea164736f6c634300080f000a00", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 2600000, "intent": "Deploy GasPriceOracle Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000002f3d60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612e4980620000f46000396000f3fe6080604052600436106101485760003560e01c80635c975abb116100c0578063a3a7954811610074578063c89701a211610059578063c89701a214610459578063dad544e014610486578063e11013dd1461049b57600080fd5b8063a3a7954814610426578063c4d66de81461043957600080fd5b806387087623116100a557806387087623146103955780638f601f66146103b5578063927ede2d146103fb57600080fd5b80635c975abb146103795780637f46ddb21461027a57600080fd5b806336c717c1116101175780633e47158c116100fc5780633e47158c146102f8578063540abf731461030d57806354fd4d501461032d57600080fd5b806336c717c11461027a5780633cb747bf146102cb57600080fd5b80630166a07a1461022157806309fc8843146102415780631635f5fd1461025457806332b7006d1461026757600080fd5b3661021c576101556104ae565b6101e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084015b60405180910390fd5b61021a73deaddeaddeaddeaddeaddeaddeaddeaddead000033333462030d40604051806020016040528060008152506104eb565b005b600080fd5b34801561022d57600080fd5b5061021a61023c3660046127ff565b6105c6565b61021a61024f3660046128b0565b610968565b61021a610262366004612903565b610a44565b61021a610275366004612976565b610e96565b34801561028657600080fd5b5060045473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156102d757600080fd5b506003546102a19073ffffffffffffffffffffffffffffffffffffffff1681565b34801561030457600080fd5b506102a1610f75565b34801561031957600080fd5b5061021a6103283660046129ca565b611180565b34801561033957600080fd5b50604080518082018252600681527f312e31332e310000000000000000000000000000000000000000000000000000602082015290516102c29190612ab7565b34801561038557600080fd5b50604051600081526020016102c2565b3480156103a157600080fd5b5061021a6103b0366004612aca565b6111c5565b3480156103c157600080fd5b506103ed6103d0366004612b4d565b600260209081526000928352604080842090915290825290205481565b6040519081526020016102c2565b34801561040757600080fd5b5060035473ffffffffffffffffffffffffffffffffffffffff166102a1565b61021a610434366004612aca565b61129e565b34801561044557600080fd5b5061021a610454366004612b86565b6112e2565b34801561046557600080fd5b506004546102a19073ffffffffffffffffffffffffffffffffffffffff1681565b34801561049257600080fd5b506102a1611493565b61021a6104a9366004612ba3565b611510565b60003233036104bd5750600190565b333b6017036104e557604051602081016040526020600082333c5160e81c62ef010014905090565b50600090565b7fffffffffffffffffffffffff215221522152215221522152215221522153000073ffffffffffffffffffffffffffffffffffffffff87160161053a576105358585858585611559565b6105be565b60008673ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610587573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ab9190612c06565b90506105bc87828888888888611723565b505b505050505050565b60035473ffffffffffffffffffffffffffffffffffffffff1633148015610699575060048054600354604080517f6e296e45000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff938416949390921692636e296e459282820192602092908290030181865afa15801561065d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106819190612c06565b73ffffffffffffffffffffffffffffffffffffffff16145b61074b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20746865206f7468657220627269646760648201527f6500000000000000000000000000000000000000000000000000000000000000608482015260a4016101dd565b61075487611adc565b156108a2576107638787611b3e565b610815576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b60448201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c60648201527f6f63616c20746f6b656e00000000000000000000000000000000000000000000608482015260a4016101dd565b6040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590528816906340c10f1990604401600060405180830381600087803b15801561088557600080fd5b505af1158015610899573d6000803e3d6000fd5b50505050610924565b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600260209081526040808320938a16835292905220546108e0908490612c52565b73ffffffffffffffffffffffffffffffffffffffff8089166000818152600260209081526040808320948c1683529390529190912091909155610924908585611c5e565b6105bc878787878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d3292505050565b6109706104ae565b6109fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084016101dd565b610a3f3333348686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061155992505050565b505050565b60035473ffffffffffffffffffffffffffffffffffffffff1633148015610b17575060048054600354604080517f6e296e45000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff938416949390921692636e296e459282820192602092908290030181865afa158015610adb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aff9190612c06565b73ffffffffffffffffffffffffffffffffffffffff16145b610bc9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20746865206f7468657220627269646760648201527f6500000000000000000000000000000000000000000000000000000000000000608482015260a4016101dd565b823414610c58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5374616e646172644272696467653a20616d6f756e742073656e7420646f657360448201527f206e6f74206d6174636820616d6f756e7420726571756972656400000000000060648201526084016101dd565b3073ffffffffffffffffffffffffffffffffffffffff851603610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f5374616e646172644272696467653a2063616e6e6f742073656e6420746f207360448201527f656c66000000000000000000000000000000000000000000000000000000000060648201526084016101dd565b60035473ffffffffffffffffffffffffffffffffffffffff90811690851603610da8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f5374616e646172644272696467653a2063616e6e6f742073656e6420746f206d60448201527f657373656e67657200000000000000000000000000000000000000000000000060648201526084016101dd565b610dea85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dc092505050565b6000610e07855a8660405180602001604052806000815250611e61565b9050806105be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f5374616e646172644272696467653a20455448207472616e736665722066616960448201527f6c6564000000000000000000000000000000000000000000000000000000000060648201526084016101dd565b610e9e6104ae565b610f2a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084016101dd565b610f6e853333878787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104eb92505050565b5050505050565b600080610fa07fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff811615610fc357919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026110069190612c69565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000009190911790611061906060015b604051602081830303815290604052805190602001205490565b14611098576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091526000906110ba90606001611047565b905073ffffffffffffffffffffffffffffffffffffffff81161561114e578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611123573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111479190612c06565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6105bc87873388888888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061172392505050565b6111cd6104ae565b611259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084016101dd565b6105be86863333888888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061172392505050565b6105be863387878787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104eb92505050565b600054610100900460ff16158080156113025750600054600160ff909116105b8061131c5750303b15801561131c575060005460ff166001145b6113a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016101dd565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561140657600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61140e611e79565b61142c73420000000000000000000000000000000000000783611efc565b801561148f57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b600061149d610f75565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061150b9190612c06565b905090565b6115533385348686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061155992505050565b50505050565b8234146115e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f5374616e646172644272696467653a206272696467696e6720455448206d757360448201527f7420696e636c7564652073756666696369656e74204554482076616c7565000060648201526084016101dd565b6115f485858584611fe6565b60035460045460405173ffffffffffffffffffffffffffffffffffffffff92831692633dbb202b9287929116907f1635f5fd0000000000000000000000000000000000000000000000000000000090611657908b908b9086908a90602401612ca6565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009485161790525160e086901b90921682526116ea92918890600401612cef565b6000604051808303818588803b15801561170357600080fd5b505af1158015611717573d6000803e3d6000fd5b50505050505050505050565b34156117b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f5374616e646172644272696467653a2063616e6e6f742073656e642076616c7560448201527f650000000000000000000000000000000000000000000000000000000000000060648201526084016101dd565b6117ba87611adc565b15611908576117c98787611b3e565b61187b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b60448201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c60648201527f6f63616c20746f6b656e00000000000000000000000000000000000000000000608482015260a4016101dd565b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff868116600483015260248201859052881690639dc29fac90604401600060405180830381600087803b1580156118eb57600080fd5b505af11580156118ff573d6000803e3d6000fd5b5050505061199c565b61192a73ffffffffffffffffffffffffffffffffffffffff8816863086612087565b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600260209081526040808320938a1683529290522054611968908490612d34565b73ffffffffffffffffffffffffffffffffffffffff8089166000908152600260209081526040808320938b16835292905220555b6119aa8787878787866120e5565b60035460045460405173ffffffffffffffffffffffffffffffffffffffff92831692633dbb202b9216907f0166a07a0000000000000000000000000000000000000000000000000000000090611a0e908b908d908c908c908c908b90602401612d4c565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009485161790525160e085901b9092168252611aa192918790600401612cef565b600060405180830381600087803b158015611abb57600080fd5b505af1158015611acf573d6000803e3d6000fd5b5050505050505050505050565b6000611b08827f1d1d8b6300000000000000000000000000000000000000000000000000000000612173565b80611b385750611b38827fec4fc8e300000000000000000000000000000000000000000000000000000000612173565b92915050565b6000611b6a837f1d1d8b6300000000000000000000000000000000000000000000000000000000612173565b15611c13578273ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bde9190612c06565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050611b38565b8273ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bba573d6000803e3d6000fd5b60405173ffffffffffffffffffffffffffffffffffffffff8316602482015260448101829052610a3f9084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152612196565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611daa93929190612da7565b60405180910390a46105be8686868686866122a2565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611e4d93929190612da7565b60405180910390a46115538484848461232a565b6000806000835160208501868989f195945050505050565b33611e82610f75565b73ffffffffffffffffffffffffffffffffffffffff1614158015611ec3575033611eaa611493565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611efa576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600054610100900460ff16611f93576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016101dd565b6003805473ffffffffffffffffffffffffffffffffffffffff9384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560048054929093169116179055565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161207393929190612da7565b60405180910390a461155384848484612397565b60405173ffffffffffffffffffffffffffffffffffffffff808516602483015283166044820152606481018290526115539085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401611cb0565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161215d93929190612da7565b60405180910390a46105be8686868686866123f6565b600061217e8361246e565b801561218f575061218f83836124d2565b9392505050565b60006121f8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166125a19092919063ffffffff16565b805190915015610a3f57808060200190518101906122169190612de5565b610a3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016101dd565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fd59c65b35445225835c83f50b6ede06a7be047d22e357073e250d9af537518cd86868660405161231a93929190612da7565b60405180910390a4505050505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f31b2166ff604fc5672ea5df08a78081d2bc6d746cadce880747f3643d819e83d8484604051612389929190612e07565b60405180910390a350505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f2849b43074093a05396b6f2a937dee8565b15a48a7b3d4bffb732a5017380af58484604051612389929190612e07565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f7ff126db8024424bbfd9826e8ab82ff59136289ea440b04b39a0df1b03b9cabf86868660405161231a93929190612da7565b600061249a827f01ffc9a7000000000000000000000000000000000000000000000000000000006124d2565b8015611b3857506124cb827fffffffff000000000000000000000000000000000000000000000000000000006124d2565b1592915050565b604080517fffffffff000000000000000000000000000000000000000000000000000000008316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000178152825160009392849283928392918391908a617530fa92503d9150600051905082801561258a575060208210155b80156125965750600081115b979650505050505050565b60606125b084846000856125b8565b949350505050565b60608247101561264a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016101dd565b73ffffffffffffffffffffffffffffffffffffffff85163b6126c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016101dd565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516126f19190612e20565b60006040518083038185875af1925050503d806000811461272e576040519150601f19603f3d011682016040523d82523d6000602084013e612733565b606091505b50915091506125968282866060831561274d57508161218f565b82511561275d5782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101dd9190612ab7565b73ffffffffffffffffffffffffffffffffffffffff811681146127b357600080fd5b50565b60008083601f8401126127c857600080fd5b50813567ffffffffffffffff8111156127e057600080fd5b6020830191508360208285010111156127f857600080fd5b9250929050565b600080600080600080600060c0888a03121561281a57600080fd5b873561282581612791565b9650602088013561283581612791565b9550604088013561284581612791565b9450606088013561285581612791565b93506080880135925060a088013567ffffffffffffffff81111561287857600080fd5b6128848a828b016127b6565b989b979a50959850939692959293505050565b803563ffffffff811681146128ab57600080fd5b919050565b6000806000604084860312156128c557600080fd5b6128ce84612897565b9250602084013567ffffffffffffffff8111156128ea57600080fd5b6128f6868287016127b6565b9497909650939450505050565b60008060008060006080868803121561291b57600080fd5b853561292681612791565b9450602086013561293681612791565b935060408601359250606086013567ffffffffffffffff81111561295957600080fd5b612965888289016127b6565b969995985093965092949392505050565b60008060008060006080868803121561298e57600080fd5b853561299981612791565b9450602086013593506129ae60408701612897565b9250606086013567ffffffffffffffff81111561295957600080fd5b600080600080600080600060c0888a0312156129e557600080fd5b87356129f081612791565b96506020880135612a0081612791565b95506040880135612a1081612791565b945060608801359350612a2560808901612897565b925060a088013567ffffffffffffffff81111561287857600080fd5b60005b83811015612a5c578181015183820152602001612a44565b838111156115535750506000910152565b60008151808452612a85816020860160208601612a41565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061218f6020830184612a6d565b60008060008060008060a08789031215612ae357600080fd5b8635612aee81612791565b95506020870135612afe81612791565b945060408701359350612b1360608801612897565b9250608087013567ffffffffffffffff811115612b2f57600080fd5b612b3b89828a016127b6565b979a9699509497509295939492505050565b60008060408385031215612b6057600080fd5b8235612b6b81612791565b91506020830135612b7b81612791565b809150509250929050565b600060208284031215612b9857600080fd5b813561218f81612791565b60008060008060608587031215612bb957600080fd5b8435612bc481612791565b9350612bd260208601612897565b9250604085013567ffffffffffffffff811115612bee57600080fd5b612bfa878288016127b6565b95989497509550505050565b600060208284031215612c1857600080fd5b815161218f81612791565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082821015612c6457612c64612c23565b500390565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612ca157612ca1612c23565b500290565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152612ce56080830184612a6d565b9695505050505050565b73ffffffffffffffffffffffffffffffffffffffff84168152606060208201526000612d1e6060830185612a6d565b905063ffffffff83166040830152949350505050565b60008219821115612d4757612d47612c23565b500190565b600073ffffffffffffffffffffffffffffffffffffffff80891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612d9b60c0830184612a6d565b98975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201526000612ddc6060830184612a6d565b95945050505050565b600060208284031215612df757600080fd5b8151801515811461218f57600080fd5b8281526040602082015260006125b06040830184612a6d565b60008251612e32818460208701612a41565b919091019291505056fea164736f6c634300080f000a000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000003f3960806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b613d5680620001e36000396000f3fe6080604052600436106100e85760003560e01c80630166a07a1461016f57806309fc8843146101985780631635f5fd146101b457806332b7006d146101d057806336c717c1146101ec5780633cb747bf146102175780633e47158c14610242578063540abf731461026d57806354fd4d50146102965780635c975abb146102c15780637f46ddb2146102ec57806387087623146103175780638f601f6614610340578063927ede2d1461037d578063a3a79548146103a8578063c4d66de8146103c4578063c89701a2146103ed578063dad544e014610418578063e11013dd146104435761016a565b3661016a576100f561045f565b610134576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161012b9061283f565b60405180910390fd5b61016873deaddeaddeaddeaddeaddeaddeaddeaddead000033333462030d40604051806020016040528060008152506104e8565b005b600080fd5b34801561017b57600080fd5b5061019660048036038101906101919190612962565b6105cd565b005b6101b260048036038101906101ad9190612a4d565b6109ec565b005b6101ce60048036038101906101c99190612aad565b610a89565b005b6101ea60048036038101906101e59190612b35565b610e47565b005b3480156101f857600080fd5b50610201610ee7565b60405161020e9190612bcc565b60405180910390f35b34801561022357600080fd5b5061022c610f11565b6040516102399190612c46565b60405180910390f35b34801561024e57600080fd5b50610257610f37565b6040516102649190612c82565b60405180910390f35b34801561027957600080fd5b50610294600480360381019061028f9190612c9d565b611190565b005b3480156102a257600080fd5b506102ab6111ec565b6040516102b89190612dd4565b60405180910390f35b3480156102cd57600080fd5b506102d6611229565b6040516102e39190612e11565b60405180910390f35b3480156102f857600080fd5b5061030161122e565b60405161030e9190612e5f565b60405180910390f35b34801561032357600080fd5b5061033e60048036038101906103399190612e7a565b611258565b005b34801561034c57600080fd5b5061036760048036038101906103629190612f14565b6112fa565b6040516103749190612f63565b60405180910390f35b34801561038957600080fd5b5061039261131f565b60405161039f9190612c46565b60405180910390f35b6103c260048036038101906103bd9190612e7a565b611349565b005b3480156103d057600080fd5b506103eb60048036038101906103e69190612fce565b6113a3565b005b3480156103f957600080fd5b50610402611500565b60405161040f9190612e5f565b60405180910390f35b34801561042457600080fd5b5061042d611526565b60405161043a9190612bcc565b60405180910390f35b61045d60048036038101906104589190612ffb565b6115a3565b005b60003273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff160361049d57600190506104e5565b60173373ffffffffffffffffffffffffffffffffffffffff163b036104df57604051602081016040526020600082333c62ef0100815160e81c149150506104e4565b600090505b5b90565b73deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036105415761053c85858585856115fa565b6105c5565b60008673ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa15801561058e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b29190613084565b90506105c38782888888888861177e565b505b505050505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480156107075750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ef9190613084565b73ffffffffffffffffffffffffffffffffffffffff16145b610746576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073d90613149565b60405180910390fd5b60001515610752611229565b151514610794576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078b906131b5565b60405180910390fd5b61079d87611b09565b1561085d576107ac8787611b6d565b6107eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e29061326d565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff166340c10f1985856040518363ffffffff1660e01b815260040161082692919061328d565b600060405180830381600087803b15801561084057600080fd5b505af1158015610854573d6000803e3d6000fd5b50505050610991565b82600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546108e591906132e5565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061099084848973ffffffffffffffffffffffffffffffffffffffff16611ce89092919063ffffffff16565b5b6109e3878787878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611d6e565b50505050505050565b6109f461045f565b610a33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2a9061283f565b60405180910390fd5b610a843333348686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506115fa565b505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148015610bc35750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bab9190613084565b73ffffffffffffffffffffffffffffffffffffffff16145b610c02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf990613149565b60405180910390fd5b60001515610c0e611229565b151514610c50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c47906131b5565b60405180910390fd5b823414610c92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c899061338b565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610d00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cf79061341d565b60405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610d90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d87906134af565b60405180910390fd5b610de085858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611e04565b6000610dfd855a8660405180602001604052806000815250611eab565b905080610e3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3690613541565b60405180910390fd5b505050505050565b610e4f61045f565b610e8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e859061283f565b60405180910390fd5b610ee0853333878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506104e8565b5050505050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080610f667fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b611ec4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610fa5578091505061118d565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051610fe89190613561565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b61104230600060405160200161102792919061328d565b60405160208183030381529060405280519060200120611ecf565b14611079576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006110ad30600160405160200161109292919061328d565b60405160208183030381529060405280519060200120611ec4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461115b578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561112e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111529190613084565b9250505061118d565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6111e387873388888888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061177e565b50505050505050565b60606040518060400160405280600681526020017f312e31332e310000000000000000000000000000000000000000000000000000815250905090565b600090565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61126061045f565b61129f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112969061283f565b60405180910390fd5b6112f286863333888888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061177e565b505050505050565b6002602052816000526040600020602052806000526040600020600091509150505481565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61139b863387878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506104e8565b505050505050565b60008060019054906101000a900460ff161590508080156113d45750600160008054906101000a900460ff1660ff16105b8061140157506113e330611eda565b1580156114005750600160008054906101000a900460ff1660ff16145b5b611440576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114379061362d565b60405180910390fd5b60016000806101000a81548160ff021916908360ff160217905550801561147d576001600060016101000a81548160ff0219169083151502179055505b611485611efd565b6114a373420000000000000000000000000000000000000783611fac565b80156114fc5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516114f39190613695565b60405180910390a15b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611530610f37565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561157a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159e9190613084565b905090565b6115f43385348686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506115fa565b50505050565b82341461163c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163390613722565b60405180910390fd5b61164885858584612081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633dbb202b84600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16631635f5fd60e01b898989886040516024016116c99493929190613797565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050866040518563ffffffff1660e01b8152600401611745939291906137f2565b6000604051808303818588803b15801561175e57600080fd5b505af1158015611772573d6000803e3d6000fd5b50505050505050505050565b600034146117c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b8906138a2565b60405180910390fd5b6117ca87611b09565b1561188a576117d98787611b6d565b611818576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180f9061326d565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff16639dc29fac86856040518363ffffffff1660e01b815260040161185392919061328d565b600060405180830381600087803b15801561186d57600080fd5b505af1158015611881573d6000803e3d6000fd5b505050506119c0565b6118b78530858a73ffffffffffffffffffffffffffffffffffffffff16612128909392919063ffffffff16565b82600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461193f91906138c2565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6119ce8787878787866121b1565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633dbb202b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16630166a07a60e01b898b8a8a8a89604051602401611a5296959493929190613918565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050856040518463ffffffff1660e01b8152600401611ace939291906137f2565b600060405180830381600087803b158015611ae857600080fd5b505af1158015611afc573d6000803e3d6000fd5b5050505050505050505050565b6000611b35827f1d1d8b6300000000000000000000000000000000000000000000000000000000612247565b80611b665750611b65827fec4fc8e300000000000000000000000000000000000000000000000000000000612247565b5b9050919050565b6000611b99837f1d1d8b6300000000000000000000000000000000000000000000000000000000612247565b15611c42578273ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa158015611be9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0d9190613084565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050611ce2565b8273ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cb19190613084565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161490505b92915050565b611d698363a9059cbb60e01b8484604051602401611d0792919061328d565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061226c565b505050565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611de693929190613980565b60405180910390a4611dfc868686868686612333565b505050505050565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611e9193929190613980565b60405180910390a4611ea5848484846123bb565b50505050565b6000806000835160208501868989f19050949350505050565b600081549050919050565b600081549050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff16611f1c610f37565b73ffffffffffffffffffffffffffffffffffffffff1614158015611f7357503373ffffffffffffffffffffffffffffffffffffffff16611f5a611526565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611faa576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060019054906101000a900460ff16611ffb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff290613a30565b60405180910390fd5b81600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161210e93929190613980565b60405180910390a461212284848484612428565b50505050565b6121ab846323b872dd60e01b85858560405160240161214993929190613a50565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061226c565b50505050565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161222993929190613980565b60405180910390a461223f868686868686612495565b505050505050565b60006122528361251d565b80156122645750612263838361256a565b5b905092915050565b60006122ce826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166126299092919063ffffffff16565b905060008151111561232e57808060200190518101906122ee9190613ab3565b61232d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232490613b52565b60405180910390fd5b5b505050565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fd59c65b35445225835c83f50b6ede06a7be047d22e357073e250d9af537518cd8686866040516123ab93929190613980565b60405180910390a4505050505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f31b2166ff604fc5672ea5df08a78081d2bc6d746cadce880747f3643d819e83d848460405161241a929190613b72565b60405180910390a350505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f2849b43074093a05396b6f2a937dee8565b15a48a7b3d4bffb732a5017380af58484604051612487929190613b72565b60405180910390a350505050565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f7ff126db8024424bbfd9826e8ab82ff59136289ea440b04b39a0df1b03b9cabf86868660405161250d93929190613980565b60405180910390a4505050505050565b6000612549827f01ffc9a70000000000000000000000000000000000000000000000000000000061256a565b801561256357506125618263ffffffff60e01b61256a565b155b9050919050565b6000806301ffc9a760e01b836040516024016125869190613bdd565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000806000602060008551602087018a617530fa92503d91506000519050828015612611575060208210155b801561261d5750600081115b94505050505092915050565b60606126388484600085612641565b90509392505050565b606082471015612686576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161267d90613c6a565b60405180910390fd5b61268f85611eda565b6126ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126c590613cd6565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516126f79190613d32565b60006040518083038185875af1925050503d8060008114612734576040519150601f19603f3d011682016040523d82523d6000602084013e612739565b606091505b5091509150612749828286612755565b92505050949350505050565b60608315612765578290506127b5565b6000835111156127785782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127ac9190612dd4565b60405180910390fd5b9392505050565b600082825260208201905092915050565b7f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60008201527f792062652063616c6c65642066726f6d20616e20454f41000000000000000000602082015250565b60006128296037836127bc565b9150612834826127cd565b604082019050919050565b600060208201905081810360008301526128588161281c565b9050919050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061289482612869565b9050919050565b6128a481612889565b81146128af57600080fd5b50565b6000813590506128c18161289b565b92915050565b6000819050919050565b6128da816128c7565b81146128e557600080fd5b50565b6000813590506128f7816128d1565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112612922576129216128fd565b5b8235905067ffffffffffffffff81111561293f5761293e612902565b5b60208301915083600182028301111561295b5761295a612907565b5b9250929050565b600080600080600080600060c0888a0312156129815761298061285f565b5b600061298f8a828b016128b2565b97505060206129a08a828b016128b2565b96505060406129b18a828b016128b2565b95505060606129c28a828b016128b2565b94505060806129d38a828b016128e8565b93505060a088013567ffffffffffffffff8111156129f4576129f3612864565b5b612a008a828b0161290c565b925092505092959891949750929550565b600063ffffffff82169050919050565b612a2a81612a11565b8114612a3557600080fd5b50565b600081359050612a4781612a21565b92915050565b600080600060408486031215612a6657612a6561285f565b5b6000612a7486828701612a38565b935050602084013567ffffffffffffffff811115612a9557612a94612864565b5b612aa18682870161290c565b92509250509250925092565b600080600080600060808688031215612ac957612ac861285f565b5b6000612ad7888289016128b2565b9550506020612ae8888289016128b2565b9450506040612af9888289016128e8565b935050606086013567ffffffffffffffff811115612b1a57612b19612864565b5b612b268882890161290c565b92509250509295509295909350565b600080600080600060808688031215612b5157612b5061285f565b5b6000612b5f888289016128b2565b9550506020612b70888289016128e8565b9450506040612b8188828901612a38565b935050606086013567ffffffffffffffff811115612ba257612ba1612864565b5b612bae8882890161290c565b92509250509295509295909350565b612bc681612889565b82525050565b6000602082019050612be16000830184612bbd565b92915050565b6000819050919050565b6000612c0c612c07612c0284612869565b612be7565b612869565b9050919050565b6000612c1e82612bf1565b9050919050565b6000612c3082612c13565b9050919050565b612c4081612c25565b82525050565b6000602082019050612c5b6000830184612c37565b92915050565b6000612c6c82612c13565b9050919050565b612c7c81612c61565b82525050565b6000602082019050612c976000830184612c73565b92915050565b600080600080600080600060c0888a031215612cbc57612cbb61285f565b5b6000612cca8a828b016128b2565b9750506020612cdb8a828b016128b2565b9650506040612cec8a828b016128b2565b9550506060612cfd8a828b016128e8565b9450506080612d0e8a828b01612a38565b93505060a088013567ffffffffffffffff811115612d2f57612d2e612864565b5b612d3b8a828b0161290c565b925092505092959891949750929550565b600081519050919050565b60005b83811015612d75578082015181840152602081019050612d5a565b83811115612d84576000848401525b50505050565b6000601f19601f8301169050919050565b6000612da682612d4c565b612db081856127bc565b9350612dc0818560208601612d57565b612dc981612d8a565b840191505092915050565b60006020820190508181036000830152612dee8184612d9b565b905092915050565b60008115159050919050565b612e0b81612df6565b82525050565b6000602082019050612e266000830184612e02565b92915050565b6000612e3782612bf1565b9050919050565b6000612e4982612e2c565b9050919050565b612e5981612e3e565b82525050565b6000602082019050612e746000830184612e50565b92915050565b60008060008060008060a08789031215612e9757612e9661285f565b5b6000612ea589828a016128b2565b9650506020612eb689828a016128b2565b9550506040612ec789828a016128e8565b9450506060612ed889828a01612a38565b935050608087013567ffffffffffffffff811115612ef957612ef8612864565b5b612f0589828a0161290c565b92509250509295509295509295565b60008060408385031215612f2b57612f2a61285f565b5b6000612f39858286016128b2565b9250506020612f4a858286016128b2565b9150509250929050565b612f5d816128c7565b82525050565b6000602082019050612f786000830184612f54565b92915050565b6000612f8982612869565b9050919050565b6000612f9b82612f7e565b9050919050565b612fab81612f90565b8114612fb657600080fd5b50565b600081359050612fc881612fa2565b92915050565b600060208284031215612fe457612fe361285f565b5b6000612ff284828501612fb9565b91505092915050565b600080600080606085870312156130155761301461285f565b5b6000613023878288016128b2565b945050602061303487828801612a38565b935050604085013567ffffffffffffffff81111561305557613054612864565b5b6130618782880161290c565b925092505092959194509250565b60008151905061307e8161289b565b92915050565b60006020828403121561309a5761309961285f565b5b60006130a88482850161306f565b91505092915050565b7f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60008201527f792062652063616c6c65642066726f6d20746865206f7468657220627269646760208201527f6500000000000000000000000000000000000000000000000000000000000000604082015250565b60006131336041836127bc565b915061313e826130b1565b606082019050919050565b6000602082019050818103600083015261316281613126565b9050919050565b7f5374616e646172644272696467653a2070617573656400000000000000000000600082015250565b600061319f6016836127bc565b91506131aa82613169565b602082019050919050565b600060208201905081810360008301526131ce81613192565b9050919050565b7f5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b60008201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c60208201527f6f63616c20746f6b656e00000000000000000000000000000000000000000000604082015250565b6000613257604a836127bc565b9150613262826131d5565b606082019050919050565b600060208201905081810360008301526132868161324a565b9050919050565b60006040820190506132a26000830185612bbd565b6132af6020830184612f54565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006132f0826128c7565b91506132fb836128c7565b92508282101561330e5761330d6132b6565b5b828203905092915050565b7f5374616e646172644272696467653a20616d6f756e742073656e7420646f657360008201527f206e6f74206d6174636820616d6f756e74207265717569726564000000000000602082015250565b6000613375603a836127bc565b915061338082613319565b604082019050919050565b600060208201905081810360008301526133a481613368565b9050919050565b7f5374616e646172644272696467653a2063616e6e6f742073656e6420746f207360008201527f656c660000000000000000000000000000000000000000000000000000000000602082015250565b60006134076023836127bc565b9150613412826133ab565b604082019050919050565b60006020820190508181036000830152613436816133fa565b9050919050565b7f5374616e646172644272696467653a2063616e6e6f742073656e6420746f206d60008201527f657373656e676572000000000000000000000000000000000000000000000000602082015250565b60006134996028836127bc565b91506134a48261343d565b604082019050919050565b600060208201905081810360008301526134c88161348c565b9050919050565b7f5374616e646172644272696467653a20455448207472616e736665722066616960008201527f6c65640000000000000000000000000000000000000000000000000000000000602082015250565b600061352b6023836127bc565b9150613536826134cf565b604082019050919050565b6000602082019050818103600083015261355a8161351e565b9050919050565b600061356c826128c7565b9150613577836128c7565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135b0576135af6132b6565b5b828202905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000613617602e836127bc565b9150613622826135bb565b604082019050919050565b600060208201905081810360008301526136468161360a565b9050919050565b6000819050919050565b600060ff82169050919050565b600061367f61367a6136758461364d565b612be7565b613657565b9050919050565b61368f81613664565b82525050565b60006020820190506136aa6000830184613686565b92915050565b7f5374616e646172644272696467653a206272696467696e6720455448206d757360008201527f7420696e636c7564652073756666696369656e74204554482076616c75650000602082015250565b600061370c603e836127bc565b9150613717826136b0565b604082019050919050565b6000602082019050818103600083015261373b816136ff565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061376982613742565b613773818561374d565b9350613783818560208601612d57565b61378c81612d8a565b840191505092915050565b60006080820190506137ac6000830187612bbd565b6137b96020830186612bbd565b6137c66040830185612f54565b81810360608301526137d8818461375e565b905095945050505050565b6137ec81612a11565b82525050565b60006060820190506138076000830186612bbd565b8181036020830152613819818561375e565b905061382860408301846137e3565b949350505050565b7f5374616e646172644272696467653a2063616e6e6f742073656e642076616c7560008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b600061388c6021836127bc565b915061389782613830565b604082019050919050565b600060208201905081810360008301526138bb8161387f565b9050919050565b60006138cd826128c7565b91506138d8836128c7565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561390d5761390c6132b6565b5b828201905092915050565b600060c08201905061392d6000830189612bbd565b61393a6020830188612bbd565b6139476040830187612bbd565b6139546060830186612bbd565b6139616080830185612f54565b81810360a0830152613973818461375e565b9050979650505050505050565b60006060820190506139956000830186612bbd565b6139a26020830185612f54565b81810360408301526139b4818461375e565b9050949350505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b6000613a1a602b836127bc565b9150613a25826139be565b604082019050919050565b60006020820190508181036000830152613a4981613a0d565b9050919050565b6000606082019050613a656000830186612bbd565b613a726020830185612bbd565b613a7f6040830184612f54565b949350505050565b613a9081612df6565b8114613a9b57600080fd5b50565b600081519050613aad81613a87565b92915050565b600060208284031215613ac957613ac861285f565b5b6000613ad784828501613a9e565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b6000613b3c602a836127bc565b9150613b4782613ae0565b604082019050919050565b60006020820190508181036000830152613b6b81613b2f565b9050919050565b6000604082019050613b876000830185612f54565b8181036020830152613b99818461375e565b90509392505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613bd781613ba2565b82525050565b6000602082019050613bf26000830184613bce565b92915050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000613c546026836127bc565b9150613c5f82613bf8565b604082019050919050565b60006020820190508181036000830152613c8381613c47565b9050919050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613cc0601d836127bc565b9150613ccb82613c8a565b602082019050919050565b60006020820190508181036000830152613cef81613cb3565b9050919050565b600081905092915050565b6000613d0c82613742565b613d168185613cf6565b9350613d26818560208601612d57565b80840191505092915050565b6000613d3e8284613d01565b91508190509291505056fea164736f6c634300080f000a00000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 3600000, "intent": "Deploy L2StandardBridge Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000010956080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fbf806100d65f395ff3fe6080604052600436106100f2575f3560e01c80638312f14911610087578063d0e12f9011610057578063d0e12f90146102e9578063d3e5792b14610318578063d4ff9218146100fd578063dad544e01461032c575f80fd5b80638312f1491461028257806384411d651461029757806385b5b14d146102ab578063b49dc741146102ca575f80fd5b80633e47158c116100c25780633e47158c146101af57806354fd4d50146101c357806366d003ac1461021857806382356d8a14610244575f80fd5b80630d9019e1146100fd578063307f29621461014d5780633bbed4a01461016e5780633ccfd60b1461018d575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b348015610158575f80fd5b5061016c610167366004610d6d565b610340565b005b348015610179575f80fd5b5061016c610188366004610daa565b6103e6565b348015610198575f80fd5b506101a161046d565b604051908152602001610144565b3480156101ba575f80fd5b5061012361077b565b3480156101ce575f80fd5b5061020b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b6040516101449190610dc5565b348015610223575f80fd5b506002546101239073ffffffffffffffffffffffffffffffffffffffff1681565b34801561024f575f80fd5b506002546102759074010000000000000000000000000000000000000000900460ff1681565b6040516101449190610e7e565b34801561028d575f80fd5b506101a160015481565b3480156102a2575f80fd5b506101a15f5481565b3480156102b6575f80fd5b5061016c6102c5366004610e92565b610981565b3480156102d5575f80fd5b5061016c6102e4366004610ea9565b6109c7565b3480156102f4575f80fd5b5060025474010000000000000000000000000000000000000000900460ff16610275565b348015610323575f80fd5b506001546101a1565b348015610337575f80fd5b50610123610be3565b610348610c5d565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909116908360018111156103a4576103a4610e18565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103da929190610ee4565b60405180910390a15050565b6103ee610c5d565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103da565b5f60015447101561052b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f8082825461053e9190610f2c565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105f39185918591339174010000000000000000000000000000000000000000900460ff1690610f3f565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062c5761062c610e18565b036106d0575f61063c8284610cb5565b9050806106cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610522565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610760575f80fd5b505af1158015610772573d5f803e3d5ffd5b50505050505090565b5f806107a57fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107c857919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051600261080b9190610f80565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000009190911790610865906060015b604051602081830303815290604052805190602001205490565b1461089c576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108bd9060600161084b565b905073ffffffffffffffffffffffffffffffffffffffff81161561094f578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610924573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109489190610f97565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610989610c5d565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103da565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a115750825b90505f8267ffffffffffffffff166001148015610a2d5750303b155b905081158015610a3b575080155b15610a72576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ad35784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610adb610cc8565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b7357610b73610e18565b02179055508315610bd95784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610bec61077b565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c34573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c589190610f97565b905090565b33610c66610be3565b73ffffffffffffffffffffffffffffffffffffffff1614610cb3576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cc1835a84610d49565b9392505050565b33610cd161077b565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d12575033610cf9610be3565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610cb3576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d68575f80fd5b919050565b5f60208284031215610d7d575f80fd5b610cc182610d5a565b73ffffffffffffffffffffffffffffffffffffffff81168114610da7575f80fd5b50565b5f60208284031215610dba575f80fd5b8135610cc181610d86565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e7a577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e8c8284610e45565b92915050565b5f60208284031215610ea2575f80fd5b5035919050565b5f805f60608486031215610ebb575f80fd5b8335610ec681610d86565b925060208401359150610edb60408501610d5a565b90509250925092565b60408101610ef28285610e45565b610cc16020830184610e45565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8c57610e8c610eff565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f776060830184610e45565b95945050505050565b8082028115828204841417610e8c57610e8c610eff565b5f60208284031215610fa7575f80fd5b8151610cc181610d8656fea164736f6c6343000819000a0000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001774608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b6115e4806101905f395ff3fe6080604052600436106100c6575f3560e01c80630d9019e1146100d1578063307f2962146100fb5780633bbed4a0146101235780633ccfd60b1461014b5780633e47158c1461017557806354fd4d501461019f57806366d003ac146101c957806382356d8a146101f35780638312f1491461021d57806384411d651461024757806385b5b14d14610271578063b49dc74114610299578063d0e12f90146102c1578063d3e5792b146102eb578063d4ff921814610315578063dad544e01461033f576100cd565b366100cd57005b5f80fd5b3480156100dc575f80fd5b506100e5610369565b6040516100f29190610e6a565b60405180910390f35b348015610106575f80fd5b50610121600480360381019061011c9190610eaa565b610391565b005b34801561012e575f80fd5b5061014960048036038101906101449190610eff565b610413565b005b348015610156575f80fd5b5061015f6104bd565b60405161016c9190610f42565b60405180910390f35b348015610180575f80fd5b506101896106dc565b6040516101969190610fb6565b60405180910390f35b3480156101aa575f80fd5b506101b361092b565b6040516101c0919061103f565b60405180910390f35b3480156101d4575f80fd5b506101dd610964565b6040516101ea9190610e6a565b60405180910390f35b3480156101fe575f80fd5b50610207610989565b60405161021491906110d2565b60405180910390f35b348015610228575f80fd5b5061023161099c565b60405161023e9190610f42565b60405180910390f35b348015610252575f80fd5b5061025b6109a2565b6040516102689190610f42565b60405180910390f35b34801561027c575f80fd5b5061029760048036038101906102929190611115565b6109a7565b005b3480156102a4575f80fd5b506102bf60048036038101906102ba9190611140565b6109f9565b005b3480156102cc575f80fd5b506102d5610bec565b6040516102e291906110d2565b60405180910390f35b3480156102f6575f80fd5b506102ff610c02565b60405161030c9190610f42565b60405180910390f35b348015610320575f80fd5b50610329610c0b565b6040516103369190610e6a565b60405180910390f35b34801561034a575f80fd5b50610353610c33565b6040516103609190610e6a565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610399610cad565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff021916908360018111156103d1576103d061105f565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc88183604051610407929190611190565b60405180910390a15050565b61041b610cad565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459381836040516104b19291906111b7565b60405180910390a15050565b5f600154471015610503576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104fa90611274565b60405180910390fd5b479050805f8082825461051691906112bf565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba828233604051610575939291906112f2565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff166040516105c19493929190611327565b60405180910390a16001808111156105dc576105db61105f565b5b600260149054906101000a900460ff1660018111156105fe576105fd61105f565b5b03610656575f61060e8284610d1b565b905080610650576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610647906113da565b60405180910390fd5b506106d8565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b81526004016106a992919061146a565b5f604051808303818588803b1580156106c0575f80fd5b505af11580156106d2573d5f803e3d5ffd5b50505050505b5090565b5f806107097fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610d2f565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146107475780915050610928565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505161078a91906114a4565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107e1305f6040516020016107c69291906114e5565b60405160208183030381529060405280519060200120610d39565b14610818576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61084b3060016040516020016108309291906114e5565b60405160208183030381529060405280519060200120610d2f565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108f6578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ed9190611520565b92505050610928565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b6109af610cad565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109ed92919061154b565b60405180910390a15050565b5f610a02610d43565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a4a5750825b90505f60018367ffffffffffffffff16148015610a7d57505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a8b575080155b15610ac2576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610b0f576001855f0160086101000a81548160ff0219169083151502179055505b610b17610d6a565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b8357610b8261105f565b5b02179055508315610be2575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610bd991906115be565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f610c3c6106dc565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ca89190611520565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610ccc610c33565b73ffffffffffffffffffffffffffffffffffffffff1614610d19576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610d27835a84610e19565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d896106dc565b73ffffffffffffffffffffffffffffffffffffffff1614158015610de057503373ffffffffffffffffffffffffffffffffffffffff16610dc7610c33565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610e17576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610e5482610e2b565b9050919050565b610e6481610e4a565b82525050565b5f602082019050610e7d5f830184610e5b565b92915050565b5f80fd5b60028110610e93575f80fd5b50565b5f81359050610ea481610e87565b92915050565b5f60208284031215610ebf57610ebe610e83565b5b5f610ecc84828501610e96565b91505092915050565b610ede81610e4a565b8114610ee8575f80fd5b50565b5f81359050610ef981610ed5565b92915050565b5f60208284031215610f1457610f13610e83565b5b5f610f2184828501610eeb565b91505092915050565b5f819050919050565b610f3c81610f2a565b82525050565b5f602082019050610f555f830184610f33565b92915050565b5f819050919050565b5f610f7e610f79610f7484610e2b565b610f5b565b610e2b565b9050919050565b5f610f8f82610f64565b9050919050565b5f610fa082610f85565b9050919050565b610fb081610f96565b82525050565b5f602082019050610fc95f830184610fa7565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61101182610fcf565b61101b8185610fd9565b935061102b818560208601610fe9565b61103481610ff7565b840191505092915050565b5f6020820190508181035f8301526110578184611007565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6002811061109d5761109c61105f565b5b50565b5f8190506110ad8261108c565b919050565b5f6110bc826110a0565b9050919050565b6110cc816110b2565b82525050565b5f6020820190506110e55f8301846110c3565b92915050565b6110f481610f2a565b81146110fe575f80fd5b50565b5f8135905061110f816110eb565b92915050565b5f6020828403121561112a57611129610e83565b5b5f61113784828501611101565b91505092915050565b5f805f6060848603121561115757611156610e83565b5b5f61116486828701610eeb565b935050602061117586828701611101565b925050604061118686828701610e96565b9150509250925092565b5f6040820190506111a35f8301856110c3565b6111b060208301846110c3565b9392505050565b5f6040820190506111ca5f830185610e5b565b6111d76020830184610e5b565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f61125e604a83610fd9565b9150611269826111de565b606082019050919050565b5f6020820190508181035f83015261128b81611252565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6112c982610f2a565b91506112d483610f2a565b92508282019050808211156112ec576112eb611292565b5b92915050565b5f6060820190506113055f830186610f33565b6113126020830185610e5b565b61131f6040830184610e5b565b949350505050565b5f60808201905061133a5f830187610f33565b6113476020830186610e5b565b6113546040830185610e5b565b61136160608301846110c3565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f6113c4603083610fd9565b91506113cf8261136a565b604082019050919050565b5f6020820190508181035f8301526113f1816113b8565b9050919050565b5f63ffffffff82169050919050565b5f61142161141c611417846113f8565b610f5b565b610f2a565b9050919050565b61143181611407565b82525050565b5f82825260208201905092915050565b50565b5f6114555f83611437565b915061146082611447565b5f82019050919050565b5f60608201905061147d5f830185610e5b565b61148a6020830184611428565b818103604083015261149b8161144a565b90509392505050565b5f6114ae82610f2a565b91506114b983610f2a565b92508282026114c781610f2a565b915082820484148315176114de576114dd611292565b5b5092915050565b5f6040820190506114f85f830185610e5b565b6115056020830184610f33565b9392505050565b5f8151905061151a81610ed5565b92915050565b5f6020828403121561153557611534610e83565b5b5f6115428482850161150c565b91505092915050565b5f60408201905061155e5f830185610f33565b61156b6020830184610f33565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f6115a86115a361159e84611572565b610f5b565b61157b565b9050919050565b6115b88161158e565b82525050565b5f6020820190506115d15f8301846115af565b9291505056fea164736f6c6343000819000a000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1300000, "intent": "Deploy SequencerFeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000002b6d608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612a80806100ed6000396000f3fe60806040523480156200001157600080fd5b5060043610620000935760003560e01c8063c4d66de81162000062578063c4d66de81462000175578063ce5ac90f146200018e578063e78cea9214620001a5578063ee9a31a214620001c657600080fd5b8063316b3739146200009857806354fd4d5014620000fb578063896f93d114620001475780638cf0629c146200015e575b600080fd5b620000d1620000a936600462000636565b60026020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b620001386040518060400160405280600681526020017f312e31302e32000000000000000000000000000000000000000000000000000081525081565b604051620000f29190620006c9565b620000d162000158366004620007c0565b620001e5565b620000d16200016f3660046200083d565b620001fc565b6200018c6200018636600462000636565b6200041b565b005b620000d16200019f366004620007c0565b620005ed565b600154620000d19073ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff16620000d1565b6000620001f4848484620005ed565b949350505050565b600073ffffffffffffffffffffffffffffffffffffffff8516620002a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f4f7074696d69736d4d696e7461626c654552433230466163746f72793a206d7560448201527f73742070726f766964652072656d6f746520746f6b656e20616464726573730060648201526084015b60405180910390fd5b600085858585604051602001620002c29493929190620008d4565b604051602081830303815290604052805190602001209050600081600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16888888886040516200031290620005fe565b620003229594939291906200092e565b8190604051809103906000f590508015801562000343573d6000803e3d6000fd5b5073ffffffffffffffffffffffffffffffffffffffff81811660008181526002602052604080822080547fffffffffffffffffffffffff000000000000000000000000000000000000000016948d1694851790555193945090927fceeb8e7d520d7f3b65fc11a262b91066940193b05d4f93df07cfdced0eb551cf9190a360405133815273ffffffffffffffffffffffffffffffffffffffff80891691908316907f52fe89dd5930f343d25650b62fd367bae47088bcddffd2a88350a6ecdd620cdb9060200160405180910390a39695505050505050565b600054610100900460ff16158080156200043c5750600054600160ff909116105b80620004585750303b15801562000458575060005460ff166001145b620004e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016200029e565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156200054557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015620005e957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000620001f48484846012620001fc565b6120e0806200099483390190565b803573ffffffffffffffffffffffffffffffffffffffff811681146200063157600080fd5b919050565b6000602082840312156200064957600080fd5b62000654826200060c565b9392505050565b6000815180845260005b81811015620006835760208185018101518683018201520162000665565b8181111562000696576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006200065460208301846200065b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126200071f57600080fd5b813567ffffffffffffffff808211156200073d576200073d620006de565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620007865762000786620006de565b81604052838152866020858801011115620007a057600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600060608486031215620007d657600080fd5b620007e1846200060c565b9250602084013567ffffffffffffffff80821115620007ff57600080fd5b6200080d878388016200070d565b935060408601359150808211156200082457600080fd5b5062000833868287016200070d565b9150509250925092565b600080600080608085870312156200085457600080fd5b6200085f856200060c565b9350602085013567ffffffffffffffff808211156200087d57600080fd5b6200088b888389016200070d565b94506040870135915080821115620008a257600080fd5b50620008b1878288016200070d565b925050606085013560ff81168114620008c957600080fd5b939692955090935050565b73ffffffffffffffffffffffffffffffffffffffff851681526080602082015260006200090560808301866200065b565b82810360408401526200091981866200065b565b91505060ff8316606083015295945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a060408301526200096960a08301866200065b565b82810360608401526200097d81866200065b565b91505060ff83166080830152969550505050505056fe6101a06040523480156200001257600080fd5b50604051620020e0380380620020e0833981016040819052620000359162000215565b6040805180820190915260018152603160f81b6020820152839081908185600362000061838262000350565b50600462000070828262000350565b5050825160208085019190912083518483012060e08290526101008190524660a0818152604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81880181905281830187905260608201869052608082019490945230818401528151808203909301835260c0019052805194019390932091935091906080523060c05261012052505050506001600160a01b0394851661014052509390921661016052505060ff16610180526200041c565b80516001600160a01b03811681146200014357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200017057600080fd5b81516001600160401b03808211156200018d576200018d62000148565b604051601f8301601f19908116603f01168101908282118183101715620001b857620001b862000148565b81604052838152602092508683858801011115620001d557600080fd5b600091505b83821015620001f95785820183015181830184015290820190620001da565b838211156200020b5760008385830101525b9695505050505050565b600080600080600060a086880312156200022e57600080fd5b62000239866200012b565b945062000249602087016200012b565b60408701519094506001600160401b03808211156200026757600080fd5b6200027589838a016200015e565b945060608801519150808211156200028c57600080fd5b506200029b888289016200015e565b925050608086015160ff81168114620002b357600080fd5b809150509295509295909350565b600181811c90821680620002d657607f821691505b602082108103620002f757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200034b57600081815260208120601f850160051c81016020861015620003265750805b601f850160051c820191505b81811015620003475782815560010162000332565b5050505b505050565b81516001600160401b038111156200036c576200036c62000148565b62000384816200037d8454620002c1565b84620002fd565b602080601f831160018114620003bc5760008415620003a35750858301515b600019600386901b1c1916600185901b17855562000347565b600085815260208120601f198616915b82811015620003ed57888601518255948401946001909101908401620003cc565b50858210156200040c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05160c05160e0516101005161012051610140516101605161018051611c37620004a960003960006102700152600081816103a70152818161041c0152818161064801526107aa0152600081816101d501526103cd01526000611174015260006111c30152600061119e015260006110f7015260006111210152600061114b0152611c376000f3fe608060405234801561001057600080fd5b50600436106101a35760003560e01c806370a08231116100ee578063ae1f6aaf11610097578063d6c0b2c411610071578063d6c0b2c4146103cb578063dd62ed3e14610404578063e78cea92146103a5578063ee9a31a21461041757600080fd5b8063ae1f6aaf146103a5578063c01e1bd6146103cb578063d505accf146103f157600080fd5b80639dc29fac116100c85780639dc29fac1461036c578063a457c2d71461037f578063a9059cbb1461039257600080fd5b806370a082311461031b5780637ecebe001461035157806395d89b411461036457600080fd5b8063313ce5671161015057806340c10f191161012a57806340c10f19146102b557806354fd4d50146102ca5780636afdd8501461030657600080fd5b8063313ce567146102695780633644e5151461029a57806339509351146102a257600080fd5b8063095ea7b311610181578063095ea7b31461023157806318160ddd1461024457806323b872dd1461025657600080fd5b806301ffc9a7146101a8578063033964be146101d057806306fdde031461021c575b600080fd5b6101bb6101b636600461194b565b61043e565b60405190151581526020015b60405180910390f35b6101f77f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101c7565b61022461052f565b6040516101c7919061198d565b6101bb61023f366004611a29565b6105c1565b6002545b6040519081526020016101c7565b6101bb610264366004611a53565b6105db565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016101c7565b6102486105ff565b6101bb6102b0366004611a29565b61060e565b6102c86102c3366004611a29565b610630565b005b6102246040518060400160405280600581526020017f312e342e3100000000000000000000000000000000000000000000000000000081525081565b6e22d473030f116ddee9f6b43ac78ba36101f7565b610248610329366004611a8f565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b61024861035f366004611a8f565b610758565b610224610783565b6102c861037a366004611a29565b610792565b6101bb61038d366004611a29565b6108a9565b6101bb6103a0366004611a29565b610956565b7f00000000000000000000000000000000000000000000000000000000000000006101f7565b7f00000000000000000000000000000000000000000000000000000000000000006101f7565b6102c86103ff366004611aaa565b610964565b610248610412366004611b1d565b610b23565b6101f77f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007f1d1d8b63000000000000000000000000000000000000000000000000000000007fec4fc8e3000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000085168314806104f757507fffffffff00000000000000000000000000000000000000000000000000000000858116908316145b8061052657507fffffffff00000000000000000000000000000000000000000000000000000000858116908216145b95945050505050565b60606003805461053e90611b50565b80601f016020809104026020016040519081016040528092919081815260200182805461056a90611b50565b80156105b75780601f1061058c576101008083540402835291602001916105b7565b820191906000526020600020905b81548152906001019060200180831161059a57829003601f168201915b5050505050905090565b6000336105cf818585610bc4565b60019150505b92915050565b6000336105e9858285610d78565b6105f4858585610e2a565b506001949350505050565b60006106096110dd565b905090565b6000336105cf8185856106218383610b23565b61062b9190611bcc565b610bc4565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146106fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460448201527f67652063616e206d696e7420616e64206275726e00000000000000000000000060648201526084015b60405180910390fd5b6107048282611211565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858260405161074c91815260200190565b60405180910390a25050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600560205260408120546105d5565b60606004805461053e90611b50565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610857576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460448201527f67652063616e206d696e7420616e64206275726e00000000000000000000000060648201526084016106f1565b6108618282611331565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405161074c91815260200190565b600033816108b78286610b23565b905083811015610949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016106f1565b6105f48286868403610bc4565b6000336105cf818585610e2a565b834211156109ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016106f1565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886109fd8c611516565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000610a658261154b565b90506000610a75828787876115b4565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016106f1565b610b178a8a8a610bc4565b50505050505050505050565b60007fffffffffffffffffffffffffffffffffffdd2b8cfcf0ee922116094bc538745d73ffffffffffffffffffffffffffffffffffffffff831601610b8957507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6105d5565b73ffffffffffffffffffffffffffffffffffffffff8084166000908152600160209081526040808320938616835292905220545b9392505050565b73ffffffffffffffffffffffffffffffffffffffff8316610c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff8216610d09576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000610d848484610b23565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e245781811015610e17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106f1565b610e248484848403610bc4565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610ecd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff8216610f70576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015611026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff80851660009081526020819052604080822085850390559185168152908120805484929061106a908490611bcc565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110d091815260200190565b60405180910390a3610e24565b60003073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614801561114357507f000000000000000000000000000000000000000000000000000000000000000046145b1561116d57507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b73ffffffffffffffffffffffffffffffffffffffff821661128e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016106f1565b80600260008282546112a09190611bcc565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906112da908490611bcc565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff82166113d4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260409020548181101561148a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208383039055600280548492906114c6908490611be4565b909155505060405182815260009073ffffffffffffffffffffffffffffffffffffffff8516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610d6b565b73ffffffffffffffffffffffffffffffffffffffff811660009081526005602052604090208054600181018255905b50919050565b60006105d56115586110dd565b836040517f19010000000000000000000000000000000000000000000000000000000000006020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b60008060006115c5878787876115dc565b915091506115d2816116f4565b5095945050505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561161357506000905060036116eb565b8460ff16601b1415801561162b57508460ff16601c14155b1561163c57506000905060046116eb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611690573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166116e4576000600192509250506116eb565b9150600090505b94509492505050565b600081600481111561170857611708611bfb565b036117105750565b600181600481111561172457611724611bfb565b0361178b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016106f1565b600281600481111561179f5761179f611bfb565b03611806576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016106f1565b600381600481111561181a5761181a611bfb565b036118a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f756500000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b60048160048111156118bb576118bb611bfb565b03611948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c60448201527f756500000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b50565b60006020828403121561195d57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610bbd57600080fd5b600060208083528351808285015260005b818110156119ba5785810183015185820160400152820161199e565b818111156119cc576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a2457600080fd5b919050565b60008060408385031215611a3c57600080fd5b611a4583611a00565b946020939093013593505050565b600080600060608486031215611a6857600080fd5b611a7184611a00565b9250611a7f60208501611a00565b9150604084013590509250925092565b600060208284031215611aa157600080fd5b610bbd82611a00565b600080600080600080600060e0888a031215611ac557600080fd5b611ace88611a00565b9650611adc60208901611a00565b95506040880135945060608801359350608088013560ff81168114611b0057600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215611b3057600080fd5b611b3983611a00565b9150611b4760208401611a00565b90509250929050565b600181811c90821680611b6457607f821691505b602082108103611545577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008219821115611bdf57611bdf611b9d565b500190565b600082821015611bf657611bf6611b9d565b500390565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea164736f6c634300080f000aa164736f6c634300080f000a00000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000458660806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b6143a380620001e36000396000f3fe60806040523480156200001157600080fd5b5060043610620000825760003560e01c8063316b3739146200008757806354fd4d5014620000bd578063896f93d114620000df5780638cf0629c1462000115578063c4d66de8146200014b578063ce5ac90f146200016b578063e78cea9214620001a1578063ee9a31a214620001c3575b600080fd5b620000a560048036038101906200009f91906200075f565b620001e5565b604051620000b49190620007a2565b60405180910390f35b620000c762000218565b604051620000d6919062000863565b60405180910390f35b620000fd6004803603810190620000f79190620009d8565b62000251565b6040516200010c9190620007a2565b60405180910390f35b6200013360048036038101906200012d919062000ab0565b62000269565b604051620001429190620007a2565b60405180910390f35b6200016960048036038101906200016391906200075f565b620004c7565b005b620001896004803603810190620001839190620009d8565b6200064b565b604051620001989190620007a2565b60405180910390f35b620001ab62000665565b604051620001ba9190620007a2565b60405180910390f35b620001cd6200068b565b604051620001dc9190620007a2565b60405180910390f35b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040518060400160405280600681526020017f312e31302e32000000000000000000000000000000000000000000000000000081525081565b6000620002608484846200064b565b90509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603620002dc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002d39062000bd6565b60405180910390fd5b600085858585604051602001620002f7949392919062000c09565b604051602081830303815290604052805190602001209050600081600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16888888886040516200034790620006d8565b6200035795949392919062000c64565b8190604051809103906000f590508015801562000378573d6000803e3d6000fd5b50905086600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fceeb8e7d520d7f3b65fc11a262b91066940193b05d4f93df07cfdced0eb551cf60405160405180910390a38673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f52fe89dd5930f343d25650b62fd367bae47088bcddffd2a88350a6ecdd620cdb33604051620004b29190620007a2565b60405180910390a38092505050949350505050565b60008060019054906101000a900460ff16159050808015620004f95750600160008054906101000a900460ff1660ff16105b806200052a57506200050b30620006b5565b158015620005295750600160008054906101000a900460ff1660ff16145b5b6200056c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005639062000d45565b60405180910390fd5b60016000806101000a81548160ff021916908360ff1602179055508015620005aa576001600060016101000a81548160ff0219169083151502179055505b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508015620006475760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516200063e919062000db4565b60405180910390a15b5050565b60006200065c848484601262000269565b90509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6135c58062000dd283390190565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200072782620006fa565b9050919050565b62000739816200071a565b81146200074557600080fd5b50565b60008135905062000759816200072e565b92915050565b600060208284031215620007785762000777620006f0565b5b6000620007888482850162000748565b91505092915050565b6200079c816200071a565b82525050565b6000602082019050620007b9600083018462000791565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015620007fb578082015181840152602081019050620007de565b838111156200080b576000848401525b50505050565b6000601f19601f8301169050919050565b60006200082f82620007bf565b6200083b8185620007ca565b93506200084d818560208601620007db565b620008588162000811565b840191505092915050565b600060208201905081810360008301526200087f818462000822565b905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620008cb8262000811565b810181811067ffffffffffffffff82111715620008ed57620008ec62000891565b5b80604052505050565b600062000902620006e6565b9050620009108282620008c0565b919050565b600067ffffffffffffffff82111562000933576200093262000891565b5b6200093e8262000811565b9050602081019050919050565b82818337600083830152505050565b6000620009716200096b8462000915565b620008f6565b90508281526020810184848401111562000990576200098f6200088c565b5b6200099d8482856200094b565b509392505050565b600082601f830112620009bd57620009bc62000887565b5b8135620009cf8482602086016200095a565b91505092915050565b600080600060608486031215620009f457620009f3620006f0565b5b600062000a048682870162000748565b935050602084013567ffffffffffffffff81111562000a285762000a27620006f5565b5b62000a3686828701620009a5565b925050604084013567ffffffffffffffff81111562000a5a5762000a59620006f5565b5b62000a6886828701620009a5565b9150509250925092565b600060ff82169050919050565b62000a8a8162000a72565b811462000a9657600080fd5b50565b60008135905062000aaa8162000a7f565b92915050565b6000806000806080858703121562000acd5762000acc620006f0565b5b600062000add8782880162000748565b945050602085013567ffffffffffffffff81111562000b015762000b00620006f5565b5b62000b0f87828801620009a5565b935050604085013567ffffffffffffffff81111562000b335762000b32620006f5565b5b62000b4187828801620009a5565b925050606062000b548782880162000a99565b91505092959194509250565b7f4f7074696d69736d4d696e7461626c654552433230466163746f72793a206d7560008201527f73742070726f766964652072656d6f746520746f6b656e206164647265737300602082015250565b600062000bbe603f83620007ca565b915062000bcb8262000b60565b604082019050919050565b6000602082019050818103600083015262000bf18162000baf565b9050919050565b62000c038162000a72565b82525050565b600060808201905062000c20600083018762000791565b818103602083015262000c34818662000822565b9050818103604083015262000c4a818562000822565b905062000c5b606083018462000bf8565b95945050505050565b600060a08201905062000c7b600083018862000791565b62000c8a602083018762000791565b818103604083015262000c9e818662000822565b9050818103606083015262000cb4818562000822565b905062000cc5608083018462000bf8565b9695505050505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b600062000d2d602e83620007ca565b915062000d3a8262000ccf565b604082019050919050565b6000602082019050818103600083015262000d608162000d1e565b9050919050565b6000819050919050565b6000819050919050565b600062000d9c62000d9662000d908462000d67565b62000d71565b62000a72565b9050919050565b62000dae8162000d7b565b82525050565b600060208201905062000dcb600083018462000da3565b9291505056fe6101a06040523480156200001257600080fd5b50604051620035c5380380620035c583398181016040528101906200003891906200044b565b82806040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250858581600390816200008391906200075c565b5080600490816200009591906200075c565b50505060008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a0818152505062000101818484620001cf60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250508061012081815250505050505050508373ffffffffffffffffffffffffffffffffffffffff166101408173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff166101608173ffffffffffffffffffffffffffffffffffffffff16815250508060ff166101808160ff16815250505050505050620008dd565b60008383834630604051602001620001ec95949392919062000880565b6040516020818303038152906040528051906020012090509392505050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200024c826200021f565b9050919050565b6200025e816200023f565b81146200026a57600080fd5b50565b6000815190506200027e8162000253565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620002d9826200028e565b810181811067ffffffffffffffff82111715620002fb57620002fa6200029f565b5b80604052505050565b6000620003106200020b565b90506200031e8282620002ce565b919050565b600067ffffffffffffffff8211156200034157620003406200029f565b5b6200034c826200028e565b9050602081019050919050565b60005b83811015620003795780820151818401526020810190506200035c565b8381111562000389576000848401525b50505050565b6000620003a6620003a08462000323565b62000304565b905082815260208101848484011115620003c557620003c462000289565b5b620003d284828562000359565b509392505050565b600082601f830112620003f257620003f162000284565b5b8151620004048482602086016200038f565b91505092915050565b600060ff82169050919050565b62000425816200040d565b81146200043157600080fd5b50565b60008151905062000445816200041a565b92915050565b600080600080600060a086880312156200046a576200046962000215565b5b60006200047a888289016200026d565b95505060206200048d888289016200026d565b945050604086015167ffffffffffffffff811115620004b157620004b06200021a565b5b620004bf88828901620003da565b935050606086015167ffffffffffffffff811115620004e357620004e26200021a565b5b620004f188828901620003da565b9250506080620005048882890162000434565b9150509295509295909350565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200056457607f821691505b6020821081036200057a57620005796200051c565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620005e47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005a5565b620005f08683620005a5565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200063d62000637620006318462000608565b62000612565b62000608565b9050919050565b6000819050919050565b62000659836200061c565b62000671620006688262000644565b848454620005b2565b825550505050565b600090565b6200068862000679565b620006958184846200064e565b505050565b5b81811015620006bd57620006b16000826200067e565b6001810190506200069b565b5050565b601f8211156200070c57620006d68162000580565b620006e18462000595565b81016020851015620006f1578190505b62000709620007008562000595565b8301826200069a565b50505b505050565b600082821c905092915050565b6000620007316000198460080262000711565b1980831691505092915050565b60006200074c83836200071e565b9150826002028217905092915050565b620007678262000511565b67ffffffffffffffff8111156200078357620007826200029f565b5b6200078f82546200054b565b6200079c828285620006c1565b600060209050601f831160018114620007d45760008415620007bf578287015190505b620007cb85826200073e565b8655506200083b565b601f198416620007e48662000580565b60005b828110156200080e57848901518255600182019150602085019450602081019050620007e7565b868310156200082e57848901516200082a601f8916826200071e565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b620008588162000843565b82525050565b620008698162000608565b82525050565b6200087a816200023f565b82525050565b600060a0820190506200089760008301886200084d565b620008a660208301876200084d565b620008b560408301866200084d565b620008c460608301856200085e565b620008d360808301846200086f565b9695505050505050565b60805160a05160c05160e0516101005161012051610140516101605161018051612c4d62000978600039600061072301526000818161078f015281816109f301528181610b7901528181610daa0152610dd001526000818161060f01528181610ba10152610d0b0152600061137c015260006113be0152600061139d015260006112d201526000611328015260006113510152612c4d6000f3fe608060405234801561001057600080fd5b50600436106101335760003560e01c806301ffc9a714610138578063033964be1461016857806306fdde0314610186578063095ea7b3146101a457806318160ddd146101d457806323b872dd146101f2578063313ce567146102225780633644e51514610240578063395093511461025e57806340c10f191461028e57806354fd4d50146102aa5780636afdd850146102c857806370a08231146102e65780637ecebe001461031657806395d89b41146103465780639dc29fac14610364578063a457c2d714610380578063a9059cbb146103b0578063ae1f6aaf146103e0578063c01e1bd6146103fe578063d505accf1461041c578063d6c0b2c414610438578063dd62ed3e14610456578063e78cea9214610486578063ee9a31a2146104a4575b600080fd5b610152600480360381019061014d9190611c17565b6104c2565b60405161015f9190611c5f565b60405180910390f35b61017061060d565b60405161017d9190611cbb565b60405180910390f35b61018e610631565b60405161019b9190611d6f565b60405180910390f35b6101be60048036038101906101b99190611df3565b6106c3565b6040516101cb9190611c5f565b60405180910390f35b6101dc6106e6565b6040516101e99190611e42565b60405180910390f35b61020c60048036038101906102079190611e5d565b6106f0565b6040516102199190611c5f565b60405180910390f35b61022a61071f565b6040516102379190611ecc565b60405180910390f35b610248610747565b6040516102559190611f00565b60405180910390f35b61027860048036038101906102739190611df3565b610756565b6040516102859190611c5f565b60405180910390f35b6102a860048036038101906102a39190611df3565b61078d565b005b6102b2610877565b6040516102bf9190611d6f565b60405180910390f35b6102d06108b0565b6040516102dd9190611cbb565b60405180910390f35b61030060048036038101906102fb9190611f1b565b6108c7565b60405161030d9190611e42565b60405180910390f35b610330600480360381019061032b9190611f1b565b61090f565b60405161033d9190611e42565b60405180910390f35b61034e61095f565b60405161035b9190611d6f565b60405180910390f35b61037e60048036038101906103799190611df3565b6109f1565b005b61039a60048036038101906103959190611df3565b610adb565b6040516103a79190611c5f565b60405180910390f35b6103ca60048036038101906103c59190611df3565b610b52565b6040516103d79190611c5f565b60405180910390f35b6103e8610b75565b6040516103f59190611cbb565b60405180910390f35b610406610b9d565b6040516104139190611cbb565b60405180910390f35b61043660048036038101906104319190611fa0565b610bc5565b005b610440610d07565b60405161044d9190611cbb565b60405180910390f35b610470600480360381019061046b9190612042565b610d2f565b60405161047d9190611e42565b60405180910390f35b61048e610da6565b60405161049b9190611cbb565b60405180910390f35b6104ac610dce565b6040516104b99190611cbb565b60405180910390f35b6000807f01ffc9a700000000000000000000000000000000000000000000000000000000905060007f1d1d8b6300000000000000000000000000000000000000000000000000000000905060007fec4fc8e3000000000000000000000000000000000000000000000000000000009050827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806105bb5750817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806106035750807bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9350505050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060038054610640906120b1565b80601f016020809104026020016040519081016040528092919081815260200182805461066c906120b1565b80156106b95780601f1061068e576101008083540402835291602001916106b9565b820191906000526020600020905b81548152906001019060200180831161069c57829003601f168201915b5050505050905090565b6000806106ce610df2565b90506106db818585610dfa565b600191505092915050565b6000600254905090565b6000806106fb610df2565b9050610708858285610fc3565b61071385858561104f565b60019150509392505050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60006107516112ce565b905090565b600080610761610df2565b90506107828185856107738589610d2f565b61077d9190612111565b610dfa565b600191505092915050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461081b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610812906121d9565b60405180910390fd5b61082582826113e8565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858260405161086b9190611e42565b60405180910390a25050565b6040518060400160405280600581526020017f312e342e3100000000000000000000000000000000000000000000000000000081525081565b60006e22d473030f116ddee9f6b43ac78ba3905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000610958600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020611547565b9050919050565b60606004805461096e906120b1565b80601f016020809104026020016040519081016040528092919081815260200182805461099a906120b1565b80156109e75780601f106109bc576101008083540402835291602001916109e7565b820191906000526020600020905b8154815290600101906020018083116109ca57829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a76906121d9565b60405180910390fd5b610a898282611555565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610acf9190611e42565b60405180910390a25050565b600080610ae6610df2565b90506000610af48286610d2f565b905083811015610b39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b309061226b565b60405180910390fd5b610b468286868403610dfa565b60019250505092915050565b600080610b5d610df2565b9050610b6a81858561104f565b600191505092915050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b83421115610c08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bff906122d7565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610c378c61172b565b89604051602001610c4d969594939291906122f7565b6040516020818303038152906040528051906020012090506000610c7082611789565b90506000610c80828787876117a3565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610cf0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce7906123a4565b60405180910390fd5b610cfb8a8a8a610dfa565b50505050505050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b6000610d396108b0565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d93577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9050610da0565b610d9d83836117ce565b90505b92915050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6090612436565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ed8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ecf906124c8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610fb69190611e42565b60405180910390a3505050565b6000610fcf8484610d2f565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611049578181101561103b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103290612534565b60405180910390fd5b6110488484848403610dfa565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b5906125c6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361112d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161112490612658565b60405180910390fd5b611138838383611855565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156111be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111b5906126ea565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112519190612111565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112b59190611e42565b60405180910390a36112c884848461185a565b50505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614801561134a57507f000000000000000000000000000000000000000000000000000000000000000046145b15611377577f000000000000000000000000000000000000000000000000000000000000000090506113e5565b6113e27f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000061185f565b90505b90565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611457576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144e90612756565b60405180910390fd5b61146360008383611855565b80600260008282546114759190612111565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114ca9190612111565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161152f9190611e42565b60405180910390a36115436000838361185a565b5050565b600081600001549050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bb906127e8565b60405180910390fd5b6115d082600083611855565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611656576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164d9061287a565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282546116ad919061289a565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117129190611e42565b60405180910390a36117268360008461185a565b505050565b600080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905061177881611547565b915061178381611899565b50919050565b600061179c6117966112ce565b836118af565b9050919050565b60008060006117b4878787876118e2565b915091506117c1816119ee565b8192505050949350505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b505050565b505050565b6000838383463060405160200161187a9594939291906128ce565b6040516020818303038152906040528051906020012090509392505050565b6001816000016000828254019250508190555050565b600082826040516020016118c4929190612999565b60405160208183030381529060405280519060200120905092915050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c111561191d5760006003915091506119e5565b601b8560ff16141580156119355750601c8560ff1614155b156119475760006004915091506119e5565b60006001878787876040516000815260200160405260405161196c94939291906129d0565b6020604051602081039080840390855afa15801561198e573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036119dc576000600192509250506119e5565b80600092509250505b94509492505050565b60006004811115611a0257611a01612a15565b5b816004811115611a1557611a14612a15565b5b0315611bb75760016004811115611a2f57611a2e612a15565b5b816004811115611a4257611a41612a15565b5b03611a82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7990612a90565b60405180910390fd5b60026004811115611a9657611a95612a15565b5b816004811115611aa957611aa8612a15565b5b03611ae9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae090612afc565b60405180910390fd5b60036004811115611afd57611afc612a15565b5b816004811115611b1057611b0f612a15565b5b03611b50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4790612b8e565b60405180910390fd5b600480811115611b6357611b62612a15565b5b816004811115611b7657611b75612a15565b5b03611bb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bad90612c20565b60405180910390fd5b5b50565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611bf481611bbf565b8114611bff57600080fd5b50565b600081359050611c1181611beb565b92915050565b600060208284031215611c2d57611c2c611bba565b5b6000611c3b84828501611c02565b91505092915050565b60008115159050919050565b611c5981611c44565b82525050565b6000602082019050611c746000830184611c50565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611ca582611c7a565b9050919050565b611cb581611c9a565b82525050565b6000602082019050611cd06000830184611cac565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d10578082015181840152602081019050611cf5565b83811115611d1f576000848401525b50505050565b6000601f19601f8301169050919050565b6000611d4182611cd6565b611d4b8185611ce1565b9350611d5b818560208601611cf2565b611d6481611d25565b840191505092915050565b60006020820190508181036000830152611d898184611d36565b905092915050565b611d9a81611c9a565b8114611da557600080fd5b50565b600081359050611db781611d91565b92915050565b6000819050919050565b611dd081611dbd565b8114611ddb57600080fd5b50565b600081359050611ded81611dc7565b92915050565b60008060408385031215611e0a57611e09611bba565b5b6000611e1885828601611da8565b9250506020611e2985828601611dde565b9150509250929050565b611e3c81611dbd565b82525050565b6000602082019050611e576000830184611e33565b92915050565b600080600060608486031215611e7657611e75611bba565b5b6000611e8486828701611da8565b9350506020611e9586828701611da8565b9250506040611ea686828701611dde565b9150509250925092565b600060ff82169050919050565b611ec681611eb0565b82525050565b6000602082019050611ee16000830184611ebd565b92915050565b6000819050919050565b611efa81611ee7565b82525050565b6000602082019050611f156000830184611ef1565b92915050565b600060208284031215611f3157611f30611bba565b5b6000611f3f84828501611da8565b91505092915050565b611f5181611eb0565b8114611f5c57600080fd5b50565b600081359050611f6e81611f48565b92915050565b611f7d81611ee7565b8114611f8857600080fd5b50565b600081359050611f9a81611f74565b92915050565b600080600080600080600060e0888a031215611fbf57611fbe611bba565b5b6000611fcd8a828b01611da8565b9750506020611fde8a828b01611da8565b9650506040611fef8a828b01611dde565b95505060606120008a828b01611dde565b94505060806120118a828b01611f5f565b93505060a06120228a828b01611f8b565b92505060c06120338a828b01611f8b565b91505092959891949750929550565b6000806040838503121561205957612058611bba565b5b600061206785828601611da8565b925050602061207885828601611da8565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120c957607f821691505b6020821081036120dc576120db612082565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061211c82611dbd565b915061212783611dbd565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561215c5761215b6120e2565b5b828201905092915050565b7f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460008201527f67652063616e206d696e7420616e64206275726e000000000000000000000000602082015250565b60006121c3603483611ce1565b91506121ce82612167565b604082019050919050565b600060208201905081810360008301526121f2816121b6565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612255602583611ce1565b9150612260826121f9565b604082019050919050565b6000602082019050818103600083015261228481612248565b9050919050565b7f45524332305065726d69743a206578706972656420646561646c696e65000000600082015250565b60006122c1601d83611ce1565b91506122cc8261228b565b602082019050919050565b600060208201905081810360008301526122f0816122b4565b9050919050565b600060c08201905061230c6000830189611ef1565b6123196020830188611cac565b6123266040830187611cac565b6123336060830186611e33565b6123406080830185611e33565b61234d60a0830184611e33565b979650505050505050565b7f45524332305065726d69743a20696e76616c6964207369676e61747572650000600082015250565b600061238e601e83611ce1565b915061239982612358565b602082019050919050565b600060208201905081810360008301526123bd81612381565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612420602483611ce1565b915061242b826123c4565b604082019050919050565b6000602082019050818103600083015261244f81612413565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006124b2602283611ce1565b91506124bd82612456565b604082019050919050565b600060208201905081810360008301526124e1816124a5565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600061251e601d83611ce1565b9150612529826124e8565b602082019050919050565b6000602082019050818103600083015261254d81612511565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006125b0602583611ce1565b91506125bb82612554565b604082019050919050565b600060208201905081810360008301526125df816125a3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612642602383611ce1565b915061264d826125e6565b604082019050919050565b6000602082019050818103600083015261267181612635565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006126d4602683611ce1565b91506126df82612678565b604082019050919050565b60006020820190508181036000830152612703816126c7565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000612740601f83611ce1565b915061274b8261270a565b602082019050919050565b6000602082019050818103600083015261276f81612733565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006127d2602183611ce1565b91506127dd82612776565b604082019050919050565b60006020820190508181036000830152612801816127c5565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b6000612864602283611ce1565b915061286f82612808565b604082019050919050565b6000602082019050818103600083015261289381612857565b9050919050565b60006128a582611dbd565b91506128b083611dbd565b9250828210156128c3576128c26120e2565b5b828203905092915050565b600060a0820190506128e36000830188611ef1565b6128f06020830187611ef1565b6128fd6040830186611ef1565b61290a6060830185611e33565b6129176080830184611cac565b9695505050505050565b600081905092915050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b6000612962600283612921565b915061296d8261292c565b600282019050919050565b6000819050919050565b61299361298e82611ee7565b612978565b82525050565b60006129a482612955565b91506129b08285612982565b6020820191506129c08284612982565b6020820191508190509392505050565b60006080820190506129e56000830187611ef1565b6129f26020830186611ebd565b6129ff6040830185611ef1565b612a0c6060830184611ef1565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000612a7a601883611ce1565b9150612a8582612a44565b602082019050919050565b60006020820190508181036000830152612aa981612a6d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b6000612ae6601f83611ce1565b9150612af182612ab0565b602082019050919050565b60006020820190508181036000830152612b1581612ad9565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b78602283611ce1565b9150612b8382612b1c565b604082019050919050565b60006020820190508181036000830152612ba781612b6b565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000612c0a602283611ce1565b9150612c1582612bae565b604082019050919050565b60006020820190508181036000830152612c3981612bfd565b905091905056fea164736f6c634300080f000aa164736f6c634300080f000a0000000000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 3600000, "intent": "Deploy OptimismMintableERC20Factory Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001aaa608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6119bd806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106100d45760003560e01c80637f46ddb211610081578063c4d66de81161005b578063c4d66de8146101fa578063c89701a21461020d578063dad544e01461022d57600080fd5b80637f46ddb2146101ab578063927ede2d146101c9578063aa557452146101e757600080fd5b806354fd4d50116100b257806354fd4d50146101405780635c975abb14610189578063761f44931461019857600080fd5b80633687011a146100d95780633cb747bf146100ee5780633e47158c14610138575b600080fd5b6100ec6100e73660046115d7565b610235565b005b60015461010e9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61010e6102e6565b61017c6040518060400160405280600681526020017f312e31302e31000000000000000000000000000000000000000000000000000081525081565b60405161012f91906116c5565b6040516000815260200161012f565b6100ec6101a63660046116d8565b6104f1565b60025473ffffffffffffffffffffffffffffffffffffffff1661010e565b60015473ffffffffffffffffffffffffffffffffffffffff1661010e565b6100ec6101f5366004611770565b610a0f565b6100ec6102083660046117e7565b610acb565b60025461010e9073ffffffffffffffffffffffffffffffffffffffff1681565b61010e610c7c565b61023d610cf9565b6102ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f4552433732314272696467653a206163636f756e74206973206e6f742065787460448201527f65726e616c6c79206f776e65640000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102de8686333388888888610d36565b505050505050565b6000806103117fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561033457919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026103779190611804565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000091909117906103d2906060015b604051602081830303815290604052805190602001205490565b14610409576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805130602082015260019181019190915260009061042b906060016103b8565b905073ffffffffffffffffffffffffffffffffffffffff8116156104bf578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610494573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b89190611868565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60015473ffffffffffffffffffffffffffffffffffffffff16331480156105c65750600254600154604080517f6e296e45000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff9384169390921691636e296e45916004808201926020929091908290030181865afa15801561058a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ae9190611868565b73ffffffffffffffffffffffffffffffffffffffff16145b610652576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f4552433732314272696467653a2066756e6374696f6e2063616e206f6e6c792060448201527f62652063616c6c65642066726f6d20746865206f74686572206272696467650060648201526084016102c5565b3073ffffffffffffffffffffffffffffffffffffffff8816036106f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4c324552433732314272696467653a206c6f63616c20746f6b656e2063616e6e60448201527f6f742062652073656c660000000000000000000000000000000000000000000060648201526084016102c5565b610721877faecafc230000000000000000000000000000000000000000000000000000000061128c565b6107ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4c324552433732314272696467653a206c6f63616c20746f6b656e20696e746560448201527f7266616365206973206e6f7420636f6d706c69616e740000000000000000000060648201526084016102c5565b8673ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081c9190611868565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16146108fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604b60248201527f4c324552433732314272696467653a2077726f6e672072656d6f746520746f6b60448201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433732312060648201527f6c6f63616c20746f6b656e000000000000000000000000000000000000000000608482015260a4016102c5565b6040517fa144819400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301526024820185905288169063a144819490604401600060405180830381600087803b15801561096c57600080fd5b505af1158015610980573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f1f39bf6707b5d608453e0ae4c067b562bcc4c85c0f562ef5d2c774d2e7f131ac878787876040516109fe94939291906118ce565b60405180910390a450505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610ab2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4552433732314272696467653a206e667420726563697069656e742063616e6e60448201527f6f7420626520616464726573732830290000000000000000000000000000000060648201526084016102c5565b610ac28787338888888888610d36565b50505050505050565b600054610100900460ff1615808015610aeb5750600054600160ff909116105b80610b055750303b158015610b05575060005460ff166001145b610b91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016102c5565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610bef57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610bf76112af565b610c1573420000000000000000000000000000000000000783611332565b8015610c7857600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000610c866102e6565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf49190611868565b905090565b6000323303610d085750600190565b333b601703610d3057604051602081016040526020600082333c5160e81c62ef010014905090565b50600090565b73ffffffffffffffffffffffffffffffffffffffff8716610dd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f4c324552433732314272696467653a2072656d6f746520746f6b656e2063616e60448201527f6e6f74206265206164647265737328302900000000000000000000000000000060648201526084016102c5565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526004810185905273ffffffffffffffffffffffffffffffffffffffff891690636352211e90602401602060405180830381865afa158015610e44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e689190611868565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610f22576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f4c324552433732314272696467653a205769746864726177616c206973206e6f60448201527f74206265696e6720696e69746961746564206279204e4654206f776e6572000060648201526084016102c5565b60008873ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f939190611868565b90508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c324552433732314272696467653a2072656d6f746520746f6b656e20646f6560448201527f73206e6f74206d6174636820676976656e2076616c756500000000000000000060648201526084016102c5565b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8881166004830152602482018790528a1690639dc29fac90604401600060405180830381600087803b1580156110c057600080fd5b505af11580156110d4573d6000803e3d6000fd5b505050506000818a89898988886040516024016110f7979695949392919061190e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f761f44930000000000000000000000000000000000000000000000000000000017905260015460025491517f3dbb202b00000000000000000000000000000000000000000000000000000000815292935073ffffffffffffffffffffffffffffffffffffffff90811692633dbb202b926111cc92169085908a9060040161196b565b600060405180830381600087803b1580156111e657600080fd5b505af11580156111fa573d6000803e3d6000fd5b505050508773ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fb7460e2a880f256ebef3406116ff3eee0cee51ebccdc2a40698f87ebb2e9c1a58a8a898960405161127894939291906118ce565b60405180910390a450505050505050505050565b60006112978361141c565b80156112a857506112a88383611481565b9392505050565b336112b86102e6565b73ffffffffffffffffffffffffffffffffffffffff16141580156112f95750336112e0610c7c565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611330576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600054610100900460ff166113c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016102c5565b6001805473ffffffffffffffffffffffffffffffffffffffff9384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560028054929093169116179055565b6000611448827f01ffc9a700000000000000000000000000000000000000000000000000000000611481565b801561147b5750611479827fffffffff00000000000000000000000000000000000000000000000000000000611481565b155b92915050565b604080517fffffffff000000000000000000000000000000000000000000000000000000008316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000178152825160009392849283928392918391908a617530fa92503d91506000519050828015611539575060208210155b80156115455750600081115b979650505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461157257600080fd5b50565b803563ffffffff8116811461158957600080fd5b919050565b60008083601f8401126115a057600080fd5b50813567ffffffffffffffff8111156115b857600080fd5b6020830191508360208285010111156115d057600080fd5b9250929050565b60008060008060008060a087890312156115f057600080fd5b86356115fb81611550565b9550602087013561160b81611550565b94506040870135935061162060608801611575565b9250608087013567ffffffffffffffff81111561163c57600080fd5b61164889828a0161158e565b979a9699509497509295939492505050565b6000815180845260005b8181101561168057602081850181015186830182015201611664565b81811115611692576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006112a8602083018461165a565b600080600080600080600060c0888a0312156116f357600080fd5b87356116fe81611550565b9650602088013561170e81611550565b9550604088013561171e81611550565b9450606088013561172e81611550565b93506080880135925060a088013567ffffffffffffffff81111561175157600080fd5b61175d8a828b0161158e565b989b979a50959850939692959293505050565b600080600080600080600060c0888a03121561178b57600080fd5b873561179681611550565b965060208801356117a681611550565b955060408801356117b681611550565b9450606088013593506117cb60808901611575565b925060a088013567ffffffffffffffff81111561175157600080fd5b6000602082840312156117f957600080fd5b81356112a881611550565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611863577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b60006020828403121561187a57600080fd5b81516112a881611550565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152606060408201526000611904606083018486611885565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808a1683528089166020840152808816604084015280871660608401525084608083015260c060a083015261195e60c083018486611885565b9998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8416815260606020820152600061199a606083018561165a565b905063ffffffff8316604083015294935050505056fea164736f6c634300080f000a00000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000255160806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b61236e80620001e36000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c80633687011a146100a95780633cb747bf146100c55780633e47158c146100e357806354fd4d50146101015780635c975abb1461011f578063761f44931461013d5780637f46ddb214610159578063927ede2d14610177578063aa55745214610195578063c4d66de8146101b1578063c89701a2146101cd578063dad544e0146101eb575b600080fd5b6100c360048036038101906100be9190611526565b610209565b005b6100cd610268565b6040516100da919061161f565b60405180910390f35b6100eb61028e565b6040516100f8919061165b565b60405180910390f35b6101096104e7565b604051610116919061170f565b60405180910390f35b610127610520565b604051610134919061174c565b60405180910390f35b61015760048036038101906101529190611767565b610525565b005b610161610949565b60405161016e9190611837565b60405180910390f35b61017f610973565b60405161018c919061161f565b60405180910390f35b6101af60048036038101906101aa9190611852565b61099d565b005b6101cb60048036038101906101c6919061193f565b610a25565b005b6101d5610b82565b6040516101e29190611837565b60405180910390f35b6101f3610ba8565b604051610200919061197b565b60405180910390f35b610211610c25565b610250576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161024790611a08565b60405180910390fd5b6102608686333388888888610cae565b505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806102bd7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b6110f9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146102fc57809150506104e4565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505161033f9190611a57565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b61039930600060405160200161037e929190611ac0565b60405160208183030381529060405280519060200120611104565b146103d0576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006104043060016040516020016103e9929190611ac0565b604051602081830303815290604052805190602001206110f9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146104b2578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610485573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104a99190611afe565b925050506104e4565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600681526020017f312e31302e31000000000000000000000000000000000000000000000000000081525081565b600090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614801561065f5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610623573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106479190611afe565b73ffffffffffffffffffffffffffffffffffffffff16145b61069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069590611b9d565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff160361070c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070390611c2f565b60405180910390fd5b610736877faecafc230000000000000000000000000000000000000000000000000000000061110f565b610775576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076c90611cc1565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e49190611afe565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610851576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084890611d79565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff1663a144819485856040518363ffffffff1660e01b815260040161088c929190611ac0565b600060405180830381600087803b1580156108a657600080fd5b505af11580156108ba573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f1f39bf6707b5d608453e0ae4c067b562bcc4c85c0f562ef5d2c774d2e7f131ac878787876040516109389493929190611de6565b60405180910390a450505050505050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610a0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0390611e98565b60405180910390fd5b610a1c8787338888888888610cae565b50505050505050565b60008060019054906101000a900460ff16159050808015610a565750600160008054906101000a900460ff1660ff16105b80610a835750610a6530611134565b158015610a825750600160008054906101000a900460ff1660ff16145b5b610ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab990611f2a565b60405180910390fd5b60016000806101000a81548160ff021916908360ff1602179055508015610aff576001600060016101000a81548160ff0219169083151502179055505b610b07611157565b610b2573420000000000000000000000000000000000000783611206565b8015610b7e5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610b759190611f92565b60405180910390a15b5050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bb261028e565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c209190611afe565b905090565b60003273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610c635760019050610cab565b60173373ffffffffffffffffffffffffffffffffffffffff163b03610ca557604051602081016040526020600082333c62ef0100815160e81c14915050610caa565b600090505b5b90565b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1603610d1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d149061201f565b60405180910390fd5b8773ffffffffffffffffffffffffffffffffffffffff16636352211e856040518263ffffffff1660e01b8152600401610d56919061203f565b602060405180830381865afa158015610d73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d979190611afe565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610e04576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfb906120cc565b60405180910390fd5b60008873ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e759190611afe565b90508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610ee5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610edc9061215e565b60405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff16639dc29fac88876040518363ffffffff1660e01b8152600401610f20929190611ac0565b600060405180830381600087803b158015610f3a57600080fd5b505af1158015610f4e573d6000803e3d6000fd5b505050506000818a8989898888604051602401610f71979695949392919061217e565b60405160208183030381529060405263761f449360e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633dbb202b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683886040518463ffffffff1660e01b81526004016110399392919061223b565b600060405180830381600087803b15801561105357600080fd5b505af1158015611067573d6000803e3d6000fd5b505050508773ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fb7460e2a880f256ebef3406116ff3eee0cee51ebccdc2a40698f87ebb2e9c1a58a8a89896040516110e59493929190611de6565b60405180910390a450505050505050505050565b600081549050919050565b600081549050919050565b600061111a836112db565b801561112c575061112b8383611328565b5b905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661117661028e565b73ffffffffffffffffffffffffffffffffffffffff16141580156111cd57503373ffffffffffffffffffffffffffffffffffffffff166111b4610ba8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611204576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060019054906101000a900460ff16611255576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124c906122eb565b60405180910390fd5b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000611307827f01ffc9a700000000000000000000000000000000000000000000000000000000611328565b8015611321575061131f8263ffffffff60e01b611328565b155b9050919050565b6000806301ffc9a760e01b836040516024016113449190612346565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000806000602060008551602087018a617530fa92503d915060005190508280156113cf575060208210155b80156113db5750600081115b94505050505092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061141c826113f1565b9050919050565b61142c81611411565b811461143757600080fd5b50565b60008135905061144981611423565b92915050565b6000819050919050565b6114628161144f565b811461146d57600080fd5b50565b60008135905061147f81611459565b92915050565b600063ffffffff82169050919050565b61149e81611485565b81146114a957600080fd5b50565b6000813590506114bb81611495565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126114e6576114e56114c1565b5b8235905067ffffffffffffffff811115611503576115026114c6565b5b60208301915083600182028301111561151f5761151e6114cb565b5b9250929050565b60008060008060008060a08789031215611543576115426113e7565b5b600061155189828a0161143a565b965050602061156289828a0161143a565b955050604061157389828a01611470565b945050606061158489828a016114ac565b935050608087013567ffffffffffffffff8111156115a5576115a46113ec565b5b6115b189828a016114d0565b92509250509295509295509295565b6000819050919050565b60006115e56115e06115db846113f1565b6115c0565b6113f1565b9050919050565b60006115f7826115ca565b9050919050565b6000611609826115ec565b9050919050565b611619816115fe565b82525050565b60006020820190506116346000830184611610565b92915050565b6000611645826115ec565b9050919050565b6116558161163a565b82525050565b6000602082019050611670600083018461164c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156116b0578082015181840152602081019050611695565b838111156116bf576000848401525b50505050565b6000601f19601f8301169050919050565b60006116e182611676565b6116eb8185611681565b93506116fb818560208601611692565b611704816116c5565b840191505092915050565b6000602082019050818103600083015261172981846116d6565b905092915050565b60008115159050919050565b61174681611731565b82525050565b6000602082019050611761600083018461173d565b92915050565b600080600080600080600060c0888a031215611786576117856113e7565b5b60006117948a828b0161143a565b97505060206117a58a828b0161143a565b96505060406117b68a828b0161143a565b95505060606117c78a828b0161143a565b94505060806117d88a828b01611470565b93505060a088013567ffffffffffffffff8111156117f9576117f86113ec565b5b6118058a828b016114d0565b925092505092959891949750929550565b6000611821826115ec565b9050919050565b61183181611816565b82525050565b600060208201905061184c6000830184611828565b92915050565b600080600080600080600060c0888a031215611871576118706113e7565b5b600061187f8a828b0161143a565b97505060206118908a828b0161143a565b96505060406118a18a828b0161143a565b95505060606118b28a828b01611470565b94505060806118c38a828b016114ac565b93505060a088013567ffffffffffffffff8111156118e4576118e36113ec565b5b6118f08a828b016114d0565b925092505092959891949750929550565b600061190c826113f1565b9050919050565b61191c81611901565b811461192757600080fd5b50565b60008135905061193981611913565b92915050565b600060208284031215611955576119546113e7565b5b60006119638482850161192a565b91505092915050565b61197581611411565b82525050565b6000602082019050611990600083018461196c565b92915050565b7f4552433732314272696467653a206163636f756e74206973206e6f742065787460008201527f65726e616c6c79206f776e656400000000000000000000000000000000000000602082015250565b60006119f2602d83611681565b91506119fd82611996565b604082019050919050565b60006020820190508181036000830152611a21816119e5565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611a628261144f565b9150611a6d8361144f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611aa657611aa5611a28565b5b828202905092915050565b611aba8161144f565b82525050565b6000604082019050611ad5600083018561196c565b611ae26020830184611ab1565b9392505050565b600081519050611af881611423565b92915050565b600060208284031215611b1457611b136113e7565b5b6000611b2284828501611ae9565b91505092915050565b7f4552433732314272696467653a2066756e6374696f6e2063616e206f6e6c792060008201527f62652063616c6c65642066726f6d20746865206f746865722062726964676500602082015250565b6000611b87603f83611681565b9150611b9282611b2b565b604082019050919050565b60006020820190508181036000830152611bb681611b7a565b9050919050565b7f4c324552433732314272696467653a206c6f63616c20746f6b656e2063616e6e60008201527f6f742062652073656c6600000000000000000000000000000000000000000000602082015250565b6000611c19602a83611681565b9150611c2482611bbd565b604082019050919050565b60006020820190508181036000830152611c4881611c0c565b9050919050565b7f4c324552433732314272696467653a206c6f63616c20746f6b656e20696e746560008201527f7266616365206973206e6f7420636f6d706c69616e7400000000000000000000602082015250565b6000611cab603683611681565b9150611cb682611c4f565b604082019050919050565b60006020820190508181036000830152611cda81611c9e565b9050919050565b7f4c324552433732314272696467653a2077726f6e672072656d6f746520746f6b60008201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433732312060208201527f6c6f63616c20746f6b656e000000000000000000000000000000000000000000604082015250565b6000611d63604b83611681565b9150611d6e82611ce1565b606082019050919050565b60006020820190508181036000830152611d9281611d56565b9050919050565b600082825260208201905092915050565b82818337600083830152505050565b6000611dc58385611d99565b9350611dd2838584611daa565b611ddb836116c5565b840190509392505050565b6000606082019050611dfb600083018761196c565b611e086020830186611ab1565b8181036040830152611e1b818486611db9565b905095945050505050565b7f4552433732314272696467653a206e667420726563697069656e742063616e6e60008201527f6f74206265206164647265737328302900000000000000000000000000000000602082015250565b6000611e82603083611681565b9150611e8d82611e26565b604082019050919050565b60006020820190508181036000830152611eb181611e75565b9050919050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000611f14602e83611681565b9150611f1f82611eb8565b604082019050919050565b60006020820190508181036000830152611f4381611f07565b9050919050565b6000819050919050565b600060ff82169050919050565b6000611f7c611f77611f7284611f4a565b6115c0565b611f54565b9050919050565b611f8c81611f61565b82525050565b6000602082019050611fa76000830184611f83565b92915050565b7f4c324552433732314272696467653a2072656d6f746520746f6b656e2063616e60008201527f6e6f742062652061646472657373283029000000000000000000000000000000602082015250565b6000612009603183611681565b915061201482611fad565b604082019050919050565b6000602082019050818103600083015261203881611ffc565b9050919050565b60006020820190506120546000830184611ab1565b92915050565b7f4c324552433732314272696467653a205769746864726177616c206973206e6f60008201527f74206265696e6720696e69746961746564206279204e4654206f776e65720000602082015250565b60006120b6603e83611681565b91506120c18261205a565b604082019050919050565b600060208201905081810360008301526120e5816120a9565b9050919050565b7f4c324552433732314272696467653a2072656d6f746520746f6b656e20646f6560008201527f73206e6f74206d6174636820676976656e2076616c7565000000000000000000602082015250565b6000612148603783611681565b9150612153826120ec565b604082019050919050565b600060208201905081810360008301526121778161213b565b9050919050565b600060c082019050612193600083018a61196c565b6121a0602083018961196c565b6121ad604083018861196c565b6121ba606083018761196c565b6121c76080830186611ab1565b81810360a08301526121da818486611db9565b905098975050505050505050565b600081519050919050565b60006121fe826121e8565b6122088185611d99565b9350612218818560208601611692565b612221816116c5565b840191505092915050565b61223581611485565b82525050565b6000606082019050612250600083018661196c565b818103602083015261226281856121f3565b9050612271604083018461222c565b949350505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b60006122d5602b83611681565b91506122e082612279565b604082019050919050565b60006020820190508181036000830152612304816122c8565b9050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6123408161230b565b82525050565b600060208201905061235b6000830184612337565b9291505056fea164736f6c634300080f000a000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1900000, "intent": "Deploy L2ERC721Bridge Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000cad608060405234801561001057600080fd5b50610c8d806100206000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80635cf24969116100f9578063c598591811610097578063e591b28211610071578063e591b28214610469578063e81b2c6d14610483578063f82061401461048c578063fe3d57101461049557600080fd5b8063c598591814610408578063d844471514610428578063dad544e01461046157600080fd5b80638381f58a116100d35780638381f58a146103c25780638b239f73146103d65780639e8c4966146103df578063b80777ea146103e857600080fd5b80635cf249691461038957806364ca23ef1461039257806368d5dca6146103a657600080fd5b80634397dfef1161016657806347af267b1161014057806347af267b146102ba5780634d5d9a2a146102dd57806354fd4d501461030e578063550fcdc91461035057600080fd5b80634397dfef14610277578063440a5e201461029f57806346a4d780146102a757600080fd5b806316d3bc7f116101a257806316d3bc7f14610202578063213268491461022f5780633db6be2b146102425780633e47158c1461024a57600080fd5b8063015d8eb9146101c9578063098999be146101de57806309bd5a60146101e6575b600080fd5b6101dc6101d7366004610ae1565b6104c6565b005b6101dc610605565b6101ef60025481565b6040519081526020015b60405180910390f35b6008546102169067ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016101f9565b60005b60405190151581526020016101f9565b6101dc610618565b610252610642565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101f9565b6040805173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee815260126020820152016101f9565b6101dc61084d565b6101dc6102b5366004610b53565b6108a4565b6102326102c8366004610b53565b60096020526000908152604090205460ff1681565b6008546102f99068010000000000000000900463ffffffff1681565b60405163ffffffff90911681526020016101f9565b60408051808201909152600581527f312e392e3000000000000000000000000000000000000000000000000000000060208201525b6040516101f99190610b6c565b60408051808201909152600381527f45544800000000000000000000000000000000000000000000000000000000006020820152610343565b6101ef60015481565b6003546102169067ffffffffffffffff1681565b6003546102f99068010000000000000000900463ffffffff1681565b6000546102169067ffffffffffffffff1681565b6101ef60055481565b6101ef60065481565b6000546102169068010000000000000000900467ffffffffffffffff1681565b6003546102f9906c01000000000000000000000000900463ffffffff1681565b60408051808201909152600581527f45746865720000000000000000000000000000000000000000000000000000006020820152610343565b6102526108b9565b73deaddeaddeaddeaddeaddeaddeaddeaddead0001610252565b6101ef60045481565b6101ef60075481565b6008546104b3906c01000000000000000000000000900461ffff1681565b60405161ffff90911681526020016101f9565b3373deaddeaddeaddeaddeaddeaddeaddeaddead00011461056d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60448201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000606482015260840160405180910390fd5b6000805467ffffffffffffffff98891668010000000000000000027fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116998916999099179890981790975560019490945560029290925560038054919094167fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000009190911617909255600491909155600555600655565b61060d61084d565b60a43560a01c600855565b61062061084d565b6dffff00000000000000000000000060b03560901c1660a43560a01c17600855565b60008061066d7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561069057919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026106d39190610bdf565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061072e906060015b604051602081830303815290604052805190602001205490565b14610765576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805130602082015260019181019190915260009061078790606001610714565b905073ffffffffffffffffffffffffffffffffffffffff81161561081b578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108149190610c43565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73deaddeaddeaddeaddeaddeaddeaddeaddead000133811461087757633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b6108ad33610936565b6108b681610a13565b50565b60006108c3610642565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561090d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109319190610c43565b905090565b73ffffffffffffffffffffffffffffffffffffffff811673deaddeaddeaddeaddeaddeaddeaddeaddead000114806109a057506109716108b9565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b806109dd57506109ae610642565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6108b6576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604090205460ff1615610a5c576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091559051909183917fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c9190a350565b803567ffffffffffffffff81168114610adc57600080fd5b919050565b600080600080600080600080610100898b031215610afe57600080fd5b610b0789610ac4565b9750610b1560208a01610ac4565b96506040890135955060608901359450610b3160808a01610ac4565b979a969950949793969560a0850135955060c08501359460e001359350915050565b600060208284031215610b6557600080fd5b5035919050565b600060208083528351808285015260005b81811015610b9957858101830151858201604001528201610b7d565b81811115610bab576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610c3e577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b600060208284031215610c5557600080fd5b815173ffffffffffffffffffffffffffffffffffffffff81168114610c7957600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001309608060405234801561001057600080fd5b506112e9806100206000396000f3fe608060405234801561001057600080fd5b50600436106101545760003560e01c8063015d8eb914610159578063098999be1461017557806309bd5a601461017f57806316d3bc7f1461019d57806321326849146101bb5780633db6be2b146101d95780633e47158c146101e35780634397dfef14610201578063440a5e201461022057806346a4d7801461022a57806347af267b146102465780634d5d9a2a1461027657806354fd4d5014610294578063550fcdc9146102b25780635cf24969146102d057806364ca23ef146102ee57806368d5dca61461030c5780638381f58a1461032a5780638b239f73146103485780639e8c496614610366578063b80777ea14610384578063c5985918146103a2578063d8444715146103c0578063dad544e0146103de578063e591b282146103fc578063e81b2c6d1461041a578063f820614014610438578063fe3d571014610456575b600080fd5b610173600480360381019061016e9190610d60565b610474565b005b61017d610590565b005b6101876105a3565b6040516101949190610e25565b60405180910390f35b6101a56105a9565b6040516101b29190610e4f565b60405180910390f35b6101c36105c3565b6040516101d09190610e85565b60405180910390f35b6101e16105c8565b005b6101eb6105eb565b6040516101f89190610f1f565b60405180910390f35b610209610844565b604051610217929190610f77565b60405180910390f35b610228610866565b005b610244600480360381019061023f9190610fa0565b6108b5565b005b610260600480360381019061025b9190610fa0565b6108ca565b60405161026d9190610e85565b60405180910390f35b61027e6108ea565b60405161028b9190610fec565b60405180910390f35b61029c6108fe565b6040516102a991906110a0565b60405180910390f35b6102ba61093b565b6040516102c791906110a0565b60405180910390f35b6102d8610978565b6040516102e591906110d1565b60405180910390f35b6102f661097e565b6040516103039190610e4f565b60405180910390f35b610314610998565b6040516103219190610fec565b60405180910390f35b6103326109ae565b60405161033f9190610e4f565b60405180910390f35b6103506109c6565b60405161035d91906110d1565b60405180910390f35b61036e6109cc565b60405161037b91906110d1565b60405180910390f35b61038c6109d2565b6040516103999190610e4f565b60405180910390f35b6103aa6109ec565b6040516103b79190610fec565b60405180910390f35b6103c8610a02565b6040516103d591906110a0565b60405180910390f35b6103e6610a3f565b6040516103f391906110ec565b60405180910390f35b610404610abc565b60405161041191906110ec565b60405180910390f35b610422610ad8565b60405161042f9190610e25565b60405180910390f35b610440610ade565b60405161044d91906110d1565b60405180910390f35b61045e610ae4565b60405161046b9190611124565b60405180910390f35b61047c610abc565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e0906111b1565b60405180910390fd5b876000806101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555086600060086101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550856001819055508460028190555083600360006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508260048190555081600581905550806006819055505050505050505050565b610598610866565b60a43560a01c600855565b60025481565b600860009054906101000a900467ffffffffffffffff1681565b600090565b6105d0610866565b60a43560a01c60b03560f01c818160601b1780600855505050565b60008061061a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b610af8565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146106595780915050610841565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505161069c9190611200565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b6106f63060006040516020016106db92919061125a565b60405160208183030381529060405280519060200120610b03565b1461072d576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061076130600160405160200161074692919061125a565b60405160208183030381529060405280519060200120610af8565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461080f578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080691906112af565b92505050610841565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee9150601290509091565b6000610870610abc565b90508033181561088857633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b6108be33610b0e565b6108c781610bf7565b50565b60096020528060005260406000206000915054906101000a900460ff1681565b60088054906101000a900463ffffffff1681565b60606040518060400160405280600581526020017f312e392e30000000000000000000000000000000000000000000000000000000815250905090565b60606040518060400160405280600381526020017f4554480000000000000000000000000000000000000000000000000000000000815250905090565b60015481565b600360009054906101000a900467ffffffffffffffff1681565b600360089054906101000a900463ffffffff1681565b60008054906101000a900467ffffffffffffffff1681565b60055481565b60065481565b600060089054906101000a900467ffffffffffffffff1681565b6003600c9054906101000a900463ffffffff1681565b60606040518060400160405280600581526020017f4574686572000000000000000000000000000000000000000000000000000000815250905090565b6000610a496105eb565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab791906112af565b905090565b600073deaddeaddeaddeaddeaddeaddeaddeaddead0001905090565b60045481565b60075481565b6008600c9054906101000a900461ffff1681565b600081549050919050565b600081549050919050565b610b16610abc565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610b815750610b52610a3f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b80610bbe5750610b8f6105eb565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610bf4576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b6009600082815260200190815260200160002060009054906101000a900460ff1615610c4f576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60016009600083815260200190815260200160002060006101000a81548160ff02191690831515021790555060011515817fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c60405160405180910390a350565b600080fd5b600067ffffffffffffffff82169050919050565b610cd181610cb4565b8114610cdc57600080fd5b50565b600081359050610cee81610cc8565b92915050565b6000819050919050565b610d0781610cf4565b8114610d1257600080fd5b50565b600081359050610d2481610cfe565b92915050565b6000819050919050565b610d3d81610d2a565b8114610d4857600080fd5b50565b600081359050610d5a81610d34565b92915050565b600080600080600080600080610100898b031215610d8157610d80610caf565b5b6000610d8f8b828c01610cdf565b9850506020610da08b828c01610cdf565b9750506040610db18b828c01610d15565b9650506060610dc28b828c01610d4b565b9550506080610dd38b828c01610cdf565b94505060a0610de48b828c01610d4b565b93505060c0610df58b828c01610d15565b92505060e0610e068b828c01610d15565b9150509295985092959890939650565b610e1f81610d2a565b82525050565b6000602082019050610e3a6000830184610e16565b92915050565b610e4981610cb4565b82525050565b6000602082019050610e646000830184610e40565b92915050565b60008115159050919050565b610e7f81610e6a565b82525050565b6000602082019050610e9a6000830184610e76565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000610ee5610ee0610edb84610ea0565b610ec0565b610ea0565b9050919050565b6000610ef782610eca565b9050919050565b6000610f0982610eec565b9050919050565b610f1981610efe565b82525050565b6000602082019050610f346000830184610f10565b92915050565b6000610f4582610ea0565b9050919050565b610f5581610f3a565b82525050565b600060ff82169050919050565b610f7181610f5b565b82525050565b6000604082019050610f8c6000830185610f4c565b610f996020830184610f68565b9392505050565b600060208284031215610fb657610fb5610caf565b5b6000610fc484828501610d4b565b91505092915050565b600063ffffffff82169050919050565b610fe681610fcd565b82525050565b60006020820190506110016000830184610fdd565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611041578082015181840152602081019050611026565b83811115611050576000848401525b50505050565b6000601f19601f8301169050919050565b600061107282611007565b61107c8185611012565b935061108c818560208601611023565b61109581611056565b840191505092915050565b600060208201905081810360008301526110ba8184611067565b905092915050565b6110cb81610cf4565b82525050565b60006020820190506110e660008301846110c2565b92915050565b60006020820190506111016000830184610f4c565b92915050565b600061ffff82169050919050565b61111e81611107565b82525050565b60006020820190506111396000830184611115565b92915050565b7f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60008201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000602082015250565b600061119b603b83611012565b91506111a68261113f565b604082019050919050565b600060208201905081810360008301526111ca8161118e565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061120b82610cf4565b915061121683610cf4565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561124f5761124e6111d1565b5b828202905092915050565b600060408201905061126f6000830185610f4c565b61127c60208301846110c2565b9392505050565b61128c81610f3a565b811461129757600080fd5b50565b6000815190506112a981611283565b92915050565b6000602082840312156112c5576112c4610caf565b5b60006112d38482850161129a565b9150509291505056fea164736f6c634300080f000a0000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 750000, "intent": "Deploy L1Block Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000006e9608060405234801561001057600080fd5b506106c9806100206000396000f3fe6080604052600436106100695760003560e01c806382e3702d1161004357806382e3702d14610120578063c2b3e5ac14610160578063ecc704281461017357600080fd5b80633f827a5a1461009257806344df8e70146100bf57806354fd4d50146100d457600080fd5b3661008d5761008b33620186a0604051806020016040528060008152506101d8565b005b600080fd5b34801561009e57600080fd5b506100a7600181565b60405161ffff90911681526020015b60405180910390f35b3480156100cb57600080fd5b5061008b61039c565b3480156100e057600080fd5b50604080518082018252600581527f312e322e30000000000000000000000000000000000000000000000000000000602082015290516100b691906104c7565b34801561012c57600080fd5b5061015061013b3660046104e1565b60006020819052908152604090205460ff1681565b60405190151581526020016100b6565b61008b61016e366004610529565b6101d8565b34801561017f57600080fd5b506101ca6001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b6040519081526020016100b6565b600061026e6040518060c001604052806102326001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b815233602082015273ffffffffffffffffffffffffffffffffffffffff871660408201523460608201526080810186905260a0018490526103d4565b600081815260208190526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055905073ffffffffffffffffffffffffffffffffffffffff8416336103096001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161033e949392919061062d565b60405180910390a45050600180547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8082168301167fffff0000000000000000000000000000000000000000000000000000000000009091161790555050565b476103a681610421565b60405181907f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f90600090a250565b80516020808301516040808501516060860151608087015160a0880151935160009761040497909695910161065d565b604051602081830303815290604052805190602001209050919050565b8060405161042e90610450565b6040518091039082f090508015801561044b573d6000803e3d6000fd5b505050565b6008806106b583390190565b6000815180845260005b8181101561048257602081850181015186830182015201610466565b81811115610494576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104da602083018461045c565b9392505050565b6000602082840312156104f357600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060006060848603121561053e57600080fd5b833573ffffffffffffffffffffffffffffffffffffffff8116811461056257600080fd5b925060208401359150604084013567ffffffffffffffff8082111561058657600080fd5b818601915086601f83011261059a57600080fd5b8135818111156105ac576105ac6104fa565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156105f2576105f26104fa565b8160405282815289602084870101111561060b57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b84815283602082015260806040820152600061064c608083018561045c565b905082606083015295945050505050565b868152600073ffffffffffffffffffffffffffffffffffffffff808816602084015280871660408401525084606083015283608083015260c060a08301526106a860c083018461045c565b9897505050505050505056fe608060405230fffea164736f6c634300080f000a0000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000009fb608060405234801561001057600080fd5b506109db806100206000396000f3fe6080604052600436106100595760003560e01c80633f827a5a1461008257806344df8e70146100ad57806354fd4d50146100c457806382e3702d146100ef578063c2b3e5ac1461012c578063ecc70428146101485761007d565b3661007d5761007b33620186a060405180602001604052806000815250610173565b005b600080fd5b34801561008e57600080fd5b50610097610307565b6040516100a491906104a4565b60405180910390f35b3480156100b957600080fd5b506100c261030c565b005b3480156100d057600080fd5b506100d961034a565b6040516100e69190610558565b60405180910390f35b3480156100fb57600080fd5b50610116600480360381019061011191906105c4565b610387565b604051610123919061060c565b60405180910390f35b610146600480360381019061014191906107f0565b610173565b005b34801561015457600080fd5b5061015d6103a7565b60405161016a919061086e565b60405180910390f35b60006101dd6040518060c0016040528061018b6103a7565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff168152602001348152602001858152602001848152506103e5565b9050600160008083815260200190815260200160002060006101000a81548160ff0219169083151502179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff166102406103a7565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161027594939291906108ed565b60405180910390a46001600081819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660010191906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505050565b600181565b600047905061031a81610437565b807f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f60405160405180910390a250565b60606040518060400160405280600581526020017f312e322e30000000000000000000000000000000000000000000000000000000815250905090565b60006020528060005260406000206000915054906101000a900460ff1681565b60006103e0600160009054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001610466565b905090565b6000816000015182602001518360400151846060015185608001518660a0015160405160200161041a96959493929190610948565b604051602081830303815290604052805190602001209050919050565b806040516104449061047b565b6040518091039082f0905080158015610461573d6000803e3d6000fd5b505050565b600080838360f01b1790508091505092915050565b601e806109b183390190565b600061ffff82169050919050565b61049e81610487565b82525050565b60006020820190506104b96000830184610495565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104f95780820151818401526020810190506104de565b83811115610508576000848401525b50505050565b6000601f19601f8301169050919050565b600061052a826104bf565b61053481856104ca565b93506105448185602086016104db565b61054d8161050e565b840191505092915050565b60006020820190508181036000830152610572818461051f565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b6105a18161058e565b81146105ac57600080fd5b50565b6000813590506105be81610598565b92915050565b6000602082840312156105da576105d9610584565b5b60006105e8848285016105af565b91505092915050565b60008115159050919050565b610606816105f1565b82525050565b600060208201905061062160008301846105fd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061065282610627565b9050919050565b61066281610647565b811461066d57600080fd5b50565b60008135905061067f81610659565b92915050565b6000819050919050565b61069881610685565b81146106a357600080fd5b50565b6000813590506106b58161068f565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6106fd8261050e565b810181811067ffffffffffffffff8211171561071c5761071b6106c5565b5b80604052505050565b600061072f61057a565b905061073b82826106f4565b919050565b600067ffffffffffffffff82111561075b5761075a6106c5565b5b6107648261050e565b9050602081019050919050565b82818337600083830152505050565b600061079361078e84610740565b610725565b9050828152602081018484840111156107af576107ae6106c0565b5b6107ba848285610771565b509392505050565b600082601f8301126107d7576107d66106bb565b5b81356107e7848260208601610780565b91505092915050565b60008060006060848603121561080957610808610584565b5b600061081786828701610670565b9350506020610828868287016106a6565b925050604084013567ffffffffffffffff81111561084957610848610589565b5b610855868287016107c2565b9150509250925092565b61086881610685565b82525050565b6000602082019050610883600083018461085f565b92915050565b600081519050919050565b600082825260208201905092915050565b60006108b082610889565b6108ba8185610894565b93506108ca8185602086016104db565b6108d38161050e565b840191505092915050565b6108e78161058e565b82525050565b6000608082019050610902600083018761085f565b61090f602083018661085f565b818103604083015261092181856108a5565b905061093060608301846108de565b95945050505050565b61094281610647565b82525050565b600060c08201905061095d600083018961085f565b61096a6020830188610939565b6109776040830187610939565b610984606083018661085f565b610991608083018561085f565b81810360a08301526109a381846108a5565b905097965050505050505056fe60806040523073ffffffffffffffffffffffffffffffffffffffff16fffea164736f6c634300080f000a0000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 650000, "intent": "Deploy L2ToL1MessagePasser Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000003f8d608060405234801561001057600080fd5b5061001961001e565b6100de565b600154610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60015460ff90811610156100dc576001805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b613ea0806100ed6000396000f3fe60806040523480156200001157600080fd5b5060043610620000cd5760003560e01c8063d2382242116200007f578063dad544e01162000062578063dad544e014620001d6578063e78cea9214620001e0578063ee9a31a2146200020757600080fd5b8063d238224214620001b5578063d97df65214620001bf57600080fd5b80635572acae11620000b45780635572acae14620001525780637d1d0c5b1462000189578063cd6dc687146200019c57600080fd5b80633e47158c14620000d257806354fd4d501462000106575b600080fd5b620000dc6200022c565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b620001436040518060400160405280600581526020017f312e352e3100000000000000000000000000000000000000000000000000000081525081565b604051620000fd9190620009ad565b6200017862000163366004620009ef565b60006020819052908152604090205460ff1681565b6040519015158152602001620000fd565b6002545b604051908152602001620000fd565b620001b3620001ad36600462000a0f565b62000443565b005b6200018d60025481565b620000dc620001d036600462000b20565b62000628565b620000dc62000826565b600154620000dc9062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60015462010000900473ffffffffffffffffffffffffffffffffffffffff16620000dc565b600080620002587fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156200027c57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516002620002c1919062000b9f565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000091909117906200031d906060015b604051602081830303815290604052805190602001205490565b1462000355576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051306020820152600191810191909152600090620003799060600162000303565b905073ffffffffffffffffffffffffffffffffffffffff81161562000411578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200040a919062000c04565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600154610100900460ff16158080156200046157506001805460ff16105b806200047c5750303b1580156200047c57506001805460ff16145b6200050e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168117905580156200056c57600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b62000576620008a8565b600180547fffffffffffffffffffff0000000000000000000000000000000000000000ffff166201000073ffffffffffffffffffffffffffffffffffffffff861602179055600282905580156200062357600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b600073ffffffffffffffffffffffffffffffffffffffff8416620006f6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526044602482018190527f4f7074696d69736d4d696e7461626c65455243373231466163746f72793a204c908201527f3120746f6b656e20616464726573732063616e6e6f742062652061646472657360648201527f7328302900000000000000000000000000000000000000000000000000000000608482015260a40162000505565b60008484846040516020016200070f9392919062000c24565b604051602081830303815290604052805190602001209050600081600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600254888888604051620007619062000931565b6200077195949392919062000c73565b8190604051809103906000f590508015801562000792573d6000803e3d6000fd5b5073ffffffffffffffffffffffffffffffffffffffff8181166000818152602081815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905590513381529394509189169290917fe72783bb8e0ca31286b85278da59684dd814df9762a52f0837f89edd1483b299910160405180910390a395945050505050565b6000620008326200022c565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200087d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008a3919062000c04565b905090565b33620008b36200022c565b73ffffffffffffffffffffffffffffffffffffffff1614158015620008f7575033620008de62000826565b73ffffffffffffffffffffffffffffffffffffffff1614155b156200092f576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6131bf8062000cd583390190565b6000815180845260005b81811015620009675760208185018101518683018201520162000949565b818111156200097a576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000620009c260208301846200093f565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff81168114620009ec57600080fd5b50565b60006020828403121562000a0257600080fd5b8135620009c281620009c9565b6000806040838503121562000a2357600080fd5b823562000a3081620009c9565b946020939093013593505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011262000a7f57600080fd5b813567ffffffffffffffff8082111562000a9d5762000a9d62000a3e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171562000ae65762000ae662000a3e565b8160405283815286602085880101111562000b0057600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121562000b3657600080fd5b833562000b4381620009c9565b9250602084013567ffffffffffffffff8082111562000b6157600080fd5b62000b6f8783880162000a6d565b9350604086013591508082111562000b8657600080fd5b5062000b958682870162000a6d565b9150509250925092565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000bff577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b60006020828403121562000c1757600080fd5b8151620009c281620009c9565b73ffffffffffffffffffffffffffffffffffffffff8416815260606020820152600062000c5560608301856200093f565b828103604084015262000c6981856200093f565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835286602084015280861660408401525060a0606083015262000cb460a08301856200093f565b828103608084015262000cc881856200093f565b9897505050505050505056fe60e06040523480156200001157600080fd5b50604051620031bf380380620031bf83398101604081905262000034916200062d565b8181600062000044838262000756565b50600162000053828262000756565b5050506001600160a01b038516620000d85760405162461bcd60e51b815260206004820152603360248201527f4f7074696d69736d4d696e7461626c654552433732313a20627269646765206360448201527f616e6e6f7420626520616464726573732830290000000000000000000000000060648201526084015b60405180910390fd5b83600003620001505760405162461bcd60e51b815260206004820152603660248201527f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465206360448201527f6861696e2069642063616e6e6f74206265207a65726f000000000000000000006064820152608401620000cf565b6001600160a01b038316620001ce5760405162461bcd60e51b815260206004820152603960248201527f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465207460448201527f6f6b656e2063616e6e6f742062652061646472657373283029000000000000006064820152608401620000cf565b60808490526001600160a01b0383811660a081905290861660c0526200020290601462000256602090811b62000eed17901c565b62000218856200041660201b620011301760201c565b6040516020016200022b92919062000822565b604051602081830303815290604052600a90816200024a919062000756565b50505050505062000993565b6060600062000267836002620008ac565b62000274906002620008ce565b6001600160401b038111156200028e576200028e62000553565b6040519080825280601f01601f191660200182016040528015620002b9576020820181803683370190505b509050600360fc1b81600081518110620002d757620002d7620008e9565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620003095762000309620008e9565b60200101906001600160f81b031916908160001a90535060006200032f846002620008ac565b6200033c906001620008ce565b90505b6001811115620003be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620003745762000374620008e9565b1a60f81b8282815181106200038d576200038d620008e9565b60200101906001600160f81b031916908160001a90535060049490941c93620003b681620008ff565b90506200033f565b5083156200040f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620000cf565b9392505050565b6060816000036200043e5750506040805180820190915260018152600360fc1b602082015290565b8160005b81156200046e5780620004558162000919565b9150620004669050600a836200094b565b915062000442565b6000816001600160401b038111156200048b576200048b62000553565b6040519080825280601f01601f191660200182016040528015620004b6576020820181803683370190505b5090505b84156200052e57620004ce60018362000962565b9150620004dd600a866200097c565b620004ea906030620008ce565b60f81b818381518110620005025762000502620008e9565b60200101906001600160f81b031916908160001a90535062000526600a866200094b565b9450620004ba565b949350505050565b80516001600160a01b03811681146200054e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620005865781810151838201526020016200056c565b8381111562000596576000848401525b50505050565b600082601f830112620005ae57600080fd5b81516001600160401b0380821115620005cb57620005cb62000553565b604051601f8301601f19908116603f01168101908282118183101715620005f657620005f662000553565b816040528381528660208588010111156200061057600080fd5b6200062384602083016020890162000569565b9695505050505050565b600080600080600060a086880312156200064657600080fd5b620006518662000536565b945060208601519350620006686040870162000536565b60608701519093506001600160401b03808211156200068657600080fd5b6200069489838a016200059c565b93506080880151915080821115620006ab57600080fd5b50620006ba888289016200059c565b9150509295509295909350565b600181811c90821680620006dc57607f821691505b602082108103620006fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200075157600081815260208120601f850160051c810160208610156200072c5750805b601f850160051c820191505b818110156200074d5782815560010162000738565b5050505b505050565b81516001600160401b0381111562000772576200077262000553565b6200078a81620007838454620006c7565b8462000703565b602080601f831160018114620007c25760008415620007a95750858301515b600019600386901b1c1916600185901b1785556200074d565b600085815260208120601f198616915b82811015620007f357888601518255948401946001909101908401620007d2565b5085821015620008125787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6832ba3432b932bab69d60b91b8152600083516200084881600985016020880162000569565b600160fe1b60099184019182015283516200086b81600a84016020880162000569565b712f746f6b656e5552493f75696e743235363d60701b600a9290910191820152601c01949350505050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615620008c957620008c962000896565b500290565b60008219821115620008e457620008e462000896565b500190565b634e487b7160e01b600052603260045260246000fd5b60008162000911576200091162000896565b506000190190565b6000600182016200092e576200092e62000896565b5060010190565b634e487b7160e01b600052601260045260246000fd5b6000826200095d576200095d62000935565b500490565b60008282101562000977576200097762000896565b500390565b6000826200098e576200098e62000935565b500690565b60805160a05160c0516127d9620009e6600039600081816103e20152818161047a01528181610b210152610c430152600081816101e001526103bc015260008181610329015261040801526127d96000f3fe608060405234801561001057600080fd5b50600436106101ae5760003560e01c80637d1d0c5b116100ee578063c87b56dd11610097578063e78cea9211610071578063e78cea92146103e0578063e951819614610406578063e985e9c51461042c578063ee9a31a21461047557600080fd5b8063c87b56dd1461039f578063d547cfb7146103b2578063d6c0b2c4146103ba57600080fd5b8063a1448194116100c8578063a144819414610366578063a22cb46514610379578063b88d4fde1461038c57600080fd5b80637d1d0c5b1461032457806395d89b411461034b5780639dc29fac1461035357600080fd5b806323b872dd1161015b5780634f6ccce7116101355780634f6ccce7146102af57806354fd4d50146102c25780636352211e146102fe57806370a082311461031157600080fd5b806323b872dd146102765780632f745c591461028957806342842e0e1461029c57600080fd5b8063081812fc1161018c578063081812fc1461023c578063095ea7b31461024f57806318160ddd1461026457600080fd5b806301ffc9a7146101b3578063033964be146101db57806306fdde0314610227575b600080fd5b6101c66101c1366004612226565b61049c565b60405190151581526020015b60405180910390f35b6102027f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d2565b61022f6104fa565b6040516101d291906122b9565b61020261024a3660046122cc565b61058c565b61026261025d36600461230e565b6105c0565b005b6008545b6040519081526020016101d2565b610262610284366004612338565b610751565b61026861029736600461230e565b6107f2565b6102626102aa366004612338565b6108c1565b6102686102bd3660046122cc565b6108dc565b61022f6040518060400160405280600581526020017f312e332e3200000000000000000000000000000000000000000000000000000081525081565b61020261030c3660046122cc565b61099a565b61026861031f366004612374565b610a2c565b6102687f000000000000000000000000000000000000000000000000000000000000000081565b61022f610afa565b61026261036136600461230e565b610b09565b61026261037436600461230e565b610c2b565b61026261038736600461238f565b610d42565b61026261039a3660046123fa565b610d51565b61022f6103ad3660046122cc565b610df9565b61022f610e5f565b7f0000000000000000000000000000000000000000000000000000000000000000610202565b7f0000000000000000000000000000000000000000000000000000000000000000610202565b7f0000000000000000000000000000000000000000000000000000000000000000610268565b6101c661043a3660046124f4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020908152604080832093909416825291909152205460ff1690565b6102027f000000000000000000000000000000000000000000000000000000000000000081565b60007faecafc23000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083168114806104f357506104f38361126d565b9392505050565b60606000805461050990612527565b80601f016020809104026020016040519081016040528092919081815260200182805461053590612527565b80156105825780601f1061055757610100808354040283529160200191610582565b820191906000526020600020905b81548152906001019060200180831161056557829003601f168201915b5050505050905090565b6000610597826112c3565b5060009081526004602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b60006105cb8261099a565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361068d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff821614806106b657506106b6813361043a565b610742576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610684565b61074c8383611351565b505050565b61075b33826113f1565b6107e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201527f72206e6f7220617070726f7665640000000000000000000000000000000000006064820152608401610684565b61074c8383836114b0565b60006107fd83610a2c565b821061088b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201527f74206f6620626f756e64730000000000000000000000000000000000000000006064820152608401610684565b5073ffffffffffffffffffffffffffffffffffffffff919091166000908152600660209081526040808320938352929052205490565b61074c83838360405180602001604052806000815250610d51565b60006108e760085490565b8210610975576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201527f7574206f6620626f756e647300000000000000000000000000000000000000006064820152608401610684565b600882815481106109885761098861257a565b90600052602060002001549050919050565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff1680610a26576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610684565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff8216610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e657200000000000000000000000000000000000000000000006064820152608401610684565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526003602052604090205490565b60606001805461050990612527565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610bce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f4f7074696d69736d4d696e7461626c654552433732313a206f6e6c792062726960448201527f6467652063616e2063616c6c20746869732066756e6374696f6e0000000000006064820152608401610684565b610bd781611722565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610c1f91815260200190565b60405180910390a25050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610cf0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f4f7074696d69736d4d696e7461626c654552433732313a206f6e6c792062726960448201527f6467652063616e2063616c6c20746869732066756e6374696f6e0000000000006064820152608401610684565b610cfa82826117fb565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688582604051610c1f91815260200190565b610d4d338383611815565b5050565b610d5b33836113f1565b610de7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201527f72206e6f7220617070726f7665640000000000000000000000000000000000006064820152608401610684565b610df384848484611942565b50505050565b6060610e04826112c3565b6000610e0e6119e5565b90506000815111610e2e57604051806020016040528060008152506104f3565b80610e3884611130565b604051602001610e499291906125a9565b6040516020818303038152906040529392505050565b600a8054610e6c90612527565b80601f0160208091040260200160405190810160405280929190818152602001828054610e9890612527565b8015610ee55780601f10610eba57610100808354040283529160200191610ee5565b820191906000526020600020905b815481529060010190602001808311610ec857829003601f168201915b505050505081565b60606000610efc836002612607565b610f07906002612644565b67ffffffffffffffff811115610f1f57610f1f6123cb565b6040519080825280601f01601f191660200182016040528015610f49576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610f8057610f8061257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610fe357610fe361257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600061101f846002612607565b61102a906001612644565b90505b60018111156110c7577f303132333435363738396162636465660000000000000000000000000000000085600f166010811061106b5761106b61257a565b1a60f81b8282815181106110815761108161257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c936110c08161265c565b905061102d565b5083156104f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610684565b60608160000361117357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b811561119d578061118781612691565b91506111969050600a836126f8565b9150611177565b60008167ffffffffffffffff8111156111b8576111b86123cb565b6040519080825280601f01601f1916602001820160405280156111e2576020820181803683370190505b5090505b8415611265576111f760018361270c565b9150611204600a86612723565b61120f906030612644565b60f81b8183815181106112245761122461257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535061125e600a866126f8565b94506111e6565b949350505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f780e9d63000000000000000000000000000000000000000000000000000000001480610a265750610a26826119f4565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1661134e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610684565b50565b600081815260046020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841690811790915581906113ab8261099a565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000806113fd8361099a565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061146b575073ffffffffffffffffffffffffffffffffffffffff80821660009081526005602090815260408083209388168352929052205460ff165b8061126557508373ffffffffffffffffffffffffffffffffffffffff166114918461058c565b73ffffffffffffffffffffffffffffffffffffffff1614949350505050565b8273ffffffffffffffffffffffffffffffffffffffff166114d08261099a565b73ffffffffffffffffffffffffffffffffffffffff1614611573576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201527f6f776e65720000000000000000000000000000000000000000000000000000006064820152608401610684565b73ffffffffffffffffffffffffffffffffffffffff8216611615576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610684565b611620838383611ad7565b61162b600082611351565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260036020526040812080546001929061166190849061270c565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260036020526040812080546001929061169c908490612644565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff86811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b600061172d8261099a565b905061173b81600084611ad7565b611746600083611351565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260036020526040812080546001929061177c90849061270c565b909155505060008281526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001690555183919073ffffffffffffffffffffffffffffffffffffffff8416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b610d4d828260405180602001604052806000815250611bdd565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610684565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526005602090815260408083209487168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61194d8484846114b0565b61195984848484611c80565b610df3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608401610684565b6060600a805461050990612527565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f80ac58cd000000000000000000000000000000000000000000000000000000001480611a8757507fffffffff0000000000000000000000000000000000000000000000000000000082167f5b5e139f00000000000000000000000000000000000000000000000000000000145b80610a2657507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610a26565b73ffffffffffffffffffffffffffffffffffffffff8316611b3f57611b3a81600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b611b7c565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611b7c57611b7c8382611e73565b73ffffffffffffffffffffffffffffffffffffffff8216611ba05761074c81611f2a565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461074c5761074c8282611fd9565b611be7838361202a565b611bf46000848484611c80565b61074c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608401610684565b600073ffffffffffffffffffffffffffffffffffffffff84163b15611e68576040517f150b7a0200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85169063150b7a0290611cf7903390899088908890600401612737565b6020604051808303816000875af1925050508015611d50575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252611d4d91810190612780565b60015b611e1d573d808015611d7e576040519150601f19603f3d011682016040523d82523d6000602084013e611d83565b606091505b508051600003611e15576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608401610684565b805181602001fd5b7fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a0200000000000000000000000000000000000000000000000000000000149050611265565b506001949350505050565b60006001611e8084610a2c565b611e8a919061270c565b600083815260076020526040902054909150808214611eea5773ffffffffffffffffffffffffffffffffffffffff841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b50600091825260076020908152604080842084905573ffffffffffffffffffffffffffffffffffffffff9094168352600681528383209183525290812055565b600854600090611f3c9060019061270c565b60008381526009602052604081205460088054939450909284908110611f6457611f6461257a565b906000526020600020015490508060088381548110611f8557611f8561257a565b6000918252602080832090910192909255828152600990915260408082208490558582528120556008805480611fbd57611fbd61279d565b6001900381819060005260206000200160009055905550505050565b6000611fe483610a2c565b73ffffffffffffffffffffffffffffffffffffffff9093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b73ffffffffffffffffffffffffffffffffffffffff82166120a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610684565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1615612133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610684565b61213f60008383611ad7565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600360205260408120805460019290612175908490612644565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461134e57600080fd5b60006020828403121561223857600080fd5b81356104f3816121f8565b60005b8381101561225e578181015183820152602001612246565b83811115610df35750506000910152565b60008151808452612287816020860160208601612243565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104f3602083018461226f565b6000602082840312156122de57600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461230957600080fd5b919050565b6000806040838503121561232157600080fd5b61232a836122e5565b946020939093013593505050565b60008060006060848603121561234d57600080fd5b612356846122e5565b9250612364602085016122e5565b9150604084013590509250925092565b60006020828403121561238657600080fd5b6104f3826122e5565b600080604083850312156123a257600080fd5b6123ab836122e5565b9150602083013580151581146123c057600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000806080858703121561241057600080fd5b612419856122e5565b9350612427602086016122e5565b925060408501359150606085013567ffffffffffffffff8082111561244b57600080fd5b818701915087601f83011261245f57600080fd5b813581811115612471576124716123cb565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156124b7576124b76123cb565b816040528281528a60208487010111156124d057600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561250757600080fd5b612510836122e5565b915061251e602084016122e5565b90509250929050565b600181811c9082168061253b57607f821691505b602082108103612574577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600083516125bb818460208801612243565b8351908301906125cf818360208801612243565b01949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561263f5761263f6125d8565b500290565b60008219821115612657576126576125d8565b500190565b60008161266b5761266b6125d8565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036126c2576126c26125d8565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082612707576127076126c9565b500490565b60008282101561271e5761271e6125d8565b500390565b600082612732576127326126c9565b500690565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152612776608083018461226f565b9695505050505050565b60006020828403121561279257600080fd5b81516104f3816121f8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea164736f6c634300080f000aa164736f6c634300080f000a00000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000005e9560806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d4565b60018054906101000a900460ff161562000079576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000709062000177565b60405180910390fd5b60ff8016600160009054906101000a900460ff1660ff161015620000ee5760ff600160006101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e59190620001b7565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015f602783620000f0565b91506200016c8262000101565b604082019050919050565b60006020820190508181036000830152620001928162000150565b9050919050565b600060ff82169050919050565b620001b18162000199565b82525050565b6000602082019050620001ce6000830184620001a6565b92915050565b615cb180620001e46000396000f3fe60806040523480156200001157600080fd5b50600436106200009a5760003560e01c80633e47158c146200009f57806354fd4d5014620000c15780635572acae14620000e35780637d1d0c5b1462000119578063cd6dc687146200013b578063d2382242146200015b578063d97df652146200017d578063dad544e014620001b3578063e78cea9214620001d5578063ee9a31a214620001f7575b600080fd5b620000a962000219565b604051620000b8919062000aba565b60405180910390f35b620000cb62000486565b604051620000da919062000b7b565b60405180910390f35b620001016004803603810190620000fb919062000bf8565b620004bf565b60405162000110919062000c47565b60405180910390f35b62000123620004df565b60405162000132919062000c7f565b60405180910390f35b62000159600480360381019062000153919062000ccd565b620004e9565b005b620001656200067f565b60405162000174919062000c7f565b60405180910390f35b6200019b600480360381019062000195919062000e65565b62000685565b604051620001aa919062000f10565b60405180910390f35b620001bd62000861565b604051620001cc919062000f10565b60405180910390f35b620001df620008e3565b604051620001ee919062000f10565b60405180910390f35b6200020162000909565b60405162000210919062000f10565b60405180910390f35b6000806200024a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b62000933565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146200028b578091505062000483565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051620002d0919062000f5c565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b6200032e3060006040516020016200031292919062000fbd565b604051602081830303815290604052805190602001206200093e565b1462000366576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006200039e3060016040516020016200038292919062000fbd565b6040516020818303038152906040528051906020012062000933565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161462000451578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000421573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000447919062001001565b9250505062000483565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e352e3100000000000000000000000000000000000000000000000000000081525081565b60006020528060005260406000206000915054906101000a900460ff1681565b6000600254905090565b600060018054906101000a900460ff161590508080156200051b575060018060009054906101000a900460ff1660ff16105b806200054d57506200052d3062000949565b1580156200054c575060018060009054906101000a900460ff1660ff16145b5b6200058f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200058690620010a9565b60405180910390fd5b60018060006101000a81548160ff021916908360ff1602179055508015620005cc5760018060016101000a81548160ff0219169083151502179055505b620005d66200096c565b82600160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160028190555080156200067a5760006001806101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516200067191906200111b565b60405180910390a15b505050565b60025481565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603620006f8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006ef90620011d4565b60405180910390fd5b60008484846040516020016200071193929190620011f6565b604051602081830303815290604052805190602001209050600081600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600254888888604051620007639062000a21565b6200077395949392919062001241565b8190604051809103906000f590508015801562000794573d6000803e3d6000fd5b50905060016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fe72783bb8e0ca31286b85278da59684dd814df9762a52f0837f89edd1483b299336040516200084d919062000f10565b60405180910390a380925050509392505050565b60006200086d62000219565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620008b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008de919062001001565b905090565b600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081549050919050565b600081549050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff166200098d62000219565b73ffffffffffffffffffffffffffffffffffffffff1614158015620009e757503373ffffffffffffffffffffffffffffffffffffffff16620009ce62000861565b73ffffffffffffffffffffffffffffffffffffffff1614155b1562000a1f576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6149f880620012ad83390190565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600062000a7a62000a7462000a6e8462000a2f565b62000a4f565b62000a2f565b9050919050565b600062000a8e8262000a59565b9050919050565b600062000aa28262000a81565b9050919050565b62000ab48162000a95565b82525050565b600060208201905062000ad1600083018462000aa9565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101562000b1357808201518184015260208101905062000af6565b8381111562000b23576000848401525b50505050565b6000601f19601f8301169050919050565b600062000b478262000ad7565b62000b53818562000ae2565b935062000b6581856020860162000af3565b62000b708162000b29565b840191505092915050565b6000602082019050818103600083015262000b97818462000b3a565b905092915050565b6000604051905090565b600080fd5b600080fd5b600062000bc08262000a2f565b9050919050565b62000bd28162000bb3565b811462000bde57600080fd5b50565b60008135905062000bf28162000bc7565b92915050565b60006020828403121562000c115762000c1062000ba9565b5b600062000c218482850162000be1565b91505092915050565b60008115159050919050565b62000c418162000c2a565b82525050565b600060208201905062000c5e600083018462000c36565b92915050565b6000819050919050565b62000c798162000c64565b82525050565b600060208201905062000c96600083018462000c6e565b92915050565b62000ca78162000c64565b811462000cb357600080fd5b50565b60008135905062000cc78162000c9c565b92915050565b6000806040838503121562000ce75762000ce662000ba9565b5b600062000cf78582860162000be1565b925050602062000d0a8582860162000cb6565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000d588262000b29565b810181811067ffffffffffffffff8211171562000d7a5762000d7962000d1e565b5b80604052505050565b600062000d8f62000b9f565b905062000d9d828262000d4d565b919050565b600067ffffffffffffffff82111562000dc05762000dbf62000d1e565b5b62000dcb8262000b29565b9050602081019050919050565b82818337600083830152505050565b600062000dfe62000df88462000da2565b62000d83565b90508281526020810184848401111562000e1d5762000e1c62000d19565b5b62000e2a84828562000dd8565b509392505050565b600082601f83011262000e4a5762000e4962000d14565b5b813562000e5c84826020860162000de7565b91505092915050565b60008060006060848603121562000e815762000e8062000ba9565b5b600062000e918682870162000be1565b935050602084013567ffffffffffffffff81111562000eb55762000eb462000bae565b5b62000ec38682870162000e32565b925050604084013567ffffffffffffffff81111562000ee75762000ee662000bae565b5b62000ef58682870162000e32565b9150509250925092565b62000f0a8162000bb3565b82525050565b600060208201905062000f27600083018462000eff565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000f698262000c64565b915062000f768362000c64565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000fb25762000fb162000f2d565b5b828202905092915050565b600060408201905062000fd4600083018562000eff565b62000fe3602083018462000c6e565b9392505050565b60008151905062000ffb8162000bc7565b92915050565b6000602082840312156200101a576200101962000ba9565b5b60006200102a8482850162000fea565b91505092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b600062001091602e8362000ae2565b91506200109e8262001033565b604082019050919050565b60006020820190508181036000830152620010c48162001082565b9050919050565b6000819050919050565b600060ff82169050919050565b600062001103620010fd620010f784620010cb565b62000a4f565b620010d5565b9050919050565b6200111581620010e2565b82525050565b60006020820190506200113260008301846200110a565b92915050565b7f4f7074696d69736d4d696e7461626c65455243373231466163746f72793a204c60008201527f3120746f6b656e20616464726573732063616e6e6f742062652061646472657360208201527f7328302900000000000000000000000000000000000000000000000000000000604082015250565b6000620011bc60448362000ae2565b9150620011c98262001138565b606082019050919050565b60006020820190508181036000830152620011ef81620011ad565b9050919050565b60006060820190506200120d600083018662000eff565b818103602083015262001221818562000b3a565b9050818103604083015262001237818462000b3a565b9050949350505050565b600060a08201905062001258600083018862000eff565b62001267602083018762000c6e565b62001276604083018662000eff565b81810360608301526200128a818562000b3a565b90508181036080830152620012a0818462000b3a565b9050969550505050505056fe60e06040523480156200001157600080fd5b50604051620049f8380380620049f883398181016040528101906200003791906200088c565b818181600090816200004a919062000b93565b5080600190816200005c919062000b93565b505050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603620000d1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000c89062000d01565b60405180910390fd5b6000840362000117576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200010e9062000d99565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000189576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001809062000e31565b60405180910390fd5b83608081815250508273ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050620002278373ffffffffffffffffffffffffffffffffffffffff1660146200027b60201b62000fce1760201c565b6200023d85620004d660201b6200120a1760201c565b6040516020016200025092919062000f85565b604051602081830303815290604052600a90816200026f919062000b93565b505050505050620012b7565b60606000600283600262000290919062001003565b6200029c919062001064565b67ffffffffffffffff811115620002b857620002b76200071e565b5b6040519080825280601f01601f191660200182016040528015620002eb5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110620003265762000325620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106200038d576200038c620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002620003cf919062001003565b620003db919062001064565b90505b600181111562000485577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110620004215762000420620010c1565b5b1a60f81b8282815181106200043b576200043a620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806200047d90620010f0565b9050620003de565b5060008414620004cc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004c3906200116e565b60405180910390fd5b8091505092915050565b6060600082036200051f576040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525090506200064a565b600082905060005b60008214620005575780806200053d9062001190565b915050600a826200054f91906200120c565b915062000527565b60008167ffffffffffffffff8111156200057657620005756200071e565b5b6040519080825280601f01601f191660200182016040528015620005a95781602001600182028036833780820191505090505b5090505b600085146200064357600182620005c5919062001244565b9150600a85620005d691906200127f565b6030620005e4919062001064565b60f81b818381518110620005fd57620005fc620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a856200063b91906200120c565b9450620005ad565b8093505050505b919050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620006908262000663565b9050919050565b620006a28162000683565b8114620006ae57600080fd5b50565b600081519050620006c28162000697565b92915050565b6000819050919050565b620006dd81620006c8565b8114620006e957600080fd5b50565b600081519050620006fd81620006d2565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000758826200070d565b810181811067ffffffffffffffff821117156200077a57620007796200071e565b5b80604052505050565b60006200078f6200064f565b90506200079d82826200074d565b919050565b600067ffffffffffffffff821115620007c057620007bf6200071e565b5b620007cb826200070d565b9050602081019050919050565b60005b83811015620007f8578082015181840152602081019050620007db565b8381111562000808576000848401525b50505050565b6000620008256200081f84620007a2565b62000783565b90508281526020810184848401111562000844576200084362000708565b5b62000851848285620007d8565b509392505050565b600082601f83011262000871576200087062000703565b5b8151620008838482602086016200080e565b91505092915050565b600080600080600060a08688031215620008ab57620008aa62000659565b5b6000620008bb88828901620006b1565b9550506020620008ce88828901620006ec565b9450506040620008e188828901620006b1565b935050606086015167ffffffffffffffff8111156200090557620009046200065e565b5b620009138882890162000859565b925050608086015167ffffffffffffffff8111156200093757620009366200065e565b5b620009458882890162000859565b9150509295509295909350565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620009a557607f821691505b602082108103620009bb57620009ba6200095d565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000a257fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620009e6565b62000a318683620009e6565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000a7462000a6e62000a6884620006c8565b62000a49565b620006c8565b9050919050565b6000819050919050565b62000a908362000a53565b62000aa862000a9f8262000a7b565b848454620009f3565b825550505050565b600090565b62000abf62000ab0565b62000acc81848462000a85565b505050565b5b8181101562000af45762000ae860008262000ab5565b60018101905062000ad2565b5050565b601f82111562000b435762000b0d81620009c1565b62000b1884620009d6565b8101602085101562000b28578190505b62000b4062000b3785620009d6565b83018262000ad1565b50505b505050565b600082821c905092915050565b600062000b686000198460080262000b48565b1980831691505092915050565b600062000b83838362000b55565b9150826002028217905092915050565b62000b9e8262000952565b67ffffffffffffffff81111562000bba5762000bb96200071e565b5b62000bc682546200098c565b62000bd382828562000af8565b600060209050601f83116001811462000c0b576000841562000bf6578287015190505b62000c02858262000b75565b86555062000c72565b601f19841662000c1b86620009c1565b60005b8281101562000c455784890151825560018201915060208501945060208101905062000c1e565b8683101562000c65578489015162000c61601f89168262000b55565b8355505b6001600288020188555050505b505050505050565b600082825260208201905092915050565b7f4f7074696d69736d4d696e7461626c654552433732313a20627269646765206360008201527f616e6e6f74206265206164647265737328302900000000000000000000000000602082015250565b600062000ce960338362000c7a565b915062000cf68262000c8b565b604082019050919050565b6000602082019050818103600083015262000d1c8162000cda565b9050919050565b7f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465206360008201527f6861696e2069642063616e6e6f74206265207a65726f00000000000000000000602082015250565b600062000d8160368362000c7a565b915062000d8e8262000d23565b604082019050919050565b6000602082019050818103600083015262000db48162000d72565b9050919050565b7f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465207460008201527f6f6b656e2063616e6e6f74206265206164647265737328302900000000000000602082015250565b600062000e1960398362000c7a565b915062000e268262000dbb565b604082019050919050565b6000602082019050818103600083015262000e4c8162000e0a565b9050919050565b600081905092915050565b7f657468657265756d3a0000000000000000000000000000000000000000000000600082015250565b600062000e9660098362000e53565b915062000ea38262000e5e565b600982019050919050565b600062000ebb8262000952565b62000ec7818562000e53565b935062000ed9818560208601620007d8565b80840191505092915050565b7f4000000000000000000000000000000000000000000000000000000000000000600082015250565b600062000f1d60018362000e53565b915062000f2a8262000ee5565b600182019050919050565b7f2f746f6b656e5552493f75696e743235363d0000000000000000000000000000600082015250565b600062000f6d60128362000e53565b915062000f7a8262000f35565b601282019050919050565b600062000f928262000e87565b915062000fa0828562000eae565b915062000fad8262000f0e565b915062000fbb828462000eae565b915062000fc88262000f5e565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200101082620006c8565b91506200101d83620006c8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562001059576200105862000fd4565b5b828202905092915050565b60006200107182620006c8565b91506200107e83620006c8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620010b657620010b562000fd4565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000620010fd82620006c8565b91506000820362001113576200111262000fd4565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b60006200115660208362000c7a565b915062001163826200111e565b602082019050919050565b60006020820190508181036000830152620011898162001147565b9050919050565b60006200119d82620006c8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203620011d257620011d162000fd4565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200121982620006c8565b91506200122683620006c8565b925082620012395762001238620011dd565b5b828204905092915050565b60006200125182620006c8565b91506200125e83620006c8565b92508282101562001274576200127362000fd4565b5b828203905092915050565b60006200128c82620006c8565b91506200129983620006c8565b925082620012ac57620012ab620011dd565b5b828206905092915050565b60805160a05160c0516136ee6200130a60003960008181610b5f01528181610c4801528181610eca0152610fac0152600081816105520152610ea2015260008181610aa90152610ef201526136ee6000f3fe608060405234801561001057600080fd5b506004361061013e5760003560e01c806301ffc9a714610143578063033964be1461017357806306fdde0314610191578063081812fc146101af578063095ea7b3146101df57806318160ddd146101fb57806323b872dd146102195780632f745c591461023557806342842e0e146102655780634f6ccce71461028157806354fd4d50146102b15780636352211e146102cf57806370a08231146102ff5780637d1d0c5b1461032f57806395d89b411461034d5780639dc29fac1461036b578063a144819414610387578063a22cb465146103a3578063b88d4fde146103bf578063c87b56dd146103db578063d547cfb71461040b578063d6c0b2c414610429578063e78cea9214610447578063e951819614610465578063e985e9c514610483578063ee9a31a2146104b3575b600080fd5b61015d600480360381019061015891906125a4565b6104d1565b60405161016a91906125ec565b60405180910390f35b61017b610550565b6040516101889190612648565b60405180910390f35b610199610574565b6040516101a691906126fc565b60405180910390f35b6101c960048036038101906101c49190612754565b610606565b6040516101d69190612648565b60405180910390f35b6101f960048036038101906101f491906127ad565b61064c565b005b610203610763565b60405161021091906127fc565b60405180910390f35b610233600480360381019061022e9190612817565b610770565b005b61024f600480360381019061024a91906127ad565b6107d0565b60405161025c91906127fc565b60405180910390f35b61027f600480360381019061027a9190612817565b610875565b005b61029b60048036038101906102969190612754565b610895565b6040516102a891906127fc565b60405180910390f35b6102b9610906565b6040516102c691906126fc565b60405180910390f35b6102e960048036038101906102e49190612754565b61093f565b6040516102f69190612648565b60405180910390f35b6103196004803603810190610314919061286a565b6109f0565b60405161032691906127fc565b60405180910390f35b610337610aa7565b60405161034491906127fc565b60405180910390f35b610355610acb565b60405161036291906126fc565b60405180910390f35b610385600480360381019061038091906127ad565b610b5d565b005b6103a1600480360381019061039c91906127ad565b610c46565b005b6103bd60048036038101906103b891906128c3565b610d30565b005b6103d960048036038101906103d49190612a38565b610d46565b005b6103f560048036038101906103f09190612754565b610da8565b60405161040291906126fc565b60405180910390f35b610413610e10565b60405161042091906126fc565b60405180910390f35b610431610e9e565b60405161043e9190612648565b60405180910390f35b61044f610ec6565b60405161045c9190612648565b60405180910390f35b61046d610eee565b60405161047a91906127fc565b60405180910390f35b61049d60048036038101906104989190612abb565b610f16565b6040516104aa91906125ec565b60405180910390f35b6104bb610faa565b6040516104c89190612648565b60405180910390f35b6000807faecafc23000000000000000000000000000000000000000000000000000000009050807bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061054857506105478361136a565b5b915050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606000805461058390612b2a565b80601f01602080910402602001604051908101604052809291908181526020018280546105af90612b2a565b80156105fc5780601f106105d1576101008083540402835291602001916105fc565b820191906000526020600020905b8154815290600101906020018083116105df57829003601f168201915b5050505050905090565b6000610611826113e4565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006106578261093f565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be90612bcd565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166106e661142f565b73ffffffffffffffffffffffffffffffffffffffff16148061071557506107148161070f61142f565b610f16565b5b610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074b90612c5f565b60405180910390fd5b61075e8383611437565b505050565b6000600880549050905090565b61078161077b61142f565b826114f0565b6107c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b790612cf1565b60405180910390fd5b6107cb838383611585565b505050565b60006107db836109f0565b821061081c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081390612d83565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b61089083838360405180602001604052806000815250610d46565b505050565b600061089f610763565b82106108e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d790612e15565b60405180910390fd5b600882815481106108f4576108f3612e35565b5b90600052602060002001549050919050565b6040518060400160405280600581526020017f312e332e3200000000000000000000000000000000000000000000000000000081525081565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036109e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109de90612eb0565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5790612f42565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060018054610ada90612b2a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0690612b2a565b8015610b535780601f10610b2857610100808354040283529160200191610b53565b820191906000526020600020905b815481529060010190602001808311610b3657829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610beb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be290612fd4565b60405180910390fd5b610bf4816117eb565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610c3a91906127fc565b60405180910390a25050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccb90612fd4565b60405180910390fd5b610cde8282611908565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688582604051610d2491906127fc565b60405180910390a25050565b610d42610d3b61142f565b8383611926565b5050565b610d57610d5161142f565b836114f0565b610d96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8d90612cf1565b60405180910390fd5b610da284848484611a92565b50505050565b6060610db3826113e4565b6000610dbd611aee565b90506000815111610ddd5760405180602001604052806000815250610e08565b80610de78461120a565b604051602001610df8929190613030565b6040516020818303038152906040525b915050919050565b600a8054610e1d90612b2a565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4990612b2a565b8015610e965780601f10610e6b57610100808354040283529160200191610e96565b820191906000526020600020905b815481529060010190602001808311610e7957829003601f168201915b505050505081565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060006002836002610fe19190613083565b610feb91906130dd565b67ffffffffffffffff8111156110045761100361290d565b5b6040519080825280601f01601f1916602001820160405280156110365781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061106e5761106d612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106110d2576110d1612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600060018460026111129190613083565b61111c91906130dd565b90505b60018111156111bc577f3031323334353637383961626364656600000000000000000000000000000000600f86166010811061115e5761115d612e35565b5b1a60f81b82828151811061117557611174612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806111b590613133565b905061111f565b5060008414611200576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f7906131a8565b60405180910390fd5b8091505092915050565b606060008203611251576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611365565b600082905060005b6000821461128357808061126c906131c8565b915050600a8261127c919061323f565b9150611259565b60008167ffffffffffffffff81111561129f5761129e61290d565b5b6040519080825280601f01601f1916602001820160405280156112d15781602001600182028036833780820191505090505b5090505b6000851461135e576001826112ea9190613270565b9150600a856112f991906132a4565b603061130591906130dd565b60f81b81838151811061131b5761131a612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85611357919061323f565b94506112d5565b8093505050505b919050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806113dd57506113dc82611b80565b5b9050919050565b6113ed81611c62565b61142c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142390612eb0565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166114aa8361093f565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000806114fc8361093f565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061153e575061153d8185610f16565b5b8061157c57508373ffffffffffffffffffffffffffffffffffffffff1661156484610606565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166115a58261093f565b73ffffffffffffffffffffffffffffffffffffffff16146115fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f290613347565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361166a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611661906133d9565b60405180910390fd5b611675838383611cce565b611680600082611437565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546116d09190613270565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461172791906130dd565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46117e6838383611de0565b505050565b60006117f68261093f565b905061180481600084611cce565b61180f600083611437565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461185f9190613270565b925050819055506002600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461190481600084611de0565b5050565b611922828260405180602001604052806000815250611de5565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198b90613445565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611a8591906125ec565b60405180910390a3505050565b611a9d848484611585565b611aa984848484611e40565b611ae8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611adf906134d7565b60405180910390fd5b50505050565b6060600a8054611afd90612b2a565b80601f0160208091040260200160405190810160405280929190818152602001828054611b2990612b2a565b8015611b765780601f10611b4b57610100808354040283529160200191611b76565b820191906000526020600020905b815481529060010190602001808311611b5957829003601f168201915b5050505050905090565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611c4b57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80611c5b5750611c5a82611fc7565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b611cd9838383612031565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611d1b57611d1681612036565b611d5a565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611d5957611d58838261207f565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d9c57611d97816121ec565b611ddb565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611dda57611dd982826122bd565b5b5b505050565b505050565b611def838361233c565b611dfc6000848484611e40565b611e3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e32906134d7565b60405180910390fd5b505050565b6000611e618473ffffffffffffffffffffffffffffffffffffffff16612515565b15611fba578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611e8a61142f565b8786866040518563ffffffff1660e01b8152600401611eac949392919061354c565b6020604051808303816000875af1925050508015611ee857506040513d601f19601f82011682018060405250810190611ee591906135ad565b60015b611f6a573d8060008114611f18576040519150601f19603f3d011682016040523d82523d6000602084013e611f1d565b606091505b506000815103611f62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f59906134d7565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050611fbf565b600190505b949350505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161208c846109f0565b6120969190613270565b905060006007600084815260200190815260200160002054905081811461217b576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506122009190613270565b90506000600960008481526020019081526020016000205490506000600883815481106122305761222f612e35565b5b90600052602060002001549050806008838154811061225257612251612e35565b5b9060005260206000200181905550816009600083815260200190815260200160002081905550600960008581526020019081526020016000206000905560088054806122a1576122a06135da565b5b6001900381819060005260206000200160009055905550505050565b60006122c8836109f0565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036123ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123a290613655565b60405180910390fd5b6123b481611c62565b156123f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123eb906136c1565b60405180910390fd5b61240060008383611cce565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461245091906130dd565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461251160008383611de0565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6125818161254c565b811461258c57600080fd5b50565b60008135905061259e81612578565b92915050565b6000602082840312156125ba576125b9612542565b5b60006125c88482850161258f565b91505092915050565b60008115159050919050565b6125e6816125d1565b82525050565b600060208201905061260160008301846125dd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061263282612607565b9050919050565b61264281612627565b82525050565b600060208201905061265d6000830184612639565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561269d578082015181840152602081019050612682565b838111156126ac576000848401525b50505050565b6000601f19601f8301169050919050565b60006126ce82612663565b6126d8818561266e565b93506126e881856020860161267f565b6126f1816126b2565b840191505092915050565b6000602082019050818103600083015261271681846126c3565b905092915050565b6000819050919050565b6127318161271e565b811461273c57600080fd5b50565b60008135905061274e81612728565b92915050565b60006020828403121561276a57612769612542565b5b60006127788482850161273f565b91505092915050565b61278a81612627565b811461279557600080fd5b50565b6000813590506127a781612781565b92915050565b600080604083850312156127c4576127c3612542565b5b60006127d285828601612798565b92505060206127e38582860161273f565b9150509250929050565b6127f68161271e565b82525050565b600060208201905061281160008301846127ed565b92915050565b6000806000606084860312156128305761282f612542565b5b600061283e86828701612798565b935050602061284f86828701612798565b92505060406128608682870161273f565b9150509250925092565b6000602082840312156128805761287f612542565b5b600061288e84828501612798565b91505092915050565b6128a0816125d1565b81146128ab57600080fd5b50565b6000813590506128bd81612897565b92915050565b600080604083850312156128da576128d9612542565b5b60006128e885828601612798565b92505060206128f9858286016128ae565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612945826126b2565b810181811067ffffffffffffffff821117156129645761296361290d565b5b80604052505050565b6000612977612538565b9050612983828261293c565b919050565b600067ffffffffffffffff8211156129a3576129a261290d565b5b6129ac826126b2565b9050602081019050919050565b82818337600083830152505050565b60006129db6129d684612988565b61296d565b9050828152602081018484840111156129f7576129f6612908565b5b612a028482856129b9565b509392505050565b600082601f830112612a1f57612a1e612903565b5b8135612a2f8482602086016129c8565b91505092915050565b60008060008060808587031215612a5257612a51612542565b5b6000612a6087828801612798565b9450506020612a7187828801612798565b9350506040612a828782880161273f565b925050606085013567ffffffffffffffff811115612aa357612aa2612547565b5b612aaf87828801612a0a565b91505092959194509250565b60008060408385031215612ad257612ad1612542565b5b6000612ae085828601612798565b9250506020612af185828601612798565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612b4257607f821691505b602082108103612b5557612b54612afb565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612bb760218361266e565b9150612bc282612b5b565b604082019050919050565b60006020820190508181036000830152612be681612baa565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000602082015250565b6000612c49603e8361266e565b9150612c5482612bed565b604082019050919050565b60006020820190508181036000830152612c7881612c3c565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206e6f7220617070726f766564000000000000000000000000000000000000602082015250565b6000612cdb602e8361266e565b9150612ce682612c7f565b604082019050919050565b60006020820190508181036000830152612d0a81612cce565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b6000612d6d602b8361266e565b9150612d7882612d11565b604082019050919050565b60006020820190508181036000830152612d9c81612d60565b9050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b6000612dff602c8361266e565b9150612e0a82612da3565b604082019050919050565b60006020820190508181036000830152612e2e81612df2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000612e9a60188361266e565b9150612ea582612e64565b602082019050919050565b60006020820190508181036000830152612ec981612e8d565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612f2c60298361266e565b9150612f3782612ed0565b604082019050919050565b60006020820190508181036000830152612f5b81612f1f565b9050919050565b7f4f7074696d69736d4d696e7461626c654552433732313a206f6e6c792062726960008201527f6467652063616e2063616c6c20746869732066756e6374696f6e000000000000602082015250565b6000612fbe603a8361266e565b9150612fc982612f62565b604082019050919050565b60006020820190508181036000830152612fed81612fb1565b9050919050565b600081905092915050565b600061300a82612663565b6130148185612ff4565b935061302481856020860161267f565b80840191505092915050565b600061303c8285612fff565b91506130488284612fff565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061308e8261271e565b91506130998361271e565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156130d2576130d1613054565b5b828202905092915050565b60006130e88261271e565b91506130f38361271e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561312857613127613054565b5b828201905092915050565b600061313e8261271e565b91506000820361315157613150613054565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b600061319260208361266e565b915061319d8261315c565b602082019050919050565b600060208201905081810360008301526131c181613185565b9050919050565b60006131d38261271e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361320557613204613054565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061324a8261271e565b91506132558361271e565b92508261326557613264613210565b5b828204905092915050565b600061327b8261271e565b91506132868361271e565b92508282101561329957613298613054565b5b828203905092915050565b60006132af8261271e565b91506132ba8361271e565b9250826132ca576132c9613210565b5b828206905092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b600061333160258361266e565b915061333c826132d5565b604082019050919050565b6000602082019050818103600083015261336081613324565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006133c360248361266e565b91506133ce82613367565b604082019050919050565b600060208201905081810360008301526133f2816133b6565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b600061342f60198361266e565b915061343a826133f9565b602082019050919050565b6000602082019050818103600083015261345e81613422565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b60006134c160328361266e565b91506134cc82613465565b604082019050919050565b600060208201905081810360008301526134f0816134b4565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061351e826134f7565b6135288185613502565b935061353881856020860161267f565b613541816126b2565b840191505092915050565b60006080820190506135616000830187612639565b61356e6020830186612639565b61357b60408301856127ed565b818103606083015261358d8184613513565b905095945050505050565b6000815190506135a781612578565b92915050565b6000602082840312156135c3576135c2612542565b5b60006135d184828501613598565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b600061363f60208361266e565b915061364a82613609565b602082019050919050565b6000602082019050818103600083015261366e81613632565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006136ab601c8361266e565b91506136b682613675565b602082019050919050565b600060208201905081810360008301526136da8161369e565b905091905056fea164736f6c634300080f000aa164736f6c634300080f000a0000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 4900000, "intent": "Deploy OptimismMintableERC721Factory Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001c9d608060405234801561001057600080fd5b50600061001c3361002b565b6100258161002b565b5061007b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611c138061008a6000396000f3fe6080604052600436106101445760003560e01c80637eff275e116100c057806399a88ec411610074578063b794726211610059578063b7947262146103c8578063f2fde38b14610403578063f3b7dead1461042357600080fd5b806399a88ec4146103885780639b2ea4bd146103a857600080fd5b80638d52d4a0116100a55780638d52d4a01461032a5780638da5cb5b1461034a5780639623609d1461037557600080fd5b80637eff275e146102ea578063860f7cda1461030a57600080fd5b80633ab76e9f116101175780636bd9f516116100fc5780636bd9f51614610278578063715018a6146102b55780637c36f37e146102ca57600080fd5b80633ab76e9f1461020257806354fd4d501461022f57600080fd5b80630652b57a1461014957806307c8f7b01461016b578063204e1c7a1461018b578063238181ae146101d5575b600080fd5b34801561015557600080fd5b50610169610164366004611490565b610443565b005b34801561017757600080fd5b506101696101863660046114ad565b610492565b34801561019757600080fd5b506101ab6101a6366004611490565b6104e4565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156101e157600080fd5b506101f56101f0366004611490565b61070a565b6040516101cc9190611545565b34801561020e57600080fd5b506003546101ab9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561023b57600080fd5b506101f56040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b34801561028457600080fd5b506102a8610293366004611490565b60016020526000908152604090205460ff1681565b6040516101cc9190611587565b3480156102c157600080fd5b506101696107a4565b3480156102d657600080fd5b506101696102e5366004611490565b6107b8565b3480156102f657600080fd5b506101696103053660046115c8565b6109b0565b34801561031657600080fd5b50610169610325366004611723565b610b63565b34801561033657600080fd5b50610169610345366004611773565b610b9a565b34801561035657600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff166101ab565b6101696103833660046117a5565b610c0e565b34801561039457600080fd5b506101696103a33660046115c8565b610e25565b3480156103b457600080fd5b506101696103c336600461181b565b6110b5565b3480156103d457600080fd5b5060035474010000000000000000000000000000000000000000900460ff1660405190151581526020016101cc565b34801561040f57600080fd5b5061016961041e366004611490565b61114b565b34801561042f57600080fd5b506101ab61043e366004611490565b611202565b61044b611378565b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61049a611378565b6003805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b73ffffffffffffffffffffffffffffffffffffffff811660009081526001602052604081205460ff168181600281111561052057610520611558565b0361059b578273ffffffffffffffffffffffffffffffffffffffff16635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105949190611862565b9392505050565b60018160028111156105af576105af611558565b036105ff578273ffffffffffffffffffffffffffffffffffffffff1663aaf10f426040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b600281600281111561061357610613611558565b0361069d5760035473ffffffffffffffffffffffffffffffffffffffff8481166000908152600260205260409081902090517fbf40fac1000000000000000000000000000000000000000000000000000000008152919092169163bf40fac19161068091906004016118cc565b602060405180830381865afa158015610570573d6000803e3d6000fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f50726f787941646d696e3a20756e6b6e6f776e2070726f78792074797065000060448201526064015b60405180910390fd5b50919050565b600260205260009081526040902080546107239061187f565b80601f016020809104026020016040519081016040528092919081815260200182805461074f9061187f565b801561079c5780601f106107715761010080835404028352916020019161079c565b820191906000526020600020905b81548152906001019060200180831161077f57829003601f168201915b505050505081565b6107ac611378565b6107b660006113f9565b565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610805576040517fcde661e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff163b60000361086e576040517fe1e56d9d00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016106fb565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fd55ec697000000000000000000000000000000000000000000000000000000001790529051600091829173ffffffffffffffffffffffffffffffffffffffff8516916108ec91611975565b600060405180830381855af49150503d8060008114610927576040519150601f19603f3d011682016040523d82523d6000602084013e61092c565b606091505b50915091508161096a57806040517f1c0a89cc0000000000000000000000000000000000000000000000000000000081526004016106fb9190611545565b60405173ffffffffffffffffffffffffffffffffffffffff8416907f14e22d69ea30aab5b2220164345b33bdb5125e9c77a7d5fe12e23a1c691bd13990600090a2505050565b6109b8611378565b73ffffffffffffffffffffffffffffffffffffffff821660009081526001602052604081205460ff16908160028111156109f4576109f4611558565b03610a80576040517f8f28397000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690638f283970906024015b600060405180830381600087803b158015610a6357600080fd5b505af1158015610a77573d6000803e3d6000fd5b50505050505050565b6001816002811115610a9457610a94611558565b03610aed576040517f13af403500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301528416906313af403590602401610a49565b6002816002811115610b0157610b01611558565b0361069d576003546040517ff2fde38b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529091169063f2fde38b90602401610a49565b505050565b610b6b611378565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600260205260409020610b5e82826119d7565b610ba2611378565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600160208190526040909120805483927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0090911690836002811115610c0557610c05611558565b02179055505050565b610c16611378565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001602052604081205460ff1690816002811115610c5257610c52611558565b03610d18576040517f4f1ef28600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851690634f1ef286903490610cad9087908790600401611af1565b60006040518083038185885af1158015610ccb573d6000803e3d6000fd5b50505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d129190810190611b28565b50610e1f565b610d228484610e25565b60008473ffffffffffffffffffffffffffffffffffffffff163484604051610d4a9190611975565b60006040518083038185875af1925050503d8060008114610d87576040519150601f19603f3d011682016040523d82523d6000602084013e610d8c565b606091505b5050905080610e1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f50726f787941646d696e3a2063616c6c20746f2070726f78792061667465722060448201527f75706772616465206661696c656400000000000000000000000000000000000060648201526084016106fb565b505b50505050565b610e2d611378565b73ffffffffffffffffffffffffffffffffffffffff821660009081526001602052604081205460ff1690816002811115610e6957610e69611558565b03610ec2576040517f3659cfe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690633659cfe690602401610a49565b6001816002811115610ed657610ed6611558565b03610f55576040517f9b0b0fda0000000000000000000000000000000000000000000000000000000081527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc600482015273ffffffffffffffffffffffffffffffffffffffff8381166024830152841690639b0b0fda90604401610a49565b6002816002811115610f6957610f69611558565b036110ad5773ffffffffffffffffffffffffffffffffffffffff831660009081526002602052604081208054610f9e9061187f565b80601f0160208091040260200160405190810160405280929190818152602001828054610fca9061187f565b80156110175780601f10610fec57610100808354040283529160200191611017565b820191906000526020600020905b815481529060010190602001808311610ffa57829003601f168201915b50506003546040517f9b2ea4bd00000000000000000000000000000000000000000000000000000000815294955073ffffffffffffffffffffffffffffffffffffffff1693639b2ea4bd935061107592508591508790600401611b9f565b600060405180830381600087803b15801561108f57600080fd5b505af11580156110a3573d6000803e3d6000fd5b5050505050505050565b610b5e611bd7565b6110bd611378565b6003546040517f9b2ea4bd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911690639b2ea4bd906111159085908590600401611b9f565b600060405180830381600087803b15801561112f57600080fd5b505af1158015611143573d6000803e3d6000fd5b505050505050565b611153611378565b73ffffffffffffffffffffffffffffffffffffffff81166111f6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106fb565b6111ff816113f9565b50565b73ffffffffffffffffffffffffffffffffffffffff811660009081526001602052604081205460ff168181600281111561123e5761123e611558565b0361128e578273ffffffffffffffffffffffffffffffffffffffff1663f851a4406040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b60018160028111156112a2576112a2611558565b036112f2578273ffffffffffffffffffffffffffffffffffffffff1663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b600281600281111561130657611306611558565b0361069d57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b60005473ffffffffffffffffffffffffffffffffffffffff1633146107b6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106fb565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b73ffffffffffffffffffffffffffffffffffffffff811681146111ff57600080fd5b6000602082840312156114a257600080fd5b81356105948161146e565b6000602082840312156114bf57600080fd5b8135801515811461059457600080fd5b60005b838110156114ea5781810151838201526020016114d2565b83811115610e1f5750506000910152565b600081518084526115138160208601602086016114cf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061059460208301846114fb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60208101600383106115c2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b600080604083850312156115db57600080fd5b82356115e68161146e565b915060208301356115f68161146e565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561167757611677611601565b604052919050565b600067ffffffffffffffff82111561169957611699611601565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b60006116d86116d38461167f565b611630565b90508281528383830111156116ec57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261171457600080fd5b610594838335602085016116c5565b6000806040838503121561173657600080fd5b82356117418161146e565b9150602083013567ffffffffffffffff81111561175d57600080fd5b61176985828601611703565b9150509250929050565b6000806040838503121561178657600080fd5b82356117918161146e565b91506020830135600381106115f657600080fd5b6000806000606084860312156117ba57600080fd5b83356117c58161146e565b925060208401356117d58161146e565b9150604084013567ffffffffffffffff8111156117f157600080fd5b8401601f8101861361180257600080fd5b611811868235602084016116c5565b9150509250925092565b6000806040838503121561182e57600080fd5b823567ffffffffffffffff81111561184557600080fd5b61185185828601611703565b92505060208301356115f68161146e565b60006020828403121561187457600080fd5b81516105948161146e565b600181811c9082168061189357607f821691505b602082108103610704577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006020808352600084546118e08161187f565b80848701526040600180841660008114611901576001811461193957611967565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838a01528284151560051b8a01019550611967565b896000528660002060005b8581101561195f5781548b8201860152908301908801611944565b8a0184019650505b509398975050505050505050565b600082516119878184602087016114cf565b9190910192915050565b601f821115610b5e57600081815260208120601f850160051c810160208610156119b85750805b601f850160051c820191505b81811015611143578281556001016119c4565b815167ffffffffffffffff8111156119f1576119f1611601565b611a05816119ff845461187f565b84611991565b602080601f831160018114611a585760008415611a225750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555611143565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611aa557888601518255948401946001909101908401611a86565b5085821015611ae157878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b73ffffffffffffffffffffffffffffffffffffffff83168152604060208201526000611b2060408301846114fb565b949350505050565b600060208284031215611b3a57600080fd5b815167ffffffffffffffff811115611b5157600080fd5b8201601f81018413611b6257600080fd5b8051611b706116d38261167f565b818152856020838501011115611b8557600080fd5b611b968260208301602086016114cf565b95945050505050565b604081526000611bb260408301856114fb565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea164736f6c634300080f000a000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000298f60806040523480156200001157600080fd5b50600062000034620000286200004c60201b60201c565b6200005460201b60201c565b62000045816200005460201b60201c565b5062000118565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61286780620001286000396000f3fe6080604052600436106100e45760003560e01c80630652b57a146100e957806307c8f7b014610112578063204e1c7a1461013b578063238181ae146101785780633ab76e9f146101b557806354fd4d50146101e05780636bd9f5161461020b578063715018a6146102485780637c36f37e1461025f5780637eff275e14610288578063860f7cda146102b15780638d52d4a0146102da5780638da5cb5b146103035780639623609d1461032e57806399a88ec41461034a5780639b2ea4bd14610373578063b79472621461039c578063f2fde38b146103c7578063f3b7dead146103f0575b600080fd5b3480156100f557600080fd5b50610110600480360381019061010b9190611931565b61042d565b005b34801561011e57600080fd5b5061013960048036038101906101349190611996565b610479565b005b34801561014757600080fd5b50610162600480360381019061015d91906119ef565b61049e565b60405161016f9190611a2b565b60405180910390f35b34801561018457600080fd5b5061019f600480360381019061019a91906119ef565b610783565b6040516101ac9190611adf565b60405180910390f35b3480156101c157600080fd5b506101ca610823565b6040516101d79190611b60565b60405180910390f35b3480156101ec57600080fd5b506101f5610849565b6040516102029190611adf565b60405180910390f35b34801561021757600080fd5b50610232600480360381019061022d91906119ef565b610882565b60405161023f9190611bf2565b60405180910390f35b34801561025457600080fd5b5061025d6108a2565b005b34801561026b57600080fd5b50610286600480360381019061028191906119ef565b6108b6565b005b34801561029457600080fd5b506102af60048036038101906102aa9190611c4b565b610acc565b005b3480156102bd57600080fd5b506102d860048036038101906102d39190611dc0565b610d5c565b005b3480156102e657600080fd5b5061030160048036038101906102fc9190611e41565b610db5565b005b34801561030f57600080fd5b50610318610e28565b6040516103259190611a2b565b60405180910390f35b61034860048036038101906103439190611f22565b610e51565b005b34801561035657600080fd5b50610371600480360381019061036c9190611c4b565b611020565b005b34801561037f57600080fd5b5061039a60048036038101906103959190611f91565b611392565b005b3480156103a857600080fd5b506103b161142d565b6040516103be9190611ffc565b60405180910390f35b3480156103d357600080fd5b506103ee60048036038101906103e991906119ef565b611444565b005b3480156103fc57600080fd5b5061041760048036038101906104129190612017565b6114c7565b6040516104249190611a2b565b60405180910390f35b610435611763565b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610481611763565b80600360146101000a81548160ff02191690831515021790555050565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506000600281111561050457610503611b7b565b5b81600281111561051757610516611b7b565b5b03610593578273ffffffffffffffffffffffffffffffffffffffff16635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610567573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058b9190612059565b91505061077e565b600160028111156105a7576105a6611b7b565b5b8160028111156105ba576105b9611b7b565b5b03610636578273ffffffffffffffffffffffffffffffffffffffff1663aaf10f426040518163ffffffff1660e01b8152600401602060405180830381865afa15801561060a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061062e9190612059565b91505061077e565b60028081111561064957610648611b7b565b5b81600281111561065c5761065b611b7b565b5b0361074357600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bf40fac1600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518263ffffffff1660e01b81526004016106fa919061217f565b602060405180830381865afa158015610717573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073b9190612059565b91505061077e565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610775906121ed565b60405180910390fd5b919050565b600260205280600052604060002060009150905080546107a2906120b5565b80601f01602080910402602001604051908101604052809291908181526020018280546107ce906120b5565b801561081b5780601f106107f05761010080835404028352916020019161081b565b820191906000526020600020905b8154815290600101906020018083116107fe57829003601f168201915b505050505081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60016020528060005260406000206000915054906101000a900460ff1681565b6108aa611763565b6108b460006117e1565b565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461092f576040517fcde661e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff163b0361098b57806040517fe1e56d9d0000000000000000000000000000000000000000000000000000000081526004016109829190611a2b565b60405180910390fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1660405160240160405160208183030381529060405263d55ec69760e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516109fd9190612254565b600060405180830381855af49150503d8060008114610a38576040519150601f19603f3d011682016040523d82523d6000602084013e610a3d565b606091505b509150915081610a8457806040517f1c0a89cc000000000000000000000000000000000000000000000000000000008152600401610a7b91906122b5565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff167f14e22d69ea30aab5b2220164345b33bdb5125e9c77a7d5fe12e23a1c691bd13960405160405180910390a2505050565b610ad4611763565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905060006002811115610b3957610b38611b7b565b5b816002811115610b4c57610b4b611b7b565b5b03610bc1578273ffffffffffffffffffffffffffffffffffffffff16638f283970836040518263ffffffff1660e01b8152600401610b8a9190611a2b565b600060405180830381600087803b158015610ba457600080fd5b505af1158015610bb8573d6000803e3d6000fd5b50505050610d57565b60016002811115610bd557610bd4611b7b565b5b816002811115610be857610be7611b7b565b5b03610c5d578273ffffffffffffffffffffffffffffffffffffffff166313af4035836040518263ffffffff1660e01b8152600401610c269190611a2b565b600060405180830381600087803b158015610c4057600080fd5b505af1158015610c54573d6000803e3d6000fd5b50505050610d56565b600280811115610c7057610c6f611b7b565b5b816002811115610c8357610c82611b7b565b5b03610d1a57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f2fde38b836040518263ffffffff1660e01b8152600401610ce39190611a2b565b600060405180830381600087803b158015610cfd57600080fd5b505af1158015610d11573d6000803e3d6000fd5b50505050610d55565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4c906121ed565b60405180910390fd5b5b5b505050565b610d64611763565b80600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209081610db0919061246e565b505050565b610dbd611763565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690836002811115610e1f57610e1e611b7b565b5b02179055505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610e59611763565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905060006002811115610ebe57610ebd611b7b565b5b816002811115610ed157610ed0611b7b565b5b03610f60578373ffffffffffffffffffffffffffffffffffffffff16634f1ef2863485856040518463ffffffff1660e01b8152600401610f12929190612540565b60006040518083038185885af1158015610f30573d6000803e3d6000fd5b50505050506040513d6000823e3d601f19601f82011682018060405250810190610f5a91906125e0565b5061101a565b610f6a8484611020565b60008473ffffffffffffffffffffffffffffffffffffffff163484604051610f929190612254565b60006040518083038185875af1925050503d8060008114610fcf576040519150601f19603f3d011682016040523d82523d6000602084013e610fd4565b606091505b5050905080611018576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100f9061269b565b60405180910390fd5b505b50505050565b611028611763565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506000600281111561108d5761108c611b7b565b5b8160028111156110a05761109f611b7b565b5b03611115578273ffffffffffffffffffffffffffffffffffffffff16633659cfe6836040518263ffffffff1660e01b81526004016110de9190611a2b565b600060405180830381600087803b1580156110f857600080fd5b505af115801561110c573d6000803e3d6000fd5b5050505061138d565b6001600281111561112957611128611b7b565b5b81600281111561113c5761113b611b7b565b5b036111ef578273ffffffffffffffffffffffffffffffffffffffff16639b0b0fda7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b8473ffffffffffffffffffffffffffffffffffffffff1660001b6040518363ffffffff1660e01b81526004016111b89291906126d4565b600060405180830381600087803b1580156111d257600080fd5b505af11580156111e6573d6000803e3d6000fd5b5050505061138c565b60028081111561120257611201611b7b565b5b81600281111561121557611214611b7b565b5b0361137b576000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054611266906120b5565b80601f0160208091040260200160405190810160405280929190818152602001828054611292906120b5565b80156112df5780601f106112b4576101008083540402835291602001916112df565b820191906000526020600020905b8154815290600101906020018083116112c257829003601f168201915b50505050509050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639b2ea4bd82856040518363ffffffff1660e01b81526004016113439291906126fd565b600060405180830381600087803b15801561135d57600080fd5b505af1158015611371573d6000803e3d6000fd5b505050505061138b565b600061138a5761138961272d565b5b5b5b5b505050565b61139a611763565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639b2ea4bd83836040518363ffffffff1660e01b81526004016113f79291906126fd565b600060405180830381600087803b15801561141157600080fd5b505af1158015611425573d6000803e3d6000fd5b505050505050565b6000600360149054906101000a900460ff16905090565b61144c611763565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036114bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b2906127ce565b60405180910390fd5b6114c4816117e1565b50565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506000600281111561152d5761152c611b7b565b5b8160028111156115405761153f611b7b565b5b036115bc578273ffffffffffffffffffffffffffffffffffffffff1663f851a4406040518163ffffffff1660e01b8152600401602060405180830381865afa158015611590573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115b49190612059565b91505061175e565b600160028111156115d0576115cf611b7b565b5b8160028111156115e3576115e2611b7b565b5b0361165f578273ffffffffffffffffffffffffffffffffffffffff1663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611633573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116579190612059565b91505061175e565b60028081111561167257611671611b7b565b5b81600281111561168557611684611b7b565b5b0361172357600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061171b9190612059565b91505061175e565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611755906121ed565b60405180910390fd5b919050565b61176b6118a5565b73ffffffffffffffffffffffffffffffffffffffff16611789610e28565b73ffffffffffffffffffffffffffffffffffffffff16146117df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d69061283a565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006118ec826118c1565b9050919050565b60006118fe826118e1565b9050919050565b61190e816118f3565b811461191957600080fd5b50565b60008135905061192b81611905565b92915050565b600060208284031215611947576119466118b7565b5b60006119558482850161191c565b91505092915050565b60008115159050919050565b6119738161195e565b811461197e57600080fd5b50565b6000813590506119908161196a565b92915050565b6000602082840312156119ac576119ab6118b7565b5b60006119ba84828501611981565b91505092915050565b6119cc816118e1565b81146119d757600080fd5b50565b6000813590506119e9816119c3565b92915050565b600060208284031215611a0557611a046118b7565b5b6000611a13848285016119da565b91505092915050565b611a25816118e1565b82525050565b6000602082019050611a406000830184611a1c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a80578082015181840152602081019050611a65565b83811115611a8f576000848401525b50505050565b6000601f19601f8301169050919050565b6000611ab182611a46565b611abb8185611a51565b9350611acb818560208601611a62565b611ad481611a95565b840191505092915050565b60006020820190508181036000830152611af98184611aa6565b905092915050565b6000819050919050565b6000611b26611b21611b1c846118c1565b611b01565b6118c1565b9050919050565b6000611b3882611b0b565b9050919050565b6000611b4a82611b2d565b9050919050565b611b5a81611b3f565b82525050565b6000602082019050611b756000830184611b51565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60038110611bbb57611bba611b7b565b5b50565b6000819050611bcc82611baa565b919050565b6000611bdc82611bbe565b9050919050565b611bec81611bd1565b82525050565b6000602082019050611c076000830184611be3565b92915050565b6000611c18826118c1565b9050919050565b611c2881611c0d565b8114611c3357600080fd5b50565b600081359050611c4581611c1f565b92915050565b60008060408385031215611c6257611c616118b7565b5b6000611c7085828601611c36565b9250506020611c81858286016119da565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611ccd82611a95565b810181811067ffffffffffffffff82111715611cec57611ceb611c95565b5b80604052505050565b6000611cff6118ad565b9050611d0b8282611cc4565b919050565b600067ffffffffffffffff821115611d2b57611d2a611c95565b5b611d3482611a95565b9050602081019050919050565b82818337600083830152505050565b6000611d63611d5e84611d10565b611cf5565b905082815260208101848484011115611d7f57611d7e611c90565b5b611d8a848285611d41565b509392505050565b600082601f830112611da757611da6611c8b565b5b8135611db7848260208601611d50565b91505092915050565b60008060408385031215611dd757611dd66118b7565b5b6000611de5858286016119da565b925050602083013567ffffffffffffffff811115611e0657611e056118bc565b5b611e1285828601611d92565b9150509250929050565b60038110611e2957600080fd5b50565b600081359050611e3b81611e1c565b92915050565b60008060408385031215611e5857611e576118b7565b5b6000611e66858286016119da565b9250506020611e7785828601611e2c565b9150509250929050565b600067ffffffffffffffff821115611e9c57611e9b611c95565b5b611ea582611a95565b9050602081019050919050565b6000611ec5611ec084611e81565b611cf5565b905082815260208101848484011115611ee157611ee0611c90565b5b611eec848285611d41565b509392505050565b600082601f830112611f0957611f08611c8b565b5b8135611f19848260208601611eb2565b91505092915050565b600080600060608486031215611f3b57611f3a6118b7565b5b6000611f4986828701611c36565b9350506020611f5a868287016119da565b925050604084013567ffffffffffffffff811115611f7b57611f7a6118bc565b5b611f8786828701611ef4565b9150509250925092565b60008060408385031215611fa857611fa76118b7565b5b600083013567ffffffffffffffff811115611fc657611fc56118bc565b5b611fd285828601611d92565b9250506020611fe3858286016119da565b9150509250929050565b611ff68161195e565b82525050565b60006020820190506120116000830184611fed565b92915050565b60006020828403121561202d5761202c6118b7565b5b600061203b84828501611c36565b91505092915050565b600081519050612053816119c3565b92915050565b60006020828403121561206f5761206e6118b7565b5b600061207d84828501612044565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120cd57607f821691505b6020821081036120e0576120df612086565b5b50919050565b60008190508160005260206000209050919050565b60008154612108816120b5565b6121128186611a51565b9450600182166000811461212d576001811461214357612176565b60ff198316865281151560200286019350612176565b61214c856120e6565b60005b8381101561216e5781548189015260018201915060208101905061214f565b808801955050505b50505092915050565b6000602082019050818103600083015261219981846120fb565b905092915050565b7f50726f787941646d696e3a20756e6b6e6f776e2070726f787920747970650000600082015250565b60006121d7601e83611a51565b91506121e2826121a1565b602082019050919050565b60006020820190508181036000830152612206816121ca565b9050919050565b600081519050919050565b600081905092915050565b600061222e8261220d565b6122388185612218565b9350612248818560208601611a62565b80840191505092915050565b60006122608284612223565b915081905092915050565b600082825260208201905092915050565b60006122878261220d565b612291818561226b565b93506122a1818560208601611a62565b6122aa81611a95565b840191505092915050565b600060208201905081810360008301526122cf818461227c565b905092915050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026123247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826122e7565b61232e86836122e7565b95508019841693508086168417925050509392505050565b6000819050919050565b600061236b61236661236184612346565b611b01565b612346565b9050919050565b6000819050919050565b61238583612350565b61239961239182612372565b8484546122f4565b825550505050565b600090565b6123ae6123a1565b6123b981848461237c565b505050565b5b818110156123dd576123d26000826123a6565b6001810190506123bf565b5050565b601f821115612422576123f3816120e6565b6123fc846122d7565b8101602085101561240b578190505b61241f612417856122d7565b8301826123be565b50505b505050565b600082821c905092915050565b600061244560001984600802612427565b1980831691505092915050565b600061245e8383612434565b9150826002028217905092915050565b61247782611a46565b67ffffffffffffffff8111156124905761248f611c95565b5b61249a82546120b5565b6124a58282856123e1565b600060209050601f8311600181146124d857600084156124c6578287015190505b6124d08582612452565b865550612538565b601f1984166124e6866120e6565b60005b8281101561250e578489015182556001820191506020850194506020810190506124e9565b8683101561252b5784890151612527601f891682612434565b8355505b6001600288020188555050505b505050505050565b60006040820190506125556000830185611a1c565b8181036020830152612567818461227c565b90509392505050565b600061258361257e84611e81565b611cf5565b90508281526020810184848401111561259f5761259e611c90565b5b6125aa848285611a62565b509392505050565b600082601f8301126125c7576125c6611c8b565b5b81516125d7848260208601612570565b91505092915050565b6000602082840312156125f6576125f56118b7565b5b600082015167ffffffffffffffff811115612614576126136118bc565b5b612620848285016125b2565b91505092915050565b7f50726f787941646d696e3a2063616c6c20746f2070726f78792061667465722060008201527f75706772616465206661696c6564000000000000000000000000000000000000602082015250565b6000612685602e83611a51565b915061269082612629565b604082019050919050565b600060208201905081810360008301526126b481612678565b9050919050565b6000819050919050565b6126ce816126bb565b82525050565b60006040820190506126e960008301856126c5565b6126f660208301846126c5565b9392505050565b600060408201905081810360008301526127178185611aa6565b90506127266020830184611a1c565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006127b8602683611a51565b91506127c38261275c565b604082019050919050565b600060208201905081810360008301526127e7816127ab565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612824602083611a51565b915061282f826127ee565b602082019050919050565b6000602082019050818103600083015261285381612817565b905091905056fea164736f6c634300080f000a0000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 2400000, "intent": "Deploy L2ProxyAdmin Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000108a6080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fb4806100d65f395ff3fe6080604052600436106100e7575f3560e01c806382356d8a11610087578063b49dc74111610057578063b49dc741146102bf578063d0e12f90146102de578063d3e5792b1461030d578063dad544e014610321575f80fd5b806382356d8a146102395780638312f1491461027757806384411d651461028c57806385b5b14d146102a0575f80fd5b80633ccfd60b116100c25780633ccfd60b146101825780633e47158c146101a457806354fd4d50146101b857806366d003ac1461020d575f80fd5b80630d9019e1146100f2578063307f2962146101425780633bbed4a014610163575f80fd5b366100ee57005b5f80fd5b3480156100fd575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d575f80fd5b5061016161015c366004610d62565b610335565b005b34801561016e575f80fd5b5061016161017d366004610d9f565b6103db565b34801561018d575f80fd5b50610196610462565b604051908152602001610139565b3480156101af575f80fd5b50610118610770565b3480156101c3575f80fd5b506102006040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b6040516101399190610dba565b348015610218575f80fd5b506002546101189073ffffffffffffffffffffffffffffffffffffffff1681565b348015610244575f80fd5b5060025461026a9074010000000000000000000000000000000000000000900460ff1681565b6040516101399190610e73565b348015610282575f80fd5b5061019660015481565b348015610297575f80fd5b506101965f5481565b3480156102ab575f80fd5b506101616102ba366004610e87565b610976565b3480156102ca575f80fd5b506101616102d9366004610e9e565b6109bc565b3480156102e9575f80fd5b5060025474010000000000000000000000000000000000000000900460ff1661026a565b348015610318575f80fd5b50600154610196565b34801561032c575f80fd5b50610118610bd8565b61033d610c52565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091169083600181111561039957610399610e0d565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103cf929190610ed9565b60405180910390a15050565b6103e3610c52565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103cf565b5f600154471015610520576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f808282546105339190610f21565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105e89185918591339174010000000000000000000000000000000000000000900460ff1690610f34565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062157610621610e0d565b036106c5575f6106318284610caa565b9050806106c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610517565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610755575f80fd5b505af1158015610767573d5f803e3d5ffd5b50505050505090565b5f8061079a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107bd57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108009190610f75565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061085a906060015b604051602081830303815290604052805190602001205490565b14610891576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108b290606001610840565b905073ffffffffffffffffffffffffffffffffffffffff811615610944578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190610f8c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e610c52565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103cf565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a065750825b90505f8267ffffffffffffffff166001148015610a225750303b155b905081158015610a30575080155b15610a67576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ac85784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610ad0610cbd565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b6857610b68610e0d565b02179055508315610bce5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610be1610770565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4d9190610f8c565b905090565b33610c5b610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614610ca8576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cb6835a84610d3e565b9392505050565b33610cc6610770565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d07575033610cee610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610ca8576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d5d575f80fd5b919050565b5f60208284031215610d72575f80fd5b610cb682610d4f565b73ffffffffffffffffffffffffffffffffffffffff81168114610d9c575f80fd5b50565b5f60208284031215610daf575f80fd5b8135610cb681610d7b565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e6f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e818284610e3a565b92915050565b5f60208284031215610e97575f80fd5b5035919050565b5f805f60608486031215610eb0575f80fd5b8335610ebb81610d7b565b925060208401359150610ed060408501610d4f565b90509250925092565b60408101610ee78285610e3a565b610cb66020830184610e3a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8157610e81610ef4565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f6c6060830184610e3a565b95945050505050565b8082028115828204841417610e8157610e81610ef4565b5f60208284031215610f9c575f80fd5b8151610cb681610d7b56fea164736f6c6343000819000a00000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001717608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b611587806101905f395ff3fe6080604052600436106100bb575f3560e01c80630d9019e1146100c6578063307f2962146100f05780633bbed4a0146101185780633ccfd60b146101405780633e47158c1461016a57806354fd4d501461019457806366d003ac146101be57806382356d8a146101e85780638312f1491461021257806384411d651461023c57806385b5b14d14610266578063b49dc7411461028e578063d0e12f90146102b6578063d3e5792b146102e0578063dad544e01461030a576100c2565b366100c257005b5f80fd5b3480156100d1575f80fd5b506100da610334565b6040516100e79190610e0d565b60405180910390f35b3480156100fb575f80fd5b5061011660048036038101906101119190610e4d565b61035c565b005b348015610123575f80fd5b5061013e60048036038101906101399190610ea2565b6103de565b005b34801561014b575f80fd5b50610154610488565b6040516101619190610ee5565b60405180910390f35b348015610175575f80fd5b5061017e6106a7565b60405161018b9190610f59565b60405180910390f35b34801561019f575f80fd5b506101a86108f6565b6040516101b59190610fe2565b60405180910390f35b3480156101c9575f80fd5b506101d261092f565b6040516101df9190610e0d565b60405180910390f35b3480156101f3575f80fd5b506101fc610954565b6040516102099190611075565b60405180910390f35b34801561021d575f80fd5b50610226610967565b6040516102339190610ee5565b60405180910390f35b348015610247575f80fd5b5061025061096d565b60405161025d9190610ee5565b60405180910390f35b348015610271575f80fd5b5061028c600480360381019061028791906110b8565b610972565b005b348015610299575f80fd5b506102b460048036038101906102af91906110e3565b6109c4565b005b3480156102c1575f80fd5b506102ca610bb7565b6040516102d79190611075565b60405180910390f35b3480156102eb575f80fd5b506102f4610bcd565b6040516103019190610ee5565b60405180910390f35b348015610315575f80fd5b5061031e610bd6565b60405161032b9190610e0d565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610364610c50565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff0219169083600181111561039c5761039b611002565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103d2929190611133565b60405180910390a15050565b6103e6610c50565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e4593818360405161047c92919061115a565b60405180910390a15050565b5f6001544710156104ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c590611217565b60405180910390fd5b479050805f808282546104e19190611262565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba82823360405161054093929190611295565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff1660405161058c94939291906112ca565b60405180910390a16001808111156105a7576105a6611002565b5b600260149054906101000a900460ff1660018111156105c9576105c8611002565b5b03610621575f6105d98284610cbe565b90508061061b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106129061137d565b60405180910390fd5b506106a3565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b815260040161067492919061140d565b5f604051808303818588803b15801561068b575f80fd5b505af115801561069d573d5f803e3d5ffd5b50505050505b5090565b5f806106d47fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461071257809150506108f3565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516107559190611447565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107ac305f604051602001610791929190611488565b60405160208183030381529060405280519060200120610cdc565b146107e3576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6108163060016040516020016107fb929190611488565b60405160208183030381529060405280519060200120610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108c1578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b891906114c3565b925050506108f3565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b61097a610c50565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109b89291906114ee565b60405180910390a15050565b5f6109cd610ce6565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a155750825b90505f60018367ffffffffffffffff16148015610a4857505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a56575080155b15610a8d576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610ada576001855f0160086101000a81548160ff0219169083151502179055505b610ae2610d0d565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b4e57610b4d611002565b5b02179055508315610bad575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610ba49190611561565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f610bdf6106a7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4b91906114c3565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610c6f610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614610cbc576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cca835a84610dbc565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d2c6106a7565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d8357503373ffffffffffffffffffffffffffffffffffffffff16610d6a610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610dba576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610df782610dce565b9050919050565b610e0781610ded565b82525050565b5f602082019050610e205f830184610dfe565b92915050565b5f80fd5b60028110610e36575f80fd5b50565b5f81359050610e4781610e2a565b92915050565b5f60208284031215610e6257610e61610e26565b5b5f610e6f84828501610e39565b91505092915050565b610e8181610ded565b8114610e8b575f80fd5b50565b5f81359050610e9c81610e78565b92915050565b5f60208284031215610eb757610eb6610e26565b5b5f610ec484828501610e8e565b91505092915050565b5f819050919050565b610edf81610ecd565b82525050565b5f602082019050610ef85f830184610ed6565b92915050565b5f819050919050565b5f610f21610f1c610f1784610dce565b610efe565b610dce565b9050919050565b5f610f3282610f07565b9050919050565b5f610f4382610f28565b9050919050565b610f5381610f39565b82525050565b5f602082019050610f6c5f830184610f4a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610fb482610f72565b610fbe8185610f7c565b9350610fce818560208601610f8c565b610fd781610f9a565b840191505092915050565b5f6020820190508181035f830152610ffa8184610faa565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600281106110405761103f611002565b5b50565b5f8190506110508261102f565b919050565b5f61105f82611043565b9050919050565b61106f81611055565b82525050565b5f6020820190506110885f830184611066565b92915050565b61109781610ecd565b81146110a1575f80fd5b50565b5f813590506110b28161108e565b92915050565b5f602082840312156110cd576110cc610e26565b5b5f6110da848285016110a4565b91505092915050565b5f805f606084860312156110fa576110f9610e26565b5b5f61110786828701610e8e565b9350506020611118868287016110a4565b925050604061112986828701610e39565b9150509250925092565b5f6040820190506111465f830185611066565b6111536020830184611066565b9392505050565b5f60408201905061116d5f830185610dfe565b61117a6020830184610dfe565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f611201604a83610f7c565b915061120c82611181565b606082019050919050565b5f6020820190508181035f83015261122e816111f5565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61126c82610ecd565b915061127783610ecd565b925082820190508082111561128f5761128e611235565b5b92915050565b5f6060820190506112a85f830186610ed6565b6112b56020830185610dfe565b6112c26040830184610dfe565b949350505050565b5f6080820190506112dd5f830187610ed6565b6112ea6020830186610dfe565b6112f76040830185610dfe565b6113046060830184611066565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f611367603083610f7c565b91506113728261130d565b604082019050919050565b5f6020820190508181035f8301526113948161135b565b9050919050565b5f63ffffffff82169050919050565b5f6113c46113bf6113ba8461139b565b610efe565b610ecd565b9050919050565b6113d4816113aa565b82525050565b5f82825260208201905092915050565b50565b5f6113f85f836113da565b9150611403826113ea565b5f82019050919050565b5f6060820190506114205f830185610dfe565b61142d60208301846113cb565b818103604083015261143e816113ed565b90509392505050565b5f61145182610ecd565b915061145c83610ecd565b925082820261146a81610ecd565b9150828204841483151761148157611480611235565b5b5092915050565b5f60408201905061149b5f830185610dfe565b6114a86020830184610ed6565b9392505050565b5f815190506114bd81610e78565b92915050565b5f602082840312156114d8576114d7610e26565b5b5f6114e5848285016114af565b91505092915050565b5f6040820190506115015f830185610ed6565b61150e6020830184610ed6565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f61154b61154661154184611515565b610efe565b61151e565b9050919050565b61155b81611531565b82525050565b5f6020820190506115745f830184611552565b9291505056fea164736f6c6343000819000a000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1300000, "intent": "Deploy BaseFeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000108a6080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fb4806100d65f395ff3fe6080604052600436106100e7575f3560e01c806382356d8a11610087578063b49dc74111610057578063b49dc741146102bf578063d0e12f90146102de578063d3e5792b1461030d578063dad544e014610321575f80fd5b806382356d8a146102395780638312f1491461027757806384411d651461028c57806385b5b14d146102a0575f80fd5b80633ccfd60b116100c25780633ccfd60b146101825780633e47158c146101a457806354fd4d50146101b857806366d003ac1461020d575f80fd5b80630d9019e1146100f2578063307f2962146101425780633bbed4a014610163575f80fd5b366100ee57005b5f80fd5b3480156100fd575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d575f80fd5b5061016161015c366004610d62565b610335565b005b34801561016e575f80fd5b5061016161017d366004610d9f565b6103db565b34801561018d575f80fd5b50610196610462565b604051908152602001610139565b3480156101af575f80fd5b50610118610770565b3480156101c3575f80fd5b506102006040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b6040516101399190610dba565b348015610218575f80fd5b506002546101189073ffffffffffffffffffffffffffffffffffffffff1681565b348015610244575f80fd5b5060025461026a9074010000000000000000000000000000000000000000900460ff1681565b6040516101399190610e73565b348015610282575f80fd5b5061019660015481565b348015610297575f80fd5b506101965f5481565b3480156102ab575f80fd5b506101616102ba366004610e87565b610976565b3480156102ca575f80fd5b506101616102d9366004610e9e565b6109bc565b3480156102e9575f80fd5b5060025474010000000000000000000000000000000000000000900460ff1661026a565b348015610318575f80fd5b50600154610196565b34801561032c575f80fd5b50610118610bd8565b61033d610c52565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091169083600181111561039957610399610e0d565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103cf929190610ed9565b60405180910390a15050565b6103e3610c52565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103cf565b5f600154471015610520576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f808282546105339190610f21565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105e89185918591339174010000000000000000000000000000000000000000900460ff1690610f34565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062157610621610e0d565b036106c5575f6106318284610caa565b9050806106c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610517565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610755575f80fd5b505af1158015610767573d5f803e3d5ffd5b50505050505090565b5f8061079a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107bd57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108009190610f75565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061085a906060015b604051602081830303815290604052805190602001205490565b14610891576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108b290606001610840565b905073ffffffffffffffffffffffffffffffffffffffff811615610944578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190610f8c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e610c52565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103cf565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a065750825b90505f8267ffffffffffffffff166001148015610a225750303b155b905081158015610a30575080155b15610a67576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ac85784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610ad0610cbd565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b6857610b68610e0d565b02179055508315610bce5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610be1610770565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4d9190610f8c565b905090565b33610c5b610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614610ca8576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cb6835a84610d3e565b9392505050565b33610cc6610770565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d07575033610cee610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610ca8576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d5d575f80fd5b919050565b5f60208284031215610d72575f80fd5b610cb682610d4f565b73ffffffffffffffffffffffffffffffffffffffff81168114610d9c575f80fd5b50565b5f60208284031215610daf575f80fd5b8135610cb681610d7b565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e6f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e818284610e3a565b92915050565b5f60208284031215610e97575f80fd5b5035919050565b5f805f60608486031215610eb0575f80fd5b8335610ebb81610d7b565b925060208401359150610ed060408501610d4f565b90509250925092565b60408101610ee78285610e3a565b610cb66020830184610e3a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8157610e81610ef4565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f6c6060830184610e3a565b95945050505050565b8082028115828204841417610e8157610e81610ef4565b5f60208284031215610f9c575f80fd5b8151610cb681610d7b56fea164736f6c6343000819000a00000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001717608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b611587806101905f395ff3fe6080604052600436106100bb575f3560e01c80630d9019e1146100c6578063307f2962146100f05780633bbed4a0146101185780633ccfd60b146101405780633e47158c1461016a57806354fd4d501461019457806366d003ac146101be57806382356d8a146101e85780638312f1491461021257806384411d651461023c57806385b5b14d14610266578063b49dc7411461028e578063d0e12f90146102b6578063d3e5792b146102e0578063dad544e01461030a576100c2565b366100c257005b5f80fd5b3480156100d1575f80fd5b506100da610334565b6040516100e79190610e0d565b60405180910390f35b3480156100fb575f80fd5b5061011660048036038101906101119190610e4d565b61035c565b005b348015610123575f80fd5b5061013e60048036038101906101399190610ea2565b6103de565b005b34801561014b575f80fd5b50610154610488565b6040516101619190610ee5565b60405180910390f35b348015610175575f80fd5b5061017e6106a7565b60405161018b9190610f59565b60405180910390f35b34801561019f575f80fd5b506101a86108f6565b6040516101b59190610fe2565b60405180910390f35b3480156101c9575f80fd5b506101d261092f565b6040516101df9190610e0d565b60405180910390f35b3480156101f3575f80fd5b506101fc610954565b6040516102099190611075565b60405180910390f35b34801561021d575f80fd5b50610226610967565b6040516102339190610ee5565b60405180910390f35b348015610247575f80fd5b5061025061096d565b60405161025d9190610ee5565b60405180910390f35b348015610271575f80fd5b5061028c600480360381019061028791906110b8565b610972565b005b348015610299575f80fd5b506102b460048036038101906102af91906110e3565b6109c4565b005b3480156102c1575f80fd5b506102ca610bb7565b6040516102d79190611075565b60405180910390f35b3480156102eb575f80fd5b506102f4610bcd565b6040516103019190610ee5565b60405180910390f35b348015610315575f80fd5b5061031e610bd6565b60405161032b9190610e0d565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610364610c50565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff0219169083600181111561039c5761039b611002565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103d2929190611133565b60405180910390a15050565b6103e6610c50565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e4593818360405161047c92919061115a565b60405180910390a15050565b5f6001544710156104ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c590611217565b60405180910390fd5b479050805f808282546104e19190611262565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba82823360405161054093929190611295565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff1660405161058c94939291906112ca565b60405180910390a16001808111156105a7576105a6611002565b5b600260149054906101000a900460ff1660018111156105c9576105c8611002565b5b03610621575f6105d98284610cbe565b90508061061b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106129061137d565b60405180910390fd5b506106a3565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b815260040161067492919061140d565b5f604051808303818588803b15801561068b575f80fd5b505af115801561069d573d5f803e3d5ffd5b50505050505b5090565b5f806106d47fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461071257809150506108f3565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516107559190611447565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107ac305f604051602001610791929190611488565b60405160208183030381529060405280519060200120610cdc565b146107e3576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6108163060016040516020016107fb929190611488565b60405160208183030381529060405280519060200120610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108c1578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b891906114c3565b925050506108f3565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b61097a610c50565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109b89291906114ee565b60405180910390a15050565b5f6109cd610ce6565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a155750825b90505f60018367ffffffffffffffff16148015610a4857505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a56575080155b15610a8d576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610ada576001855f0160086101000a81548160ff0219169083151502179055505b610ae2610d0d565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b4e57610b4d611002565b5b02179055508315610bad575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610ba49190611561565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f610bdf6106a7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4b91906114c3565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610c6f610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614610cbc576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cca835a84610dbc565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d2c6106a7565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d8357503373ffffffffffffffffffffffffffffffffffffffff16610d6a610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610dba576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610df782610dce565b9050919050565b610e0781610ded565b82525050565b5f602082019050610e205f830184610dfe565b92915050565b5f80fd5b60028110610e36575f80fd5b50565b5f81359050610e4781610e2a565b92915050565b5f60208284031215610e6257610e61610e26565b5b5f610e6f84828501610e39565b91505092915050565b610e8181610ded565b8114610e8b575f80fd5b50565b5f81359050610e9c81610e78565b92915050565b5f60208284031215610eb757610eb6610e26565b5b5f610ec484828501610e8e565b91505092915050565b5f819050919050565b610edf81610ecd565b82525050565b5f602082019050610ef85f830184610ed6565b92915050565b5f819050919050565b5f610f21610f1c610f1784610dce565b610efe565b610dce565b9050919050565b5f610f3282610f07565b9050919050565b5f610f4382610f28565b9050919050565b610f5381610f39565b82525050565b5f602082019050610f6c5f830184610f4a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610fb482610f72565b610fbe8185610f7c565b9350610fce818560208601610f8c565b610fd781610f9a565b840191505092915050565b5f6020820190508181035f830152610ffa8184610faa565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600281106110405761103f611002565b5b50565b5f8190506110508261102f565b919050565b5f61105f82611043565b9050919050565b61106f81611055565b82525050565b5f6020820190506110885f830184611066565b92915050565b61109781610ecd565b81146110a1575f80fd5b50565b5f813590506110b28161108e565b92915050565b5f602082840312156110cd576110cc610e26565b5b5f6110da848285016110a4565b91505092915050565b5f805f606084860312156110fa576110f9610e26565b5b5f61110786828701610e8e565b9350506020611118868287016110a4565b925050604061112986828701610e39565b9150509250925092565b5f6040820190506111465f830185611066565b6111536020830184611066565b9392505050565b5f60408201905061116d5f830185610dfe565b61117a6020830184610dfe565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f611201604a83610f7c565b915061120c82611181565b606082019050919050565b5f6020820190508181035f83015261122e816111f5565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61126c82610ecd565b915061127783610ecd565b925082820190508082111561128f5761128e611235565b5b92915050565b5f6060820190506112a85f830186610ed6565b6112b56020830185610dfe565b6112c26040830184610dfe565b949350505050565b5f6080820190506112dd5f830187610ed6565b6112ea6020830186610dfe565b6112f76040830185610dfe565b6113046060830184611066565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f611367603083610f7c565b91506113728261130d565b604082019050919050565b5f6020820190508181035f8301526113948161135b565b9050919050565b5f63ffffffff82169050919050565b5f6113c46113bf6113ba8461139b565b610efe565b610ecd565b9050919050565b6113d4816113aa565b82525050565b5f82825260208201905092915050565b50565b5f6113f85f836113da565b9150611403826113ea565b5f82019050919050565b5f6060820190506114205f830185610dfe565b61142d60208301846113cb565b818103604083015261143e816113ed565b90509392505050565b5f61145182610ecd565b915061145c83610ecd565b925082820261146a81610ecd565b9150828204841483151761148157611480611235565b5b5092915050565b5f60408201905061149b5f830185610dfe565b6114a86020830184610ed6565b9392505050565b5f815190506114bd81610e78565b92915050565b5f602082840312156114d8576114d7610e26565b5b5f6114e5848285016114af565b91505092915050565b5f6040820190506115015f830185610ed6565b61150e6020830184610ed6565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f61154b61154661154184611515565b610efe565b61151e565b9050919050565b61155b81611531565b82525050565b5f6020820190506115745f830184611552565b9291505056fea164736f6c6343000819000a000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 50000, "intent": "Deploy L1FeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000108a6080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fb4806100d65f395ff3fe6080604052600436106100e7575f3560e01c806382356d8a11610087578063b49dc74111610057578063b49dc741146102bf578063d0e12f90146102de578063d3e5792b1461030d578063dad544e014610321575f80fd5b806382356d8a146102395780638312f1491461027757806384411d651461028c57806385b5b14d146102a0575f80fd5b80633ccfd60b116100c25780633ccfd60b146101825780633e47158c146101a457806354fd4d50146101b857806366d003ac1461020d575f80fd5b80630d9019e1146100f2578063307f2962146101425780633bbed4a014610163575f80fd5b366100ee57005b5f80fd5b3480156100fd575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d575f80fd5b5061016161015c366004610d62565b610335565b005b34801561016e575f80fd5b5061016161017d366004610d9f565b6103db565b34801561018d575f80fd5b50610196610462565b604051908152602001610139565b3480156101af575f80fd5b50610118610770565b3480156101c3575f80fd5b506102006040518060400160405280600581526020017f312e312e3100000000000000000000000000000000000000000000000000000081525081565b6040516101399190610dba565b348015610218575f80fd5b506002546101189073ffffffffffffffffffffffffffffffffffffffff1681565b348015610244575f80fd5b5060025461026a9074010000000000000000000000000000000000000000900460ff1681565b6040516101399190610e73565b348015610282575f80fd5b5061019660015481565b348015610297575f80fd5b506101965f5481565b3480156102ab575f80fd5b506101616102ba366004610e87565b610976565b3480156102ca575f80fd5b506101616102d9366004610e9e565b6109bc565b3480156102e9575f80fd5b5060025474010000000000000000000000000000000000000000900460ff1661026a565b348015610318575f80fd5b50600154610196565b34801561032c575f80fd5b50610118610bd8565b61033d610c52565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091169083600181111561039957610399610e0d565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103cf929190610ed9565b60405180910390a15050565b6103e3610c52565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103cf565b5f600154471015610520576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f808282546105339190610f21565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105e89185918591339174010000000000000000000000000000000000000000900460ff1690610f34565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062157610621610e0d565b036106c5575f6106318284610caa565b9050806106c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610517565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610755575f80fd5b505af1158015610767573d5f803e3d5ffd5b50505050505090565b5f8061079a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107bd57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108009190610f75565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061085a906060015b604051602081830303815290604052805190602001205490565b14610891576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108b290606001610840565b905073ffffffffffffffffffffffffffffffffffffffff811615610944578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190610f8c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e610c52565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103cf565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a065750825b90505f8267ffffffffffffffff166001148015610a225750303b155b905081158015610a30575080155b15610a67576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ac85784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610ad0610cbd565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b6857610b68610e0d565b02179055508315610bce5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610be1610770565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4d9190610f8c565b905090565b33610c5b610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614610ca8576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cb6835a84610d3e565b9392505050565b33610cc6610770565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d07575033610cee610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610ca8576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d5d575f80fd5b919050565b5f60208284031215610d72575f80fd5b610cb682610d4f565b73ffffffffffffffffffffffffffffffffffffffff81168114610d9c575f80fd5b50565b5f60208284031215610daf575f80fd5b8135610cb681610d7b565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e6f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e818284610e3a565b92915050565b5f60208284031215610e97575f80fd5b5035919050565b5f805f60608486031215610eb0575f80fd5b8335610ebb81610d7b565b925060208401359150610ed060408501610d4f565b90509250925092565b60408101610ee78285610e3a565b610cb66020830184610e3a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8157610e81610ef4565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f6c6060830184610e3a565b95945050505050565b8082028115828204841417610e8157610e81610ef4565b5f60208284031215610f9c575f80fd5b8151610cb681610d7b56fea164736f6c6343000819000a00000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001717608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b611587806101905f395ff3fe6080604052600436106100bb575f3560e01c80630d9019e1146100c6578063307f2962146100f05780633bbed4a0146101185780633ccfd60b146101405780633e47158c1461016a57806354fd4d501461019457806366d003ac146101be57806382356d8a146101e85780638312f1491461021257806384411d651461023c57806385b5b14d14610266578063b49dc7411461028e578063d0e12f90146102b6578063d3e5792b146102e0578063dad544e01461030a576100c2565b366100c257005b5f80fd5b3480156100d1575f80fd5b506100da610334565b6040516100e79190610e0d565b60405180910390f35b3480156100fb575f80fd5b5061011660048036038101906101119190610e4d565b61035c565b005b348015610123575f80fd5b5061013e60048036038101906101399190610ea2565b6103de565b005b34801561014b575f80fd5b50610154610488565b6040516101619190610ee5565b60405180910390f35b348015610175575f80fd5b5061017e6106a7565b60405161018b9190610f59565b60405180910390f35b34801561019f575f80fd5b506101a86108f6565b6040516101b59190610fe2565b60405180910390f35b3480156101c9575f80fd5b506101d261092f565b6040516101df9190610e0d565b60405180910390f35b3480156101f3575f80fd5b506101fc610954565b6040516102099190611075565b60405180910390f35b34801561021d575f80fd5b50610226610967565b6040516102339190610ee5565b60405180910390f35b348015610247575f80fd5b5061025061096d565b60405161025d9190610ee5565b60405180910390f35b348015610271575f80fd5b5061028c600480360381019061028791906110b8565b610972565b005b348015610299575f80fd5b506102b460048036038101906102af91906110e3565b6109c4565b005b3480156102c1575f80fd5b506102ca610bb7565b6040516102d79190611075565b60405180910390f35b3480156102eb575f80fd5b506102f4610bcd565b6040516103019190610ee5565b60405180910390f35b348015610315575f80fd5b5061031e610bd6565b60405161032b9190610e0d565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610364610c50565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff0219169083600181111561039c5761039b611002565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103d2929190611133565b60405180910390a15050565b6103e6610c50565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e4593818360405161047c92919061115a565b60405180910390a15050565b5f6001544710156104ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c590611217565b60405180910390fd5b479050805f808282546104e19190611262565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba82823360405161054093929190611295565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff1660405161058c94939291906112ca565b60405180910390a16001808111156105a7576105a6611002565b5b600260149054906101000a900460ff1660018111156105c9576105c8611002565b5b03610621575f6105d98284610cbe565b90508061061b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106129061137d565b60405180910390fd5b506106a3565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b815260040161067492919061140d565b5f604051808303818588803b15801561068b575f80fd5b505af115801561069d573d5f803e3d5ffd5b50505050505b5090565b5f806106d47fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461071257809150506108f3565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516107559190611447565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107ac305f604051602001610791929190611488565b60405160208183030381529060405280519060200120610cdc565b146107e3576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6108163060016040516020016107fb929190611488565b60405160208183030381529060405280519060200120610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108c1578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b891906114c3565b925050506108f3565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e312e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b61097a610c50565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109b89291906114ee565b60405180910390a15050565b5f6109cd610ce6565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a155750825b90505f60018367ffffffffffffffff16148015610a4857505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a56575080155b15610a8d576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610ada576001855f0160086101000a81548160ff0219169083151502179055505b610ae2610d0d565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b4e57610b4d611002565b5b02179055508315610bad575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610ba49190611561565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f610bdf6106a7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4b91906114c3565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610c6f610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614610cbc576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cca835a84610dbc565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d2c6106a7565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d8357503373ffffffffffffffffffffffffffffffffffffffff16610d6a610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610dba576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610df782610dce565b9050919050565b610e0781610ded565b82525050565b5f602082019050610e205f830184610dfe565b92915050565b5f80fd5b60028110610e36575f80fd5b50565b5f81359050610e4781610e2a565b92915050565b5f60208284031215610e6257610e61610e26565b5b5f610e6f84828501610e39565b91505092915050565b610e8181610ded565b8114610e8b575f80fd5b50565b5f81359050610e9c81610e78565b92915050565b5f60208284031215610eb757610eb6610e26565b5b5f610ec484828501610e8e565b91505092915050565b5f819050919050565b610edf81610ecd565b82525050565b5f602082019050610ef85f830184610ed6565b92915050565b5f819050919050565b5f610f21610f1c610f1784610dce565b610efe565b610dce565b9050919050565b5f610f3282610f07565b9050919050565b5f610f4382610f28565b9050919050565b610f5381610f39565b82525050565b5f602082019050610f6c5f830184610f4a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610fb482610f72565b610fbe8185610f7c565b9350610fce818560208601610f8c565b610fd781610f9a565b840191505092915050565b5f6020820190508181035f830152610ffa8184610faa565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600281106110405761103f611002565b5b50565b5f8190506110508261102f565b919050565b5f61105f82611043565b9050919050565b61106f81611055565b82525050565b5f6020820190506110885f830184611066565b92915050565b61109781610ecd565b81146110a1575f80fd5b50565b5f813590506110b28161108e565b92915050565b5f602082840312156110cd576110cc610e26565b5b5f6110da848285016110a4565b91505092915050565b5f805f606084860312156110fa576110f9610e26565b5b5f61110786828701610e8e565b9350506020611118868287016110a4565b925050604061112986828701610e39565b9150509250925092565b5f6040820190506111465f830185611066565b6111536020830184611066565b9392505050565b5f60408201905061116d5f830185610dfe565b61117a6020830184610dfe565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f611201604a83610f7c565b915061120c82611181565b606082019050919050565b5f6020820190508181035f83015261122e816111f5565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61126c82610ecd565b915061127783610ecd565b925082820190508082111561128f5761128e611235565b5b92915050565b5f6060820190506112a85f830186610ed6565b6112b56020830185610dfe565b6112c26040830184610dfe565b949350505050565b5f6080820190506112dd5f830187610ed6565b6112ea6020830186610dfe565b6112f76040830185610dfe565b6113046060830184611066565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f611367603083610f7c565b91506113728261130d565b604082019050919050565b5f6020820190508181035f8301526113948161135b565b9050919050565b5f63ffffffff82169050919050565b5f6113c46113bf6113ba8461139b565b610efe565b610ecd565b9050919050565b6113d4816113aa565b82525050565b5f82825260208201905092915050565b50565b5f6113f85f836113da565b9150611403826113ea565b5f82019050919050565b5f6060820190506114205f830185610dfe565b61142d60208301846113cb565b818103604083015261143e816113ed565b90509392505050565b5f61145182610ecd565b915061145c83610ecd565b925082820261146a81610ecd565b9150828204841483151761148157611480611235565b5b5092915050565b5f60408201905061149b5f830185610dfe565b6114a86020830184610ed6565b9392505050565b5f815190506114bd81610e78565b92915050565b5f602082840312156114d8576114d7610e26565b5b5f6114e5848285016114af565b91505092915050565b5f6040820190506115015f830185610ed6565b61150e6020830184610ed6565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f61154b61154661154184611515565b610efe565b61151e565b9050919050565b61155b81611531565b82525050565b5f6020820190506115745f830184611552565b9291505056fea164736f6c6343000819000a000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1300000, "intent": "Deploy OperatorFeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000081e608060405234801561001057600080fd5b506107fe806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806360d7a27814610098578063a2ea7c6e146100b9575b600080fd5b6100826040518060400160405280600c81526020017f312e332e312d626574612e32000000000000000000000000000000000000000081525081565b60405161008f9190610473565b60405180910390f35b6100ab6100a636600461048d565b6100d9565b60405190815260200161008f565b6100cc6100c736600461053f565b61029d565b60405161008f9190610558565b60008060405180608001604052806000801b81526020018573ffffffffffffffffffffffffffffffffffffffff168152602001841515815260200187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509390945250929350915061015b9050826103c5565b600081815260208190526040902054909150156101a4576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80825260008181526020818152604091829020845181559084015160018201805493860151151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00000000000000000000000000000000000000000090941673ffffffffffffffffffffffffffffffffffffffff9092169190911792909217909155606083015183919060028201906102409082610682565b509050503373ffffffffffffffffffffffffffffffffffffffff16817fd0b86852e21f9e5fa4bc3b0cff9757ffe243d50c4b43968a42202153d651ea5e8460405161028b9190610558565b60405180910390a39695505050505050565b604080516080810182526000808252602082018190529181019190915260608082015260008281526020818152604091829020825160808101845281548152600182015473ffffffffffffffffffffffffffffffffffffffff8116938201939093527401000000000000000000000000000000000000000090920460ff1615159282019290925260028201805491929160608401919061033c906105e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610368906105e0565b80156103b55780601f1061038a576101008083540402835291602001916103b5565b820191906000526020600020905b81548152906001019060200180831161039857829003601f168201915b5050505050815250509050919050565b60008160600151826020015183604001516040516020016103e89392919061079c565b604051602081830303815290604052805190602001209050919050565b60005b83811015610420578181015183820152602001610408565b50506000910152565b60008151808452610441816020860160208601610405565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104866020830184610429565b9392505050565b600080600080606085870312156104a357600080fd5b843567ffffffffffffffff808211156104bb57600080fd5b818701915087601f8301126104cf57600080fd5b8135818111156104de57600080fd5b8860208285010111156104f057600080fd5b6020928301965094505085013573ffffffffffffffffffffffffffffffffffffffff8116811461051f57600080fd5b91506040850135801515811461053457600080fd5b939692955090935050565b60006020828403121561055157600080fd5b5035919050565b602081528151602082015273ffffffffffffffffffffffffffffffffffffffff6020830151166040820152604082015115156060820152600060608301516080808401526105a960a0840182610429565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600181811c908216806105f457607f821691505b60208210810361062d577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f82111561067d57600081815260208120601f850160051c8101602086101561065a5750805b601f850160051c820191505b8181101561067957828155600101610666565b5050505b505050565b815167ffffffffffffffff81111561069c5761069c6105b1565b6106b0816106aa84546105e0565b84610633565b602080601f83116001811461070357600084156106cd5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610679565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561075057888601518255948401946001909101908401610731565b508582101561078c57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600084516107ae818460208901610405565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815290151560f81b60148201526015019291505056fea164736f6c6343000813000a0000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000cf4608060405234801561001057600080fd5b50610cd4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806360d7a27814610064578063a2ea7c6e14610094575b600080fd5b61004e6100c4565b60405161005b919061052f565b60405180910390f35b61007e60048036038101906100799190610668565b6100fd565b60405161008b91906106f5565b60405180910390f35b6100ae60048036038101906100a9919061073c565b6102e3565b6040516100bb9190610893565b60405180910390f35b6040518060400160405280600c81526020017f312e332e312d626574612e32000000000000000000000000000000000000000081525081565b60008060405180608001604052806000801b81526020018573ffffffffffffffffffffffffffffffffffffffff168152602001841515815260200187878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508152509050600061018d8261041c565b90506000801b60008083815260200190815260200160002060000154146101e0576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80826000018181525050816000808381526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff02191690831515021790555060608201518160020190816102839190610af0565b509050503373ffffffffffffffffffffffffffffffffffffffff16817fd0b86852e21f9e5fa4bc3b0cff9757ffe243d50c4b43968a42202153d651ea5e846040516102ce9190610893565b60405180910390a38092505050949350505050565b6102eb61045c565b600080838152602001908152602001600020604051806080016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900460ff1615151515815260200160028201805461039390610913565b80601f01602080910402602001604051908101604052809291908181526020018280546103bf90610913565b801561040c5780601f106103e15761010080835404028352916020019161040c565b820191906000526020600020905b8154815290600101906020018083116103ef57829003601f168201915b5050505050815250509050919050565b600081606001518260200151836040015160405160200161043f93929190610c8e565b604051602081830303815290604052805190602001209050919050565b604051806080016040528060008019168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001606081525090565b600081519050919050565b600082825260208201905092915050565b60005b838110156104d95780820151818401526020810190506104be565b60008484015250505050565b6000601f19601f8301169050919050565b60006105018261049f565b61050b81856104aa565b935061051b8185602086016104bb565b610524816104e5565b840191505092915050565b6000602082019050818103600083015261054981846104f6565b905092915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f8401126105805761057f61055b565b5b8235905067ffffffffffffffff81111561059d5761059c610560565b5b6020830191508360018202830111156105b9576105b8610565565b5b9250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006105eb826105c0565b9050919050565b60006105fd826105e0565b9050919050565b61060d816105f2565b811461061857600080fd5b50565b60008135905061062a81610604565b92915050565b60008115159050919050565b61064581610630565b811461065057600080fd5b50565b6000813590506106628161063c565b92915050565b6000806000806060858703121561068257610681610551565b5b600085013567ffffffffffffffff8111156106a05761069f610556565b5b6106ac8782880161056a565b945094505060206106bf8782880161061b565b92505060406106d087828801610653565b91505092959194509250565b6000819050919050565b6106ef816106dc565b82525050565b600060208201905061070a60008301846106e6565b92915050565b610719816106dc565b811461072457600080fd5b50565b60008135905061073681610710565b92915050565b60006020828403121561075257610751610551565b5b600061076084828501610727565b91505092915050565b610772816106dc565b82525050565b6000819050919050565b600061079d610798610793846105c0565b610778565b6105c0565b9050919050565b60006107af82610782565b9050919050565b60006107c1826107a4565b9050919050565b6107d1816107b6565b82525050565b6107e081610630565b82525050565b600082825260208201905092915050565b60006108028261049f565b61080c81856107e6565b935061081c8185602086016104bb565b610825816104e5565b840191505092915050565b60006080830160008301516108486000860182610769565b50602083015161085b60208601826107c8565b50604083015161086e60408601826107d7565b506060830151848203606086015261088682826107f7565b9150508091505092915050565b600060208201905081810360008301526108ad8184610830565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061092b57607f821691505b60208210810361093e5761093d6108e4565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026109a67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610969565b6109b08683610969565b95508019841693508086168417925050509392505050565b6000819050919050565b60006109ed6109e86109e3846109c8565b610778565b6109c8565b9050919050565b6000819050919050565b610a07836109d2565b610a1b610a13826109f4565b848454610976565b825550505050565b600090565b610a30610a23565b610a3b8184846109fe565b505050565b5b81811015610a5f57610a54600082610a28565b600181019050610a41565b5050565b601f821115610aa457610a7581610944565b610a7e84610959565b81016020851015610a8d578190505b610aa1610a9985610959565b830182610a40565b50505b505050565b600082821c905092915050565b6000610ac760001984600802610aa9565b1980831691505092915050565b6000610ae08383610ab6565b9150826002028217905092915050565b610af98261049f565b67ffffffffffffffff811115610b1257610b116108b5565b5b610b1c8254610913565b610b27828285610a63565b600060209050601f831160018114610b5a5760008415610b48578287015190505b610b528582610ad4565b865550610bba565b601f198416610b6886610944565b60005b82811015610b9057848901518255600182019150602085019450602081019050610b6b565b86831015610bad5784890151610ba9601f891682610ab6565b8355505b6001600288020188555050505b505050505050565b600081905092915050565b6000610bd88261049f565b610be28185610bc2565b9350610bf28185602086016104bb565b80840191505092915050565b60008160601b9050919050565b6000610c1682610bfe565b9050919050565b6000610c2882610c0b565b9050919050565b610c40610c3b826107b6565b610c1d565b82525050565b60008160f81b9050919050565b6000610c5e82610c46565b9050919050565b6000610c7082610c53565b9050919050565b610c88610c8382610630565b610c65565b82525050565b6000610c9a8286610bcd565b9150610ca68285610c2f565b601482019150610cb68284610c77565b60018201915081905094935050505056fea164736f6c6343000813000a000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 700000, "intent": "Deploy SchemaRegistry Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000046c961016060405234801561001157600080fd5b50604080518082018252600381526245415360e81b60208083019182528351808501855260058152640312e332e360dc1b908201529151812060e08190527f6a08c3e203132c561752255a4d52ffae85bb9c5d33cb3291520dea1b843563896101008190524660a081815286517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f818801819052818901959095526060810193909352608080840192909252308382018190528751808503909201825260c093840190975280519501949094209093529290915261012091909152516101405260805160a05160c05160e05161010051610120516101405161457e61014b600039600061073701526000612784015260006127d3015260006127ae01526000612707015260006127310152600061275b015261457e6000f3fe60806040526004361061018b5760003560e01c806395411525116100d6578063d45c44351161007f578063ed24911d11610059578063ed24911d146104fd578063f10b5cc814610512578063f17325e71461054157600080fd5b8063d45c443514610467578063e30bb5631461049e578063e71ff365146104dd57600080fd5b8063b469318d116100b0578063b469318d146103ba578063b83010d314610414578063cf190f341461044757600080fd5b80639541152514610367578063a3112a641461037a578063a6d4dbc7146103a757600080fd5b806344adc90e116101385780634d003070116101125780634d003070146102de57806354fd4d50146102fe57806379f7573a1461034757600080fd5b806344adc90e1461029857806346926267146102b85780634cb7e9e5146102cb57600080fd5b806317d7de7c1161016957806317d7de7c146102205780632d0335ab146102425780633c0427151461028557600080fd5b80630eabf6601461019057806312b11a17146101a557806313893f61146101e7575b600080fd5b6101a361019e3660046134c8565b610554565b005b3480156101b157600080fd5b507ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d9880765b6040519081526020015b60405180910390f35b3480156101f357600080fd5b506102076102023660046134c8565b6106eb565b60405167ffffffffffffffff90911681526020016101de565b34801561022c57600080fd5b50610235610730565b6040516101de9190613578565b34801561024e57600080fd5b506101d461025d3660046135bd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6101d46102933660046135da565b610760565b6102ab6102a63660046134c8565b610863565b6040516101de9190613615565b6101a36102c6366004613659565b6109e4565b6101a36102d93660046134c8565b610a68565b3480156102ea57600080fd5b506102076102f9366004613671565b610b4b565b34801561030a57600080fd5b506102356040518060400160405280600c81526020017f312e342e312d626574612e33000000000000000000000000000000000000000081525081565b34801561035357600080fd5b506101a3610362366004613671565b610b58565b6102ab6103753660046134c8565b610bef565b34801561038657600080fd5b5061039a610395366004613671565b610e62565b6040516101de9190613771565b6101a36103b5366004613784565b611025565b3480156103c657600080fd5b506102076103d5366004613797565b73ffffffffffffffffffffffffffffffffffffffff919091166000908152603460209081526040808320938352929052205467ffffffffffffffff1690565b34801561042057600080fd5b507fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e756101d4565b34801561045357600080fd5b50610207610462366004613671565b6110ca565b34801561047357600080fd5b50610207610482366004613671565b60009081526033602052604090205467ffffffffffffffff1690565b3480156104aa57600080fd5b506104cd6104b9366004613671565b600090815260326020526040902054151590565b60405190151581526020016101de565b3480156104e957600080fd5b506102076104f83660046134c8565b6110d8565b34801561050957600080fd5b506101d4611110565b34801561051e57600080fd5b5060405173420000000000000000000000000000000000002081526020016101de565b6101d461054f3660046137c3565b61111a565b348160005b818110156106e4577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82018114600086868481811061059a5761059a6137fe565b90506020028101906105ac919061382d565b6105b590613ac3565b60208101518051919250908015806105d257508260400151518114155b15610609576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b818110156106ad576106a56040518060a001604052808660000151815260200185848151811061063e5761063e6137fe565b6020026020010151815260200186604001518481518110610661576106616137fe565b60200260200101518152602001866060015173ffffffffffffffffffffffffffffffffffffffff168152602001866080015167ffffffffffffffff168152506111d8565b60010161060c565b506106c383600001518385606001518a886113e9565b6106cd9088613bed565b9650505050506106dd8160010190565b9050610559565b5050505050565b60004282825b818110156107245761071c3387878481811061070f5761070f6137fe565b9050602002013585611a18565b6001016106f1565b50909150505b92915050565b606061075b7f0000000000000000000000000000000000000000000000000000000000000000611b17565b905090565b600061077361076e83613d22565b611ca5565b604080516001808252818301909252600091816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083015260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90920191018161078a5790505090506107f86020840184613d9d565b61080190613dd1565b81600081518110610814576108146137fe565b602090810291909101015261083d83358261083560c0870160a088016135bd565b346001611e2f565b60200151600081518110610853576108536137fe565b6020026020010151915050919050565b60608160008167ffffffffffffffff8111156108815761088161386b565b6040519080825280602002602001820160405280156108b457816020015b606081526020019060019003908161089f5790505b509050600034815b848110156109ce577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85018114368989848181106108fc576108fc6137fe565b905060200281019061090e9190613ddd565b905061091d6020820182613e11565b9050600003610958576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061097d823561096c6020850185613e11565b61097591613e79565b338887611e2f565b805190915061098c9086613bed565b945080602001518785815181106109a5576109a56137fe565b6020026020010181905250806020015151860195505050506109c78160010190565b90506108bc565b506109d98383612541565b979650505050505050565b604080516001808252818301909252600091816020015b60408051808201909152600080825260208201528152602001906001900390816109fb579050509050610a3636839003830160208401613eed565b81600081518110610a4957610a496137fe565b6020908102919091010152610a63823582333460016113e9565b505050565b348160005b818110156106e4577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8201811436868684818110610aad57610aad6137fe565b9050602002810190610abf9190613ddd565b9050610b2c8135610ad36020840184613f09565b808060200260200160405190810160405280939291908181526020016000905b82821015610b1f57610b1060408302860136819003810190613eed565b81526020019060010190610af3565b50505050503388866113e9565b610b369086613bed565b94505050610b448160010190565b9050610a6d565b60004261072a838261262b565b33600090815260208190526040902054808211610ba1576040517f756688fe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b336000908152602081815260409182902084905581518381529081018490527f57b09af877df9068fd60a69d7b21f5576b8b38955812d6ae4ac52942f1e38fb7910160405180910390a15050565b60608160008167ffffffffffffffff811115610c0d57610c0d61386b565b604051908082528060200260200182016040528015610c4057816020015b6060815260200190600190039081610c2b5790505b509050600034815b848110156109ce577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8501811436898984818110610c8857610c886137fe565b9050602002810190610c9a919061382d565b9050366000610cac6020840184613e11565b909250905080801580610ccd5750610cc76040850185613f71565b90508114155b15610d04576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610de557610ddd6040518060a0016040528087600001358152602001868685818110610d3957610d396137fe565b9050602002810190610d4b9190613d9d565b610d5490613dd1565b8152602001610d666040890189613f71565b85818110610d7657610d766137fe565b905060600201803603810190610d8c9190613fd8565b8152602001610da16080890160608a016135bd565b73ffffffffffffffffffffffffffffffffffffffff168152602001610dcc60a0890160808a01613ff4565b67ffffffffffffffff169052611ca5565b600101610d07565b506000610e0e8535610df78587613e79565b610e076080890160608a016135bd565b8b8a611e2f565b8051909150610e1d9089613bed565b975080602001518a8881518110610e3657610e366137fe565b602002602001018190525080602001515189019850505050505050610e5b8160010190565b9050610c48565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e0820183905261010082019290925261012081019190915260008281526032602090815260409182902082516101408101845281548152600182015492810192909252600281015467ffffffffffffffff808216948401949094526801000000000000000081048416606084015270010000000000000000000000000000000090049092166080820152600382015460a0820152600482015473ffffffffffffffffffffffffffffffffffffffff90811660c0830152600583015490811660e083015274010000000000000000000000000000000000000000900460ff16151561010082015260068201805491929161012084019190610f9c9061400f565b80601f0160208091040260200160405190810160405280929190818152602001828054610fc89061400f565b80156110155780601f10610fea57610100808354040283529160200191611015565b820191906000526020600020905b815481529060010190602001808311610ff857829003601f168201915b5050505050815250509050919050565b61103c6110373683900383018361405c565b6111d8565b604080516001808252818301909252600091816020015b604080518082019091526000808252602082015281526020019060019003908161105357905050905061108e36839003830160208401613eed565b816000815181106110a1576110a16137fe565b6020908102919091010152610a638235826110c260e0860160c087016135bd565b3460016113e9565b60004261072a338483611a18565b60004282825b81811015610724576111088686838181106110fb576110fb6137fe565b905060200201358461262b565b6001016110de565b600061075b6126ed565b604080516001808252818301909252600091829190816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083015260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816111345790505090506111a26020840184613d9d565b6111ab90613dd1565b816000815181106111be576111be6137fe565b602090810291909101015261083d83358233346001611e2f565b608081015167ffffffffffffffff161580159061120c57504267ffffffffffffffff16816080015167ffffffffffffffff16105b15611243576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020808201516040808401516060850151855184518587015173ffffffffffffffffffffffffffffffffffffffff84166000908152978890529487208054969794969495611337957fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e7595949392886112ba836140ca565b909155506080808c015160408051602081019990995273ffffffffffffffffffffffffffffffffffffffff9097169688019690965260608701949094529285019190915260a084015260c083015267ffffffffffffffff1660e0820152610100015b60405160208183030381529060405280519060200120612821565b90506113ad84606001518284602001518560400151866000015160405160200161139993929190928352602083019190915260f81b7fff0000000000000000000000000000000000000000000000000000000000000016604082015260410190565b604051602081830303815290604052612834565b6113e3576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b6040517fa2ea7c6e0000000000000000000000000000000000000000000000000000000081526004810186905260009081907342000000000000000000000000000000000000209063a2ea7c6e90602401600060405180830381865afa158015611457573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261149d9190810190614102565b80519091506114d8576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b855160008167ffffffffffffffff8111156114f5576114f561386b565b60405190808252806020026020018201604052801561159457816020015b60408051610140810182526000808252602080830182905292820181905260608083018290526080830182905260a0830182905260c0830182905260e0830182905261010083019190915261012082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816115135790505b50905060008267ffffffffffffffff8111156115b2576115b261386b565b6040519080825280602002602001820160405280156115db578160200160208202803683370190505b50905060005b838110156119fa5760008a82815181106115fd576115fd6137fe565b6020908102919091018101518051600090815260329092526040909120805491925090611656576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8c816001015414611693576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600581015473ffffffffffffffffffffffffffffffffffffffff8c81169116146116e9576040517f4ca8886700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600581015474010000000000000000000000000000000000000000900460ff1661173f576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002810154700100000000000000000000000000000000900467ffffffffffffffff1615611799576040517f905e710700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b426002820180547fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff811670010000000000000000000000000000000067ffffffffffffffff948516810291821793849055604080516101408101825287548152600188015460208201529386169286169290921791830191909152680100000000000000008304841660608301529091049091166080820152600382015460a0820152600482015473ffffffffffffffffffffffffffffffffffffffff90811660c0830152600583015490811660e083015274010000000000000000000000000000000000000000900460ff16151561010082015260068201805483916101208401916118a59061400f565b80601f01602080910402602001604051908101604052809291908181526020018280546118d19061400f565b801561191e5780601f106118f35761010080835404028352916020019161191e565b820191906000526020600020905b81548152906001019060200180831161190157829003601f168201915b505050505081525050858481518110611939576119396137fe565b6020026020010181905250816020015184848151811061195b5761195b6137fe565b6020026020010181815250508c8b73ffffffffffffffffffffffffffffffffffffffff16868581518110611991576119916137fe565b602002602001015160c0015173ffffffffffffffffffffffffffffffffffffffff167ff930a6e2523c9cc298691873087a740550b8fc85a0680830414c148ed927f61585600001516040516119e891815260200190565b60405180910390a450506001016115e1565b50611a0a84838360018b8b612a03565b9a9950505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff83166000908152603460209081526040808320858452918290529091205467ffffffffffffffff1615611a8c576040517fec9d6eeb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008381526020829052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff861690811790915590519091859173ffffffffffffffffffffffffffffffffffffffff8816917f92a1f7a41a7c585a8b09e25b195e225b1d43248daca46b0faf9e0792777a222991a450505050565b604080516020808252818301909252606091600091906020820181803683370190505090506000805b6020811015611be2576000858260208110611b5d57611b5d6137fe565b1a60f81b90507fff000000000000000000000000000000000000000000000000000000000000008116600003611b935750611be2565b80848481518110611ba657611ba66137fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053505060019182019101611b40565b5060008167ffffffffffffffff811115611bfe57611bfe61386b565b6040519080825280601f01601f191660200182016040528015611c28576020820181803683370190505b50905060005b82811015611c9c57838181518110611c4857611c486137fe565b602001015160f81c60f81b828281518110611c6557611c656137fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600101611c2e565b50949350505050565b608081015167ffffffffffffffff1615801590611cd957504267ffffffffffffffff16816080015167ffffffffffffffff16105b15611d10576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020808201516040808401516060808601518651855186880151868801519488015160808901518051908b012060a08a015173ffffffffffffffffffffffffffffffffffffffff871660009081529b8c9052988b2080549a9b989a9899611337997ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d988076999493928c611da0836140ca565b919050558e6080015160405160200161131c9b9a999897969594939291909a8b5273ffffffffffffffffffffffffffffffffffffffff998a1660208c015260408b019890985295909716606089015267ffffffffffffffff938416608089015291151560a088015260c087015260e0860152610100850193909352610120840152166101408201526101600190565b60408051808201909152600081526060602082015284516040805180820190915260008152606060208201528167ffffffffffffffff811115611e7457611e7461386b565b604051908082528060200260200182016040528015611e9d578160200160208202803683370190505b5060208201526040517fa2ea7c6e000000000000000000000000000000000000000000000000000000008152600481018990526000907342000000000000000000000000000000000000209063a2ea7c6e90602401600060405180830381865afa158015611f0f573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052611f559190810190614102565b8051909150611f90576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008367ffffffffffffffff811115611fab57611fab61386b565b60405190808252806020026020018201604052801561204a57816020015b60408051610140810182526000808252602080830182905292820181905260608083018290526080830182905260a0830182905260c0830182905260e0830182905261010083019190915261012082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909201910181611fc95790505b50905060008467ffffffffffffffff8111156120685761206861386b565b604051908082528060200260200182016040528015612091578160200160208202803683370190505b50905060005b858110156125205760008b82815181106120b3576120b36137fe565b60200260200101519050600067ffffffffffffffff16816020015167ffffffffffffffff16141580156120fe57504267ffffffffffffffff16816020015167ffffffffffffffff1611155b15612135576040517f08e8b93700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8460400151158015612148575080604001515b1561217f576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006040518061014001604052806000801b81526020018f81526020016121a34290565b67ffffffffffffffff168152602001836020015167ffffffffffffffff168152602001600067ffffffffffffffff16815260200183606001518152602001836000015173ffffffffffffffffffffffffffffffffffffffff1681526020018d73ffffffffffffffffffffffffffffffffffffffff16815260200183604001511515815260200183608001518152509050600080600090505b6122458382612df4565b600081815260326020526040902054909250156122645760010161223b565b81835260008281526032602090815260409182902085518155908501516001820155908401516002820180546060870151608088015167ffffffffffffffff908116700100000000000000000000000000000000027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff92821668010000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009094169190951617919091171691909117905560a0840151600382015560c084015160048201805473ffffffffffffffffffffffffffffffffffffffff9283167fffffffffffffffffffffffff000000000000000000000000000000000000000090911617905560e0850151600583018054610100880151151574010000000000000000000000000000000000000000027fffffffffffffffffffffff000000000000000000000000000000000000000000909116929093169190911791909117905561012084015184919060068201906123e49082614228565b50505060608401511561243b57606084015160009081526032602052604090205461243b576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8287868151811061244e5761244e6137fe565b60200260200101819052508360a00151868681518110612470576124706137fe565b6020026020010181815250508189602001518681518110612493576124936137fe565b6020026020010181815250508f8e73ffffffffffffffffffffffffffffffffffffffff16856000015173ffffffffffffffffffffffffffffffffffffffff167f8bf46bf4cfd674fa735a3d63ec1c9ad4153f033c290341f3a588b75685141b358560405161250391815260200190565b60405180910390a4505050506125198160010190565b9050612097565b5061253083838360008c8c612a03565b845250919998505050505050505050565b606060008267ffffffffffffffff81111561255e5761255e61386b565b604051908082528060200260200182016040528015612587578160200160208202803683370190505b508451909150600090815b818110156126205760008782815181106125ae576125ae6137fe565b6020026020010151905060008151905060005b8181101561260c578281815181106125db576125db6137fe565b60200260200101518787815181106125f5576125f56137fe565b6020908102919091010152600195860195016125c1565b5050506126198160010190565b9050612592565b509195945050505050565b60008281526033602052604090205467ffffffffffffffff161561267b576040517f2e26794600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008281526033602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff85169081179091559051909184917f5aafceeb1c7ad58e4a84898bdee37c02c0fc46e7d24e6b60e8209449f183459f9190a35050565b60003073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614801561275357507f000000000000000000000000000000000000000000000000000000000000000046145b1561277d57507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b600061072a61282e6126ed565b83612e53565b60008060006128438585612e95565b9092509050600081600481111561285c5761285c614342565b14801561289457508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156128a4576001925050506129fc565b6000808773ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b88886040516024016128d9929190614371565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290516129629190614392565b600060405180830381855afa9150503d806000811461299d576040519150601f19603f3d011682016040523d82523d6000602084013e6129a2565b606091505b50915091508180156129b5575080516020145b80156129f5575080517f1626ba7e00000000000000000000000000000000000000000000000000000000906129f390830160209081019084016143a4565b145b9450505050505b9392505050565b84516000906001819003612a5b57612a538888600081518110612a2857612a286137fe565b602002602001015188600081518110612a4357612a436137fe565b6020026020010151888888612eda565b915050612dea565b602088015173ffffffffffffffffffffffffffffffffffffffff8116612afc5760005b82811015612ae157878181518110612a9857612a986137fe565b6020026020010151600014612ad9576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600101612a7e565b508315612af157612af1856131f9565b600092505050612dea565b6000808273ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b6e91906143bd565b905060005b84811015612c2b5760008a8281518110612b8f57612b8f6137fe565b6020026020010151905080600003612ba75750612c23565b82612bde576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b88811115612c18576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b978890039792909201915b600101612b73565b508715612d06576040517f88e5b2d900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416906388e5b2d9908490612c88908e908e906004016143da565b60206040518083038185885af1158015612ca6573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612ccb91906143bd565b612d01576040517fbf2f3a8b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612dd5565b6040517f91db0b7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416906391db0b7e908490612d5c908e908e906004016143da565b60206040518083038185885af1158015612d7a573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612d9f91906143bd565b612dd5576040517fe8bee83900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8515612de457612de4876131f9565b50925050505b9695505050505050565b60208083015160c084015160e0850151604080870151606088015161010089015160a08a01516101208b01519451600099612e3599989796918c9101614493565b60405160208183030381529060405280519060200120905092915050565b6040517f190100000000000000000000000000000000000000000000000000000000000060208201526022810183905260428101829052600090606201612e35565b6000808251604103612ecb5760208301516040840151606085015160001a612ebf8782858561320c565b94509450505050612ed3565b506000905060025b9250929050565b602086015160009073ffffffffffffffffffffffffffffffffffffffff8116612f4e578515612f35576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8215612f4457612f44846131f9565b6000915050612dea565b8515613039578073ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fc391906143bd565b612ff9576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83861115613033576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b85840393505b8415613111576040517fe49617e100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063e49617e1908890613093908b90600401613771565b60206040518083038185885af11580156130b1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906130d691906143bd565b61310c576040517fccf3bb2700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6131de565b6040517fe60c350500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063e60c3505908890613165908b90600401613771565b60206040518083038185885af1158015613183573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906131a891906143bd565b6131de576040517fbd8ba84d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82156131ed576131ed846131f9565b50939695505050505050565b8015613209576132093382613324565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613243575060009050600361331b565b8460ff16601b1415801561325b57508460ff16601c14155b1561326c575060009050600461331b565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156132c0573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166133145760006001925092505061331b565b9150600090505b94509492505050565b80471015613393576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064015b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d80600081146133ed576040519150601f19603f3d011682016040523d82523d6000602084013e6133f2565b606091505b5050905080610a63576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d61792068617665207265766572746564000000000000606482015260840161338a565b60008083601f84011261349557600080fd5b50813567ffffffffffffffff8111156134ad57600080fd5b6020830191508360208260051b8501011115612ed357600080fd5b600080602083850312156134db57600080fd5b823567ffffffffffffffff8111156134f257600080fd5b6134fe85828601613483565b90969095509350505050565b60005b8381101561352557818101518382015260200161350d565b50506000910152565b6000815180845261354681602086016020860161350a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006129fc602083018461352e565b73ffffffffffffffffffffffffffffffffffffffff8116811461320957600080fd5b80356135b88161358b565b919050565b6000602082840312156135cf57600080fd5b81356129fc8161358b565b6000602082840312156135ec57600080fd5b813567ffffffffffffffff81111561360357600080fd5b820160e081850312156129fc57600080fd5b6020808252825182820181905260009190848201906040850190845b8181101561364d57835183529284019291840191600101613631565b50909695505050505050565b60006060828403121561366b57600080fd5b50919050565b60006020828403121561368357600080fd5b5035919050565b6000610140825184526020830151602085015260408301516136b8604086018267ffffffffffffffff169052565b5060608301516136d4606086018267ffffffffffffffff169052565b5060808301516136f0608086018267ffffffffffffffff169052565b5060a083015160a085015260c083015161372260c086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e083015161374a60e086018273ffffffffffffffffffffffffffffffffffffffff169052565b506101008381015115159085015261012080840151818601839052612dea8387018261352e565b6020815260006129fc602083018461368a565b6000610100828403121561366b57600080fd5b600080604083850312156137aa57600080fd5b82356137b58161358b565b946020939093013593505050565b6000602082840312156137d557600080fd5b813567ffffffffffffffff8111156137ec57600080fd5b8201604081850312156129fc57600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6183360301811261386157600080fd5b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156138bd576138bd61386b565b60405290565b60405160c0810167ffffffffffffffff811182821017156138bd576138bd61386b565b6040516080810167ffffffffffffffff811182821017156138bd576138bd61386b565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156139505761395061386b565b604052919050565b600067ffffffffffffffff8211156139725761397261386b565b5060051b60200190565b60006040828403121561398e57600080fd5b6040516040810181811067ffffffffffffffff821117156139b1576139b161386b565b604052823581526020928301359281019290925250919050565b6000606082840312156139dd57600080fd5b6040516060810181811067ffffffffffffffff82111715613a0057613a0061386b565b604052905080823560ff81168114613a1757600080fd5b8082525060208301356020820152604083013560408201525092915050565b600082601f830112613a4757600080fd5b81356020613a5c613a5783613958565b613909565b82815260609283028501820192828201919087851115613a7b57600080fd5b8387015b85811015613a9e57613a9189826139cb565b8452928401928101613a7f565b5090979650505050505050565b803567ffffffffffffffff811681146135b857600080fd5b600060a08236031215613ad557600080fd5b613add61389a565b8235815260208084013567ffffffffffffffff80821115613afd57600080fd5b9085019036601f830112613b1057600080fd5b8135613b1e613a5782613958565b81815260069190911b83018401908481019036831115613b3d57600080fd5b938501935b82851015613b6657613b54368661397c565b82528582019150604085019450613b42565b80868801525050506040860135925080831115613b8257600080fd5b5050613b9036828601613a36565b604083015250613ba2606084016135ad565b6060820152613bb360808401613aab565b608082015292915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561072a5761072a613bbe565b801515811461320957600080fd5b600067ffffffffffffffff821115613c2857613c2861386b565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600060c08284031215613c6657600080fd5b613c6e6138c3565b90508135613c7b8161358b565b81526020613c8a838201613aab565b818301526040830135613c9c81613c00565b604083015260608381013590830152608083013567ffffffffffffffff811115613cc557600080fd5b8301601f81018513613cd657600080fd5b8035613ce4613a5782613c0e565b8181528684838501011115613cf857600080fd5b818484018583013760008483830101528060808601525050505060a082013560a082015292915050565b600060e08236031215613d3457600080fd5b613d3c61389a565b82358152602083013567ffffffffffffffff811115613d5a57600080fd5b613d6636828601613c54565b602083015250613d7936604085016139cb565b604082015260a0830135613d8c8161358b565b6060820152613bb360c08401613aab565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4183360301811261386157600080fd5b600061072a3683613c54565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261386157600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112613e4657600080fd5b83018035915067ffffffffffffffff821115613e6157600080fd5b6020019150600581901b3603821315612ed357600080fd5b6000613e87613a5784613958565b80848252602080830192508560051b850136811115613ea557600080fd5b855b81811015613ee157803567ffffffffffffffff811115613ec75760008081fd5b613ed336828a01613c54565b865250938201938201613ea7565b50919695505050505050565b600060408284031215613eff57600080fd5b6129fc838361397c565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112613f3e57600080fd5b83018035915067ffffffffffffffff821115613f5957600080fd5b6020019150600681901b3603821315612ed357600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112613fa657600080fd5b83018035915067ffffffffffffffff821115613fc157600080fd5b6020019150606081023603821315612ed357600080fd5b600060608284031215613fea57600080fd5b6129fc83836139cb565b60006020828403121561400657600080fd5b6129fc82613aab565b600181811c9082168061402357607f821691505b60208210810361366b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000610100828403121561406f57600080fd5b61407761389a565b82358152614088846020850161397c565b602082015261409a84606085016139cb565b604082015260c08301356140ad8161358b565b60608201526140be60e08401613aab565b60808201529392505050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036140fb576140fb613bbe565b5060010190565b6000602080838503121561411557600080fd5b825167ffffffffffffffff8082111561412d57600080fd5b908401906080828703121561414157600080fd5b6141496138e6565b825181528383015161415a8161358b565b81850152604083015161416c81613c00565b604082015260608301518281111561418357600080fd5b80840193505086601f84011261419857600080fd5b825191506141a8613a5783613c0e565b82815287858486010111156141bc57600080fd5b6141cb8386830187870161350a565b60608201529695505050505050565b601f821115610a6357600081815260208120601f850160051c810160208610156142015750805b601f850160051c820191505b818110156142205782815560010161420d565b505050505050565b815167ffffffffffffffff8111156142425761424261386b565b61425681614250845461400f565b846141da565b602080601f8311600181146142a957600084156142735750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555614220565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156142f6578886015182559484019460019091019084016142d7565b508582101561433257878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b82815260406020820152600061438a604083018461352e565b949350505050565b6000825161386181846020870161350a565b6000602082840312156143b657600080fd5b5051919050565b6000602082840312156143cf57600080fd5b81516129fc81613c00565b6000604082016040835280855180835260608501915060608160051b8601019250602080880160005b8381101561444f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa088870301855261443d86835161368a565b95509382019390820190600101614403565b50508584038187015286518085528782019482019350915060005b828110156144865784518452938101939281019260010161446a565b5091979650505050505050565b89815260007fffffffffffffffffffffffffffffffffffffffff000000000000000000000000808b60601b166020840152808a60601b166034840152507fffffffffffffffff000000000000000000000000000000000000000000000000808960c01b166048840152808860c01b1660508401525085151560f81b6058830152846059830152835161452c81607985016020880161350a565b80830190507fffffffff000000000000000000000000000000000000000000000000000000008460e01b166079820152607d81019150509a995050505050505050505056fea164736f6c6343000813000a0000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000061ea6101606040523480156200001257600080fd5b506040518060400160405280600381526020017f45415300000000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f312e332e30000000000000000000000000000000000000000000000000000000815250818160008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a08181525050620000ea8184846200015460201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050806101208181525050505050505062000144826200019060201b60201c565b610140818152505050506200027b565b60008383834630604051602001620001719594939291906200021e565b6040516020818303038152906040528051906020012090509392505050565b6000806020830151905080915050919050565b6000819050919050565b620001b881620001a3565b82525050565b6000819050919050565b620001d381620001be565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200020682620001d9565b9050919050565b6200021881620001f9565b82525050565b600060a082019050620002356000830188620001ad565b620002446020830187620001ad565b620002536040830186620001ad565b620002626060830185620001c8565b6200027160808301846200020d565b9695505050505050565b60805160a05160c05160e051610100516101205161014051615f14620002d660003960006107cc01526000612cb601526000612cf801526000612cd701526000612c0c01526000612c6201526000612c8b0152615f146000f3fe60806040526004361061011b5760003560e01c80630eabf6601461012057806312b11a171461013c57806313893f611461016757806317d7de7c146101a45780632d0335ab146101cf5780633c0427151461020c57806344adc90e1461023c578063469262671461026c5780634cb7e9e5146102885780634d003070146102a457806354fd4d50146102e157806379f7573a1461030c5780639541152514610335578063a3112a6414610365578063a6d4dbc7146103a2578063b469318d146103be578063b83010d3146103fb578063cf190f3414610426578063d45c443514610463578063e30bb563146104a0578063e71ff365146104dd578063ed24911d1461051a578063f10b5cc814610545578063f17325e714610570575b600080fd5b61013a60048036038101906101359190613b11565b6105a0565b005b34801561014857600080fd5b5061015161073a565b60405161015e9190613b77565b60405180910390f35b34801561017357600080fd5b5061018e60048036038101906101899190613be8565b610765565b60405161019b9190613c58565b60405180910390f35b3480156101b057600080fd5b506101b96107c5565b6040516101c69190613d03565b60405180910390f35b3480156101db57600080fd5b506101f660048036038101906101f19190613d83565b6107f5565b6040516102039190613dc9565b60405180910390f35b61022660048036038101906102219190613e08565b61083d565b6040516102339190613b77565b60405180910390f35b61025660048036038101906102519190613ea7565b61092d565b6040516102639190613fb2565b60405180910390f35b61028660048036038101906102819190613ff3565b610aaf565b005b6102a2600480360381019061029d9190614076565b610b52565b005b3480156102b057600080fd5b506102cb60048036038101906102c691906140ef565b610c37565b6040516102d89190613c58565b60405180910390f35b3480156102ed57600080fd5b506102f6610c57565b6040516103039190613d03565b60405180910390f35b34801561031857600080fd5b50610333600480360381019061032e9190614148565b610c90565b005b61034f600480360381019061034a91906141cb565b610d8c565b60405161035c9190613fb2565b60405180910390f35b34801561037157600080fd5b5061038c600480360381019061038791906140ef565b611036565b6040516103999190614380565b60405180910390f35b6103bc60048036038101906103b791906143c2565b611271565b005b3480156103ca57600080fd5b506103e560048036038101906103e091906143f0565b61133f565b6040516103f29190613c58565b60405180910390f35b34801561040757600080fd5b506104106113ae565b60405161041d9190613b77565b60405180910390f35b34801561043257600080fd5b5061044d600480360381019061044891906140ef565b6113d9565b60405161045a9190613c58565b60405180910390f35b34801561046f57600080fd5b5061048a600480360381019061048591906140ef565b6113fa565b6040516104979190613c58565b60405180910390f35b3480156104ac57600080fd5b506104c760048036038101906104c291906140ef565b61142b565b6040516104d4919061443f565b60405180910390f35b3480156104e957600080fd5b5061050460048036038101906104ff9190613be8565b611451565b6040516105119190613c58565b60405180910390f35b34801561052657600080fd5b5061052f6114b0565b60405161053c9190613b77565b60405180910390f35b34801561055157600080fd5b5061055a6114bf565b60405161056791906144b9565b60405180910390f35b61058a600480360381019061058591906144f3565b6114db565b6040516105979190613b77565b60405180910390f35b6000349050600083839050905060005b81811015610733576000600183038214905060008686848181106105d7576105d661453c565b5b90506020028101906105e9919061457a565b6105f29061498a565b9050600081602001519050600081519050600081148061061757508260400151518114155b1561064e576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b818110156106fc576106ec6040518060a00160405280866000015181526020018584815181106106845761068361453c565b5b60200260200101518152602001866040015184815181106106a8576106a761453c565b5b60200260200101518152602001866060015173ffffffffffffffffffffffffffffffffffffffff168152602001866080015167ffffffffffffffff168152506115a6565b6106f58161177c565b9050610651565b5061071283600001518385606001518a88611789565b8761071d91906149cc565b96505050505061072c8161177c565b90506105b0565b5050505050565b60007ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d98807660001b905090565b600080610770611e42565b9050600084849050905060005b818110156107b9576107a93387878481811061079c5761079b61453c565b5b9050602002013585611e4a565b6107b28161177c565b905061077d565b50819250505092915050565b60606107f07f0000000000000000000000000000000000000000000000000000000000000000611f85565b905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006108518261084c90614c45565b61216c565b6000600167ffffffffffffffff81111561086e5761086d6145a7565b5b6040519080825280602002602001820160405280156108a757816020015b61089461395e565b81526020019060019003908161088c5790505b5090508280602001906108ba9190614c58565b6108c390614c80565b816000815181106108d7576108d661453c565b5b60200260200101819052506109068360000135828560a00160208101906108fe9190613d83565b346001612361565b6020015160008151811061091d5761091c61453c565b5b6020026020010151915050919050565b6060600083839050905060008167ffffffffffffffff811115610953576109526145a7565b5b60405190808252806020026020018201604052801561098657816020015b60608152602001906001900390816109715790505b50905060008034905060005b84811015610a985760006001860382149050368989848181106109b8576109b761453c565b5b90506020028101906109ca9190614c93565b905060008180602001906109de9190614cbb565b905003610a17576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610a448260000135838060200190610a319190614cbb565b90610a3c9190614dd1565b338887612361565b9050806000015185610a5691906149cc565b94508060200151878581518110610a7057610a6f61453c565b5b602002602001018190525080602001515186019550505050610a918161177c565b9050610992565b50610aa38383612a26565b94505050505092915050565b6000600167ffffffffffffffff811115610acc57610acb6145a7565b5b604051908082528060200260200182016040528015610b0557816020015b610af26139b9565b815260200190600190039081610aea5790505b50905081602001803603810190610b1c9190614de6565b81600081518110610b3057610b2f61453c565b5b6020026020010181905250610b4d82600001358233346001611789565b505050565b6000349050600083839050905060005b81811015610c30576000600183038214905036868684818110610b8857610b8761453c565b5b9050602002810190610b9a9190614e13565b9050610c118160000135828060200190610bb49190614e3b565b808060200260200160405190810160405280939291908181526020016000905b82821015610c0457848483905060400201803603810190610bf59190614de6565b81526020019060010190610bd4565b5050505050338886611789565b85610c1c91906149cc565b94505050610c298161177c565b9050610b62565b5050505050565b600080610c42611e42565b9050610c4e8382612b27565b80915050919050565b6040518060400160405280600c81526020017f312e342e312d626574612e33000000000000000000000000000000000000000081525081565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050808211610d0c576040517f756688fe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f57b09af877df9068fd60a69d7b21f5576b8b38955812d6ae4ac52942f1e38fb78183604051610d80929190614e9e565b60405180910390a15050565b6060600083839050905060008167ffffffffffffffff811115610db257610db16145a7565b5b604051908082528060200260200182016040528015610de557816020015b6060815260200190600190039081610dd05790505b50905060008034905060005b8481101561101f576000600186038214905036898984818110610e1757610e1661453c565b5b9050602002810190610e299190614ec7565b9050366000828060200190610e3e9190614cbb565b9150915060008282905090506000811480610e6a5750838060400190610e649190614eef565b90508114155b15610ea1576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610f9657610f866040518060a0016040528087600001358152602001868685818110610ed757610ed661453c565b5b9050602002810190610ee99190614c58565b610ef290614c80565b8152602001878060400190610f079190614eef565b85818110610f1857610f1761453c565b5b905060600201803603810190610f2e9190614f52565b8152602001876060016020810190610f469190613d83565b73ffffffffffffffffffffffffffffffffffffffff168152602001876080016020810190610f749190614f7f565b67ffffffffffffffff1681525061216c565b610f8f8161177c565b9050610ea4565b506000610fc88560000135858590610fae9190614dd1565b876060016020810190610fc19190613d83565b8b8a612361565b9050806000015188610fda91906149cc565b975080602001518a8881518110610ff457610ff361453c565b5b6020026020010181905250806020015151890198505050505050506110188161177c565b9050610df1565b5061102a8383612a26565b94505050505092915050565b61103e6139d6565b603260008381526020019081526020016000206040518061014001604052908160008201548152602001600182015481526020016002820160009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160109054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152602001600382015481526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160149054906101000a900460ff161515151581526020016006820180546111e890614fdb565b80601f016020809104026020016040519081016040528092919081815260200182805461121490614fdb565b80156112615780601f1061123657610100808354040283529160200191611261565b820191906000526020600020905b81548152906001019060200180831161124457829003601f168201915b5050505050815250509050919050565b61128a818036038101906112859190615099565b6115a6565b6000600167ffffffffffffffff8111156112a7576112a66145a7565b5b6040519080825280602002602001820160405280156112e057816020015b6112cd6139b9565b8152602001906001900390816112c55790505b509050816020018036038101906112f79190614de6565b8160008151811061130b5761130a61453c565b5b602002602001018190525061133a8260000135828460c00160208101906113329190613d83565b346001611789565b505050565b6000603460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900467ffffffffffffffff16905092915050565b60007fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e7560001b905090565b6000806113e4611e42565b90506113f1338483611e4a565b80915050919050565b60006033600083815260200190815260200160002060009054906101000a900467ffffffffffffffff169050919050565b60008060001b603260008481526020019081526020016000206000015414159050919050565b60008061145c611e42565b9050600084849050905060005b818110156114a4576114948686838181106114875761148661453c565b5b9050602002013584612b27565b61149d8161177c565b9050611469565b50819250505092915050565b60006114ba612c08565b905090565b6000734200000000000000000000000000000000000020905090565b600080600167ffffffffffffffff8111156114f9576114f86145a7565b5b60405190808252806020026020018201604052801561153257816020015b61151f61395e565b8152602001906001900390816115175790505b5090508280602001906115459190614c58565b61154e90614c80565b816000815181106115625761156161453c565b5b602002602001018190525061157f83600001358233346001612361565b602001516000815181106115965761159561453c565b5b6020026020010151915050919050565b600067ffffffffffffffff16816080015167ffffffffffffffff16141580156115ed57506115d2611e42565b67ffffffffffffffff16816080015167ffffffffffffffff16105b15611624576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008160200151905060008260400151905060006117007fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e7560001b85606001518660000151866000015187602001516000808b6060015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906116c6906150c7565b919050558a608001516040516020016116e5979695949392919061511e565b60405160208183030381529060405280519060200120612d22565b905061174084606001518284602001518560400151866000015160405160200161172c939291906151e4565b604051602081830303815290604052612d3c565b611776576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b6000600182019050919050565b60008073420000000000000000000000000000000000002073ffffffffffffffffffffffffffffffffffffffff1663a2ea7c6e886040518263ffffffff1660e01b81526004016117d99190613b77565b600060405180830381865afa1580156117f6573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061181f91906153be565b90506000801b816000015103611861576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008651905060008167ffffffffffffffff811115611883576118826145a7565b5b6040519080825280602002602001820160405280156118bc57816020015b6118a96139d6565b8152602001906001900390816118a15790505b50905060008267ffffffffffffffff8111156118db576118da6145a7565b5b6040519080825280602002602001820160405280156119095781602001602082028036833780820191505090505b50905060005b83811015611e235760008a828151811061192c5761192b61453c565b5b602002602001015190506000603260008360000151815260200190815260200160002090506000801b816000015403611991576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8c8160010154146119ce576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8a73ffffffffffffffffffffffffffffffffffffffff168160050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a57576040517f4ca8886700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060050160149054906101000a900460ff16611a9f576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008160020160109054906101000a900467ffffffffffffffff1667ffffffffffffffff1614611afb576040517f905e710700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b03611e42565b8160020160106101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550806040518061014001604052908160008201548152602001600182015481526020016002820160009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160109054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152602001600382015481526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160149054906101000a900460ff16151515158152602001600682018054611cc590614fdb565b80601f0160208091040260200160405190810160405280929190818152602001828054611cf190614fdb565b8015611d3e5780601f10611d1357610100808354040283529160200191611d3e565b820191906000526020600020905b815481529060010190602001808311611d2157829003601f168201915b505050505081525050858481518110611d5a57611d5961453c565b5b60200260200101819052508160200151848481518110611d7d57611d7c61453c565b5b6020026020010181815250508c8b73ffffffffffffffffffffffffffffffffffffffff16868581518110611db457611db361453c565b5b602002602001015160c0015173ffffffffffffffffffffffffffffffffffffffff167ff930a6e2523c9cc298691873087a740550b8fc85a0680830414c148ed927f6158560000151604051611e099190613b77565b60405180910390a45050611e1c8161177c565b905061190f565b50611e3384838360018b8b612f02565b94505050505095945050505050565b600042905090565b6000603460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600081600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1614611ef7576040517fec9d6eeb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8181600085815260200190815260200160002060006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508167ffffffffffffffff16838573ffffffffffffffffffffffffffffffffffffffff167f92a1f7a41a7c585a8b09e25b195e225b1d43248daca46b0faf9e0792777a222960405160405180910390a450505050565b60606000602067ffffffffffffffff811115611fa457611fa36145a7565b5b6040519080825280601f01601f191660200182016040528015611fd65781602001600182028036833780820191505090505b5090506000805b6020811015612093576000858260208110611ffb57611ffa61453c565b5b1a60f81b9050600060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036120345750612093565b808484815181106120485761204761453c565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506120808361177c565b92505061208c8161177c565b9050611fdd565b5060008167ffffffffffffffff8111156120b0576120af6145a7565b5b6040519080825280601f01601f1916602001820160405280156120e25781602001600182028036833780820191505090505b50905060005b82811015612160578381815181106121035761210261453c565b5b602001015160f81c60f81b8282815181106121215761212061453c565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506121598161177c565b90506120e8565b50809350505050919050565b600067ffffffffffffffff16816080015167ffffffffffffffff16141580156121b35750612198611e42565b67ffffffffffffffff16816080015167ffffffffffffffff16105b156121ea576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008160200151905060008260400151905060006122e57ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d98807660001b8560600151866000015186600001518760200151886040015189606001518a60800151805190602001208b60a001516000808f6060015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906122a7906150c7565b919050558e608001516040516020016122ca9b9a99989796959493929190615407565b60405160208183030381529060405280519060200120612d22565b9050612325846060015182846020015185604001518660000151604051602001612311939291906151e4565b604051602081830303815290604052612d3c565b61235b576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b612369613a7e565b600085519050612377613a7e565b8167ffffffffffffffff811115612391576123906145a7565b5b6040519080825280602002602001820160405280156123bf5781602001602082028036833780820191505090505b508160200181905250600073420000000000000000000000000000000000002073ffffffffffffffffffffffffffffffffffffffff1663a2ea7c6e8a6040518263ffffffff1660e01b81526004016124179190613b77565b600060405180830381865afa158015612434573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061245d91906153be565b90506000801b81600001510361249f576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008367ffffffffffffffff8111156124bb576124ba6145a7565b5b6040519080825280602002602001820160405280156124f457816020015b6124e16139d6565b8152602001906001900390816124d95790505b50905060008467ffffffffffffffff811115612513576125126145a7565b5b6040519080825280602002602001820160405280156125415781602001602082028036833780820191505090505b50905060005b858110156129fc5760008b82815181106125645761256361453c565b5b60200260200101519050600067ffffffffffffffff16816020015167ffffffffffffffff16141580156125b6575061259a611e42565b67ffffffffffffffff16816020015167ffffffffffffffff1611155b156125ed576040517f08e8b93700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8460400151158015612600575080604001515b15612637576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006040518061014001604052806000801b81526020018f815260200161265c611e42565b67ffffffffffffffff168152602001836020015167ffffffffffffffff168152602001600067ffffffffffffffff16815260200183606001518152602001836000015173ffffffffffffffffffffffffffffffffffffffff1681526020018d73ffffffffffffffffffffffffffffffffffffffff16815260200183604001511515815260200183608001518152509050600080600090505b6001156127335761270583826132f7565b91506000801b60326000848152602001908152602001600020600001540315612733578060010190506126f4565b818360000181815250508260326000848152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060608201518160020160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060808201518160020160106101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060a0820151816003015560c08201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060e08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101008201518160050160146101000a81548160ff0219169083151502179055506101208201518160060190816128c19190615654565b509050506000801b846060015114612917576128e0846060015161142b565b612916576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b8287868151811061292b5761292a61453c565b5b60200260200101819052508360a0015186868151811061294e5761294d61453c565b5b60200260200101818152505081896020015186815181106129725761297161453c565b5b6020026020010181815250508f8e73ffffffffffffffffffffffffffffffffffffffff16856000015173ffffffffffffffffffffffffffffffffffffffff167f8bf46bf4cfd674fa735a3d63ec1c9ad4153f033c290341f3a588b75685141b35856040516129e09190613b77565b60405180910390a4505050506129f58161177c565b9050612547565b50612a0c83838360008c8c612f02565b846000018181525050839550505050505095945050505050565b606060008267ffffffffffffffff811115612a4457612a436145a7565b5b604051908082528060200260200182016040528015612a725781602001602082028036833780820191505090505b5090506000808551905060005b81811015612b1a576000878281518110612a9c57612a9b61453c565b5b6020026020010151905060008151905060005b81811015612b0757828181518110612aca57612ac961453c565b5b6020026020010151878781518110612ae557612ae461453c565b5b602002602001018181525050856001019550612b008161177c565b9050612aaf565b505050612b138161177c565b9050612a7f565b5082935050505092915050565b60006033600084815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1614612b92576040517f2e26794600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806033600084815260200190815260200160002060006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508067ffffffffffffffff16827f5aafceeb1c7ad58e4a84898bdee37c02c0fc46e7d24e6b60e8209449f183459f60405160405180910390a35050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015612c8457507f000000000000000000000000000000000000000000000000000000000000000046145b15612cb1577f00000000000000000000000000000000000000000000000000000000000000009050612d1f565b612d1c7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000061335a565b90505b90565b6000612d35612d2f612c08565b83613394565b9050919050565b6000806000612d4b85856133c7565b9150915060006004811115612d6357612d62615726565b5b816004811115612d7657612d75615726565b5b148015612dae57508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15612dbe57600192505050612efb565b6000808773ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b8888604051602401612df392919061579f565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051612e5d919061580b565b600060405180830381855afa9150503d8060008114612e98576040519150601f19603f3d011682016040523d82523d6000602084013e612e9d565b606091505b5091509150818015612eb0575060208151145b8015612ef45750631626ba7e60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681806020019051810190612ef29190615822565b145b9450505050505b9392505050565b6000808651905060018103612f5d57612f558888600081518110612f2957612f2861453c565b5b602002602001015188600081518110612f4557612f4461453c565b5b6020026020010151888888613418565b9150506132ed565b600088602001519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036130255760005b82811015613009576000888281518110612fba57612fb961453c565b5b602002602001015114612ff9576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6130028161177c565b9050612f9d565b50831561301a5761301985613728565b5b6000925050506132ed565b6000808273ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa158015613073573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613097919061584f565b905060005b8481101561315e5760008a82815181106130b9576130b861453c565b5b60200260200101519050600081036130d1575061314e565b82613108576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b88811115613142576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80890398508084019350505b6131578161177c565b905061309c565b50871561321f578273ffffffffffffffffffffffffffffffffffffffff166388e5b2d9838c8c6040518463ffffffff1660e01b81526004016131a1929190615ad6565b60206040518083038185885af11580156131bf573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906131e4919061584f565b61321a576040517fbf2f3a8b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6132d5565b8273ffffffffffffffffffffffffffffffffffffffff166391db0b7e838c8c6040518463ffffffff1660e01b815260040161325b929190615ad6565b60206040518083038185885af1158015613279573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061329e919061584f565b6132d4576040517fe8bee83900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b85156132e5576132e487613728565b5b819450505050505b9695505050505050565b600082602001518360c001518460e00151856040015186606001518761010001518860a001518961012001518960405160200161333c99989796959493929190615bfa565b60405160208183030381529060405280519060200120905092915050565b60008383834630604051602001613375959493929190615c99565b6040516020818303038152906040528051906020012090509392505050565b600082826040516020016133a9929190615d43565b60405160208183030381529060405280519060200120905092915050565b60008060418351036134085760008060006020860151925060408601519150606086015160001a90506133fc8782858561375e565b94509450505050613411565b60006002915091505b9250929050565b60008087602001519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036134aa5760008614613490576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82156134a05761349f84613728565b5b600091505061371e565b60008614613597578073ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa1580156134fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613521919061584f565b613557576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83861115613591576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b85840393505b8415613655578073ffffffffffffffffffffffffffffffffffffffff1663e49617e187896040518363ffffffff1660e01b81526004016135d79190614380565b60206040518083038185885af11580156135f5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061361a919061584f565b613650576040517fccf3bb2700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613709565b8073ffffffffffffffffffffffffffffffffffffffff1663e60c350587896040518363ffffffff1660e01b815260040161368f9190614380565b60206040518083038185885af11580156136ad573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906136d2919061584f565b613708576040517fbd8ba84d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b82156137195761371884613728565b5b859150505b9695505050505050565b600081111561375b5761375a813373ffffffffffffffffffffffffffffffffffffffff1661386a90919063ffffffff16565b5b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115613799576000600391509150613861565b601b8560ff16141580156137b15750601c8560ff1614155b156137c3576000600491509150613861565b6000600187878787604051600081526020016040526040516137e89493929190615d89565b6020604051602081039080840390855afa15801561380a573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361385857600060019250925050613861565b80600092509250505b94509492505050565b804710156138ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016138a490615e1a565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff16826040516138d390615e60565b60006040518083038185875af1925050503d8060008114613910576040519150601f19603f3d011682016040523d82523d6000602084013e613915565b606091505b5050905080613959576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161395090615ee7565b60405180910390fd5b505050565b6040518060c00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600067ffffffffffffffff1681526020016000151581526020016000801916815260200160608152602001600081525090565b604051806040016040528060008019168152602001600081525090565b6040518061014001604052806000801916815260200160008019168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff16815260200160008019168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001606081525090565b604051806040016040528060008152602001606081525090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112613ad157613ad0613aac565b5b8235905067ffffffffffffffff811115613aee57613aed613ab1565b5b602083019150836020820283011115613b0a57613b09613ab6565b5b9250929050565b60008060208385031215613b2857613b27613aa2565b5b600083013567ffffffffffffffff811115613b4657613b45613aa7565b5b613b5285828601613abb565b92509250509250929050565b6000819050919050565b613b7181613b5e565b82525050565b6000602082019050613b8c6000830184613b68565b92915050565b60008083601f840112613ba857613ba7613aac565b5b8235905067ffffffffffffffff811115613bc557613bc4613ab1565b5b602083019150836020820283011115613be157613be0613ab6565b5b9250929050565b60008060208385031215613bff57613bfe613aa2565b5b600083013567ffffffffffffffff811115613c1d57613c1c613aa7565b5b613c2985828601613b92565b92509250509250929050565b600067ffffffffffffffff82169050919050565b613c5281613c35565b82525050565b6000602082019050613c6d6000830184613c49565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613cad578082015181840152602081019050613c92565b60008484015250505050565b6000601f19601f8301169050919050565b6000613cd582613c73565b613cdf8185613c7e565b9350613cef818560208601613c8f565b613cf881613cb9565b840191505092915050565b60006020820190508181036000830152613d1d8184613cca565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613d5082613d25565b9050919050565b613d6081613d45565b8114613d6b57600080fd5b50565b600081359050613d7d81613d57565b92915050565b600060208284031215613d9957613d98613aa2565b5b6000613da784828501613d6e565b91505092915050565b6000819050919050565b613dc381613db0565b82525050565b6000602082019050613dde6000830184613dba565b92915050565b600080fd5b600060e08284031215613dff57613dfe613de4565b5b81905092915050565b600060208284031215613e1e57613e1d613aa2565b5b600082013567ffffffffffffffff811115613e3c57613e3b613aa7565b5b613e4884828501613de9565b91505092915050565b60008083601f840112613e6757613e66613aac565b5b8235905067ffffffffffffffff811115613e8457613e83613ab1565b5b602083019150836020820283011115613ea057613e9f613ab6565b5b9250929050565b60008060208385031215613ebe57613ebd613aa2565b5b600083013567ffffffffffffffff811115613edc57613edb613aa7565b5b613ee885828601613e51565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613f2981613b5e565b82525050565b6000613f3b8383613f20565b60208301905092915050565b6000602082019050919050565b6000613f5f82613ef4565b613f698185613eff565b9350613f7483613f10565b8060005b83811015613fa5578151613f8c8882613f2f565b9750613f9783613f47565b925050600181019050613f78565b5085935050505092915050565b60006020820190508181036000830152613fcc8184613f54565b905092915050565b600060608284031215613fea57613fe9613de4565b5b81905092915050565b60006060828403121561400957614008613aa2565b5b600061401784828501613fd4565b91505092915050565b60008083601f84011261403657614035613aac565b5b8235905067ffffffffffffffff81111561405357614052613ab1565b5b60208301915083602082028301111561406f5761406e613ab6565b5b9250929050565b6000806020838503121561408d5761408c613aa2565b5b600083013567ffffffffffffffff8111156140ab576140aa613aa7565b5b6140b785828601614020565b92509250509250929050565b6140cc81613b5e565b81146140d757600080fd5b50565b6000813590506140e9816140c3565b92915050565b60006020828403121561410557614104613aa2565b5b6000614113848285016140da565b91505092915050565b61412581613db0565b811461413057600080fd5b50565b6000813590506141428161411c565b92915050565b60006020828403121561415e5761415d613aa2565b5b600061416c84828501614133565b91505092915050565b60008083601f84011261418b5761418a613aac565b5b8235905067ffffffffffffffff8111156141a8576141a7613ab1565b5b6020830191508360208202830111156141c4576141c3613ab6565b5b9250929050565b600080602083850312156141e2576141e1613aa2565b5b600083013567ffffffffffffffff811115614200576141ff613aa7565b5b61420c85828601614175565b92509250509250929050565b61422181613c35565b82525050565b61423081613d45565b82525050565b60008115159050919050565b61424b81614236565b82525050565b600081519050919050565b600082825260208201905092915050565b600061427882614251565b614282818561425c565b9350614292818560208601613c8f565b61429b81613cb9565b840191505092915050565b6000610140830160008301516142bf6000860182613f20565b5060208301516142d26020860182613f20565b5060408301516142e56040860182614218565b5060608301516142f86060860182614218565b50608083015161430b6080860182614218565b5060a083015161431e60a0860182613f20565b5060c083015161433160c0860182614227565b5060e083015161434460e0860182614227565b50610100830151614359610100860182614242565b50610120830151848203610120860152614373828261426d565b9150508091505092915050565b6000602082019050818103600083015261439a81846142a6565b905092915050565b600061010082840312156143b9576143b8613de4565b5b81905092915050565b600061010082840312156143d9576143d8613aa2565b5b60006143e7848285016143a2565b91505092915050565b6000806040838503121561440757614406613aa2565b5b600061441585828601613d6e565b9250506020614426858286016140da565b9150509250929050565b61443981614236565b82525050565b60006020820190506144546000830184614430565b92915050565b6000819050919050565b600061447f61447a61447584613d25565b61445a565b613d25565b9050919050565b600061449182614464565b9050919050565b60006144a382614486565b9050919050565b6144b381614498565b82525050565b60006020820190506144ce60008301846144aa565b92915050565b6000604082840312156144ea576144e9613de4565b5b81905092915050565b60006020828403121561450957614508613aa2565b5b600082013567ffffffffffffffff81111561452757614526613aa7565b5b614533848285016144d4565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160a0038336030381126145965761459561456b565b5b80830191505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6145df82613cb9565b810181811067ffffffffffffffff821117156145fe576145fd6145a7565b5b80604052505050565b6000614611613a98565b905061461d82826145d6565b919050565b600080fd5b600067ffffffffffffffff821115614642576146416145a7565b5b602082029050602081019050919050565b600060408284031215614669576146686145a2565b5b6146736040614607565b90506000614683848285016140da565b600083015250602061469784828501614133565b60208301525092915050565b60006146b66146b184614627565b614607565b905080838252602082019050604084028301858111156146d9576146d8613ab6565b5b835b8181101561470257806146ee8882614653565b8452602084019350506040810190506146db565b5050509392505050565b600082601f83011261472157614720613aac565b5b81356147318482602086016146a3565b91505092915050565b600067ffffffffffffffff821115614755576147546145a7565b5b602082029050602081019050919050565b600060ff82169050919050565b61477c81614766565b811461478757600080fd5b50565b60008135905061479981614773565b92915050565b6000606082840312156147b5576147b46145a2565b5b6147bf6060614607565b905060006147cf8482850161478a565b60008301525060206147e3848285016140da565b60208301525060406147f7848285016140da565b60408301525092915050565b60006148166148118461473a565b614607565b9050808382526020820190506060840283018581111561483957614838613ab6565b5b835b81811015614862578061484e888261479f565b84526020840193505060608101905061483b565b5050509392505050565b600082601f83011261488157614880613aac565b5b8135614891848260208601614803565b91505092915050565b6148a381613c35565b81146148ae57600080fd5b50565b6000813590506148c08161489a565b92915050565b600060a082840312156148dc576148db6145a2565b5b6148e660a0614607565b905060006148f6848285016140da565b600083015250602082013567ffffffffffffffff81111561491a57614919614622565b5b6149268482850161470c565b602083015250604082013567ffffffffffffffff81111561494a57614949614622565b5b6149568482850161486c565b604083015250606061496a84828501613d6e565b606083015250608061497e848285016148b1565b60808301525092915050565b600061499636836148c6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006149d782613db0565b91506149e283613db0565b92508282039050818111156149fa576149f961499d565b5b92915050565b614a0981614236565b8114614a1457600080fd5b50565b600081359050614a2681614a00565b92915050565b600080fd5b600067ffffffffffffffff821115614a4c57614a4b6145a7565b5b614a5582613cb9565b9050602081019050919050565b82818337600083830152505050565b6000614a84614a7f84614a31565b614607565b905082815260208101848484011115614aa057614a9f614a2c565b5b614aab848285614a62565b509392505050565b600082601f830112614ac857614ac7613aac565b5b8135614ad8848260208601614a71565b91505092915050565b600060c08284031215614af757614af66145a2565b5b614b0160c0614607565b90506000614b1184828501613d6e565b6000830152506020614b25848285016148b1565b6020830152506040614b3984828501614a17565b6040830152506060614b4d848285016140da565b606083015250608082013567ffffffffffffffff811115614b7157614b70614622565b5b614b7d84828501614ab3565b60808301525060a0614b9184828501614133565b60a08301525092915050565b600060e08284031215614bb357614bb26145a2565b5b614bbd60a0614607565b90506000614bcd848285016140da565b600083015250602082013567ffffffffffffffff811115614bf157614bf0614622565b5b614bfd84828501614ae1565b6020830152506040614c118482850161479f565b60408301525060a0614c2584828501613d6e565b60608301525060c0614c39848285016148b1565b60808301525092915050565b6000614c513683614b9d565b9050919050565b60008235600160c003833603038112614c7457614c7361456b565b5b80830191505092915050565b6000614c8c3683614ae1565b9050919050565b600082356001604003833603038112614caf57614cae61456b565b5b80830191505092915050565b60008083356001602003843603038112614cd857614cd761456b565b5b80840192508235915067ffffffffffffffff821115614cfa57614cf9614570565b5b602083019250602082023603831315614d1657614d15614575565b5b509250929050565b600067ffffffffffffffff821115614d3957614d386145a7565b5b602082029050602081019050919050565b6000614d5d614d5884614d1e565b614607565b90508083825260208201905060208402830185811115614d8057614d7f613ab6565b5b835b81811015614dc757803567ffffffffffffffff811115614da557614da4613aac565b5b808601614db28982614ae1565b85526020850194505050602081019050614d82565b5050509392505050565b6000614dde368484614d4a565b905092915050565b600060408284031215614dfc57614dfb613aa2565b5b6000614e0a84828501614653565b91505092915050565b600082356001604003833603038112614e2f57614e2e61456b565b5b80830191505092915050565b60008083356001602003843603038112614e5857614e5761456b565b5b80840192508235915067ffffffffffffffff821115614e7a57614e79614570565b5b602083019250604082023603831315614e9657614e95614575565b5b509250929050565b6000604082019050614eb36000830185613dba565b614ec06020830184613dba565b9392505050565b60008235600160a003833603038112614ee357614ee261456b565b5b80830191505092915050565b60008083356001602003843603038112614f0c57614f0b61456b565b5b80840192508235915067ffffffffffffffff821115614f2e57614f2d614570565b5b602083019250606082023603831315614f4a57614f49614575565b5b509250929050565b600060608284031215614f6857614f67613aa2565b5b6000614f768482850161479f565b91505092915050565b600060208284031215614f9557614f94613aa2565b5b6000614fa3848285016148b1565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614ff357607f821691505b60208210810361500657615005614fac565b5b50919050565b60006101008284031215615023576150226145a2565b5b61502d60a0614607565b9050600061503d848285016140da565b600083015250602061505184828501614653565b60208301525060606150658482850161479f565b60408301525060c061507984828501613d6e565b60608301525060e061508d848285016148b1565b60808301525092915050565b600061010082840312156150b0576150af613aa2565b5b60006150be8482850161500c565b91505092915050565b60006150d282613db0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036151045761510361499d565b5b600182019050919050565b61511881613d45565b82525050565b600060e082019050615133600083018a613b68565b615140602083018961510f565b61514d6040830188613b68565b61515a6060830187613b68565b6151676080830186613dba565b61517460a0830185613dba565b61518160c0830184613c49565b98975050505050505050565b6000819050919050565b6151a86151a382613b5e565b61518d565b82525050565b60008160f81b9050919050565b60006151c6826151ae565b9050919050565b6151de6151d982614766565b6151bb565b82525050565b60006151f08286615197565b6020820191506152008285615197565b60208201915061521082846151cd565b600182019150819050949350505050565b600081519050615230816140c3565b92915050565b600061524182613d45565b9050919050565b61525181615236565b811461525c57600080fd5b50565b60008151905061526e81615248565b92915050565b60008151905061528381614a00565b92915050565b600067ffffffffffffffff8211156152a4576152a36145a7565b5b6152ad82613cb9565b9050602081019050919050565b60006152cd6152c884615289565b614607565b9050828152602081018484840111156152e9576152e8614a2c565b5b6152f4848285613c8f565b509392505050565b600082601f83011261531157615310613aac565b5b81516153218482602086016152ba565b91505092915050565b6000608082840312156153405761533f6145a2565b5b61534a6080614607565b9050600061535a84828501615221565b600083015250602061536e8482850161525f565b602083015250604061538284828501615274565b604083015250606082015167ffffffffffffffff8111156153a6576153a5614622565b5b6153b2848285016152fc565b60608301525092915050565b6000602082840312156153d4576153d3613aa2565b5b600082015167ffffffffffffffff8111156153f2576153f1613aa7565b5b6153fe8482850161532a565b91505092915050565b60006101608201905061541d600083018e613b68565b61542a602083018d61510f565b615437604083018c613b68565b615444606083018b61510f565b615451608083018a613c49565b61545e60a0830189614430565b61546b60c0830188613b68565b61547860e0830187613b68565b615486610100830186613dba565b615494610120830185613dba565b6154a2610140830184613c49565b9c9b505050505050505050505050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026155147fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826154d7565b61551e86836154d7565b95508019841693508086168417925050509392505050565b600061555161554c61554784613db0565b61445a565b613db0565b9050919050565b6000819050919050565b61556b83615536565b61557f61557782615558565b8484546154e4565b825550505050565b600090565b615594615587565b61559f818484615562565b505050565b5b818110156155c3576155b860008261558c565b6001810190506155a5565b5050565b601f821115615608576155d9816154b2565b6155e2846154c7565b810160208510156155f1578190505b6156056155fd856154c7565b8301826155a4565b50505b505050565b600082821c905092915050565b600061562b6000198460080261560d565b1980831691505092915050565b6000615644838361561a565b9150826002028217905092915050565b61565d82614251565b67ffffffffffffffff811115615676576156756145a7565b5b6156808254614fdb565b61568b8282856155c7565b600060209050601f8311600181146156be57600084156156ac578287015190505b6156b68582615638565b86555061571e565b601f1984166156cc866154b2565b60005b828110156156f4578489015182556001820191506020850194506020810190506156cf565b86831015615711578489015161570d601f89168261561a565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600082825260208201905092915050565b600061577182614251565b61577b8185615755565b935061578b818560208601613c8f565b61579481613cb9565b840191505092915050565b60006040820190506157b46000830185613b68565b81810360208301526157c68184615766565b90509392505050565b600081905092915050565b60006157e582614251565b6157ef81856157cf565b93506157ff818560208601613c8f565b80840191505092915050565b600061581782846157da565b915081905092915050565b60006020828403121561583857615837613aa2565b5b600061584684828501615221565b91505092915050565b60006020828403121561586557615864613aa2565b5b600061587384828501615274565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610140830160008301516158c16000860182613f20565b5060208301516158d46020860182613f20565b5060408301516158e76040860182614218565b5060608301516158fa6060860182614218565b50608083015161590d6080860182614218565b5060a083015161592060a0860182613f20565b5060c083015161593360c0860182614227565b5060e083015161594660e0860182614227565b5061010083015161595b610100860182614242565b50610120830151848203610120860152615975828261426d565b9150508091505092915050565b600061598e83836158a8565b905092915050565b6000602082019050919050565b60006159ae8261587c565b6159b88185615887565b9350836020820285016159ca85615898565b8060005b85811015615a0657848403895281516159e78582615982565b94506159f283615996565b925060208a019950506001810190506159ce565b50829750879550505050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615a4d81613db0565b82525050565b6000615a5f8383615a44565b60208301905092915050565b6000602082019050919050565b6000615a8382615a18565b615a8d8185615a23565b9350615a9883615a34565b8060005b83811015615ac9578151615ab08882615a53565b9750615abb83615a6b565b925050600181019050615a9c565b5085935050505092915050565b60006040820190508181036000830152615af081856159a3565b90508181036020830152615b048184615a78565b90509392505050565b60008160601b9050919050565b6000615b2582615b0d565b9050919050565b6000615b3782615b1a565b9050919050565b615b4f615b4a82613d45565b615b2c565b82525050565b60008160c01b9050919050565b6000615b6d82615b55565b9050919050565b615b85615b8082613c35565b615b62565b82525050565b6000615b96826151bb565b9050919050565b615bae615ba982614236565b615b8b565b82525050565b600063ffffffff82169050919050565b60008160e01b9050919050565b6000615bdc82615bc4565b9050919050565b615bf4615bef82615bb4565b615bd1565b82525050565b6000615c06828c615197565b602082019150615c16828b615b3e565b601482019150615c26828a615b3e565b601482019150615c368289615b74565b600882019150615c468288615b74565b600882019150615c568287615b9d565b600182019150615c668286615197565b602082019150615c7682856157da565b9150615c828284615be3565b6004820191508190509a9950505050505050505050565b600060a082019050615cae6000830188613b68565b615cbb6020830187613b68565b615cc86040830186613b68565b615cd56060830185613dba565b615ce2608083018461510f565b9695505050505050565b600081905092915050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b6000615d2d600283615cec565b9150615d3882615cf7565b600282019050919050565b6000615d4e82615d20565b9150615d5a8285615197565b602082019150615d6a8284615197565b6020820191508190509392505050565b615d8381614766565b82525050565b6000608082019050615d9e6000830187613b68565b615dab6020830186615d7a565b615db86040830185613b68565b615dc56060830184613b68565b95945050505050565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b6000615e04601d83613c7e565b9150615e0f82615dce565b602082019050919050565b60006020820190508181036000830152615e3381615df7565b9050919050565b50565b6000615e4a6000836157cf565b9150615e5582615e3a565b600082019050919050565b6000615e6b82615e3d565b9150819050919050565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b6000615ed1603a83613c7e565b9150615edc82615e75565b604082019050919050565b60006020820190508181036000830152615f0081615ec4565b905091905056fea164736f6c6343000813000a00000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 5800000, "intent": "Deploy EAS Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000017586080604052348015600e575f80fd5b5060156019565b60d4565b5f54610100900460ff161560835760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116101560d2575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611677806100e15f395ff3fe6080604052600436106100bb575f3560e01c80637dfbd04911610071578063c4d66de81161004c578063c4d66de8146102f6578063d61a398b14610315578063dad544e014610346575f80fd5b80637dfbd049146102ac5780637fc81bb7146102c3578063b87ea8d4146102e2575f80fd5b8063394d2731116100a1578063394d2731146101f65780633e47158c1461021e57806354fd4d5014610257575f80fd5b80630a7617b3146101735780630c0544a314610194575f80fd5b3661016f573373ffffffffffffffffffffffffffffffffffffffff7f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135c1614610130576040517f14885cf900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805134815247602082018190529133917f213e72af0d3613bd643cff3059f872c1015e6541624e37872bf95eefbaf220a8910160405180910390a2005b5f80fd5b34801561017e575f80fd5b5061019261018d3660046112a1565b61035a565b005b34801561019f575f80fd5b506001546101d09070010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b6040516fffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b348015610201575f80fd5b506001546101d0906fffffffffffffffffffffffffffffffff1681565b348015610229575f80fd5b5061023261051c565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101ed565b348015610262575f80fd5b5061029f6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b6040516101ed91906112bc565b3480156102b7575f80fd5b506101d06301e1338081565b3480156102ce575f80fd5b506101926102dd36600461130f565b610722565b3480156102ed575f80fd5b50610192610915565b348015610301575f80fd5b506101926103103660046112a1565b610ced565b348015610320575f80fd5b505f546102329062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b348015610351575f80fd5b50610232610ee9565b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103db919061133e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461043f576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff811661048c576040517f99c6ec0800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805473ffffffffffffffffffffffffffffffffffffffff838116620100008181027fffffffffffffffffffff0000000000000000000000000000000000000000ffff85161790945560408051949093049091168084526020840191909152917f16417cc372deec0caee5f52e2ad77a5f07b4591fd56b4ff31b6e20f817d4daeb91015b60405180910390a15050565b5f806105467fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561056957919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026105ac9190611386565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000009190911790610606906060015b604051602081830303815290604052805190602001205490565b1461063d576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f9061065e906060016105ec565b905073ffffffffffffffffffffffffffffffffffffffff8116156106f0578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e9919061133e565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561077f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a3919061133e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610807576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806fffffffffffffffffffffffffffffffff165f03610852576040517fcf85916100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6301e133806fffffffffffffffffffffffffffffffff821611156108a2576040517f30b9f35e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180546fffffffffffffffffffffffffffffffff8381167001000000000000000000000000000000008181028385161790945560408051949093049091168084526020840191909152917f4492086b630ed3846eec0979dd87a71c814ceb1c6dab80ab81e3450b21e4de289101610510565b60015461094a906fffffffffffffffffffffffffffffffff7001000000000000000000000000000000008204811691166113a3565b6fffffffffffffffffffffffffffffffff16421015610995576040517f1e4a9f3a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffffffffffff0000000000000000000000000000000016426fffffffffffffffffffffffffffffffff161790555f6109ef734200000000000000000000000000000000000011610f63565b90505f610a0f734200000000000000000000000000000000000019610f63565b90505f610a2f73420000000000000000000000000000000000001a610f63565b90505f610a4f73420000000000000000000000000000000000001b610f63565b9050610a5a5f6111b0565b5f8282610a6786886113d3565b610a7191906113d3565b610a7b91906113d3565b9050805f03610ab6576040517fc8972e5200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80546040517f54e7f42d000000000000000000000000000000000000000000000000000000008152600481018890526024810187905260448101859052606481018690526201000090910473ffffffffffffffffffffffffffffffffffffffff16906354e7f42d906084015f60405180830381865afa158015610b3c573d5f803e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610b81919081019061148b565b80519091505f819003610bc0576040517f763970d600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805b82811015610c70575f848281518110610bde57610bde61155a565b6020026020010151602001519050805f03610bf95750610c68565b5f610c20868481518110610c0f57610c0f61155a565b60200260200101515f0151836111d6565b905080610c59576040517fd68d1b1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c6382856113d3565b935050505b600101610bc3565b50838114610caa576040517f9c01eac000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f73f9a13241a1848ec157967f3a85601709353e616f1f2605d818c0f2d21774df8385604051610cdb929190611587565b60405180910390a15050505050505050565b5f54610100900460ff1615808015610d0b57505f54600160ff909116105b80610d245750303b158015610d2457505f5460ff166001145b610db4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840160405180910390fd5b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e10575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e186111e9565b5f80547fffffffffffffffffffff0000000000000000000000000000000000000000ffff166201000073ffffffffffffffffffffffffffffffffffffffff85160217905572015180000000000000000000000000000000006fffffffffffffffffffffffffffffffff4216176001558015610ee5575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610510565b5050565b5f610ef261051c565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f3a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f5e919061133e565b905090565b5f60018273ffffffffffffffffffffffffffffffffffffffff166382356d8a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610faf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fd39190611622565b6001811115610fe457610fe46115f5565b1461101b576040517fb4726cbe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff166366d003ac6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561107b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061109f919061133e565b73ffffffffffffffffffffffffffffffffffffffff16146110ec576040517fc3380cef00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b476110f6836111b0565b8273ffffffffffffffffffffffffffffffffffffffff16633ccfd60b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015611140573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111649190611640565b915047826111728383611657565b146111a9576040517f87c91c5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050919050565b807f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135d50565b5f6111e2835a8461126c565b9392505050565b336111f261051c565b73ffffffffffffffffffffffffffffffffffffffff161415801561123357503361121a610ee9565b73ffffffffffffffffffffffffffffffffffffffff1614155b1561126a576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f1949350505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461129e575f80fd5b50565b5f602082840312156112b1575f80fd5b81356111e28161127d565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b5f6020828403121561131f575f80fd5b81356fffffffffffffffffffffffffffffffff811681146111e2575f80fd5b5f6020828403121561134e575f80fd5b81516111e28161127d565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808202811582820484141761139d5761139d611359565b92915050565b6fffffffffffffffffffffffffffffffff8181168382160190808211156113cc576113cc611359565b5092915050565b8082018082111561139d5761139d611359565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040805190810167ffffffffffffffff81118282101715611436576114366113e6565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611483576114836113e6565b604052919050565b5f602080838503121561149c575f80fd5b825167ffffffffffffffff808211156114b3575f80fd5b818501915085601f8301126114c6575f80fd5b8151818111156114d8576114d86113e6565b6114e6848260051b0161143c565b818152848101925060069190911b830184019087821115611505575f80fd5b928401925b8184101561154f5760408489031215611521575f80fd5b611529611413565b84516115348161127d565b8152848601518682015283526040909301929184019161150a565b979650505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b604080825283518282018190525f91906020906060850190828801855b828110156115df578151805173ffffffffffffffffffffffffffffffffffffffff1685528501518585015292850192908401906001016115a4565b5050508093505050508260208301529392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f60208284031215611632575f80fd5b8151600281106111e2575f80fd5b5f60208284031215611650575f80fd5b5051919050565b8181038181111561139d5761139d61135956fea164736f6c6343000819000a0000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001ffe608060405234801561000f575f80fd5b5061001e61002360201b60201c565b6101b3565b5f60019054906101000a900460ff1615610072576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161006990610161565b60405180910390fd5b60ff80165f8054906101000a900460ff1660ff1610156100df5760ff5f806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff6040516100d6919061019a565b60405180910390a15b565b5f82825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e6974695f8201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b5f61014b6027836100e1565b9150610156826100f1565b604082019050919050565b5f6020820190508181035f8301526101788161013f565b9050919050565b5f60ff82169050919050565b6101948161017f565b82525050565b5f6020820190506101ad5f83018461018b565b92915050565b611e3e806101c05f395ff3fe60806040526004361061008f575f3560e01c80630a7617b31461015a5780630c0544a314610182578063394d2731146101ac5780633e47158c146101d657806354fd4d50146102005780637dfbd0491461022a5780637fc81bb714610254578063b87ea8d41461027c578063c4d66de814610292578063d61a398b146102ba578063dad544e0146102e457610156565b366101565761009c61030e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610100576040517f14885cf900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f4790503373ffffffffffffffffffffffffffffffffffffffff167f213e72af0d3613bd643cff3059f872c1015e6541624e37872bf95eefbaf220a8348360405161014c929190611425565b60405180910390a2005b5f80fd5b348015610165575f80fd5b50610180600480360381019061017b91906114c8565b610336565b005b34801561018d575f80fd5b50610196610522565b6040516101a3919061151d565b60405180910390f35b3480156101b7575f80fd5b506101c0610544565b6040516101cd919061151d565b60405180910390f35b3480156101e1575f80fd5b506101ea610565565b6040516101f79190611591565b60405180910390f35b34801561020b575f80fd5b506102146107b4565b604051610221919061161a565b60405180910390f35b348015610235575f80fd5b5061023e6107ed565b60405161024b919061151d565b60405180910390f35b34801561025f575f80fd5b5061027a60048036038101906102759190611664565b6107f5565b005b348015610287575f80fd5b50610290610a1f565b005b34801561029d575f80fd5b506102b860048036038101906102b391906114c8565b610de9565b005b3480156102c5575f80fd5b506102ce610fd6565b6040516102db91906116af565b60405180910390f35b3480156102ef575f80fd5b506102f8610ffb565b60405161030591906116d7565b60405180910390f35b5f7f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135c905090565b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610393573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b7919061171a565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461041b576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610480576040517f99c6ec0800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f60026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f16417cc372deec0caee5f52e2ad77a5f07b4591fd56b4ff31b6e20f817d4daeb8183604051610516929190611745565b60405180910390a15050565b600160109054906101000a90046fffffffffffffffffffffffffffffffff1681565b60015f9054906101000a90046fffffffffffffffffffffffffffffffff1681565b5f806105927fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b611075565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146105d057809150506107b1565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516106139190611799565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b61066a305f60405160200161064f9291906117da565b6040516020818303038152906040528051906020012061107f565b146106a1576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6106d43060016040516020016106b99291906117da565b60405160208183030381529060405280519060200120611075565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461077f578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610752573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610776919061171a565b925050506107b1565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b6301e1338081565b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610852573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610876919061171a565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108da576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f816fffffffffffffffffffffffffffffffff1603610925576040517fcf85916100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6301e133806fffffffffffffffffffffffffffffffff16816fffffffffffffffffffffffffffffffff161115610987576040517f30b9f35e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f600160109054906101000a90046fffffffffffffffffffffffffffffffff16905081600160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055507f4492086b630ed3846eec0979dd87a71c814ceb1c6dab80ab81e3450b21e4de288183604051610a13929190611801565b60405180910390a15050565b600160109054906101000a90046fffffffffffffffffffffffffffffffff1660015f9054906101000a90046fffffffffffffffffffffffffffffffff16610a669190611828565b6fffffffffffffffffffffffffffffffff16421015610ab1576040517f1e4a9f3a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b4260015f6101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055505f610b07734200000000000000000000000000000000000011611089565b90505f610b27734200000000000000000000000000000000000019611089565b90505f610b4773420000000000000000000000000000000000001a611089565b90505f610b6773420000000000000000000000000000000000001b611089565b9050610b725f6112f0565b5f82828587610b81919061186b565b610b8b919061186b565b610b95919061186b565b90505f8103610bd0576040517fc8972e5200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166354e7f42d878786886040518563ffffffff1660e01b8152600401610c31949392919061189e565b5f60405180830381865afa158015610c4b573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190610c739190611ad7565b90505f815190505f8103610cb3576040517f763970d600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805b82811015610d6c575f848281518110610cd257610cd1611b1e565b5b60200260200101516020015190505f8103610ced5750610d5f565b5f610d15868481518110610d0457610d03611b1e565b5b60200260200101515f015183611316565b905080610d4e576040517fd68d1b1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8184610d5a919061186b565b935050505b8080600101915050610cb6565b50838114610da6576040517f9c01eac000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f73f9a13241a1848ec157967f3a85601709353e616f1f2605d818c0f2d21774df8385604051610dd7929190611c3e565b60405180910390a15050505050505050565b5f8060019054906101000a900460ff16159050808015610e18575060015f8054906101000a900460ff1660ff16105b80610e445750610e273061132a565b158015610e43575060015f8054906101000a900460ff1660ff16145b5b610e83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7a90611cdc565b60405180910390fd5b60015f806101000a81548160ff021916908360ff1602179055508015610ebe5760015f60016101000a81548160ff0219169083151502179055505b610ec661134c565b815f60026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062015180600160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055504260015f6101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055508015610fd2575f8060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610fc99190611d3f565b60405180910390a15b5050565b5f60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f611004610565565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561104c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611070919061171a565b905090565b5f81549050919050565b5f81549050919050565b5f60018081111561109d5761109c611d58565b5b8273ffffffffffffffffffffffffffffffffffffffff166382356d8a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061110a9190611da8565b600181111561111c5761111b611d58565b5b14611153576040517fb4726cbe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff166366d003ac6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d7919061171a565b73ffffffffffffffffffffffffffffffffffffffff1614611224576040517fc3380cef00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f479050611231836112f0565b8273ffffffffffffffffffffffffffffffffffffffff16633ccfd60b6040518163ffffffff1660e01b81526004016020604051808303815f875af115801561127b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061129f9190611dd3565b91505f4790508282826112b29190611dfe565b146112e9576040517f87c91c5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050919050565b807f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135d50565b5f611322835a846113fb565b905092915050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661136b610565565b73ffffffffffffffffffffffffffffffffffffffff16141580156113c257503373ffffffffffffffffffffffffffffffffffffffff166113a9610ffb565b73ffffffffffffffffffffffffffffffffffffffff1614155b156113f9576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f819050919050565b61141f8161140d565b82525050565b5f6040820190506114385f830185611416565b6114456020830184611416565b9392505050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114868261145d565b9050919050565b5f6114978261147c565b9050919050565b6114a78161148d565b81146114b1575f80fd5b50565b5f813590506114c28161149e565b92915050565b5f602082840312156114dd576114dc611455565b5b5f6114ea848285016114b4565b91505092915050565b5f6fffffffffffffffffffffffffffffffff82169050919050565b611517816114f3565b82525050565b5f6020820190506115305f83018461150e565b92915050565b5f819050919050565b5f61155961155461154f8461145d565b611536565b61145d565b9050919050565b5f61156a8261153f565b9050919050565b5f61157b82611560565b9050919050565b61158b81611571565b82525050565b5f6020820190506115a45f830184611582565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6115ec826115aa565b6115f681856115b4565b93506116068185602086016115c4565b61160f816115d2565b840191505092915050565b5f6020820190508181035f83015261163281846115e2565b905092915050565b611643816114f3565b811461164d575f80fd5b50565b5f8135905061165e8161163a565b92915050565b5f6020828403121561167957611678611455565b5b5f61168684828501611650565b91505092915050565b5f61169982611560565b9050919050565b6116a98161168f565b82525050565b5f6020820190506116c25f8301846116a0565b92915050565b6116d18161147c565b82525050565b5f6020820190506116ea5f8301846116c8565b92915050565b6116f98161147c565b8114611703575f80fd5b50565b5f81519050611714816116f0565b92915050565b5f6020828403121561172f5761172e611455565b5b5f61173c84828501611706565b91505092915050565b5f6040820190506117585f8301856116c8565b61176560208301846116c8565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6117a38261140d565b91506117ae8361140d565b92508282026117bc8161140d565b915082820484148315176117d3576117d261176c565b5b5092915050565b5f6040820190506117ed5f8301856116c8565b6117fa6020830184611416565b9392505050565b5f6040820190506118145f83018561150e565b611821602083018461150e565b9392505050565b5f611832826114f3565b915061183d836114f3565b925082820190506fffffffffffffffffffffffffffffffff8111156118655761186461176c565b5b92915050565b5f6118758261140d565b91506118808361140d565b92508282019050808211156118985761189761176c565b5b92915050565b5f6080820190506118b15f830187611416565b6118be6020830186611416565b6118cb6040830185611416565b6118d86060830184611416565b95945050505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61191b826115d2565b810181811067ffffffffffffffff8211171561193a576119396118e5565b5b80604052505050565b5f61194c61144c565b90506119588282611912565b919050565b5f67ffffffffffffffff821115611977576119766118e5565b5b602082029050602081019050919050565b5f80fd5b5f80fd5b5f61199a8261145d565b9050919050565b6119aa81611990565b81146119b4575f80fd5b50565b5f815190506119c5816119a1565b92915050565b6119d48161140d565b81146119de575f80fd5b50565b5f815190506119ef816119cb565b92915050565b5f60408284031215611a0a57611a0961198c565b5b611a146040611943565b90505f611a23848285016119b7565b5f830152506020611a36848285016119e1565b60208301525092915050565b5f611a54611a4f8461195d565b611943565b90508083825260208201905060408402830185811115611a7757611a76611988565b5b835b81811015611aa05780611a8c88826119f5565b845260208401935050604081019050611a79565b5050509392505050565b5f82601f830112611abe57611abd6118e1565b5b8151611ace848260208601611a42565b91505092915050565b5f60208284031215611aec57611aeb611455565b5b5f82015167ffffffffffffffff811115611b0957611b08611459565b5b611b1584828501611aaa565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611b7d81611990565b82525050565b611b8c8161140d565b82525050565b604082015f820151611ba65f850182611b74565b506020820151611bb96020850182611b83565b50505050565b5f611bca8383611b92565b60408301905092915050565b5f602082019050919050565b5f611bec82611b4b565b611bf68185611b55565b9350611c0183611b65565b805f5b83811015611c31578151611c188882611bbf565b9750611c2383611bd6565b925050600181019050611c04565b5085935050505092915050565b5f6040820190508181035f830152611c568185611be2565b9050611c656020830184611416565b9392505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c7265615f8201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b5f611cc6602e836115b4565b9150611cd182611c6c565b604082019050919050565b5f6020820190508181035f830152611cf381611cba565b9050919050565b5f819050919050565b5f60ff82169050919050565b5f611d29611d24611d1f84611cfa565b611536565b611d03565b9050919050565b611d3981611d0f565b82525050565b5f602082019050611d525f830184611d30565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110611d91575f80fd5b50565b5f81519050611da281611d85565b92915050565b5f60208284031215611dbd57611dbc611455565b5b5f611dca84828501611d94565b91505092915050565b5f60208284031215611de857611de7611455565b5b5f611df5848285016119e1565b91505092915050565b5f611e088261140d565b9150611e138361140d565b9250828203905081811115611e2b57611e2a61176c565b5b9291505056fea164736f6c6343000819000a0000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1700000, "intent": "Deploy FeeSplitter Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000005d8608060405234801561001057600080fd5b506105b8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610098578063e0145f5c146100d0575b600080fd5b6100826040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f91906103f7565b60405180910390f35b6100ab6100a6366004610440565b6100ea565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008f565b734e59b44847b379578588920ca78fbf26c0b4956c6100ab565b8051602080830191909120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527f4e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000602182015260358101869052605580820184905282518083039091018152607590910190915280519201919091206000919073ffffffffffffffffffffffffffffffffffffffff81163b156101d85760405173ffffffffffffffffffffffffffffffffffffffff8216907ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b90600090a291506103779050565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff168787604051602001610219929190610519565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290526102519161053f565b6000604051808303816000865af19150503d806000811461028e576040519150601f19603f3d011682016040523d82523d6000602084013e610293565b606091505b5091509150806102a29061055b565b60601c94508115806102e057508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561032257806040517fcb0fc6f700000000000000000000000000000000000000000000000000000000815260040161031991906103f7565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d28860405161036a91815260200190565b60405180910390a2505050505b92915050565b60005b83811015610398578181015183820152602001610380565b838111156103a7576000848401525b50505050565b600081518084526103c581602086016020860161037d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061040a60208301846103ad565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806040838503121561045357600080fd5b82359150602083013567ffffffffffffffff8082111561047257600080fd5b818501915085601f83011261048657600080fd5b81358181111561049857610498610411565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156104de576104de610411565b816040528281528860208487010111156104f757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b8281526000825161053181602085016020870161037d565b919091016020019392505050565b6000825161055181846020870161037d565b9190910192915050565b6000815160208301517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000808216935060148310156105a35780818460140360031b1b83161693505b50505091905056fea164736f6c634300080f000a0000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000969608060405234801561001057600080fd5b50610949806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610064578063e0145f5c14610094575b600080fd5b61004e6100b2565b60405161005b91906103ec565b60405180910390f35b61007e6004803603810190610079919061058d565b6100eb565b60405161008b919061062a565b60405180910390f35b61009c610337565b6040516100a9919061062a565b60405180910390f35b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60008082805190602001209050600060ff60f81b734e59b44847b379578588920ca78fbf26c0b4956c8684604051602001610129949392919061070d565b6040516020818303038152906040528051906020012060001c905060008173ffffffffffffffffffffffffffffffffffffffff163b146101b0578073ffffffffffffffffffffffffffffffffffffffff167ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b60405160405180910390a28092505050610331565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff1687876040516020016101f19291906107a2565b60405160208183030381529060405260405161020d91906107ca565b6000604051808303816000865af19150503d806000811461024a576040519150601f19603f3d011682016040523d82523d6000602084013e61024f565b606091505b50915091508061025e9061083f565b60601c945081158061029c57508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156102de57806040517fcb0fc6f70000000000000000000000000000000000000000000000000000000081526004016102d591906108f0565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d2886040516103249190610921565b60405180910390a2505050505b92915050565b6000734e59b44847b379578588920ca78fbf26c0b4956c905090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561038d578082015181840152602081019050610372565b8381111561039c576000848401525b50505050565b6000601f19601f8301169050919050565b60006103be82610353565b6103c8818561035e565b93506103d881856020860161036f565b6103e1816103a2565b840191505092915050565b6000602082019050818103600083015261040681846103b3565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61043581610422565b811461044057600080fd5b50565b6000813590506104528161042c565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61049a826103a2565b810181811067ffffffffffffffff821117156104b9576104b8610462565b5b80604052505050565b60006104cc61040e565b90506104d88282610491565b919050565b600067ffffffffffffffff8211156104f8576104f7610462565b5b610501826103a2565b9050602081019050919050565b82818337600083830152505050565b600061053061052b846104dd565b6104c2565b90508281526020810184848401111561054c5761054b61045d565b5b61055784828561050e565b509392505050565b600082601f83011261057457610573610458565b5b813561058484826020860161051d565b91505092915050565b600080604083850312156105a4576105a3610418565b5b60006105b285828601610443565b925050602083013567ffffffffffffffff8111156105d3576105d261041d565b5b6105df8582860161055f565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610614826105e9565b9050919050565b61062481610609565b82525050565b600060208201905061063f600083018461061b565b92915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6000819050919050565b61068c61068782610645565b610671565b82525050565b600061069d826105e9565b9050919050565b60008160601b9050919050565b60006106bc826106a4565b9050919050565b60006106ce826106b1565b9050919050565b6106e66106e182610692565b6106c3565b82525050565b6000819050919050565b61070761070282610422565b6106ec565b82525050565b6000610719828761067b565b60018201915061072982866106d5565b60148201915061073982856106f6565b60208201915061074982846106f6565b60208201915081905095945050505050565b600081519050919050565b600081905092915050565b600061077c8261075b565b6107868185610766565b935061079681856020860161036f565b80840191505092915050565b60006107ae82856106f6565b6020820191506107be8284610771565b91508190509392505050565b60006107d68284610771565b915081905092915050565b6000819050602082019050919050565b60007fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082169050919050565b600061082982516107f1565b80915050919050565b600082821b905092915050565b600061084a8261075b565b82610854846107e1565b905061085f8161081d565b9250601482101561089f5761089a7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083601403600802610832565b831692505b5050919050565b600082825260208201905092915050565b60006108c28261075b565b6108cc81856108a6565b93506108dc81856020860161036f565b6108e5816103a2565b840191505092915050565b6000602082019050818103600083015261090a81846108b7565b905092915050565b61091b81610422565b82525050565b60006020820190506109366000830184610912565b9291505056fea164736f6c634300080f000a0000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 600000, "intent": "Deploy ConditionalDeployer Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000283608060405234801561001057600080fd5b50610263806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bec9d65146100515780631d8a4e921461006657806354fd4d501461009b57806378ecabce146100e4575b600080fd5b61006461005f3660046101ca565b610107565b005b7fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc546040519081526020015b60405180910390f35b6100d76040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009291906101e3565b6100f76100f23660046101ca565b610178565b6040519015158152602001610092565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610154576040517fee37fa8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc55565b60006101ab6101a57fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc5490565b836101b1565b92915050565b600081158015906101c3575081828416145b9392505050565b6000602082840312156101dc57600080fd5b5035919050565b600060208083528351808285015260005b81811015610210578581018301518582016040015282016101f4565b81811115610222576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01692909201604001939250505056fea164736f6c634300080f000a0000000000000000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003c2608060405234801561001057600080fd5b506103a2806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bec9d65146100515780631d8a4e921461006d57806354fd4d501461008b57806378ecabce146100a9575b600080fd5b61006b6004803603810190610066919061024d565b6100d9565b005b610075610178565b6040516100829190610289565b60405180910390f35b6100936101a1565b6040516100a0919061033d565b60405180910390f35b6100c360048036038101906100be919061024d565b6101da565b6040516100d0919061037a565b60405180910390f35b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610152576040517fee37fa8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b807fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc5550565b60007fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc54905090565b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60006101ed6101e7610178565b836101f4565b9050919050565b60008060001b821415801561020a575081828416145b905092915050565b600080fd5b6000819050919050565b61022a81610217565b811461023557600080fd5b50565b60008135905061024781610221565b92915050565b60006020828403121561026357610262610212565b5b600061027184828501610238565b91505092915050565b61028381610217565b82525050565b600060208201905061029e600083018461027a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156102de5780820151818401526020810190506102c3565b838111156102ed576000848401525b50505050565b6000601f19601f8301169050919050565b600061030f826102a4565b61031981856102af565b93506103298185602086016102c0565b610332816102f3565b840191505092915050565b600060208201905081810360008301526103578184610304565b905092915050565b60008115159050919050565b6103748161035f565b82525050565b600060208201905061038f600083018461036b565b9291505056fea164736f6c634300080f000a000000000000000000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 300000, "intent": "Deploy L2DevFeatureFlags Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000069e6080604052348015600e575f80fd5b506106828061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c8063331b637f1461004357806354fd4d5014610069578063ab4d6f75146100b2575b5f80fd5b610056610051366004610512565b6100c7565b6040519081526020015b60405180910390f35b6100a56040518060400160405280600581526020017f312e302e3200000000000000000000000000000000000000000000000000000081525081565b604051610060919061053b565b6100c56100c036600461058e565b61039e565b005b5f67ffffffffffffffff801683602001511115610110576040517fd1f79e8200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604083015163ffffffff1015610152576040517f94338eba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606083015167ffffffffffffffff1015610198576040517f596a19a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82516040515f916101dd91859060200160609290921b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000168252601482015260340190565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00181528282528051602091820120878201516060890151898501515f9487018590527fffffffffffffffff00000000000000000000000000000000000000000000000060c084811b8216602c8a015283901b1660348801527fffffffff0000000000000000000000000000000000000000000000000000000060e082901b16603c88015292965090949093919291016040516020818303038152906040526102ac906105bc565b90505f85826040516020016102cb929190918252602082015260400190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152828252805160209182012060808d01519184018190529183015291505f90606001604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101207effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0300000000000000000000000000000000000000000000000000000000000000179a9950505050505050505050565b5f6103b76103b136859003850185610601565b836100c7565b90505f6103c38261043b565b509050806103fd576040517fe3c0081600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b827f5c37832d2e8d10e346e55ad62071a6a2f9fa5130614ef2ec6617555c6f467ba78560405161042d9190610622565b60405180910390a250505050565b5f805a835491505a6103e891031115939092509050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610475575f80fd5b919050565b5f60a0828403121561048a575f80fd5b60405160a0810181811067ffffffffffffffff821117156104d2577f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040529050806104e183610452565b8152602083013560208201526040830135604082015260608301356060820152608083013560808201525092915050565b5f8060c08385031215610523575f80fd5b61052d848461047a565b9460a0939093013593505050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b5f8082840360c08112156105a0575f80fd5b60a08112156105ad575f80fd5b50919360a08501359350915050565b805160208083015191908110156105fb577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8160200360031b1b821691505b50919050565b5f60a08284031215610611575f80fd5b61061b838361047a565b9392505050565b60a0810173ffffffffffffffffffffffffffffffffffffffff61064484610452565b168252602083013560208301526040830135604083015260608301356060830152608083013560808301529291505056fea164736f6c6343000819000a0000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000ad56080604052348015600e575f80fd5b50610ab98061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c8063331b637f1461004357806354fd4d5014610073578063ab4d6f7514610091575b5f80fd5b61005d60048036038101906100589190610583565b6100ad565b60405161006a91906105d0565b60405180910390f35b61007b6102b0565b6040516100889190610649565b60405180910390f35b6100ab60048036038101906100a6919061068b565b6102e9565b005b5f67ffffffffffffffff8016836020015111156100f6576040517fd1f79e8200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b63ffffffff80168360400151111561013a576040517f94338eba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff801683606001511115610182576040517f596a19a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f01518360405160200161019992919061072e565b6040516020818303038152906040528051906020012090505f846020015190505f856060015190505f866040015190505f808484846040516020016101e1949392919061082e565b6040516020818303038152906040526101f9906108b4565b90505f858260405160200161020f92919061091a565b6040516020818303038152906040528051906020012090505f818a6080015160405160200161023f929190610965565b6040516020818303038152906040528051906020012090507f03000000000000000000000000000000000000000000000000000000000000005f1b7fff00000000000000000000000000000000000000000000000000000000000000195f1b82161797505050505050505092915050565b6040518060400160405280600581526020017f312e302e3200000000000000000000000000000000000000000000000000000081525081565b5f610304838036038101906102fe9190610990565b836100ad565b90505f61031082610388565b5090508061034a576040517fe3c0081600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b827f5c37832d2e8d10e346e55ad62071a6a2f9fa5130614ef2ec6617555c6f467ba78560405161037a9190610a93565b60405180910390a250505050565b5f805a835491505a6103e8818303111593505050915091565b5f604051905090565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6103f8826103b2565b810181811067ffffffffffffffff82111715610417576104166103c2565b5b80604052505050565b5f6104296103a1565b905061043582826103ef565b919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104638261043a565b9050919050565b61047381610459565b811461047d575f80fd5b50565b5f8135905061048e8161046a565b92915050565b5f819050919050565b6104a681610494565b81146104b0575f80fd5b50565b5f813590506104c18161049d565b92915050565b5f60a082840312156104dc576104db6103ae565b5b6104e660a0610420565b90505f6104f584828501610480565b5f830152506020610508848285016104b3565b602083015250604061051c848285016104b3565b6040830152506060610530848285016104b3565b6060830152506080610544848285016104b3565b60808301525092915050565b5f819050919050565b61056281610550565b811461056c575f80fd5b50565b5f8135905061057d81610559565b92915050565b5f8060c08385031215610599576105986103aa565b5b5f6105a6858286016104c7565b92505060a06105b78582860161056f565b9150509250929050565b6105ca81610550565b82525050565b5f6020820190506105e35f8301846105c1565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f61061b826105e9565b61062581856105f3565b9350610635818560208601610603565b61063e816103b2565b840191505092915050565b5f6020820190508181035f8301526106618184610611565b905092915050565b5f80fd5b5f60a0828403121561068257610681610669565b5b81905092915050565b5f8060c083850312156106a1576106a06103aa565b5b5f6106ae8582860161066d565b92505060a06106bf8582860161056f565b9150509250929050565b5f8160601b9050919050565b5f6106df826106c9565b9050919050565b5f6106f0826106d5565b9050919050565b61070861070382610459565b6106e6565b82525050565b5f819050919050565b61072861072382610550565b61070e565b82525050565b5f61073982856106f7565b6014820191506107498284610717565b6020820191508190509392505050565b5f6bffffffffffffffffffffffff82169050919050565b5f8160a01b9050919050565b5f61078682610770565b9050919050565b61079e61079982610759565b61077c565b82525050565b5f67ffffffffffffffff82169050919050565b5f8160c01b9050919050565b5f6107cd826107b7565b9050919050565b6107e56107e0826107a4565b6107c3565b82525050565b5f63ffffffff82169050919050565b5f8160e01b9050919050565b5f610810826107fa565b9050919050565b610828610823826107eb565b610806565b82525050565b5f610839828761078d565b600c8201915061084982866107d4565b60088201915061085982856107d4565b6008820191506108698284610817565b60048201915081905095945050505050565b5f81519050919050565b5f819050602082019050919050565b5f61089f8251610550565b80915050919050565b5f82821b905092915050565b5f6108be8261087b565b826108c884610885565b90506108d381610894565b925060208210156109135761090e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026108a8565b831692505b5050919050565b5f6109258285610717565b6020820191506109358284610717565b6020820191508190509392505050565b5f819050919050565b61095f61095a82610494565b610945565b82525050565b5f6109708285610717565b602082019150610980828461094e565b6020820191508190509392505050565b5f60a082840312156109a5576109a46103aa565b5b5f6109b2848285016104c7565b91505092915050565b5f6109c96020840184610480565b905092915050565b6109da81610459565b82525050565b5f6109ee60208401846104b3565b905092915050565b6109ff81610494565b82525050565b60a08201610a155f8301836109bb565b610a215f8501826109d1565b50610a2f60208301836109e0565b610a3c60208501826109f6565b50610a4a60408301836109e0565b610a5760408501826109f6565b50610a6560608301836109e0565b610a7260608501826109f6565b50610a8060808301836109e0565b610a8d60808501826109f6565b50505050565b5f60a082019050610aa65f830184610a05565b9291505056fea164736f6c6343000819000a0000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 600000, "intent": "Deploy CrossL2Inbox Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000011836080604052348015600e575f80fd5b506111678061001c5f395ff3fe6080604052600436106100b8575f3560e01c80637056f41f11610071578063b1b1b2091161004c578063b1b1b20914610228578063bc294d7d14610266578063ecc7042814610291575f80fd5b80637056f41f146101b65780637936cbee146101d55780638d1d298f14610215575f80fd5b806352617f3c116100a157806352617f3c1461011c57806354fd4d50146101425780636b0c3c5e14610197575f80fd5b806324794462146100bc57806338ffde18146100e3575b5f80fd5b3480156100c7575f80fd5b506100d06102c5565b6040519081526020015b60405180910390f35b3480156100ee575f80fd5b506100f7610344565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100da565b348015610127575f80fd5b5061012f5f81565b60405161ffff90911681526020016100da565b34801561014d575f80fd5b5061018a6040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b6040516100da9190610c7e565b3480156101a2575f80fd5b506100d06101b1366004610d00565b6103c3565b3480156101c1575f80fd5b506100d06101d0366004610d77565b6104ae565b3480156101e0575f80fd5b506101e96106ba565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016100da565b61018a610223366004610dcf565b61075e565b348015610233575f80fd5b50610256610242366004610e25565b5f6020819052908152604090205460ff1681565b60405190151581526020016100da565b348015610271575f80fd5b506100d0610280366004610e25565b60026020525f908152604090205481565b34801561029c575f80fd5b506001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166100d0565b5f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c61031e576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c90565b5f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c61039d576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c90565b5f610407874688888888888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610ae192505050565b5f878152600260205260409020549091508114610450576040517f6eca2e4b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b858473ffffffffffffffffffffffffffffffffffffffff16887f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f32088878760405161049c93929190610e3c565b60405180910390a49695505050505050565b5f4685036104e8576040517f8ed9a95d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fffffffffffffffffffffffffbdffffffffffffffffffffffffffffffffffffdd73ffffffffffffffffffffffffffffffffffffffff851601610557576040517f4faa250900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6105816001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1690565b90506105c6864683338989898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610ae192505050565b5f828152600260205260408120829055600180549294507dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909216919061060a83610ea5565b91906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050808573ffffffffffffffffffffffffffffffffffffffff16877f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3203388886040516106a993929190610e3c565b60405180910390a450949350505050565b5f807ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c610714576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50507fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c907f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c90565b60607ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c156107b9576040517f37ed32e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60017ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d7342000000000000000000000000000000000000236107ff6020860186610f06565b73ffffffffffffffffffffffffffffffffffffffff161461084c576040517f7987c15700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002273ffffffffffffffffffffffffffffffffffffffff1663ab4d6f7585858560405161088d929190610f21565b6040519081900381207fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1682526108cc9291600401610f30565b5f604051808303815f87803b1580156108e3575f80fd5b505af11580156108f5573d5f803e3d5ffd5b505050505f805f805f6109088888610b1f565b9450945094509450945046851461094b576040517f31ac221100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60808901355f61095f878387878a88610ae1565b5f8181526020819052604090205490915060ff16156109aa576040517f9ca9480b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81815260208190526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556109ea8285610be8565b5f8673ffffffffffffffffffffffffffffffffffffffff163485604051610a119190610f89565b5f6040518083038185875af1925050503d805f8114610a4b576040519150601f19603f3d011682016040523d82523d5f602084013e610a50565b606091505b509950905080610a6257885189602001fd5b8186847fc270d73e26d2d39dee7ef92093555927e344e243415547ecc350b2b5385b68a28c80519060200120604051610a9d91815260200190565b60405180910390a4610aaf5f80610be8565b50505050505050505f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d9392505050565b5f868686868686604051602001610afd96959493929190610f9f565b6040516020818303038152906040528051906020012090509695505050505050565b5f808080606081610b33602082898b610ff5565b810190610b409190610e25565b90507f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3208114610b9b576040517fdf1eb58600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ba960806020898b610ff5565b810190610bb6919061101c565b91975095509350610bca876080818b610ff5565b810190610bd7919061107e565b969995985093965092949392505050565b817f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75d807fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35d5050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f610c906020830184610c32565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610cb8575f80fd5b50565b5f8083601f840112610ccb575f80fd5b50813567ffffffffffffffff811115610ce2575f80fd5b602083019150836020828501011115610cf9575f80fd5b9250929050565b5f805f805f8060a08789031215610d15575f80fd5b86359550602087013594506040870135610d2e81610c97565b93506060870135610d3e81610c97565b9250608087013567ffffffffffffffff811115610d59575f80fd5b610d6589828a01610cbb565b979a9699509497509295939492505050565b5f805f8060608587031215610d8a575f80fd5b843593506020850135610d9c81610c97565b9250604085013567ffffffffffffffff811115610db7575f80fd5b610dc387828801610cbb565b95989497509550505050565b5f805f83850360c0811215610de2575f80fd5b60a0811215610def575f80fd5b5083925060a084013567ffffffffffffffff811115610e0c575f80fd5b610e1886828701610cbb565b9497909650939450505050565b5f60208284031215610e35575f80fd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff8416815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b5f7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808316818103610efc577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6001019392505050565b5f60208284031215610f16575f80fd5b8135610c9081610c97565b818382375f9101908152919050565b60c081018335610f3f81610c97565b73ffffffffffffffffffffffffffffffffffffffff1682526020848101359083015260408085013590830152606080850135908301526080938401359382019390935260a0015290565b5f82518060208501845e5f920191825250919050565b8681528560208201528460408201525f73ffffffffffffffffffffffffffffffffffffffff808616606084015280851660808401525060c060a0830152610fe960c0830184610c32565b98975050505050505050565b5f8085851115611003575f80fd5b8386111561100f575f80fd5b5050820193919092039150565b5f805f6060848603121561102e575f80fd5b83359250602084013561104081610c97565b929592945050506040919091013590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f806040838503121561108f575f80fd5b823561109a81610c97565b9150602083013567ffffffffffffffff808211156110b6575f80fd5b818501915085601f8301126110c9575f80fd5b8135818111156110db576110db611051565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561112157611121611051565b81604052828152886020848701011115611139575f80fd5b826020860160208301375f602084830101528095505050505050925092905056fea164736f6c6343000819000a0000000000000000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000017756080604052348015600e575f80fd5b506117598061001c5f395ff3fe60806040526004361061008b575f3560e01c8063247944621461008f57806338ffde18146100b957806352617f3c146100e357806354fd4d501461010d5780636b0c3c5e146101375780637056f41f146101735780637936cbee146101af5780638d1d298f146101da578063b1b1b2091461020a578063bc294d7d14610246578063ecc7042814610282575b5f80fd5b34801561009a575f80fd5b506100a36102ac565b6040516100b09190610ceb565b60405180910390f35b3480156100c4575f80fd5b506100cd610312565b6040516100da9190610d43565b60405180910390f35b3480156100ee575f80fd5b506100f7610378565b6040516101049190610d78565b60405180910390f35b348015610118575f80fd5b5061012161037c565b60405161012e9190610e01565b60405180910390f35b348015610142575f80fd5b5061015d60048036038101906101589190610ee7565b6103b5565b60405161016a9190610f95565b60405180910390f35b34801561017e575f80fd5b5061019960048036038101906101949190610fae565b6104b1565b6040516101a69190610f95565b60405180910390f35b3480156101ba575f80fd5b506101c36106c3565b6040516101d192919061101f565b60405180910390f35b6101f460048036038101906101ef9190611068565b61074f565b6040516102019190611117565b60405180910390f35b348015610215575f80fd5b50610230600480360381019061022b9190611161565b610abb565b60405161023d91906111a6565b60405180910390f35b348015610251575f80fd5b5061026c600480360381019061026791906111bf565b610ad7565b6040516102799190610f95565b60405180910390f35b34801561028d575f80fd5b50610296610aec565b6040516102a39190610ceb565b60405180910390f35b5f6102b5610b27565b6102eb576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c905090565b5f61031b610b27565b610351576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c905090565b5f81565b6040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b5f610407874688888888888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050610b53565b90508060025f8881526020019081526020015f205414610453576040517f6eca2e4b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b858473ffffffffffffffffffffffffffffffffffffffff16887f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f32088878760405161049f93929190611224565b60405180910390a49695505050505050565b5f4685036104eb576040517f8ed9a95d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610564576040517f4faa250900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61056d610aec565b90506105c0864683338989898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050610b53565b91508160025f8381526020019081526020015f208190555060015f81819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1680929190610613906112aa565b91906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050808573ffffffffffffffffffffffffffffffffffffffff16877f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3203388886040516106b293929190611224565b60405180910390a450949350505050565b5f806106cd610b27565b610703576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c91507f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c90509091565b6060610759610b27565b15610790576040517f37ed32e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60017ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d73420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16845f0160208101906107f191906112ef565b73ffffffffffffffffffffffffffffffffffffffff161461083e576040517f7987c15700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002273ffffffffffffffffffffffffffffffffffffffff1663ab4d6f7585858560405161087f929190611348565b60405180910390206040518363ffffffff1660e01b81526004016108a4929190611438565b5f604051808303815f87803b1580156108bb575f80fd5b505af11580156108cd573d5f803e3d5ffd5b505050505f805f805f6108e08888610b91565b94509450945094509450468514610923576040517f31ac221100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f896080013590505f61093a878387878a88610b53565b90505f808281526020019081526020015f205f9054906101000a900460ff1615610990576040517f9ca9480b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60015f808381526020019081526020015f205f6101000a81548160ff0219169083151502179055506109c28285610c75565b5f8673ffffffffffffffffffffffffffffffffffffffff1634856040516109e9919061148f565b5f6040518083038185875af1925050503d805f8114610a23576040519150601f19603f3d011682016040523d82523d5f602084013e610a28565b606091505b50809a50819250505080610a3e57885189602001fd5b8186847fc270d73e26d2d39dee7ef92093555927e344e243415547ecc350b2b5385b68a28c80519060200120604051610a779190610f95565b60405180910390a4610a895f80610c75565b50505050505050505f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d9392505050565b5f602052805f5260405f205f915054906101000a900460ff1681565b6002602052805f5260405f205f915090505481565b5f610b2260015f9054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff165f610cbf565b905090565b5f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c5f811191505090565b5f868686868686604051602001610b6f969594939291906114a5565b6040516020818303038152906040528051906020012090509695505050505050565b5f805f8060605f87875f90602092610bab93929190611513565b810190610bb89190611161565b90507f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3205f1b8114610c15576040517fdf1eb58600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8787602090608092610c2993929190611513565b810190610c369190611588565b80965081975082985050505087876080908092610c5593929190611513565b810190610c6291906116f2565b8093508194505050509295509295909350565b817f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75d807fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35d5050565b5f80838360f01b1790508091505092915050565b5f819050919050565b610ce581610cd3565b82525050565b5f602082019050610cfe5f830184610cdc565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610d2d82610d04565b9050919050565b610d3d81610d23565b82525050565b5f602082019050610d565f830184610d34565b92915050565b5f61ffff82169050919050565b610d7281610d5c565b82525050565b5f602082019050610d8b5f830184610d69565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610dd382610d91565b610ddd8185610d9b565b9350610ded818560208601610dab565b610df681610db9565b840191505092915050565b5f6020820190508181035f830152610e198184610dc9565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b610e3b81610cd3565b8114610e45575f80fd5b50565b5f81359050610e5681610e32565b92915050565b610e6581610d23565b8114610e6f575f80fd5b50565b5f81359050610e8081610e5c565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112610ea757610ea6610e86565b5b8235905067ffffffffffffffff811115610ec457610ec3610e8a565b5b602083019150836001820283011115610ee057610edf610e8e565b5b9250929050565b5f805f805f8060a08789031215610f0157610f00610e2a565b5b5f610f0e89828a01610e48565b9650506020610f1f89828a01610e48565b9550506040610f3089828a01610e72565b9450506060610f4189828a01610e72565b935050608087013567ffffffffffffffff811115610f6257610f61610e2e565b5b610f6e89828a01610e92565b92509250509295509295509295565b5f819050919050565b610f8f81610f7d565b82525050565b5f602082019050610fa85f830184610f86565b92915050565b5f805f8060608587031215610fc657610fc5610e2a565b5b5f610fd387828801610e48565b9450506020610fe487828801610e72565b935050604085013567ffffffffffffffff81111561100557611004610e2e565b5b61101187828801610e92565b925092505092959194509250565b5f6040820190506110325f830185610d34565b61103f6020830184610cdc565b9392505050565b5f80fd5b5f60a0828403121561105f5761105e611046565b5b81905092915050565b5f805f60c0848603121561107f5761107e610e2a565b5b5f61108c8682870161104a565b93505060a084013567ffffffffffffffff8111156110ad576110ac610e2e565b5b6110b986828701610e92565b92509250509250925092565b5f81519050919050565b5f82825260208201905092915050565b5f6110e9826110c5565b6110f381856110cf565b9350611103818560208601610dab565b61110c81610db9565b840191505092915050565b5f6020820190508181035f83015261112f81846110df565b905092915050565b61114081610f7d565b811461114a575f80fd5b50565b5f8135905061115b81611137565b92915050565b5f6020828403121561117657611175610e2a565b5b5f6111838482850161114d565b91505092915050565b5f8115159050919050565b6111a08161118c565b82525050565b5f6020820190506111b95f830184611197565b92915050565b5f602082840312156111d4576111d3610e2a565b5b5f6111e184828501610e48565b91505092915050565b828183375f83830152505050565b5f61120383856110cf565b93506112108385846111ea565b61121983610db9565b840190509392505050565b5f6040820190506112375f830186610d34565b818103602083015261124a8184866111f8565b9050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6112b482611281565b91507dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036112e4576112e3611254565b5b600182019050919050565b5f6020828403121561130457611303610e2a565b5b5f61131184828501610e72565b91505092915050565b5f81905092915050565b5f61132f838561131a565b935061133c8385846111ea565b82840190509392505050565b5f611354828486611324565b91508190509392505050565b5f61136e6020840184610e72565b905092915050565b61137f81610d23565b82525050565b5f6113936020840184610e48565b905092915050565b6113a481610cd3565b82525050565b60a082016113ba5f830183611360565b6113c65f850182611376565b506113d46020830183611385565b6113e1602085018261139b565b506113ef6040830183611385565b6113fc604085018261139b565b5061140a6060830183611385565b611417606085018261139b565b506114256080830183611385565b611432608085018261139b565b50505050565b5f60c08201905061144b5f8301856113aa565b61145860a0830184610f86565b9392505050565b5f611469826110c5565b611473818561131a565b9350611483818560208601610dab565b80840191505092915050565b5f61149a828461145f565b915081905092915050565b5f60c0820190506114b85f830189610cdc565b6114c56020830188610cdc565b6114d26040830187610cdc565b6114df6060830186610d34565b6114ec6080830185610d34565b81810360a08301526114fe81846110df565b9050979650505050505050565b5f80fd5b5f80fd5b5f80858511156115265761152561150b565b5b838611156115375761153661150f565b5b6001850283019150848603905094509492505050565b5f61155782610d04565b9050919050565b6115678161154d565b8114611571575f80fd5b50565b5f813590506115828161155e565b92915050565b5f805f6060848603121561159f5761159e610e2a565b5b5f6115ac86828701610e48565b93505060206115bd86828701611574565b92505060406115ce86828701610e48565b9150509250925092565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61161282610db9565b810181811067ffffffffffffffff82111715611631576116306115dc565b5b80604052505050565b5f611643610e21565b905061164f8282611609565b919050565b5f67ffffffffffffffff82111561166e5761166d6115dc565b5b61167782610db9565b9050602081019050919050565b5f61169661169184611654565b61163a565b9050828152602081018484840111156116b2576116b16115d8565b5b6116bd8482856111ea565b509392505050565b5f82601f8301126116d9576116d8610e86565b5b81356116e9848260208601611684565b91505092915050565b5f806040838503121561170857611707610e2a565b5b5f61171585828601611574565b925050602083013567ffffffffffffffff81111561173657611735610e2e565b5b611742858286016116c5565b915050925092905056fea164736f6c6343000819000a0000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1500000, "intent": "Deploy L2ToL2CrossDomainMessenger Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000007ab608060405234801561001057600080fd5b5061078b806100206000396000f3fe6080604052600436106100345760003560e01c80634f0edcc91461003957806354fd4d501461005b57806364a197f3146100ba575b600080fd5b34801561004557600080fd5b506100596100543660046105ae565b6100db565b005b34801561006757600080fd5b506100a46040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b6040516100b1919061065a565b60405180910390f35b6100cd6100c8366004610674565b610340565b6040519081526020016100b1565b3373420000000000000000000000000000000000002314610128576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008073420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16637936cbee6040518163ffffffff1660e01b81526004016040805180830381865afa158015610189573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ad91906106a0565b909250905073ffffffffffffffffffffffffffffffffffffffff82163014610201576040517fbc22e2aa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fa0712d68000000000000000000000000000000000000000000000000000000008152600481018490527342000000000000000000000000000000000000259063a0712d6890602401600060405180830381600087803b15801561026757600080fd5b505af115801561027b573d6000803e3d6000fd5b50505050828460405161028d9061057d565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f09050801580156102c7573d6000803e3d6000fd5b50508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fe5479bb8ebad3b9ac81f55f424a6289cf0a54ff2641708f41dcb2b26f264d3598584604051610331929190918252602082015260400190565b60405180910390a35050505050565b600073ffffffffffffffffffffffffffffffffffffffff831661038f576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002573ffffffffffffffffffffffffffffffffffffffff166344df8e70346040518263ffffffff1660e01b81526004016000604051808303818588803b1580156103eb57600080fd5b505af11580156103ff573d6000803e3d6000fd5b50506040805133602482015273ffffffffffffffffffffffffffffffffffffffff881660448201523460648083019190915282518083039091018152608490910182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f4f0edcc90000000000000000000000000000000000000000000000000000000017905290517f7056f41f0000000000000000000000000000000000000000000000000000000081527342000000000000000000000000000000000000239450637056f41f93506104de9250869130916004016106ce565b6020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610521919061070c565b604080513481526020810185905291925073ffffffffffffffffffffffffffffffffffffffff85169133917fed98a2ff78833375c368471a747cdf0633024dde3f870feb08a934ac5be83402910160405180910390a392915050565b60598061072683390190565b73ffffffffffffffffffffffffffffffffffffffff811681146105ab57600080fd5b50565b6000806000606084860312156105c357600080fd5b83356105ce81610589565b925060208401356105de81610589565b929592945050506040919091013590565b6000815180845260005b81811015610615576020818501810151868301820152016105f9565b81811115610627576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061066d60208301846105ef565b9392505050565b6000806040838503121561068757600080fd5b823561069281610589565b946020939093013593505050565b600080604083850312156106b357600080fd5b82516106be81610589565b6020939093015192949293505050565b83815273ffffffffffffffffffffffffffffffffffffffff8316602082015260606040820152600061070360608301846105ef565b95945050505050565b60006020828403121561071e57600080fd5b505191905056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000b10608060405234801561001057600080fd5b50610af0806100206000396000f3fe6080604052600436106100345760003560e01c80634f0edcc91461003957806354fd4d501461006257806364a197f31461008d575b600080fd5b34801561004557600080fd5b50610060600480360381019061005b9190610677565b6100bd565b005b34801561006e57600080fd5b50610077610348565b6040516100849190610763565b60405180910390f35b6100a760048036038101906100a29190610785565b610381565b6040516100b491906107de565b60405180910390f35b73420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610136576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008073420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16637936cbee6040518163ffffffff1660e01b81526004016040805180830381865afa158015610197573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bb9190610823565b915091503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610224576040517fbc22e2aa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002573ffffffffffffffffffffffffffffffffffffffff1663a0712d68846040518263ffffffff1660e01b81526004016102719190610872565b600060405180830381600087803b15801561028b57600080fd5b505af115801561029f573d6000803e3d6000fd5b5050505082846040516102b1906105d2565b6102bb91906108ae565b6040518091039082f09050801580156102d8573d6000803e3d6000fd5b50508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fe5479bb8ebad3b9ac81f55f424a6289cf0a54ff2641708f41dcb2b26f264d35985846040516103399291906108c9565b60405180910390a35050505050565b6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036103e8576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002573ffffffffffffffffffffffffffffffffffffffff166344df8e70346040518263ffffffff1660e01b81526004016000604051808303818588803b15801561044457600080fd5b505af1158015610458573d6000803e3d6000fd5b505050505073420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16637056f41f83303073ffffffffffffffffffffffffffffffffffffffff16634f0edcc93389346040516024016104c093929190610901565b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518463ffffffff1660e01b81526004016105209392919061098d565b6020604051808303816000875af115801561053f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056391906109f7565b90508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fed98a2ff78833375c368471a747cdf0633024dde3f870feb08a934ac5be8340234856040516105c49291906108c9565b60405180910390a392915050565b60bf80610a2583390190565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061060e826105e3565b9050919050565b61061e81610603565b811461062957600080fd5b50565b60008135905061063b81610615565b92915050565b6000819050919050565b61065481610641565b811461065f57600080fd5b50565b6000813590506106718161064b565b92915050565b6000806000606084860312156106905761068f6105de565b5b600061069e8682870161062c565b93505060206106af8682870161062c565b92505060406106c086828701610662565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b60005b838110156107045780820151818401526020810190506106e9565b83811115610713576000848401525b50505050565b6000601f19601f8301169050919050565b6000610735826106ca565b61073f81856106d5565b935061074f8185602086016106e6565b61075881610719565b840191505092915050565b6000602082019050818103600083015261077d818461072a565b905092915050565b6000806040838503121561079c5761079b6105de565b5b60006107aa8582860161062c565b92505060206107bb85828601610662565b9150509250929050565b6000819050919050565b6107d8816107c5565b82525050565b60006020820190506107f360008301846107cf565b92915050565b60008151905061080881610615565b92915050565b60008151905061081d8161064b565b92915050565b6000806040838503121561083a576108396105de565b5b6000610848858286016107f9565b92505060206108598582860161080e565b9150509250929050565b61086c81610641565b82525050565b60006020820190506108876000830184610863565b92915050565b6000610898826105e3565b9050919050565b6108a88161088d565b82525050565b60006020820190506108c3600083018461089f565b92915050565b60006040820190506108de6000830185610863565b6108eb6020830184610863565b9392505050565b6108fb81610603565b82525050565b600060608201905061091660008301866108f2565b61092360208301856108f2565b6109306040830184610863565b949350505050565b600081519050919050565b600082825260208201905092915050565b600061095f82610938565b6109698185610943565b93506109798185602086016106e6565b61098281610719565b840191505092915050565b60006060820190506109a26000830186610863565b6109af60208301856108f2565b81810360408301526109c18184610954565b9050949350505050565b6109d4816107c5565b81146109df57600080fd5b50565b6000815190506109f1816109cb565b92915050565b600060208284031215610a0d57610a0c6105de565b5b6000610a1b848285016109e2565b9150509291505056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a00000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 700000, "intent": "Deploy SuperchainETHBridge Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003b3608060405234801561001057600080fd5b50610393806100206000396000f3fe60806040526004361061003f5760003560e01c806344df8e701461004457806354fd4d501461004e578063a0712d68146100ad578063b60d4288146100cd575b600080fd5b61004c6100d5565b005b34801561005a57600080fd5b506100976040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b6040516100a491906102a1565b60405180910390f35b3480156100b957600080fd5b5061004c6100c8366004610314565b61015a565b61004c610229565b3373420000000000000000000000000000000000002414610122576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405134815233907f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b82906020015b60405180910390a2565b33734200000000000000000000000000000000000024146101a7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80336040516101b590610295565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f09050801580156101ef573d6000803e3d6000fd5b505060405181815233907f85719716ac5bd2744ae7ed3d16702129383049b97123b506320e7a5826ebbbba9060200160405180910390a250565b34600003610263576040517f2c5211c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405134815233907fbb9e497a5b82d1a37f9496dd70c6efb97ba0d98c66c3422d05010105d063359890602001610150565b60598061032e83390190565b600060208083528351808285015260005b818110156102ce578581018301518582016040015282016102b2565b818111156102e0576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b60006020828403121561032657600080fd5b503591905056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000005da608060405234801561001057600080fd5b506105ba806100206000396000f3fe60806040526004361061003f5760003560e01c806344df8e701461004457806354fd4d501461004e578063a0712d6814610079578063b60d4288146100a2575b600080fd5b61004c6100ac565b005b34801561005a57600080fd5b50610063610175565b60405161007091906103de565b60405180910390f35b34801561008557600080fd5b506100a0600480360381019061009b919061043b565b6101ae565b005b6100aa6102af565b005b73420000000000000000000000000000000000002473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610125576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b823460405161016b9190610477565b60405180910390a2565b6040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b73420000000000000000000000000000000000002473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610227576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b803360405161023590610339565b61023f91906104d3565b6040518091039082f090508015801561025c573d6000803e3d6000fd5b50503373ffffffffffffffffffffffffffffffffffffffff167f85719716ac5bd2744ae7ed3d16702129383049b97123b506320e7a5826ebbbba826040516102a49190610477565b60405180910390a250565b600034036102e9576040517f2c5211c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167fbb9e497a5b82d1a37f9496dd70c6efb97ba0d98c66c3422d05010105d06335983460405161032f9190610477565b60405180910390a2565b60bf806104ef83390190565b600081519050919050565b600082825260208201905092915050565b60005b8381101561037f578082015181840152602081019050610364565b8381111561038e576000848401525b50505050565b6000601f19601f8301169050919050565b60006103b082610345565b6103ba8185610350565b93506103ca818560208601610361565b6103d381610394565b840191505092915050565b600060208201905081810360008301526103f881846103a5565b905092915050565b600080fd5b6000819050919050565b61041881610405565b811461042357600080fd5b50565b6000813590506104358161040f565b92915050565b60006020828403121561045157610450610400565b5b600061045f84828501610426565b91505092915050565b61047181610405565b82525050565b600060208201905061048c6000830184610468565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006104bd82610492565b9050919050565b6104cd816104b2565b82525050565b60006020820190506104e860008301846104c4565b9291505056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 400000, "intent": "Deploy ETHLiquidity Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000010b1608060405234801561001057600080fd5b50611091806100206000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80635cf24969116100f9578063c598591811610097578063e591b28211610071578063e591b28214610434578063e81b2c6d1461044e578063f820614014610457578063fe3d57101461046057600080fd5b8063c598591814610404578063d844471514610424578063dad544e01461042c57600080fd5b80638381f58a116100d35780638381f58a146103be5780638b239f73146103d25780639e8c4966146103db578063b80777ea146103e457600080fd5b80635cf249691461038557806364ca23ef1461038e57806368d5dca6146103a257600080fd5b80634397dfef1161016657806347af267b1161014057806347af267b146103145780634d5d9a2a1461033757806354fd4d5014610368578063550fcdc91461037d57600080fd5b80634397dfef146102c3578063440a5e20146102f957806346a4d7801461030157600080fd5b806316d3bc7f116101a257806316d3bc7f14610202578063213268491461022f5780633db6be2b1461028e5780633e47158c1461029657600080fd5b8063015d8eb9146101c9578063098999be146101de57806309bd5a60146101e6575b600080fd5b6101dc6101d7366004610d9c565b610491565b005b6101dc6105d1565b6101ef60025481565b6040519081526020015b60405180910390f35b6008546102169067ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016101f9565b7f435553544f4d5f4741535f544f4b454e0000000000000000000000000000000060005260096020527f4ad9936a67aeb1898ef7b848aecdf71a1f8999fbf63ff2f5b5691cb14bedfe4d5460ff165b60405190151581526020016101f9565b6101dc6105e4565b61029e61060e565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101f9565b6102cb610819565b6040805173ffffffffffffffffffffffffffffffffffffffff909316835260ff9091166020830152016101f9565b6101dc610880565b6101dc61030f366004610e0e565b6108d7565b61027e610322366004610e0e565b60096020526000908152604090205460ff1681565b6008546103539068010000000000000000900463ffffffff1681565b60405163ffffffff90911681526020016101f9565b6103706108ec565b6040516101f99190610e57565b61037061094c565b6101ef60015481565b6003546102169067ffffffffffffffff1681565b6003546103539068010000000000000000900463ffffffff1681565b6000546102169067ffffffffffffffff1681565b6101ef60055481565b6101ef60065481565b6000546102169068010000000000000000900467ffffffffffffffff1681565b600354610353906c01000000000000000000000000900463ffffffff1681565b610370610a88565b61029e610b79565b73deaddeaddeaddeaddeaddeaddeaddeaddead000161029e565b6101ef60045481565b6101ef60075481565b60085461047e906c01000000000000000000000000900461ffff1681565b60405161ffff90911681526020016101f9565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610539576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60448201527f756e742063616e20736574204c3120626c6f636b2076616c756573000000000060648201526084015b60405180910390fd5b6000805467ffffffffffffffff98891668010000000000000000027fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116998916999099179890981790975560019490945560029290925560038054919094167fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000009190911617909255600491909155600555600655565b6105d9610880565b60a43560a01c600855565b6105ec610880565b6dffff00000000000000000000000060b03560901c1660a43560a01c17600855565b6000806106397fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561065c57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051600261069f9190610ea8565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000091909117906106fa906060015b604051602081830303815290604052805190602001205490565b14610731576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051306020820152600191810191909152600090610753906060016106e0565b905073ffffffffffffffffffffffffffffffffffffffff8116156107e7578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e09190610f0c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4c31426c6f636b4347543a20646570726563617465640000000000000000000060448201526000908190606401610530565b73deaddeaddeaddeaddeaddeaddeaddeaddead00013381146108aa57633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b6108e033610bf1565b6108e981610cce565b50565b606061092860408051808201909152600581527f312e392e30000000000000000000000000000000000000000000000000000000602082015290565b6040516020016109389190610f49565b604051602081830303815290604052905090565b60606109a27f435553544f4d5f4741535f544f4b454e0000000000000000000000000000000060005260096020527f4ad9936a67aeb1898ef7b848aecdf71a1f8999fbf63ff2f5b5691cb14bedfe4d5460ff1690565b6109de575060408051808201909152600381527f4554480000000000000000000000000000000000000000000000000000000000602082015290565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015610a3d573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610a839190810190610fb9565b905090565b6060610ade7f435553544f4d5f4741535f544f4b454e0000000000000000000000000000000060005260096020527f4ad9936a67aeb1898ef7b848aecdf71a1f8999fbf63ff2f5b5691cb14bedfe4d5460ff1690565b610b1a575060408051808201909152600581527f4574686572000000000000000000000000000000000000000000000000000000602082015290565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015610a3d573d6000803e3d6000fd5b6000610b8361060e565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a839190610f0c565b73ffffffffffffffffffffffffffffffffffffffff811673deaddeaddeaddeaddeaddeaddeaddeaddead00011480610c5b5750610c2c610b79565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b80610c985750610c6961060e565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6108e9576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604090205460ff1615610d17576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091559051909183917fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c9190a350565b803567ffffffffffffffff81168114610d9757600080fd5b919050565b600080600080600080600080610100898b031215610db957600080fd5b610dc289610d7f565b9750610dd060208a01610d7f565b96506040890135955060608901359450610dec60808a01610d7f565b979a969950949793969560a0850135955060c08501359460e001359350915050565b600060208284031215610e2057600080fd5b5035919050565b60005b83811015610e42578181015183820152602001610e2a565b83811115610e51576000848401525b50505050565b6020815260008251806020840152610e76816040850160208701610e27565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610f07577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b600060208284031215610f1e57600080fd5b815173ffffffffffffffffffffffffffffffffffffffff81168114610f4257600080fd5b9392505050565b60008251610f5b818460208701610e27565b7f2b637573746f6d2d6761732d746f6b656e2e3100000000000000000000000000920191825250601301919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060208284031215610fcb57600080fd5b815167ffffffffffffffff80821115610fe357600080fd5b818401915084601f830112610ff757600080fd5b81518181111561100957611009610f8a565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561104f5761104f610f8a565b8160405282815287602084870101111561106857600080fd5b611079836020830160208801610e27565b97965050505050505056fea164736f6c634300080f000a000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000173c608060405234801561001057600080fd5b5061171c806100206000396000f3fe608060405234801561001057600080fd5b50600436106101545760003560e01c8063015d8eb914610159578063098999be1461017557806309bd5a601461017f57806316d3bc7f1461019d57806321326849146101bb5780633db6be2b146101d95780633e47158c146101e35780634397dfef14610201578063440a5e201461022057806346a4d7801461022a57806347af267b146102465780634d5d9a2a1461027657806354fd4d5014610294578063550fcdc9146102b25780635cf24969146102d057806364ca23ef146102ee57806368d5dca61461030c5780638381f58a1461032a5780638b239f73146103485780639e8c496614610366578063b80777ea14610384578063c5985918146103a2578063d8444715146103c0578063dad544e0146103de578063e591b282146103fc578063e81b2c6d1461041a578063f820614014610438578063fe3d571014610456575b600080fd5b610173600480360381019061016e9190610f30565b610474565b005b61017d610590565b005b6101876105a3565b6040516101949190610ff5565b60405180910390f35b6101a56105a9565b6040516101b2919061101f565b60405180910390f35b6101c36105c3565b6040516101d09190611055565b60405180910390f35b6101e161060b565b005b6101eb61062e565b6040516101f891906110ef565b60405180910390f35b610209610887565b604051610217929190611147565b60405180910390f35b6102286108c5565b005b610244600480360381019061023f9190611170565b610914565b005b610260600480360381019061025b9190611170565b610929565b60405161026d9190611055565b60405180910390f35b61027e610949565b60405161028b91906111bc565b60405180910390f35b61029c61095d565b6040516102a99190611270565b60405180910390f35b6102ba61098b565b6040516102c79190611270565b60405180910390f35b6102d8610a62565b6040516102e591906112a1565b60405180910390f35b6102f6610a68565b604051610303919061101f565b60405180910390f35b610314610a82565b60405161032191906111bc565b60405180910390f35b610332610a98565b60405161033f919061101f565b60405180910390f35b610350610ab0565b60405161035d91906112a1565b60405180910390f35b61036e610ab6565b60405161037b91906112a1565b60405180910390f35b61038c610abc565b604051610399919061101f565b60405180910390f35b6103aa610ad6565b6040516103b791906111bc565b60405180910390f35b6103c8610aec565b6040516103d59190611270565b60405180910390f35b6103e6610bc3565b6040516103f391906112bc565b60405180910390f35b610404610c40565b60405161041191906112bc565b60405180910390f35b610422610c5c565b60405161042f9190610ff5565b60405180910390f35b610440610c62565b60405161044d91906112a1565b60405180910390f35b61045e610c68565b60405161046b91906112f4565b60405180910390f35b61047c610c40565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e090611381565b60405180910390fd5b876000806101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555086600060086101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550856001819055508460028190555083600360006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508260048190555081600581905550806006819055505050505050505050565b6105986108c5565b60a43560a01c600855565b60025481565b600860009054906101000a900467ffffffffffffffff1681565b6000600960007f435553544f4d5f4741535f544f4b454e00000000000000000000000000000000815260200190815260200160002060009054906101000a900460ff16905090565b6106136108c5565b60a43560a01c60b03560f01c818160601b1780600855505050565b60008061065d7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b610c7c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461069c5780915050610884565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516106df91906113d0565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b61073930600060405160200161071e92919061142a565b60405160208183030381529060405280519060200120610c87565b14610770576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006107a430600160405160200161078992919061142a565b60405160208183030381529060405280519060200120610c7c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610852578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610825573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610849919061147f565b92505050610884565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6000806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bc906114f8565b60405180910390fd5b60006108cf610c40565b9050803318156108e757633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b61091d33610c92565b61092681610d7b565b50565b60096020528060005260406000206000915054906101000a900460ff1681565b60088054906101000a900463ffffffff1681565b6060610967610e33565b604051602001610977919061157a565b604051602081830303815290604052905090565b60606109956105c3565b6109d4576040518060400160405280600381526020017f4554480000000000000000000000000000000000000000000000000000000000815250610a5d565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015610a33573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610a5c91906116c6565b5b905090565b60015481565b600360009054906101000a900467ffffffffffffffff1681565b600360089054906101000a900463ffffffff1681565b60008054906101000a900467ffffffffffffffff1681565b60055481565b60065481565b600060089054906101000a900467ffffffffffffffff1681565b6003600c9054906101000a900463ffffffff1681565b6060610af66105c3565b610b35576040518060400160405280600581526020017f4574686572000000000000000000000000000000000000000000000000000000815250610bbe565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015610b94573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bbd91906116c6565b5b905090565b6000610bcd61062e565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3b919061147f565b905090565b600073deaddeaddeaddeaddeaddeaddeaddeaddead0001905090565b60045481565b60075481565b6008600c9054906101000a900461ffff1681565b600081549050919050565b600081549050919050565b610c9a610c40565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610d055750610cd6610bc3565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b80610d425750610d1361062e565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610d78576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b6009600082815260200190815260200160002060009054906101000a900460ff1615610dd3576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60016009600083815260200190815260200160002060006101000a81548160ff02191690831515021790555060011515817fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c60405160405180910390a350565b60606040518060400160405280600581526020017f312e392e30000000000000000000000000000000000000000000000000000000815250905090565b6000604051905090565b600080fd5b600080fd5b600067ffffffffffffffff82169050919050565b610ea181610e84565b8114610eac57600080fd5b50565b600081359050610ebe81610e98565b92915050565b6000819050919050565b610ed781610ec4565b8114610ee257600080fd5b50565b600081359050610ef481610ece565b92915050565b6000819050919050565b610f0d81610efa565b8114610f1857600080fd5b50565b600081359050610f2a81610f04565b92915050565b600080600080600080600080610100898b031215610f5157610f50610e7a565b5b6000610f5f8b828c01610eaf565b9850506020610f708b828c01610eaf565b9750506040610f818b828c01610ee5565b9650506060610f928b828c01610f1b565b9550506080610fa38b828c01610eaf565b94505060a0610fb48b828c01610f1b565b93505060c0610fc58b828c01610ee5565b92505060e0610fd68b828c01610ee5565b9150509295985092959890939650565b610fef81610efa565b82525050565b600060208201905061100a6000830184610fe6565b92915050565b61101981610e84565b82525050565b60006020820190506110346000830184611010565b92915050565b60008115159050919050565b61104f8161103a565b82525050565b600060208201905061106a6000830184611046565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006110b56110b06110ab84611070565b611090565b611070565b9050919050565b60006110c78261109a565b9050919050565b60006110d9826110bc565b9050919050565b6110e9816110ce565b82525050565b600060208201905061110460008301846110e0565b92915050565b600061111582611070565b9050919050565b6111258161110a565b82525050565b600060ff82169050919050565b6111418161112b565b82525050565b600060408201905061115c600083018561111c565b6111696020830184611138565b9392505050565b60006020828403121561118657611185610e7a565b5b600061119484828501610f1b565b91505092915050565b600063ffffffff82169050919050565b6111b68161119d565b82525050565b60006020820190506111d160008301846111ad565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156112115780820151818401526020810190506111f6565b83811115611220576000848401525b50505050565b6000601f19601f8301169050919050565b6000611242826111d7565b61124c81856111e2565b935061125c8185602086016111f3565b61126581611226565b840191505092915050565b6000602082019050818103600083015261128a8184611237565b905092915050565b61129b81610ec4565b82525050565b60006020820190506112b66000830184611292565b92915050565b60006020820190506112d1600083018461111c565b92915050565b600061ffff82169050919050565b6112ee816112d7565b82525050565b600060208201905061130960008301846112e5565b92915050565b7f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60008201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000602082015250565b600061136b603b836111e2565b91506113768261130f565b604082019050919050565b6000602082019050818103600083015261139a8161135e565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006113db82610ec4565b91506113e683610ec4565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561141f5761141e6113a1565b5b828202905092915050565b600060408201905061143f600083018561111c565b61144c6020830184611292565b9392505050565b61145c8161110a565b811461146757600080fd5b50565b60008151905061147981611453565b92915050565b60006020828403121561149557611494610e7a565b5b60006114a38482850161146a565b91505092915050565b7f4c31426c6f636b4347543a206465707265636174656400000000000000000000600082015250565b60006114e26016836111e2565b91506114ed826114ac565b602082019050919050565b60006020820190508181036000830152611511816114d5565b9050919050565b600081905092915050565b600061152e826111d7565b6115388185611518565b93506115488185602086016111f3565b80840191505092915050565b7f2b637573746f6d2d6761732d746f6b656e2e3100000000000000000000000000815250565b60006115868284611523565b915061159182611554565b60138201915081905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6115e282611226565b810181811067ffffffffffffffff82111715611601576116006115aa565b5b80604052505050565b6000611614610e70565b905061162082826115d9565b919050565b600067ffffffffffffffff8211156116405761163f6115aa565b5b61164982611226565b9050602081019050919050565b600061166961166484611625565b61160a565b905082815260208101848484011115611685576116846115a5565b5b6116908482856111f3565b509392505050565b600082601f8301126116ad576116ac6115a0565b5b81516116bd848260208601611656565b91505092915050565b6000602082840312156116dc576116db610e7a565b5b600082015167ffffffffffffffff8111156116fa576116f9610e7f565b5b61170684828501611698565b9150509291505056fea164736f6c634300080f000a00000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1100000, "intent": "Deploy L1BlockCGT Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000862608060405234801561001057600080fd5b50610842806100206000396000f3fe6080604052600436106100695760003560e01c806382e3702d1161004357806382e3702d146100f6578063c2b3e5ac14610136578063ecc704281461014957600080fd5b80633f827a5a1461009257806344df8e70146100bf57806354fd4d50146100d457600080fd5b3661008d5761008b33620186a0604051806020016040528060008152506101ae565b005b600080fd5b34801561009e57600080fd5b506100a7600181565b60405161ffff90911681526020015b60405180910390f35b3480156100cb57600080fd5b5061008b610284565b3480156100e057600080fd5b506100e96102bc565b6040516100b691906105dd565b34801561010257600080fd5b506101266101113660046105f7565b60006020819052908152604090205460ff1681565b60405190151581526020016100b6565b61008b61014436600461063f565b6101ae565b34801561015557600080fd5b506101a06001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b6040519081526020016100b6565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa15801561020d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102319190610743565b801561023d5750600034115b15610274576040517fcdfaa11100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61027f83838361031c565b505050565b4761028e816104e0565b60405181907f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f90600090a250565b60606102f860408051808201909152600581527f312e322e30000000000000000000000000000000000000000000000000000000602082015290565b6040516020016103089190610765565b604051602081830303815290604052905090565b60006103b26040518060c001604052806103766001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b815233602082015273ffffffffffffffffffffffffffffffffffffffff871660408201523460608201526080810186905260a00184905261050a565b600081815260208190526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055905073ffffffffffffffffffffffffffffffffffffffff84163361044d6001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161048294939291906107a6565b60405180910390a45050600180547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8082168301167fffff0000000000000000000000000000000000000000000000000000000000009091161790555050565b806040516104ed90610557565b6040518091039082f090508015801561027f573d6000803e3d6000fd5b80516020808301516040808501516060860151608087015160a0880151935160009761053a9790969591016107d6565b604051602081830303815290604052805190602001209050919050565b60088061082e83390190565b60005b8381101561057e578181015183820152602001610566565b8381111561058d576000848401525b50505050565b600081518084526105ab816020860160208601610563565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006105f06020830184610593565b9392505050565b60006020828403121561060957600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060006060848603121561065457600080fd5b833573ffffffffffffffffffffffffffffffffffffffff8116811461067857600080fd5b925060208401359150604084013567ffffffffffffffff8082111561069c57600080fd5b818601915086601f8301126106b057600080fd5b8135818111156106c2576106c2610610565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561070857610708610610565b8160405282815289602084870101111561072157600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b60006020828403121561075557600080fd5b815180151581146105f057600080fd5b60008251610777818460208701610563565b7f2b637573746f6d2d6761732d746f6b656e000000000000000000000000000000920191825250601101919050565b8481528360208201526080604082015260006107c56080830185610593565b905082606083015295945050505050565b868152600073ffffffffffffffffffffffffffffffffffffffff808816602084015280871660408401525084606083015283608083015260c060a083015261082160c0830184610593565b9897505050505050505056fe608060405230fffea164736f6c634300080f000a000000000000000000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000be0608060405234801561001057600080fd5b50610bc0806100206000396000f3fe6080604052600436106100595760003560e01c80633f827a5a1461008257806344df8e70146100ad57806354fd4d50146100c457806382e3702d146100ef578063c2b3e5ac1461012c578063ecc70428146101485761007d565b3661007d5761007b33620186a060405180602001604052806000815250610173565b005b600080fd5b34801561008e57600080fd5b50610097610249565b6040516100a491906105a8565b60405180910390f35b3480156100b957600080fd5b506100c261024e565b005b3480156100d057600080fd5b506100d961028c565b6040516100e6919061065c565b60405180910390f35b3480156100fb57600080fd5b50610116600480360381019061011191906106c8565b6102ba565b6040516101239190610710565b60405180910390f35b610146600480360381019061014191906108f4565b610173565b005b34801561015457600080fd5b5061015d6102da565b60405161016a9190610972565b60405180910390f35b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f691906109b9565b80156102025750600034115b15610239576040517fcdfaa11100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610244838383610318565b505050565b600181565b600047905061025c816104ac565b807f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f60405160405180910390a250565b60606102966104db565b6040516020016102a69190610a48565b604051602081830303815290604052905090565b60006020528060005260406000206000915054906101000a900460ff1681565b6000610313600160009054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001610518565b905090565b60006103826040518060c001604052806103306102da565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1681526020013481526020018581526020018481525061052d565b9050600160008083815260200190815260200160002060006101000a81548160ff0219169083151502179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff166103e56102da565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161041a9493929190610ad2565b60405180910390a46001600081819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660010191906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505050565b806040516104b99061057f565b6040518091039082f09050801580156104d6573d6000803e3d6000fd5b505050565b60606040518060400160405280600581526020017f312e322e30000000000000000000000000000000000000000000000000000000815250905090565b600080838360f01b1790508091505092915050565b6000816000015182602001518360400151846060015185608001518660a0015160405160200161056296959493929190610b2d565b604051602081830303815290604052805190602001209050919050565b601e80610b9683390190565b600061ffff82169050919050565b6105a28161058b565b82525050565b60006020820190506105bd6000830184610599565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156105fd5780820151818401526020810190506105e2565b8381111561060c576000848401525b50505050565b6000601f19601f8301169050919050565b600061062e826105c3565b61063881856105ce565b93506106488185602086016105df565b61065181610612565b840191505092915050565b600060208201905081810360008301526106768184610623565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b6106a581610692565b81146106b057600080fd5b50565b6000813590506106c28161069c565b92915050565b6000602082840312156106de576106dd610688565b5b60006106ec848285016106b3565b91505092915050565b60008115159050919050565b61070a816106f5565b82525050565b60006020820190506107256000830184610701565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006107568261072b565b9050919050565b6107668161074b565b811461077157600080fd5b50565b6000813590506107838161075d565b92915050565b6000819050919050565b61079c81610789565b81146107a757600080fd5b50565b6000813590506107b981610793565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61080182610612565b810181811067ffffffffffffffff821117156108205761081f6107c9565b5b80604052505050565b600061083361067e565b905061083f82826107f8565b919050565b600067ffffffffffffffff82111561085f5761085e6107c9565b5b61086882610612565b9050602081019050919050565b82818337600083830152505050565b600061089761089284610844565b610829565b9050828152602081018484840111156108b3576108b26107c4565b5b6108be848285610875565b509392505050565b600082601f8301126108db576108da6107bf565b5b81356108eb848260208601610884565b91505092915050565b60008060006060848603121561090d5761090c610688565b5b600061091b86828701610774565b935050602061092c868287016107aa565b925050604084013567ffffffffffffffff81111561094d5761094c61068d565b5b610959868287016108c6565b9150509250925092565b61096c81610789565b82525050565b60006020820190506109876000830184610963565b92915050565b610996816106f5565b81146109a157600080fd5b50565b6000815190506109b38161098d565b92915050565b6000602082840312156109cf576109ce610688565b5b60006109dd848285016109a4565b91505092915050565b600081905092915050565b60006109fc826105c3565b610a0681856109e6565b9350610a168185602086016105df565b80840191505092915050565b7f2b637573746f6d2d6761732d746f6b656e000000000000000000000000000000815250565b6000610a5482846109f1565b9150610a5f82610a22565b60118201915081905092915050565b600081519050919050565b600082825260208201905092915050565b6000610a9582610a6e565b610a9f8185610a79565b9350610aaf8185602086016105df565b610ab881610612565b840191505092915050565b610acc81610692565b82525050565b6000608082019050610ae76000830187610963565b610af46020830186610963565b8181036040830152610b068185610a8a565b9050610b156060830184610ac3565b95945050505050565b610b278161074b565b82525050565b600060c082019050610b426000830189610963565b610b4f6020830188610b1e565b610b5c6040830187610b1e565b610b696060830186610963565b610b766080830185610963565b81810360a0830152610b888184610a8a565b905097965050505050505056fe60806040523073ffffffffffffffffffffffffffffffffffffffff16fffea164736f6c634300080f000a", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 750000, "intent": "Deploy L2ToL1MessagePasserCGT Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000146a608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61137d806100ed6000396000f3fe6080604052600436106100dd5760003560e01c80638da5cb5b1161007f578063d844471511610059578063d844471514610256578063dad544e01461026b578063f2fde38b14610280578063f46eccc4146102a057600080fd5b80638da5cb5b146101eb5780639065714714610216578063c6f69fbb1461023657600080fd5b806344df8e70116100bb57806344df8e701461016357806354fd4d501461016b578063550fcdc9146101c1578063715018a6146101d657600080fd5b80630c984832146100e25780633e47158c1461010457806340c10f1914610143575b600080fd5b3480156100ee57600080fd5b506101026100fd366004610ec7565b6102e0565b005b34801561011057600080fd5b5061011961035f565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014f57600080fd5b5061010261015e366004610eeb565b61056a565b6101026106cc565b34801561017757600080fd5b506101b46040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b60405161013a9190610f17565b3480156101cd57600080fd5b506101b46107c2565b3480156101e257600080fd5b50610102610850565b3480156101f757600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610119565b34801561022257600080fd5b50610102610231366004611064565b610864565b34801561024257600080fd5b50610102610251366004610ec7565b610a29565b34801561026257600080fd5b506101b4610aa5565b34801561027757600080fd5b50610119610ab2565b34801561028c57600080fd5b5061010261029b366004610ec7565b610b2f565b3480156102ac57600080fd5b506102d06102bb366004610ec7565b60656020526000908152604090205460ff1681565b604051901515815260200161013a565b6102e8610be6565b73ffffffffffffffffffffffffffffffffffffffff811660008181526065602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055517f83b05b6735acd4b85e3bded8e72c851d1a87718f81e3c8e6f0c9d9a2baa88e469190a250565b60008061038a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156103ad57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026103f091906110da565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061044b906060015b604051602081830303815290604052805190602001205490565b14610482576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091526000906104a490606001610431565b905073ffffffffffffffffffffffffffffffffffffffff811615610538578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610531919061113e565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360009081526065602052604090205460ff166105b3576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f2e1a7d4d0000000000000000000000000000000000000000000000000000000081526004810182905273420000000000000000000000000000000000002990632e1a7d4d90602401600060405180830381600087803b15801561061957600080fd5b505af115801561062d573d6000803e3d6000fd5b50505050808260405161063f90610e99565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f0905080158015610679573d6000803e3d6000fd5b505060405181815273ffffffffffffffffffffffffffffffffffffffff83169033907fec89d80a36947288037745287dde87d62cd8c141d5323130b3d26d97d84004c79060200160405180910390a35050565b3360009081526065602052604090205460ff16610715576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002973ffffffffffffffffffffffffffffffffffffffff1663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b15801561077157600080fd5b505af1158015610785573d6000803e3d6000fd5b50506040513481523393507f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b829250602001905060405180910390a2565b606780546107cf9061115b565b80601f01602080910402602001604051908101604052809291908181526020018280546107fb9061115b565b80156108485780601f1061081d57610100808354040283529160200191610848565b820191906000526020600020905b81548152906001019060200180831161082b57829003601f168201915b505050505081565b610858610be6565b6108626000610c67565b565b600054610100900460ff16158080156108845750600054600160ff909116105b8061089e5750303b15801561089e575060005460ff166001145b61092f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561098d57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610995610cde565b61099d610d5f565b6109a684610b2f565b60666109b284826111fd565b5060676109bf83826111fd565b508015610a2357600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b610a31610be6565b73ffffffffffffffffffffffffffffffffffffffff811660008181526065602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055517fdf6bf03dfab5b4ccec3ba95544b98d7ecc9d4b9293d8673e86cb6edb5ac0cb629190a250565b606680546107cf9061115b565b6000610abc61035f565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2a919061113e565b905090565b610b37610be6565b73ffffffffffffffffffffffffffffffffffffffff8116610bda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610926565b610be381610c67565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610862576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610926565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b33610ce761035f565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d28575033610d0f610ab2565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610862576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff16610df6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610926565b610862600054610100900460ff16610e90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610926565b61086233610c67565b60598061131883390190565b73ffffffffffffffffffffffffffffffffffffffff81168114610be357600080fd5b600060208284031215610ed957600080fd5b8135610ee481610ea5565b9392505050565b60008060408385031215610efe57600080fd5b8235610f0981610ea5565b946020939093013593505050565b600060208083528351808285015260005b81811015610f4457858101830151858201604001528201610f28565b81811115610f56576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610fca57600080fd5b813567ffffffffffffffff80821115610fe557610fe5610f8a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561102b5761102b610f8a565b8160405283815286602085880101111561104457600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121561107957600080fd5b833561108481610ea5565b9250602084013567ffffffffffffffff808211156110a157600080fd5b6110ad87838801610fb9565b935060408601359150808211156110c357600080fd5b506110d086828701610fb9565b9150509250925092565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611139577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b60006020828403121561115057600080fd5b8151610ee481610ea5565b600181811c9082168061116f57607f821691505b6020821081036111a8577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f8211156111f857600081815260208120601f850160051c810160208610156111d55750805b601f850160051c820191505b818110156111f4578281556001016111e1565b5050505b505050565b815167ffffffffffffffff81111561121757611217610f8a565b61122b81611225845461115b565b846111ae565b602080601f83116001811461127e57600084156112485750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556111f4565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156112cb578886015182559484019460019091019084016112ac565b508582101561130757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b0190555056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001ffe60806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b611e1b80620001e36000396000f3fe608060405260043610620000bc5760003560e01c80630c98483214620000c15780633e47158c14620000ef57806340c10f19146200011f57806344df8e70146200014d57806354fd4d501462000159578063550fcdc91462000189578063715018a614620001b95780638da5cb5b14620001d3578063906571471462000203578063c6f69fbb1462000231578063d8444715146200025f578063dad544e0146200028f578063f2fde38b14620002bf578063f46eccc414620002ed575b600080fd5b348015620000ce57600080fd5b50620000ed6004803603810190620000e79190620011c8565b62000331565b005b348015620000fc57600080fd5b5062000107620003d9565b60405162000116919062001265565b60405180910390f35b3480156200012c57600080fd5b506200014b6004803603810190620001459190620012bd565b62000646565b005b62000157620007f4565b005b3480156200016657600080fd5b506200017162000941565b604051620001809190620013a8565b60405180910390f35b3480156200019657600080fd5b50620001a16200097a565b604051620001b09190620013a8565b60405180910390f35b348015620001c657600080fd5b50620001d162000a10565b005b348015620001e057600080fd5b50620001eb62000a28565b604051620001fa9190620013dd565b60405180910390f35b3480156200021057600080fd5b506200022f60048036038101906200022991906200154b565b62000a52565b005b3480156200023e57600080fd5b506200025d6004803603810190620002579190620011c8565b62000bda565b005b3480156200026c57600080fd5b506200027762000c79565b604051620002869190620013a8565b60405180910390f35b3480156200029c57600080fd5b50620002a762000d0f565b604051620002b69190620013dd565b60405180910390f35b348015620002cc57600080fd5b50620002eb6004803603810190620002e59190620011c8565b62000d91565b005b348015620002fa57600080fd5b50620003196004803603810190620003139190620011c8565b62000e1b565b60405162000328919062001602565b60405180910390f35b6200033b62000e3b565b6001606560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f83b05b6735acd4b85e3bded8e72c851d1a87718f81e3c8e6f0c9d9a2baa88e4660405160405180910390a250565b6000806200040a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b62000ec0565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146200044b578091505062000643565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516200049091906200164e565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b620004ee306000604051602001620004d2929190620016c0565b6040516020818303038152906040528051906020012062000ecb565b1462000526576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006200055e30600160405160200162000542929190620016c0565b6040516020818303038152906040528051906020012062000ec0565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161462000611578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620005e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000607919062001704565b9250505062000643565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b606560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16620006ca576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002973ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff1660e01b815260040162000719919062001736565b600060405180830381600087803b1580156200073457600080fd5b505af115801562000749573d6000803e3d6000fd5b5050505080826040516200075d9062001142565b62000769919062001778565b6040518091039082f090508015801562000787573d6000803e3d6000fd5b50508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fec89d80a36947288037745287dde87d62cd8c141d5323130b3d26d97d84004c783604051620007e8919062001736565b60405180910390a35050565b606560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1662000878576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002973ffffffffffffffffffffffffffffffffffffffff1663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b158015620008d557600080fd5b505af1158015620008ea573d6000803e3d6000fd5b50505050503373ffffffffffffffffffffffffffffffffffffffff167f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b823460405162000937919062001736565b60405180910390a2565b6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b606780546200098990620017c4565b80601f0160208091040260200160405190810160405280929190818152602001828054620009b790620017c4565b801562000a085780601f10620009dc5761010080835404028352916020019162000a08565b820191906000526020600020905b815481529060010190602001808311620009ea57829003601f168201915b505050505081565b62000a1a62000e3b565b62000a26600062000ed6565b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060019054906101000a900460ff1615905080801562000a845750600160008054906101000a900460ff1660ff16105b8062000ab5575062000a963062000f9c565b15801562000ab45750600160008054906101000a900460ff1660ff16145b5b62000af7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000aee906200186f565b60405180910390fd5b60016000806101000a81548160ff021916908360ff160217905550801562000b35576001600060016101000a81548160ff0219169083151502179055505b62000b3f62000fbf565b62000b4962001074565b62000b548462000d91565b826066908162000b65919062001a59565b50816067908162000b77919062001a59565b50801562000bd45760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498600160405162000bcb919062001b90565b60405180910390a15b50505050565b62000be462000e3b565b606560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff167fdf6bf03dfab5b4ccec3ba95544b98d7ecc9d4b9293d8673e86cb6edb5ac0cb6260405160405180910390a250565b6066805462000c8890620017c4565b80601f016020809104026020016040519081016040528092919081815260200182805462000cb690620017c4565b801562000d075780601f1062000cdb5761010080835404028352916020019162000d07565b820191906000526020600020905b81548152906001019060200180831162000ce957829003601f168201915b505050505081565b600062000d1b620003d9565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000d66573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d8c919062001704565b905090565b62000d9b62000e3b565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000e0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000e049062001c23565b60405180910390fd5b62000e188162000ed6565b50565b60656020528060005260406000206000915054906101000a900460ff1681565b62000e45620010d2565b73ffffffffffffffffffffffffffffffffffffffff1662000e6562000a28565b73ffffffffffffffffffffffffffffffffffffffff161462000ebe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000eb59062001c95565b60405180910390fd5b565b600081549050919050565b600081549050919050565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1662000fe0620003d9565b73ffffffffffffffffffffffffffffffffffffffff16141580156200103a57503373ffffffffffffffffffffffffffffffffffffffff166200102162000d0f565b73ffffffffffffffffffffffffffffffffffffffff1614155b1562001072576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060019054906101000a900460ff16620010c6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620010bd9062001d2d565b60405180910390fd5b620010d0620010da565b565b600033905090565b600060019054906101000a900460ff166200112c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620011239062001d2d565b60405180910390fd5b620011406200113a620010d2565b62000ed6565b565b60bf8062001d5083390190565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620011908262001163565b9050919050565b620011a28162001183565b8114620011ae57600080fd5b50565b600081359050620011c28162001197565b92915050565b600060208284031215620011e157620011e062001159565b5b6000620011f184828501620011b1565b91505092915050565b6000819050919050565b6000620012256200121f620012198462001163565b620011fa565b62001163565b9050919050565b6000620012398262001204565b9050919050565b60006200124d826200122c565b9050919050565b6200125f8162001240565b82525050565b60006020820190506200127c600083018462001254565b92915050565b6000819050919050565b620012978162001282565b8114620012a357600080fd5b50565b600081359050620012b7816200128c565b92915050565b60008060408385031215620012d757620012d662001159565b5b6000620012e785828601620011b1565b9250506020620012fa85828601620012a6565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b838110156200134057808201518184015260208101905062001323565b8381111562001350576000848401525b50505050565b6000601f19601f8301169050919050565b6000620013748262001304565b6200138081856200130f565b93506200139281856020860162001320565b6200139d8162001356565b840191505092915050565b60006020820190508181036000830152620013c4818462001367565b905092915050565b620013d78162001183565b82525050565b6000602082019050620013f46000830184620013cc565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200143e8262001356565b810181811067ffffffffffffffff8211171562001460576200145f62001404565b5b80604052505050565b6000620014756200114f565b905062001483828262001433565b919050565b600067ffffffffffffffff821115620014a657620014a562001404565b5b620014b18262001356565b9050602081019050919050565b82818337600083830152505050565b6000620014e4620014de8462001488565b62001469565b905082815260208101848484011115620015035762001502620013ff565b5b62001510848285620014be565b509392505050565b600082601f83011262001530576200152f620013fa565b5b813562001542848260208601620014cd565b91505092915050565b60008060006060848603121562001567576200156662001159565b5b60006200157786828701620011b1565b935050602084013567ffffffffffffffff8111156200159b576200159a6200115e565b5b620015a98682870162001518565b925050604084013567ffffffffffffffff811115620015cd57620015cc6200115e565b5b620015db8682870162001518565b9150509250925092565b60008115159050919050565b620015fc81620015e5565b82525050565b6000602082019050620016196000830184620015f1565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200165b8262001282565b9150620016688362001282565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620016a457620016a36200161f565b5b828202905092915050565b620016ba8162001282565b82525050565b6000604082019050620016d76000830185620013cc565b620016e66020830184620016af565b9392505050565b600081519050620016fe8162001197565b92915050565b6000602082840312156200171d576200171c62001159565b5b60006200172d84828501620016ed565b91505092915050565b60006020820190506200174d6000830184620016af565b92915050565b6000620017608262001163565b9050919050565b620017728162001753565b82525050565b60006020820190506200178f600083018462001767565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620017dd57607f821691505b602082108103620017f357620017f262001795565b5b50919050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b600062001857602e836200130f565b91506200186482620017f9565b604082019050919050565b600060208201905081810360008301526200188a8162001848565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620018f57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620018b6565b620019018683620018b6565b95508019841693508086168417925050509392505050565b60006200193a620019346200192e8462001282565b620011fa565b62001282565b9050919050565b6000819050919050565b620019568362001919565b6200196e620019658262001941565b848454620018c3565b825550505050565b600090565b6200198562001976565b620019928184846200194b565b505050565b5b81811015620019ba57620019ae6000826200197b565b60018101905062001998565b5050565b601f82111562001a0957620019d38162001891565b620019de84620018a6565b81016020851015620019ee578190505b62001a06620019fd85620018a6565b83018262001997565b50505b505050565b600082821c905092915050565b600062001a2e6000198460080262001a0e565b1980831691505092915050565b600062001a49838362001a1b565b9150826002028217905092915050565b62001a648262001304565b67ffffffffffffffff81111562001a805762001a7f62001404565b5b62001a8c8254620017c4565b62001a99828285620019be565b600060209050601f83116001811462001ad1576000841562001abc578287015190505b62001ac8858262001a3b565b86555062001b38565b601f19841662001ae18662001891565b60005b8281101562001b0b5784890151825560018201915060208501945060208101905062001ae4565b8683101562001b2b578489015162001b27601f89168262001a1b565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b600060ff82169050919050565b600062001b7862001b7262001b6c8462001b40565b620011fa565b62001b4a565b9050919050565b62001b8a8162001b57565b82525050565b600060208201905062001ba7600083018462001b7f565b92915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600062001c0b6026836200130f565b915062001c188262001bad565b604082019050919050565b6000602082019050818103600083015262001c3e8162001bfc565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062001c7d6020836200130f565b915062001c8a8262001c45565b602082019050919050565b6000602082019050818103600083015262001cb08162001c6e565b9050919050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b600062001d15602b836200130f565b915062001d228262001cb7565b604082019050919050565b6000602082019050818103600083015262001d488162001d06565b905091905056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a0000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1400000, "intent": "Deploy LiquidityController Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000036d608060405234801561001057600080fd5b5061034d806100206000396000f3fe6080604052600436106100345760003560e01c80632e1a7d4d1461003957806354fd4d501461005b578063d0e30db0146100ba575b600080fd5b34801561004557600080fd5b5061005961005436600461025b565b6100c2565b005b34801561006757600080fd5b506100a46040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516100b19190610274565b60405180910390f35b6100596101cb565b3373420000000000000000000000000000000000002a1461010f576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b47811115610149576040517f7b7f21e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80336040516101579061024f565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f0905080158015610191573d6000803e3d6000fd5b505060405181815233907fb1cce8684b4ffa8667b4577654e61ee3480d661ee9c27522ac80e211f6bd4d259060200160405180910390a250565b3373420000000000000000000000000000000000002a14610218576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405134815233907f7ff07ce9a287649537e4b012e45cf012d90228b12e2b56bb03515a6b5436fcdf9060200160405180910390a2565b6059806102e883390190565b60006020828403121561026d57600080fd5b5035919050565b600060208083528351808285015260005b818110156102a157858101830151858201604001528201610285565b818111156102b3576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01692909201604001939250505056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000575608060405234801561001057600080fd5b50610555806100206000396000f3fe6080604052600436106100345760003560e01c80632e1a7d4d1461003957806354fd4d5014610062578063d0e30db01461008d575b600080fd5b34801561004557600080fd5b50610060600480360381019061005b919061031b565b610097565b005b34801561006e57600080fd5b506100776101d2565b60405161008491906103e1565b60405180910390f35b61009561020b565b005b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610110576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b4781111561014a576040517f7b7f21e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8033604051610158906102d4565b6101629190610444565b6040518091039082f090508015801561017f573d6000803e3d6000fd5b50503373ffffffffffffffffffffffffffffffffffffffff167fb1cce8684b4ffa8667b4577654e61ee3480d661ee9c27522ac80e211f6bd4d25826040516101c7919061046e565b60405180910390a250565b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610284576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f7ff07ce9a287649537e4b012e45cf012d90228b12e2b56bb03515a6b5436fcdf346040516102ca919061046e565b60405180910390a2565b60bf8061048a83390190565b600080fd5b6000819050919050565b6102f8816102e5565b811461030357600080fd5b50565b600081359050610315816102ef565b92915050565b600060208284031215610331576103306102e0565b5b600061033f84828501610306565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610382578082015181840152602081019050610367565b83811115610391576000848401525b50505050565b6000601f19601f8301169050919050565b60006103b382610348565b6103bd8185610353565b93506103cd818560208601610364565b6103d681610397565b840191505092915050565b600060208201905081810360008301526103fb81846103a8565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061042e82610403565b9050919050565b61043e81610423565b82525050565b60006020820190506104596000830184610435565b92915050565b610468816102e5565b82525050565b6000602082019050610483600083018461045f565b9291505056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a0000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 400000, "intent": "Deploy NativeAssetLiquidity Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0x3659cfe6000000000000000000000000893c2ceeb71d38514daf67728d3ff1b213fc4b5f", + "data": "0x3659cfe6000000000000000000000000d0172676a2ece2e5c30b70d2af2fc951661b5fa5", "from": "0x0000000000000000000000000000000000000000", "gasLimit": 50000, "intent": "Upgrade L2ProxyAdmin Implementation", "to": "0x4200000000000000000000000000000000000018" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000003f6c6104006040523480156200001257600080fd5b5060405162003c0c38038062003c0c8339810160408190526200003591620001d4565b30608090815281516001600160a01b0390811660a09081526020840151821660e09081526040850151831660c0908152606086015184166101009081529486015184166101209081529286015184166101409081529086015184166101609081529186015184166101809081529486015184166101a09081529286015184166101c09081529086015184166101e09081529186015184166102009081529486015184166102209081529286015184166102409081529086015184166102609081529186015184166102809081529486015184166102a09081529286015184166102c09081529086015184166102e090815291860151841661030090815294860151841661032090815292860151841661034090815290860151841661036052908501518316610380529284015182166103a05283015181166103c052910151166103e05262000407565b60405161036081016001600160401b0381118282101715620001b157634e487b7160e01b600052604160045260246000fd5b60405290565b80516001600160a01b0381168114620001cf57600080fd5b919050565b60006103608284031215620001e857600080fd5b620001f26200017f565b620001fd83620001b7565b81526200020d60208401620001b7565b60208201526200022060408401620001b7565b60408201526200023360608401620001b7565b60608201526200024660808401620001b7565b60808201526200025960a08401620001b7565b60a08201526200026c60c08401620001b7565b60c08201526200027f60e08401620001b7565b60e082015261010062000294818501620001b7565b90820152610120620002a8848201620001b7565b90820152610140620002bc848201620001b7565b90820152610160620002d0848201620001b7565b90820152610180620002e4848201620001b7565b908201526101a0620002f8848201620001b7565b908201526101c06200030c848201620001b7565b908201526101e062000320848201620001b7565b9082015261020062000334848201620001b7565b9082015261022062000348848201620001b7565b908201526102406200035c848201620001b7565b9082015261026062000370848201620001b7565b9082015261028062000384848201620001b7565b908201526102a062000398848201620001b7565b908201526102c0620003ac848201620001b7565b908201526102e0620003c0848201620001b7565b90820152610300620003d4848201620001b7565b90820152610320620003e8848201620001b7565b90820152610340620003fc848201620001b7565b908201529392505050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516102a0516102c0516102e05161030051610320516103405161036051610380516103a0516103c0516103e0516135c26200064a600039600081816104d801526119530152600081816104af0152611b10015260008181610486015261145301526000818161045d015261130501526000818161043401526113ec01526000818161040b0152611a560152600081816103e20152611a180152600081816103b901526119da015260008181610390015261199c0152600081816103670152611ad201526000818161033e0152611a9401526000818161031501526116e90152600081816102ec01526116690152600081816102c301526115ea01526000818161029a0152611915015260008181610271015261120501526000818161024801526118d701526000818161021f01526118b10152600081816101f601526117c00152600081816101ce015261179a0152600081816101a601526110e101526000818161017e015261116d01526000818161015601526114cd01526000818161012e0152610fdb01526000818160df0152610ed5015260008181610107015261175201526000818160ba01528181610ef701528181610ffd015281816111030152818161118f015281816112270152818161132701528181611475015281816114ef0152818161160c0152818161168b015261170b0152600061052b01526135c26000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063615f64fe14610098578063d55ec6971461050a575b600080fd5b6100826040518060400160405280600581526020017f312e352e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f9190612fd5565b60405180910390f35b604080516103608101825273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000811682527f0000000000000000000000000000000000000000000000000000000000000000811660208301527f00000000000000000000000000000000000000000000000000000000000000008116828401527f0000000000000000000000000000000000000000000000000000000000000000811660608301527f0000000000000000000000000000000000000000000000000000000000000000811660808301527f0000000000000000000000000000000000000000000000000000000000000000811660a08301527f0000000000000000000000000000000000000000000000000000000000000000811660c08301527f0000000000000000000000000000000000000000000000000000000000000000811660e08301527f000000000000000000000000000000000000000000000000000000000000000081166101008301527f000000000000000000000000000000000000000000000000000000000000000081166101208301527f000000000000000000000000000000000000000000000000000000000000000081166101408301527f000000000000000000000000000000000000000000000000000000000000000081166101608301527f000000000000000000000000000000000000000000000000000000000000000081166101808301527f000000000000000000000000000000000000000000000000000000000000000081166101a08301527f000000000000000000000000000000000000000000000000000000000000000081166101c08301527f000000000000000000000000000000000000000000000000000000000000000081166101e08301527f000000000000000000000000000000000000000000000000000000000000000081166102008301527f000000000000000000000000000000000000000000000000000000000000000081166102208301527f000000000000000000000000000000000000000000000000000000000000000081166102408301527f000000000000000000000000000000000000000000000000000000000000000081166102608301527f000000000000000000000000000000000000000000000000000000000000000081166102808301527f000000000000000000000000000000000000000000000000000000000000000081166102a08301527f000000000000000000000000000000000000000000000000000000000000000081166102c08301527f000000000000000000000000000000000000000000000000000000000000000081166102e08301527f000000000000000000000000000000000000000000000000000000000000000081166103008301527f000000000000000000000000000000000000000000000000000000000000000081166103208301527f000000000000000000000000000000000000000000000000000000000000000016610340820152905161008f9190612fe8565b610512610514565b005b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163003610583576040517fada337cf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061058d61059b565b905061059881610e96565b50565b6105a3612e1f565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa158015610602573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106269190613236565b15156101608201526040517f47af267b0000000000000000000000000000000000000000000000000000000081527f494e5445524f50000000000000000000000000000000000000000000000000006004820152734200000000000000000000000000000000000015906347af267b90602401602060405180830381865afa9250505080156106f0575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526106ed91810190613236565b60015b61070157600061018082015261070a565b15156101808201525b806101800151801561072357506107216001611b34565b155b1561075a576040517fa27dcc8800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604051806020016040528073420000000000000000000000000000000000000773ffffffffffffffffffffffffffffffffffffffff16639fce812c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e8919061327a565b73ffffffffffffffffffffffffffffffffffffffff16905281526040805160208082018084527f7f46ddb200000000000000000000000000000000000000000000000000000000905291519091829173420000000000000000000000000000000000001091637f46ddb29160248086019291908187030181865afa158015610874573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610898919061327a565b73ffffffffffffffffffffffffffffffffffffffff168152508160200181905250604051806020016040528073420000000000000000000000000000000000001473ffffffffffffffffffffffffffffffffffffffff16637f46ddb26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610923573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610947919061327a565b73ffffffffffffffffffffffffffffffffffffffff168152508160400181905250604051806020016040528073420000000000000000000000000000000000001273ffffffffffffffffffffffffffffffffffffffff1663ee9a31a26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f6919061327a565b73ffffffffffffffffffffffffffffffffffffffff1690526060820152604080518082018083527fee9a31a2000000000000000000000000000000000000000000000000000000009052905181907342000000000000000000000000000000000000179063ee9a31a2906044808501916020918187030181865afa158015610a82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa6919061327a565b73ffffffffffffffffffffffffffffffffffffffff16815260200173420000000000000000000000000000000000001773ffffffffffffffffffffffffffffffffffffffff16637d1d0c5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b449190613297565b90526080820152610b68734200000000000000000000000000000000000011611c97565b60a0820152610b8a734200000000000000000000000000000000000019611c97565b60c0820152610bac73420000000000000000000000000000000000001a611c97565b60e0820152610bce73420000000000000000000000000000000000001b611c97565b61010082015261016081015115610dbe57600073420000000000000000000000000000000000002a905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c72919061327a565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015610cd8573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d1e9190810190613371565b81526020018273ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015610d6e573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610db49190810190613371565b9052610120830152505b600073420000000000000000000000000000000000002b73ffffffffffffffffffffffffffffffffffffffff1663d61a398b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610e59575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252610e569181019061327a565b60015b610e6557506000610e68565b90505b604080516020810190915273ffffffffffffffffffffffffffffffffffffffff909116815261014082015290565b80515160405173ffffffffffffffffffffffffffffffffffffffff9091166024820152610f9990734200000000000000000000000000000000000007907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de80000000000000000000000000000000000000000000000000000000017905260006014611e78565b60208101515160405173ffffffffffffffffffffffffffffffffffffffff909116602482015261109f90734200000000000000000000000000000000000010907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000906044015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de800000000000000000000000000000000000000000000000000000000179052600080611e78565b60408082015151905173ffffffffffffffffffffffffffffffffffffffff909116602482015261112b90734200000000000000000000000000000000000014907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401611021565b60608101515160405173ffffffffffffffffffffffffffffffffffffffff90911660248201526111b790734200000000000000000000000000000000000012907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401611021565b6080810151805160209091015160405173ffffffffffffffffffffffffffffffffffffffff909216602483015260448201526112c990734200000000000000000000000000000000000017907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090606401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fcd6dc6870000000000000000000000000000000000000000000000000000000017905260016000611e78565b80610160015115611410576101208101518051602082015160409283015192516113d29373420000000000000000000000000000000000002a937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361135493906024016133c2565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f9065714700000000000000000000000000000000000000000000000000000000179052600080611e78565b6114107342000000000000000000000000000000000000297f00000000000000000000000000000000000000000000000000000000000000006125d4565b6101408101515160405173ffffffffffffffffffffffffffffffffffffffff909116602482015261149d9073420000000000000000000000000000000000002b907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401611021565b60a08101518051602082015160409283015192516115ba93734200000000000000000000000000000000000011937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb49dc741000000000000000000000000000000000000000000000000000000001790527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006000611e78565b60c081015180516020820151604092830151925161163993734200000000000000000000000000000000000019937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b60e08101518051602082015160409283015192516116b89373420000000000000000000000000000000000001a937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b6101008101518051602082015160409283015192516117389373420000000000000000000000000000000000001b937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b61177673420000000000000000000000000000000000000f7f00000000000000000000000000000000000000000000000000000000000000006125d4565b6117e47342000000000000000000000000000000000000158261016001516117be577f00000000000000000000000000000000000000000000000000000000000000006125d4565b7f00000000000000000000000000000000000000000000000000000000000000006125d4565b8061016001511561188d576040517f46a4d7800000000000000000000000000000000000000000000000000000000081527f435553544f4d5f4741535f544f4b454e000000000000000000000000000000006004820152734200000000000000000000000000000000000015906346a4d78090602401600060405180830381600087803b15801561187457600080fd5b505af1158015611888573d6000803e3d6000fd5b505050505b6118fb7342000000000000000000000000000000000000168261016001516118d5577f00000000000000000000000000000000000000000000000000000000000000006125d4565b7f00000000000000000000000000000000000000000000000000000000000000006125d4565b6119397342000000000000000000000000000000000000187f00000000000000000000000000000000000000000000000000000000000000006125d4565b61197773420000000000000000000000000000000000002d7f00000000000000000000000000000000000000000000000000000000000000006125d4565b80610180015115611a7a576119c07342000000000000000000000000000000000000227f00000000000000000000000000000000000000000000000000000000000000006125d4565b6119fe7342000000000000000000000000000000000000237f00000000000000000000000000000000000000000000000000000000000000006125d4565b611a3c7342000000000000000000000000000000000000247f00000000000000000000000000000000000000000000000000000000000000006125d4565b611a7a7342000000000000000000000000000000000000257f00000000000000000000000000000000000000000000000000000000000000006125d4565b611ab87342000000000000000000000000000000000000207f00000000000000000000000000000000000000000000000000000000000000006125d4565b611af67342000000000000000000000000000000000000217f00000000000000000000000000000000000000000000000000000000000000006125d4565b61059873420000000000000000000000000000000000002c7f00000000000000000000000000000000000000000000000000000000000000006125d4565b6040517f204e1c7a00000000000000000000000000000000000000000000000000000000815273420000000000000000000000000000000000002d600482015260009081907342000000000000000000000000000000000000189063204e1c7a90602401602060405180830381865afa158015611bb5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd9919061327a565b90508073ffffffffffffffffffffffffffffffffffffffff163b600003611c035750600092915050565b6040517f78ecabce0000000000000000000000000000000000000000000000000000000081526004810184905273420000000000000000000000000000000000002d906378ecabce90602401602060405180830381865afa158015611c6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c909190613236565b9392505050565b611cb860408051606081018252600080825260208201819052909182015290565b60008273ffffffffffffffffffffffffffffffffffffffff1663d0e12f906040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611d3f575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252611d3c918101906134a5565b60015b611d4b57506000611d4e565b90505b600083905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16630d9019e16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611da9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dcd919061327a565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d3e5792b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e579190613297565b8152602001836001811115611e6e57611e6e61340d565b9052949350505050565b611e81866128a7565b611ed4576040517fc3fe4a6600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871660048201526024015b60405180910390fd5b6040517f204e1c7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871660048201526000907342000000000000000000000000000000000000189063204e1c7a90602401602060405180830381865afa158015611f55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f79919061327a565b905073ffffffffffffffffffffffffffffffffffffffff81163b158015906120c657506120c68773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015611fea573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526120309190810190613371565b8773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa15801561207b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526120c19190810190613371565b6128f0565b15612115576040517ff8ce5d1600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88166004820152602401611ecb565b6040517f3659cfe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152881690633659cfe690602401600060405180830381600087803b15801561217e57600080fd5b505af1158015612192573d6000803e3d6000fd5b507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009250505083811480156121c9575060ff831615155b15612200576040517f10415a2900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b808414612394576040517fa6ed563e0000000000000000000000000000000000000000000000000000000081526004810185905260009073ffffffffffffffffffffffffffffffffffffffff8a169063a6ed563e90602401602060405180830381865afa158015612275573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122999190613297565b90506122a68460016134f5565b6122b49060ff16600861351a565b81901c60ff16156122f1576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061230160ff8616600861351a565b6040517f4e91db080000000000000000000000000000000000000000000000000000000081526004810188905260ff90911b198381166024830152915073ffffffffffffffffffffffffffffffffffffffff8b1690634e91db0890604401600060405180830381600087803b15801561237957600080fd5b505af115801561238d573d6000803e3d6000fd5b5050505050505b6040517fa6ed563e0000000000000000000000000000000000000000000000000000000081526004810182905260009073ffffffffffffffffffffffffffffffffffffffff8a169063a6ed563e90602401602060405180830381865afa158015612402573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124269190613297565b905060ff604082901c1615612467576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f4e91db08000000000000000000000000000000000000000000000000000000008152600481018390527fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008216602482015273ffffffffffffffffffffffffffffffffffffffff8a1690634e91db0890604401600060405180830381600087803b1580156124f757600080fd5b505af115801561250b573d6000803e3d6000fd5b50506040517f4f1ef28600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c169250634f1ef2869150612563908b908a90600401613557565b6000604051808303816000875af1158015612582573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526125c89190810190613371565b50505050505050505050565b6125dd826128a7565b61262b576040517fc3fe4a6600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602401611ecb565b6040517f204e1c7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526000907342000000000000000000000000000000000000189063204e1c7a90602401602060405180830381865afa1580156126ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126d0919061327a565b905073ffffffffffffffffffffffffffffffffffffffff81163b158015906127d257506127d28373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612741573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526127879190810190613371565b8373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa15801561207b573d6000803e3d6000fd5b15612821576040517ff8ce5d1600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602401611ecb565b6040517f3659cfe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690633659cfe690602401600060405180830381600087803b15801561288a57600080fd5b505af115801561289e573d6000803e3d6000fd5b50505050505050565b60007208400000000000000000000000000000000000600b83901c721fffffffffffffffffffffffffffffffffffff161480156128ea57506128e882612916565b155b92915050565b60006128fc838361297e565b158015611c90575061290e83836129ce565b159392505050565b600073ffffffffffffffffffffffffffffffffffffffff821673420000000000000000000000000000000000004214806128ea575073ffffffffffffffffffffffffffffffffffffffff82167342000000000000000000000000000000000000061492915050565b60008061298a84612a43565b9050600061299784612a43565b805183519192501480156129b2575080602001518260200151145b80156129c5575080604001518260400151145b95945050505050565b6000806129da84612a43565b905060006129e784612a43565b805183519192501180612a0d575080518251148015612a0d575080602001518260200151105b806129c5575080518251148015612a2b575080602001518260200151145b80156129c55750604090810151910151109392505050565b612a6760405180606001604052806000815260200160008152602001600081525090565b6000612aa8836040518060400160405280600181526020017f2e00000000000000000000000000000000000000000000000000000000000000815250612c0f565b9050600381511015612ae6576040517f9eda858c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612b4182600281518110612afe57612afe613586565b60200260200101516040518060400160405280600181526020017f2d00000000000000000000000000000000000000000000000000000000000000815250612c0f565b90506000612b9e82600081518110612b5b57612b5b613586565b60200260200101516040518060400160405280600181526020017f2b00000000000000000000000000000000000000000000000000000000000000815250612c0f565b90506040518060600160405280612bce85600081518110612bc157612bc1613586565b6020026020010151612cba565b8152602001612be985600181518110612bc157612bc1613586565b8152602001612c0483600081518110612bc157612bc1613586565b905295945050505050565b60606000612c1d8484612d32565b9050601f1960208201600183510160051b81018651838201526001845101845260005b825160608452818114612c855760405182820380825286601f8201165b8b850181015183820152870180612c5d5750600082820160200152603f018616810160405284525b875160209490940193019050818310612c4057505050508091508251612cb357602081019150600281510382525b5092915050565b80516000907f1999999999999999999999999999999999999999999999999999999999999999825b600181019050603060ff82870151160382851185600a028281019650600983118188108317171586029550505050828110612ce257505080612d2c5763101827966000526004601cfd5b50919050565b606082518251818111612e17576020850194506020840193506020604051019250846001828488010301600060208410612d6b57508286205b601f841660200360031b87515b8951818118831c612dcd578315612dab5783878c2014612dab5760018b019a50848b10612da55750612ddc565b50612d78565b858b038952998601996020909801978615612dcd57848b10612da55750612ddc565b5060018a019950838a10612d78575b5050604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08189030160051c8152602090970190525050505b505092915050565b604080516101c08101825260006101a08201818152825282516020808201855282825280840191909152835180820185528281528385015283518082018552828152606084015283518085019094528184528301529060808201908152602001612ea060408051606081018252600080825260208201819052909182015290565b8152602001612ec660408051606081018252600080825260208201819052909182015290565b8152602001612eec60408051606081018252600080825260208201819052909182015290565b8152602001612f1260408051606081018252600080825260208201819052909182015290565b8152604080516060808201835260008252602082810182905292820152910190815260408051602081810190925260008152910190815260006020820181905260409091015290565b60005b83811015612f76578181015183820152602001612f5e565b83811115612f85576000848401525b50505050565b60008151808452612fa3816020860160208601612f5b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611c906020830184612f8b565b815173ffffffffffffffffffffffffffffffffffffffff1681526103608101602083015161302e602084018273ffffffffffffffffffffffffffffffffffffffff169052565b506040830151613056604084018273ffffffffffffffffffffffffffffffffffffffff169052565b50606083015161307e606084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060808301516130a6608084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060a08301516130ce60a084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060c08301516130f660c084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e083015161311e60e084018273ffffffffffffffffffffffffffffffffffffffff169052565b506101008381015173ffffffffffffffffffffffffffffffffffffffff90811691840191909152610120808501518216908401526101408085015182169084015261016080850151821690840152610180808501518216908401526101a0808501518216908401526101c0808501518216908401526101e08085015182169084015261020080850151821690840152610220808501518216908401526102408085015182169084015261026080850151821690840152610280808501518216908401526102a0808501518216908401526102c0808501518216908401526102e0808501518216908401526103008085015182169084015261032080850151821690840152610340808501519182168185015290612e17565b60006020828403121561324857600080fd5b81518015158114611c9057600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461059857600080fd5b60006020828403121561328c57600080fd5b8151611c9081613258565b6000602082840312156132a957600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600067ffffffffffffffff808411156132fa576132fa6132b0565b604051601f85017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715613340576133406132b0565b8160405280935085815286868601111561335957600080fd5b613367866020830187612f5b565b5050509392505050565b60006020828403121561338357600080fd5b815167ffffffffffffffff81111561339a57600080fd5b8201601f810184136133ab57600080fd5b6133ba848251602084016132df565b949350505050565b73ffffffffffffffffffffffffffffffffffffffff841681526060602082015260006133f16060830185612f8b565b82810360408401526134038185612f8b565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff84168152602081018390526060810160028310613497577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b826040830152949350505050565b6000602082840312156134b757600080fd5b815160028110611c9057600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600060ff821660ff84168060ff03821115613512576135126134c6565b019392505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613552576135526134c6565b500290565b73ffffffffffffffffffffffffffffffffffffffff831681526040602082015260006133ba6040830184612f8b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea164736f6c634300080f000a0000000000000000000000002a5a3eabb9fd571a3af0299eebdf8eaafe29a914000000000000000000000000250af3f400cf8aac8d410c90f1ba3968dd87df96000000000000000000000000547d0fba434877d7237d511cf87fabe2ee26b152000000000000000000000000ac8538a2e6a1f5dfbb1c4b8bd97cefb2997824a8000000000000000000000000b178cdaa8336f25624a63c049edb5af7ca36c2da000000000000000000000000c053fc0155bf8bda5b568af53276e538f0ea4d58000000000000000000000000716ead0cf3e7ff86a02d4f8cb41a6d14922fa8330000000000000000000000006a97c5d55a21265326150efe12fc30fb21cbff56000000000000000000000000a0734858ba5085ff6db493021a0f8c54605c2cda00000000000000000000000027e51b2254433a3284d9ba73ea551c397db2a124000000000000000000000000a0f4ffff79a0a3e039fcbef738751efba8e84f96000000000000000000000000f43862b9d814bb4504158ceccb0b74b31265e4ee000000000000000000000000893c2ceeb71d38514daf67728d3ff1b213fc4b5f000000000000000000000000f7bed7215eef1003fac426682cf2edeb958569f7000000000000000000000000f7bed7215eef1003fac426682cf2edeb958569f7000000000000000000000000eddf416c7159387cc6df3015700f79cfb891137300000000000000000000000070de55bc0bfbc52c5d0cca1da5816c2428886a34000000000000000000000000bec660b456b84a081e90af29be43385bda5bf7b600000000000000000000000093a8a7a9c98cb998d88dba3373a6c7f8ee2e8a4600000000000000000000000037dc2fe754052a9fac35f17282599fafbeb9f423000000000000000000000000784f1fae11f1c3a9c413423fe1b370a3636b8d560000000000000000000000002f76618143d9d2731c56778192d3893864b423d7000000000000000000000000dda87ef358082ab3f4ba8982290c671efdc4d1590000000000000000000000008256398a687e740006098445b05d5ca46b7be21e0000000000000000000000008684ccc5bf484ec242dbc7119004a83533934a79000000000000000000000000906835344844979ffd3a752eaa23728d513db00b000000000000000000000000e35b194efc4907f383b7e3b87f4c2c339ce239f60000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000056a06104006040523480156200001257600080fd5b506040516200534038038062005340833981810160405281019062000038919062000a3b565b3073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1681525050806000015173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050806020015173ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff1681525050806040015173ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050806060015173ffffffffffffffffffffffffffffffffffffffff166101008173ffffffffffffffffffffffffffffffffffffffff1681525050806080015173ffffffffffffffffffffffffffffffffffffffff166101208173ffffffffffffffffffffffffffffffffffffffff16815250508060a0015173ffffffffffffffffffffffffffffffffffffffff166101408173ffffffffffffffffffffffffffffffffffffffff16815250508060c0015173ffffffffffffffffffffffffffffffffffffffff166101608173ffffffffffffffffffffffffffffffffffffffff16815250508060e0015173ffffffffffffffffffffffffffffffffffffffff166101808173ffffffffffffffffffffffffffffffffffffffff168152505080610100015173ffffffffffffffffffffffffffffffffffffffff166101a08173ffffffffffffffffffffffffffffffffffffffff168152505080610120015173ffffffffffffffffffffffffffffffffffffffff166101c08173ffffffffffffffffffffffffffffffffffffffff168152505080610140015173ffffffffffffffffffffffffffffffffffffffff166101e08173ffffffffffffffffffffffffffffffffffffffff168152505080610160015173ffffffffffffffffffffffffffffffffffffffff166102008173ffffffffffffffffffffffffffffffffffffffff168152505080610180015173ffffffffffffffffffffffffffffffffffffffff166102208173ffffffffffffffffffffffffffffffffffffffff1681525050806101a0015173ffffffffffffffffffffffffffffffffffffffff166102408173ffffffffffffffffffffffffffffffffffffffff1681525050806101c0015173ffffffffffffffffffffffffffffffffffffffff166102608173ffffffffffffffffffffffffffffffffffffffff1681525050806101e0015173ffffffffffffffffffffffffffffffffffffffff166102808173ffffffffffffffffffffffffffffffffffffffff168152505080610200015173ffffffffffffffffffffffffffffffffffffffff166102a08173ffffffffffffffffffffffffffffffffffffffff168152505080610220015173ffffffffffffffffffffffffffffffffffffffff166102c08173ffffffffffffffffffffffffffffffffffffffff168152505080610240015173ffffffffffffffffffffffffffffffffffffffff166102e08173ffffffffffffffffffffffffffffffffffffffff168152505080610260015173ffffffffffffffffffffffffffffffffffffffff166103008173ffffffffffffffffffffffffffffffffffffffff168152505080610280015173ffffffffffffffffffffffffffffffffffffffff166103208173ffffffffffffffffffffffffffffffffffffffff1681525050806102a0015173ffffffffffffffffffffffffffffffffffffffff166103408173ffffffffffffffffffffffffffffffffffffffff1681525050806102c0015173ffffffffffffffffffffffffffffffffffffffff166103608173ffffffffffffffffffffffffffffffffffffffff1681525050806102e0015173ffffffffffffffffffffffffffffffffffffffff166103808173ffffffffffffffffffffffffffffffffffffffff168152505080610300015173ffffffffffffffffffffffffffffffffffffffff166103a08173ffffffffffffffffffffffffffffffffffffffff168152505080610320015173ffffffffffffffffffffffffffffffffffffffff166103c08173ffffffffffffffffffffffffffffffffffffffff168152505080610340015173ffffffffffffffffffffffffffffffffffffffff166103e08173ffffffffffffffffffffffffffffffffffffffff16815250505062000a6e565b6000604051905090565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620006e5826200069a565b810181811067ffffffffffffffff82111715620007075762000706620006ab565b5b80604052505050565b60006200071c62000686565b90506200072a8282620006da565b919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200075c826200072f565b9050919050565b6200076e816200074f565b81146200077a57600080fd5b50565b6000815190506200078e8162000763565b92915050565b60006103608284031215620007ae57620007ad62000695565b5b620007bb61036062000710565b90506000620007cd848285016200077d565b6000830152506020620007e3848285016200077d565b6020830152506040620007f9848285016200077d565b60408301525060606200080f848285016200077d565b606083015250608062000825848285016200077d565b60808301525060a06200083b848285016200077d565b60a08301525060c062000851848285016200077d565b60c08301525060e062000867848285016200077d565b60e0830152506101006200087e848285016200077d565b6101008301525061012062000896848285016200077d565b61012083015250610140620008ae848285016200077d565b61014083015250610160620008c6848285016200077d565b61016083015250610180620008de848285016200077d565b610180830152506101a0620008f6848285016200077d565b6101a0830152506101c06200090e848285016200077d565b6101c0830152506101e062000926848285016200077d565b6101e0830152506102006200093e848285016200077d565b6102008301525061022062000956848285016200077d565b610220830152506102406200096e848285016200077d565b6102408301525061026062000986848285016200077d565b610260830152506102806200099e848285016200077d565b610280830152506102a0620009b6848285016200077d565b6102a0830152506102c0620009ce848285016200077d565b6102c0830152506102e0620009e6848285016200077d565b6102e083015250610300620009fe848285016200077d565b6103008301525061032062000a16848285016200077d565b6103208301525061034062000a2e848285016200077d565b6103408301525092915050565b6000610360828403121562000a555762000a5462000690565b5b600062000a658482850162000794565b91505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516102a0516102c0516102e05161030051610320516103405161036051610380516103a0516103c0516103e05161468e62000cb2600039600081816109d10152611f49015260008181610978015261210701526000818161091f01526118a10152600081816108c6015261178801526000818161086d0152611862015260008181610814015261204c0152600081816107bb015261200e0152600081816107620152611fd00152600081816107090152611f920152600081816106b001526120c9015260008181610657015261208b0152600081816105fe0152611c4a0152600081816105a50152611b5301526000818161054c0152611a5c0152600081816104f30152611f0b01526000818161049a01526116af0152600081816104410152611ecc0152600081816103e80152611ea601526000818161038f0152611db20152600081816103370152611d8c0152600081816102df015261152901526000818161028701526115ec01526000818161022f01526119650152600081816101d7015261146601526000818161012701526113a301526000818161017f0152611d4401526000818160cf015281816113c4015281816114870152818161154a0152818161160d015281816116d0015281816117a9015281816118c20152818161198601528181611a7d01528181611b740152611c6b01526000610a2d015261468e6000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063615f64fe14610064578063d55ec69714610082575b600080fd5b61004e61008c565b60405161005b9190613979565b60405180910390f35b61006c6100c5565b6040516100799190613c0d565b60405180910390f35b61008a610a2b565b005b6040518060400160405280600581526020017f312e352e3000000000000000000000000000000000000000000000000000000081525081565b6100cd613378565b7f0000000000000000000000000000000000000000000000000000000000000000816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816040019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816060019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816080019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000000000000000000000000000000000000000000008160a0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000000000000000000000000000000000000000000008160c0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000000000000000000000000000000000000000000008160e0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610100019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610120019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610140019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610160019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610180019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816101a0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816101c0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816101e0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610200019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610220019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610240019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610260019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610280019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816102a0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816102c0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816102e0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610300019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610320019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610340019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1603610ab0576040517fada337cf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610aba610ac8565b9050610ac581611389565b50565b610ad0613694565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b539190613c75565b8161016001901515908115158152505073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166347af267b7f494e5445524f50000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b8152600401610bd09190613cbb565b602060405180830381865afa925050508015610c0a57506040513d601f19601f82011682018060405250810190610c079190613c75565b60015b610c2557600081610180019015159081151581525050610c38565b8082610180019015159081151581525050505b8061018001518015610c545750610c52600160001b61212e565b155b15610c8b576040517fa27dcc8800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604051806020016040528073420000000000000000000000000000000000000773ffffffffffffffffffffffffffffffffffffffff16639fce812c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cf5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d199190613d14565b73ffffffffffffffffffffffffffffffffffffffff168152508160000181905250604051806020016040528073420000000000000000000000000000000000001073ffffffffffffffffffffffffffffffffffffffff16637f46ddb26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610da4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc89190613d91565b73ffffffffffffffffffffffffffffffffffffffff168152508160200181905250604051806020016040528073420000000000000000000000000000000000001473ffffffffffffffffffffffffffffffffffffffff16637f46ddb26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e779190613dfc565b73ffffffffffffffffffffffffffffffffffffffff168152508160400181905250604051806020016040528073420000000000000000000000000000000000001273ffffffffffffffffffffffffffffffffffffffff1663ee9a31a26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f269190613e55565b73ffffffffffffffffffffffffffffffffffffffff168152508160600181905250604051806040016040528073420000000000000000000000000000000000001773ffffffffffffffffffffffffffffffffffffffff1663ee9a31a26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fb1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd59190613e55565b73ffffffffffffffffffffffffffffffffffffffff16815260200173420000000000000000000000000000000000001773ffffffffffffffffffffffffffffffffffffffff16637d1d0c5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561104f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110739190613eb8565b815250816080018190525061109b734200000000000000000000000000000000000011612295565b8160a001819052506110c0734200000000000000000000000000000000000019612295565b8160c001819052506110e573420000000000000000000000000000000000001a612295565b8160e0018190525061110a73420000000000000000000000000000000000001b612295565b816101000181905250806101600151156112c757600073420000000000000000000000000000000000002a905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561118d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b19190613e55565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015611217573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611240919061400b565b81526020018273ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015611290573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906112b9919061400b565b815250826101200181905250505b600073420000000000000000000000000000000000002b73ffffffffffffffffffffffffffffffffffffffff1663d61a398b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561134557506040513d601f19601f820116820180604052508101906113429190614092565b60015b6113525760009050611357565b809150505b60405180602001604052808273ffffffffffffffffffffffffffffffffffffffff168152508261014001819052505090565b61144c7342000000000000000000000000000000000000077f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460000151600001516040516024016113fc919061411e565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6014612446565b61150f7342000000000000000000000000000000000000107f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460200151600001516040516024016114bf919061416c565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6115d27342000000000000000000000000000000000000147f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460400151600001516040516024016115829190614196565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6116957342000000000000000000000000000000000000127f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000084606001516000015160405160240161164591906141c0565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6117637342000000000000000000000000000000000000177f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460800151600001518560800151602001516040516024016117129291906141ea565b60405160208183030381529060405263cd6dc68760e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050600160001b6000612446565b806101600151156118875761184873420000000000000000000000000000000000002a7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008461012001516000015185610120015160200151866101200151604001516040516024016117f893929190614213565b604051602081830303815290604052639065714760e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6118867342000000000000000000000000000000000000297f0000000000000000000000000000000000000000000000000000000000000000612a95565b5b61194b73420000000000000000000000000000000000002b7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000846101400151600001516040516024016118fb9190614279565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b611a427342000000000000000000000000000000000000117f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460a00151600001518560a00151602001518660a00151604001516040516024016119d29392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611b397342000000000000000000000000000000000000197f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460c00151600001518560c00151602001518660c0015160400151604051602401611ac99392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611c3073420000000000000000000000000000000000001a7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460e00151600001518560e00151602001518660e0015160400151604051602401611bc09392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611d2a73420000000000000000000000000000000000001b7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000846101000151600001518561010001516020015186610100015160400151604051602401611cba9392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611d6873420000000000000000000000000000000000000f7f0000000000000000000000000000000000000000000000000000000000000000612a95565b611dd7734200000000000000000000000000000000000015826101600151611db0577f0000000000000000000000000000000000000000000000000000000000000000611dd2565b7f00000000000000000000000000000000000000000000000000000000000000005b612a95565b80610160015115611e825773420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166346a4d7807f435553544f4d5f4741535f544f4b454e000000000000000000000000000000006040518263ffffffff1660e01b8152600401611e4f9190613cbb565b600060405180830381600087803b158015611e6957600080fd5b505af1158015611e7d573d6000803e3d6000fd5b505050505b611ef1734200000000000000000000000000000000000016826101600151611eca577f0000000000000000000000000000000000000000000000000000000000000000611eec565b7f00000000000000000000000000000000000000000000000000000000000000005b612a95565b611f2f7342000000000000000000000000000000000000187f0000000000000000000000000000000000000000000000000000000000000000612a95565b611f6d73420000000000000000000000000000000000002d7f0000000000000000000000000000000000000000000000000000000000000000612a95565b8061018001511561207157611fb67342000000000000000000000000000000000000227f0000000000000000000000000000000000000000000000000000000000000000612a95565b611ff47342000000000000000000000000000000000000237f0000000000000000000000000000000000000000000000000000000000000000612a95565b6120327342000000000000000000000000000000000000247f0000000000000000000000000000000000000000000000000000000000000000612a95565b6120707342000000000000000000000000000000000000257f0000000000000000000000000000000000000000000000000000000000000000612a95565b5b6120af7342000000000000000000000000000000000000207f0000000000000000000000000000000000000000000000000000000000000000612a95565b6120ed7342000000000000000000000000000000000000217f0000000000000000000000000000000000000000000000000000000000000000612a95565b61212b73420000000000000000000000000000000000002c7f0000000000000000000000000000000000000000000000000000000000000000612a95565b50565b60008073420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff1663204e1c7a73420000000000000000000000000000000000002d6040518263ffffffff1660e01b815260040161219291906141c0565b602060405180830381865afa1580156121af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121d39190613e55565b905060008173ffffffffffffffffffffffffffffffffffffffff163b036121fe576000915050612290565b73420000000000000000000000000000000000002d73ffffffffffffffffffffffffffffffffffffffff166378ecabce846040518263ffffffff1660e01b815260040161224b9190613cbb565b602060405180830381865afa158015612268573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061228c9190613c75565b9150505b919050565b61229d613742565b60008273ffffffffffffffffffffffffffffffffffffffff1663d0e12f906040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561230757506040513d601f19601f820116820180604052508101906123049190614367565b60015b6123145760009050612319565b809150505b600083905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16630d9019e16040518163ffffffff1660e01b8152600401602060405180830381865afa158015612374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123989190613e55565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d3e5792b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124229190613eb8565b815260200183600181111561243a57612439614294565b5b81525092505050919050565b61244f86612d37565b61249057856040517fc3fe4a6600000000000000000000000000000000000000000000000000000000815260040161248791906141c0565b60405180910390fd5b600073420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff1663204e1c7a886040518263ffffffff1660e01b81526004016124df91906141c0565b602060405180830381865afa1580156124fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125209190613e55565b905060008173ffffffffffffffffffffffffffffffffffffffff163b1415801561263657506126358773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612593573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906125bc919061400b565b8773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612607573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612630919061400b565b612d5b565b5b1561267857866040517ff8ce5d1600000000000000000000000000000000000000000000000000000000815260040161266f91906141c0565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff16633659cfe6866040518263ffffffff1660e01b81526004016126b191906141c0565b600060405180830381600087803b1580156126cb57600080fd5b505af11580156126df573d6000803e3d6000fd5b5050505060007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b9050808414801561271e575060008360ff1614155b15612755576040517f10415a2900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8084146128c95760008873ffffffffffffffffffffffffffffffffffffffff1663a6ed563e866040518263ffffffff1660e01b81526004016127979190613cbb565b602060405180830381865afa1580156127b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d891906143c0565b9050600060ff60086001876127ed9190614429565b60ff166127fa9190614460565b8360001c901c1614612838576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600060088560ff1661284a9190614460565b60ff901b1990508973ffffffffffffffffffffffffffffffffffffffff16634e91db0887838560001c1660001b6040518363ffffffff1660e01b81526004016128949291906144ba565b600060405180830381600087803b1580156128ae57600080fd5b505af11580156128c2573d6000803e3d6000fd5b5050505050505b60008873ffffffffffffffffffffffffffffffffffffffff1663a6ed563e836040518263ffffffff1660e01b81526004016129049190613cbb565b602060405180830381865afa158015612921573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294591906143c0565b60001c9050600060ff604083901c161461298b576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff16634e91db088367ffffffffffffffff19841660001b6040518363ffffffff1660e01b81526004016129d49291906144ba565b600060405180830381600087803b1580156129ee57600080fd5b505af1158015612a02573d6000803e3d6000fd5b505050508873ffffffffffffffffffffffffffffffffffffffff16634f1ef28689886040518363ffffffff1660e01b8152600401612a41929190614538565b6000604051808303816000875af1158015612a60573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612a899190614609565b50505050505050505050565b612a9e82612d37565b612adf57816040517fc3fe4a66000000000000000000000000000000000000000000000000000000008152600401612ad691906141c0565b60405180910390fd5b600073420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff1663204e1c7a846040518263ffffffff1660e01b8152600401612b2e91906141c0565b602060405180830381865afa158015612b4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b6f9190613e55565b905060008173ffffffffffffffffffffffffffffffffffffffff163b14158015612c855750612c848373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612be2573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612c0b919061400b565b8373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612c56573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612c7f919061400b565b612d5b565b5b15612cc757826040517ff8ce5d16000000000000000000000000000000000000000000000000000000008152600401612cbe91906141c0565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff16633659cfe6836040518263ffffffff1660e01b8152600401612d0091906141c0565b600060405180830381600087803b158015612d1a57600080fd5b505af1158015612d2e573d6000803e3d6000fd5b50505050505050565b6000612d4282612d83565b8015612d545750612d5282612e03565b155b9050919050565b6000612d678383612e99565b158015612d7b5750612d798383612eef565b155b905092915050565b6000600b73420000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16901c73ffffffffffffffffffffffffffffffffffffffff16600b8373ffffffffffffffffffffffffffffffffffffffff16901c73ffffffffffffffffffffffffffffffffffffffff16149050919050565b600073420000000000000000000000000000000000004273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480612e92575073420000000000000000000000000000000000000673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b600080612ea584612f7c565b90506000612eb284612f7c565b905080600001518260000151148015612ed2575080602001518260200151145b8015612ee5575080604001518260400151145b9250505092915050565b600080612efb84612f7c565b90506000612f0884612f7c565b9050806000015182600001511080612f3a575080600001518260000151148015612f39575080602001518260200151105b5b80612f72575080600001518260000151148015612f5e575080602001518260200151145b8015612f71575080604001518260400151105b5b9250505092915050565b612f8461378b565b6000612fc5836040518060400160405280600181526020017f2e0000000000000000000000000000000000000000000000000000000000000081525061314d565b9050600381511015613003576040517f9eda858c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061305f8260028151811061301c5761301b614652565b5b60200260200101516040518060400160405280600181526020017f2d0000000000000000000000000000000000000000000000000000000000000081525061314d565b905060006130bd8260008151811061307a57613079614652565b5b60200260200101516040518060400160405280600181526020017f2b0000000000000000000000000000000000000000000000000000000000000081525061314d565b905060405180606001604052806130ee856000815181106130e1576130e0614652565b5b602002602001015161321a565b81526020016131178560018151811061310a57613109614652565b5b602002602001015161321a565b81526020016131408360008151811061313357613132614652565b5b602002602001015161321a565b8152509350505050919050565b6060600061315b848461328b565b9050601f1960208201600183510160051b81018651838201526001845101845260005b6001156131f8578251606084528181146131d95760405182820380825286601f8201165b6001156131be5780858d010151818401528781019050806131a2575b5060008160208401015286603f820116820160405281865250505b8751810191506020840193508284106131f257506131f8565b5061317e565b849550865161320f57602085019550600285510386525b505050505092915050565b60008151600a6000190460005b60011561327057600181019050603060ff82870151160382851185600a02828101965060098311818810831717158602955085841061326857505050613270565b505050613227565b50816132845763101827966000526004601cfd5b5050919050565b6060825182518181116133705760208501945060208401935060206040510192508460018284880103016000602084106132c55783872090505b601f841660200360031b87515b600115613351578951818118831c61333757831561330d5783878c201461330c5760018b019a50848b106133065750613351565b5061334c565b5b858b038952602089019850868b019a50861561333657848b106133305750613351565b5061334c565b5b60018b019a50848b1061334a5750613351565b505b6132d2565b87604051985060208901810360051c8952602081016040525050505050505b505092915050565b604051806103600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681525090565b604051806101a001604052806136a86137ac565b81526020016136b56137d5565b81526020016136c26137fe565b81526020016136cf613827565b81526020016136dc613850565b81526020016136e9613742565b81526020016136f6613742565b8152602001613703613742565b8152602001613710613742565b815260200161371d613880565b815260200161372a6138b7565b81526020016000151581526020016000151581525090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000600181111561378557613784614294565b5b81525090565b60405180606001604052806000815260200160008152602001600081525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561391a5780820151818401526020810190506138ff565b83811115613929576000848401525b50505050565b6000601f19601f8301169050919050565b600061394b826138e0565b61395581856138eb565b93506139658185602086016138fc565b61396e8161392f565b840191505092915050565b600060208201905081810360008301526139938184613940565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006139c68261399b565b9050919050565b6139d6816139bb565b82525050565b610360820160008201516139f360008501826139cd565b506020820151613a0660208501826139cd565b506040820151613a1960408501826139cd565b506060820151613a2c60608501826139cd565b506080820151613a3f60808501826139cd565b5060a0820151613a5260a08501826139cd565b5060c0820151613a6560c08501826139cd565b5060e0820151613a7860e08501826139cd565b50610100820151613a8d6101008501826139cd565b50610120820151613aa26101208501826139cd565b50610140820151613ab76101408501826139cd565b50610160820151613acc6101608501826139cd565b50610180820151613ae16101808501826139cd565b506101a0820151613af66101a08501826139cd565b506101c0820151613b0b6101c08501826139cd565b506101e0820151613b206101e08501826139cd565b50610200820151613b356102008501826139cd565b50610220820151613b4a6102208501826139cd565b50610240820151613b5f6102408501826139cd565b50610260820151613b746102608501826139cd565b50610280820151613b896102808501826139cd565b506102a0820151613b9e6102a08501826139cd565b506102c0820151613bb36102c08501826139cd565b506102e0820151613bc86102e08501826139cd565b50610300820151613bdd6103008501826139cd565b50610320820151613bf26103208501826139cd565b50610340820151613c076103408501826139cd565b50505050565b600061036082019050613c2360008301846139dc565b92915050565b6000604051905090565b600080fd5b600080fd5b60008115159050919050565b613c5281613c3d565b8114613c5d57600080fd5b50565b600081519050613c6f81613c49565b92915050565b600060208284031215613c8b57613c8a613c33565b5b6000613c9984828501613c60565b91505092915050565b6000819050919050565b613cb581613ca2565b82525050565b6000602082019050613cd06000830184613cac565b92915050565b6000613ce1826139bb565b9050919050565b613cf181613cd6565b8114613cfc57600080fd5b50565b600081519050613d0e81613ce8565b92915050565b600060208284031215613d2a57613d29613c33565b5b6000613d3884828501613cff565b91505092915050565b6000613d4c8261399b565b9050919050565b6000613d5e82613d41565b9050919050565b613d6e81613d53565b8114613d7957600080fd5b50565b600081519050613d8b81613d65565b92915050565b600060208284031215613da757613da6613c33565b5b6000613db584828501613d7c565b91505092915050565b6000613dc9826139bb565b9050919050565b613dd981613dbe565b8114613de457600080fd5b50565b600081519050613df681613dd0565b92915050565b600060208284031215613e1257613e11613c33565b5b6000613e2084828501613de7565b91505092915050565b613e32816139bb565b8114613e3d57600080fd5b50565b600081519050613e4f81613e29565b92915050565b600060208284031215613e6b57613e6a613c33565b5b6000613e7984828501613e40565b91505092915050565b6000819050919050565b613e9581613e82565b8114613ea057600080fd5b50565b600081519050613eb281613e8c565b92915050565b600060208284031215613ece57613ecd613c33565b5b6000613edc84828501613ea3565b91505092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613f278261392f565b810181811067ffffffffffffffff82111715613f4657613f45613eef565b5b80604052505050565b6000613f59613c29565b9050613f658282613f1e565b919050565b600067ffffffffffffffff821115613f8557613f84613eef565b5b613f8e8261392f565b9050602081019050919050565b6000613fae613fa984613f6a565b613f4f565b905082815260208101848484011115613fca57613fc9613eea565b5b613fd58482856138fc565b509392505050565b600082601f830112613ff257613ff1613ee5565b5b8151614002848260208601613f9b565b91505092915050565b60006020828403121561402157614020613c33565b5b600082015167ffffffffffffffff81111561403f5761403e613c38565b5b61404b84828501613fdd565b91505092915050565b600061405f826139bb565b9050919050565b61406f81614054565b811461407a57600080fd5b50565b60008151905061408c81614066565b92915050565b6000602082840312156140a8576140a7613c33565b5b60006140b68482850161407d565b91505092915050565b6000819050919050565b60006140e46140df6140da8461399b565b6140bf565b61399b565b9050919050565b60006140f6826140c9565b9050919050565b6000614108826140eb565b9050919050565b614118816140fd565b82525050565b6000602082019050614133600083018461410f565b92915050565b6000614144826140c9565b9050919050565b600061415682614139565b9050919050565b6141668161414b565b82525050565b6000602082019050614181600083018461415d565b92915050565b61419081613d41565b82525050565b60006020820190506141ab6000830184614187565b92915050565b6141ba816139bb565b82525050565b60006020820190506141d560008301846141b1565b92915050565b6141e481613e82565b82525050565b60006040820190506141ff60008301856141b1565b61420c60208301846141db565b9392505050565b600060608201905061422860008301866141b1565b818103602083015261423a8185613940565b9050818103604083015261424e8184613940565b9050949350505050565b6000614263826140eb565b9050919050565b61427381614258565b82525050565b600060208201905061428e600083018461426a565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600281106142d4576142d3614294565b5b50565b60008190506142e5826142c3565b919050565b60006142f5826142d7565b9050919050565b614305816142ea565b82525050565b600060608201905061432060008301866141b1565b61432d60208301856141db565b61433a60408301846142fc565b949350505050565b6002811061434f57600080fd5b50565b60008151905061436181614342565b92915050565b60006020828403121561437d5761437c613c33565b5b600061438b84828501614352565b91505092915050565b61439d81613ca2565b81146143a857600080fd5b50565b6000815190506143ba81614394565b92915050565b6000602082840312156143d6576143d5613c33565b5b60006143e4848285016143ab565b91505092915050565b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614434826143ed565b915061443f836143ed565b92508260ff03821115614455576144546143fa565b5b828201905092915050565b600061446b82613e82565b915061447683613e82565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156144af576144ae6143fa565b5b828202905092915050565b60006040820190506144cf6000830185613cac565b6144dc6020830184613cac565b9392505050565b600081519050919050565b600082825260208201905092915050565b600061450a826144e3565b61451481856144ee565b93506145248185602086016138fc565b61452d8161392f565b840191505092915050565b600060408201905061454d60008301856141b1565b818103602083015261455f81846144ff565b90509392505050565b600067ffffffffffffffff82111561458357614582613eef565b5b61458c8261392f565b9050602081019050919050565b60006145ac6145a784614568565b613f4f565b9050828152602081018484840111156145c8576145c7613eea565b5b6145d38482856138fc565b509392505050565b600082601f8301126145f0576145ef613ee5565b5b8151614600848260208601614599565b91505092915050565b60006020828403121561461f5761461e613c33565b5b600082015167ffffffffffffffff81111561463d5761463c613c38565b5b614649848285016145db565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea164736f6c634300080f000a000000000000000000000000b6046d7d6b8898d2f20c7650d6a65460b1a9cc57000000000000000000000000d9e81870e20d456e3e66ae63e50663be301113210000000000000000000000004c0309d07e89597114e9cef7af674da2a743978a000000000000000000000000e1fd34ea56979d5e6843a70f87b8970997482820000000000000000000000000ef2175aec77ff5513efca444987a633d1d84a42c0000000000000000000000001e7ba86bcc07bc3e451079e211291d6b366b23200000000000000000000000008eed6576dfdc17c7efc7b4a04556a1caf7aae0150000000000000000000000009480161d8a5387bc14c15c38eb443e26edc9261a000000000000000000000000dbaa6597a08a9835939d4023494e9e2577e17e460000000000000000000000003f91d64cb737b20887ddc5a7bf0c2c641bfb49c5000000000000000000000000c57794f2a7d41e5b69a09923a3cac84dd6161bb30000000000000000000000008acb135db549512f0360c6bf6824e76f2bbbc8cd000000000000000000000000d0172676a2ece2e5c30b70d2af2fc951661b5fa5000000000000000000000000b602bc374faa645edd9bc2a362b1435506d2d605000000000000000000000000b602bc374faa645edd9bc2a362b1435506d2d605000000000000000000000000450bc9ce97113cc4f1604a0622cbecc31ae24e7a0000000000000000000000005187cfb8b0e6daeb16f64820e909c9b66c99d94400000000000000000000000023a60eb79c5878e5580c87d7a4caa25ed7c157bf00000000000000000000000085680e75af28d56d26baa99087673a8464c57a1f0000000000000000000000001bbe0811efede0f6a040fa729bff9a4b6829778400000000000000000000000036e9cd5f0e7866c9b99474b2170c7964331803340000000000000000000000006b760cff900e7892171c2b41ddcb3363fb81b14b000000000000000000000000a9e62d1c8952b74a5d9875a30e96a35b8d5601dc0000000000000000000000000a07c0e1ca7f28278830d24235391e006e07fba200000000000000000000000004d81febd4c5335c865b53f82af7f79eb6d9eb44000000000000000000000000c741843b3b1eaf9a90316abf785858c73cf87197000000000000000000000000390e85cedfabf9a4585397dc8f34d22292f57989", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 4500000, "intent": "Deploy L2ContractsManager Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0x7c36f37e000000000000000000000000a723d436b320015ebead5e589c49e03131b80ee3", + "data": "0x7c36f37e000000000000000000000000150ac59978e761027ab0b14ac95386b6d4ab69f2", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 3000000, "intent": "L2ProxyAdmin Upgrade Predeploys", diff --git a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol index 9117301b9d7dd..924135fa9e2a1 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol @@ -224,7 +224,8 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase /// @param _anchorStateRegistry Address of the AnchorStateRegistry. function initialize( ISystemConfig _systemConfig, - IAnchorStateRegistry _anchorStateRegistry + IAnchorStateRegistry _anchorStateRegistry, + IETHLockbox _ethLockbox ) external reinitializer(initVersion()) @@ -235,6 +236,7 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase // Now perform initialization logic. systemConfig = _systemConfig; anchorStateRegistry = _anchorStateRegistry; + ethLockbox = _ethLockbox; // Assert that the lockbox state is valid. _assertValidLockboxState(); @@ -444,6 +446,73 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase finalizeWithdrawalTransactionExternalProof(_tx, msg.sender); } + event ETHMigrated(address indexed lockbox, uint256 balance); + /// @notice Migrates the total ETH balance to the ETHLockbox. + + function migrateLiquidity() public { + if (!_isUsingInterop()) revert OptimismPortal_NotUsingInterop(); + // Liquidity migration can only be triggered by the ProxyAdmin owner. + _assertOnlyProxyAdminOwner(); + + // Migrate the liquidity. + uint256 ethBalance = address(this).balance; + ethLockbox.lockETH{ value: ethBalance }(); + emit ETHMigrated(address(ethLockbox), ethBalance); + } + + error OptimismPortal_MigratingToSameRegistry(); + error OptimismPortal_NotUsingInterop(); + + event PortalMigrated( + IETHLockbox indexed oldLockbox, + IETHLockbox indexed _newLockbox, + IAnchorStateRegistry indexed oldAnchorStateRegistry, + IAnchorStateRegistry _newAnchorStateRegistry + ); + /// @notice Allows the owner of the ProxyAdmin to migrate the OptimismPortal to use a new + /// lockbox, point at a new AnchorStateRegistry, and start to use the Super Roots proof + /// method. Primarily used for OptimismPortal instances to join the interop set, but + /// can also be used to swap the proof method from Output Roots to Super Roots if the + /// provided lockbox is the same as the current one. + /// @dev It is possible to change lockboxes without migrating liquidity. This can cause one + /// of the OptimismPortal instances connected to the new lockbox to not be able to + /// unlock sufficient ETH to finalize withdrawals which would trigger reverts. To avoid + /// this issue, guarantee that this function is called atomically alongside the + /// ETHLockbox.migrateLiquidity() function within the same transaction. + /// @param _newLockbox The address of the new ETHLockbox contract. + /// @param _newAnchorStateRegistry The address of the new AnchorStateRegistry contract. + + function migrateToSuperRoots(IETHLockbox _newLockbox, IAnchorStateRegistry _newAnchorStateRegistry) external { + if (!_isUsingInterop()) revert OptimismPortal_NotUsingInterop(); + // Migration can only be triggered when the system is not paused because the migration can + // potentially unpause the system as a result of the modified ETHLockbox address. + _assertNotPaused(); + + // Migration can only be triggered by the ProxyAdmin owner. + _assertOnlyProxyAdminOwner(); + + // Chains can use this method to swap the proof method from Output Roots to Super Roots + // without joining the interop set. In this case, the old and new lockboxes will be the + // same. However, whether or not a chain is joining the interop set, all chains will need a + // new AnchorStateRegistry when migrating to Super Roots. We therefore check that the new + // AnchorStateRegistry is different than the old one to prevent this function from being + // accidentally misused. + if (anchorStateRegistry == _newAnchorStateRegistry) { + revert OptimismPortal_MigratingToSameRegistry(); + } + + // Update the ETHLockbox. + IETHLockbox oldLockbox = ethLockbox; + ethLockbox = _newLockbox; + + // Update the AnchorStateRegistry. + IAnchorStateRegistry oldAnchorStateRegistry = anchorStateRegistry; + anchorStateRegistry = _newAnchorStateRegistry; + + // Emit a PortalMigrated event. + emit PortalMigrated(oldLockbox, _newLockbox, oldAnchorStateRegistry, _newAnchorStateRegistry); + } + /// @notice Finalizes a withdrawal transaction, using an external proof submitter. /// @param _tx Withdrawal transaction to finalize. /// @param _proofSubmitter Address of the proof submitter. @@ -641,8 +710,14 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase return systemConfig.isFeatureEnabled(Features.ETH_LOCKBOX) && address(ethLockbox) != address(0); } + /// @notice Checks if the Interop feature is enabled. + /// @return bool True if the Interop feature is enabled. + function _isUsingInterop() internal view returns (bool) { + return systemConfig.isFeatureEnabled(Features.INTEROP); + } /// @notice Checks if the Custom Gas Token feature is enabled. /// @return bool True if the Custom Gas Token feature is enabled. + function _isUsingCustomGasToken() internal view returns (bool) { // NOTE: Chains are not supposed to enable Custom Gas Token (CGT) mode after initial deployment. // Enabling CGT post-deployment is strongly discouraged and may lead to unexpected behavior. @@ -656,6 +731,11 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase } } + function _assertValidInteropState() internal view { + /// interop on + /// lockbox system feature set + } + /// @notice Asserts that the ETHLockbox is set/unset correctly depending on the feature flag. function _assertValidLockboxState() internal view { if ( diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol index df0e5f9360dca..572d86a2f18fc 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol @@ -789,7 +789,7 @@ contract OPContractsManagerV2 is ISemver, OPContractsManagerUtilsCaller { address(_cts.optimismPortal), impls.optimismPortalInteropImpl, abi.encodeCall( - IOptimismPortalInterop.initialize, (_cts.systemConfig, _cts.anchorStateRegistry, _cts.ethLockbox) + IOptimismPortal.initialize, (_cts.systemConfig, _cts.anchorStateRegistry, _cts.ethLockbox) ) ); } else { @@ -797,7 +797,9 @@ contract OPContractsManagerV2 is ISemver, OPContractsManagerUtilsCaller { _cts.proxyAdmin, address(_cts.optimismPortal), impls.optimismPortalImpl, - abi.encodeCall(IOptimismPortal.initialize, (_cts.systemConfig, _cts.anchorStateRegistry)) + abi.encodeCall( + IOptimismPortal.initialize, (_cts.systemConfig, _cts.anchorStateRegistry, IETHLockbox(address(0))) + ) ); } diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index 2d30b3459208e..728e4d9ce9cfa 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -344,7 +344,7 @@ contract OptimismPortal2_Initialize_Test is OptimismPortal2_TestInit { // Call the `initialize` function vm.prank(address(proxyAdmin)); - optimismPortal2.initialize(systemConfig, anchorStateRegistry); + optimismPortal2.initialize(systemConfig, anchorStateRegistry, IETHLockbox(address(0))); } /// @notice Tests that the initialize function reverts if called by a non-proxy admin or owner. @@ -366,7 +366,7 @@ contract OptimismPortal2_Initialize_Test is OptimismPortal2_TestInit { // Call the `initialize` function with the sender vm.prank(_sender); - optimismPortal2.initialize(systemConfig, anchorStateRegistry); + optimismPortal2.initialize(systemConfig, anchorStateRegistry, IETHLockbox(address(0))); } } diff --git a/packages/contracts-bedrock/test/vendor/Initializable.t.sol b/packages/contracts-bedrock/test/vendor/Initializable.t.sol index e135a75dc9063..4a85abd465686 100644 --- a/packages/contracts-bedrock/test/vendor/Initializable.t.sol +++ b/packages/contracts-bedrock/test/vendor/Initializable.t.sol @@ -15,6 +15,7 @@ import { EIP1967Helper } from "test/mocks/EIP1967Helper.sol"; import { DevFeatures } from "src/libraries/DevFeatures.sol"; // Interfaces +import { IETHLockbox } from "interfaces/L1/IETHLockbox.sol"; import { ISystemConfig } from "interfaces/L1/ISystemConfig.sol"; import { ISuperchainConfig } from "interfaces/L1/ISuperchainConfig.sol"; import { IResourceMetering } from "interfaces/L1/IResourceMetering.sol"; @@ -151,7 +152,9 @@ contract Initializer_Test is CommonTest { InitializeableContract({ name: "OptimismPortal2Impl", target: EIP1967Helper.getImplementation(address(optimismPortal2)), - initCalldata: abi.encodeCall(optimismPortal2.initialize, (systemConfig, anchorStateRegistry)) + initCalldata: abi.encodeCall( + optimismPortal2.initialize, (systemConfig, anchorStateRegistry, IETHLockbox(address(0))) + ) }) ); // OptimismPortal2Proxy @@ -159,7 +162,9 @@ contract Initializer_Test is CommonTest { InitializeableContract({ name: "OptimismPortal2Proxy", target: address(optimismPortal2), - initCalldata: abi.encodeCall(optimismPortal2.initialize, (systemConfig, anchorStateRegistry)) + initCalldata: abi.encodeCall( + optimismPortal2.initialize, (systemConfig, anchorStateRegistry, IETHLockbox(address(0))) + ) }) ); } From af670ee3c3a10b6293b7738e74ba64efd83ea51a Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 11:47:05 -0400 Subject: [PATCH 03/34] chore: rename function to migrateToSharedDisputeGame --- .../interfaces/L1/IOptimismPortal2.sol | 11 +++++ .../interfaces/L1/IOptimismPortalInterop.sol | 2 +- .../contracts-bedrock/src/L1/ETHLockbox.sol | 2 +- .../src/L1/OptimismPortal2.sol | 47 +++++++++++++------ .../src/L1/OptimismPortalInterop.sol | 7 ++- .../L1/opcm/OPContractsManagerMigrator.sol | 2 +- .../src/L1/opcm/OPContractsManagerV2.sol | 4 +- .../test/L1/OptimismPortal2.t.sol | 35 ++++++++------ 8 files changed, 74 insertions(+), 36 deletions(-) diff --git a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol index e4da55163fdf7..c6f024b37879b 100644 --- a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol +++ b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol @@ -30,7 +30,9 @@ interface IOptimismPortal2 is IProxyAdminOwnedBase { error OptimismPortal_InvalidOutputRootProof(); error OptimismPortal_InvalidProofTimestamp(); error OptimismPortal_InvalidRootClaim(); + error OptimismPortal_MigratingToSameRegistry(); error OptimismPortal_NoReentrancy(); + error OptimismPortal_NotUsingInterop(); error OptimismPortal_ProofNotOldEnough(); error OptimismPortal_Unproven(); error OptimismPortal_InvalidLockboxState(); @@ -39,6 +41,13 @@ interface IOptimismPortal2 is IProxyAdminOwnedBase { error UnexpectedString(); event Initialized(uint8 version); + event ETHMigrated(address indexed lockbox, uint256 balance); + event PortalMigrated( + IETHLockbox indexed oldLockbox, + IETHLockbox indexed _newLockbox, + IAnchorStateRegistry indexed oldAnchorStateRegistry, + IAnchorStateRegistry _newAnchorStateRegistry + ); event TransactionDeposited(address indexed from, address indexed to, uint256 indexed version, bytes opaqueData); event WithdrawalFinalized(bytes32 indexed withdrawalHash, bool success); event WithdrawalProven(bytes32 indexed withdrawalHash, address indexed from, address indexed to); @@ -74,6 +83,8 @@ interface IOptimismPortal2 is IProxyAdminOwnedBase { function initialize(ISystemConfig _systemConfig, IAnchorStateRegistry _anchorStateRegistry, IETHLockbox _ethLockbox) external; function initVersion() external view returns (uint8); function l2Sender() external view returns (address); + function migrateLiquidity() external; + function migrateToSharedDisputeGame(IETHLockbox _newLockbox, IAnchorStateRegistry _newAnchorStateRegistry) external; function minimumGasLimit(uint64 _byteCount) external pure returns (uint64); function numProofSubmitters(bytes32 _withdrawalHash) external view returns (uint256); function params() external view returns (uint128 prevBaseFee, uint64 prevBoughtGas, uint64 prevBlockNum); // nosemgrep diff --git a/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol b/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol index 4f3917a70d228..a708cece68a0c 100644 --- a/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol +++ b/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol @@ -64,7 +64,7 @@ interface IOptimismPortalInterop is IProxyAdminOwnedBase { function disputeGameFinalityDelaySeconds() external view returns (uint256); function donateETH() external payable; function superchainConfig() external view returns (ISuperchainConfig); - function migrateToSuperRoots(IETHLockbox _newLockbox, IAnchorStateRegistry _newAnchorStateRegistry) external; + function migrateToSharedDisputeGame(IETHLockbox _newLockbox, IAnchorStateRegistry _newAnchorStateRegistry) external; function finalizeWithdrawalTransaction(Types.WithdrawalTransaction memory _tx) external; function finalizeWithdrawalTransactionExternalProof( Types.WithdrawalTransaction memory _tx, diff --git a/packages/contracts-bedrock/src/L1/ETHLockbox.sol b/packages/contracts-bedrock/src/L1/ETHLockbox.sol index 5cb777150b9f6..d1b0626aec924 100644 --- a/packages/contracts-bedrock/src/L1/ETHLockbox.sol +++ b/packages/contracts-bedrock/src/L1/ETHLockbox.sol @@ -195,7 +195,7 @@ contract ETHLockbox is ProxyAdminOwnedBase, Initializable, ReinitializableBase, } /// @notice Migrates liquidity from the current ETH lockbox to another. - /// @dev Must be called atomically with `OptimismPortal.migrateToSuperRoots()` in the same + /// @dev Must be called atomically with `OptimismPortal.migrateToSharedDisputeGame()` in the same /// transaction batch, or otherwise the OptimismPortal may not be able to unlock ETH /// from the ETHLockbox on finalized withdrawals. /// @param _lockbox The address of the ETH lockbox to migrate liquidity to. diff --git a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol index 924135fa9e2a1..b99c218189bd2 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol @@ -130,6 +130,18 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase /// @custom:spacer superRootsActive bool private spacer_63_20_1; + /// @notice Emitted when the Portal is migrated to be shared by + /// @param oldLockbox The lockbox before the migration + /// @param newLockbox The shared lockbox + /// @param oldAnchorStateRegistry The anchorStateRegistry used before the migration + /// @param newAnchorStateRegistry The anchorStateRegistry used after the migration + event PortalMigrated( + IETHLockbox indexed oldLockbox, + IETHLockbox indexed newLockbox, + IAnchorStateRegistry indexed oldAnchorStateRegistry, + IAnchorStateRegistry newAnchorStateRegistry + ); + /// @notice Emitted when a transaction is deposited from L1 to L2. The parameters of this event /// are read by the rollup node and used to derive deposit transactions on L2. /// @param from Address that triggered the deposit transaction. @@ -168,6 +180,9 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase /// @notice Thrown when the portal is paused. error OptimismPortal_CallPaused(); + event ETHMigrated(address indexed lockbox, uint256 balance); + /// @notice Migrates the total ETH balance to the ETHLockbox. + /// @notice Thrown when a CGT withdrawal is not allowed. error OptimismPortal_NotAllowedOnCGTMode(); @@ -195,9 +210,17 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase /// @notice Thrown when the root claim of a dispute game is invalid. error OptimismPortal_InvalidRootClaim(); + /// @notice Thrown when migrating to the registry that was previously + /// set on the OptimismPortal prior to the migration + error OptimismPortal_MigratingToSameRegistry(); + /// @notice Thrown when a withdrawal is being finalized by a reentrant call. error OptimismPortal_NoReentrancy(); + /// @notice Thrown when calling a function that is only available when INTEROP + /// is enabled + error OptimismPortal_NotUsingInterop(); + /// @notice Thrown when a withdrawal has not been proven for long enough. error OptimismPortal_ProofNotOldEnough(); @@ -208,9 +231,9 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase error OptimismPortal_InvalidLockboxState(); /// @notice Semantic version. - /// @custom:semver 5.3.0 + /// @custom:semver 5.4.0 function version() public pure virtual returns (string memory) { - return "5.3.0"; + return "5.4.0"; } /// @param _proofMaturityDelaySeconds The proof maturity delay in seconds. @@ -446,9 +469,6 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase finalizeWithdrawalTransactionExternalProof(_tx, msg.sender); } - event ETHMigrated(address indexed lockbox, uint256 balance); - /// @notice Migrates the total ETH balance to the ETHLockbox. - function migrateLiquidity() public { if (!_isUsingInterop()) revert OptimismPortal_NotUsingInterop(); // Liquidity migration can only be triggered by the ProxyAdmin owner. @@ -460,15 +480,6 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase emit ETHMigrated(address(ethLockbox), ethBalance); } - error OptimismPortal_MigratingToSameRegistry(); - error OptimismPortal_NotUsingInterop(); - - event PortalMigrated( - IETHLockbox indexed oldLockbox, - IETHLockbox indexed _newLockbox, - IAnchorStateRegistry indexed oldAnchorStateRegistry, - IAnchorStateRegistry _newAnchorStateRegistry - ); /// @notice Allows the owner of the ProxyAdmin to migrate the OptimismPortal to use a new /// lockbox, point at a new AnchorStateRegistry, and start to use the Super Roots proof /// method. Primarily used for OptimismPortal instances to join the interop set, but @@ -482,7 +493,12 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase /// @param _newLockbox The address of the new ETHLockbox contract. /// @param _newAnchorStateRegistry The address of the new AnchorStateRegistry contract. - function migrateToSuperRoots(IETHLockbox _newLockbox, IAnchorStateRegistry _newAnchorStateRegistry) external { + function migrateToSharedDisputeGame( + IETHLockbox _newLockbox, + IAnchorStateRegistry _newAnchorStateRegistry + ) + external + { if (!_isUsingInterop()) revert OptimismPortal_NotUsingInterop(); // Migration can only be triggered when the system is not paused because the migration can // potentially unpause the system as a result of the modified ETHLockbox address. @@ -732,6 +748,7 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase } function _assertValidInteropState() internal view { + /// TODO /// interop on /// lockbox system feature set } diff --git a/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol b/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol index fda0ae386602a..a9f3a8ad54284 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol @@ -378,7 +378,12 @@ contract OptimismPortalInterop is Initializable, ResourceMetering, Reinitializab /// ETHLockbox.migrateLiquidity() function within the same transaction. /// @param _newLockbox The address of the new ETHLockbox contract. /// @param _newAnchorStateRegistry The address of the new AnchorStateRegistry contract. - function migrateToSuperRoots(IETHLockbox _newLockbox, IAnchorStateRegistry _newAnchorStateRegistry) external { + function migrateToSharedDisputeGame( + IETHLockbox _newLockbox, + IAnchorStateRegistry _newAnchorStateRegistry + ) + external + { // Migration can only be triggered when the system is not paused because the migration can // potentially unpause the system as a result of the modified ETHLockbox address. _assertNotPaused(); diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol index d0e9e70312a2b..f7a6a727550a0 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol @@ -276,7 +276,7 @@ contract OPContractsManagerMigrator is OPContractsManagerUtilsCaller { // NOTE: This requires the portal to already be upgraded to the interop version // (OptimismPortalInterop). If the portal is not on the interop version, this call will // fail. - portal.migrateToSuperRoots(_newLockbox, _newASR); + portal.migrateToSharedDisputeGame(_newLockbox, _newASR); } /// @notice Returns the contracts container. diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol index 572d86a2f18fc..dd3cf6df931b7 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol @@ -153,9 +153,9 @@ contract OPContractsManagerV2 is ISemver, OPContractsManagerUtilsCaller { /// - Major bump: New required sequential upgrade /// - Minor bump: Replacement OPCM for same upgrade /// - Patch bump: Development changes (expected for normal dev work) - /// @custom:semver 7.0.14 + /// @custom:semver 7.1.14 function version() public pure returns (string memory) { - return "7.0.14"; + return "7.1.14"; } /// @param _standardValidator The standard validator for this OPCM release. diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index 728e4d9ce9cfa..f57406b2decd5 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -851,30 +851,30 @@ contract OptimismPortal2_MigrateLiquidity_Test is CommonTest { } } -/// @title OptimismPortal2_MigrateToSuperRoots_Test -/// @notice Test contract for OptimismPortal2 `migrateToSuperRoots` function. -contract OptimismPortal2_MigrateToSuperRoots_Test is OptimismPortal2_TestInit { +/// @title OptimismPortal2_migrateToSharedDisputeGame_Test +/// @notice Test contract for OptimismPortal2 `migrateToSharedDisputeGame` function. +contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_TestInit { function setUp() public override { super.setUp(); skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); } - /// @notice Tests that `migrateToSuperRoots` reverts if the caller is not the proxy admin + /// @notice Tests that `migrateToSharedDisputeGame` reverts if the caller is not the proxy admin /// owner. - function testFuzz_migrateToSuperRoots_notProxyAdminOwner_reverts(address _caller) external { + function testFuzz_migrateToSharedDisputeGame_notProxyAdminOwner_reverts(address _caller) external { vm.assume(_caller != optimismPortal2.proxyAdminOwner()); vm.expectRevert(IProxyAdminOwnedBase.ProxyAdminOwnedBase_NotProxyAdminOwner.selector); vm.prank(_caller); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSuperRoots( + IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( IETHLockbox(address(1)), IAnchorStateRegistry(address(1)) ); } - /// @notice Tests that `migrateToSuperRoots` reverts if the new registry is the same as the + /// @notice Tests that `migrateToSharedDisputeGame` reverts if the new registry is the same as the /// current one. /// @param _newLockbox The new ETHLockbox to migrate to. - function testFuzz_migrateToSuperRoots_usingSameRegistry_reverts(address _newLockbox) external { + function testFuzz_migrateToSharedDisputeGame_usingSameRegistry_reverts(address _newLockbox) external { vm.assume(_newLockbox != address(optimismPortal2.ethLockbox())); // Use the same registry as the current one. @@ -886,16 +886,21 @@ contract OptimismPortal2_MigrateToSuperRoots_Test is OptimismPortal2_TestInit { // Expect the migration to revert. vm.expectRevert(IOptimismPortalInterop.OptimismPortal_MigratingToSameRegistry.selector); vm.prank(caller); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSuperRoots( + IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( IETHLockbox(_newLockbox), newAnchorStateRegistry ); } - /// @notice Tests that `migrateToSuperRoots` updates the ETHLockbox contract, updates the + /// @notice Tests that `migrateToSharedDisputeGame` updates the ETHLockbox contract, updates the /// AnchorStateRegistry, and sets the superRootsActive flag to true. /// @param _newLockbox The new ETHLockbox to migrate to. /// @param _newAnchorStateRegistry The new AnchorStateRegistry to migrate to. - function testFuzz_migrateToSuperRoots_succeeds(address _newLockbox, address _newAnchorStateRegistry) external { + function testFuzz_migrateToSharedDisputeGame_succeeds( + address _newLockbox, + address _newAnchorStateRegistry + ) + external + { address oldLockbox = address(optimismPortal2.ethLockbox()); address oldAnchorStateRegistry = address(optimismPortal2.anchorStateRegistry()); vm.assume(_newLockbox != oldLockbox); @@ -905,7 +910,7 @@ contract OptimismPortal2_MigrateToSuperRoots_Test is OptimismPortal2_TestInit { emit PortalMigrated(oldLockbox, _newLockbox, oldAnchorStateRegistry, _newAnchorStateRegistry); vm.prank(optimismPortal2.proxyAdminOwner()); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSuperRoots( + IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( IETHLockbox(_newLockbox), IAnchorStateRegistry(_newAnchorStateRegistry) ); @@ -914,8 +919,8 @@ contract OptimismPortal2_MigrateToSuperRoots_Test is OptimismPortal2_TestInit { assertTrue(IOptimismPortalInterop(payable(optimismPortal2)).superRootsActive()); } - /// @notice Tests that `migrateToSuperRoots` reverts when the system is paused. - function test_migrateToSuperRoots_paused_reverts() external { + /// @notice Tests that `migrateToSharedDisputeGame` reverts when the system is paused. + function test_migrateToSharedDisputeGame_paused_reverts() external { vm.startPrank(optimismPortal2.guardian()); systemConfig.superchainConfig().pause(address(0)); vm.stopPrank(); @@ -923,7 +928,7 @@ contract OptimismPortal2_MigrateToSuperRoots_Test is OptimismPortal2_TestInit { address caller = optimismPortal2.proxyAdminOwner(); vm.expectRevert(IOptimismPortal.OptimismPortal_CallPaused.selector); vm.prank(caller); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSuperRoots( + IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( IETHLockbox(address(1)), IAnchorStateRegistry(address(1)) ); } From c983af263b0c4c5c5cad933db3f4d00a2f068401 Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 11:55:23 -0400 Subject: [PATCH 04/34] chore: bump snapshots --- .../snapshots/abi/OptimismPortal2.json | 6 +- .../snapshots/abi/OptimismPortalInterop.json | 2 +- .../snapshots/semver-lock.json | 14 ++-- .../upgrades/current-upgrade-bundle.json | 64 +++++++++---------- 4 files changed, 43 insertions(+), 43 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json index e8ec4f27d32e3..7cf48deab9fb3 100644 --- a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json +++ b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json @@ -339,7 +339,7 @@ "type": "address" } ], - "name": "migrateToSuperRoots", + "name": "migrateToSharedDisputeGame", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -701,7 +701,7 @@ { "indexed": true, "internalType": "contract IETHLockbox", - "name": "_newLockbox", + "name": "newLockbox", "type": "address" }, { @@ -713,7 +713,7 @@ { "indexed": false, "internalType": "contract IAnchorStateRegistry", - "name": "_newAnchorStateRegistry", + "name": "newAnchorStateRegistry", "type": "address" } ], diff --git a/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json b/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json index 88c5cce91cfa0..3f3066c5a8986 100644 --- a/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json +++ b/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json @@ -339,7 +339,7 @@ "type": "address" } ], - "name": "migrateToSuperRoots", + "name": "migrateToSharedDisputeGame", "outputs": [], "stateMutability": "nonpayable", "type": "function" diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 1eca1e81bf49b..f8478d3a3cae4 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -5,7 +5,7 @@ }, "src/L1/ETHLockbox.sol:ETHLockbox": { "initCodeHash": "0x781079a80d379658eb4553622a9da86f7532ffa424f1e8957a82680ee9435f66", - "sourceCodeHash": "0xf4d9f6adc3d99d65b70df3255976980d36d37f8a4514ecc24d786dd03efdb7be" + "sourceCodeHash": "0xba51f26758bf13f7c1029d154fa5e5afd06a2163563ded84cd3ef883b658d646" }, "src/L1/FeesDepositor.sol:FeesDepositor": { "initCodeHash": "0xe2ca240d728f711df438b7aeb3589c95ad11a97d742539a692ddafaf1365eb54", @@ -28,12 +28,12 @@ "sourceCodeHash": "0x7c0cb663f82b07da8dec8a7497cf2fa56a335fb5bdc57b612c86462f8527d4d5" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { - "initCodeHash": "0x874466f8cb6b49a464822a05733817aa21b205b590a23a25779b7e16d2a46f73", - "sourceCodeHash": "0xb5169dc246427c1c2cdba530c479bb0ec89b5cc875c98bcffe4bd63a222d5c72" + "initCodeHash": "0x2a6f3998d47c52ecdb0c08dbe2290b5e1b05670339bddb23f3eb43ea1912aefb", + "sourceCodeHash": "0x3a37d410bb549ca16030a7dfcc6cdf70d852e22b53542d4d6487226c9925bc8f" }, "src/L1/OptimismPortalInterop.sol:OptimismPortalInterop": { - "initCodeHash": "0xbafd0b80deb0a834335052e32a4199a96121148d9bda05acb62535ac18bd9909", - "sourceCodeHash": "0x24373f3fd28c5c6ae93cc32e2a213bb47458bc0f36e81b2a7b20a7b6b0a97119" + "initCodeHash": "0x2a1bc53cca19588227849173d58ac2d1b85681ea1cde5b429077bd94ee745979", + "sourceCodeHash": "0x14cdbcb9bf42b67b9ca4fb89e7c43c97e421930db42d6037d7a780aeff6c067a" }, "src/L1/ProtocolVersions.sol:ProtocolVersions": { "initCodeHash": "0xcb59ad9a5ec2a0831b7f4daa74bdacba82ffa03035dafb499a732c641e017f4e", @@ -48,8 +48,8 @@ "sourceCodeHash": "0xb09cb2f7cbde8585fad5c5beb6811fa9044b156b4203da8005d3f6a7a68c30b2" }, "src/L1/opcm/OPContractsManagerV2.sol:OPContractsManagerV2": { - "initCodeHash": "0x535c0d6ae6d71675370ebdd8c8f63467b3fb5411347d5bd45916d91368c04c42", - "sourceCodeHash": "0xffa5d450e57e09e5afc72b4cf934999aad470866566fe24950893346b89f4bdc" + "initCodeHash": "0xd87b10a36b6e7a69fac4199651d118ca7841d1175faa0e954ade9f8b65577aa5", + "sourceCodeHash": "0x4bf8f8913b8a41fb064fff583078ded238035312116066e568794022b48d18d1" }, "src/L2/BaseFeeVault.sol:BaseFeeVault": { "initCodeHash": "0xf1fb169c6dd4eceb5cec6ed6dfa3affc45970e5a01e00827d06af1f9e8df026d", diff --git a/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json b/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json index 81a472908b490..9a75d36666995 100644 --- a/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json +++ b/packages/contracts-bedrock/snapshots/upgrades/current-upgrade-bundle.json @@ -4,224 +4,224 @@ }, "transactions": [ { - "data": "0x9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4608060405234801561001057600080fd5b50610949806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610064578063e0145f5c14610094575b600080fd5b61004e6100b2565b60405161005b91906103ec565b60405180910390f35b61007e6004803603810190610079919061058d565b6100eb565b60405161008b919061062a565b60405180910390f35b61009c610337565b6040516100a9919061062a565b60405180910390f35b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60008082805190602001209050600060ff60f81b734e59b44847b379578588920ca78fbf26c0b4956c8684604051602001610129949392919061070d565b6040516020818303038152906040528051906020012060001c905060008173ffffffffffffffffffffffffffffffffffffffff163b146101b0578073ffffffffffffffffffffffffffffffffffffffff167ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b60405160405180910390a28092505050610331565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff1687876040516020016101f19291906107a2565b60405160208183030381529060405260405161020d91906107ca565b6000604051808303816000865af19150503d806000811461024a576040519150601f19603f3d011682016040523d82523d6000602084013e61024f565b606091505b50915091508061025e9061083f565b60601c945081158061029c57508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156102de57806040517fcb0fc6f70000000000000000000000000000000000000000000000000000000081526004016102d591906108f0565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d2886040516103249190610921565b60405180910390a2505050505b92915050565b6000734e59b44847b379578588920ca78fbf26c0b4956c905090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561038d578082015181840152602081019050610372565b8381111561039c576000848401525b50505050565b6000601f19601f8301169050919050565b60006103be82610353565b6103c8818561035e565b93506103d881856020860161036f565b6103e1816103a2565b840191505092915050565b6000602082019050818103600083015261040681846103b3565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61043581610422565b811461044057600080fd5b50565b6000813590506104528161042c565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61049a826103a2565b810181811067ffffffffffffffff821117156104b9576104b8610462565b5b80604052505050565b60006104cc61040e565b90506104d88282610491565b919050565b600067ffffffffffffffff8211156104f8576104f7610462565b5b610501826103a2565b9050602081019050919050565b82818337600083830152505050565b600061053061052b846104dd565b6104c2565b90508281526020810184848401111561054c5761054b61045d565b5b61055784828561050e565b509392505050565b600082601f83011261057457610573610458565b5b813561058484826020860161051d565b91505092915050565b600080604083850312156105a4576105a3610418565b5b60006105b285828601610443565b925050602083013567ffffffffffffffff8111156105d3576105d261041d565b5b6105df8582860161055f565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610614826105e9565b9050919050565b61062481610609565b82525050565b600060208201905061063f600083018461061b565b92915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6000819050919050565b61068c61068782610645565b610671565b82525050565b600061069d826105e9565b9050919050565b60008160601b9050919050565b60006106bc826106a4565b9050919050565b60006106ce826106b1565b9050919050565b6106e66106e182610692565b6106c3565b82525050565b6000819050919050565b61070761070282610422565b6106ec565b82525050565b6000610719828761067b565b60018201915061072982866106d5565b60148201915061073982856106f6565b60208201915061074982846106f6565b60208201915081905095945050505050565b600081519050919050565b600081905092915050565b600061077c8261075b565b6107868185610766565b935061079681856020860161036f565b80840191505092915050565b60006107ae82856106f6565b6020820191506107be8284610771565b91508190509392505050565b60006107d68284610771565b915081905092915050565b6000819050602082019050919050565b60007fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082169050919050565b600061082982516107f1565b80915050919050565b600082821b905092915050565b600061084a8261075b565b82610854846107e1565b905061085f8161081d565b9250601482101561089f5761089a7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083601403600802610832565b831692505b5050919050565b600082825260208201905092915050565b60006108c28261075b565b6108cc81856108a6565b93506108dc81856020860161036f565b6108e5816103a2565b840191505092915050565b6000602082019050818103600083015261090a81846108b7565b905092915050565b61091b81610422565b82525050565b60006020820190506109366000830184610912565b9291505056fea164736f6c634300080f000a", + "data": "0x9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4608060405234801561001057600080fd5b506105b8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610098578063e0145f5c146100d0575b600080fd5b6100826040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f91906103f7565b60405180910390f35b6100ab6100a6366004610440565b6100ea565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008f565b734e59b44847b379578588920ca78fbf26c0b4956c6100ab565b8051602080830191909120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527f4e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000602182015260358101869052605580820184905282518083039091018152607590910190915280519201919091206000919073ffffffffffffffffffffffffffffffffffffffff81163b156101d85760405173ffffffffffffffffffffffffffffffffffffffff8216907ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b90600090a291506103779050565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff168787604051602001610219929190610519565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290526102519161053f565b6000604051808303816000865af19150503d806000811461028e576040519150601f19603f3d011682016040523d82523d6000602084013e610293565b606091505b5091509150806102a29061055b565b60601c94508115806102e057508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561032257806040517fcb0fc6f700000000000000000000000000000000000000000000000000000000815260040161031991906103f7565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d28860405161036a91815260200190565b60405180910390a2505050505b92915050565b60005b83811015610398578181015183820152602001610380565b838111156103a7576000848401525b50505050565b600081518084526103c581602086016020860161037d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061040a60208301846103ad565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806040838503121561045357600080fd5b82359150602083013567ffffffffffffffff8082111561047257600080fd5b818501915085601f83011261048657600080fd5b81358181111561049857610498610411565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156104de576104de610411565b816040528281528860208487010111156104f757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b8281526000825161053181602085016020870161037d565b919091016020019392505050565b6000825161055181846020870161037d565b9190910192915050565b6000815160208301517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000808216935060148310156105a35780818460140360031b1b83161693505b50505091905056fea164736f6c634300080f000a", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 600000, "intent": "ConditionalDeployer Deployment", "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C" }, { - "data": "0x3659cfe6000000000000000000000000c741843b3b1eaf9a90316abf785858c73cf87197", + "data": "0x3659cfe6000000000000000000000000906835344844979ffd3a752eaa23728d513db00b", "from": "0x0000000000000000000000000000000000000000", "gasLimit": 50000, "intent": "Upgrade ConditionalDeployer Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000088d608060405234801561001057600080fd5b5061086d806100206000396000f3fe608060405234801561001057600080fd5b506004361061008e5760003560e01c80630528afe21461009357806321f8a721146100af5780634e91db08146100df57806354fd4d50146100fb5780637ae1cfca14610119578063a6ed563e14610149578063abfdcced14610179578063bd02d0f514610195578063ca446dd9146101c5578063e2a4853a146101e1575b600080fd5b6100ad60048036038101906100a891906103db565b6101fd565b005b6100c960048036038101906100c4919061045e565b61026b565b6040516100d691906104cc565b60405180910390f35b6100f960048036038101906100f491906104e7565b61027d565b005b61010361028b565b60405161011091906105c0565b60405180910390f35b610133600480360381019061012e919061045e565b6102c4565b60405161014091906105fd565b60405180910390f35b610163600480360381019061015e919061045e565b6102d6565b6040516101709190610627565b60405180910390f35b610193600480360381019061018e919061066e565b6102e8565b005b6101af60048036038101906101aa919061045e565b6102f6565b6040516101bc91906106c7565b60405180910390f35b6101df60048036038101906101da919061070e565b610308565b005b6101fb60048036038101906101f6919061077a565b610316565b005b600082829050905060005b8181101561026557610252848483818110610226576102256107ba565b5b90506040020160000135858584818110610243576102426107ba565b5b90506040020160200135610324565b808061025d90610818565b915050610208565b50505050565b60006102768261032b565b9050919050565b6102878282610324565b5050565b6040518060400160405280600581526020017f312e322e3200000000000000000000000000000000000000000000000000000081525081565b60006102cf82610336565b9050919050565b60006102e182610341565b9050919050565b6102f2828261034c565b5050565b600061030182610353565b9050919050565b610312828261035e565b5050565b6103208282610365565b5050565b8082555050565b600081549050919050565b600081549050919050565b600081549050919050565b8082555050565b600081549050919050565b8082555050565b8082555050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261039b5761039a610376565b5b8235905067ffffffffffffffff8111156103b8576103b761037b565b5b6020830191508360408202830111156103d4576103d3610380565b5b9250929050565b600080602083850312156103f2576103f161036c565b5b600083013567ffffffffffffffff8111156104105761040f610371565b5b61041c85828601610385565b92509250509250929050565b6000819050919050565b61043b81610428565b811461044657600080fd5b50565b60008135905061045881610432565b92915050565b6000602082840312156104745761047361036c565b5b600061048284828501610449565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006104b68261048b565b9050919050565b6104c6816104ab565b82525050565b60006020820190506104e160008301846104bd565b92915050565b600080604083850312156104fe576104fd61036c565b5b600061050c85828601610449565b925050602061051d85828601610449565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610561578082015181840152602081019050610546565b83811115610570576000848401525b50505050565b6000601f19601f8301169050919050565b600061059282610527565b61059c8185610532565b93506105ac818560208601610543565b6105b581610576565b840191505092915050565b600060208201905081810360008301526105da8184610587565b905092915050565b60008115159050919050565b6105f7816105e2565b82525050565b600060208201905061061260008301846105ee565b92915050565b61062181610428565b82525050565b600060208201905061063c6000830184610618565b92915050565b61064b816105e2565b811461065657600080fd5b50565b60008135905061066881610642565b92915050565b600080604083850312156106855761068461036c565b5b600061069385828601610449565b92505060206106a485828601610659565b9150509250929050565b6000819050919050565b6106c1816106ae565b82525050565b60006020820190506106dc60008301846106b8565b92915050565b6106eb816104ab565b81146106f657600080fd5b50565b600081359050610708816106e2565b92915050565b600080604083850312156107255761072461036c565b5b600061073385828601610449565b9250506020610744858286016106f9565b9150509250929050565b610757816106ae565b811461076257600080fd5b50565b6000813590506107748161074e565b92915050565b600080604083850312156107915761079061036c565b5b600061079f85828601610449565b92505060206107b085828601610765565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610823826106ae565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610855576108546107e9565b5b60018201905091905056fea164736f6c634300080f000a00000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000048a608060405234801561001057600080fd5b5061046a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a6ed563e11610076578063bd02d0f51161005b578063bd02d0f51461018e578063ca446dd9146101b8578063e2a4853a1461011557600080fd5b8063a6ed563e1461018e578063abfdcced146101aa57600080fd5b80634e91db08116100a75780634e91db081461011557806354fd4d50146101275780637ae1cfca1461017057600080fd5b80630528afe2146100c357806321f8a721146100d8575b600080fd5b6100d66100d1366004610239565b6101c6565b005b6100eb6100e63660046102ae565b610229565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6100d66101233660046102c7565b9055565b6101636040518060400160405280600581526020017f312e322e3200000000000000000000000000000000000000000000000000000081525081565b60405161010c91906102e9565b61017e6100e63660046102ae565b604051901515815260200161010c565b61019c6100e63660046102ae565b60405190815260200161010c565b6100d661012336600461035c565b6100d6610123366004610391565b8060005b81811015610223576102118484838181106101e7576101e76103cf565b90506040020160000135858584818110610203576102036103cf565b905060400201602001359055565b8061021b816103fe565b9150506101ca565b50505050565b6000610233825490565b92915050565b6000806020838503121561024c57600080fd5b823567ffffffffffffffff8082111561026457600080fd5b818501915085601f83011261027857600080fd5b81358181111561028757600080fd5b8660208260061b850101111561029c57600080fd5b60209290920196919550909350505050565b6000602082840312156102c057600080fd5b5035919050565b600080604083850312156102da57600080fd5b50508035926020909101359150565b600060208083528351808285015260005b81811015610316578581018301518582016040015282016102fa565b81811115610328576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b6000806040838503121561036f57600080fd5b823591506020830135801515811461038657600080fd5b809150509250929050565b600080604083850312156103a457600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811461038657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610456577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea164736f6c634300080f000a00000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 500000, "intent": "Deploy StorageSetter Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000313760806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d6565b600060159054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000179565b60405180910390fd5b60ff8016600060149054906101000a900460ff1660ff161015620000f05760ff600060146101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e79190620001b9565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b600062000161602783620000f2565b91506200016e8262000103565b604082019050919050565b60006020820190508181036000830152620001948162000152565b9050919050565b600060ff82169050919050565b620001b3816200019b565b82525050565b6000602082019050620001d06000830184620001a8565b92915050565b612f5180620001e66000396000f3fe6080604052600436106101315760003560e01c8063028f85f7146101365780630c568498146101615780632828d7e81461018c5780632f7d3922146101b75780633dbb202b146101e25780633e47158c146101fe5780633f827a5a146102295780634c1d6a691461025457806354fd4d501461027f5780635644cfdf146102aa5780635c975abb146102d55780636e296e451461030057806383a740741461032b5780638cbeeef2146103565780639fce812c14610381578063a4e7f8bd146103ac578063a7119869146103e9578063b1b1b20914610414578063b28ade2514610451578063c4d66de81461048e578063d764ad0b146104b7578063dad544e0146104d3578063db505d80146104fe578063ddd5a40f14610529578063e46e245a14610554578063ecc704281461057f575b600080fd5b34801561014257600080fd5b5061014b6105aa565b6040516101589190611c11565b60405180910390f35b34801561016d57600080fd5b506101766105af565b6040516101839190611c11565b60405180910390f35b34801561019857600080fd5b506101a16105b4565b6040516101ae9190611c11565b60405180910390f35b3480156101c357600080fd5b506101cc6105b9565b6040516101d99190611c11565b60405180910390f35b6101fc60048036038101906101f79190611d3f565b6105bf565b005b34801561020a57600080fd5b506102136107f7565b6040516102209190611e12565b60405180910390f35b34801561023557600080fd5b5061023e610a50565b60405161024b9190611e4a565b60405180910390f35b34801561026057600080fd5b50610269610a55565b6040516102769190611c11565b60405180910390f35b34801561028b57600080fd5b50610294610a5b565b6040516102a19190611efe565b60405180910390f35b3480156102b657600080fd5b506102bf610a94565b6040516102cc9190611c11565b60405180910390f35b3480156102e157600080fd5b506102ea610a9a565b6040516102f79190611f3b565b60405180910390f35b34801561030c57600080fd5b50610315610a9f565b6040516103229190611f65565b60405180910390f35b34801561033757600080fd5b50610340610b5b565b60405161034d9190611c11565b60405180910390f35b34801561036257600080fd5b5061036b610b62565b6040516103789190611c11565b60405180910390f35b34801561038d57600080fd5b50610396610b68565b6040516103a39190611fa1565b60405180910390f35b3480156103b857600080fd5b506103d360048036038101906103ce9190611ff2565b610b92565b6040516103e09190611f3b565b60405180910390f35b3480156103f557600080fd5b506103fe610bb2565b60405161040b9190611fa1565b60405180910390f35b34801561042057600080fd5b5061043b60048036038101906104369190611ff2565b610bdc565b6040516104489190611f3b565b60405180910390f35b34801561045d57600080fd5b506104786004803603810190610473919061214f565b610bfc565b6040516104859190611c11565b60405180910390f35b34801561049a57600080fd5b506104b560048036038101906104b091906121e9565b610cc8565b005b6104d160048036038101906104cc919061224c565b610e15565b005b3480156104df57600080fd5b506104e8611533565b6040516104f59190611f65565b60405180910390f35b34801561050a57600080fd5b506105136115b0565b6040516105209190611fa1565b60405180910390f35b34801561053557600080fd5b5061053e6115d6565b60405161054b9190611c11565b60405180910390f35b34801561056057600080fd5b506105696115dc565b6040516105769190611c11565b60405180910390f35b34801561058b57600080fd5b506105946115e1565b6040516105a1919061230a565b60405180910390f35b601081565b603f81565b604081565b61520881565b6106c260cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661063385858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505084610bfc565b3463d764ad0b60e01b6106446115e1565b338a34898c8c6040516024016106609796959493929190612372565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061161f565b8373ffffffffffffffffffffffffffffffffffffffff167fcb0f7ffd78f9aee47a248fae8db181db6eee833039123e026dcbff529522e52a3385856107056115e1565b8660405161071795949392919061240d565b60405180910390a23373ffffffffffffffffffffffffffffffffffffffff167f8ebb2ec2465bdb2a06a66fc37a0963af8a2a6a1479d81d56fdb8cbb98096d54634604051610765919061230a565b60405180910390a260cd600081819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660010191906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505050565b6000806108267fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b6116a9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108655780915050610a4d565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516108a8919061248a565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b6109023060006040516020016108e79291906124e4565b604051602081830303815290604052805190602001206116b4565b14610939576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061096d3060016040516020016109529291906124e4565b604051602081830303815290604052805190602001206116a9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610a1b578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a129190612522565b92505050610a4d565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b600181565b619c4081565b6040518060400160405280600581526020017f322e322e3100000000000000000000000000000000000000000000000000000081525081565b61138881565b600090565b600061dead73ffffffffffffffffffffffffffffffffffffffff1660cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610b33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2a906125c1565b60405180910390fd5b60cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b62030d4081565b619c4081565b600060cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60ce6020528060005260406000206000915054906101000a900460ff1681565b600060cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60cb6020528060005260406000206000915054906101000a900460ff1681565b600080603f60408463ffffffff16610c1491906125e1565b610c1e9190612652565b611388619c408062030d40610c339190612683565b610c3d9190612683565b610c479190612683565b610c519190612683565b9050600061010467ffffffffffffffff168551610c6e91906126c1565b9050610cb1601082610c8091906125e1565b83610c8b9190612683565b67ffffffffffffffff16602883610ca291906125e1565b67ffffffffffffffff166116bf565b615208610cbe9190612683565b9250505092915050565b60008060159054906101000a900460ff16159050808015610cfb57506001600060149054906101000a900460ff1660ff16105b80610d2a5750610d0a306116d9565b158015610d2957506001600060149054906101000a900460ff1660ff16145b5b610d69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6090612789565b60405180910390fd5b6001600060146101000a81548160ff021916908360ff1602179055508015610da7576001600060156101000a81548160ff0219169083151502179055505b610daf6116fc565b610db8826117ab565b8015610e115760008060156101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610e0891906127f1565b60405180910390a15b5050565b60001515610e21610a9a565b151514610e63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5a90612858565b60405180910390fd5b6000610e6e886118d8565b91505060028161ffff1610610eb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eaf90612910565b60405180910390fd5b60008161ffff1603610f81576000610f16878986868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508c611914565b90506000151560cb600083815260200190815260200160002060009054906101000a900460ff16151514610f7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f76906129a2565b60405180910390fd5b505b6000610fd5898989898989898080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611933565b9050610fdf611956565b1561102857853414610ff457610ff36129c2565b5b60ce600082815260200190815260200160002060009054906101000a900460ff1615611023576110226129c2565b5b6110cc565b6000341461106b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106290612a89565b60405180910390fd5b60ce600082815260200190815260200160002060009054906101000a900460ff166110cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c290612b1b565b60405180910390fd5b5b600015156110d9886119b6565b15151461111b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111290612bd3565b60405180910390fd5b6000151560cb600083815260200190815260200160002060009054906101000a900460ff16151514611182576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117990612c65565b60405180910390fd5b6111a585611388619c406111969190612683565b67ffffffffffffffff16611a38565b1580611201575061dead73ffffffffffffffffffffffffffffffffffffffff1660cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156112d557600160ce600083815260200190815260200160002060006101000a81548160ff021916908315150217905550807f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f60405160405180910390a2600173ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16036112ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c590612cf7565b60405180910390fd5b505061152a565b8760cc60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600061137f88619c4067ffffffffffffffff165a6113349190612d17565b8988888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611a5a565b905061dead60cc60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550801561145d576000151560cb600084815260200190815260200160002060009054906101000a900460ff161515146113ff576113fe6129c2565b5b600160cb600084815260200190815260200160002060006101000a81548160ff021916908315150217905550817f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c60405160405180910390a2611526565b600160ce600084815260200190815260200160002060006101000a81548160ff021916908315150217905550817f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f60405160405180910390a2600173ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1603611525576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151c90612cf7565b60405180910390fd5b5b5050505b50505050505050565b600061153d6107f7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611587573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ab9190612522565b905090565b60cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61010481565b602881565b600061161a60cd60009054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001611a73565b905090565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838686856040518563ffffffff1660e01b815260040161167193929190612dc0565b6000604051808303818588803b15801561168a57600080fd5b505af115801561169e573d6000803e3d6000fd5b505050505050505050565b600081549050919050565b600081549050919050565b6000818310156116cf57816116d1565b825b905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661171b6107f7565b73ffffffffffffffffffffffffffffffffffffffff161415801561177257503373ffffffffffffffffffffffffffffffffffffffff16611759611533565b73ffffffffffffffffffffffffffffffffffffffff1614155b156117a9576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060159054906101000a900460ff166117fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f190612e70565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036118945761dead60cc60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8060cf60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000806000807dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff851691508460f01c90508181935093505050915091565b600061192285858585611a88565b805190602001209050949350505050565b6000611943878787878787611b28565b8051906020012090509695505050505050565b600060cf60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661199a33611bce565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b60003073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480611a31575073420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b600080603f83619c4001026040850201603f5a02101590508091505092915050565b6000806000835160208501868989f19050949350505050565b600080838360f01b1790508091505092915050565b606084848484604051602401611aa19493929190612e90565b6040516020818303038152906040527fcbd4ece9000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050949350505050565b6060868686868686604051602401611b4596959493929190612edc565b6040516020818303038152906040527fd764ad0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090509695505050505050565b600073111100000000000000000000000000000000111182039050919050565b600067ffffffffffffffff82169050919050565b611c0b81611bee565b82525050565b6000602082019050611c266000830184611c02565b92915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c6b82611c40565b9050919050565b611c7b81611c60565b8114611c8657600080fd5b50565b600081359050611c9881611c72565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112611cc357611cc2611c9e565b5b8235905067ffffffffffffffff811115611ce057611cdf611ca3565b5b602083019150836001820283011115611cfc57611cfb611ca8565b5b9250929050565b600063ffffffff82169050919050565b611d1c81611d03565b8114611d2757600080fd5b50565b600081359050611d3981611d13565b92915050565b60008060008060608587031215611d5957611d58611c36565b5b6000611d6787828801611c89565b945050602085013567ffffffffffffffff811115611d8857611d87611c3b565b5b611d9487828801611cad565b93509350506040611da787828801611d2a565b91505092959194509250565b6000819050919050565b6000611dd8611dd3611dce84611c40565b611db3565b611c40565b9050919050565b6000611dea82611dbd565b9050919050565b6000611dfc82611ddf565b9050919050565b611e0c81611df1565b82525050565b6000602082019050611e276000830184611e03565b92915050565b600061ffff82169050919050565b611e4481611e2d565b82525050565b6000602082019050611e5f6000830184611e3b565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e9f578082015181840152602081019050611e84565b83811115611eae576000848401525b50505050565b6000601f19601f8301169050919050565b6000611ed082611e65565b611eda8185611e70565b9350611eea818560208601611e81565b611ef381611eb4565b840191505092915050565b60006020820190508181036000830152611f188184611ec5565b905092915050565b60008115159050919050565b611f3581611f20565b82525050565b6000602082019050611f506000830184611f2c565b92915050565b611f5f81611c60565b82525050565b6000602082019050611f7a6000830184611f56565b92915050565b6000611f8b82611ddf565b9050919050565b611f9b81611f80565b82525050565b6000602082019050611fb66000830184611f92565b92915050565b6000819050919050565b611fcf81611fbc565b8114611fda57600080fd5b50565b600081359050611fec81611fc6565b92915050565b60006020828403121561200857612007611c36565b5b600061201684828501611fdd565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61205c82611eb4565b810181811067ffffffffffffffff8211171561207b5761207a612024565b5b80604052505050565b600061208e611c2c565b905061209a8282612053565b919050565b600067ffffffffffffffff8211156120ba576120b9612024565b5b6120c382611eb4565b9050602081019050919050565b82818337600083830152505050565b60006120f26120ed8461209f565b612084565b90508281526020810184848401111561210e5761210d61201f565b5b6121198482856120d0565b509392505050565b600082601f83011261213657612135611c9e565b5b81356121468482602086016120df565b91505092915050565b6000806040838503121561216657612165611c36565b5b600083013567ffffffffffffffff81111561218457612183611c3b565b5b61219085828601612121565b92505060206121a185828601611d2a565b9150509250929050565b60006121b682611c60565b9050919050565b6121c6816121ab565b81146121d157600080fd5b50565b6000813590506121e3816121bd565b92915050565b6000602082840312156121ff576121fe611c36565b5b600061220d848285016121d4565b91505092915050565b6000819050919050565b61222981612216565b811461223457600080fd5b50565b60008135905061224681612220565b92915050565b600080600080600080600060c0888a03121561226b5761226a611c36565b5b60006122798a828b01612237565b975050602061228a8a828b01611c89565b965050604061229b8a828b01611c89565b95505060606122ac8a828b01612237565b94505060806122bd8a828b01612237565b93505060a088013567ffffffffffffffff8111156122de576122dd611c3b565b5b6122ea8a828b01611cad565b925092505092959891949750929550565b61230481612216565b82525050565b600060208201905061231f60008301846122fb565b92915050565b61232e81611d03565b82525050565b600082825260208201905092915050565b60006123518385612334565b935061235e8385846120d0565b61236783611eb4565b840190509392505050565b600060c082019050612387600083018a6122fb565b6123946020830189611f56565b6123a16040830188611f56565b6123ae60608301876122fb565b6123bb6080830186612325565b81810360a08301526123ce818486612345565b905098975050505050505050565b60006123f76123f26123ed84611d03565b611db3565b612216565b9050919050565b612407816123dc565b82525050565b60006080820190506124226000830188611f56565b8181036020830152612435818688612345565b905061244460408301856122fb565b61245160608301846123fe565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061249582612216565b91506124a083612216565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156124d9576124d861245b565b5b828202905092915050565b60006040820190506124f96000830185611f56565b61250660208301846122fb565b9392505050565b60008151905061251c81611c72565b92915050565b60006020828403121561253857612537611c36565b5b60006125468482850161250d565b91505092915050565b7f43726f7373446f6d61696e4d657373656e6765723a2078446f6d61696e4d657360008201527f7361676553656e646572206973206e6f74207365740000000000000000000000602082015250565b60006125ab603583611e70565b91506125b68261254f565b604082019050919050565b600060208201905081810360008301526125da8161259e565b9050919050565b60006125ec82611bee565b91506125f783611bee565b92508167ffffffffffffffff04831182151516156126185761261761245b565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061265d82611bee565b915061266883611bee565b92508261267857612677612623565b5b828204905092915050565b600061268e82611bee565b915061269983611bee565b92508267ffffffffffffffff038211156126b6576126b561245b565b5b828201905092915050565b60006126cc82612216565b91506126d783612216565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561270c5761270b61245b565b5b828201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000612773602e83611e70565b915061277e82612717565b604082019050919050565b600060208201905081810360008301526127a281612766565b9050919050565b6000819050919050565b600060ff82169050919050565b60006127db6127d66127d1846127a9565b611db3565b6127b3565b9050919050565b6127eb816127c0565b82525050565b600060208201905061280660008301846127e2565b92915050565b7f43726f7373446f6d61696e4d657373656e6765723a2070617573656400000000600082015250565b6000612842601c83611e70565b915061284d8261280c565b602082019050919050565b6000602082019050818103600083015261287181612835565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206f6e6c7920766572736960008201527f6f6e2030206f722031206d657373616765732061726520737570706f7274656460208201527f20617420746869732074696d6500000000000000000000000000000000000000604082015250565b60006128fa604d83611e70565b915061290582612878565b606082019050919050565b60006020820190508181036000830152612929816128ed565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206c65676163792077697460008201527f6864726177616c20616c72656164792072656c61796564000000000000000000602082015250565b600061298c603783611e70565b915061299782612930565b604082019050919050565b600060208201905081810360008301526129bb8161297f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f43726f7373446f6d61696e4d657373656e6765723a2076616c7565206d75737460008201527f206265207a65726f20756e6c657373206d6573736167652069732066726f6d2060208201527f612073797374656d206164647265737300000000000000000000000000000000604082015250565b6000612a73605083611e70565b9150612a7e826129f1565b606082019050919050565b60006020820190508181036000830152612aa281612a66565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520636160008201527f6e6e6f74206265207265706c6179656400000000000000000000000000000000602082015250565b6000612b05603083611e70565b9150612b1082612aa9565b604082019050919050565b60006020820190508181036000830152612b3481612af8565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a2063616e6e6f742073656e60008201527f64206d65737361676520746f20626c6f636b65642073797374656d206164647260208201527f6573730000000000000000000000000000000000000000000000000000000000604082015250565b6000612bbd604383611e70565b9150612bc882612b3b565b606082019050919050565b60006020820190508181036000830152612bec81612bb0565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520686160008201527f7320616c7265616479206265656e2072656c6179656400000000000000000000602082015250565b6000612c4f603683611e70565b9150612c5a82612bf3565b604082019050919050565b60006020820190508181036000830152612c7e81612c42565b9050919050565b7f43726f7373446f6d61696e4d657373656e6765723a206661696c656420746f2060008201527f72656c6179206d65737361676500000000000000000000000000000000000000602082015250565b6000612ce1602d83611e70565b9150612cec82612c85565b604082019050919050565b60006020820190508181036000830152612d1081612cd4565b9050919050565b6000612d2282612216565b9150612d2d83612216565b925082821015612d4057612d3f61245b565b5b828203905092915050565b6000612d66612d61612d5c84611bee565b611db3565b612216565b9050919050565b612d7681612d4b565b82525050565b600081519050919050565b6000612d9282612d7c565b612d9c8185612334565b9350612dac818560208601611e81565b612db581611eb4565b840191505092915050565b6000606082019050612dd56000830186611f56565b612de26020830185612d6d565b8181036040830152612df48184612d87565b9050949350505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b6000612e5a602b83611e70565b9150612e6582612dfe565b604082019050919050565b60006020820190508181036000830152612e8981612e4d565b9050919050565b6000608082019050612ea56000830187611f56565b612eb26020830186611f56565b8181036040830152612ec48185612d87565b9050612ed360608301846122fb565b95945050505050565b600060c082019050612ef160008301896122fb565b612efe6020830188611f56565b612f0b6040830187611f56565b612f1860608301866122fb565b612f2560808301856122fb565b81810360a0830152612f378184612d87565b905097965050505050505056fea164736f6c634300080f000a000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000022d3608060405234801561001057600080fd5b5061001961001e565b6100eb565b600054600160a81b900460ff161561008c5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff600160a01b909104811610156100e9576000805460ff60a01b191660ff60a01b17905560405160ff81527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6121d880620000fb6000396000f3fe6080604052600436106101a15760003560e01c80638cbeeef2116100e1578063c4d66de81161008a578063db505d8011610064578063db505d8014610451578063ddd5a40f1461047e578063e46e245a14610494578063ecc70428146104a957600080fd5b8063c4d66de814610409578063d764ad0b14610429578063dad544e01461043c57600080fd5b8063a7119869116100bb578063a71198691461035e578063b1b1b209146103b9578063b28ade25146103e957600080fd5b80638cbeeef2146102905780639fce812c1461035e578063a4e7f8bd1461038957600080fd5b80633f827a5a1161014e5780635644cfdf116101285780635644cfdf146102fc5780635c975abb146103125780636e296e451461033257806383a740741461034757600080fd5b80633f827a5a146102685780634c1d6a691461029057806354fd4d50146102a657600080fd5b80632f7d39221161017f5780632f7d3922146102035780633dbb202b146102195780633e47158c1461022e57600080fd5b8063028f85f7146101a65780630c568498146101d95780632828d7e8146101ee575b600080fd5b3480156101b257600080fd5b506101bb601081565b60405167ffffffffffffffff90911681526020015b60405180910390f35b3480156101e557600080fd5b506101bb603f81565b3480156101fa57600080fd5b506101bb604081565b34801561020f57600080fd5b506101bb61520881565b61022c610227366004611bb4565b61050e565b005b34801561023a57600080fd5b506102436107a1565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d0565b34801561027457600080fd5b5061027d600181565b60405161ffff90911681526020016101d0565b34801561029c57600080fd5b506101bb619c4081565b3480156102b257600080fd5b506102ef6040518060400160405280600581526020017f322e322e3100000000000000000000000000000000000000000000000000000081525081565b6040516101d09190611c86565b34801561030857600080fd5b506101bb61138881565b34801561031e57600080fd5b5060005b60405190151581526020016101d0565b34801561033e57600080fd5b506102436109ac565b34801561035357600080fd5b506101bb62030d4081565b34801561036a57600080fd5b5060cf5473ffffffffffffffffffffffffffffffffffffffff16610243565b34801561039557600080fd5b506103226103a4366004611c99565b60ce6020526000908152604090205460ff1681565b3480156103c557600080fd5b506103226103d4366004611c99565b60cb6020526000908152604090205460ff1681565b3480156103f557600080fd5b506101bb610404366004611ce1565b610a98565b34801561041557600080fd5b5061022c610424366004611dc1565b610b59565b61022c610437366004611dde565b610d60565b34801561044857600080fd5b50610243611645565b34801561045d57600080fd5b5060cf546102439073ffffffffffffffffffffffffffffffffffffffff1681565b34801561048a57600080fd5b506101bb61010481565b3480156104a057600080fd5b506101bb602881565b3480156104b557600080fd5b5061050060cd547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b6040519081526020016101d0565b60cf54604080516020601f86018190048102820181019092528481526106769273ffffffffffffffffffffffffffffffffffffffff169161056c91908790879081908401838280828437600092019190915250879250610a98915050565b347fd764ad0b000000000000000000000000000000000000000000000000000000006105d860cd547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b338a34898c8c6040516024016105f49796959493929190611ead565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526116c2565b8373ffffffffffffffffffffffffffffffffffffffff167fcb0f7ffd78f9aee47a248fae8db181db6eee833039123e026dcbff529522e52a3385856106fb60cd547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b8660405161070d959493929190611f0c565b60405180910390a260405134815233907f8ebb2ec2465bdb2a06a66fc37a0963af8a2a6a1479d81d56fdb8cbb98096d5469060200160405180910390a2505060cd80547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808216600101167fffff0000000000000000000000000000000000000000000000000000000000009091161790555050565b6000806107cc7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107ef57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108329190611f89565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061088d906060015b604051602081830303815290604052805190602001205490565b146108c4576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091526000906108e690606001610873565b905073ffffffffffffffffffffffffffffffffffffffff81161561097a578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561094f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109739190611fc6565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60cc5460009073ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff215301610a7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f43726f7373446f6d61696e4d657373656e6765723a2078446f6d61696e4d657360448201527f7361676553656e646572206973206e6f7420736574000000000000000000000060648201526084015b60405180910390fd5b5060cc5473ffffffffffffffffffffffffffffffffffffffff1690565b600080603f610aae604063ffffffff8616611fe3565b610ab89190612013565b611388619c40610acb8162030d40612061565b610ad59190612061565b610adf9190612061565b610ae99190612061565b9050600061010467ffffffffffffffff168551610b06919061208d565b9050610b44610b16601083611fe3565b610b209084612061565b67ffffffffffffffff16610b35602884611fe3565b67ffffffffffffffff16611750565b610b5090615208612061565b95945050505050565b6000547501000000000000000000000000000000000000000000900460ff1615808015610ba4575060005460017401000000000000000000000000000000000000000090910460ff16105b80610bd65750303b158015610bd6575060005474010000000000000000000000000000000000000000900460ff166001145b610c62576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a72565b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790558015610ce857600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000001790555b610cf0611769565b610cf9826117ec565b8015610d5c57600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b60f087901c60028110610e1b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604d60248201527f43726f7373446f6d61696e4d657373656e6765723a206f6e6c7920766572736960448201527f6f6e2030206f722031206d657373616765732061726520737570706f7274656460648201527f20617420746869732074696d6500000000000000000000000000000000000000608482015260a401610a72565b8061ffff16600003610f10576000610e6c878986868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508f9250611928915050565b600081815260cb602052604090205490915060ff1615610f0e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f43726f7373446f6d61696e4d657373656e6765723a206c65676163792077697460448201527f6864726177616c20616c72656164792072656c617965640000000000000000006064820152608401610a72565b505b6000610f56898989898989898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061194792505050565b9050610f9f60cf54337fffffffffffffffffffffffffeeeeffffffffffffffffffffffffffffffffeeef0173ffffffffffffffffffffffffffffffffffffffff90811691161490565b15610fd757853414610fb357610fb36120a5565b600081815260ce602052604090205460ff1615610fd257610fd26120a5565b611129565b341561108b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152605060248201527f43726f7373446f6d61696e4d657373656e6765723a2076616c7565206d75737460448201527f206265207a65726f20756e6c657373206d6573736167652069732066726f6d2060648201527f612073797374656d206164647265737300000000000000000000000000000000608482015260a401610a72565b600081815260ce602052604090205460ff16611129576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520636160448201527f6e6e6f74206265207265706c61796564000000000000000000000000000000006064820152608401610a72565b6111328761196a565b156111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f43726f7373446f6d61696e4d657373656e6765723a2063616e6e6f742073656e60448201527f64206d65737361676520746f20626c6f636b65642073797374656d206164647260648201527f6573730000000000000000000000000000000000000000000000000000000000608482015260a401610a72565b600081815260cb602052604090205460ff1615611284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f43726f7373446f6d61696e4d657373656e6765723a206d65737361676520686160448201527f7320616c7265616479206265656e2072656c61796564000000000000000000006064820152608401610a72565b6112a585611296611388619c40612061565b67ffffffffffffffff166119bf565b15806112cb575060cc5473ffffffffffffffffffffffffffffffffffffffff1661dead14155b156113e457600081815260ce602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555182917f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f91a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff32016113dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f43726f7373446f6d61696e4d657373656e6765723a206661696c656420746f2060448201527f72656c6179206d657373616765000000000000000000000000000000000000006064820152608401610a72565b505061163c565b60cc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8a16179055600061147588619c405a61143891906120d4565b8988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506119dd92505050565b60cc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead1790559050801561152b57600082815260cb602052604090205460ff16156114c8576114c86120a5565b600082815260cb602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555183917f4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c91a2611638565b600082815260ce602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555183917f99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f91a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3201611638576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f43726f7373446f6d61696e4d657373656e6765723a206661696c656420746f2060448201527f72656c6179206d657373616765000000000000000000000000000000000000006064820152608401610a72565b5050505b50505050505050565b600061164f6107a1565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611699573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116bd9190611fc6565b905090565b6040517fc2b3e5ac0000000000000000000000000000000000000000000000000000000081527342000000000000000000000000000000000000169063c2b3e5ac908490611718908890889087906004016120eb565b6000604051808303818588803b15801561173157600080fd5b505af1158015611745573d6000803e3d6000fd5b505050505050505050565b6000818310156117605781611762565b825b9392505050565b336117726107a1565b73ffffffffffffffffffffffffffffffffffffffff16141580156117b357503361179a611645565b73ffffffffffffffffffffffffffffffffffffffff1614155b156117ea576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6000547501000000000000000000000000000000000000000000900460ff16611897576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a72565b60cc5473ffffffffffffffffffffffffffffffffffffffff166118e15760cc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001661dead1790555b60cf80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6000611936858585856119f5565b805190602001209050949350505050565b6000611957878787878787611a8e565b8051906020012090509695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82163014806119b9575073ffffffffffffffffffffffffffffffffffffffff8216734200000000000000000000000000000000000016145b92915050565b600080603f83619c4001026040850201603f5a021015949350505050565b6000806000835160208501868989f195945050505050565b606084848484604051602401611a0e949392919061212a565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fcbd4ece9000000000000000000000000000000000000000000000000000000001790529050949350505050565b6060868686868686604051602401611aab96959493929190612174565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fd764ad0b0000000000000000000000000000000000000000000000000000000017905290509695505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114611b4f57600080fd5b50565b60008083601f840112611b6457600080fd5b50813567ffffffffffffffff811115611b7c57600080fd5b602083019150836020828501011115611b9457600080fd5b9250929050565b803563ffffffff81168114611baf57600080fd5b919050565b60008060008060608587031215611bca57600080fd5b8435611bd581611b2d565b9350602085013567ffffffffffffffff811115611bf157600080fd5b611bfd87828801611b52565b9094509250611c10905060408601611b9b565b905092959194509250565b6000815180845260005b81811015611c4157602081850181015186830182015201611c25565b81811115611c53576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006117626020830184611c1b565b600060208284031215611cab57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060408385031215611cf457600080fd5b823567ffffffffffffffff80821115611d0c57600080fd5b818501915085601f830112611d2057600080fd5b813581811115611d3257611d32611cb2565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908382118183101715611d7857611d78611cb2565b81604052828152886020848701011115611d9157600080fd5b826020860160208301376000602084830101528096505050505050611db860208401611b9b565b90509250929050565b600060208284031215611dd357600080fd5b813561176281611b2d565b600080600080600080600060c0888a031215611df957600080fd5b873596506020880135611e0b81611b2d565b95506040880135611e1b81611b2d565b9450606088013593506080880135925060a088013567ffffffffffffffff811115611e4557600080fd5b611e518a828b01611b52565b989b979a50959850939692959293505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b878152600073ffffffffffffffffffffffffffffffffffffffff808916602084015280881660408401525085606083015263ffffffff8516608083015260c060a0830152611eff60c083018486611e64565b9998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff86168152608060208201526000611f3c608083018688611e64565b905083604083015263ffffffff831660608301529695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611fc157611fc1611f5a565b500290565b600060208284031215611fd857600080fd5b815161176281611b2d565b600067ffffffffffffffff8083168185168183048111821515161561200a5761200a611f5a565b02949350505050565b600067ffffffffffffffff80841680612055577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b92169190910492915050565b600067ffffffffffffffff80831681851680830382111561208457612084611f5a565b01949350505050565b600082198211156120a0576120a0611f5a565b500190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b6000828210156120e6576120e6611f5a565b500390565b73ffffffffffffffffffffffffffffffffffffffff8416815267ffffffffffffffff83166020820152606060408201526000610b506060830184611c1b565b600073ffffffffffffffffffffffffffffffffffffffff8087168352808616602084015250608060408301526121636080830185611c1b565b905082606083015295945050505050565b868152600073ffffffffffffffffffffffffffffffffffffffff808816602084015280871660408401525084606083015283608083015260c060a08301526121bf60c0830184611c1b565b9897505050505050505056fea164736f6c634300080f000a00000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 2600000, "intent": "Deploy L2CrossDomainMessenger Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000002a1f608060405234801561001057600080fd5b506129ff806100206000396000f3fe608060405234801561001057600080fd5b506004361061011d5760003560e01c80630c18c16214610122578063105d0b811461014057806322b90ab31461015e578063275aedd214610168578063291b0383146101985780632e0f2625146101a2578063313ce567146101c057806349948e0e146101de5780634ef6e2241461020e578063519b4bd31461022c57806354fd4d501461024a57806368d5dca6146102685780636ef25c3a146102865780638e98b106146102a4578063960e3a23146102ae578063b3d72079146102cc578063b54501bc146102d6578063c5985918146102f4578063de26c4a114610312578063f1c7a58b14610342578063f45e65d814610372578063f820614014610390578063fe173b97146103ae575b600080fd5b61012a6103cc565b604051610137919061184a565b60405180910390f35b6101486104a5565b6040516101559190611880565b60405180910390f35b6101666104b8565b005b610182600480360381019061017d91906118db565b6105aa565b60405161018f919061184a565b60405180910390f35b6101a0610752565b005b6101aa610896565b6040516101b7919061184a565b60405180910390f35b6101c861089b565b6040516101d5919061184a565b60405180910390f35b6101f860048036038101906101f39190611a4e565b6108a4565b604051610205919061184a565b60405180910390f35b6102166108fe565b6040516102239190611880565b60405180910390f35b61023461090f565b604051610241919061184a565b60405180910390f35b610252610999565b60405161025f9190611b1f565b60405180910390f35b6102706109d2565b60405161027d9190611b60565b60405180910390f35b61028e610a5c565b60405161029b919061184a565b60405180910390f35b6102ac610a64565b005b6102b6610ba6565b6040516102c39190611880565b60405180910390f35b6102d4610bb9565b005b6102de610cfd565b6040516102eb9190611880565b60405180910390f35b6102fc610d10565b6040516103099190611b60565b60405180910390f35b61032c60048036038101906103279190611a4e565b610d9a565b604051610339919061184a565b60405180910390f35b61035c600480360381019061035791906118db565b610eaf565b604051610369919061184a565b60405180910390f35b61037a610f4a565b604051610387919061184a565b60405180910390f35b610398611023565b6040516103a5919061184a565b60405180910390f35b6103b66110ad565b6040516103c3919061184a565b60405180910390f35b60008060009054906101000a900460ff161561041d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161041490611bed565b60405180910390fd5b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa15801561047c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104a09190611c22565b905090565b600060039054906101000a900460ff1681565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461053a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161053190611ce7565b60405180910390fd5b6000151560008054906101000a900460ff1615151461058e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058590611d79565b60405180910390fd5b60016000806101000a81548160ff021916908315150217905550565b60008060029054906101000a900460ff166105c8576000905061074d565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16634d5d9a2a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610629573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061064d9190611dc5565b63ffffffff169050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166316d3bc7f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106da9190611e32565b67ffffffffffffffff169050600060039054906101000a900460ff161561072757806064838661070a9190611e8e565b6107149190611e8e565b61071e9190611ee8565b9250505061074d565b610748620f424061073886856110b5565b6107429190611f6d565b826110d0565b925050505b919050565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107cb90612036565b60405180910390fd5b600060019054906101000a900460ff16610823576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081a906120c8565b60405180910390fd5b60001515600060029054906101000a900460ff16151514610879576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108709061215a565b60405180910390fd5b6001600060026101000a81548160ff021916908315150217905550565b600681565b60006006905090565b60008060019054906101000a900460ff16156108ca576108c3826110e6565b90506108f9565b60008054906101000a900460ff16156108ed576108e68261110d565b90506108f9565b6108f6826111ba565b90505b919050565b60008054906101000a900460ff1681565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16635cf249696040518163ffffffff1660e01b8152600401602060405180830381865afa158015610970573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109949190611c22565b905090565b6040518060400160405280600581526020017f312e362e3000000000000000000000000000000000000000000000000000000081525081565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166368d5dca66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a579190611dc5565b905090565b600048905090565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ae6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610add906121ec565b60405180910390fd5b60008054906101000a900460ff16610b33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2a9061227e565b60405180910390fd5b60001515600060019054906101000a900460ff16151514610b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8090612310565b60405180910390fd5b6001600060016101000a81548160ff021916908315150217905550565b600060019054906101000a900460ff1681565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c32906123a2565b60405180910390fd5b600060029054906101000a900460ff16610c8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8190612434565b60405180910390fd5b60001515600060039054906101000a900460ff16151514610ce0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd7906124c6565b60405180910390fd5b6001600060036101000a81548160ff021916908315150217905550565b600060029054906101000a900460ff1681565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663c59859186040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d959190611dc5565b905090565b60008060019054906101000a900460ff1615610def57620f42406010610dd46044610dc48661131b565b51610dcf9190611ee8565b611664565b610dde9190611e8e565b610de89190611f6d565b9050610eaa565b6000610dfa836116df565b905060008054906101000a900460ff1615610e185780915050610eaa565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9b9190611c22565b81610ea69190611ee8565b9150505b919050565b60008060019054906101000a900460ff16610eff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef690612558565b60405180910390fd5b6000604483610f0e9190611ee8565b90506000601060ff83610f219190611f6d565b83610f2c9190611ee8565b610f369190611ee8565b9050610f4181611790565b92505050919050565b60008060009054906101000a900460ff1615610f9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f92906125ea565b60405180910390fd5b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ffa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101e9190611c22565b905090565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663f82061406040518163ffffffff1660e01b8152600401602060405180830381865afa158015611084573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a89190611c22565b905090565b600048905090565b60008183026001838585870204148515170317905092915050565b6000818301838385011060000317905092915050565b600061110660446110f68461131b565b516111019190611ee8565b611790565b9050919050565b600080611119836116df565b9050600061112561090f565b601061112f610d10565b611139919061260a565b63ffffffff166111499190611e8e565b90506000611155611023565b61115d6109d2565b63ffffffff1661116d9190611e8e565b90506000818361117d9190611ee8565b846111889190611e8e565b90506006600a611198919061277b565b60106111a49190611e8e565b816111af9190611f6d565b945050505050919050565b6000806111c6836116df565b9050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015611229573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124d9190611c22565b61125561090f565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d89190611c22565b846112e39190611ee8565b6112ed9190611e8e565b6112f79190611e8e565b90506006600a611307919061277b565b816113129190611f6d565b92505050919050565b60606114f6565b600082825360018201905092915050565b600081518060001a8160011a60081b178160021a60101b17915050919050565b600082840393505b8381101561137f578381840151828401511860001a1502935060018101905061135b565b9392505050565b60008390505b602082106113b95782516113a1601f83611322565b5260218101905060208301925060208203915061138c565b81156113d85782516113ce6001840383611322565b5281810160010190505b9392505050565b60006001830392505b6101078210611425576114178360ff1661141260fd61140d8760081c60e00189611322565b611322565b611322565b9350610106820391506113e8565b6007821061145c576114558360ff166114506007850361144b8760081c60e00189611322565b611322565b611322565b905061147d565b61147a8360ff166114758560081c8560051b0187611322565b611322565b90505b9392505050565b8060021b6040510182815160e01c1860e01b8151188152505050565b60008160021b604051015160e01c9050919050565b6000611fff82639e3779b90260131c169050919050565b60006114ea8383036114e56114e085611333565b6114b5565b611484565b60018201905092915050565b6180003860405139618000604051016020830180600d8551820103826002015b81811015611603576000805b6001156115945761153283611333565b61153b816114b5565b611544816114a0565b8701935061155487860382611484565b8385039250858510611567575050611594565b600185019450611fff831161158d5761157f84611333565b820361158c575050611594565b5b5050611522565b8383106115a2575050611603565b600183039250858311156115c0576115bd8787888603611386565b96505b6115d4600985016003850160038501611353565b6115df8883836113df565b97506115f6866115f1888488016114cc565b6114cc565b9350839650505050611516565b506116148484858951860103611386565b9350604051945061800085018085038087526020870160005b8281101561164857808401518183015260208101905061162d565b5060008282015260208282010160405250505050505050919050565b60008082620cc39463ffffffff1661167c9190611e8e565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd76320060030b6116aa91906127d0565b9050620f424060646116bc9190612864565b8112156116d657620f424060646116d39190612864565b90505b80915050919050565b6000806000905060008351905060005b8181101561177857600060f81b85828151811061170f5761170e61297b565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036117555760048361174e9190611ee8565b9250611765565b6010836117629190611ee8565b92505b8080611770906129aa565b9150506116ef565b50610440826117879190611ee8565b92505050919050565b60008061179c83611664565b905060006117a8611023565b6117b06109d2565b63ffffffff166117c09190611e8e565b6117c861090f565b60106117d2610d10565b6117dc919061260a565b63ffffffff166117ec9190611e8e565b6117f69190611ee8565b9050600260066118069190611e8e565b600a611812919061277b565b818361181e9190611e8e565b6118289190611f6d565b92505050919050565b6000819050919050565b61184481611831565b82525050565b600060208201905061185f600083018461183b565b92915050565b60008115159050919050565b61187a81611865565b82525050565b60006020820190506118956000830184611871565b92915050565b6000604051905090565b600080fd5b600080fd5b6118b881611831565b81146118c357600080fd5b50565b6000813590506118d5816118af565b92915050565b6000602082840312156118f1576118f06118a5565b5b60006118ff848285016118c6565b91505092915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61195b82611912565b810181811067ffffffffffffffff8211171561197a57611979611923565b5b80604052505050565b600061198d61189b565b90506119998282611952565b919050565b600067ffffffffffffffff8211156119b9576119b8611923565b5b6119c282611912565b9050602081019050919050565b82818337600083830152505050565b60006119f16119ec8461199e565b611983565b905082815260208101848484011115611a0d57611a0c61190d565b5b611a188482856119cf565b509392505050565b600082601f830112611a3557611a34611908565b5b8135611a458482602086016119de565b91505092915050565b600060208284031215611a6457611a636118a5565b5b600082013567ffffffffffffffff811115611a8257611a816118aa565b5b611a8e84828501611a20565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611ad1578082015181840152602081019050611ab6565b83811115611ae0576000848401525b50505050565b6000611af182611a97565b611afb8185611aa2565b9350611b0b818560208601611ab3565b611b1481611912565b840191505092915050565b60006020820190508181036000830152611b398184611ae6565b905092915050565b600063ffffffff82169050919050565b611b5a81611b41565b82525050565b6000602082019050611b756000830184611b51565b92915050565b7f47617350726963654f7261636c653a206f76657268656164282920697320646560008201527f7072656361746564000000000000000000000000000000000000000000000000602082015250565b6000611bd7602883611aa2565b9150611be282611b7b565b604082019050919050565b60006020820190508181036000830152611c0681611bca565b9050919050565b600081519050611c1c816118af565b92915050565b600060208284031215611c3857611c376118a5565b5b6000611c4684828501611c0d565b91505092915050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e2073657420697345636f746f6e6520666c6160208201527f6700000000000000000000000000000000000000000000000000000000000000604082015250565b6000611cd1604183611aa2565b9150611cdc82611c4f565b606082019050919050565b60006020820190508181036000830152611d0081611cc4565b9050919050565b7f47617350726963654f7261636c653a2045636f746f6e6520616c72656164792060008201527f6163746976650000000000000000000000000000000000000000000000000000602082015250565b6000611d63602683611aa2565b9150611d6e82611d07565b604082019050919050565b60006020820190508181036000830152611d9281611d56565b9050919050565b611da281611b41565b8114611dad57600080fd5b50565b600081519050611dbf81611d99565b92915050565b600060208284031215611ddb57611dda6118a5565b5b6000611de984828501611db0565b91505092915050565b600067ffffffffffffffff82169050919050565b611e0f81611df2565b8114611e1a57600080fd5b50565b600081519050611e2c81611e06565b92915050565b600060208284031215611e4857611e476118a5565b5b6000611e5684828501611e1d565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611e9982611831565b9150611ea483611831565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611edd57611edc611e5f565b5b828202905092915050565b6000611ef382611831565b9150611efe83611831565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611f3357611f32611e5f565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611f7882611831565b9150611f8383611831565b925082611f9357611f92611f3e565b5b828204905092915050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e20736574206973497374686d757320666c6160208201527f6700000000000000000000000000000000000000000000000000000000000000604082015250565b6000612020604183611aa2565b915061202b82611f9e565b606082019050919050565b6000602082019050818103600083015261204f81612013565b9050919050565b7f47617350726963654f7261636c653a20497374686d75732063616e206f6e6c7960008201527f2062652061637469766174656420616674657220466a6f726400000000000000602082015250565b60006120b2603983611aa2565b91506120bd82612056565b604082019050919050565b600060208201905081810360008301526120e1816120a5565b9050919050565b7f47617350726963654f7261636c653a20497374686d757320616c72656164792060008201527f6163746976650000000000000000000000000000000000000000000000000000602082015250565b6000612144602683611aa2565b915061214f826120e8565b604082019050919050565b6000602082019050818103600083015261217381612137565b9050919050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e20736574206973466a6f726420666c616700602082015250565b60006121d6603f83611aa2565b91506121e18261217a565b604082019050919050565b60006020820190508181036000830152612205816121c9565b9050919050565b7f47617350726963654f7261636c653a20466a6f72642063616e206f6e6c79206260008201527f65206163746976617465642061667465722045636f746f6e6500000000000000602082015250565b6000612268603983611aa2565b91506122738261220c565b604082019050919050565b600060208201905081810360008301526122978161225b565b9050919050565b7f47617350726963654f7261636c653a20466a6f726420616c726561647920616360008201527f7469766500000000000000000000000000000000000000000000000000000000602082015250565b60006122fa602483611aa2565b91506123058261229e565b604082019050919050565b60006020820190508181036000830152612329816122ed565b9050919050565b7f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460008201527f6f72206163636f756e742063616e207365742069734a6f7669616e20666c6167602082015250565b600061238c604083611aa2565b915061239782612330565b604082019050919050565b600060208201905081810360008301526123bb8161237f565b9050919050565b7f47617350726963654f7261636c653a204a6f7669616e2063616e206f6e6c792060008201527f62652061637469766174656420616674657220497374686d7573000000000000602082015250565b600061241e603a83611aa2565b9150612429826123c2565b604082019050919050565b6000602082019050818103600083015261244d81612411565b9050919050565b7f47617350726963654f7261636c653a204a6f7669616e20616c7265616479206160008201527f6374697665000000000000000000000000000000000000000000000000000000602082015250565b60006124b0602583611aa2565b91506124bb82612454565b604082019050919050565b600060208201905081810360008301526124df816124a3565b9050919050565b7f47617350726963654f7261636c653a206765744c314665655570706572426f7560008201527f6e64206f6e6c7920737570706f72747320466a6f726400000000000000000000602082015250565b6000612542603683611aa2565b915061254d826124e6565b604082019050919050565b6000602082019050818103600083015261257181612535565b9050919050565b7f47617350726963654f7261636c653a207363616c61722829206973206465707260008201527f6563617465640000000000000000000000000000000000000000000000000000602082015250565b60006125d4602683611aa2565b91506125df82612578565b604082019050919050565b60006020820190508181036000830152612603816125c7565b9050919050565b600061261582611b41565b915061262083611b41565b92508163ffffffff048311821515161561263d5761263c611e5f565b5b828202905092915050565b60008160011c9050919050565b6000808291508390505b600185111561269f5780860481111561267b5761267a611e5f565b5b600185161561268a5780820291505b808102905061269885612648565b945061265f565b94509492505050565b6000826126b85760019050612774565b816126c65760009050612774565b81600181146126dc57600281146126e657612715565b6001915050612774565b60ff8411156126f8576126f7611e5f565b5b8360020a91508482111561270f5761270e611e5f565b5b50612774565b5060208310610133831016604e8410600b841016171561274a5782820a90508381111561274557612744611e5f565b5b612774565b6127578484846001612655565b9250905081840481111561276e5761276d611e5f565b5b81810290505b9392505050565b600061278682611831565b915061279183611831565b92506127be7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846126a8565b905092915050565b6000819050919050565b60006127db826127c6565b91506127e6836127c6565b9250817f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0383136000831215161561282157612820611e5f565b5b817f800000000000000000000000000000000000000000000000000000000000000003831260008312161561285957612858611e5f565b5b828201905092915050565b600061286f826127c6565b915061287a836127c6565b9250827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821160008413600084131616156128b9576128b8611e5f565b5b817f800000000000000000000000000000000000000000000000000000000000000005831260008412600084131616156128f6576128f5611e5f565b5b827f8000000000000000000000000000000000000000000000000000000000000000058212600084136000841216161561293357612932611e5f565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff05821260008412600084121616156129705761296f611e5f565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006129b582611831565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036129e7576129e6611e5f565b5b60018201905091905056fea164736f6c634300080f000a00", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001ec8608060405234801561001057600080fd5b50611ea8806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c806368d5dca6116100e3578063c59859181161008c578063f45e65d811610066578063f45e65d8146102fc578063f820614014610304578063fe173b971461029357600080fd5b8063c5985918146102ce578063de26c4a1146102d6578063f1c7a58b146102e957600080fd5b8063960e3a23116100bd578063960e3a23146102a1578063b3d72079146102b3578063b54501bc146102bb57600080fd5b806368d5dca6146102765780636ef25c3a146102935780638e98b1061461029957600080fd5b80632e0f2625116101455780634ef6e2241161011f5780634ef6e22414610218578063519b4bd31461022557806354fd4d501461022d57600080fd5b80632e0f2625146101f6578063313ce567146101fe57806349948e0e1461020557600080fd5b806322b90ab31161017657806322b90ab3146101d1578063275aedd2146101db578063291b0383146101ee57600080fd5b80630c18c16214610192578063105d0b81146101ad575b600080fd5b61019a61030c565b6040519081526020015b60405180910390f35b6000546101c1906301000000900460ff1681565b60405190151581526020016101a4565b6101d961042d565b005b61019a6101e93660046118fa565b6105b6565b6101d9610776565b61019a600681565b600661019a565b61019a610213366004611942565b61099e565b6000546101c19060ff1681565b61019a6109db565b6102696040518060400160405280600581526020017f312e362e3000000000000000000000000000000000000000000000000000000081525081565b6040516101a49190611a11565b61027e610a3c565b60405163ffffffff90911681526020016101a4565b4861019a565b6101d9610ac1565b6000546101c190610100900460ff1681565b6101d9610cbb565b6000546101c19062010000900460ff1681565b61027e610ec2565b61019a6102e4366004611942565b610f23565b61019a6102f73660046118fa565b61101d565b61019a6110f1565b61019a6111e4565b6000805460ff16156103a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f47617350726963654f7261636c653a206f76657268656164282920697320646560448201527f707265636174656400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104289190611a84565b905090565b3373deaddeaddeaddeaddeaddeaddeaddeaddead0001146104f6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e2073657420697345636f746f6e6520666c6160648201527f6700000000000000000000000000000000000000000000000000000000000000608482015260a40161039c565b60005460ff1615610589576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f47617350726963654f7261636c653a2045636f746f6e6520616c72656164792060448201527f6163746976650000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b6000805462010000900460ff166105cf57506000919050565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16634d5d9a2a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610630573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106549190611a9d565b63ffffffff169050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166316d3bc7f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e19190611ac3565b67ffffffffffffffff169050600060039054906101000a900460ff161561072a578061070d8386611b1c565b610718906064611b1c565b6107229190611b59565b949350505050565b610722620f424083860286810485148715177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01176107699190611b71565b8281019081106000031790565b3373deaddeaddeaddeaddeaddeaddeaddeaddead00011461083f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e20736574206973497374686d757320666c6160648201527f6700000000000000000000000000000000000000000000000000000000000000608482015260a40161039c565b600054610100900460ff166108d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f47617350726963654f7261636c653a20497374686d75732063616e206f6e6c7960448201527f2062652061637469766174656420616674657220466a6f726400000000000000606482015260840161039c565b60005462010000900460ff161561096f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f47617350726963654f7261636c653a20497374686d757320616c72656164792060448201527f6163746976650000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff1662010000179055565b60008054610100900460ff16156109be576109b882611245565b92915050565b60005460ff16156109d2576109b882611264565b6109b882611308565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16635cf249696040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166368d5dca66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a9d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104289190611a9d565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610b64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e20736574206973466a6f726420666c616700606482015260840161039c565b60005460ff16610bf6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f47617350726963654f7261636c653a20466a6f72642063616e206f6e6c79206260448201527f65206163746976617465642061667465722045636f746f6e6500000000000000606482015260840161039c565b600054610100900460ff1615610c8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f47617350726963654f7261636c653a20466a6f726420616c726561647920616360448201527f7469766500000000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610d6057604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f47617350726963654f7261636c653a206f6e6c7920746865206465706f73697460448201527f6f72206163636f756e742063616e207365742069734a6f7669616e20666c6167606482015260840161039c565b60005462010000900460ff16610df8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f47617350726963654f7261636c653a204a6f7669616e2063616e206f6e6c792060448201527f62652061637469766174656420616674657220497374686d7573000000000000606482015260840161039c565b6000546301000000900460ff1615610e92576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f47617350726963654f7261636c653a204a6f7669616e20616c7265616479206160448201527f6374697665000000000000000000000000000000000000000000000000000000606482015260840161039c565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff166301000000179055565b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663c59859186040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a9d573d6000803e3d6000fd5b60008054610100900460ff1615610f6a57620f4240610f55610f448461145c565b51610f50906044611b59565b611779565b610f60906010611b1c565b6109b89190611b71565b6000610f75836117d8565b60005490915060ff1615610f895792915050565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fe8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100c9190611a84565b6110169082611b59565b9392505050565b60008054610100900460ff166110b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f47617350726963654f7261636c653a206765744c314665655570706572426f7560448201527f6e64206f6e6c7920737570706f72747320466a6f726400000000000000000000606482015260840161039c565b60006110c2836044611b59565b905060006110d160ff83611b71565b6110db9083611b59565b6110e6906010611b59565b905061072281611868565b6000805460ff1615611185576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f47617350726963654f7261636c653a207363616c61722829206973206465707260448201527f6563617465640000000000000000000000000000000000000000000000000000606482015260840161039c565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663f82061406040518163ffffffff1660e01b8152600401602060405180830381865afa158015610404573d6000803e3d6000fd5b60006109b86112538361145c565b5161125f906044611b59565b611868565b600080611270836117d8565b9050600061127c6109db565b611284610ec2565b61128f906010611bac565b63ffffffff1661129f9190611b1c565b905060006112ab6111e4565b6112b3610a3c565b63ffffffff166112c39190611b1c565b905060006112d18284611b59565b6112db9085611b1c565b90506112e96006600a611cf8565b6112f4906010611b1c565b6112fe9082611b71565b9695505050505050565b600080611314836117d8565b9050600073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16639e8c49666040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b9190611a84565b6113a36109db565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff16638b239f736040518163ffffffff1660e01b8152600401602060405180830381865afa158015611402573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114269190611a84565b6114309085611b59565b61143a9190611b1c565b6114449190611b1c565b90506114526006600a611cf8565b6107229082611b71565b60606115eb565b818153600101919050565b600082840393505b838110156110165782810151828201511860001a1590930292600101611476565b825b602082106114e35782516114ae601f83611463565b52602092909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe090910190602101611499565b81156110165782516114f86001840383611463565b520160010192915050565b60006001830392505b6101078210611544576115368360ff1661153160fd6115318760081c60e00189611463565b611463565b93506101068203915061150c565b600782106115715761156a8360ff16611531600785036115318760081c60e00189611463565b9050611016565b6107228360ff166115318560081c8560051b0187611463565b6115e38282036115c76115b784600081518060001a8160011a60081b178160021a60101b17915050919050565b639e3779b90260131c611fff1690565b8060021b6040510182815160e01c1860e01b8151188152505050565b600101919050565b6180003860405139618000604051016020830180600d8551820103826002015b8181101561171e576000805b50508051604051600082901a600183901a60081b1760029290921a60101b91909117639e3779b9810260111c617ffc16909101805160e081811c878603811890911b9091189091528401908183039084841061167357506116ae565b600184019350611fff82116116a8578251600081901a600182901a60081b1760029190911a60101b1781036116a857506116ae565b50611617565b8383106116bc57505061171e565b600183039250858311156116da576116d78787888603611497565b96505b6116ee60098501600385016003850161146e565b91506116fb878284611503565b9650506117138461170e8684860161158a565b61158a565b91505080935061160b565b50506117308383848851850103611497565b925050506040519150618000820180820391508183526020830160005b8381101561176557828101518282015260200161174d565b506000920191825250602001604052919050565b60008061178983620cc394611b1c565b6117b3907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd763200611d04565b90506117c36064620f4240611d78565b8112156109b8576110166064620f4240611d78565b80516000908190815b8181101561185b578481815181106117fb576117fb611e34565b01602001517fff000000000000000000000000000000000000000000000000000000000000001660000361183b57611834600484611b59565b9250611849565b611846601084611b59565b92505b8061185381611e63565b9150506117e1565b5061072282610440611b59565b60008061187483611779565b905060006118806111e4565b611888610a3c565b63ffffffff166118989190611b1c565b6118a06109db565b6118a8610ec2565b6118b3906010611bac565b63ffffffff166118c39190611b1c565b6118cd9190611b59565b90506118db60066002611b1c565b6118e690600a611cf8565b6118f08284611b1c565b6107229190611b71565b60006020828403121561190c57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561195457600080fd5b813567ffffffffffffffff8082111561196c57600080fd5b818401915084601f83011261198057600080fd5b81358181111561199257611992611913565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156119d8576119d8611913565b816040528281528760208487010111156119f157600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208083528351808285015260005b81811015611a3e57858101830151858201604001528201611a22565b81811115611a50576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b600060208284031215611a9657600080fd5b5051919050565b600060208284031215611aaf57600080fd5b815163ffffffff8116811461101657600080fd5b600060208284031215611ad557600080fd5b815167ffffffffffffffff8116811461101657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611b5457611b54611aed565b500290565b60008219821115611b6c57611b6c611aed565b500190565b600082611ba7577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600063ffffffff80831681851681830481118215151615611bcf57611bcf611aed565b02949350505050565b600181815b80851115611c3157817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611c1757611c17611aed565b80851615611c2457918102915b93841c9390800290611bdd565b509250929050565b600082611c48575060016109b8565b81611c55575060006109b8565b8160018114611c6b5760028114611c7557611c91565b60019150506109b8565b60ff841115611c8657611c86611aed565b50506001821b6109b8565b5060208310610133831016604e8410600b8410161715611cb4575081810a6109b8565b611cbe8383611bd8565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611cf057611cf0611aed565b029392505050565b60006110168383611c39565b6000808212827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03841381151615611d3e57611d3e611aed565b827f8000000000000000000000000000000000000000000000000000000000000000038412811615611d7257611d72611aed565b50500190565b60007f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600084136000841385830485118282161615611db957611db9611aed565b7f80000000000000000000000000000000000000000000000000000000000000006000871286820588128184161615611df457611df4611aed565b60008712925087820587128484161615611e1057611e10611aed565b87850587128184161615611e2657611e26611aed565b505050929093029392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611e9457611e94611aed565b506001019056fea164736f6c634300080f000a000000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 2600000, "intent": "Deploy GasPriceOracle Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000003f3960806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b613d5680620001e36000396000f3fe6080604052600436106100e85760003560e01c80630166a07a1461016f57806309fc8843146101985780631635f5fd146101b457806332b7006d146101d057806336c717c1146101ec5780633cb747bf146102175780633e47158c14610242578063540abf731461026d57806354fd4d50146102965780635c975abb146102c15780637f46ddb2146102ec57806387087623146103175780638f601f6614610340578063927ede2d1461037d578063a3a79548146103a8578063c4d66de8146103c4578063c89701a2146103ed578063dad544e014610418578063e11013dd146104435761016a565b3661016a576100f561045f565b610134576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161012b9061283f565b60405180910390fd5b61016873deaddeaddeaddeaddeaddeaddeaddeaddead000033333462030d40604051806020016040528060008152506104e8565b005b600080fd5b34801561017b57600080fd5b5061019660048036038101906101919190612962565b6105cd565b005b6101b260048036038101906101ad9190612a4d565b6109ec565b005b6101ce60048036038101906101c99190612aad565b610a89565b005b6101ea60048036038101906101e59190612b35565b610e47565b005b3480156101f857600080fd5b50610201610ee7565b60405161020e9190612bcc565b60405180910390f35b34801561022357600080fd5b5061022c610f11565b6040516102399190612c46565b60405180910390f35b34801561024e57600080fd5b50610257610f37565b6040516102649190612c82565b60405180910390f35b34801561027957600080fd5b50610294600480360381019061028f9190612c9d565b611190565b005b3480156102a257600080fd5b506102ab6111ec565b6040516102b89190612dd4565b60405180910390f35b3480156102cd57600080fd5b506102d6611229565b6040516102e39190612e11565b60405180910390f35b3480156102f857600080fd5b5061030161122e565b60405161030e9190612e5f565b60405180910390f35b34801561032357600080fd5b5061033e60048036038101906103399190612e7a565b611258565b005b34801561034c57600080fd5b5061036760048036038101906103629190612f14565b6112fa565b6040516103749190612f63565b60405180910390f35b34801561038957600080fd5b5061039261131f565b60405161039f9190612c46565b60405180910390f35b6103c260048036038101906103bd9190612e7a565b611349565b005b3480156103d057600080fd5b506103eb60048036038101906103e69190612fce565b6113a3565b005b3480156103f957600080fd5b50610402611500565b60405161040f9190612e5f565b60405180910390f35b34801561042457600080fd5b5061042d611526565b60405161043a9190612bcc565b60405180910390f35b61045d60048036038101906104589190612ffb565b6115a3565b005b60003273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff160361049d57600190506104e5565b60173373ffffffffffffffffffffffffffffffffffffffff163b036104df57604051602081016040526020600082333c62ef0100815160e81c149150506104e4565b600090505b5b90565b73deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036105415761053c85858585856115fa565b6105c5565b60008673ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa15801561058e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b29190613084565b90506105c38782888888888861177e565b505b505050505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480156107075750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ef9190613084565b73ffffffffffffffffffffffffffffffffffffffff16145b610746576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073d90613149565b60405180910390fd5b60001515610752611229565b151514610794576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078b906131b5565b60405180910390fd5b61079d87611b09565b1561085d576107ac8787611b6d565b6107eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e29061326d565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff166340c10f1985856040518363ffffffff1660e01b815260040161082692919061328d565b600060405180830381600087803b15801561084057600080fd5b505af1158015610854573d6000803e3d6000fd5b50505050610991565b82600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546108e591906132e5565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061099084848973ffffffffffffffffffffffffffffffffffffffff16611ce89092919063ffffffff16565b5b6109e3878787878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611d6e565b50505050505050565b6109f461045f565b610a33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2a9061283f565b60405180910390fd5b610a843333348686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506115fa565b505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148015610bc35750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bab9190613084565b73ffffffffffffffffffffffffffffffffffffffff16145b610c02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf990613149565b60405180910390fd5b60001515610c0e611229565b151514610c50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c47906131b5565b60405180910390fd5b823414610c92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c899061338b565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610d00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cf79061341d565b60405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610d90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d87906134af565b60405180910390fd5b610de085858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611e04565b6000610dfd855a8660405180602001604052806000815250611eab565b905080610e3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3690613541565b60405180910390fd5b505050505050565b610e4f61045f565b610e8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e859061283f565b60405180910390fd5b610ee0853333878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506104e8565b5050505050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080610f667fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b611ec4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610fa5578091505061118d565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051610fe89190613561565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b61104230600060405160200161102792919061328d565b60405160208183030381529060405280519060200120611ecf565b14611079576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006110ad30600160405160200161109292919061328d565b60405160208183030381529060405280519060200120611ec4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461115b578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561112e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111529190613084565b9250505061118d565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6111e387873388888888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061177e565b50505050505050565b60606040518060400160405280600681526020017f312e31332e310000000000000000000000000000000000000000000000000000815250905090565b600090565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61126061045f565b61129f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112969061283f565b60405180910390fd5b6112f286863333888888888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061177e565b505050505050565b6002602052816000526040600020602052806000526040600020600091509150505481565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61139b863387878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506104e8565b505050505050565b60008060019054906101000a900460ff161590508080156113d45750600160008054906101000a900460ff1660ff16105b8061140157506113e330611eda565b1580156114005750600160008054906101000a900460ff1660ff16145b5b611440576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114379061362d565b60405180910390fd5b60016000806101000a81548160ff021916908360ff160217905550801561147d576001600060016101000a81548160ff0219169083151502179055505b611485611efd565b6114a373420000000000000000000000000000000000000783611fac565b80156114fc5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516114f39190613695565b60405180910390a15b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611530610f37565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561157a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159e9190613084565b905090565b6115f43385348686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506115fa565b50505050565b82341461163c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163390613722565b60405180910390fd5b61164885858584612081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633dbb202b84600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16631635f5fd60e01b898989886040516024016116c99493929190613797565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050866040518563ffffffff1660e01b8152600401611745939291906137f2565b6000604051808303818588803b15801561175e57600080fd5b505af1158015611772573d6000803e3d6000fd5b50505050505050505050565b600034146117c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b8906138a2565b60405180910390fd5b6117ca87611b09565b1561188a576117d98787611b6d565b611818576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180f9061326d565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff16639dc29fac86856040518363ffffffff1660e01b815260040161185392919061328d565b600060405180830381600087803b15801561186d57600080fd5b505af1158015611881573d6000803e3d6000fd5b505050506119c0565b6118b78530858a73ffffffffffffffffffffffffffffffffffffffff16612128909392919063ffffffff16565b82600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461193f91906138c2565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6119ce8787878787866121b1565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633dbb202b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16630166a07a60e01b898b8a8a8a89604051602401611a5296959493929190613918565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050856040518463ffffffff1660e01b8152600401611ace939291906137f2565b600060405180830381600087803b158015611ae857600080fd5b505af1158015611afc573d6000803e3d6000fd5b5050505050505050505050565b6000611b35827f1d1d8b6300000000000000000000000000000000000000000000000000000000612247565b80611b665750611b65827fec4fc8e300000000000000000000000000000000000000000000000000000000612247565b5b9050919050565b6000611b99837f1d1d8b6300000000000000000000000000000000000000000000000000000000612247565b15611c42578273ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa158015611be9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0d9190613084565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050611ce2565b8273ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cb19190613084565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161490505b92915050565b611d698363a9059cbb60e01b8484604051602401611d0792919061328d565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061226c565b505050565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611de693929190613980565b60405180910390a4611dfc868686868686612333565b505050505050565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611e9193929190613980565b60405180910390a4611ea5848484846123bb565b50505050565b6000806000835160208501868989f19050949350505050565b600081549050919050565b600081549050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff16611f1c610f37565b73ffffffffffffffffffffffffffffffffffffffff1614158015611f7357503373ffffffffffffffffffffffffffffffffffffffff16611f5a611526565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611faa576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060019054906101000a900460ff16611ffb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff290613a30565b60405180910390fd5b81600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161210e93929190613980565b60405180910390a461212284848484612428565b50505050565b6121ab846323b872dd60e01b85858560405160240161214993929190613a50565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061226c565b50505050565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161222993929190613980565b60405180910390a461223f868686868686612495565b505050505050565b60006122528361251d565b80156122645750612263838361256a565b5b905092915050565b60006122ce826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166126299092919063ffffffff16565b905060008151111561232e57808060200190518101906122ee9190613ab3565b61232d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232490613b52565b60405180910390fd5b5b505050565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fd59c65b35445225835c83f50b6ede06a7be047d22e357073e250d9af537518cd8686866040516123ab93929190613980565b60405180910390a4505050505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f31b2166ff604fc5672ea5df08a78081d2bc6d746cadce880747f3643d819e83d848460405161241a929190613b72565b60405180910390a350505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f2849b43074093a05396b6f2a937dee8565b15a48a7b3d4bffb732a5017380af58484604051612487929190613b72565b60405180910390a350505050565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f7ff126db8024424bbfd9826e8ab82ff59136289ea440b04b39a0df1b03b9cabf86868660405161250d93929190613980565b60405180910390a4505050505050565b6000612549827f01ffc9a70000000000000000000000000000000000000000000000000000000061256a565b801561256357506125618263ffffffff60e01b61256a565b155b9050919050565b6000806301ffc9a760e01b836040516024016125869190613bdd565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000806000602060008551602087018a617530fa92503d91506000519050828015612611575060208210155b801561261d5750600081115b94505050505092915050565b60606126388484600085612641565b90509392505050565b606082471015612686576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161267d90613c6a565b60405180910390fd5b61268f85611eda565b6126ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126c590613cd6565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516126f79190613d32565b60006040518083038185875af1925050503d8060008114612734576040519150601f19603f3d011682016040523d82523d6000602084013e612739565b606091505b5091509150612749828286612755565b92505050949350505050565b60608315612765578290506127b5565b6000835111156127785782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127ac9190612dd4565b60405180910390fd5b9392505050565b600082825260208201905092915050565b7f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60008201527f792062652063616c6c65642066726f6d20616e20454f41000000000000000000602082015250565b60006128296037836127bc565b9150612834826127cd565b604082019050919050565b600060208201905081810360008301526128588161281c565b9050919050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061289482612869565b9050919050565b6128a481612889565b81146128af57600080fd5b50565b6000813590506128c18161289b565b92915050565b6000819050919050565b6128da816128c7565b81146128e557600080fd5b50565b6000813590506128f7816128d1565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112612922576129216128fd565b5b8235905067ffffffffffffffff81111561293f5761293e612902565b5b60208301915083600182028301111561295b5761295a612907565b5b9250929050565b600080600080600080600060c0888a0312156129815761298061285f565b5b600061298f8a828b016128b2565b97505060206129a08a828b016128b2565b96505060406129b18a828b016128b2565b95505060606129c28a828b016128b2565b94505060806129d38a828b016128e8565b93505060a088013567ffffffffffffffff8111156129f4576129f3612864565b5b612a008a828b0161290c565b925092505092959891949750929550565b600063ffffffff82169050919050565b612a2a81612a11565b8114612a3557600080fd5b50565b600081359050612a4781612a21565b92915050565b600080600060408486031215612a6657612a6561285f565b5b6000612a7486828701612a38565b935050602084013567ffffffffffffffff811115612a9557612a94612864565b5b612aa18682870161290c565b92509250509250925092565b600080600080600060808688031215612ac957612ac861285f565b5b6000612ad7888289016128b2565b9550506020612ae8888289016128b2565b9450506040612af9888289016128e8565b935050606086013567ffffffffffffffff811115612b1a57612b19612864565b5b612b268882890161290c565b92509250509295509295909350565b600080600080600060808688031215612b5157612b5061285f565b5b6000612b5f888289016128b2565b9550506020612b70888289016128e8565b9450506040612b8188828901612a38565b935050606086013567ffffffffffffffff811115612ba257612ba1612864565b5b612bae8882890161290c565b92509250509295509295909350565b612bc681612889565b82525050565b6000602082019050612be16000830184612bbd565b92915050565b6000819050919050565b6000612c0c612c07612c0284612869565b612be7565b612869565b9050919050565b6000612c1e82612bf1565b9050919050565b6000612c3082612c13565b9050919050565b612c4081612c25565b82525050565b6000602082019050612c5b6000830184612c37565b92915050565b6000612c6c82612c13565b9050919050565b612c7c81612c61565b82525050565b6000602082019050612c976000830184612c73565b92915050565b600080600080600080600060c0888a031215612cbc57612cbb61285f565b5b6000612cca8a828b016128b2565b9750506020612cdb8a828b016128b2565b9650506040612cec8a828b016128b2565b9550506060612cfd8a828b016128e8565b9450506080612d0e8a828b01612a38565b93505060a088013567ffffffffffffffff811115612d2f57612d2e612864565b5b612d3b8a828b0161290c565b925092505092959891949750929550565b600081519050919050565b60005b83811015612d75578082015181840152602081019050612d5a565b83811115612d84576000848401525b50505050565b6000601f19601f8301169050919050565b6000612da682612d4c565b612db081856127bc565b9350612dc0818560208601612d57565b612dc981612d8a565b840191505092915050565b60006020820190508181036000830152612dee8184612d9b565b905092915050565b60008115159050919050565b612e0b81612df6565b82525050565b6000602082019050612e266000830184612e02565b92915050565b6000612e3782612bf1565b9050919050565b6000612e4982612e2c565b9050919050565b612e5981612e3e565b82525050565b6000602082019050612e746000830184612e50565b92915050565b60008060008060008060a08789031215612e9757612e9661285f565b5b6000612ea589828a016128b2565b9650506020612eb689828a016128b2565b9550506040612ec789828a016128e8565b9450506060612ed889828a01612a38565b935050608087013567ffffffffffffffff811115612ef957612ef8612864565b5b612f0589828a0161290c565b92509250509295509295509295565b60008060408385031215612f2b57612f2a61285f565b5b6000612f39858286016128b2565b9250506020612f4a858286016128b2565b9150509250929050565b612f5d816128c7565b82525050565b6000602082019050612f786000830184612f54565b92915050565b6000612f8982612869565b9050919050565b6000612f9b82612f7e565b9050919050565b612fab81612f90565b8114612fb657600080fd5b50565b600081359050612fc881612fa2565b92915050565b600060208284031215612fe457612fe361285f565b5b6000612ff284828501612fb9565b91505092915050565b600080600080606085870312156130155761301461285f565b5b6000613023878288016128b2565b945050602061303487828801612a38565b935050604085013567ffffffffffffffff81111561305557613054612864565b5b6130618782880161290c565b925092505092959194509250565b60008151905061307e8161289b565b92915050565b60006020828403121561309a5761309961285f565b5b60006130a88482850161306f565b91505092915050565b7f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60008201527f792062652063616c6c65642066726f6d20746865206f7468657220627269646760208201527f6500000000000000000000000000000000000000000000000000000000000000604082015250565b60006131336041836127bc565b915061313e826130b1565b606082019050919050565b6000602082019050818103600083015261316281613126565b9050919050565b7f5374616e646172644272696467653a2070617573656400000000000000000000600082015250565b600061319f6016836127bc565b91506131aa82613169565b602082019050919050565b600060208201905081810360008301526131ce81613192565b9050919050565b7f5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b60008201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c60208201527f6f63616c20746f6b656e00000000000000000000000000000000000000000000604082015250565b6000613257604a836127bc565b9150613262826131d5565b606082019050919050565b600060208201905081810360008301526132868161324a565b9050919050565b60006040820190506132a26000830185612bbd565b6132af6020830184612f54565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006132f0826128c7565b91506132fb836128c7565b92508282101561330e5761330d6132b6565b5b828203905092915050565b7f5374616e646172644272696467653a20616d6f756e742073656e7420646f657360008201527f206e6f74206d6174636820616d6f756e74207265717569726564000000000000602082015250565b6000613375603a836127bc565b915061338082613319565b604082019050919050565b600060208201905081810360008301526133a481613368565b9050919050565b7f5374616e646172644272696467653a2063616e6e6f742073656e6420746f207360008201527f656c660000000000000000000000000000000000000000000000000000000000602082015250565b60006134076023836127bc565b9150613412826133ab565b604082019050919050565b60006020820190508181036000830152613436816133fa565b9050919050565b7f5374616e646172644272696467653a2063616e6e6f742073656e6420746f206d60008201527f657373656e676572000000000000000000000000000000000000000000000000602082015250565b60006134996028836127bc565b91506134a48261343d565b604082019050919050565b600060208201905081810360008301526134c88161348c565b9050919050565b7f5374616e646172644272696467653a20455448207472616e736665722066616960008201527f6c65640000000000000000000000000000000000000000000000000000000000602082015250565b600061352b6023836127bc565b9150613536826134cf565b604082019050919050565b6000602082019050818103600083015261355a8161351e565b9050919050565b600061356c826128c7565b9150613577836128c7565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135b0576135af6132b6565b5b828202905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000613617602e836127bc565b9150613622826135bb565b604082019050919050565b600060208201905081810360008301526136468161360a565b9050919050565b6000819050919050565b600060ff82169050919050565b600061367f61367a6136758461364d565b612be7565b613657565b9050919050565b61368f81613664565b82525050565b60006020820190506136aa6000830184613686565b92915050565b7f5374616e646172644272696467653a206272696467696e6720455448206d757360008201527f7420696e636c7564652073756666696369656e74204554482076616c75650000602082015250565b600061370c603e836127bc565b9150613717826136b0565b604082019050919050565b6000602082019050818103600083015261373b816136ff565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061376982613742565b613773818561374d565b9350613783818560208601612d57565b61378c81612d8a565b840191505092915050565b60006080820190506137ac6000830187612bbd565b6137b96020830186612bbd565b6137c66040830185612f54565b81810360608301526137d8818461375e565b905095945050505050565b6137ec81612a11565b82525050565b60006060820190506138076000830186612bbd565b8181036020830152613819818561375e565b905061382860408301846137e3565b949350505050565b7f5374616e646172644272696467653a2063616e6e6f742073656e642076616c7560008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b600061388c6021836127bc565b915061389782613830565b604082019050919050565b600060208201905081810360008301526138bb8161387f565b9050919050565b60006138cd826128c7565b91506138d8836128c7565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561390d5761390c6132b6565b5b828201905092915050565b600060c08201905061392d6000830189612bbd565b61393a6020830188612bbd565b6139476040830187612bbd565b6139546060830186612bbd565b6139616080830185612f54565b81810360a0830152613973818461375e565b9050979650505050505050565b60006060820190506139956000830186612bbd565b6139a26020830185612f54565b81810360408301526139b4818461375e565b9050949350505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b6000613a1a602b836127bc565b9150613a25826139be565b604082019050919050565b60006020820190508181036000830152613a4981613a0d565b9050919050565b6000606082019050613a656000830186612bbd565b613a726020830185612bbd565b613a7f6040830184612f54565b949350505050565b613a9081612df6565b8114613a9b57600080fd5b50565b600081519050613aad81613a87565b92915050565b600060208284031215613ac957613ac861285f565b5b6000613ad784828501613a9e565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b6000613b3c602a836127bc565b9150613b4782613ae0565b604082019050919050565b60006020820190508181036000830152613b6b81613b2f565b9050919050565b6000604082019050613b876000830185612f54565b8181036020830152613b99818461375e565b90509392505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613bd781613ba2565b82525050565b6000602082019050613bf26000830184613bce565b92915050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000613c546026836127bc565b9150613c5f82613bf8565b604082019050919050565b60006020820190508181036000830152613c8381613c47565b9050919050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613cc0601d836127bc565b9150613ccb82613c8a565b602082019050919050565b60006020820190508181036000830152613cef81613cb3565b9050919050565b600081905092915050565b6000613d0c82613742565b613d168185613cf6565b9350613d26818560208601612d57565b80840191505092915050565b6000613d3e8284613d01565b91508190509291505056fea164736f6c634300080f000a00000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000002f3d60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612e4980620000f46000396000f3fe6080604052600436106101485760003560e01c80635c975abb116100c0578063a3a7954811610074578063c89701a211610059578063c89701a214610459578063dad544e014610486578063e11013dd1461049b57600080fd5b8063a3a7954814610426578063c4d66de81461043957600080fd5b806387087623116100a557806387087623146103955780638f601f66146103b5578063927ede2d146103fb57600080fd5b80635c975abb146103795780637f46ddb21461027a57600080fd5b806336c717c1116101175780633e47158c116100fc5780633e47158c146102f8578063540abf731461030d57806354fd4d501461032d57600080fd5b806336c717c11461027a5780633cb747bf146102cb57600080fd5b80630166a07a1461022157806309fc8843146102415780631635f5fd1461025457806332b7006d1461026757600080fd5b3661021c576101556104ae565b6101e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084015b60405180910390fd5b61021a73deaddeaddeaddeaddeaddeaddeaddeaddead000033333462030d40604051806020016040528060008152506104eb565b005b600080fd5b34801561022d57600080fd5b5061021a61023c3660046127ff565b6105c6565b61021a61024f3660046128b0565b610968565b61021a610262366004612903565b610a44565b61021a610275366004612976565b610e96565b34801561028657600080fd5b5060045473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156102d757600080fd5b506003546102a19073ffffffffffffffffffffffffffffffffffffffff1681565b34801561030457600080fd5b506102a1610f75565b34801561031957600080fd5b5061021a6103283660046129ca565b611180565b34801561033957600080fd5b50604080518082018252600681527f312e31332e310000000000000000000000000000000000000000000000000000602082015290516102c29190612ab7565b34801561038557600080fd5b50604051600081526020016102c2565b3480156103a157600080fd5b5061021a6103b0366004612aca565b6111c5565b3480156103c157600080fd5b506103ed6103d0366004612b4d565b600260209081526000928352604080842090915290825290205481565b6040519081526020016102c2565b34801561040757600080fd5b5060035473ffffffffffffffffffffffffffffffffffffffff166102a1565b61021a610434366004612aca565b61129e565b34801561044557600080fd5b5061021a610454366004612b86565b6112e2565b34801561046557600080fd5b506004546102a19073ffffffffffffffffffffffffffffffffffffffff1681565b34801561049257600080fd5b506102a1611493565b61021a6104a9366004612ba3565b611510565b60003233036104bd5750600190565b333b6017036104e557604051602081016040526020600082333c5160e81c62ef010014905090565b50600090565b7fffffffffffffffffffffffff215221522152215221522152215221522153000073ffffffffffffffffffffffffffffffffffffffff87160161053a576105358585858585611559565b6105be565b60008673ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610587573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ab9190612c06565b90506105bc87828888888888611723565b505b505050505050565b60035473ffffffffffffffffffffffffffffffffffffffff1633148015610699575060048054600354604080517f6e296e45000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff938416949390921692636e296e459282820192602092908290030181865afa15801561065d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106819190612c06565b73ffffffffffffffffffffffffffffffffffffffff16145b61074b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20746865206f7468657220627269646760648201527f6500000000000000000000000000000000000000000000000000000000000000608482015260a4016101dd565b61075487611adc565b156108a2576107638787611b3e565b610815576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b60448201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c60648201527f6f63616c20746f6b656e00000000000000000000000000000000000000000000608482015260a4016101dd565b6040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590528816906340c10f1990604401600060405180830381600087803b15801561088557600080fd5b505af1158015610899573d6000803e3d6000fd5b50505050610924565b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600260209081526040808320938a16835292905220546108e0908490612c52565b73ffffffffffffffffffffffffffffffffffffffff8089166000818152600260209081526040808320948c1683529390529190912091909155610924908585611c5e565b6105bc878787878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d3292505050565b6109706104ae565b6109fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084016101dd565b610a3f3333348686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061155992505050565b505050565b60035473ffffffffffffffffffffffffffffffffffffffff1633148015610b17575060048054600354604080517f6e296e45000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff938416949390921692636e296e459282820192602092908290030181865afa158015610adb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aff9190612c06565b73ffffffffffffffffffffffffffffffffffffffff16145b610bc9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604160248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20746865206f7468657220627269646760648201527f6500000000000000000000000000000000000000000000000000000000000000608482015260a4016101dd565b823414610c58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5374616e646172644272696467653a20616d6f756e742073656e7420646f657360448201527f206e6f74206d6174636820616d6f756e7420726571756972656400000000000060648201526084016101dd565b3073ffffffffffffffffffffffffffffffffffffffff851603610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f5374616e646172644272696467653a2063616e6e6f742073656e6420746f207360448201527f656c66000000000000000000000000000000000000000000000000000000000060648201526084016101dd565b60035473ffffffffffffffffffffffffffffffffffffffff90811690851603610da8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f5374616e646172644272696467653a2063616e6e6f742073656e6420746f206d60448201527f657373656e67657200000000000000000000000000000000000000000000000060648201526084016101dd565b610dea85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dc092505050565b6000610e07855a8660405180602001604052806000815250611e61565b9050806105be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f5374616e646172644272696467653a20455448207472616e736665722066616960448201527f6c6564000000000000000000000000000000000000000000000000000000000060648201526084016101dd565b610e9e6104ae565b610f2a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084016101dd565b610f6e853333878787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104eb92505050565b5050505050565b600080610fa07fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff811615610fc357919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026110069190612c69565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000009190911790611061906060015b604051602081830303815290604052805190602001205490565b14611098576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091526000906110ba90606001611047565b905073ffffffffffffffffffffffffffffffffffffffff81161561114e578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611123573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111479190612c06565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6105bc87873388888888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061172392505050565b6111cd6104ae565b611259576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5374616e646172644272696467653a2066756e6374696f6e2063616e206f6e6c60448201527f792062652063616c6c65642066726f6d20616e20454f4100000000000000000060648201526084016101dd565b6105be86863333888888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061172392505050565b6105be863387878787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104eb92505050565b600054610100900460ff16158080156113025750600054600160ff909116105b8061131c5750303b15801561131c575060005460ff166001145b6113a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016101dd565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561140657600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61140e611e79565b61142c73420000000000000000000000000000000000000783611efc565b801561148f57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b600061149d610f75565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061150b9190612c06565b905090565b6115533385348686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061155992505050565b50505050565b8234146115e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f5374616e646172644272696467653a206272696467696e6720455448206d757360448201527f7420696e636c7564652073756666696369656e74204554482076616c7565000060648201526084016101dd565b6115f485858584611fe6565b60035460045460405173ffffffffffffffffffffffffffffffffffffffff92831692633dbb202b9287929116907f1635f5fd0000000000000000000000000000000000000000000000000000000090611657908b908b9086908a90602401612ca6565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009485161790525160e086901b90921682526116ea92918890600401612cef565b6000604051808303818588803b15801561170357600080fd5b505af1158015611717573d6000803e3d6000fd5b50505050505050505050565b34156117b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f5374616e646172644272696467653a2063616e6e6f742073656e642076616c7560448201527f650000000000000000000000000000000000000000000000000000000000000060648201526084016101dd565b6117ba87611adc565b15611908576117c98787611b3e565b61187b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f5374616e646172644272696467653a2077726f6e672072656d6f746520746f6b60448201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433230206c60648201527f6f63616c20746f6b656e00000000000000000000000000000000000000000000608482015260a4016101dd565b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff868116600483015260248201859052881690639dc29fac90604401600060405180830381600087803b1580156118eb57600080fd5b505af11580156118ff573d6000803e3d6000fd5b5050505061199c565b61192a73ffffffffffffffffffffffffffffffffffffffff8816863086612087565b73ffffffffffffffffffffffffffffffffffffffff8088166000908152600260209081526040808320938a1683529290522054611968908490612d34565b73ffffffffffffffffffffffffffffffffffffffff8089166000908152600260209081526040808320938b16835292905220555b6119aa8787878787866120e5565b60035460045460405173ffffffffffffffffffffffffffffffffffffffff92831692633dbb202b9216907f0166a07a0000000000000000000000000000000000000000000000000000000090611a0e908b908d908c908c908c908b90602401612d4c565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009485161790525160e085901b9092168252611aa192918790600401612cef565b600060405180830381600087803b158015611abb57600080fd5b505af1158015611acf573d6000803e3d6000fd5b5050505050505050505050565b6000611b08827f1d1d8b6300000000000000000000000000000000000000000000000000000000612173565b80611b385750611b38827fec4fc8e300000000000000000000000000000000000000000000000000000000612173565b92915050565b6000611b6a837f1d1d8b6300000000000000000000000000000000000000000000000000000000612173565b15611c13578273ffffffffffffffffffffffffffffffffffffffff1663c01e1bd66040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bde9190612c06565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050611b38565b8273ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bba573d6000803e3d6000fd5b60405173ffffffffffffffffffffffffffffffffffffffff8316602482015260448101829052610a3f9084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152612196565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611daa93929190612da7565b60405180910390a46105be8686868686866122a2565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fb0444523268717a02698be47d0803aa7468c00acbed2f8bd93a0459cde61dd89868686604051611e4d93929190612da7565b60405180910390a46115538484848461232a565b6000806000835160208501868989f195945050505050565b33611e82610f75565b73ffffffffffffffffffffffffffffffffffffffff1614158015611ec3575033611eaa611493565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611efa576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600054610100900460ff16611f93576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016101dd565b6003805473ffffffffffffffffffffffffffffffffffffffff9384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560048054929093169116179055565b8373ffffffffffffffffffffffffffffffffffffffff1673deaddeaddeaddeaddeaddeaddeaddeaddead000073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161207393929190612da7565b60405180910390a461155384848484612397565b60405173ffffffffffffffffffffffffffffffffffffffff808516602483015283166044820152606481018290526115539085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401611cb0565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f73d170910aba9e6d50b102db522b1dbcd796216f5128b445aa2135272886497e86868660405161215d93929190612da7565b60405180910390a46105be8686868686866123f6565b600061217e8361246e565b801561218f575061218f83836124d2565b9392505050565b60006121f8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166125a19092919063ffffffff16565b805190915015610a3f57808060200190518101906122169190612de5565b610a3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016101dd565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fd59c65b35445225835c83f50b6ede06a7be047d22e357073e250d9af537518cd86868660405161231a93929190612da7565b60405180910390a4505050505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f31b2166ff604fc5672ea5df08a78081d2bc6d746cadce880747f3643d819e83d8484604051612389929190612e07565b60405180910390a350505050565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f2849b43074093a05396b6f2a937dee8565b15a48a7b3d4bffb732a5017380af58484604051612389929190612e07565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f7ff126db8024424bbfd9826e8ab82ff59136289ea440b04b39a0df1b03b9cabf86868660405161231a93929190612da7565b600061249a827f01ffc9a7000000000000000000000000000000000000000000000000000000006124d2565b8015611b3857506124cb827fffffffff000000000000000000000000000000000000000000000000000000006124d2565b1592915050565b604080517fffffffff000000000000000000000000000000000000000000000000000000008316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000178152825160009392849283928392918391908a617530fa92503d9150600051905082801561258a575060208210155b80156125965750600081115b979650505050505050565b60606125b084846000856125b8565b949350505050565b60608247101561264a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016101dd565b73ffffffffffffffffffffffffffffffffffffffff85163b6126c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016101dd565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516126f19190612e20565b60006040518083038185875af1925050503d806000811461272e576040519150601f19603f3d011682016040523d82523d6000602084013e612733565b606091505b50915091506125968282866060831561274d57508161218f565b82511561275d5782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101dd9190612ab7565b73ffffffffffffffffffffffffffffffffffffffff811681146127b357600080fd5b50565b60008083601f8401126127c857600080fd5b50813567ffffffffffffffff8111156127e057600080fd5b6020830191508360208285010111156127f857600080fd5b9250929050565b600080600080600080600060c0888a03121561281a57600080fd5b873561282581612791565b9650602088013561283581612791565b9550604088013561284581612791565b9450606088013561285581612791565b93506080880135925060a088013567ffffffffffffffff81111561287857600080fd5b6128848a828b016127b6565b989b979a50959850939692959293505050565b803563ffffffff811681146128ab57600080fd5b919050565b6000806000604084860312156128c557600080fd5b6128ce84612897565b9250602084013567ffffffffffffffff8111156128ea57600080fd5b6128f6868287016127b6565b9497909650939450505050565b60008060008060006080868803121561291b57600080fd5b853561292681612791565b9450602086013561293681612791565b935060408601359250606086013567ffffffffffffffff81111561295957600080fd5b612965888289016127b6565b969995985093965092949392505050565b60008060008060006080868803121561298e57600080fd5b853561299981612791565b9450602086013593506129ae60408701612897565b9250606086013567ffffffffffffffff81111561295957600080fd5b600080600080600080600060c0888a0312156129e557600080fd5b87356129f081612791565b96506020880135612a0081612791565b95506040880135612a1081612791565b945060608801359350612a2560808901612897565b925060a088013567ffffffffffffffff81111561287857600080fd5b60005b83811015612a5c578181015183820152602001612a44565b838111156115535750506000910152565b60008151808452612a85816020860160208601612a41565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061218f6020830184612a6d565b60008060008060008060a08789031215612ae357600080fd5b8635612aee81612791565b95506020870135612afe81612791565b945060408701359350612b1360608801612897565b9250608087013567ffffffffffffffff811115612b2f57600080fd5b612b3b89828a016127b6565b979a9699509497509295939492505050565b60008060408385031215612b6057600080fd5b8235612b6b81612791565b91506020830135612b7b81612791565b809150509250929050565b600060208284031215612b9857600080fd5b813561218f81612791565b60008060008060608587031215612bb957600080fd5b8435612bc481612791565b9350612bd260208601612897565b9250604085013567ffffffffffffffff811115612bee57600080fd5b612bfa878288016127b6565b95989497509550505050565b600060208284031215612c1857600080fd5b815161218f81612791565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082821015612c6457612c64612c23565b500390565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612ca157612ca1612c23565b500290565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152612ce56080830184612a6d565b9695505050505050565b73ffffffffffffffffffffffffffffffffffffffff84168152606060208201526000612d1e6060830185612a6d565b905063ffffffff83166040830152949350505050565b60008219821115612d4757612d47612c23565b500190565b600073ffffffffffffffffffffffffffffffffffffffff80891683528088166020840152808716604084015280861660608401525083608083015260c060a0830152612d9b60c0830184612a6d565b98975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201526000612ddc6060830184612a6d565b95945050505050565b600060208284031215612df757600080fd5b8151801515811461218f57600080fd5b8281526040602082015260006125b06040830184612a6d565b60008251612e32818460208701612a41565b919091019291505056fea164736f6c634300080f000a000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 3600000, "intent": "Deploy L2StandardBridge Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001774608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b6115e4806101905f395ff3fe6080604052600436106100c6575f3560e01c80630d9019e1146100d1578063307f2962146100fb5780633bbed4a0146101235780633ccfd60b1461014b5780633e47158c1461017557806354fd4d501461019f57806366d003ac146101c957806382356d8a146101f35780638312f1491461021d57806384411d651461024757806385b5b14d14610271578063b49dc74114610299578063d0e12f90146102c1578063d3e5792b146102eb578063d4ff921814610315578063dad544e01461033f576100cd565b366100cd57005b5f80fd5b3480156100dc575f80fd5b506100e5610369565b6040516100f29190610e6a565b60405180910390f35b348015610106575f80fd5b50610121600480360381019061011c9190610eaa565b610391565b005b34801561012e575f80fd5b5061014960048036038101906101449190610eff565b610413565b005b348015610156575f80fd5b5061015f6104bd565b60405161016c9190610f42565b60405180910390f35b348015610180575f80fd5b506101896106dc565b6040516101969190610fb6565b60405180910390f35b3480156101aa575f80fd5b506101b361092b565b6040516101c0919061103f565b60405180910390f35b3480156101d4575f80fd5b506101dd610964565b6040516101ea9190610e6a565b60405180910390f35b3480156101fe575f80fd5b50610207610989565b60405161021491906110d2565b60405180910390f35b348015610228575f80fd5b5061023161099c565b60405161023e9190610f42565b60405180910390f35b348015610252575f80fd5b5061025b6109a2565b6040516102689190610f42565b60405180910390f35b34801561027c575f80fd5b5061029760048036038101906102929190611115565b6109a7565b005b3480156102a4575f80fd5b506102bf60048036038101906102ba9190611140565b6109f9565b005b3480156102cc575f80fd5b506102d5610bec565b6040516102e291906110d2565b60405180910390f35b3480156102f6575f80fd5b506102ff610c02565b60405161030c9190610f42565b60405180910390f35b348015610320575f80fd5b50610329610c0b565b6040516103369190610e6a565b60405180910390f35b34801561034a575f80fd5b50610353610c33565b6040516103609190610e6a565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610399610cad565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff021916908360018111156103d1576103d061105f565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc88183604051610407929190611190565b60405180910390a15050565b61041b610cad565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459381836040516104b19291906111b7565b60405180910390a15050565b5f600154471015610503576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104fa90611274565b60405180910390fd5b479050805f8082825461051691906112bf565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba828233604051610575939291906112f2565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff166040516105c19493929190611327565b60405180910390a16001808111156105dc576105db61105f565b5b600260149054906101000a900460ff1660018111156105fe576105fd61105f565b5b03610656575f61060e8284610d1b565b905080610650576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610647906113da565b60405180910390fd5b506106d8565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b81526004016106a992919061146a565b5f604051808303818588803b1580156106c0575f80fd5b505af11580156106d2573d5f803e3d5ffd5b50505050505b5090565b5f806107097fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610d2f565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146107475780915050610928565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505161078a91906114a4565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107e1305f6040516020016107c69291906114e5565b60405160208183030381529060405280519060200120610d39565b14610818576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61084b3060016040516020016108309291906114e5565b60405160208183030381529060405280519060200120610d2f565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108f6578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ed9190611520565b92505050610928565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b6109af610cad565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109ed92919061154b565b60405180910390a15050565b5f610a02610d43565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a4a5750825b90505f60018367ffffffffffffffff16148015610a7d57505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a8b575080155b15610ac2576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610b0f576001855f0160086101000a81548160ff0219169083151502179055505b610b17610d6a565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b8357610b8261105f565b5b02179055508315610be2575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610bd991906115be565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f610c3c6106dc565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ca89190611520565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610ccc610c33565b73ffffffffffffffffffffffffffffffffffffffff1614610d19576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610d27835a84610e19565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d896106dc565b73ffffffffffffffffffffffffffffffffffffffff1614158015610de057503373ffffffffffffffffffffffffffffffffffffffff16610dc7610c33565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610e17576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610e5482610e2b565b9050919050565b610e6481610e4a565b82525050565b5f602082019050610e7d5f830184610e5b565b92915050565b5f80fd5b60028110610e93575f80fd5b50565b5f81359050610ea481610e87565b92915050565b5f60208284031215610ebf57610ebe610e83565b5b5f610ecc84828501610e96565b91505092915050565b610ede81610e4a565b8114610ee8575f80fd5b50565b5f81359050610ef981610ed5565b92915050565b5f60208284031215610f1457610f13610e83565b5b5f610f2184828501610eeb565b91505092915050565b5f819050919050565b610f3c81610f2a565b82525050565b5f602082019050610f555f830184610f33565b92915050565b5f819050919050565b5f610f7e610f79610f7484610e2b565b610f5b565b610e2b565b9050919050565b5f610f8f82610f64565b9050919050565b5f610fa082610f85565b9050919050565b610fb081610f96565b82525050565b5f602082019050610fc95f830184610fa7565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61101182610fcf565b61101b8185610fd9565b935061102b818560208601610fe9565b61103481610ff7565b840191505092915050565b5f6020820190508181035f8301526110578184611007565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6002811061109d5761109c61105f565b5b50565b5f8190506110ad8261108c565b919050565b5f6110bc826110a0565b9050919050565b6110cc816110b2565b82525050565b5f6020820190506110e55f8301846110c3565b92915050565b6110f481610f2a565b81146110fe575f80fd5b50565b5f8135905061110f816110eb565b92915050565b5f6020828403121561112a57611129610e83565b5b5f61113784828501611101565b91505092915050565b5f805f6060848603121561115757611156610e83565b5b5f61116486828701610eeb565b935050602061117586828701611101565b925050604061118686828701610e96565b9150509250925092565b5f6040820190506111a35f8301856110c3565b6111b060208301846110c3565b9392505050565b5f6040820190506111ca5f830185610e5b565b6111d76020830184610e5b565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f61125e604a83610fd9565b9150611269826111de565b606082019050919050565b5f6020820190508181035f83015261128b81611252565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6112c982610f2a565b91506112d483610f2a565b92508282019050808211156112ec576112eb611292565b5b92915050565b5f6060820190506113055f830186610f33565b6113126020830185610e5b565b61131f6040830184610e5b565b949350505050565b5f60808201905061133a5f830187610f33565b6113476020830186610e5b565b6113546040830185610e5b565b61136160608301846110c3565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f6113c4603083610fd9565b91506113cf8261136a565b604082019050919050565b5f6020820190508181035f8301526113f1816113b8565b9050919050565b5f63ffffffff82169050919050565b5f61142161141c611417846113f8565b610f5b565b610f2a565b9050919050565b61143181611407565b82525050565b5f82825260208201905092915050565b50565b5f6114555f83611437565b915061146082611447565b5f82019050919050565b5f60608201905061147d5f830185610e5b565b61148a6020830184611428565b818103604083015261149b8161144a565b90509392505050565b5f6114ae82610f2a565b91506114b983610f2a565b92508282026114c781610f2a565b915082820484148315176114de576114dd611292565b5b5092915050565b5f6040820190506114f85f830185610e5b565b6115056020830184610f33565b9392505050565b5f8151905061151a81610ed5565b92915050565b5f6020828403121561153557611534610e83565b5b5f6115428482850161150c565b91505092915050565b5f60408201905061155e5f830185610f33565b61156b6020830184610f33565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f6115a86115a361159e84611572565b610f5b565b61157b565b9050919050565b6115b88161158e565b82525050565b5f6020820190506115d15f8301846115af565b9291505056fea164736f6c6343000819000a000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000010956080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fbf806100d65f395ff3fe6080604052600436106100f2575f3560e01c80638312f14911610087578063d0e12f9011610057578063d0e12f90146102e9578063d3e5792b14610318578063d4ff9218146100fd578063dad544e01461032c575f80fd5b80638312f1491461028257806384411d651461029757806385b5b14d146102ab578063b49dc741146102ca575f80fd5b80633e47158c116100c25780633e47158c146101af57806354fd4d50146101c357806366d003ac1461021857806382356d8a14610244575f80fd5b80630d9019e1146100fd578063307f29621461014d5780633bbed4a01461016e5780633ccfd60b1461018d575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b348015610158575f80fd5b5061016c610167366004610d6d565b610340565b005b348015610179575f80fd5b5061016c610188366004610daa565b6103e6565b348015610198575f80fd5b506101a161046d565b604051908152602001610144565b3480156101ba575f80fd5b5061012361077b565b3480156101ce575f80fd5b5061020b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b6040516101449190610dc5565b348015610223575f80fd5b506002546101239073ffffffffffffffffffffffffffffffffffffffff1681565b34801561024f575f80fd5b506002546102759074010000000000000000000000000000000000000000900460ff1681565b6040516101449190610e7e565b34801561028d575f80fd5b506101a160015481565b3480156102a2575f80fd5b506101a15f5481565b3480156102b6575f80fd5b5061016c6102c5366004610e92565b610981565b3480156102d5575f80fd5b5061016c6102e4366004610ea9565b6109c7565b3480156102f4575f80fd5b5060025474010000000000000000000000000000000000000000900460ff16610275565b348015610323575f80fd5b506001546101a1565b348015610337575f80fd5b50610123610be3565b610348610c5d565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909116908360018111156103a4576103a4610e18565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103da929190610ee4565b60405180910390a15050565b6103ee610c5d565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103da565b5f60015447101561052b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f8082825461053e9190610f2c565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105f39185918591339174010000000000000000000000000000000000000000900460ff1690610f3f565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062c5761062c610e18565b036106d0575f61063c8284610cb5565b9050806106cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610522565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610760575f80fd5b505af1158015610772573d5f803e3d5ffd5b50505050505090565b5f806107a57fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107c857919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051600261080b9190610f80565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000009190911790610865906060015b604051602081830303815290604052805190602001205490565b1461089c576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108bd9060600161084b565b905073ffffffffffffffffffffffffffffffffffffffff81161561094f578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610924573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109489190610f97565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610989610c5d565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103da565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a115750825b90505f8267ffffffffffffffff166001148015610a2d5750303b155b905081158015610a3b575080155b15610a72576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ad35784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610adb610cc8565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b7357610b73610e18565b02179055508315610bd95784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610bec61077b565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c34573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c589190610f97565b905090565b33610c66610be3565b73ffffffffffffffffffffffffffffffffffffffff1614610cb3576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cc1835a84610d49565b9392505050565b33610cd161077b565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d12575033610cf9610be3565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610cb3576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d68575f80fd5b919050565b5f60208284031215610d7d575f80fd5b610cc182610d5a565b73ffffffffffffffffffffffffffffffffffffffff81168114610da7575f80fd5b50565b5f60208284031215610dba575f80fd5b8135610cc181610d86565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e7a577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e8c8284610e45565b92915050565b5f60208284031215610ea2575f80fd5b5035919050565b5f805f60608486031215610ebb575f80fd5b8335610ec681610d86565b925060208401359150610edb60408501610d5a565b90509250925092565b60408101610ef28285610e45565b610cc16020830184610e45565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8c57610e8c610eff565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f776060830184610e45565b95945050505050565b8082028115828204841417610e8c57610e8c610eff565b5f60208284031215610fa7575f80fd5b8151610cc181610d8656fea164736f6c6343000819000a0000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1300000, "intent": "Deploy SequencerFeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000458660806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b6143a380620001e36000396000f3fe60806040523480156200001157600080fd5b5060043610620000825760003560e01c8063316b3739146200008757806354fd4d5014620000bd578063896f93d114620000df5780638cf0629c1462000115578063c4d66de8146200014b578063ce5ac90f146200016b578063e78cea9214620001a1578063ee9a31a214620001c3575b600080fd5b620000a560048036038101906200009f91906200075f565b620001e5565b604051620000b49190620007a2565b60405180910390f35b620000c762000218565b604051620000d6919062000863565b60405180910390f35b620000fd6004803603810190620000f79190620009d8565b62000251565b6040516200010c9190620007a2565b60405180910390f35b6200013360048036038101906200012d919062000ab0565b62000269565b604051620001429190620007a2565b60405180910390f35b6200016960048036038101906200016391906200075f565b620004c7565b005b620001896004803603810190620001839190620009d8565b6200064b565b604051620001989190620007a2565b60405180910390f35b620001ab62000665565b604051620001ba9190620007a2565b60405180910390f35b620001cd6200068b565b604051620001dc9190620007a2565b60405180910390f35b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040518060400160405280600681526020017f312e31302e32000000000000000000000000000000000000000000000000000081525081565b6000620002608484846200064b565b90509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603620002dc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002d39062000bd6565b60405180910390fd5b600085858585604051602001620002f7949392919062000c09565b604051602081830303815290604052805190602001209050600081600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16888888886040516200034790620006d8565b6200035795949392919062000c64565b8190604051809103906000f590508015801562000378573d6000803e3d6000fd5b50905086600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fceeb8e7d520d7f3b65fc11a262b91066940193b05d4f93df07cfdced0eb551cf60405160405180910390a38673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f52fe89dd5930f343d25650b62fd367bae47088bcddffd2a88350a6ecdd620cdb33604051620004b29190620007a2565b60405180910390a38092505050949350505050565b60008060019054906101000a900460ff16159050808015620004f95750600160008054906101000a900460ff1660ff16105b806200052a57506200050b30620006b5565b158015620005295750600160008054906101000a900460ff1660ff16145b5b6200056c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005639062000d45565b60405180910390fd5b60016000806101000a81548160ff021916908360ff1602179055508015620005aa576001600060016101000a81548160ff0219169083151502179055505b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508015620006475760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516200063e919062000db4565b60405180910390a15b5050565b60006200065c848484601262000269565b90509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6135c58062000dd283390190565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200072782620006fa565b9050919050565b62000739816200071a565b81146200074557600080fd5b50565b60008135905062000759816200072e565b92915050565b600060208284031215620007785762000777620006f0565b5b6000620007888482850162000748565b91505092915050565b6200079c816200071a565b82525050565b6000602082019050620007b9600083018462000791565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015620007fb578082015181840152602081019050620007de565b838111156200080b576000848401525b50505050565b6000601f19601f8301169050919050565b60006200082f82620007bf565b6200083b8185620007ca565b93506200084d818560208601620007db565b620008588162000811565b840191505092915050565b600060208201905081810360008301526200087f818462000822565b905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620008cb8262000811565b810181811067ffffffffffffffff82111715620008ed57620008ec62000891565b5b80604052505050565b600062000902620006e6565b9050620009108282620008c0565b919050565b600067ffffffffffffffff82111562000933576200093262000891565b5b6200093e8262000811565b9050602081019050919050565b82818337600083830152505050565b6000620009716200096b8462000915565b620008f6565b90508281526020810184848401111562000990576200098f6200088c565b5b6200099d8482856200094b565b509392505050565b600082601f830112620009bd57620009bc62000887565b5b8135620009cf8482602086016200095a565b91505092915050565b600080600060608486031215620009f457620009f3620006f0565b5b600062000a048682870162000748565b935050602084013567ffffffffffffffff81111562000a285762000a27620006f5565b5b62000a3686828701620009a5565b925050604084013567ffffffffffffffff81111562000a5a5762000a59620006f5565b5b62000a6886828701620009a5565b9150509250925092565b600060ff82169050919050565b62000a8a8162000a72565b811462000a9657600080fd5b50565b60008135905062000aaa8162000a7f565b92915050565b6000806000806080858703121562000acd5762000acc620006f0565b5b600062000add8782880162000748565b945050602085013567ffffffffffffffff81111562000b015762000b00620006f5565b5b62000b0f87828801620009a5565b935050604085013567ffffffffffffffff81111562000b335762000b32620006f5565b5b62000b4187828801620009a5565b925050606062000b548782880162000a99565b91505092959194509250565b7f4f7074696d69736d4d696e7461626c654552433230466163746f72793a206d7560008201527f73742070726f766964652072656d6f746520746f6b656e206164647265737300602082015250565b600062000bbe603f83620007ca565b915062000bcb8262000b60565b604082019050919050565b6000602082019050818103600083015262000bf18162000baf565b9050919050565b62000c038162000a72565b82525050565b600060808201905062000c20600083018762000791565b818103602083015262000c34818662000822565b9050818103604083015262000c4a818562000822565b905062000c5b606083018462000bf8565b95945050505050565b600060a08201905062000c7b600083018862000791565b62000c8a602083018762000791565b818103604083015262000c9e818662000822565b9050818103606083015262000cb4818562000822565b905062000cc5608083018462000bf8565b9695505050505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b600062000d2d602e83620007ca565b915062000d3a8262000ccf565b604082019050919050565b6000602082019050818103600083015262000d608162000d1e565b9050919050565b6000819050919050565b6000819050919050565b600062000d9c62000d9662000d908462000d67565b62000d71565b62000a72565b9050919050565b62000dae8162000d7b565b82525050565b600060208201905062000dcb600083018462000da3565b9291505056fe6101a06040523480156200001257600080fd5b50604051620035c5380380620035c583398181016040528101906200003891906200044b565b82806040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250858581600390816200008391906200075c565b5080600490816200009591906200075c565b50505060008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a0818152505062000101818484620001cf60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250508061012081815250505050505050508373ffffffffffffffffffffffffffffffffffffffff166101408173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff166101608173ffffffffffffffffffffffffffffffffffffffff16815250508060ff166101808160ff16815250505050505050620008dd565b60008383834630604051602001620001ec95949392919062000880565b6040516020818303038152906040528051906020012090509392505050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200024c826200021f565b9050919050565b6200025e816200023f565b81146200026a57600080fd5b50565b6000815190506200027e8162000253565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620002d9826200028e565b810181811067ffffffffffffffff82111715620002fb57620002fa6200029f565b5b80604052505050565b6000620003106200020b565b90506200031e8282620002ce565b919050565b600067ffffffffffffffff8211156200034157620003406200029f565b5b6200034c826200028e565b9050602081019050919050565b60005b83811015620003795780820151818401526020810190506200035c565b8381111562000389576000848401525b50505050565b6000620003a6620003a08462000323565b62000304565b905082815260208101848484011115620003c557620003c462000289565b5b620003d284828562000359565b509392505050565b600082601f830112620003f257620003f162000284565b5b8151620004048482602086016200038f565b91505092915050565b600060ff82169050919050565b62000425816200040d565b81146200043157600080fd5b50565b60008151905062000445816200041a565b92915050565b600080600080600060a086880312156200046a576200046962000215565b5b60006200047a888289016200026d565b95505060206200048d888289016200026d565b945050604086015167ffffffffffffffff811115620004b157620004b06200021a565b5b620004bf88828901620003da565b935050606086015167ffffffffffffffff811115620004e357620004e26200021a565b5b620004f188828901620003da565b9250506080620005048882890162000434565b9150509295509295909350565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200056457607f821691505b6020821081036200057a57620005796200051c565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620005e47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005a5565b620005f08683620005a5565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200063d62000637620006318462000608565b62000612565b62000608565b9050919050565b6000819050919050565b62000659836200061c565b62000671620006688262000644565b848454620005b2565b825550505050565b600090565b6200068862000679565b620006958184846200064e565b505050565b5b81811015620006bd57620006b16000826200067e565b6001810190506200069b565b5050565b601f8211156200070c57620006d68162000580565b620006e18462000595565b81016020851015620006f1578190505b62000709620007008562000595565b8301826200069a565b50505b505050565b600082821c905092915050565b6000620007316000198460080262000711565b1980831691505092915050565b60006200074c83836200071e565b9150826002028217905092915050565b620007678262000511565b67ffffffffffffffff8111156200078357620007826200029f565b5b6200078f82546200054b565b6200079c828285620006c1565b600060209050601f831160018114620007d45760008415620007bf578287015190505b620007cb85826200073e565b8655506200083b565b601f198416620007e48662000580565b60005b828110156200080e57848901518255600182019150602085019450602081019050620007e7565b868310156200082e57848901516200082a601f8916826200071e565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b620008588162000843565b82525050565b620008698162000608565b82525050565b6200087a816200023f565b82525050565b600060a0820190506200089760008301886200084d565b620008a660208301876200084d565b620008b560408301866200084d565b620008c460608301856200085e565b620008d360808301846200086f565b9695505050505050565b60805160a05160c05160e0516101005161012051610140516101605161018051612c4d62000978600039600061072301526000818161078f015281816109f301528181610b7901528181610daa0152610dd001526000818161060f01528181610ba10152610d0b0152600061137c015260006113be0152600061139d015260006112d201526000611328015260006113510152612c4d6000f3fe608060405234801561001057600080fd5b50600436106101335760003560e01c806301ffc9a714610138578063033964be1461016857806306fdde0314610186578063095ea7b3146101a457806318160ddd146101d457806323b872dd146101f2578063313ce567146102225780633644e51514610240578063395093511461025e57806340c10f191461028e57806354fd4d50146102aa5780636afdd850146102c857806370a08231146102e65780637ecebe001461031657806395d89b41146103465780639dc29fac14610364578063a457c2d714610380578063a9059cbb146103b0578063ae1f6aaf146103e0578063c01e1bd6146103fe578063d505accf1461041c578063d6c0b2c414610438578063dd62ed3e14610456578063e78cea9214610486578063ee9a31a2146104a4575b600080fd5b610152600480360381019061014d9190611c17565b6104c2565b60405161015f9190611c5f565b60405180910390f35b61017061060d565b60405161017d9190611cbb565b60405180910390f35b61018e610631565b60405161019b9190611d6f565b60405180910390f35b6101be60048036038101906101b99190611df3565b6106c3565b6040516101cb9190611c5f565b60405180910390f35b6101dc6106e6565b6040516101e99190611e42565b60405180910390f35b61020c60048036038101906102079190611e5d565b6106f0565b6040516102199190611c5f565b60405180910390f35b61022a61071f565b6040516102379190611ecc565b60405180910390f35b610248610747565b6040516102559190611f00565b60405180910390f35b61027860048036038101906102739190611df3565b610756565b6040516102859190611c5f565b60405180910390f35b6102a860048036038101906102a39190611df3565b61078d565b005b6102b2610877565b6040516102bf9190611d6f565b60405180910390f35b6102d06108b0565b6040516102dd9190611cbb565b60405180910390f35b61030060048036038101906102fb9190611f1b565b6108c7565b60405161030d9190611e42565b60405180910390f35b610330600480360381019061032b9190611f1b565b61090f565b60405161033d9190611e42565b60405180910390f35b61034e61095f565b60405161035b9190611d6f565b60405180910390f35b61037e60048036038101906103799190611df3565b6109f1565b005b61039a60048036038101906103959190611df3565b610adb565b6040516103a79190611c5f565b60405180910390f35b6103ca60048036038101906103c59190611df3565b610b52565b6040516103d79190611c5f565b60405180910390f35b6103e8610b75565b6040516103f59190611cbb565b60405180910390f35b610406610b9d565b6040516104139190611cbb565b60405180910390f35b61043660048036038101906104319190611fa0565b610bc5565b005b610440610d07565b60405161044d9190611cbb565b60405180910390f35b610470600480360381019061046b9190612042565b610d2f565b60405161047d9190611e42565b60405180910390f35b61048e610da6565b60405161049b9190611cbb565b60405180910390f35b6104ac610dce565b6040516104b99190611cbb565b60405180910390f35b6000807f01ffc9a700000000000000000000000000000000000000000000000000000000905060007f1d1d8b6300000000000000000000000000000000000000000000000000000000905060007fec4fc8e3000000000000000000000000000000000000000000000000000000009050827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806105bb5750817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806106035750807bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9350505050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060038054610640906120b1565b80601f016020809104026020016040519081016040528092919081815260200182805461066c906120b1565b80156106b95780601f1061068e576101008083540402835291602001916106b9565b820191906000526020600020905b81548152906001019060200180831161069c57829003601f168201915b5050505050905090565b6000806106ce610df2565b90506106db818585610dfa565b600191505092915050565b6000600254905090565b6000806106fb610df2565b9050610708858285610fc3565b61071385858561104f565b60019150509392505050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60006107516112ce565b905090565b600080610761610df2565b90506107828185856107738589610d2f565b61077d9190612111565b610dfa565b600191505092915050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461081b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610812906121d9565b60405180910390fd5b61082582826113e8565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858260405161086b9190611e42565b60405180910390a25050565b6040518060400160405280600581526020017f312e342e3100000000000000000000000000000000000000000000000000000081525081565b60006e22d473030f116ddee9f6b43ac78ba3905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000610958600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020611547565b9050919050565b60606004805461096e906120b1565b80601f016020809104026020016040519081016040528092919081815260200182805461099a906120b1565b80156109e75780601f106109bc576101008083540402835291602001916109e7565b820191906000526020600020905b8154815290600101906020018083116109ca57829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a76906121d9565b60405180910390fd5b610a898282611555565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610acf9190611e42565b60405180910390a25050565b600080610ae6610df2565b90506000610af48286610d2f565b905083811015610b39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b309061226b565b60405180910390fd5b610b468286868403610dfa565b60019250505092915050565b600080610b5d610df2565b9050610b6a81858561104f565b600191505092915050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b83421115610c08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bff906122d7565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610c378c61172b565b89604051602001610c4d969594939291906122f7565b6040516020818303038152906040528051906020012090506000610c7082611789565b90506000610c80828787876117a3565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610cf0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce7906123a4565b60405180910390fd5b610cfb8a8a8a610dfa565b50505050505050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b6000610d396108b0565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d93577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9050610da0565b610d9d83836117ce565b90505b92915050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6090612436565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ed8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ecf906124c8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610fb69190611e42565b60405180910390a3505050565b6000610fcf8484610d2f565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611049578181101561103b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103290612534565b60405180910390fd5b6110488484848403610dfa565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b5906125c6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361112d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161112490612658565b60405180910390fd5b611138838383611855565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156111be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111b5906126ea565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112519190612111565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112b59190611e42565b60405180910390a36112c884848461185a565b50505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614801561134a57507f000000000000000000000000000000000000000000000000000000000000000046145b15611377577f000000000000000000000000000000000000000000000000000000000000000090506113e5565b6113e27f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000061185f565b90505b90565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611457576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144e90612756565b60405180910390fd5b61146360008383611855565b80600260008282546114759190612111565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114ca9190612111565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161152f9190611e42565b60405180910390a36115436000838361185a565b5050565b600081600001549050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bb906127e8565b60405180910390fd5b6115d082600083611855565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611656576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164d9061287a565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282546116ad919061289a565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117129190611e42565b60405180910390a36117268360008461185a565b505050565b600080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905061177881611547565b915061178381611899565b50919050565b600061179c6117966112ce565b836118af565b9050919050565b60008060006117b4878787876118e2565b915091506117c1816119ee565b8192505050949350505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b505050565b505050565b6000838383463060405160200161187a9594939291906128ce565b6040516020818303038152906040528051906020012090509392505050565b6001816000016000828254019250508190555050565b600082826040516020016118c4929190612999565b60405160208183030381529060405280519060200120905092915050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c111561191d5760006003915091506119e5565b601b8560ff16141580156119355750601c8560ff1614155b156119475760006004915091506119e5565b60006001878787876040516000815260200160405260405161196c94939291906129d0565b6020604051602081039080840390855afa15801561198e573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036119dc576000600192509250506119e5565b80600092509250505b94509492505050565b60006004811115611a0257611a01612a15565b5b816004811115611a1557611a14612a15565b5b0315611bb75760016004811115611a2f57611a2e612a15565b5b816004811115611a4257611a41612a15565b5b03611a82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7990612a90565b60405180910390fd5b60026004811115611a9657611a95612a15565b5b816004811115611aa957611aa8612a15565b5b03611ae9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae090612afc565b60405180910390fd5b60036004811115611afd57611afc612a15565b5b816004811115611b1057611b0f612a15565b5b03611b50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4790612b8e565b60405180910390fd5b600480811115611b6357611b62612a15565b5b816004811115611b7657611b75612a15565b5b03611bb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bad90612c20565b60405180910390fd5b5b50565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611bf481611bbf565b8114611bff57600080fd5b50565b600081359050611c1181611beb565b92915050565b600060208284031215611c2d57611c2c611bba565b5b6000611c3b84828501611c02565b91505092915050565b60008115159050919050565b611c5981611c44565b82525050565b6000602082019050611c746000830184611c50565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611ca582611c7a565b9050919050565b611cb581611c9a565b82525050565b6000602082019050611cd06000830184611cac565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d10578082015181840152602081019050611cf5565b83811115611d1f576000848401525b50505050565b6000601f19601f8301169050919050565b6000611d4182611cd6565b611d4b8185611ce1565b9350611d5b818560208601611cf2565b611d6481611d25565b840191505092915050565b60006020820190508181036000830152611d898184611d36565b905092915050565b611d9a81611c9a565b8114611da557600080fd5b50565b600081359050611db781611d91565b92915050565b6000819050919050565b611dd081611dbd565b8114611ddb57600080fd5b50565b600081359050611ded81611dc7565b92915050565b60008060408385031215611e0a57611e09611bba565b5b6000611e1885828601611da8565b9250506020611e2985828601611dde565b9150509250929050565b611e3c81611dbd565b82525050565b6000602082019050611e576000830184611e33565b92915050565b600080600060608486031215611e7657611e75611bba565b5b6000611e8486828701611da8565b9350506020611e9586828701611da8565b9250506040611ea686828701611dde565b9150509250925092565b600060ff82169050919050565b611ec681611eb0565b82525050565b6000602082019050611ee16000830184611ebd565b92915050565b6000819050919050565b611efa81611ee7565b82525050565b6000602082019050611f156000830184611ef1565b92915050565b600060208284031215611f3157611f30611bba565b5b6000611f3f84828501611da8565b91505092915050565b611f5181611eb0565b8114611f5c57600080fd5b50565b600081359050611f6e81611f48565b92915050565b611f7d81611ee7565b8114611f8857600080fd5b50565b600081359050611f9a81611f74565b92915050565b600080600080600080600060e0888a031215611fbf57611fbe611bba565b5b6000611fcd8a828b01611da8565b9750506020611fde8a828b01611da8565b9650506040611fef8a828b01611dde565b95505060606120008a828b01611dde565b94505060806120118a828b01611f5f565b93505060a06120228a828b01611f8b565b92505060c06120338a828b01611f8b565b91505092959891949750929550565b6000806040838503121561205957612058611bba565b5b600061206785828601611da8565b925050602061207885828601611da8565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120c957607f821691505b6020821081036120dc576120db612082565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061211c82611dbd565b915061212783611dbd565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561215c5761215b6120e2565b5b828201905092915050565b7f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460008201527f67652063616e206d696e7420616e64206275726e000000000000000000000000602082015250565b60006121c3603483611ce1565b91506121ce82612167565b604082019050919050565b600060208201905081810360008301526121f2816121b6565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612255602583611ce1565b9150612260826121f9565b604082019050919050565b6000602082019050818103600083015261228481612248565b9050919050565b7f45524332305065726d69743a206578706972656420646561646c696e65000000600082015250565b60006122c1601d83611ce1565b91506122cc8261228b565b602082019050919050565b600060208201905081810360008301526122f0816122b4565b9050919050565b600060c08201905061230c6000830189611ef1565b6123196020830188611cac565b6123266040830187611cac565b6123336060830186611e33565b6123406080830185611e33565b61234d60a0830184611e33565b979650505050505050565b7f45524332305065726d69743a20696e76616c6964207369676e61747572650000600082015250565b600061238e601e83611ce1565b915061239982612358565b602082019050919050565b600060208201905081810360008301526123bd81612381565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612420602483611ce1565b915061242b826123c4565b604082019050919050565b6000602082019050818103600083015261244f81612413565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006124b2602283611ce1565b91506124bd82612456565b604082019050919050565b600060208201905081810360008301526124e1816124a5565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600061251e601d83611ce1565b9150612529826124e8565b602082019050919050565b6000602082019050818103600083015261254d81612511565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006125b0602583611ce1565b91506125bb82612554565b604082019050919050565b600060208201905081810360008301526125df816125a3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612642602383611ce1565b915061264d826125e6565b604082019050919050565b6000602082019050818103600083015261267181612635565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006126d4602683611ce1565b91506126df82612678565b604082019050919050565b60006020820190508181036000830152612703816126c7565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000612740601f83611ce1565b915061274b8261270a565b602082019050919050565b6000602082019050818103600083015261276f81612733565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006127d2602183611ce1565b91506127dd82612776565b604082019050919050565b60006020820190508181036000830152612801816127c5565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b6000612864602283611ce1565b915061286f82612808565b604082019050919050565b6000602082019050818103600083015261289381612857565b9050919050565b60006128a582611dbd565b91506128b083611dbd565b9250828210156128c3576128c26120e2565b5b828203905092915050565b600060a0820190506128e36000830188611ef1565b6128f06020830187611ef1565b6128fd6040830186611ef1565b61290a6060830185611e33565b6129176080830184611cac565b9695505050505050565b600081905092915050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b6000612962600283612921565b915061296d8261292c565b600282019050919050565b6000819050919050565b61299361298e82611ee7565b612978565b82525050565b60006129a482612955565b91506129b08285612982565b6020820191506129c08284612982565b6020820191508190509392505050565b60006080820190506129e56000830187611ef1565b6129f26020830186611ebd565b6129ff6040830185611ef1565b612a0c6060830184611ef1565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000612a7a601883611ce1565b9150612a8582612a44565b602082019050919050565b60006020820190508181036000830152612aa981612a6d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b6000612ae6601f83611ce1565b9150612af182612ab0565b602082019050919050565b60006020820190508181036000830152612b1581612ad9565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b78602283611ce1565b9150612b8382612b1c565b604082019050919050565b60006020820190508181036000830152612ba781612b6b565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000612c0a602283611ce1565b9150612c1582612bae565b604082019050919050565b60006020820190508181036000830152612c3981612bfd565b905091905056fea164736f6c634300080f000aa164736f6c634300080f000a0000000000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000002b6d608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612a80806100ed6000396000f3fe60806040523480156200001157600080fd5b5060043610620000935760003560e01c8063c4d66de81162000062578063c4d66de81462000175578063ce5ac90f146200018e578063e78cea9214620001a5578063ee9a31a214620001c657600080fd5b8063316b3739146200009857806354fd4d5014620000fb578063896f93d114620001475780638cf0629c146200015e575b600080fd5b620000d1620000a936600462000636565b60026020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b620001386040518060400160405280600681526020017f312e31302e32000000000000000000000000000000000000000000000000000081525081565b604051620000f29190620006c9565b620000d162000158366004620007c0565b620001e5565b620000d16200016f3660046200083d565b620001fc565b6200018c6200018636600462000636565b6200041b565b005b620000d16200019f366004620007c0565b620005ed565b600154620000d19073ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff16620000d1565b6000620001f4848484620005ed565b949350505050565b600073ffffffffffffffffffffffffffffffffffffffff8516620002a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f4f7074696d69736d4d696e7461626c654552433230466163746f72793a206d7560448201527f73742070726f766964652072656d6f746520746f6b656e20616464726573730060648201526084015b60405180910390fd5b600085858585604051602001620002c29493929190620008d4565b604051602081830303815290604052805190602001209050600081600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16888888886040516200031290620005fe565b620003229594939291906200092e565b8190604051809103906000f590508015801562000343573d6000803e3d6000fd5b5073ffffffffffffffffffffffffffffffffffffffff81811660008181526002602052604080822080547fffffffffffffffffffffffff000000000000000000000000000000000000000016948d1694851790555193945090927fceeb8e7d520d7f3b65fc11a262b91066940193b05d4f93df07cfdced0eb551cf9190a360405133815273ffffffffffffffffffffffffffffffffffffffff80891691908316907f52fe89dd5930f343d25650b62fd367bae47088bcddffd2a88350a6ecdd620cdb9060200160405180910390a39695505050505050565b600054610100900460ff16158080156200043c5750600054600160ff909116105b80620004585750303b15801562000458575060005460ff166001145b620004e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016200029e565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156200054557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790558015620005e957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000620001f48484846012620001fc565b6120e0806200099483390190565b803573ffffffffffffffffffffffffffffffffffffffff811681146200063157600080fd5b919050565b6000602082840312156200064957600080fd5b62000654826200060c565b9392505050565b6000815180845260005b81811015620006835760208185018101518683018201520162000665565b8181111562000696576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006200065460208301846200065b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126200071f57600080fd5b813567ffffffffffffffff808211156200073d576200073d620006de565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620007865762000786620006de565b81604052838152866020858801011115620007a057600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600060608486031215620007d657600080fd5b620007e1846200060c565b9250602084013567ffffffffffffffff80821115620007ff57600080fd5b6200080d878388016200070d565b935060408601359150808211156200082457600080fd5b5062000833868287016200070d565b9150509250925092565b600080600080608085870312156200085457600080fd5b6200085f856200060c565b9350602085013567ffffffffffffffff808211156200087d57600080fd5b6200088b888389016200070d565b94506040870135915080821115620008a257600080fd5b50620008b1878288016200070d565b925050606085013560ff81168114620008c957600080fd5b939692955090935050565b73ffffffffffffffffffffffffffffffffffffffff851681526080602082015260006200090560808301866200065b565b82810360408401526200091981866200065b565b91505060ff8316606083015295945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a060408301526200096960a08301866200065b565b82810360608401526200097d81866200065b565b91505060ff83166080830152969550505050505056fe6101a06040523480156200001257600080fd5b50604051620020e0380380620020e0833981016040819052620000359162000215565b6040805180820190915260018152603160f81b6020820152839081908185600362000061838262000350565b50600462000070828262000350565b5050825160208085019190912083518483012060e08290526101008190524660a0818152604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81880181905281830187905260608201869052608082019490945230818401528151808203909301835260c0019052805194019390932091935091906080523060c05261012052505050506001600160a01b0394851661014052509390921661016052505060ff16610180526200041c565b80516001600160a01b03811681146200014357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200017057600080fd5b81516001600160401b03808211156200018d576200018d62000148565b604051601f8301601f19908116603f01168101908282118183101715620001b857620001b862000148565b81604052838152602092508683858801011115620001d557600080fd5b600091505b83821015620001f95785820183015181830184015290820190620001da565b838211156200020b5760008385830101525b9695505050505050565b600080600080600060a086880312156200022e57600080fd5b62000239866200012b565b945062000249602087016200012b565b60408701519094506001600160401b03808211156200026757600080fd5b6200027589838a016200015e565b945060608801519150808211156200028c57600080fd5b506200029b888289016200015e565b925050608086015160ff81168114620002b357600080fd5b809150509295509295909350565b600181811c90821680620002d657607f821691505b602082108103620002f757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200034b57600081815260208120601f850160051c81016020861015620003265750805b601f850160051c820191505b81811015620003475782815560010162000332565b5050505b505050565b81516001600160401b038111156200036c576200036c62000148565b62000384816200037d8454620002c1565b84620002fd565b602080601f831160018114620003bc5760008415620003a35750858301515b600019600386901b1c1916600185901b17855562000347565b600085815260208120601f198616915b82811015620003ed57888601518255948401946001909101908401620003cc565b50858210156200040c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05160c05160e0516101005161012051610140516101605161018051611c37620004a960003960006102700152600081816103a70152818161041c0152818161064801526107aa0152600081816101d501526103cd01526000611174015260006111c30152600061119e015260006110f7015260006111210152600061114b0152611c376000f3fe608060405234801561001057600080fd5b50600436106101a35760003560e01c806370a08231116100ee578063ae1f6aaf11610097578063d6c0b2c411610071578063d6c0b2c4146103cb578063dd62ed3e14610404578063e78cea92146103a5578063ee9a31a21461041757600080fd5b8063ae1f6aaf146103a5578063c01e1bd6146103cb578063d505accf146103f157600080fd5b80639dc29fac116100c85780639dc29fac1461036c578063a457c2d71461037f578063a9059cbb1461039257600080fd5b806370a082311461031b5780637ecebe001461035157806395d89b411461036457600080fd5b8063313ce5671161015057806340c10f191161012a57806340c10f19146102b557806354fd4d50146102ca5780636afdd8501461030657600080fd5b8063313ce567146102695780633644e5151461029a57806339509351146102a257600080fd5b8063095ea7b311610181578063095ea7b31461023157806318160ddd1461024457806323b872dd1461025657600080fd5b806301ffc9a7146101a8578063033964be146101d057806306fdde031461021c575b600080fd5b6101bb6101b636600461194b565b61043e565b60405190151581526020015b60405180910390f35b6101f77f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101c7565b61022461052f565b6040516101c7919061198d565b6101bb61023f366004611a29565b6105c1565b6002545b6040519081526020016101c7565b6101bb610264366004611a53565b6105db565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016101c7565b6102486105ff565b6101bb6102b0366004611a29565b61060e565b6102c86102c3366004611a29565b610630565b005b6102246040518060400160405280600581526020017f312e342e3100000000000000000000000000000000000000000000000000000081525081565b6e22d473030f116ddee9f6b43ac78ba36101f7565b610248610329366004611a8f565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b61024861035f366004611a8f565b610758565b610224610783565b6102c861037a366004611a29565b610792565b6101bb61038d366004611a29565b6108a9565b6101bb6103a0366004611a29565b610956565b7f00000000000000000000000000000000000000000000000000000000000000006101f7565b7f00000000000000000000000000000000000000000000000000000000000000006101f7565b6102c86103ff366004611aaa565b610964565b610248610412366004611b1d565b610b23565b6101f77f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007f1d1d8b63000000000000000000000000000000000000000000000000000000007fec4fc8e3000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000085168314806104f757507fffffffff00000000000000000000000000000000000000000000000000000000858116908316145b8061052657507fffffffff00000000000000000000000000000000000000000000000000000000858116908216145b95945050505050565b60606003805461053e90611b50565b80601f016020809104026020016040519081016040528092919081815260200182805461056a90611b50565b80156105b75780601f1061058c576101008083540402835291602001916105b7565b820191906000526020600020905b81548152906001019060200180831161059a57829003601f168201915b5050505050905090565b6000336105cf818585610bc4565b60019150505b92915050565b6000336105e9858285610d78565b6105f4858585610e2a565b506001949350505050565b60006106096110dd565b905090565b6000336105cf8185856106218383610b23565b61062b9190611bcc565b610bc4565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146106fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460448201527f67652063616e206d696e7420616e64206275726e00000000000000000000000060648201526084015b60405180910390fd5b6107048282611211565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858260405161074c91815260200190565b60405180910390a25050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600560205260408120546105d5565b60606004805461053e90611b50565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610857576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460448201527f67652063616e206d696e7420616e64206275726e00000000000000000000000060648201526084016106f1565b6108618282611331565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405161074c91815260200190565b600033816108b78286610b23565b905083811015610949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016106f1565b6105f48286868403610bc4565b6000336105cf818585610e2a565b834211156109ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016106f1565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886109fd8c611516565b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000610a658261154b565b90506000610a75828787876115b4565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016106f1565b610b178a8a8a610bc4565b50505050505050505050565b60007fffffffffffffffffffffffffffffffffffdd2b8cfcf0ee922116094bc538745d73ffffffffffffffffffffffffffffffffffffffff831601610b8957507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6105d5565b73ffffffffffffffffffffffffffffffffffffffff8084166000908152600160209081526040808320938616835292905220545b9392505050565b73ffffffffffffffffffffffffffffffffffffffff8316610c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff8216610d09576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000610d848484610b23565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e245781811015610e17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106f1565b610e248484848403610bc4565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610ecd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff8216610f70576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015611026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff80851660009081526020819052604080822085850390559185168152908120805484929061106a908490611bcc565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110d091815260200190565b60405180910390a3610e24565b60003073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614801561114357507f000000000000000000000000000000000000000000000000000000000000000046145b1561116d57507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b73ffffffffffffffffffffffffffffffffffffffff821661128e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016106f1565b80600260008282546112a09190611bcc565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906112da908490611bcc565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff82166113d4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260409020548181101561148a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208383039055600280548492906114c6908490611be4565b909155505060405182815260009073ffffffffffffffffffffffffffffffffffffffff8516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610d6b565b73ffffffffffffffffffffffffffffffffffffffff811660009081526005602052604090208054600181018255905b50919050565b60006105d56115586110dd565b836040517f19010000000000000000000000000000000000000000000000000000000000006020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b60008060006115c5878787876115dc565b915091506115d2816116f4565b5095945050505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561161357506000905060036116eb565b8460ff16601b1415801561162b57508460ff16601c14155b1561163c57506000905060046116eb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611690573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166116e4576000600192509250506116eb565b9150600090505b94509492505050565b600081600481111561170857611708611bfb565b036117105750565b600181600481111561172457611724611bfb565b0361178b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016106f1565b600281600481111561179f5761179f611bfb565b03611806576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016106f1565b600381600481111561181a5761181a611bfb565b036118a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f756500000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b60048160048111156118bb576118bb611bfb565b03611948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c60448201527f756500000000000000000000000000000000000000000000000000000000000060648201526084016106f1565b50565b60006020828403121561195d57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610bbd57600080fd5b600060208083528351808285015260005b818110156119ba5785810183015185820160400152820161199e565b818111156119cc576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a2457600080fd5b919050565b60008060408385031215611a3c57600080fd5b611a4583611a00565b946020939093013593505050565b600080600060608486031215611a6857600080fd5b611a7184611a00565b9250611a7f60208501611a00565b9150604084013590509250925092565b600060208284031215611aa157600080fd5b610bbd82611a00565b600080600080600080600060e0888a031215611ac557600080fd5b611ace88611a00565b9650611adc60208901611a00565b95506040880135945060608801359350608088013560ff81168114611b0057600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215611b3057600080fd5b611b3983611a00565b9150611b4760208401611a00565b90509250929050565b600181811c90821680611b6457607f821691505b602082108103611545577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008219821115611bdf57611bdf611b9d565b500190565b600082821015611bf657611bf6611b9d565b500390565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea164736f6c634300080f000aa164736f6c634300080f000a00000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 3600000, "intent": "Deploy OptimismMintableERC20Factory Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000255160806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b61236e80620001e36000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c80633687011a146100a95780633cb747bf146100c55780633e47158c146100e357806354fd4d50146101015780635c975abb1461011f578063761f44931461013d5780637f46ddb214610159578063927ede2d14610177578063aa55745214610195578063c4d66de8146101b1578063c89701a2146101cd578063dad544e0146101eb575b600080fd5b6100c360048036038101906100be9190611526565b610209565b005b6100cd610268565b6040516100da919061161f565b60405180910390f35b6100eb61028e565b6040516100f8919061165b565b60405180910390f35b6101096104e7565b604051610116919061170f565b60405180910390f35b610127610520565b604051610134919061174c565b60405180910390f35b61015760048036038101906101529190611767565b610525565b005b610161610949565b60405161016e9190611837565b60405180910390f35b61017f610973565b60405161018c919061161f565b60405180910390f35b6101af60048036038101906101aa9190611852565b61099d565b005b6101cb60048036038101906101c6919061193f565b610a25565b005b6101d5610b82565b6040516101e29190611837565b60405180910390f35b6101f3610ba8565b604051610200919061197b565b60405180910390f35b610211610c25565b610250576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161024790611a08565b60405180910390fd5b6102608686333388888888610cae565b505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806102bd7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b6110f9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146102fc57809150506104e4565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505161033f9190611a57565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b61039930600060405160200161037e929190611ac0565b60405160208183030381529060405280519060200120611104565b146103d0576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006104043060016040516020016103e9929190611ac0565b604051602081830303815290604052805190602001206110f9565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146104b2578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610485573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104a99190611afe565b925050506104e4565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600681526020017f312e31302e31000000000000000000000000000000000000000000000000000081525081565b600090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614801561065f5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610623573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106479190611afe565b73ffffffffffffffffffffffffffffffffffffffff16145b61069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069590611b9d565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff160361070c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070390611c2f565b60405180910390fd5b610736877faecafc230000000000000000000000000000000000000000000000000000000061110f565b610775576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076c90611cc1565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e49190611afe565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610851576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084890611d79565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff1663a144819485856040518363ffffffff1660e01b815260040161088c929190611ac0565b600060405180830381600087803b1580156108a657600080fd5b505af11580156108ba573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f1f39bf6707b5d608453e0ae4c067b562bcc4c85c0f562ef5d2c774d2e7f131ac878787876040516109389493929190611de6565b60405180910390a450505050505050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610a0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0390611e98565b60405180910390fd5b610a1c8787338888888888610cae565b50505050505050565b60008060019054906101000a900460ff16159050808015610a565750600160008054906101000a900460ff1660ff16105b80610a835750610a6530611134565b158015610a825750600160008054906101000a900460ff1660ff16145b5b610ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab990611f2a565b60405180910390fd5b60016000806101000a81548160ff021916908360ff1602179055508015610aff576001600060016101000a81548160ff0219169083151502179055505b610b07611157565b610b2573420000000000000000000000000000000000000783611206565b8015610b7e5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610b759190611f92565b60405180910390a15b5050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bb261028e565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c209190611afe565b905090565b60003273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1603610c635760019050610cab565b60173373ffffffffffffffffffffffffffffffffffffffff163b03610ca557604051602081016040526020600082333c62ef0100815160e81c14915050610caa565b600090505b5b90565b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1603610d1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d149061201f565b60405180910390fd5b8773ffffffffffffffffffffffffffffffffffffffff16636352211e856040518263ffffffff1660e01b8152600401610d56919061203f565b602060405180830381865afa158015610d73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d979190611afe565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610e04576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfb906120cc565b60405180910390fd5b60008873ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e759190611afe565b90508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610ee5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610edc9061215e565b60405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff16639dc29fac88876040518363ffffffff1660e01b8152600401610f20929190611ac0565b600060405180830381600087803b158015610f3a57600080fd5b505af1158015610f4e573d6000803e3d6000fd5b505050506000818a8989898888604051602401610f71979695949392919061217e565b60405160208183030381529060405263761f449360e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633dbb202b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683886040518463ffffffff1660e01b81526004016110399392919061223b565b600060405180830381600087803b15801561105357600080fd5b505af1158015611067573d6000803e3d6000fd5b505050508773ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fb7460e2a880f256ebef3406116ff3eee0cee51ebccdc2a40698f87ebb2e9c1a58a8a89896040516110e59493929190611de6565b60405180910390a450505050505050505050565b600081549050919050565b600081549050919050565b600061111a836112db565b801561112c575061112b8383611328565b5b905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661117661028e565b73ffffffffffffffffffffffffffffffffffffffff16141580156111cd57503373ffffffffffffffffffffffffffffffffffffffff166111b4610ba8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611204576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060019054906101000a900460ff16611255576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124c906122eb565b60405180910390fd5b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000611307827f01ffc9a700000000000000000000000000000000000000000000000000000000611328565b8015611321575061131f8263ffffffff60e01b611328565b155b9050919050565b6000806301ffc9a760e01b836040516024016113449190612346565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000806000602060008551602087018a617530fa92503d915060005190508280156113cf575060208210155b80156113db5750600081115b94505050505092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061141c826113f1565b9050919050565b61142c81611411565b811461143757600080fd5b50565b60008135905061144981611423565b92915050565b6000819050919050565b6114628161144f565b811461146d57600080fd5b50565b60008135905061147f81611459565b92915050565b600063ffffffff82169050919050565b61149e81611485565b81146114a957600080fd5b50565b6000813590506114bb81611495565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126114e6576114e56114c1565b5b8235905067ffffffffffffffff811115611503576115026114c6565b5b60208301915083600182028301111561151f5761151e6114cb565b5b9250929050565b60008060008060008060a08789031215611543576115426113e7565b5b600061155189828a0161143a565b965050602061156289828a0161143a565b955050604061157389828a01611470565b945050606061158489828a016114ac565b935050608087013567ffffffffffffffff8111156115a5576115a46113ec565b5b6115b189828a016114d0565b92509250509295509295509295565b6000819050919050565b60006115e56115e06115db846113f1565b6115c0565b6113f1565b9050919050565b60006115f7826115ca565b9050919050565b6000611609826115ec565b9050919050565b611619816115fe565b82525050565b60006020820190506116346000830184611610565b92915050565b6000611645826115ec565b9050919050565b6116558161163a565b82525050565b6000602082019050611670600083018461164c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156116b0578082015181840152602081019050611695565b838111156116bf576000848401525b50505050565b6000601f19601f8301169050919050565b60006116e182611676565b6116eb8185611681565b93506116fb818560208601611692565b611704816116c5565b840191505092915050565b6000602082019050818103600083015261172981846116d6565b905092915050565b60008115159050919050565b61174681611731565b82525050565b6000602082019050611761600083018461173d565b92915050565b600080600080600080600060c0888a031215611786576117856113e7565b5b60006117948a828b0161143a565b97505060206117a58a828b0161143a565b96505060406117b68a828b0161143a565b95505060606117c78a828b0161143a565b94505060806117d88a828b01611470565b93505060a088013567ffffffffffffffff8111156117f9576117f86113ec565b5b6118058a828b016114d0565b925092505092959891949750929550565b6000611821826115ec565b9050919050565b61183181611816565b82525050565b600060208201905061184c6000830184611828565b92915050565b600080600080600080600060c0888a031215611871576118706113e7565b5b600061187f8a828b0161143a565b97505060206118908a828b0161143a565b96505060406118a18a828b0161143a565b95505060606118b28a828b01611470565b94505060806118c38a828b016114ac565b93505060a088013567ffffffffffffffff8111156118e4576118e36113ec565b5b6118f08a828b016114d0565b925092505092959891949750929550565b600061190c826113f1565b9050919050565b61191c81611901565b811461192757600080fd5b50565b60008135905061193981611913565b92915050565b600060208284031215611955576119546113e7565b5b60006119638482850161192a565b91505092915050565b61197581611411565b82525050565b6000602082019050611990600083018461196c565b92915050565b7f4552433732314272696467653a206163636f756e74206973206e6f742065787460008201527f65726e616c6c79206f776e656400000000000000000000000000000000000000602082015250565b60006119f2602d83611681565b91506119fd82611996565b604082019050919050565b60006020820190508181036000830152611a21816119e5565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611a628261144f565b9150611a6d8361144f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611aa657611aa5611a28565b5b828202905092915050565b611aba8161144f565b82525050565b6000604082019050611ad5600083018561196c565b611ae26020830184611ab1565b9392505050565b600081519050611af881611423565b92915050565b600060208284031215611b1457611b136113e7565b5b6000611b2284828501611ae9565b91505092915050565b7f4552433732314272696467653a2066756e6374696f6e2063616e206f6e6c792060008201527f62652063616c6c65642066726f6d20746865206f746865722062726964676500602082015250565b6000611b87603f83611681565b9150611b9282611b2b565b604082019050919050565b60006020820190508181036000830152611bb681611b7a565b9050919050565b7f4c324552433732314272696467653a206c6f63616c20746f6b656e2063616e6e60008201527f6f742062652073656c6600000000000000000000000000000000000000000000602082015250565b6000611c19602a83611681565b9150611c2482611bbd565b604082019050919050565b60006020820190508181036000830152611c4881611c0c565b9050919050565b7f4c324552433732314272696467653a206c6f63616c20746f6b656e20696e746560008201527f7266616365206973206e6f7420636f6d706c69616e7400000000000000000000602082015250565b6000611cab603683611681565b9150611cb682611c4f565b604082019050919050565b60006020820190508181036000830152611cda81611c9e565b9050919050565b7f4c324552433732314272696467653a2077726f6e672072656d6f746520746f6b60008201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433732312060208201527f6c6f63616c20746f6b656e000000000000000000000000000000000000000000604082015250565b6000611d63604b83611681565b9150611d6e82611ce1565b606082019050919050565b60006020820190508181036000830152611d9281611d56565b9050919050565b600082825260208201905092915050565b82818337600083830152505050565b6000611dc58385611d99565b9350611dd2838584611daa565b611ddb836116c5565b840190509392505050565b6000606082019050611dfb600083018761196c565b611e086020830186611ab1565b8181036040830152611e1b818486611db9565b905095945050505050565b7f4552433732314272696467653a206e667420726563697069656e742063616e6e60008201527f6f74206265206164647265737328302900000000000000000000000000000000602082015250565b6000611e82603083611681565b9150611e8d82611e26565b604082019050919050565b60006020820190508181036000830152611eb181611e75565b9050919050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000611f14602e83611681565b9150611f1f82611eb8565b604082019050919050565b60006020820190508181036000830152611f4381611f07565b9050919050565b6000819050919050565b600060ff82169050919050565b6000611f7c611f77611f7284611f4a565b6115c0565b611f54565b9050919050565b611f8c81611f61565b82525050565b6000602082019050611fa76000830184611f83565b92915050565b7f4c324552433732314272696467653a2072656d6f746520746f6b656e2063616e60008201527f6e6f742062652061646472657373283029000000000000000000000000000000602082015250565b6000612009603183611681565b915061201482611fad565b604082019050919050565b6000602082019050818103600083015261203881611ffc565b9050919050565b60006020820190506120546000830184611ab1565b92915050565b7f4c324552433732314272696467653a205769746864726177616c206973206e6f60008201527f74206265696e6720696e69746961746564206279204e4654206f776e65720000602082015250565b60006120b6603e83611681565b91506120c18261205a565b604082019050919050565b600060208201905081810360008301526120e5816120a9565b9050919050565b7f4c324552433732314272696467653a2072656d6f746520746f6b656e20646f6560008201527f73206e6f74206d6174636820676976656e2076616c7565000000000000000000602082015250565b6000612148603783611681565b9150612153826120ec565b604082019050919050565b600060208201905081810360008301526121778161213b565b9050919050565b600060c082019050612193600083018a61196c565b6121a0602083018961196c565b6121ad604083018861196c565b6121ba606083018761196c565b6121c76080830186611ab1565b81810360a08301526121da818486611db9565b905098975050505050505050565b600081519050919050565b60006121fe826121e8565b6122088185611d99565b9350612218818560208601611692565b612221816116c5565b840191505092915050565b61223581611485565b82525050565b6000606082019050612250600083018661196c565b818103602083015261226281856121f3565b9050612271604083018461222c565b949350505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b60006122d5602b83611681565b91506122e082612279565b604082019050919050565b60006020820190508181036000830152612304816122c8565b9050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6123408161230b565b82525050565b600060208201905061235b6000830184612337565b9291505056fea164736f6c634300080f000a000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001aaa608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6119bd806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106100d45760003560e01c80637f46ddb211610081578063c4d66de81161005b578063c4d66de8146101fa578063c89701a21461020d578063dad544e01461022d57600080fd5b80637f46ddb2146101ab578063927ede2d146101c9578063aa557452146101e757600080fd5b806354fd4d50116100b257806354fd4d50146101405780635c975abb14610189578063761f44931461019857600080fd5b80633687011a146100d95780633cb747bf146100ee5780633e47158c14610138575b600080fd5b6100ec6100e73660046115d7565b610235565b005b60015461010e9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61010e6102e6565b61017c6040518060400160405280600681526020017f312e31302e31000000000000000000000000000000000000000000000000000081525081565b60405161012f91906116c5565b6040516000815260200161012f565b6100ec6101a63660046116d8565b6104f1565b60025473ffffffffffffffffffffffffffffffffffffffff1661010e565b60015473ffffffffffffffffffffffffffffffffffffffff1661010e565b6100ec6101f5366004611770565b610a0f565b6100ec6102083660046117e7565b610acb565b60025461010e9073ffffffffffffffffffffffffffffffffffffffff1681565b61010e610c7c565b61023d610cf9565b6102ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f4552433732314272696467653a206163636f756e74206973206e6f742065787460448201527f65726e616c6c79206f776e65640000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102de8686333388888888610d36565b505050505050565b6000806103117fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561033457919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026103779190611804565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000091909117906103d2906060015b604051602081830303815290604052805190602001205490565b14610409576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805130602082015260019181019190915260009061042b906060016103b8565b905073ffffffffffffffffffffffffffffffffffffffff8116156104bf578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610494573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b89190611868565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60015473ffffffffffffffffffffffffffffffffffffffff16331480156105c65750600254600154604080517f6e296e45000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff9384169390921691636e296e45916004808201926020929091908290030181865afa15801561058a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ae9190611868565b73ffffffffffffffffffffffffffffffffffffffff16145b610652576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f4552433732314272696467653a2066756e6374696f6e2063616e206f6e6c792060448201527f62652063616c6c65642066726f6d20746865206f74686572206272696467650060648201526084016102c5565b3073ffffffffffffffffffffffffffffffffffffffff8816036106f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4c324552433732314272696467653a206c6f63616c20746f6b656e2063616e6e60448201527f6f742062652073656c660000000000000000000000000000000000000000000060648201526084016102c5565b610721877faecafc230000000000000000000000000000000000000000000000000000000061128c565b6107ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4c324552433732314272696467653a206c6f63616c20746f6b656e20696e746560448201527f7266616365206973206e6f7420636f6d706c69616e740000000000000000000060648201526084016102c5565b8673ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081c9190611868565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16146108fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604b60248201527f4c324552433732314272696467653a2077726f6e672072656d6f746520746f6b60448201527f656e20666f72204f7074696d69736d204d696e7461626c65204552433732312060648201527f6c6f63616c20746f6b656e000000000000000000000000000000000000000000608482015260a4016102c5565b6040517fa144819400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301526024820185905288169063a144819490604401600060405180830381600087803b15801561096c57600080fd5b505af1158015610980573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f1f39bf6707b5d608453e0ae4c067b562bcc4c85c0f562ef5d2c774d2e7f131ac878787876040516109fe94939291906118ce565b60405180910390a450505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610ab2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4552433732314272696467653a206e667420726563697069656e742063616e6e60448201527f6f7420626520616464726573732830290000000000000000000000000000000060648201526084016102c5565b610ac28787338888888888610d36565b50505050505050565b600054610100900460ff1615808015610aeb5750600054600160ff909116105b80610b055750303b158015610b05575060005460ff166001145b610b91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016102c5565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610bef57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610bf76112af565b610c1573420000000000000000000000000000000000000783611332565b8015610c7857600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000610c866102e6565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf49190611868565b905090565b6000323303610d085750600190565b333b601703610d3057604051602081016040526020600082333c5160e81c62ef010014905090565b50600090565b73ffffffffffffffffffffffffffffffffffffffff8716610dd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f4c324552433732314272696467653a2072656d6f746520746f6b656e2063616e60448201527f6e6f74206265206164647265737328302900000000000000000000000000000060648201526084016102c5565b6040517f6352211e0000000000000000000000000000000000000000000000000000000081526004810185905273ffffffffffffffffffffffffffffffffffffffff891690636352211e90602401602060405180830381865afa158015610e44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e689190611868565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610f22576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f4c324552433732314272696467653a205769746864726177616c206973206e6f60448201527f74206265696e6720696e69746961746564206279204e4654206f776e6572000060648201526084016102c5565b60008873ffffffffffffffffffffffffffffffffffffffff1663d6c0b2c46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f939190611868565b90508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c324552433732314272696467653a2072656d6f746520746f6b656e20646f6560448201527f73206e6f74206d6174636820676976656e2076616c756500000000000000000060648201526084016102c5565b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8881166004830152602482018790528a1690639dc29fac90604401600060405180830381600087803b1580156110c057600080fd5b505af11580156110d4573d6000803e3d6000fd5b505050506000818a89898988886040516024016110f7979695949392919061190e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f761f44930000000000000000000000000000000000000000000000000000000017905260015460025491517f3dbb202b00000000000000000000000000000000000000000000000000000000815292935073ffffffffffffffffffffffffffffffffffffffff90811692633dbb202b926111cc92169085908a9060040161196b565b600060405180830381600087803b1580156111e657600080fd5b505af11580156111fa573d6000803e3d6000fd5b505050508773ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167fb7460e2a880f256ebef3406116ff3eee0cee51ebccdc2a40698f87ebb2e9c1a58a8a898960405161127894939291906118ce565b60405180910390a450505050505050505050565b60006112978361141c565b80156112a857506112a88383611481565b9392505050565b336112b86102e6565b73ffffffffffffffffffffffffffffffffffffffff16141580156112f95750336112e0610c7c565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611330576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600054610100900460ff166113c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016102c5565b6001805473ffffffffffffffffffffffffffffffffffffffff9384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560028054929093169116179055565b6000611448827f01ffc9a700000000000000000000000000000000000000000000000000000000611481565b801561147b5750611479827fffffffff00000000000000000000000000000000000000000000000000000000611481565b155b92915050565b604080517fffffffff000000000000000000000000000000000000000000000000000000008316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000178152825160009392849283928392918391908a617530fa92503d91506000519050828015611539575060208210155b80156115455750600081115b979650505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461157257600080fd5b50565b803563ffffffff8116811461158957600080fd5b919050565b60008083601f8401126115a057600080fd5b50813567ffffffffffffffff8111156115b857600080fd5b6020830191508360208285010111156115d057600080fd5b9250929050565b60008060008060008060a087890312156115f057600080fd5b86356115fb81611550565b9550602087013561160b81611550565b94506040870135935061162060608801611575565b9250608087013567ffffffffffffffff81111561163c57600080fd5b61164889828a0161158e565b979a9699509497509295939492505050565b6000815180845260005b8181101561168057602081850181015186830182015201611664565b81811115611692576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006112a8602083018461165a565b600080600080600080600060c0888a0312156116f357600080fd5b87356116fe81611550565b9650602088013561170e81611550565b9550604088013561171e81611550565b9450606088013561172e81611550565b93506080880135925060a088013567ffffffffffffffff81111561175157600080fd5b61175d8a828b0161158e565b989b979a50959850939692959293505050565b600080600080600080600060c0888a03121561178b57600080fd5b873561179681611550565b965060208801356117a681611550565b955060408801356117b681611550565b9450606088013593506117cb60808901611575565b925060a088013567ffffffffffffffff81111561175157600080fd5b6000602082840312156117f957600080fd5b81356112a881611550565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611863577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b60006020828403121561187a57600080fd5b81516112a881611550565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152606060408201526000611904606083018486611885565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808a1683528089166020840152808816604084015280871660608401525084608083015260c060a083015261195e60c083018486611885565b9998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8416815260606020820152600061199a606083018561165a565b905063ffffffff8316604083015294935050505056fea164736f6c634300080f000a00000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1900000, "intent": "Deploy L2ERC721Bridge Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001309608060405234801561001057600080fd5b506112e9806100206000396000f3fe608060405234801561001057600080fd5b50600436106101545760003560e01c8063015d8eb914610159578063098999be1461017557806309bd5a601461017f57806316d3bc7f1461019d57806321326849146101bb5780633db6be2b146101d95780633e47158c146101e35780634397dfef14610201578063440a5e201461022057806346a4d7801461022a57806347af267b146102465780634d5d9a2a1461027657806354fd4d5014610294578063550fcdc9146102b25780635cf24969146102d057806364ca23ef146102ee57806368d5dca61461030c5780638381f58a1461032a5780638b239f73146103485780639e8c496614610366578063b80777ea14610384578063c5985918146103a2578063d8444715146103c0578063dad544e0146103de578063e591b282146103fc578063e81b2c6d1461041a578063f820614014610438578063fe3d571014610456575b600080fd5b610173600480360381019061016e9190610d60565b610474565b005b61017d610590565b005b6101876105a3565b6040516101949190610e25565b60405180910390f35b6101a56105a9565b6040516101b29190610e4f565b60405180910390f35b6101c36105c3565b6040516101d09190610e85565b60405180910390f35b6101e16105c8565b005b6101eb6105eb565b6040516101f89190610f1f565b60405180910390f35b610209610844565b604051610217929190610f77565b60405180910390f35b610228610866565b005b610244600480360381019061023f9190610fa0565b6108b5565b005b610260600480360381019061025b9190610fa0565b6108ca565b60405161026d9190610e85565b60405180910390f35b61027e6108ea565b60405161028b9190610fec565b60405180910390f35b61029c6108fe565b6040516102a991906110a0565b60405180910390f35b6102ba61093b565b6040516102c791906110a0565b60405180910390f35b6102d8610978565b6040516102e591906110d1565b60405180910390f35b6102f661097e565b6040516103039190610e4f565b60405180910390f35b610314610998565b6040516103219190610fec565b60405180910390f35b6103326109ae565b60405161033f9190610e4f565b60405180910390f35b6103506109c6565b60405161035d91906110d1565b60405180910390f35b61036e6109cc565b60405161037b91906110d1565b60405180910390f35b61038c6109d2565b6040516103999190610e4f565b60405180910390f35b6103aa6109ec565b6040516103b79190610fec565b60405180910390f35b6103c8610a02565b6040516103d591906110a0565b60405180910390f35b6103e6610a3f565b6040516103f391906110ec565b60405180910390f35b610404610abc565b60405161041191906110ec565b60405180910390f35b610422610ad8565b60405161042f9190610e25565b60405180910390f35b610440610ade565b60405161044d91906110d1565b60405180910390f35b61045e610ae4565b60405161046b9190611124565b60405180910390f35b61047c610abc565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e0906111b1565b60405180910390fd5b876000806101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555086600060086101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550856001819055508460028190555083600360006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508260048190555081600581905550806006819055505050505050505050565b610598610866565b60a43560a01c600855565b60025481565b600860009054906101000a900467ffffffffffffffff1681565b600090565b6105d0610866565b60a43560a01c60b03560f01c818160601b1780600855505050565b60008061061a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b610af8565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146106595780915050610841565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505161069c9190611200565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b6106f63060006040516020016106db92919061125a565b60405160208183030381529060405280519060200120610b03565b1461072d576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061076130600160405160200161074692919061125a565b60405160208183030381529060405280519060200120610af8565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461080f578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080691906112af565b92505050610841565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee9150601290509091565b6000610870610abc565b90508033181561088857633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b6108be33610b0e565b6108c781610bf7565b50565b60096020528060005260406000206000915054906101000a900460ff1681565b60088054906101000a900463ffffffff1681565b60606040518060400160405280600581526020017f312e392e30000000000000000000000000000000000000000000000000000000815250905090565b60606040518060400160405280600381526020017f4554480000000000000000000000000000000000000000000000000000000000815250905090565b60015481565b600360009054906101000a900467ffffffffffffffff1681565b600360089054906101000a900463ffffffff1681565b60008054906101000a900467ffffffffffffffff1681565b60055481565b60065481565b600060089054906101000a900467ffffffffffffffff1681565b6003600c9054906101000a900463ffffffff1681565b60606040518060400160405280600581526020017f4574686572000000000000000000000000000000000000000000000000000000815250905090565b6000610a496105eb565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab791906112af565b905090565b600073deaddeaddeaddeaddeaddeaddeaddeaddead0001905090565b60045481565b60075481565b6008600c9054906101000a900461ffff1681565b600081549050919050565b600081549050919050565b610b16610abc565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610b815750610b52610a3f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b80610bbe5750610b8f6105eb565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610bf4576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b6009600082815260200190815260200160002060009054906101000a900460ff1615610c4f576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60016009600083815260200190815260200160002060006101000a81548160ff02191690831515021790555060011515817fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c60405160405180910390a350565b600080fd5b600067ffffffffffffffff82169050919050565b610cd181610cb4565b8114610cdc57600080fd5b50565b600081359050610cee81610cc8565b92915050565b6000819050919050565b610d0781610cf4565b8114610d1257600080fd5b50565b600081359050610d2481610cfe565b92915050565b6000819050919050565b610d3d81610d2a565b8114610d4857600080fd5b50565b600081359050610d5a81610d34565b92915050565b600080600080600080600080610100898b031215610d8157610d80610caf565b5b6000610d8f8b828c01610cdf565b9850506020610da08b828c01610cdf565b9750506040610db18b828c01610d15565b9650506060610dc28b828c01610d4b565b9550506080610dd38b828c01610cdf565b94505060a0610de48b828c01610d4b565b93505060c0610df58b828c01610d15565b92505060e0610e068b828c01610d15565b9150509295985092959890939650565b610e1f81610d2a565b82525050565b6000602082019050610e3a6000830184610e16565b92915050565b610e4981610cb4565b82525050565b6000602082019050610e646000830184610e40565b92915050565b60008115159050919050565b610e7f81610e6a565b82525050565b6000602082019050610e9a6000830184610e76565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000610ee5610ee0610edb84610ea0565b610ec0565b610ea0565b9050919050565b6000610ef782610eca565b9050919050565b6000610f0982610eec565b9050919050565b610f1981610efe565b82525050565b6000602082019050610f346000830184610f10565b92915050565b6000610f4582610ea0565b9050919050565b610f5581610f3a565b82525050565b600060ff82169050919050565b610f7181610f5b565b82525050565b6000604082019050610f8c6000830185610f4c565b610f996020830184610f68565b9392505050565b600060208284031215610fb657610fb5610caf565b5b6000610fc484828501610d4b565b91505092915050565b600063ffffffff82169050919050565b610fe681610fcd565b82525050565b60006020820190506110016000830184610fdd565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611041578082015181840152602081019050611026565b83811115611050576000848401525b50505050565b6000601f19601f8301169050919050565b600061107282611007565b61107c8185611012565b935061108c818560208601611023565b61109581611056565b840191505092915050565b600060208201905081810360008301526110ba8184611067565b905092915050565b6110cb81610cf4565b82525050565b60006020820190506110e660008301846110c2565b92915050565b60006020820190506111016000830184610f4c565b92915050565b600061ffff82169050919050565b61111e81611107565b82525050565b60006020820190506111396000830184611115565b92915050565b7f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60008201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000602082015250565b600061119b603b83611012565b91506111a68261113f565b604082019050919050565b600060208201905081810360008301526111ca8161118e565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061120b82610cf4565b915061121683610cf4565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561124f5761124e6111d1565b5b828202905092915050565b600060408201905061126f6000830185610f4c565b61127c60208301846110c2565b9392505050565b61128c81610f3a565b811461129757600080fd5b50565b6000815190506112a981611283565b92915050565b6000602082840312156112c5576112c4610caf565b5b60006112d38482850161129a565b9150509291505056fea164736f6c634300080f000a0000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000cad608060405234801561001057600080fd5b50610c8d806100206000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80635cf24969116100f9578063c598591811610097578063e591b28211610071578063e591b28214610469578063e81b2c6d14610483578063f82061401461048c578063fe3d57101461049557600080fd5b8063c598591814610408578063d844471514610428578063dad544e01461046157600080fd5b80638381f58a116100d35780638381f58a146103c25780638b239f73146103d65780639e8c4966146103df578063b80777ea146103e857600080fd5b80635cf249691461038957806364ca23ef1461039257806368d5dca6146103a657600080fd5b80634397dfef1161016657806347af267b1161014057806347af267b146102ba5780634d5d9a2a146102dd57806354fd4d501461030e578063550fcdc91461035057600080fd5b80634397dfef14610277578063440a5e201461029f57806346a4d780146102a757600080fd5b806316d3bc7f116101a257806316d3bc7f14610202578063213268491461022f5780633db6be2b146102425780633e47158c1461024a57600080fd5b8063015d8eb9146101c9578063098999be146101de57806309bd5a60146101e6575b600080fd5b6101dc6101d7366004610ae1565b6104c6565b005b6101dc610605565b6101ef60025481565b6040519081526020015b60405180910390f35b6008546102169067ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016101f9565b60005b60405190151581526020016101f9565b6101dc610618565b610252610642565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101f9565b6040805173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee815260126020820152016101f9565b6101dc61084d565b6101dc6102b5366004610b53565b6108a4565b6102326102c8366004610b53565b60096020526000908152604090205460ff1681565b6008546102f99068010000000000000000900463ffffffff1681565b60405163ffffffff90911681526020016101f9565b60408051808201909152600581527f312e392e3000000000000000000000000000000000000000000000000000000060208201525b6040516101f99190610b6c565b60408051808201909152600381527f45544800000000000000000000000000000000000000000000000000000000006020820152610343565b6101ef60015481565b6003546102169067ffffffffffffffff1681565b6003546102f99068010000000000000000900463ffffffff1681565b6000546102169067ffffffffffffffff1681565b6101ef60055481565b6101ef60065481565b6000546102169068010000000000000000900467ffffffffffffffff1681565b6003546102f9906c01000000000000000000000000900463ffffffff1681565b60408051808201909152600581527f45746865720000000000000000000000000000000000000000000000000000006020820152610343565b6102526108b9565b73deaddeaddeaddeaddeaddeaddeaddeaddead0001610252565b6101ef60045481565b6101ef60075481565b6008546104b3906c01000000000000000000000000900461ffff1681565b60405161ffff90911681526020016101f9565b3373deaddeaddeaddeaddeaddeaddeaddeaddead00011461056d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60448201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000606482015260840160405180910390fd5b6000805467ffffffffffffffff98891668010000000000000000027fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116998916999099179890981790975560019490945560029290925560038054919094167fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000009190911617909255600491909155600555600655565b61060d61084d565b60a43560a01c600855565b61062061084d565b6dffff00000000000000000000000060b03560901c1660a43560a01c17600855565b60008061066d7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561069057919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026106d39190610bdf565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061072e906060015b604051602081830303815290604052805190602001205490565b14610765576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805130602082015260019181019190915260009061078790606001610714565b905073ffffffffffffffffffffffffffffffffffffffff81161561081b578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108149190610c43565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73deaddeaddeaddeaddeaddeaddeaddeaddead000133811461087757633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b6108ad33610936565b6108b681610a13565b50565b60006108c3610642565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561090d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109319190610c43565b905090565b73ffffffffffffffffffffffffffffffffffffffff811673deaddeaddeaddeaddeaddeaddeaddeaddead000114806109a057506109716108b9565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b806109dd57506109ae610642565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6108b6576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604090205460ff1615610a5c576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091559051909183917fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c9190a350565b803567ffffffffffffffff81168114610adc57600080fd5b919050565b600080600080600080600080610100898b031215610afe57600080fd5b610b0789610ac4565b9750610b1560208a01610ac4565b96506040890135955060608901359450610b3160808a01610ac4565b979a969950949793969560a0850135955060c08501359460e001359350915050565b600060208284031215610b6557600080fd5b5035919050565b600060208083528351808285015260005b81811015610b9957858101830151858201604001528201610b7d565b81811115610bab576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610c3e577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b600060208284031215610c5557600080fd5b815173ffffffffffffffffffffffffffffffffffffffff81168114610c7957600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 750000, "intent": "Deploy L1Block Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000009fb608060405234801561001057600080fd5b506109db806100206000396000f3fe6080604052600436106100595760003560e01c80633f827a5a1461008257806344df8e70146100ad57806354fd4d50146100c457806382e3702d146100ef578063c2b3e5ac1461012c578063ecc70428146101485761007d565b3661007d5761007b33620186a060405180602001604052806000815250610173565b005b600080fd5b34801561008e57600080fd5b50610097610307565b6040516100a491906104a4565b60405180910390f35b3480156100b957600080fd5b506100c261030c565b005b3480156100d057600080fd5b506100d961034a565b6040516100e69190610558565b60405180910390f35b3480156100fb57600080fd5b50610116600480360381019061011191906105c4565b610387565b604051610123919061060c565b60405180910390f35b610146600480360381019061014191906107f0565b610173565b005b34801561015457600080fd5b5061015d6103a7565b60405161016a919061086e565b60405180910390f35b60006101dd6040518060c0016040528061018b6103a7565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff168152602001348152602001858152602001848152506103e5565b9050600160008083815260200190815260200160002060006101000a81548160ff0219169083151502179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff166102406103a7565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161027594939291906108ed565b60405180910390a46001600081819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660010191906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505050565b600181565b600047905061031a81610437565b807f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f60405160405180910390a250565b60606040518060400160405280600581526020017f312e322e30000000000000000000000000000000000000000000000000000000815250905090565b60006020528060005260406000206000915054906101000a900460ff1681565b60006103e0600160009054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001610466565b905090565b6000816000015182602001518360400151846060015185608001518660a0015160405160200161041a96959493929190610948565b604051602081830303815290604052805190602001209050919050565b806040516104449061047b565b6040518091039082f0905080158015610461573d6000803e3d6000fd5b505050565b600080838360f01b1790508091505092915050565b601e806109b183390190565b600061ffff82169050919050565b61049e81610487565b82525050565b60006020820190506104b96000830184610495565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104f95780820151818401526020810190506104de565b83811115610508576000848401525b50505050565b6000601f19601f8301169050919050565b600061052a826104bf565b61053481856104ca565b93506105448185602086016104db565b61054d8161050e565b840191505092915050565b60006020820190508181036000830152610572818461051f565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b6105a18161058e565b81146105ac57600080fd5b50565b6000813590506105be81610598565b92915050565b6000602082840312156105da576105d9610584565b5b60006105e8848285016105af565b91505092915050565b60008115159050919050565b610606816105f1565b82525050565b600060208201905061062160008301846105fd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061065282610627565b9050919050565b61066281610647565b811461066d57600080fd5b50565b60008135905061067f81610659565b92915050565b6000819050919050565b61069881610685565b81146106a357600080fd5b50565b6000813590506106b58161068f565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6106fd8261050e565b810181811067ffffffffffffffff8211171561071c5761071b6106c5565b5b80604052505050565b600061072f61057a565b905061073b82826106f4565b919050565b600067ffffffffffffffff82111561075b5761075a6106c5565b5b6107648261050e565b9050602081019050919050565b82818337600083830152505050565b600061079361078e84610740565b610725565b9050828152602081018484840111156107af576107ae6106c0565b5b6107ba848285610771565b509392505050565b600082601f8301126107d7576107d66106bb565b5b81356107e7848260208601610780565b91505092915050565b60008060006060848603121561080957610808610584565b5b600061081786828701610670565b9350506020610828868287016106a6565b925050604084013567ffffffffffffffff81111561084957610848610589565b5b610855868287016107c2565b9150509250925092565b61086881610685565b82525050565b6000602082019050610883600083018461085f565b92915050565b600081519050919050565b600082825260208201905092915050565b60006108b082610889565b6108ba8185610894565b93506108ca8185602086016104db565b6108d38161050e565b840191505092915050565b6108e78161058e565b82525050565b6000608082019050610902600083018761085f565b61090f602083018661085f565b818103604083015261092181856108a5565b905061093060608301846108de565b95945050505050565b61094281610647565b82525050565b600060c08201905061095d600083018961085f565b61096a6020830188610939565b6109776040830187610939565b610984606083018661085f565b610991608083018561085f565b81810360a08301526109a381846108a5565b905097965050505050505056fe60806040523073ffffffffffffffffffffffffffffffffffffffff16fffea164736f6c634300080f000a0000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000006e9608060405234801561001057600080fd5b506106c9806100206000396000f3fe6080604052600436106100695760003560e01c806382e3702d1161004357806382e3702d14610120578063c2b3e5ac14610160578063ecc704281461017357600080fd5b80633f827a5a1461009257806344df8e70146100bf57806354fd4d50146100d457600080fd5b3661008d5761008b33620186a0604051806020016040528060008152506101d8565b005b600080fd5b34801561009e57600080fd5b506100a7600181565b60405161ffff90911681526020015b60405180910390f35b3480156100cb57600080fd5b5061008b61039c565b3480156100e057600080fd5b50604080518082018252600581527f312e322e30000000000000000000000000000000000000000000000000000000602082015290516100b691906104c7565b34801561012c57600080fd5b5061015061013b3660046104e1565b60006020819052908152604090205460ff1681565b60405190151581526020016100b6565b61008b61016e366004610529565b6101d8565b34801561017f57600080fd5b506101ca6001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b6040519081526020016100b6565b600061026e6040518060c001604052806102326001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b815233602082015273ffffffffffffffffffffffffffffffffffffffff871660408201523460608201526080810186905260a0018490526103d4565b600081815260208190526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055905073ffffffffffffffffffffffffffffffffffffffff8416336103096001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161033e949392919061062d565b60405180910390a45050600180547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8082168301167fffff0000000000000000000000000000000000000000000000000000000000009091161790555050565b476103a681610421565b60405181907f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f90600090a250565b80516020808301516040808501516060860151608087015160a0880151935160009761040497909695910161065d565b604051602081830303815290604052805190602001209050919050565b8060405161042e90610450565b6040518091039082f090508015801561044b573d6000803e3d6000fd5b505050565b6008806106b583390190565b6000815180845260005b8181101561048257602081850181015186830182015201610466565b81811115610494576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104da602083018461045c565b9392505050565b6000602082840312156104f357600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060006060848603121561053e57600080fd5b833573ffffffffffffffffffffffffffffffffffffffff8116811461056257600080fd5b925060208401359150604084013567ffffffffffffffff8082111561058657600080fd5b818601915086601f83011261059a57600080fd5b8135818111156105ac576105ac6104fa565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156105f2576105f26104fa565b8160405282815289602084870101111561060b57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b84815283602082015260806040820152600061064c608083018561045c565b905082606083015295945050505050565b868152600073ffffffffffffffffffffffffffffffffffffffff808816602084015280871660408401525084606083015283608083015260c060a08301526106a860c083018461045c565b9897505050505050505056fe608060405230fffea164736f6c634300080f000a0000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 650000, "intent": "Deploy L2ToL1MessagePasser Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000005e9560806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d4565b60018054906101000a900460ff161562000079576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000709062000177565b60405180910390fd5b60ff8016600160009054906101000a900460ff1660ff161015620000ee5760ff600160006101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e59190620001b7565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015f602783620000f0565b91506200016c8262000101565b604082019050919050565b60006020820190508181036000830152620001928162000150565b9050919050565b600060ff82169050919050565b620001b18162000199565b82525050565b6000602082019050620001ce6000830184620001a6565b92915050565b615cb180620001e46000396000f3fe60806040523480156200001157600080fd5b50600436106200009a5760003560e01c80633e47158c146200009f57806354fd4d5014620000c15780635572acae14620000e35780637d1d0c5b1462000119578063cd6dc687146200013b578063d2382242146200015b578063d97df652146200017d578063dad544e014620001b3578063e78cea9214620001d5578063ee9a31a214620001f7575b600080fd5b620000a962000219565b604051620000b8919062000aba565b60405180910390f35b620000cb62000486565b604051620000da919062000b7b565b60405180910390f35b620001016004803603810190620000fb919062000bf8565b620004bf565b60405162000110919062000c47565b60405180910390f35b62000123620004df565b60405162000132919062000c7f565b60405180910390f35b62000159600480360381019062000153919062000ccd565b620004e9565b005b620001656200067f565b60405162000174919062000c7f565b60405180910390f35b6200019b600480360381019062000195919062000e65565b62000685565b604051620001aa919062000f10565b60405180910390f35b620001bd62000861565b604051620001cc919062000f10565b60405180910390f35b620001df620008e3565b604051620001ee919062000f10565b60405180910390f35b6200020162000909565b60405162000210919062000f10565b60405180910390f35b6000806200024a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b62000933565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146200028b578091505062000483565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051620002d0919062000f5c565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b6200032e3060006040516020016200031292919062000fbd565b604051602081830303815290604052805190602001206200093e565b1462000366576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006200039e3060016040516020016200038292919062000fbd565b6040516020818303038152906040528051906020012062000933565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161462000451578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000421573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000447919062001001565b9250505062000483565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e352e3100000000000000000000000000000000000000000000000000000081525081565b60006020528060005260406000206000915054906101000a900460ff1681565b6000600254905090565b600060018054906101000a900460ff161590508080156200051b575060018060009054906101000a900460ff1660ff16105b806200054d57506200052d3062000949565b1580156200054c575060018060009054906101000a900460ff1660ff16145b5b6200058f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200058690620010a9565b60405180910390fd5b60018060006101000a81548160ff021916908360ff1602179055508015620005cc5760018060016101000a81548160ff0219169083151502179055505b620005d66200096c565b82600160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160028190555080156200067a5760006001806101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516200067191906200111b565b60405180910390a15b505050565b60025481565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603620006f8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006ef90620011d4565b60405180910390fd5b60008484846040516020016200071193929190620011f6565b604051602081830303815290604052805190602001209050600081600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600254888888604051620007639062000a21565b6200077395949392919062001241565b8190604051809103906000f590508015801562000794573d6000803e3d6000fd5b50905060016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fe72783bb8e0ca31286b85278da59684dd814df9762a52f0837f89edd1483b299336040516200084d919062000f10565b60405180910390a380925050509392505050565b60006200086d62000219565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620008b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008de919062001001565b905090565b600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081549050919050565b600081549050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff166200098d62000219565b73ffffffffffffffffffffffffffffffffffffffff1614158015620009e757503373ffffffffffffffffffffffffffffffffffffffff16620009ce62000861565b73ffffffffffffffffffffffffffffffffffffffff1614155b1562000a1f576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6149f880620012ad83390190565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600062000a7a62000a7462000a6e8462000a2f565b62000a4f565b62000a2f565b9050919050565b600062000a8e8262000a59565b9050919050565b600062000aa28262000a81565b9050919050565b62000ab48162000a95565b82525050565b600060208201905062000ad1600083018462000aa9565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101562000b1357808201518184015260208101905062000af6565b8381111562000b23576000848401525b50505050565b6000601f19601f8301169050919050565b600062000b478262000ad7565b62000b53818562000ae2565b935062000b6581856020860162000af3565b62000b708162000b29565b840191505092915050565b6000602082019050818103600083015262000b97818462000b3a565b905092915050565b6000604051905090565b600080fd5b600080fd5b600062000bc08262000a2f565b9050919050565b62000bd28162000bb3565b811462000bde57600080fd5b50565b60008135905062000bf28162000bc7565b92915050565b60006020828403121562000c115762000c1062000ba9565b5b600062000c218482850162000be1565b91505092915050565b60008115159050919050565b62000c418162000c2a565b82525050565b600060208201905062000c5e600083018462000c36565b92915050565b6000819050919050565b62000c798162000c64565b82525050565b600060208201905062000c96600083018462000c6e565b92915050565b62000ca78162000c64565b811462000cb357600080fd5b50565b60008135905062000cc78162000c9c565b92915050565b6000806040838503121562000ce75762000ce662000ba9565b5b600062000cf78582860162000be1565b925050602062000d0a8582860162000cb6565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000d588262000b29565b810181811067ffffffffffffffff8211171562000d7a5762000d7962000d1e565b5b80604052505050565b600062000d8f62000b9f565b905062000d9d828262000d4d565b919050565b600067ffffffffffffffff82111562000dc05762000dbf62000d1e565b5b62000dcb8262000b29565b9050602081019050919050565b82818337600083830152505050565b600062000dfe62000df88462000da2565b62000d83565b90508281526020810184848401111562000e1d5762000e1c62000d19565b5b62000e2a84828562000dd8565b509392505050565b600082601f83011262000e4a5762000e4962000d14565b5b813562000e5c84826020860162000de7565b91505092915050565b60008060006060848603121562000e815762000e8062000ba9565b5b600062000e918682870162000be1565b935050602084013567ffffffffffffffff81111562000eb55762000eb462000bae565b5b62000ec38682870162000e32565b925050604084013567ffffffffffffffff81111562000ee75762000ee662000bae565b5b62000ef58682870162000e32565b9150509250925092565b62000f0a8162000bb3565b82525050565b600060208201905062000f27600083018462000eff565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000f698262000c64565b915062000f768362000c64565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000fb25762000fb162000f2d565b5b828202905092915050565b600060408201905062000fd4600083018562000eff565b62000fe3602083018462000c6e565b9392505050565b60008151905062000ffb8162000bc7565b92915050565b6000602082840312156200101a576200101962000ba9565b5b60006200102a8482850162000fea565b91505092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b600062001091602e8362000ae2565b91506200109e8262001033565b604082019050919050565b60006020820190508181036000830152620010c48162001082565b9050919050565b6000819050919050565b600060ff82169050919050565b600062001103620010fd620010f784620010cb565b62000a4f565b620010d5565b9050919050565b6200111581620010e2565b82525050565b60006020820190506200113260008301846200110a565b92915050565b7f4f7074696d69736d4d696e7461626c65455243373231466163746f72793a204c60008201527f3120746f6b656e20616464726573732063616e6e6f742062652061646472657360208201527f7328302900000000000000000000000000000000000000000000000000000000604082015250565b6000620011bc60448362000ae2565b9150620011c98262001138565b606082019050919050565b60006020820190508181036000830152620011ef81620011ad565b9050919050565b60006060820190506200120d600083018662000eff565b818103602083015262001221818562000b3a565b9050818103604083015262001237818462000b3a565b9050949350505050565b600060a08201905062001258600083018862000eff565b62001267602083018762000c6e565b62001276604083018662000eff565b81810360608301526200128a818562000b3a565b90508181036080830152620012a0818462000b3a565b9050969550505050505056fe60e06040523480156200001157600080fd5b50604051620049f8380380620049f883398181016040528101906200003791906200088c565b818181600090816200004a919062000b93565b5080600190816200005c919062000b93565b505050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603620000d1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000c89062000d01565b60405180910390fd5b6000840362000117576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200010e9062000d99565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000189576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001809062000e31565b60405180910390fd5b83608081815250508273ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050620002278373ffffffffffffffffffffffffffffffffffffffff1660146200027b60201b62000fce1760201c565b6200023d85620004d660201b6200120a1760201c565b6040516020016200025092919062000f85565b604051602081830303815290604052600a90816200026f919062000b93565b505050505050620012b7565b60606000600283600262000290919062001003565b6200029c919062001064565b67ffffffffffffffff811115620002b857620002b76200071e565b5b6040519080825280601f01601f191660200182016040528015620002eb5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110620003265762000325620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106200038d576200038c620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002620003cf919062001003565b620003db919062001064565b90505b600181111562000485577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110620004215762000420620010c1565b5b1a60f81b8282815181106200043b576200043a620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806200047d90620010f0565b9050620003de565b5060008414620004cc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004c3906200116e565b60405180910390fd5b8091505092915050565b6060600082036200051f576040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525090506200064a565b600082905060005b60008214620005575780806200053d9062001190565b915050600a826200054f91906200120c565b915062000527565b60008167ffffffffffffffff8111156200057657620005756200071e565b5b6040519080825280601f01601f191660200182016040528015620005a95781602001600182028036833780820191505090505b5090505b600085146200064357600182620005c5919062001244565b9150600a85620005d691906200127f565b6030620005e4919062001064565b60f81b818381518110620005fd57620005fc620010c1565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a856200063b91906200120c565b9450620005ad565b8093505050505b919050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620006908262000663565b9050919050565b620006a28162000683565b8114620006ae57600080fd5b50565b600081519050620006c28162000697565b92915050565b6000819050919050565b620006dd81620006c8565b8114620006e957600080fd5b50565b600081519050620006fd81620006d2565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000758826200070d565b810181811067ffffffffffffffff821117156200077a57620007796200071e565b5b80604052505050565b60006200078f6200064f565b90506200079d82826200074d565b919050565b600067ffffffffffffffff821115620007c057620007bf6200071e565b5b620007cb826200070d565b9050602081019050919050565b60005b83811015620007f8578082015181840152602081019050620007db565b8381111562000808576000848401525b50505050565b6000620008256200081f84620007a2565b62000783565b90508281526020810184848401111562000844576200084362000708565b5b62000851848285620007d8565b509392505050565b600082601f83011262000871576200087062000703565b5b8151620008838482602086016200080e565b91505092915050565b600080600080600060a08688031215620008ab57620008aa62000659565b5b6000620008bb88828901620006b1565b9550506020620008ce88828901620006ec565b9450506040620008e188828901620006b1565b935050606086015167ffffffffffffffff8111156200090557620009046200065e565b5b620009138882890162000859565b925050608086015167ffffffffffffffff8111156200093757620009366200065e565b5b620009458882890162000859565b9150509295509295909350565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620009a557607f821691505b602082108103620009bb57620009ba6200095d565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000a257fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620009e6565b62000a318683620009e6565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000a7462000a6e62000a6884620006c8565b62000a49565b620006c8565b9050919050565b6000819050919050565b62000a908362000a53565b62000aa862000a9f8262000a7b565b848454620009f3565b825550505050565b600090565b62000abf62000ab0565b62000acc81848462000a85565b505050565b5b8181101562000af45762000ae860008262000ab5565b60018101905062000ad2565b5050565b601f82111562000b435762000b0d81620009c1565b62000b1884620009d6565b8101602085101562000b28578190505b62000b4062000b3785620009d6565b83018262000ad1565b50505b505050565b600082821c905092915050565b600062000b686000198460080262000b48565b1980831691505092915050565b600062000b83838362000b55565b9150826002028217905092915050565b62000b9e8262000952565b67ffffffffffffffff81111562000bba5762000bb96200071e565b5b62000bc682546200098c565b62000bd382828562000af8565b600060209050601f83116001811462000c0b576000841562000bf6578287015190505b62000c02858262000b75565b86555062000c72565b601f19841662000c1b86620009c1565b60005b8281101562000c455784890151825560018201915060208501945060208101905062000c1e565b8683101562000c65578489015162000c61601f89168262000b55565b8355505b6001600288020188555050505b505050505050565b600082825260208201905092915050565b7f4f7074696d69736d4d696e7461626c654552433732313a20627269646765206360008201527f616e6e6f74206265206164647265737328302900000000000000000000000000602082015250565b600062000ce960338362000c7a565b915062000cf68262000c8b565b604082019050919050565b6000602082019050818103600083015262000d1c8162000cda565b9050919050565b7f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465206360008201527f6861696e2069642063616e6e6f74206265207a65726f00000000000000000000602082015250565b600062000d8160368362000c7a565b915062000d8e8262000d23565b604082019050919050565b6000602082019050818103600083015262000db48162000d72565b9050919050565b7f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465207460008201527f6f6b656e2063616e6e6f74206265206164647265737328302900000000000000602082015250565b600062000e1960398362000c7a565b915062000e268262000dbb565b604082019050919050565b6000602082019050818103600083015262000e4c8162000e0a565b9050919050565b600081905092915050565b7f657468657265756d3a0000000000000000000000000000000000000000000000600082015250565b600062000e9660098362000e53565b915062000ea38262000e5e565b600982019050919050565b600062000ebb8262000952565b62000ec7818562000e53565b935062000ed9818560208601620007d8565b80840191505092915050565b7f4000000000000000000000000000000000000000000000000000000000000000600082015250565b600062000f1d60018362000e53565b915062000f2a8262000ee5565b600182019050919050565b7f2f746f6b656e5552493f75696e743235363d0000000000000000000000000000600082015250565b600062000f6d60128362000e53565b915062000f7a8262000f35565b601282019050919050565b600062000f928262000e87565b915062000fa0828562000eae565b915062000fad8262000f0e565b915062000fbb828462000eae565b915062000fc88262000f5e565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200101082620006c8565b91506200101d83620006c8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562001059576200105862000fd4565b5b828202905092915050565b60006200107182620006c8565b91506200107e83620006c8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620010b657620010b562000fd4565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000620010fd82620006c8565b91506000820362001113576200111262000fd4565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b60006200115660208362000c7a565b915062001163826200111e565b602082019050919050565b60006020820190508181036000830152620011898162001147565b9050919050565b60006200119d82620006c8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203620011d257620011d162000fd4565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200121982620006c8565b91506200122683620006c8565b925082620012395762001238620011dd565b5b828204905092915050565b60006200125182620006c8565b91506200125e83620006c8565b92508282101562001274576200127362000fd4565b5b828203905092915050565b60006200128c82620006c8565b91506200129983620006c8565b925082620012ac57620012ab620011dd565b5b828206905092915050565b60805160a05160c0516136ee6200130a60003960008181610b5f01528181610c4801528181610eca0152610fac0152600081816105520152610ea2015260008181610aa90152610ef201526136ee6000f3fe608060405234801561001057600080fd5b506004361061013e5760003560e01c806301ffc9a714610143578063033964be1461017357806306fdde0314610191578063081812fc146101af578063095ea7b3146101df57806318160ddd146101fb57806323b872dd146102195780632f745c591461023557806342842e0e146102655780634f6ccce71461028157806354fd4d50146102b15780636352211e146102cf57806370a08231146102ff5780637d1d0c5b1461032f57806395d89b411461034d5780639dc29fac1461036b578063a144819414610387578063a22cb465146103a3578063b88d4fde146103bf578063c87b56dd146103db578063d547cfb71461040b578063d6c0b2c414610429578063e78cea9214610447578063e951819614610465578063e985e9c514610483578063ee9a31a2146104b3575b600080fd5b61015d600480360381019061015891906125a4565b6104d1565b60405161016a91906125ec565b60405180910390f35b61017b610550565b6040516101889190612648565b60405180910390f35b610199610574565b6040516101a691906126fc565b60405180910390f35b6101c960048036038101906101c49190612754565b610606565b6040516101d69190612648565b60405180910390f35b6101f960048036038101906101f491906127ad565b61064c565b005b610203610763565b60405161021091906127fc565b60405180910390f35b610233600480360381019061022e9190612817565b610770565b005b61024f600480360381019061024a91906127ad565b6107d0565b60405161025c91906127fc565b60405180910390f35b61027f600480360381019061027a9190612817565b610875565b005b61029b60048036038101906102969190612754565b610895565b6040516102a891906127fc565b60405180910390f35b6102b9610906565b6040516102c691906126fc565b60405180910390f35b6102e960048036038101906102e49190612754565b61093f565b6040516102f69190612648565b60405180910390f35b6103196004803603810190610314919061286a565b6109f0565b60405161032691906127fc565b60405180910390f35b610337610aa7565b60405161034491906127fc565b60405180910390f35b610355610acb565b60405161036291906126fc565b60405180910390f35b610385600480360381019061038091906127ad565b610b5d565b005b6103a1600480360381019061039c91906127ad565b610c46565b005b6103bd60048036038101906103b891906128c3565b610d30565b005b6103d960048036038101906103d49190612a38565b610d46565b005b6103f560048036038101906103f09190612754565b610da8565b60405161040291906126fc565b60405180910390f35b610413610e10565b60405161042091906126fc565b60405180910390f35b610431610e9e565b60405161043e9190612648565b60405180910390f35b61044f610ec6565b60405161045c9190612648565b60405180910390f35b61046d610eee565b60405161047a91906127fc565b60405180910390f35b61049d60048036038101906104989190612abb565b610f16565b6040516104aa91906125ec565b60405180910390f35b6104bb610faa565b6040516104c89190612648565b60405180910390f35b6000807faecafc23000000000000000000000000000000000000000000000000000000009050807bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061054857506105478361136a565b5b915050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606000805461058390612b2a565b80601f01602080910402602001604051908101604052809291908181526020018280546105af90612b2a565b80156105fc5780601f106105d1576101008083540402835291602001916105fc565b820191906000526020600020905b8154815290600101906020018083116105df57829003601f168201915b5050505050905090565b6000610611826113e4565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006106578261093f565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be90612bcd565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166106e661142f565b73ffffffffffffffffffffffffffffffffffffffff16148061071557506107148161070f61142f565b610f16565b5b610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074b90612c5f565b60405180910390fd5b61075e8383611437565b505050565b6000600880549050905090565b61078161077b61142f565b826114f0565b6107c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b790612cf1565b60405180910390fd5b6107cb838383611585565b505050565b60006107db836109f0565b821061081c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081390612d83565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b61089083838360405180602001604052806000815250610d46565b505050565b600061089f610763565b82106108e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d790612e15565b60405180910390fd5b600882815481106108f4576108f3612e35565b5b90600052602060002001549050919050565b6040518060400160405280600581526020017f312e332e3200000000000000000000000000000000000000000000000000000081525081565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036109e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109de90612eb0565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5790612f42565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060018054610ada90612b2a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0690612b2a565b8015610b535780601f10610b2857610100808354040283529160200191610b53565b820191906000526020600020905b815481529060010190602001808311610b3657829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610beb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be290612fd4565b60405180910390fd5b610bf4816117eb565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610c3a91906127fc565b60405180910390a25050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccb90612fd4565b60405180910390fd5b610cde8282611908565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688582604051610d2491906127fc565b60405180910390a25050565b610d42610d3b61142f565b8383611926565b5050565b610d57610d5161142f565b836114f0565b610d96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8d90612cf1565b60405180910390fd5b610da284848484611a92565b50505050565b6060610db3826113e4565b6000610dbd611aee565b90506000815111610ddd5760405180602001604052806000815250610e08565b80610de78461120a565b604051602001610df8929190613030565b6040516020818303038152906040525b915050919050565b600a8054610e1d90612b2a565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4990612b2a565b8015610e965780601f10610e6b57610100808354040283529160200191610e96565b820191906000526020600020905b815481529060010190602001808311610e7957829003601f168201915b505050505081565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060006002836002610fe19190613083565b610feb91906130dd565b67ffffffffffffffff8111156110045761100361290d565b5b6040519080825280601f01601f1916602001820160405280156110365781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061106e5761106d612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106110d2576110d1612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600060018460026111129190613083565b61111c91906130dd565b90505b60018111156111bc577f3031323334353637383961626364656600000000000000000000000000000000600f86166010811061115e5761115d612e35565b5b1a60f81b82828151811061117557611174612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806111b590613133565b905061111f565b5060008414611200576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f7906131a8565b60405180910390fd5b8091505092915050565b606060008203611251576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050611365565b600082905060005b6000821461128357808061126c906131c8565b915050600a8261127c919061323f565b9150611259565b60008167ffffffffffffffff81111561129f5761129e61290d565b5b6040519080825280601f01601f1916602001820160405280156112d15781602001600182028036833780820191505090505b5090505b6000851461135e576001826112ea9190613270565b9150600a856112f991906132a4565b603061130591906130dd565b60f81b81838151811061131b5761131a612e35565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85611357919061323f565b94506112d5565b8093505050505b919050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806113dd57506113dc82611b80565b5b9050919050565b6113ed81611c62565b61142c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142390612eb0565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166114aa8361093f565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000806114fc8361093f565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061153e575061153d8185610f16565b5b8061157c57508373ffffffffffffffffffffffffffffffffffffffff1661156484610606565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166115a58261093f565b73ffffffffffffffffffffffffffffffffffffffff16146115fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f290613347565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361166a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611661906133d9565b60405180910390fd5b611675838383611cce565b611680600082611437565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546116d09190613270565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461172791906130dd565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46117e6838383611de0565b505050565b60006117f68261093f565b905061180481600084611cce565b61180f600083611437565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461185f9190613270565b925050819055506002600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461190481600084611de0565b5050565b611922828260405180602001604052806000815250611de5565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198b90613445565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611a8591906125ec565b60405180910390a3505050565b611a9d848484611585565b611aa984848484611e40565b611ae8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611adf906134d7565b60405180910390fd5b50505050565b6060600a8054611afd90612b2a565b80601f0160208091040260200160405190810160405280929190818152602001828054611b2990612b2a565b8015611b765780601f10611b4b57610100808354040283529160200191611b76565b820191906000526020600020905b815481529060010190602001808311611b5957829003601f168201915b5050505050905090565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611c4b57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80611c5b5750611c5a82611fc7565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b611cd9838383612031565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611d1b57611d1681612036565b611d5a565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611d5957611d58838261207f565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d9c57611d97816121ec565b611ddb565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611dda57611dd982826122bd565b5b5b505050565b505050565b611def838361233c565b611dfc6000848484611e40565b611e3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e32906134d7565b60405180910390fd5b505050565b6000611e618473ffffffffffffffffffffffffffffffffffffffff16612515565b15611fba578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611e8a61142f565b8786866040518563ffffffff1660e01b8152600401611eac949392919061354c565b6020604051808303816000875af1925050508015611ee857506040513d601f19601f82011682018060405250810190611ee591906135ad565b60015b611f6a573d8060008114611f18576040519150601f19603f3d011682016040523d82523d6000602084013e611f1d565b606091505b506000815103611f62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f59906134d7565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050611fbf565b600190505b949350505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161208c846109f0565b6120969190613270565b905060006007600084815260200190815260200160002054905081811461217b576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506122009190613270565b90506000600960008481526020019081526020016000205490506000600883815481106122305761222f612e35565b5b90600052602060002001549050806008838154811061225257612251612e35565b5b9060005260206000200181905550816009600083815260200190815260200160002081905550600960008581526020019081526020016000206000905560088054806122a1576122a06135da565b5b6001900381819060005260206000200160009055905550505050565b60006122c8836109f0565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036123ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123a290613655565b60405180910390fd5b6123b481611c62565b156123f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123eb906136c1565b60405180910390fd5b61240060008383611cce565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461245091906130dd565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461251160008383611de0565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6125818161254c565b811461258c57600080fd5b50565b60008135905061259e81612578565b92915050565b6000602082840312156125ba576125b9612542565b5b60006125c88482850161258f565b91505092915050565b60008115159050919050565b6125e6816125d1565b82525050565b600060208201905061260160008301846125dd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061263282612607565b9050919050565b61264281612627565b82525050565b600060208201905061265d6000830184612639565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561269d578082015181840152602081019050612682565b838111156126ac576000848401525b50505050565b6000601f19601f8301169050919050565b60006126ce82612663565b6126d8818561266e565b93506126e881856020860161267f565b6126f1816126b2565b840191505092915050565b6000602082019050818103600083015261271681846126c3565b905092915050565b6000819050919050565b6127318161271e565b811461273c57600080fd5b50565b60008135905061274e81612728565b92915050565b60006020828403121561276a57612769612542565b5b60006127788482850161273f565b91505092915050565b61278a81612627565b811461279557600080fd5b50565b6000813590506127a781612781565b92915050565b600080604083850312156127c4576127c3612542565b5b60006127d285828601612798565b92505060206127e38582860161273f565b9150509250929050565b6127f68161271e565b82525050565b600060208201905061281160008301846127ed565b92915050565b6000806000606084860312156128305761282f612542565b5b600061283e86828701612798565b935050602061284f86828701612798565b92505060406128608682870161273f565b9150509250925092565b6000602082840312156128805761287f612542565b5b600061288e84828501612798565b91505092915050565b6128a0816125d1565b81146128ab57600080fd5b50565b6000813590506128bd81612897565b92915050565b600080604083850312156128da576128d9612542565b5b60006128e885828601612798565b92505060206128f9858286016128ae565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612945826126b2565b810181811067ffffffffffffffff821117156129645761296361290d565b5b80604052505050565b6000612977612538565b9050612983828261293c565b919050565b600067ffffffffffffffff8211156129a3576129a261290d565b5b6129ac826126b2565b9050602081019050919050565b82818337600083830152505050565b60006129db6129d684612988565b61296d565b9050828152602081018484840111156129f7576129f6612908565b5b612a028482856129b9565b509392505050565b600082601f830112612a1f57612a1e612903565b5b8135612a2f8482602086016129c8565b91505092915050565b60008060008060808587031215612a5257612a51612542565b5b6000612a6087828801612798565b9450506020612a7187828801612798565b9350506040612a828782880161273f565b925050606085013567ffffffffffffffff811115612aa357612aa2612547565b5b612aaf87828801612a0a565b91505092959194509250565b60008060408385031215612ad257612ad1612542565b5b6000612ae085828601612798565b9250506020612af185828601612798565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612b4257607f821691505b602082108103612b5557612b54612afb565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612bb760218361266e565b9150612bc282612b5b565b604082019050919050565b60006020820190508181036000830152612be681612baa565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000602082015250565b6000612c49603e8361266e565b9150612c5482612bed565b604082019050919050565b60006020820190508181036000830152612c7881612c3c565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206e6f7220617070726f766564000000000000000000000000000000000000602082015250565b6000612cdb602e8361266e565b9150612ce682612c7f565b604082019050919050565b60006020820190508181036000830152612d0a81612cce565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b6000612d6d602b8361266e565b9150612d7882612d11565b604082019050919050565b60006020820190508181036000830152612d9c81612d60565b9050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b6000612dff602c8361266e565b9150612e0a82612da3565b604082019050919050565b60006020820190508181036000830152612e2e81612df2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000612e9a60188361266e565b9150612ea582612e64565b602082019050919050565b60006020820190508181036000830152612ec981612e8d565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612f2c60298361266e565b9150612f3782612ed0565b604082019050919050565b60006020820190508181036000830152612f5b81612f1f565b9050919050565b7f4f7074696d69736d4d696e7461626c654552433732313a206f6e6c792062726960008201527f6467652063616e2063616c6c20746869732066756e6374696f6e000000000000602082015250565b6000612fbe603a8361266e565b9150612fc982612f62565b604082019050919050565b60006020820190508181036000830152612fed81612fb1565b9050919050565b600081905092915050565b600061300a82612663565b6130148185612ff4565b935061302481856020860161267f565b80840191505092915050565b600061303c8285612fff565b91506130488284612fff565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061308e8261271e565b91506130998361271e565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156130d2576130d1613054565b5b828202905092915050565b60006130e88261271e565b91506130f38361271e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561312857613127613054565b5b828201905092915050565b600061313e8261271e565b91506000820361315157613150613054565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b600061319260208361266e565b915061319d8261315c565b602082019050919050565b600060208201905081810360008301526131c181613185565b9050919050565b60006131d38261271e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361320557613204613054565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061324a8261271e565b91506132558361271e565b92508261326557613264613210565b5b828204905092915050565b600061327b8261271e565b91506132868361271e565b92508282101561329957613298613054565b5b828203905092915050565b60006132af8261271e565b91506132ba8361271e565b9250826132ca576132c9613210565b5b828206905092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b600061333160258361266e565b915061333c826132d5565b604082019050919050565b6000602082019050818103600083015261336081613324565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006133c360248361266e565b91506133ce82613367565b604082019050919050565b600060208201905081810360008301526133f2816133b6565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b600061342f60198361266e565b915061343a826133f9565b602082019050919050565b6000602082019050818103600083015261345e81613422565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b60006134c160328361266e565b91506134cc82613465565b604082019050919050565b600060208201905081810360008301526134f0816134b4565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061351e826134f7565b6135288185613502565b935061353881856020860161267f565b613541816126b2565b840191505092915050565b60006080820190506135616000830187612639565b61356e6020830186612639565b61357b60408301856127ed565b818103606083015261358d8184613513565b905095945050505050565b6000815190506135a781612578565b92915050565b6000602082840312156135c3576135c2612542565b5b60006135d184828501613598565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b600061363f60208361266e565b915061364a82613609565b602082019050919050565b6000602082019050818103600083015261366e81613632565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006136ab601c8361266e565b91506136b682613675565b602082019050919050565b600060208201905081810360008301526136da8161369e565b905091905056fea164736f6c634300080f000aa164736f6c634300080f000a0000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000003f8d608060405234801561001057600080fd5b5061001961001e565b6100de565b600154610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60015460ff90811610156100dc576001805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b613ea0806100ed6000396000f3fe60806040523480156200001157600080fd5b5060043610620000cd5760003560e01c8063d2382242116200007f578063dad544e01162000062578063dad544e014620001d6578063e78cea9214620001e0578063ee9a31a2146200020757600080fd5b8063d238224214620001b5578063d97df65214620001bf57600080fd5b80635572acae11620000b45780635572acae14620001525780637d1d0c5b1462000189578063cd6dc687146200019c57600080fd5b80633e47158c14620000d257806354fd4d501462000106575b600080fd5b620000dc6200022c565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b620001436040518060400160405280600581526020017f312e352e3100000000000000000000000000000000000000000000000000000081525081565b604051620000fd9190620009ad565b6200017862000163366004620009ef565b60006020819052908152604090205460ff1681565b6040519015158152602001620000fd565b6002545b604051908152602001620000fd565b620001b3620001ad36600462000a0f565b62000443565b005b6200018d60025481565b620000dc620001d036600462000b20565b62000628565b620000dc62000826565b600154620000dc9062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60015462010000900473ffffffffffffffffffffffffffffffffffffffff16620000dc565b600080620002587fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156200027c57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516002620002c1919062000b9f565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000091909117906200031d906060015b604051602081830303815290604052805190602001205490565b1462000355576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051306020820152600191810191909152600090620003799060600162000303565b905073ffffffffffffffffffffffffffffffffffffffff81161562000411578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200040a919062000c04565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600154610100900460ff16158080156200046157506001805460ff16105b806200047c5750303b1580156200047c57506001805460ff16145b6200050e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168117905580156200056c57600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b62000576620008a8565b600180547fffffffffffffffffffff0000000000000000000000000000000000000000ffff166201000073ffffffffffffffffffffffffffffffffffffffff861602179055600282905580156200062357600180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b600073ffffffffffffffffffffffffffffffffffffffff8416620006f6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526044602482018190527f4f7074696d69736d4d696e7461626c65455243373231466163746f72793a204c908201527f3120746f6b656e20616464726573732063616e6e6f742062652061646472657360648201527f7328302900000000000000000000000000000000000000000000000000000000608482015260a40162000505565b60008484846040516020016200070f9392919062000c24565b604051602081830303815290604052805190602001209050600081600160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600254888888604051620007619062000931565b6200077195949392919062000c73565b8190604051809103906000f590508015801562000792573d6000803e3d6000fd5b5073ffffffffffffffffffffffffffffffffffffffff8181166000818152602081815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905590513381529394509189169290917fe72783bb8e0ca31286b85278da59684dd814df9762a52f0837f89edd1483b299910160405180910390a395945050505050565b6000620008326200022c565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200087d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008a3919062000c04565b905090565b33620008b36200022c565b73ffffffffffffffffffffffffffffffffffffffff1614158015620008f7575033620008de62000826565b73ffffffffffffffffffffffffffffffffffffffff1614155b156200092f576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6131bf8062000cd583390190565b6000815180845260005b81811015620009675760208185018101518683018201520162000949565b818111156200097a576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000620009c260208301846200093f565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff81168114620009ec57600080fd5b50565b60006020828403121562000a0257600080fd5b8135620009c281620009c9565b6000806040838503121562000a2357600080fd5b823562000a3081620009c9565b946020939093013593505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011262000a7f57600080fd5b813567ffffffffffffffff8082111562000a9d5762000a9d62000a3e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171562000ae65762000ae662000a3e565b8160405283815286602085880101111562000b0057600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121562000b3657600080fd5b833562000b4381620009c9565b9250602084013567ffffffffffffffff8082111562000b6157600080fd5b62000b6f8783880162000a6d565b9350604086013591508082111562000b8657600080fd5b5062000b958682870162000a6d565b9150509250925092565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000bff577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b60006020828403121562000c1757600080fd5b8151620009c281620009c9565b73ffffffffffffffffffffffffffffffffffffffff8416815260606020820152600062000c5560608301856200093f565b828103604084015262000c6981856200093f565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835286602084015280861660408401525060a0606083015262000cb460a08301856200093f565b828103608084015262000cc881856200093f565b9897505050505050505056fe60e06040523480156200001157600080fd5b50604051620031bf380380620031bf83398101604081905262000034916200062d565b8181600062000044838262000756565b50600162000053828262000756565b5050506001600160a01b038516620000d85760405162461bcd60e51b815260206004820152603360248201527f4f7074696d69736d4d696e7461626c654552433732313a20627269646765206360448201527f616e6e6f7420626520616464726573732830290000000000000000000000000060648201526084015b60405180910390fd5b83600003620001505760405162461bcd60e51b815260206004820152603660248201527f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465206360448201527f6861696e2069642063616e6e6f74206265207a65726f000000000000000000006064820152608401620000cf565b6001600160a01b038316620001ce5760405162461bcd60e51b815260206004820152603960248201527f4f7074696d69736d4d696e7461626c654552433732313a2072656d6f7465207460448201527f6f6b656e2063616e6e6f742062652061646472657373283029000000000000006064820152608401620000cf565b60808490526001600160a01b0383811660a081905290861660c0526200020290601462000256602090811b62000eed17901c565b62000218856200041660201b620011301760201c565b6040516020016200022b92919062000822565b604051602081830303815290604052600a90816200024a919062000756565b50505050505062000993565b6060600062000267836002620008ac565b62000274906002620008ce565b6001600160401b038111156200028e576200028e62000553565b6040519080825280601f01601f191660200182016040528015620002b9576020820181803683370190505b509050600360fc1b81600081518110620002d757620002d7620008e9565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620003095762000309620008e9565b60200101906001600160f81b031916908160001a90535060006200032f846002620008ac565b6200033c906001620008ce565b90505b6001811115620003be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620003745762000374620008e9565b1a60f81b8282815181106200038d576200038d620008e9565b60200101906001600160f81b031916908160001a90535060049490941c93620003b681620008ff565b90506200033f565b5083156200040f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620000cf565b9392505050565b6060816000036200043e5750506040805180820190915260018152600360fc1b602082015290565b8160005b81156200046e5780620004558162000919565b9150620004669050600a836200094b565b915062000442565b6000816001600160401b038111156200048b576200048b62000553565b6040519080825280601f01601f191660200182016040528015620004b6576020820181803683370190505b5090505b84156200052e57620004ce60018362000962565b9150620004dd600a866200097c565b620004ea906030620008ce565b60f81b818381518110620005025762000502620008e9565b60200101906001600160f81b031916908160001a90535062000526600a866200094b565b9450620004ba565b949350505050565b80516001600160a01b03811681146200054e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620005865781810151838201526020016200056c565b8381111562000596576000848401525b50505050565b600082601f830112620005ae57600080fd5b81516001600160401b0380821115620005cb57620005cb62000553565b604051601f8301601f19908116603f01168101908282118183101715620005f657620005f662000553565b816040528381528660208588010111156200061057600080fd5b6200062384602083016020890162000569565b9695505050505050565b600080600080600060a086880312156200064657600080fd5b620006518662000536565b945060208601519350620006686040870162000536565b60608701519093506001600160401b03808211156200068657600080fd5b6200069489838a016200059c565b93506080880151915080821115620006ab57600080fd5b50620006ba888289016200059c565b9150509295509295909350565b600181811c90821680620006dc57607f821691505b602082108103620006fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200075157600081815260208120601f850160051c810160208610156200072c5750805b601f850160051c820191505b818110156200074d5782815560010162000738565b5050505b505050565b81516001600160401b0381111562000772576200077262000553565b6200078a81620007838454620006c7565b8462000703565b602080601f831160018114620007c25760008415620007a95750858301515b600019600386901b1c1916600185901b1785556200074d565b600085815260208120601f198616915b82811015620007f357888601518255948401946001909101908401620007d2565b5085821015620008125787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6832ba3432b932bab69d60b91b8152600083516200084881600985016020880162000569565b600160fe1b60099184019182015283516200086b81600a84016020880162000569565b712f746f6b656e5552493f75696e743235363d60701b600a9290910191820152601c01949350505050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615620008c957620008c962000896565b500290565b60008219821115620008e457620008e462000896565b500190565b634e487b7160e01b600052603260045260246000fd5b60008162000911576200091162000896565b506000190190565b6000600182016200092e576200092e62000896565b5060010190565b634e487b7160e01b600052601260045260246000fd5b6000826200095d576200095d62000935565b500490565b60008282101562000977576200097762000896565b500390565b6000826200098e576200098e62000935565b500690565b60805160a05160c0516127d9620009e6600039600081816103e20152818161047a01528181610b210152610c430152600081816101e001526103bc015260008181610329015261040801526127d96000f3fe608060405234801561001057600080fd5b50600436106101ae5760003560e01c80637d1d0c5b116100ee578063c87b56dd11610097578063e78cea9211610071578063e78cea92146103e0578063e951819614610406578063e985e9c51461042c578063ee9a31a21461047557600080fd5b8063c87b56dd1461039f578063d547cfb7146103b2578063d6c0b2c4146103ba57600080fd5b8063a1448194116100c8578063a144819414610366578063a22cb46514610379578063b88d4fde1461038c57600080fd5b80637d1d0c5b1461032457806395d89b411461034b5780639dc29fac1461035357600080fd5b806323b872dd1161015b5780634f6ccce7116101355780634f6ccce7146102af57806354fd4d50146102c25780636352211e146102fe57806370a082311461031157600080fd5b806323b872dd146102765780632f745c591461028957806342842e0e1461029c57600080fd5b8063081812fc1161018c578063081812fc1461023c578063095ea7b31461024f57806318160ddd1461026457600080fd5b806301ffc9a7146101b3578063033964be146101db57806306fdde0314610227575b600080fd5b6101c66101c1366004612226565b61049c565b60405190151581526020015b60405180910390f35b6102027f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d2565b61022f6104fa565b6040516101d291906122b9565b61020261024a3660046122cc565b61058c565b61026261025d36600461230e565b6105c0565b005b6008545b6040519081526020016101d2565b610262610284366004612338565b610751565b61026861029736600461230e565b6107f2565b6102626102aa366004612338565b6108c1565b6102686102bd3660046122cc565b6108dc565b61022f6040518060400160405280600581526020017f312e332e3200000000000000000000000000000000000000000000000000000081525081565b61020261030c3660046122cc565b61099a565b61026861031f366004612374565b610a2c565b6102687f000000000000000000000000000000000000000000000000000000000000000081565b61022f610afa565b61026261036136600461230e565b610b09565b61026261037436600461230e565b610c2b565b61026261038736600461238f565b610d42565b61026261039a3660046123fa565b610d51565b61022f6103ad3660046122cc565b610df9565b61022f610e5f565b7f0000000000000000000000000000000000000000000000000000000000000000610202565b7f0000000000000000000000000000000000000000000000000000000000000000610202565b7f0000000000000000000000000000000000000000000000000000000000000000610268565b6101c661043a3660046124f4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020908152604080832093909416825291909152205460ff1690565b6102027f000000000000000000000000000000000000000000000000000000000000000081565b60007faecafc23000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083168114806104f357506104f38361126d565b9392505050565b60606000805461050990612527565b80601f016020809104026020016040519081016040528092919081815260200182805461053590612527565b80156105825780601f1061055757610100808354040283529160200191610582565b820191906000526020600020905b81548152906001019060200180831161056557829003601f168201915b5050505050905090565b6000610597826112c3565b5060009081526004602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b60006105cb8261099a565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361068d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff821614806106b657506106b6813361043a565b610742576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610684565b61074c8383611351565b505050565b61075b33826113f1565b6107e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201527f72206e6f7220617070726f7665640000000000000000000000000000000000006064820152608401610684565b61074c8383836114b0565b60006107fd83610a2c565b821061088b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201527f74206f6620626f756e64730000000000000000000000000000000000000000006064820152608401610684565b5073ffffffffffffffffffffffffffffffffffffffff919091166000908152600660209081526040808320938352929052205490565b61074c83838360405180602001604052806000815250610d51565b60006108e760085490565b8210610975576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201527f7574206f6620626f756e647300000000000000000000000000000000000000006064820152608401610684565b600882815481106109885761098861257a565b90600052602060002001549050919050565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff1680610a26576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610684565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff8216610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e657200000000000000000000000000000000000000000000006064820152608401610684565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526003602052604090205490565b60606001805461050990612527565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610bce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f4f7074696d69736d4d696e7461626c654552433732313a206f6e6c792062726960448201527f6467652063616e2063616c6c20746869732066756e6374696f6e0000000000006064820152608401610684565b610bd781611722565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582604051610c1f91815260200190565b60405180910390a25050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610cf0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f4f7074696d69736d4d696e7461626c654552433732313a206f6e6c792062726960448201527f6467652063616e2063616c6c20746869732066756e6374696f6e0000000000006064820152608401610684565b610cfa82826117fb565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688582604051610c1f91815260200190565b610d4d338383611815565b5050565b610d5b33836113f1565b610de7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201527f72206e6f7220617070726f7665640000000000000000000000000000000000006064820152608401610684565b610df384848484611942565b50505050565b6060610e04826112c3565b6000610e0e6119e5565b90506000815111610e2e57604051806020016040528060008152506104f3565b80610e3884611130565b604051602001610e499291906125a9565b6040516020818303038152906040529392505050565b600a8054610e6c90612527565b80601f0160208091040260200160405190810160405280929190818152602001828054610e9890612527565b8015610ee55780601f10610eba57610100808354040283529160200191610ee5565b820191906000526020600020905b815481529060010190602001808311610ec857829003601f168201915b505050505081565b60606000610efc836002612607565b610f07906002612644565b67ffffffffffffffff811115610f1f57610f1f6123cb565b6040519080825280601f01601f191660200182016040528015610f49576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610f8057610f8061257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610fe357610fe361257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600061101f846002612607565b61102a906001612644565b90505b60018111156110c7577f303132333435363738396162636465660000000000000000000000000000000085600f166010811061106b5761106b61257a565b1a60f81b8282815181106110815761108161257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c936110c08161265c565b905061102d565b5083156104f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610684565b60608160000361117357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b811561119d578061118781612691565b91506111969050600a836126f8565b9150611177565b60008167ffffffffffffffff8111156111b8576111b86123cb565b6040519080825280601f01601f1916602001820160405280156111e2576020820181803683370190505b5090505b8415611265576111f760018361270c565b9150611204600a86612723565b61120f906030612644565b60f81b8183815181106112245761122461257a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535061125e600a866126f8565b94506111e6565b949350505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f780e9d63000000000000000000000000000000000000000000000000000000001480610a265750610a26826119f4565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1661134e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610684565b50565b600081815260046020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841690811790915581906113ab8261099a565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000806113fd8361099a565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061146b575073ffffffffffffffffffffffffffffffffffffffff80821660009081526005602090815260408083209388168352929052205460ff165b8061126557508373ffffffffffffffffffffffffffffffffffffffff166114918461058c565b73ffffffffffffffffffffffffffffffffffffffff1614949350505050565b8273ffffffffffffffffffffffffffffffffffffffff166114d08261099a565b73ffffffffffffffffffffffffffffffffffffffff1614611573576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201527f6f776e65720000000000000000000000000000000000000000000000000000006064820152608401610684565b73ffffffffffffffffffffffffffffffffffffffff8216611615576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610684565b611620838383611ad7565b61162b600082611351565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260036020526040812080546001929061166190849061270c565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260036020526040812080546001929061169c908490612644565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff86811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b600061172d8261099a565b905061173b81600084611ad7565b611746600083611351565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260036020526040812080546001929061177c90849061270c565b909155505060008281526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001690555183919073ffffffffffffffffffffffffffffffffffffffff8416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b610d4d828260405180602001604052806000815250611bdd565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610684565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526005602090815260408083209487168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61194d8484846114b0565b61195984848484611c80565b610df3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608401610684565b6060600a805461050990612527565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f80ac58cd000000000000000000000000000000000000000000000000000000001480611a8757507fffffffff0000000000000000000000000000000000000000000000000000000082167f5b5e139f00000000000000000000000000000000000000000000000000000000145b80610a2657507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610a26565b73ffffffffffffffffffffffffffffffffffffffff8316611b3f57611b3a81600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b611b7c565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611b7c57611b7c8382611e73565b73ffffffffffffffffffffffffffffffffffffffff8216611ba05761074c81611f2a565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461074c5761074c8282611fd9565b611be7838361202a565b611bf46000848484611c80565b61074c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608401610684565b600073ffffffffffffffffffffffffffffffffffffffff84163b15611e68576040517f150b7a0200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85169063150b7a0290611cf7903390899088908890600401612737565b6020604051808303816000875af1925050508015611d50575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252611d4d91810190612780565b60015b611e1d573d808015611d7e576040519150601f19603f3d011682016040523d82523d6000602084013e611d83565b606091505b508051600003611e15576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608401610684565b805181602001fd5b7fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a0200000000000000000000000000000000000000000000000000000000149050611265565b506001949350505050565b60006001611e8084610a2c565b611e8a919061270c565b600083815260076020526040902054909150808214611eea5773ffffffffffffffffffffffffffffffffffffffff841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b50600091825260076020908152604080842084905573ffffffffffffffffffffffffffffffffffffffff9094168352600681528383209183525290812055565b600854600090611f3c9060019061270c565b60008381526009602052604081205460088054939450909284908110611f6457611f6461257a565b906000526020600020015490508060088381548110611f8557611f8561257a565b6000918252602080832090910192909255828152600990915260408082208490558582528120556008805480611fbd57611fbd61279d565b6001900381819060005260206000200160009055905550505050565b6000611fe483610a2c565b73ffffffffffffffffffffffffffffffffffffffff9093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b73ffffffffffffffffffffffffffffffffffffffff82166120a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610684565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1615612133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610684565b61213f60008383611ad7565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600360205260408120805460019290612175908490612644565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461134e57600080fd5b60006020828403121561223857600080fd5b81356104f3816121f8565b60005b8381101561225e578181015183820152602001612246565b83811115610df35750506000910152565b60008151808452612287816020860160208601612243565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104f3602083018461226f565b6000602082840312156122de57600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461230957600080fd5b919050565b6000806040838503121561232157600080fd5b61232a836122e5565b946020939093013593505050565b60008060006060848603121561234d57600080fd5b612356846122e5565b9250612364602085016122e5565b9150604084013590509250925092565b60006020828403121561238657600080fd5b6104f3826122e5565b600080604083850312156123a257600080fd5b6123ab836122e5565b9150602083013580151581146123c057600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000806080858703121561241057600080fd5b612419856122e5565b9350612427602086016122e5565b925060408501359150606085013567ffffffffffffffff8082111561244b57600080fd5b818701915087601f83011261245f57600080fd5b813581811115612471576124716123cb565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156124b7576124b76123cb565b816040528281528a60208487010111156124d057600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561250757600080fd5b612510836122e5565b915061251e602084016122e5565b90509250929050565b600181811c9082168061253b57607f821691505b602082108103612574577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600083516125bb818460208801612243565b8351908301906125cf818360208801612243565b01949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561263f5761263f6125d8565b500290565b60008219821115612657576126576125d8565b500190565b60008161266b5761266b6125d8565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036126c2576126c26125d8565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082612707576127076126c9565b500490565b60008282101561271e5761271e6125d8565b500390565b600082612732576127326126c9565b500690565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152612776608083018461226f565b9695505050505050565b60006020828403121561279257600080fd5b81516104f3816121f8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea164736f6c634300080f000aa164736f6c634300080f000a00000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 4900000, "intent": "Deploy OptimismMintableERC721Factory Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000298f60806040523480156200001157600080fd5b50600062000034620000286200004c60201b60201c565b6200005460201b60201c565b62000045816200005460201b60201c565b5062000118565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61286780620001286000396000f3fe6080604052600436106100e45760003560e01c80630652b57a146100e957806307c8f7b014610112578063204e1c7a1461013b578063238181ae146101785780633ab76e9f146101b557806354fd4d50146101e05780636bd9f5161461020b578063715018a6146102485780637c36f37e1461025f5780637eff275e14610288578063860f7cda146102b15780638d52d4a0146102da5780638da5cb5b146103035780639623609d1461032e57806399a88ec41461034a5780639b2ea4bd14610373578063b79472621461039c578063f2fde38b146103c7578063f3b7dead146103f0575b600080fd5b3480156100f557600080fd5b50610110600480360381019061010b9190611931565b61042d565b005b34801561011e57600080fd5b5061013960048036038101906101349190611996565b610479565b005b34801561014757600080fd5b50610162600480360381019061015d91906119ef565b61049e565b60405161016f9190611a2b565b60405180910390f35b34801561018457600080fd5b5061019f600480360381019061019a91906119ef565b610783565b6040516101ac9190611adf565b60405180910390f35b3480156101c157600080fd5b506101ca610823565b6040516101d79190611b60565b60405180910390f35b3480156101ec57600080fd5b506101f5610849565b6040516102029190611adf565b60405180910390f35b34801561021757600080fd5b50610232600480360381019061022d91906119ef565b610882565b60405161023f9190611bf2565b60405180910390f35b34801561025457600080fd5b5061025d6108a2565b005b34801561026b57600080fd5b50610286600480360381019061028191906119ef565b6108b6565b005b34801561029457600080fd5b506102af60048036038101906102aa9190611c4b565b610acc565b005b3480156102bd57600080fd5b506102d860048036038101906102d39190611dc0565b610d5c565b005b3480156102e657600080fd5b5061030160048036038101906102fc9190611e41565b610db5565b005b34801561030f57600080fd5b50610318610e28565b6040516103259190611a2b565b60405180910390f35b61034860048036038101906103439190611f22565b610e51565b005b34801561035657600080fd5b50610371600480360381019061036c9190611c4b565b611020565b005b34801561037f57600080fd5b5061039a60048036038101906103959190611f91565b611392565b005b3480156103a857600080fd5b506103b161142d565b6040516103be9190611ffc565b60405180910390f35b3480156103d357600080fd5b506103ee60048036038101906103e991906119ef565b611444565b005b3480156103fc57600080fd5b5061041760048036038101906104129190612017565b6114c7565b6040516104249190611a2b565b60405180910390f35b610435611763565b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610481611763565b80600360146101000a81548160ff02191690831515021790555050565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506000600281111561050457610503611b7b565b5b81600281111561051757610516611b7b565b5b03610593578273ffffffffffffffffffffffffffffffffffffffff16635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610567573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058b9190612059565b91505061077e565b600160028111156105a7576105a6611b7b565b5b8160028111156105ba576105b9611b7b565b5b03610636578273ffffffffffffffffffffffffffffffffffffffff1663aaf10f426040518163ffffffff1660e01b8152600401602060405180830381865afa15801561060a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061062e9190612059565b91505061077e565b60028081111561064957610648611b7b565b5b81600281111561065c5761065b611b7b565b5b0361074357600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bf40fac1600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518263ffffffff1660e01b81526004016106fa919061217f565b602060405180830381865afa158015610717573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073b9190612059565b91505061077e565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610775906121ed565b60405180910390fd5b919050565b600260205280600052604060002060009150905080546107a2906120b5565b80601f01602080910402602001604051908101604052809291908181526020018280546107ce906120b5565b801561081b5780601f106107f05761010080835404028352916020019161081b565b820191906000526020600020905b8154815290600101906020018083116107fe57829003601f168201915b505050505081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60016020528060005260406000206000915054906101000a900460ff1681565b6108aa611763565b6108b460006117e1565b565b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461092f576040517fcde661e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff163b0361098b57806040517fe1e56d9d0000000000000000000000000000000000000000000000000000000081526004016109829190611a2b565b60405180910390fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1660405160240160405160208183030381529060405263d55ec69760e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516109fd9190612254565b600060405180830381855af49150503d8060008114610a38576040519150601f19603f3d011682016040523d82523d6000602084013e610a3d565b606091505b509150915081610a8457806040517f1c0a89cc000000000000000000000000000000000000000000000000000000008152600401610a7b91906122b5565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff167f14e22d69ea30aab5b2220164345b33bdb5125e9c77a7d5fe12e23a1c691bd13960405160405180910390a2505050565b610ad4611763565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905060006002811115610b3957610b38611b7b565b5b816002811115610b4c57610b4b611b7b565b5b03610bc1578273ffffffffffffffffffffffffffffffffffffffff16638f283970836040518263ffffffff1660e01b8152600401610b8a9190611a2b565b600060405180830381600087803b158015610ba457600080fd5b505af1158015610bb8573d6000803e3d6000fd5b50505050610d57565b60016002811115610bd557610bd4611b7b565b5b816002811115610be857610be7611b7b565b5b03610c5d578273ffffffffffffffffffffffffffffffffffffffff166313af4035836040518263ffffffff1660e01b8152600401610c269190611a2b565b600060405180830381600087803b158015610c4057600080fd5b505af1158015610c54573d6000803e3d6000fd5b50505050610d56565b600280811115610c7057610c6f611b7b565b5b816002811115610c8357610c82611b7b565b5b03610d1a57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f2fde38b836040518263ffffffff1660e01b8152600401610ce39190611a2b565b600060405180830381600087803b158015610cfd57600080fd5b505af1158015610d11573d6000803e3d6000fd5b50505050610d55565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4c906121ed565b60405180910390fd5b5b5b505050565b610d64611763565b80600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209081610db0919061246e565b505050565b610dbd611763565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690836002811115610e1f57610e1e611b7b565b5b02179055505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610e59611763565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905060006002811115610ebe57610ebd611b7b565b5b816002811115610ed157610ed0611b7b565b5b03610f60578373ffffffffffffffffffffffffffffffffffffffff16634f1ef2863485856040518463ffffffff1660e01b8152600401610f12929190612540565b60006040518083038185885af1158015610f30573d6000803e3d6000fd5b50505050506040513d6000823e3d601f19601f82011682018060405250810190610f5a91906125e0565b5061101a565b610f6a8484611020565b60008473ffffffffffffffffffffffffffffffffffffffff163484604051610f929190612254565b60006040518083038185875af1925050503d8060008114610fcf576040519150601f19603f3d011682016040523d82523d6000602084013e610fd4565b606091505b5050905080611018576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100f9061269b565b60405180910390fd5b505b50505050565b611028611763565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506000600281111561108d5761108c611b7b565b5b8160028111156110a05761109f611b7b565b5b03611115578273ffffffffffffffffffffffffffffffffffffffff16633659cfe6836040518263ffffffff1660e01b81526004016110de9190611a2b565b600060405180830381600087803b1580156110f857600080fd5b505af115801561110c573d6000803e3d6000fd5b5050505061138d565b6001600281111561112957611128611b7b565b5b81600281111561113c5761113b611b7b565b5b036111ef578273ffffffffffffffffffffffffffffffffffffffff16639b0b0fda7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b8473ffffffffffffffffffffffffffffffffffffffff1660001b6040518363ffffffff1660e01b81526004016111b89291906126d4565b600060405180830381600087803b1580156111d257600080fd5b505af11580156111e6573d6000803e3d6000fd5b5050505061138c565b60028081111561120257611201611b7b565b5b81600281111561121557611214611b7b565b5b0361137b576000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054611266906120b5565b80601f0160208091040260200160405190810160405280929190818152602001828054611292906120b5565b80156112df5780601f106112b4576101008083540402835291602001916112df565b820191906000526020600020905b8154815290600101906020018083116112c257829003601f168201915b50505050509050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639b2ea4bd82856040518363ffffffff1660e01b81526004016113439291906126fd565b600060405180830381600087803b15801561135d57600080fd5b505af1158015611371573d6000803e3d6000fd5b505050505061138b565b600061138a5761138961272d565b5b5b5b5b505050565b61139a611763565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639b2ea4bd83836040518363ffffffff1660e01b81526004016113f79291906126fd565b600060405180830381600087803b15801561141157600080fd5b505af1158015611425573d6000803e3d6000fd5b505050505050565b6000600360149054906101000a900460ff16905090565b61144c611763565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036114bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b2906127ce565b60405180910390fd5b6114c4816117e1565b50565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690506000600281111561152d5761152c611b7b565b5b8160028111156115405761153f611b7b565b5b036115bc578273ffffffffffffffffffffffffffffffffffffffff1663f851a4406040518163ffffffff1660e01b8152600401602060405180830381865afa158015611590573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115b49190612059565b91505061175e565b600160028111156115d0576115cf611b7b565b5b8160028111156115e3576115e2611b7b565b5b0361165f578273ffffffffffffffffffffffffffffffffffffffff1663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611633573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116579190612059565b91505061175e565b60028081111561167257611671611b7b565b5b81600281111561168557611684611b7b565b5b0361172357600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061171b9190612059565b91505061175e565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611755906121ed565b60405180910390fd5b919050565b61176b6118a5565b73ffffffffffffffffffffffffffffffffffffffff16611789610e28565b73ffffffffffffffffffffffffffffffffffffffff16146117df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d69061283a565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006118ec826118c1565b9050919050565b60006118fe826118e1565b9050919050565b61190e816118f3565b811461191957600080fd5b50565b60008135905061192b81611905565b92915050565b600060208284031215611947576119466118b7565b5b60006119558482850161191c565b91505092915050565b60008115159050919050565b6119738161195e565b811461197e57600080fd5b50565b6000813590506119908161196a565b92915050565b6000602082840312156119ac576119ab6118b7565b5b60006119ba84828501611981565b91505092915050565b6119cc816118e1565b81146119d757600080fd5b50565b6000813590506119e9816119c3565b92915050565b600060208284031215611a0557611a046118b7565b5b6000611a13848285016119da565b91505092915050565b611a25816118e1565b82525050565b6000602082019050611a406000830184611a1c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a80578082015181840152602081019050611a65565b83811115611a8f576000848401525b50505050565b6000601f19601f8301169050919050565b6000611ab182611a46565b611abb8185611a51565b9350611acb818560208601611a62565b611ad481611a95565b840191505092915050565b60006020820190508181036000830152611af98184611aa6565b905092915050565b6000819050919050565b6000611b26611b21611b1c846118c1565b611b01565b6118c1565b9050919050565b6000611b3882611b0b565b9050919050565b6000611b4a82611b2d565b9050919050565b611b5a81611b3f565b82525050565b6000602082019050611b756000830184611b51565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60038110611bbb57611bba611b7b565b5b50565b6000819050611bcc82611baa565b919050565b6000611bdc82611bbe565b9050919050565b611bec81611bd1565b82525050565b6000602082019050611c076000830184611be3565b92915050565b6000611c18826118c1565b9050919050565b611c2881611c0d565b8114611c3357600080fd5b50565b600081359050611c4581611c1f565b92915050565b60008060408385031215611c6257611c616118b7565b5b6000611c7085828601611c36565b9250506020611c81858286016119da565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611ccd82611a95565b810181811067ffffffffffffffff82111715611cec57611ceb611c95565b5b80604052505050565b6000611cff6118ad565b9050611d0b8282611cc4565b919050565b600067ffffffffffffffff821115611d2b57611d2a611c95565b5b611d3482611a95565b9050602081019050919050565b82818337600083830152505050565b6000611d63611d5e84611d10565b611cf5565b905082815260208101848484011115611d7f57611d7e611c90565b5b611d8a848285611d41565b509392505050565b600082601f830112611da757611da6611c8b565b5b8135611db7848260208601611d50565b91505092915050565b60008060408385031215611dd757611dd66118b7565b5b6000611de5858286016119da565b925050602083013567ffffffffffffffff811115611e0657611e056118bc565b5b611e1285828601611d92565b9150509250929050565b60038110611e2957600080fd5b50565b600081359050611e3b81611e1c565b92915050565b60008060408385031215611e5857611e576118b7565b5b6000611e66858286016119da565b9250506020611e7785828601611e2c565b9150509250929050565b600067ffffffffffffffff821115611e9c57611e9b611c95565b5b611ea582611a95565b9050602081019050919050565b6000611ec5611ec084611e81565b611cf5565b905082815260208101848484011115611ee157611ee0611c90565b5b611eec848285611d41565b509392505050565b600082601f830112611f0957611f08611c8b565b5b8135611f19848260208601611eb2565b91505092915050565b600080600060608486031215611f3b57611f3a6118b7565b5b6000611f4986828701611c36565b9350506020611f5a868287016119da565b925050604084013567ffffffffffffffff811115611f7b57611f7a6118bc565b5b611f8786828701611ef4565b9150509250925092565b60008060408385031215611fa857611fa76118b7565b5b600083013567ffffffffffffffff811115611fc657611fc56118bc565b5b611fd285828601611d92565b9250506020611fe3858286016119da565b9150509250929050565b611ff68161195e565b82525050565b60006020820190506120116000830184611fed565b92915050565b60006020828403121561202d5761202c6118b7565b5b600061203b84828501611c36565b91505092915050565b600081519050612053816119c3565b92915050565b60006020828403121561206f5761206e6118b7565b5b600061207d84828501612044565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806120cd57607f821691505b6020821081036120e0576120df612086565b5b50919050565b60008190508160005260206000209050919050565b60008154612108816120b5565b6121128186611a51565b9450600182166000811461212d576001811461214357612176565b60ff198316865281151560200286019350612176565b61214c856120e6565b60005b8381101561216e5781548189015260018201915060208101905061214f565b808801955050505b50505092915050565b6000602082019050818103600083015261219981846120fb565b905092915050565b7f50726f787941646d696e3a20756e6b6e6f776e2070726f787920747970650000600082015250565b60006121d7601e83611a51565b91506121e2826121a1565b602082019050919050565b60006020820190508181036000830152612206816121ca565b9050919050565b600081519050919050565b600081905092915050565b600061222e8261220d565b6122388185612218565b9350612248818560208601611a62565b80840191505092915050565b60006122608284612223565b915081905092915050565b600082825260208201905092915050565b60006122878261220d565b612291818561226b565b93506122a1818560208601611a62565b6122aa81611a95565b840191505092915050565b600060208201905081810360008301526122cf818461227c565b905092915050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026123247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826122e7565b61232e86836122e7565b95508019841693508086168417925050509392505050565b6000819050919050565b600061236b61236661236184612346565b611b01565b612346565b9050919050565b6000819050919050565b61238583612350565b61239961239182612372565b8484546122f4565b825550505050565b600090565b6123ae6123a1565b6123b981848461237c565b505050565b5b818110156123dd576123d26000826123a6565b6001810190506123bf565b5050565b601f821115612422576123f3816120e6565b6123fc846122d7565b8101602085101561240b578190505b61241f612417856122d7565b8301826123be565b50505b505050565b600082821c905092915050565b600061244560001984600802612427565b1980831691505092915050565b600061245e8383612434565b9150826002028217905092915050565b61247782611a46565b67ffffffffffffffff8111156124905761248f611c95565b5b61249a82546120b5565b6124a58282856123e1565b600060209050601f8311600181146124d857600084156124c6578287015190505b6124d08582612452565b865550612538565b601f1984166124e6866120e6565b60005b8281101561250e578489015182556001820191506020850194506020810190506124e9565b8683101561252b5784890151612527601f891682612434565b8355505b6001600288020188555050505b505050505050565b60006040820190506125556000830185611a1c565b8181036020830152612567818461227c565b90509392505050565b600061258361257e84611e81565b611cf5565b90508281526020810184848401111561259f5761259e611c90565b5b6125aa848285611a62565b509392505050565b600082601f8301126125c7576125c6611c8b565b5b81516125d7848260208601612570565b91505092915050565b6000602082840312156125f6576125f56118b7565b5b600082015167ffffffffffffffff811115612614576126136118bc565b5b612620848285016125b2565b91505092915050565b7f50726f787941646d696e3a2063616c6c20746f2070726f78792061667465722060008201527f75706772616465206661696c6564000000000000000000000000000000000000602082015250565b6000612685602e83611a51565b915061269082612629565b604082019050919050565b600060208201905081810360008301526126b481612678565b9050919050565b6000819050919050565b6126ce816126bb565b82525050565b60006040820190506126e960008301856126c5565b6126f660208301846126c5565b9392505050565b600060408201905081810360008301526127178185611aa6565b90506127266020830184611a1c565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006127b8602683611a51565b91506127c38261275c565b604082019050919050565b600060208201905081810360008301526127e7816127ab565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612824602083611a51565b915061282f826127ee565b602082019050919050565b6000602082019050818103600083015261285381612817565b905091905056fea164736f6c634300080f000a0000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001c9d608060405234801561001057600080fd5b50600061001c3361002b565b6100258161002b565b5061007b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611c138061008a6000396000f3fe6080604052600436106101445760003560e01c80637eff275e116100c057806399a88ec411610074578063b794726211610059578063b7947262146103c8578063f2fde38b14610403578063f3b7dead1461042357600080fd5b806399a88ec4146103885780639b2ea4bd146103a857600080fd5b80638d52d4a0116100a55780638d52d4a01461032a5780638da5cb5b1461034a5780639623609d1461037557600080fd5b80637eff275e146102ea578063860f7cda1461030a57600080fd5b80633ab76e9f116101175780636bd9f516116100fc5780636bd9f51614610278578063715018a6146102b55780637c36f37e146102ca57600080fd5b80633ab76e9f1461020257806354fd4d501461022f57600080fd5b80630652b57a1461014957806307c8f7b01461016b578063204e1c7a1461018b578063238181ae146101d5575b600080fd5b34801561015557600080fd5b50610169610164366004611490565b610443565b005b34801561017757600080fd5b506101696101863660046114ad565b610492565b34801561019757600080fd5b506101ab6101a6366004611490565b6104e4565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156101e157600080fd5b506101f56101f0366004611490565b61070a565b6040516101cc9190611545565b34801561020e57600080fd5b506003546101ab9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561023b57600080fd5b506101f56040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b34801561028457600080fd5b506102a8610293366004611490565b60016020526000908152604090205460ff1681565b6040516101cc9190611587565b3480156102c157600080fd5b506101696107a4565b3480156102d657600080fd5b506101696102e5366004611490565b6107b8565b3480156102f657600080fd5b506101696103053660046115c8565b6109b0565b34801561031657600080fd5b50610169610325366004611723565b610b63565b34801561033657600080fd5b50610169610345366004611773565b610b9a565b34801561035657600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff166101ab565b6101696103833660046117a5565b610c0e565b34801561039457600080fd5b506101696103a33660046115c8565b610e25565b3480156103b457600080fd5b506101696103c336600461181b565b6110b5565b3480156103d457600080fd5b5060035474010000000000000000000000000000000000000000900460ff1660405190151581526020016101cc565b34801561040f57600080fd5b5061016961041e366004611490565b61114b565b34801561042f57600080fd5b506101ab61043e366004611490565b611202565b61044b611378565b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61049a611378565b6003805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b73ffffffffffffffffffffffffffffffffffffffff811660009081526001602052604081205460ff168181600281111561052057610520611558565b0361059b578273ffffffffffffffffffffffffffffffffffffffff16635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105949190611862565b9392505050565b60018160028111156105af576105af611558565b036105ff578273ffffffffffffffffffffffffffffffffffffffff1663aaf10f426040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b600281600281111561061357610613611558565b0361069d5760035473ffffffffffffffffffffffffffffffffffffffff8481166000908152600260205260409081902090517fbf40fac1000000000000000000000000000000000000000000000000000000008152919092169163bf40fac19161068091906004016118cc565b602060405180830381865afa158015610570573d6000803e3d6000fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f50726f787941646d696e3a20756e6b6e6f776e2070726f78792074797065000060448201526064015b60405180910390fd5b50919050565b600260205260009081526040902080546107239061187f565b80601f016020809104026020016040519081016040528092919081815260200182805461074f9061187f565b801561079c5780601f106107715761010080835404028352916020019161079c565b820191906000526020600020905b81548152906001019060200180831161077f57829003601f168201915b505050505081565b6107ac611378565b6107b660006113f9565b565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610805576040517fcde661e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff163b60000361086e576040517fe1e56d9d00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016106fb565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fd55ec697000000000000000000000000000000000000000000000000000000001790529051600091829173ffffffffffffffffffffffffffffffffffffffff8516916108ec91611975565b600060405180830381855af49150503d8060008114610927576040519150601f19603f3d011682016040523d82523d6000602084013e61092c565b606091505b50915091508161096a57806040517f1c0a89cc0000000000000000000000000000000000000000000000000000000081526004016106fb9190611545565b60405173ffffffffffffffffffffffffffffffffffffffff8416907f14e22d69ea30aab5b2220164345b33bdb5125e9c77a7d5fe12e23a1c691bd13990600090a2505050565b6109b8611378565b73ffffffffffffffffffffffffffffffffffffffff821660009081526001602052604081205460ff16908160028111156109f4576109f4611558565b03610a80576040517f8f28397000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690638f283970906024015b600060405180830381600087803b158015610a6357600080fd5b505af1158015610a77573d6000803e3d6000fd5b50505050505050565b6001816002811115610a9457610a94611558565b03610aed576040517f13af403500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301528416906313af403590602401610a49565b6002816002811115610b0157610b01611558565b0361069d576003546040517ff2fde38b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529091169063f2fde38b90602401610a49565b505050565b610b6b611378565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600260205260409020610b5e82826119d7565b610ba2611378565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600160208190526040909120805483927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0090911690836002811115610c0557610c05611558565b02179055505050565b610c16611378565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001602052604081205460ff1690816002811115610c5257610c52611558565b03610d18576040517f4f1ef28600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851690634f1ef286903490610cad9087908790600401611af1565b60006040518083038185885af1158015610ccb573d6000803e3d6000fd5b50505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d129190810190611b28565b50610e1f565b610d228484610e25565b60008473ffffffffffffffffffffffffffffffffffffffff163484604051610d4a9190611975565b60006040518083038185875af1925050503d8060008114610d87576040519150601f19603f3d011682016040523d82523d6000602084013e610d8c565b606091505b5050905080610e1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f50726f787941646d696e3a2063616c6c20746f2070726f78792061667465722060448201527f75706772616465206661696c656400000000000000000000000000000000000060648201526084016106fb565b505b50505050565b610e2d611378565b73ffffffffffffffffffffffffffffffffffffffff821660009081526001602052604081205460ff1690816002811115610e6957610e69611558565b03610ec2576040517f3659cfe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690633659cfe690602401610a49565b6001816002811115610ed657610ed6611558565b03610f55576040517f9b0b0fda0000000000000000000000000000000000000000000000000000000081527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc600482015273ffffffffffffffffffffffffffffffffffffffff8381166024830152841690639b0b0fda90604401610a49565b6002816002811115610f6957610f69611558565b036110ad5773ffffffffffffffffffffffffffffffffffffffff831660009081526002602052604081208054610f9e9061187f565b80601f0160208091040260200160405190810160405280929190818152602001828054610fca9061187f565b80156110175780601f10610fec57610100808354040283529160200191611017565b820191906000526020600020905b815481529060010190602001808311610ffa57829003601f168201915b50506003546040517f9b2ea4bd00000000000000000000000000000000000000000000000000000000815294955073ffffffffffffffffffffffffffffffffffffffff1693639b2ea4bd935061107592508591508790600401611b9f565b600060405180830381600087803b15801561108f57600080fd5b505af11580156110a3573d6000803e3d6000fd5b5050505050505050565b610b5e611bd7565b6110bd611378565b6003546040517f9b2ea4bd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911690639b2ea4bd906111159085908590600401611b9f565b600060405180830381600087803b15801561112f57600080fd5b505af1158015611143573d6000803e3d6000fd5b505050505050565b611153611378565b73ffffffffffffffffffffffffffffffffffffffff81166111f6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106fb565b6111ff816113f9565b50565b73ffffffffffffffffffffffffffffffffffffffff811660009081526001602052604081205460ff168181600281111561123e5761123e611558565b0361128e578273ffffffffffffffffffffffffffffffffffffffff1663f851a4406040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b60018160028111156112a2576112a2611558565b036112f2578273ffffffffffffffffffffffffffffffffffffffff1663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b600281600281111561130657611306611558565b0361069d57600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610570573d6000803e3d6000fd5b60005473ffffffffffffffffffffffffffffffffffffffff1633146107b6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106fb565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b73ffffffffffffffffffffffffffffffffffffffff811681146111ff57600080fd5b6000602082840312156114a257600080fd5b81356105948161146e565b6000602082840312156114bf57600080fd5b8135801515811461059457600080fd5b60005b838110156114ea5781810151838201526020016114d2565b83811115610e1f5750506000910152565b600081518084526115138160208601602086016114cf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061059460208301846114fb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60208101600383106115c2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b600080604083850312156115db57600080fd5b82356115e68161146e565b915060208301356115f68161146e565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561167757611677611601565b604052919050565b600067ffffffffffffffff82111561169957611699611601565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b60006116d86116d38461167f565b611630565b90508281528383830111156116ec57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261171457600080fd5b610594838335602085016116c5565b6000806040838503121561173657600080fd5b82356117418161146e565b9150602083013567ffffffffffffffff81111561175d57600080fd5b61176985828601611703565b9150509250929050565b6000806040838503121561178657600080fd5b82356117918161146e565b91506020830135600381106115f657600080fd5b6000806000606084860312156117ba57600080fd5b83356117c58161146e565b925060208401356117d58161146e565b9150604084013567ffffffffffffffff8111156117f157600080fd5b8401601f8101861361180257600080fd5b611811868235602084016116c5565b9150509250925092565b6000806040838503121561182e57600080fd5b823567ffffffffffffffff81111561184557600080fd5b61185185828601611703565b92505060208301356115f68161146e565b60006020828403121561187457600080fd5b81516105948161146e565b600181811c9082168061189357607f821691505b602082108103610704577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006020808352600084546118e08161187f565b80848701526040600180841660008114611901576001811461193957611967565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838a01528284151560051b8a01019550611967565b896000528660002060005b8581101561195f5781548b8201860152908301908801611944565b8a0184019650505b509398975050505050505050565b600082516119878184602087016114cf565b9190910192915050565b601f821115610b5e57600081815260208120601f850160051c810160208610156119b85750805b601f850160051c820191505b81811015611143578281556001016119c4565b815167ffffffffffffffff8111156119f1576119f1611601565b611a05816119ff845461187f565b84611991565b602080601f831160018114611a585760008415611a225750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555611143565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611aa557888601518255948401946001909101908401611a86565b5085821015611ae157878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b73ffffffffffffffffffffffffffffffffffffffff83168152604060208201526000611b2060408301846114fb565b949350505050565b600060208284031215611b3a57600080fd5b815167ffffffffffffffff811115611b5157600080fd5b8201601f81018413611b6257600080fd5b8051611b706116d38261167f565b818152856020838501011115611b8557600080fd5b611b968260208301602086016114cf565b95945050505050565b604081526000611bb260408301856114fb565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea164736f6c634300080f000a000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 2400000, "intent": "Deploy L2ProxyAdmin Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001717608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b611587806101905f395ff3fe6080604052600436106100bb575f3560e01c80630d9019e1146100c6578063307f2962146100f05780633bbed4a0146101185780633ccfd60b146101405780633e47158c1461016a57806354fd4d501461019457806366d003ac146101be57806382356d8a146101e85780638312f1491461021257806384411d651461023c57806385b5b14d14610266578063b49dc7411461028e578063d0e12f90146102b6578063d3e5792b146102e0578063dad544e01461030a576100c2565b366100c257005b5f80fd5b3480156100d1575f80fd5b506100da610334565b6040516100e79190610e0d565b60405180910390f35b3480156100fb575f80fd5b5061011660048036038101906101119190610e4d565b61035c565b005b348015610123575f80fd5b5061013e60048036038101906101399190610ea2565b6103de565b005b34801561014b575f80fd5b50610154610488565b6040516101619190610ee5565b60405180910390f35b348015610175575f80fd5b5061017e6106a7565b60405161018b9190610f59565b60405180910390f35b34801561019f575f80fd5b506101a86108f6565b6040516101b59190610fe2565b60405180910390f35b3480156101c9575f80fd5b506101d261092f565b6040516101df9190610e0d565b60405180910390f35b3480156101f3575f80fd5b506101fc610954565b6040516102099190611075565b60405180910390f35b34801561021d575f80fd5b50610226610967565b6040516102339190610ee5565b60405180910390f35b348015610247575f80fd5b5061025061096d565b60405161025d9190610ee5565b60405180910390f35b348015610271575f80fd5b5061028c600480360381019061028791906110b8565b610972565b005b348015610299575f80fd5b506102b460048036038101906102af91906110e3565b6109c4565b005b3480156102c1575f80fd5b506102ca610bb7565b6040516102d79190611075565b60405180910390f35b3480156102eb575f80fd5b506102f4610bcd565b6040516103019190610ee5565b60405180910390f35b348015610315575f80fd5b5061031e610bd6565b60405161032b9190610e0d565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610364610c50565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff0219169083600181111561039c5761039b611002565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103d2929190611133565b60405180910390a15050565b6103e6610c50565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e4593818360405161047c92919061115a565b60405180910390a15050565b5f6001544710156104ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c590611217565b60405180910390fd5b479050805f808282546104e19190611262565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba82823360405161054093929190611295565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff1660405161058c94939291906112ca565b60405180910390a16001808111156105a7576105a6611002565b5b600260149054906101000a900460ff1660018111156105c9576105c8611002565b5b03610621575f6105d98284610cbe565b90508061061b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106129061137d565b60405180910390fd5b506106a3565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b815260040161067492919061140d565b5f604051808303818588803b15801561068b575f80fd5b505af115801561069d573d5f803e3d5ffd5b50505050505b5090565b5f806106d47fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461071257809150506108f3565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516107559190611447565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107ac305f604051602001610791929190611488565b60405160208183030381529060405280519060200120610cdc565b146107e3576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6108163060016040516020016107fb929190611488565b60405160208183030381529060405280519060200120610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108c1578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b891906114c3565b925050506108f3565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b61097a610c50565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109b89291906114ee565b60405180910390a15050565b5f6109cd610ce6565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a155750825b90505f60018367ffffffffffffffff16148015610a4857505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a56575080155b15610a8d576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610ada576001855f0160086101000a81548160ff0219169083151502179055505b610ae2610d0d565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b4e57610b4d611002565b5b02179055508315610bad575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610ba49190611561565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f610bdf6106a7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4b91906114c3565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610c6f610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614610cbc576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cca835a84610dbc565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d2c6106a7565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d8357503373ffffffffffffffffffffffffffffffffffffffff16610d6a610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610dba576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610df782610dce565b9050919050565b610e0781610ded565b82525050565b5f602082019050610e205f830184610dfe565b92915050565b5f80fd5b60028110610e36575f80fd5b50565b5f81359050610e4781610e2a565b92915050565b5f60208284031215610e6257610e61610e26565b5b5f610e6f84828501610e39565b91505092915050565b610e8181610ded565b8114610e8b575f80fd5b50565b5f81359050610e9c81610e78565b92915050565b5f60208284031215610eb757610eb6610e26565b5b5f610ec484828501610e8e565b91505092915050565b5f819050919050565b610edf81610ecd565b82525050565b5f602082019050610ef85f830184610ed6565b92915050565b5f819050919050565b5f610f21610f1c610f1784610dce565b610efe565b610dce565b9050919050565b5f610f3282610f07565b9050919050565b5f610f4382610f28565b9050919050565b610f5381610f39565b82525050565b5f602082019050610f6c5f830184610f4a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610fb482610f72565b610fbe8185610f7c565b9350610fce818560208601610f8c565b610fd781610f9a565b840191505092915050565b5f6020820190508181035f830152610ffa8184610faa565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600281106110405761103f611002565b5b50565b5f8190506110508261102f565b919050565b5f61105f82611043565b9050919050565b61106f81611055565b82525050565b5f6020820190506110885f830184611066565b92915050565b61109781610ecd565b81146110a1575f80fd5b50565b5f813590506110b28161108e565b92915050565b5f602082840312156110cd576110cc610e26565b5b5f6110da848285016110a4565b91505092915050565b5f805f606084860312156110fa576110f9610e26565b5b5f61110786828701610e8e565b9350506020611118868287016110a4565b925050604061112986828701610e39565b9150509250925092565b5f6040820190506111465f830185611066565b6111536020830184611066565b9392505050565b5f60408201905061116d5f830185610dfe565b61117a6020830184610dfe565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f611201604a83610f7c565b915061120c82611181565b606082019050919050565b5f6020820190508181035f83015261122e816111f5565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61126c82610ecd565b915061127783610ecd565b925082820190508082111561128f5761128e611235565b5b92915050565b5f6060820190506112a85f830186610ed6565b6112b56020830185610dfe565b6112c26040830184610dfe565b949350505050565b5f6080820190506112dd5f830187610ed6565b6112ea6020830186610dfe565b6112f76040830185610dfe565b6113046060830184611066565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f611367603083610f7c565b91506113728261130d565b604082019050919050565b5f6020820190508181035f8301526113948161135b565b9050919050565b5f63ffffffff82169050919050565b5f6113c46113bf6113ba8461139b565b610efe565b610ecd565b9050919050565b6113d4816113aa565b82525050565b5f82825260208201905092915050565b50565b5f6113f85f836113da565b9150611403826113ea565b5f82019050919050565b5f6060820190506114205f830185610dfe565b61142d60208301846113cb565b818103604083015261143e816113ed565b90509392505050565b5f61145182610ecd565b915061145c83610ecd565b925082820261146a81610ecd565b9150828204841483151761148157611480611235565b5b5092915050565b5f60408201905061149b5f830185610dfe565b6114a86020830184610ed6565b9392505050565b5f815190506114bd81610e78565b92915050565b5f602082840312156114d8576114d7610e26565b5b5f6114e5848285016114af565b91505092915050565b5f6040820190506115015f830185610ed6565b61150e6020830184610ed6565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f61154b61154661154184611515565b610efe565b61151e565b9050919050565b61155b81611531565b82525050565b5f6020820190506115745f830184611552565b9291505056fea164736f6c6343000819000a000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000108a6080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fb4806100d65f395ff3fe6080604052600436106100e7575f3560e01c806382356d8a11610087578063b49dc74111610057578063b49dc741146102bf578063d0e12f90146102de578063d3e5792b1461030d578063dad544e014610321575f80fd5b806382356d8a146102395780638312f1491461027757806384411d651461028c57806385b5b14d146102a0575f80fd5b80633ccfd60b116100c25780633ccfd60b146101825780633e47158c146101a457806354fd4d50146101b857806366d003ac1461020d575f80fd5b80630d9019e1146100f2578063307f2962146101425780633bbed4a014610163575f80fd5b366100ee57005b5f80fd5b3480156100fd575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d575f80fd5b5061016161015c366004610d62565b610335565b005b34801561016e575f80fd5b5061016161017d366004610d9f565b6103db565b34801561018d575f80fd5b50610196610462565b604051908152602001610139565b3480156101af575f80fd5b50610118610770565b3480156101c3575f80fd5b506102006040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b6040516101399190610dba565b348015610218575f80fd5b506002546101189073ffffffffffffffffffffffffffffffffffffffff1681565b348015610244575f80fd5b5060025461026a9074010000000000000000000000000000000000000000900460ff1681565b6040516101399190610e73565b348015610282575f80fd5b5061019660015481565b348015610297575f80fd5b506101965f5481565b3480156102ab575f80fd5b506101616102ba366004610e87565b610976565b3480156102ca575f80fd5b506101616102d9366004610e9e565b6109bc565b3480156102e9575f80fd5b5060025474010000000000000000000000000000000000000000900460ff1661026a565b348015610318575f80fd5b50600154610196565b34801561032c575f80fd5b50610118610bd8565b61033d610c52565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091169083600181111561039957610399610e0d565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103cf929190610ed9565b60405180910390a15050565b6103e3610c52565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103cf565b5f600154471015610520576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f808282546105339190610f21565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105e89185918591339174010000000000000000000000000000000000000000900460ff1690610f34565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062157610621610e0d565b036106c5575f6106318284610caa565b9050806106c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610517565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610755575f80fd5b505af1158015610767573d5f803e3d5ffd5b50505050505090565b5f8061079a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107bd57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108009190610f75565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061085a906060015b604051602081830303815290604052805190602001205490565b14610891576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108b290606001610840565b905073ffffffffffffffffffffffffffffffffffffffff811615610944578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190610f8c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e610c52565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103cf565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a065750825b90505f8267ffffffffffffffff166001148015610a225750303b155b905081158015610a30575080155b15610a67576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ac85784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610ad0610cbd565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b6857610b68610e0d565b02179055508315610bce5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610be1610770565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4d9190610f8c565b905090565b33610c5b610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614610ca8576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cb6835a84610d3e565b9392505050565b33610cc6610770565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d07575033610cee610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610ca8576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d5d575f80fd5b919050565b5f60208284031215610d72575f80fd5b610cb682610d4f565b73ffffffffffffffffffffffffffffffffffffffff81168114610d9c575f80fd5b50565b5f60208284031215610daf575f80fd5b8135610cb681610d7b565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e6f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e818284610e3a565b92915050565b5f60208284031215610e97575f80fd5b5035919050565b5f805f60608486031215610eb0575f80fd5b8335610ebb81610d7b565b925060208401359150610ed060408501610d4f565b90509250925092565b60408101610ee78285610e3a565b610cb66020830184610e3a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8157610e81610ef4565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f6c6060830184610e3a565b95945050505050565b8082028115828204841417610e8157610e81610ef4565b5f60208284031215610f9c575f80fd5b8151610cb681610d7b56fea164736f6c6343000819000a00000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1300000, "intent": "Deploy BaseFeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001717608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b611587806101905f395ff3fe6080604052600436106100bb575f3560e01c80630d9019e1146100c6578063307f2962146100f05780633bbed4a0146101185780633ccfd60b146101405780633e47158c1461016a57806354fd4d501461019457806366d003ac146101be57806382356d8a146101e85780638312f1491461021257806384411d651461023c57806385b5b14d14610266578063b49dc7411461028e578063d0e12f90146102b6578063d3e5792b146102e0578063dad544e01461030a576100c2565b366100c257005b5f80fd5b3480156100d1575f80fd5b506100da610334565b6040516100e79190610e0d565b60405180910390f35b3480156100fb575f80fd5b5061011660048036038101906101119190610e4d565b61035c565b005b348015610123575f80fd5b5061013e60048036038101906101399190610ea2565b6103de565b005b34801561014b575f80fd5b50610154610488565b6040516101619190610ee5565b60405180910390f35b348015610175575f80fd5b5061017e6106a7565b60405161018b9190610f59565b60405180910390f35b34801561019f575f80fd5b506101a86108f6565b6040516101b59190610fe2565b60405180910390f35b3480156101c9575f80fd5b506101d261092f565b6040516101df9190610e0d565b60405180910390f35b3480156101f3575f80fd5b506101fc610954565b6040516102099190611075565b60405180910390f35b34801561021d575f80fd5b50610226610967565b6040516102339190610ee5565b60405180910390f35b348015610247575f80fd5b5061025061096d565b60405161025d9190610ee5565b60405180910390f35b348015610271575f80fd5b5061028c600480360381019061028791906110b8565b610972565b005b348015610299575f80fd5b506102b460048036038101906102af91906110e3565b6109c4565b005b3480156102c1575f80fd5b506102ca610bb7565b6040516102d79190611075565b60405180910390f35b3480156102eb575f80fd5b506102f4610bcd565b6040516103019190610ee5565b60405180910390f35b348015610315575f80fd5b5061031e610bd6565b60405161032b9190610e0d565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610364610c50565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff0219169083600181111561039c5761039b611002565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103d2929190611133565b60405180910390a15050565b6103e6610c50565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e4593818360405161047c92919061115a565b60405180910390a15050565b5f6001544710156104ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c590611217565b60405180910390fd5b479050805f808282546104e19190611262565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba82823360405161054093929190611295565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff1660405161058c94939291906112ca565b60405180910390a16001808111156105a7576105a6611002565b5b600260149054906101000a900460ff1660018111156105c9576105c8611002565b5b03610621575f6105d98284610cbe565b90508061061b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106129061137d565b60405180910390fd5b506106a3565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b815260040161067492919061140d565b5f604051808303818588803b15801561068b575f80fd5b505af115801561069d573d5f803e3d5ffd5b50505050505b5090565b5f806106d47fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461071257809150506108f3565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516107559190611447565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107ac305f604051602001610791929190611488565b60405160208183030381529060405280519060200120610cdc565b146107e3576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6108163060016040516020016107fb929190611488565b60405160208183030381529060405280519060200120610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108c1578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b891906114c3565b925050506108f3565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b61097a610c50565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109b89291906114ee565b60405180910390a15050565b5f6109cd610ce6565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a155750825b90505f60018367ffffffffffffffff16148015610a4857505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a56575080155b15610a8d576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610ada576001855f0160086101000a81548160ff0219169083151502179055505b610ae2610d0d565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b4e57610b4d611002565b5b02179055508315610bad575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610ba49190611561565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f610bdf6106a7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4b91906114c3565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610c6f610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614610cbc576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cca835a84610dbc565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d2c6106a7565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d8357503373ffffffffffffffffffffffffffffffffffffffff16610d6a610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610dba576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610df782610dce565b9050919050565b610e0781610ded565b82525050565b5f602082019050610e205f830184610dfe565b92915050565b5f80fd5b60028110610e36575f80fd5b50565b5f81359050610e4781610e2a565b92915050565b5f60208284031215610e6257610e61610e26565b5b5f610e6f84828501610e39565b91505092915050565b610e8181610ded565b8114610e8b575f80fd5b50565b5f81359050610e9c81610e78565b92915050565b5f60208284031215610eb757610eb6610e26565b5b5f610ec484828501610e8e565b91505092915050565b5f819050919050565b610edf81610ecd565b82525050565b5f602082019050610ef85f830184610ed6565b92915050565b5f819050919050565b5f610f21610f1c610f1784610dce565b610efe565b610dce565b9050919050565b5f610f3282610f07565b9050919050565b5f610f4382610f28565b9050919050565b610f5381610f39565b82525050565b5f602082019050610f6c5f830184610f4a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610fb482610f72565b610fbe8185610f7c565b9350610fce818560208601610f8c565b610fd781610f9a565b840191505092915050565b5f6020820190508181035f830152610ffa8184610faa565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600281106110405761103f611002565b5b50565b5f8190506110508261102f565b919050565b5f61105f82611043565b9050919050565b61106f81611055565b82525050565b5f6020820190506110885f830184611066565b92915050565b61109781610ecd565b81146110a1575f80fd5b50565b5f813590506110b28161108e565b92915050565b5f602082840312156110cd576110cc610e26565b5b5f6110da848285016110a4565b91505092915050565b5f805f606084860312156110fa576110f9610e26565b5b5f61110786828701610e8e565b9350506020611118868287016110a4565b925050604061112986828701610e39565b9150509250925092565b5f6040820190506111465f830185611066565b6111536020830184611066565b9392505050565b5f60408201905061116d5f830185610dfe565b61117a6020830184610dfe565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f611201604a83610f7c565b915061120c82611181565b606082019050919050565b5f6020820190508181035f83015261122e816111f5565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61126c82610ecd565b915061127783610ecd565b925082820190508082111561128f5761128e611235565b5b92915050565b5f6060820190506112a85f830186610ed6565b6112b56020830185610dfe565b6112c26040830184610dfe565b949350505050565b5f6080820190506112dd5f830187610ed6565b6112ea6020830186610dfe565b6112f76040830185610dfe565b6113046060830184611066565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f611367603083610f7c565b91506113728261130d565b604082019050919050565b5f6020820190508181035f8301526113948161135b565b9050919050565b5f63ffffffff82169050919050565b5f6113c46113bf6113ba8461139b565b610efe565b610ecd565b9050919050565b6113d4816113aa565b82525050565b5f82825260208201905092915050565b50565b5f6113f85f836113da565b9150611403826113ea565b5f82019050919050565b5f6060820190506114205f830185610dfe565b61142d60208301846113cb565b818103604083015261143e816113ed565b90509392505050565b5f61145182610ecd565b915061145c83610ecd565b925082820261146a81610ecd565b9150828204841483151761148157611480611235565b5b5092915050565b5f60408201905061149b5f830185610dfe565b6114a86020830184610ed6565b9392505050565b5f815190506114bd81610e78565b92915050565b5f602082840312156114d8576114d7610e26565b5b5f6114e5848285016114af565b91505092915050565b5f6040820190506115015f830185610ed6565b61150e6020830184610ed6565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f61154b61154661154184611515565b610efe565b61151e565b9050919050565b61155b81611531565b82525050565b5f6020820190506115745f830184611552565b9291505056fea164736f6c6343000819000a000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000108a6080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fb4806100d65f395ff3fe6080604052600436106100e7575f3560e01c806382356d8a11610087578063b49dc74111610057578063b49dc741146102bf578063d0e12f90146102de578063d3e5792b1461030d578063dad544e014610321575f80fd5b806382356d8a146102395780638312f1491461027757806384411d651461028c57806385b5b14d146102a0575f80fd5b80633ccfd60b116100c25780633ccfd60b146101825780633e47158c146101a457806354fd4d50146101b857806366d003ac1461020d575f80fd5b80630d9019e1146100f2578063307f2962146101425780633bbed4a014610163575f80fd5b366100ee57005b5f80fd5b3480156100fd575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d575f80fd5b5061016161015c366004610d62565b610335565b005b34801561016e575f80fd5b5061016161017d366004610d9f565b6103db565b34801561018d575f80fd5b50610196610462565b604051908152602001610139565b3480156101af575f80fd5b50610118610770565b3480156101c3575f80fd5b506102006040518060400160405280600581526020017f312e362e3100000000000000000000000000000000000000000000000000000081525081565b6040516101399190610dba565b348015610218575f80fd5b506002546101189073ffffffffffffffffffffffffffffffffffffffff1681565b348015610244575f80fd5b5060025461026a9074010000000000000000000000000000000000000000900460ff1681565b6040516101399190610e73565b348015610282575f80fd5b5061019660015481565b348015610297575f80fd5b506101965f5481565b3480156102ab575f80fd5b506101616102ba366004610e87565b610976565b3480156102ca575f80fd5b506101616102d9366004610e9e565b6109bc565b3480156102e9575f80fd5b5060025474010000000000000000000000000000000000000000900460ff1661026a565b348015610318575f80fd5b50600154610196565b34801561032c575f80fd5b50610118610bd8565b61033d610c52565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091169083600181111561039957610399610e0d565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103cf929190610ed9565b60405180910390a15050565b6103e3610c52565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103cf565b5f600154471015610520576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f808282546105339190610f21565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105e89185918591339174010000000000000000000000000000000000000000900460ff1690610f34565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062157610621610e0d565b036106c5575f6106318284610caa565b9050806106c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610517565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610755575f80fd5b505af1158015610767573d5f803e3d5ffd5b50505050505090565b5f8061079a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107bd57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108009190610f75565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061085a906060015b604051602081830303815290604052805190602001205490565b14610891576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108b290606001610840565b905073ffffffffffffffffffffffffffffffffffffffff811615610944578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190610f8c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e610c52565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103cf565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a065750825b90505f8267ffffffffffffffff166001148015610a225750303b155b905081158015610a30575080155b15610a67576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ac85784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610ad0610cbd565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b6857610b68610e0d565b02179055508315610bce5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610be1610770565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4d9190610f8c565b905090565b33610c5b610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614610ca8576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cb6835a84610d3e565b9392505050565b33610cc6610770565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d07575033610cee610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610ca8576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d5d575f80fd5b919050565b5f60208284031215610d72575f80fd5b610cb682610d4f565b73ffffffffffffffffffffffffffffffffffffffff81168114610d9c575f80fd5b50565b5f60208284031215610daf575f80fd5b8135610cb681610d7b565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e6f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e818284610e3a565b92915050565b5f60208284031215610e97575f80fd5b5035919050565b5f805f60608486031215610eb0575f80fd5b8335610ebb81610d7b565b925060208401359150610ed060408501610d4f565b90509250925092565b60408101610ee78285610e3a565b610cb66020830184610e3a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8157610e81610ef4565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f6c6060830184610e3a565b95945050505050565b8082028115828204841417610e8157610e81610ef4565b5f60208284031215610f9c575f80fd5b8151610cb681610d7b56fea164736f6c6343000819000a00000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 50000, "intent": "Deploy L1FeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001717608060405234801561000f575f80fd5b5061001e61002360201b60201c565b610183565b5f61003261012160201b60201c565b9050805f0160089054906101000a900460ff161561007c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff8016815f015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff161461011e5767ffffffffffffffff815f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff604051610115919061016a565b60405180910390a15b50565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b5f67ffffffffffffffff82169050919050565b61016481610148565b82525050565b5f60208201905061017d5f83018461015b565b92915050565b611587806101905f395ff3fe6080604052600436106100bb575f3560e01c80630d9019e1146100c6578063307f2962146100f05780633bbed4a0146101185780633ccfd60b146101405780633e47158c1461016a57806354fd4d501461019457806366d003ac146101be57806382356d8a146101e85780638312f1491461021257806384411d651461023c57806385b5b14d14610266578063b49dc7411461028e578063d0e12f90146102b6578063d3e5792b146102e0578063dad544e01461030a576100c2565b366100c257005b5f80fd5b3480156100d1575f80fd5b506100da610334565b6040516100e79190610e0d565b60405180910390f35b3480156100fb575f80fd5b5061011660048036038101906101119190610e4d565b61035c565b005b348015610123575f80fd5b5061013e60048036038101906101399190610ea2565b6103de565b005b34801561014b575f80fd5b50610154610488565b6040516101619190610ee5565b60405180910390f35b348015610175575f80fd5b5061017e6106a7565b60405161018b9190610f59565b60405180910390f35b34801561019f575f80fd5b506101a86108f6565b6040516101b59190610fe2565b60405180910390f35b3480156101c9575f80fd5b506101d261092f565b6040516101df9190610e0d565b60405180910390f35b3480156101f3575f80fd5b506101fc610954565b6040516102099190611075565b60405180910390f35b34801561021d575f80fd5b50610226610967565b6040516102339190610ee5565b60405180910390f35b348015610247575f80fd5b5061025061096d565b60405161025d9190610ee5565b60405180910390f35b348015610271575f80fd5b5061028c600480360381019061028791906110b8565b610972565b005b348015610299575f80fd5b506102b460048036038101906102af91906110e3565b6109c4565b005b3480156102c1575f80fd5b506102ca610bb7565b6040516102d79190611075565b60405180910390f35b3480156102eb575f80fd5b506102f4610bcd565b6040516103019190610ee5565b60405180910390f35b348015610315575f80fd5b5061031e610bd6565b60405161032b9190610e0d565b60405180910390f35b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610364610c50565b5f600260149054906101000a900460ff16905081600260146101000a81548160ff0219169083600181111561039c5761039b611002565b5b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103d2929190611133565b60405180910390a15050565b6103e6610c50565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e4593818360405161047c92919061115a565b60405180910390a15050565b5f6001544710156104ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c590611217565b60405180910390fd5b479050805f808282546104e19190611262565b925050819055505f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690507fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba82823360405161054093929190611295565b60405180910390a17f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee828233600260149054906101000a900460ff1660405161058c94939291906112ca565b60405180910390a16001808111156105a7576105a6611002565b5b600260149054906101000a900460ff1660018111156105c9576105c8611002565b5b03610621575f6105d98284610cbe565b90508061061b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106129061137d565b60405180910390fd5b506106a3565b73420000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff1663c2b3e5ac838362061a806040518463ffffffff1660e01b815260040161067492919061140d565b5f604051808303818588803b15801561068b575f80fd5b505af115801561069d573d5f803e3d5ffd5b50505050505b5090565b5f806106d47fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461071257809150506108f3565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516107559190611447565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b6107ac305f604051602001610791929190611488565b60405160208183030381529060405280519060200120610cdc565b146107e3576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6108163060016040516020016107fb929190611488565b60405160208183030381529060405280519060200120610cd2565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108c1578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b891906114c3565b925050506108f3565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e312e3100000000000000000000000000000000000000000000000000000081525081565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260149054906101000a900460ff1681565b60015481565b5f5481565b61097a610c50565b5f6001549050816001819055507f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420381836040516109b89291906114ee565b60405180910390a15050565b5f6109cd610ce6565b90505f815f0160089054906101000a900460ff161590505f825f015f9054906101000a900467ffffffffffffffff1690505f808267ffffffffffffffff16148015610a155750825b90505f60018367ffffffffffffffff16148015610a4857505f3073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015610a56575080155b15610a8d576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001855f015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315610ada576001855f0160086101000a81548160ff0219169083151502179055505b610ae2610d0d565b8760025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660018190555085600260146101000a81548160ff02191690836001811115610b4e57610b4d611002565b5b02179055508315610bad575f855f0160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051610ba49190611561565b60405180910390a15b5050505050505050565b5f600260149054906101000a900460ff16905090565b5f600154905090565b5f610bdf6106a7565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c27573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4b91906114c3565b905090565b3373ffffffffffffffffffffffffffffffffffffffff16610c6f610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614610cbc576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cca835a84610dbc565b905092915050565b5f81549050919050565b5f81549050919050565b5f7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b3373ffffffffffffffffffffffffffffffffffffffff16610d2c6106a7565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d8357503373ffffffffffffffffffffffffffffffffffffffff16610d6a610bd6565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610dba576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610df782610dce565b9050919050565b610e0781610ded565b82525050565b5f602082019050610e205f830184610dfe565b92915050565b5f80fd5b60028110610e36575f80fd5b50565b5f81359050610e4781610e2a565b92915050565b5f60208284031215610e6257610e61610e26565b5b5f610e6f84828501610e39565b91505092915050565b610e8181610ded565b8114610e8b575f80fd5b50565b5f81359050610e9c81610e78565b92915050565b5f60208284031215610eb757610eb6610e26565b5b5f610ec484828501610e8e565b91505092915050565b5f819050919050565b610edf81610ecd565b82525050565b5f602082019050610ef85f830184610ed6565b92915050565b5f819050919050565b5f610f21610f1c610f1784610dce565b610efe565b610dce565b9050919050565b5f610f3282610f07565b9050919050565b5f610f4382610f28565b9050919050565b610f5381610f39565b82525050565b5f602082019050610f6c5f830184610f4a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610fb482610f72565b610fbe8185610f7c565b9350610fce818560208601610f8c565b610fd781610f9a565b840191505092915050565b5f6020820190508181035f830152610ffa8184610faa565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600281106110405761103f611002565b5b50565b5f8190506110508261102f565b919050565b5f61105f82611043565b9050919050565b61106f81611055565b82525050565b5f6020820190506110885f830184611066565b92915050565b61109781610ecd565b81146110a1575f80fd5b50565b5f813590506110b28161108e565b92915050565b5f602082840312156110cd576110cc610e26565b5b5f6110da848285016110a4565b91505092915050565b5f805f606084860312156110fa576110f9610e26565b5b5f61110786828701610e8e565b9350506020611118868287016110a4565b925050604061112986828701610e39565b9150509250925092565b5f6040820190506111465f830185611066565b6111536020830184611066565b9392505050565b5f60408201905061116d5f830185610dfe565b61117a6020830184610dfe565b9392505050565b7f4665655661756c743a207769746864726177616c20616d6f756e74206d7573745f8201527f2062652067726561746572207468616e206d696e696d756d207769746864726160208201527f77616c20616d6f756e7400000000000000000000000000000000000000000000604082015250565b5f611201604a83610f7c565b915061120c82611181565b606082019050919050565b5f6020820190508181035f83015261122e816111f5565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61126c82610ecd565b915061127783610ecd565b925082820190508082111561128f5761128e611235565b5b92915050565b5f6060820190506112a85f830186610ed6565b6112b56020830185610dfe565b6112c26040830184610dfe565b949350505050565b5f6080820190506112dd5f830187610ed6565b6112ea6020830186610dfe565b6112f76040830185610dfe565b6113046060830184611066565b95945050505050565b7f4665655661756c743a206661696c656420746f2073656e642045544820746f205f8201527f4c322066656520726563697069656e7400000000000000000000000000000000602082015250565b5f611367603083610f7c565b91506113728261130d565b604082019050919050565b5f6020820190508181035f8301526113948161135b565b9050919050565b5f63ffffffff82169050919050565b5f6113c46113bf6113ba8461139b565b610efe565b610ecd565b9050919050565b6113d4816113aa565b82525050565b5f82825260208201905092915050565b50565b5f6113f85f836113da565b9150611403826113ea565b5f82019050919050565b5f6060820190506114205f830185610dfe565b61142d60208301846113cb565b818103604083015261143e816113ed565b90509392505050565b5f61145182610ecd565b915061145c83610ecd565b925082820261146a81610ecd565b9150828204841483151761148157611480611235565b5b5092915050565b5f60408201905061149b5f830185610dfe565b6114a86020830184610ed6565b9392505050565b5f815190506114bd81610e78565b92915050565b5f602082840312156114d8576114d7610e26565b5b5f6114e5848285016114af565b91505092915050565b5f6040820190506115015f830185610ed6565b61150e6020830184610ed6565b9392505050565b5f819050919050565b5f67ffffffffffffffff82169050919050565b5f61154b61154661154184611515565b610efe565b61151e565b9050919050565b61155b81611531565b82525050565b5f6020820190506115745f830184611552565b9291505056fea164736f6c6343000819000a000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000108a6080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610fb4806100d65f395ff3fe6080604052600436106100e7575f3560e01c806382356d8a11610087578063b49dc74111610057578063b49dc741146102bf578063d0e12f90146102de578063d3e5792b1461030d578063dad544e014610321575f80fd5b806382356d8a146102395780638312f1491461027757806384411d651461028c57806385b5b14d146102a0575f80fd5b80633ccfd60b116100c25780633ccfd60b146101825780633e47158c146101a457806354fd4d50146101b857806366d003ac1461020d575f80fd5b80630d9019e1146100f2578063307f2962146101425780633bbed4a014610163575f80fd5b366100ee57005b5f80fd5b3480156100fd575f80fd5b5060025473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d575f80fd5b5061016161015c366004610d62565b610335565b005b34801561016e575f80fd5b5061016161017d366004610d9f565b6103db565b34801561018d575f80fd5b50610196610462565b604051908152602001610139565b3480156101af575f80fd5b50610118610770565b3480156101c3575f80fd5b506102006040518060400160405280600581526020017f312e312e3100000000000000000000000000000000000000000000000000000081525081565b6040516101399190610dba565b348015610218575f80fd5b506002546101189073ffffffffffffffffffffffffffffffffffffffff1681565b348015610244575f80fd5b5060025461026a9074010000000000000000000000000000000000000000900460ff1681565b6040516101399190610e73565b348015610282575f80fd5b5061019660015481565b348015610297575f80fd5b506101965f5481565b3480156102ab575f80fd5b506101616102ba366004610e87565b610976565b3480156102ca575f80fd5b506101616102d9366004610e9e565b6109bc565b3480156102e9575f80fd5b5060025474010000000000000000000000000000000000000000900460ff1661026a565b348015610318575f80fd5b50600154610196565b34801561032c575f80fd5b50610118610bd8565b61033d610c52565b600280547401000000000000000000000000000000000000000080820460ff1692849290917fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091169083600181111561039957610399610e0d565b02179055507ff2ec44eb1c3b3acd547b76333eb2c4b27eee311860c57a9fdb04c95f62398fc881836040516103cf929190610ed9565b60405180910390a15050565b6103e3610c52565b6002805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f62e69886a5df0ba8ffcacbfc1388754e7abd9bde24b036354c561f1acd4e459391016103cf565b5f600154471015610520576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604a60248201527f4665655661756c743a207769746864726177616c20616d6f756e74206d75737460448201527f2062652067726561746572207468616e206d696e696d756d207769746864726160648201527f77616c20616d6f756e7400000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b479050805f808282546105339190610f21565b90915550506002546040805183815273ffffffffffffffffffffffffffffffffffffffff909216602083018190523383830152905190917fc8a211cc64b6ed1b50595a9fcb1932b6d1e5a6e8ef15b60e5b1f988ea9086bba919081900360600190a16002546040517f38e04cbeb8c10f8f568618aa75be0f10b6729b8b4237743b4de20cbcde2839ee916105e89185918591339174010000000000000000000000000000000000000000900460ff1690610f34565b60405180910390a1600160025474010000000000000000000000000000000000000000900460ff16600181111561062157610621610e0d565b036106c5575f6106318284610caa565b9050806106c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4665655661756c743a206661696c656420746f2073656e642045544820746f2060448201527f4c322066656520726563697069656e74000000000000000000000000000000006064820152608401610517565b505090565b6040517fc2b3e5ac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015262061a806024820152606060448201525f60648201527342000000000000000000000000000000000000169063c2b3e5ac9084906084015f604051808303818588803b158015610755575f80fd5b505af1158015610767573d5f803e3d5ffd5b50505050505090565b5f8061079a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156107bd57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026108009190610f75565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061085a906060015b604051602081830303815290604052805190602001205490565b14610891576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f906108b290606001610840565b905073ffffffffffffffffffffffffffffffffffffffff811615610944578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190610f8c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e610c52565b600180549082905560408051828152602081018490527f895a067c78583e800418fabf3da26a9496aab2ff3429cebdf7fefa642b2e420391016103cf565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f81158015610a065750825b90505f8267ffffffffffffffff166001148015610a225750303b155b905081158015610a30575080155b15610a67576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610ac85784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610ad0610cbd565b6002805473ffffffffffffffffffffffffffffffffffffffff8a167fffffffffffffffffffffffff000000000000000000000000000000000000000082168117835560018a81558993927fffffffffffffffffffffff000000000000000000000000000000000000000000169091179074010000000000000000000000000000000000000000908490811115610b6857610b68610e0d565b02179055508315610bce5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f610be1610770565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4d9190610f8c565b905090565b33610c5b610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614610ca8576040517f7f12c64b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f610cb6835a84610d3e565b9392505050565b33610cc6610770565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d07575033610cee610bd8565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610ca8576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f805f858888f1949350505050565b803560028110610d5d575f80fd5b919050565b5f60208284031215610d72575f80fd5b610cb682610d4f565b73ffffffffffffffffffffffffffffffffffffffff81168114610d9c575f80fd5b50565b5f60208284031215610daf575f80fd5b8135610cb681610d7b565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110610e6f577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b9052565b60208101610e818284610e3a565b92915050565b5f60208284031215610e97575f80fd5b5035919050565b5f805f60608486031215610eb0575f80fd5b8335610ebb81610d7b565b925060208401359150610ed060408501610d4f565b90509250925092565b60408101610ee78285610e3a565b610cb66020830184610e3a565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610e8157610e81610ef4565b84815273ffffffffffffffffffffffffffffffffffffffff84811660208301528316604082015260808101610f6c6060830184610e3a565b95945050505050565b8082028115828204841417610e8157610e81610ef4565b5f60208284031215610f9c575f80fd5b8151610cb681610d7b56fea164736f6c6343000819000a00000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1300000, "intent": "Deploy OperatorFeeVault Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000cf4608060405234801561001057600080fd5b50610cd4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806360d7a27814610064578063a2ea7c6e14610094575b600080fd5b61004e6100c4565b60405161005b919061052f565b60405180910390f35b61007e60048036038101906100799190610668565b6100fd565b60405161008b91906106f5565b60405180910390f35b6100ae60048036038101906100a9919061073c565b6102e3565b6040516100bb9190610893565b60405180910390f35b6040518060400160405280600c81526020017f312e332e312d626574612e32000000000000000000000000000000000000000081525081565b60008060405180608001604052806000801b81526020018573ffffffffffffffffffffffffffffffffffffffff168152602001841515815260200187878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508152509050600061018d8261041c565b90506000801b60008083815260200190815260200160002060000154146101e0576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80826000018181525050816000808381526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff02191690831515021790555060608201518160020190816102839190610af0565b509050503373ffffffffffffffffffffffffffffffffffffffff16817fd0b86852e21f9e5fa4bc3b0cff9757ffe243d50c4b43968a42202153d651ea5e846040516102ce9190610893565b60405180910390a38092505050949350505050565b6102eb61045c565b600080838152602001908152602001600020604051806080016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900460ff1615151515815260200160028201805461039390610913565b80601f01602080910402602001604051908101604052809291908181526020018280546103bf90610913565b801561040c5780601f106103e15761010080835404028352916020019161040c565b820191906000526020600020905b8154815290600101906020018083116103ef57829003601f168201915b5050505050815250509050919050565b600081606001518260200151836040015160405160200161043f93929190610c8e565b604051602081830303815290604052805190602001209050919050565b604051806080016040528060008019168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001606081525090565b600081519050919050565b600082825260208201905092915050565b60005b838110156104d95780820151818401526020810190506104be565b60008484015250505050565b6000601f19601f8301169050919050565b60006105018261049f565b61050b81856104aa565b935061051b8185602086016104bb565b610524816104e5565b840191505092915050565b6000602082019050818103600083015261054981846104f6565b905092915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f8401126105805761057f61055b565b5b8235905067ffffffffffffffff81111561059d5761059c610560565b5b6020830191508360018202830111156105b9576105b8610565565b5b9250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006105eb826105c0565b9050919050565b60006105fd826105e0565b9050919050565b61060d816105f2565b811461061857600080fd5b50565b60008135905061062a81610604565b92915050565b60008115159050919050565b61064581610630565b811461065057600080fd5b50565b6000813590506106628161063c565b92915050565b6000806000806060858703121561068257610681610551565b5b600085013567ffffffffffffffff8111156106a05761069f610556565b5b6106ac8782880161056a565b945094505060206106bf8782880161061b565b92505060406106d087828801610653565b91505092959194509250565b6000819050919050565b6106ef816106dc565b82525050565b600060208201905061070a60008301846106e6565b92915050565b610719816106dc565b811461072457600080fd5b50565b60008135905061073681610710565b92915050565b60006020828403121561075257610751610551565b5b600061076084828501610727565b91505092915050565b610772816106dc565b82525050565b6000819050919050565b600061079d610798610793846105c0565b610778565b6105c0565b9050919050565b60006107af82610782565b9050919050565b60006107c1826107a4565b9050919050565b6107d1816107b6565b82525050565b6107e081610630565b82525050565b600082825260208201905092915050565b60006108028261049f565b61080c81856107e6565b935061081c8185602086016104bb565b610825816104e5565b840191505092915050565b60006080830160008301516108486000860182610769565b50602083015161085b60208601826107c8565b50604083015161086e60408601826107d7565b506060830151848203606086015261088682826107f7565b9150508091505092915050565b600060208201905081810360008301526108ad8184610830565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061092b57607f821691505b60208210810361093e5761093d6108e4565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026109a67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610969565b6109b08683610969565b95508019841693508086168417925050509392505050565b6000819050919050565b60006109ed6109e86109e3846109c8565b610778565b6109c8565b9050919050565b6000819050919050565b610a07836109d2565b610a1b610a13826109f4565b848454610976565b825550505050565b600090565b610a30610a23565b610a3b8184846109fe565b505050565b5b81811015610a5f57610a54600082610a28565b600181019050610a41565b5050565b601f821115610aa457610a7581610944565b610a7e84610959565b81016020851015610a8d578190505b610aa1610a9985610959565b830182610a40565b50505b505050565b600082821c905092915050565b6000610ac760001984600802610aa9565b1980831691505092915050565b6000610ae08383610ab6565b9150826002028217905092915050565b610af98261049f565b67ffffffffffffffff811115610b1257610b116108b5565b5b610b1c8254610913565b610b27828285610a63565b600060209050601f831160018114610b5a5760008415610b48578287015190505b610b528582610ad4565b865550610bba565b601f198416610b6886610944565b60005b82811015610b9057848901518255600182019150602085019450602081019050610b6b565b86831015610bad5784890151610ba9601f891682610ab6565b8355505b6001600288020188555050505b505050505050565b600081905092915050565b6000610bd88261049f565b610be28185610bc2565b9350610bf28185602086016104bb565b80840191505092915050565b60008160601b9050919050565b6000610c1682610bfe565b9050919050565b6000610c2882610c0b565b9050919050565b610c40610c3b826107b6565b610c1d565b82525050565b60008160f81b9050919050565b6000610c5e82610c46565b9050919050565b6000610c7082610c53565b9050919050565b610c88610c8382610630565b610c65565b82525050565b6000610c9a8286610bcd565b9150610ca68285610c2f565b601482019150610cb68284610c77565b60018201915081905094935050505056fea164736f6c6343000813000a000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000081e608060405234801561001057600080fd5b506107fe806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806360d7a27814610098578063a2ea7c6e146100b9575b600080fd5b6100826040518060400160405280600c81526020017f312e332e312d626574612e32000000000000000000000000000000000000000081525081565b60405161008f9190610473565b60405180910390f35b6100ab6100a636600461048d565b6100d9565b60405190815260200161008f565b6100cc6100c736600461053f565b61029d565b60405161008f9190610558565b60008060405180608001604052806000801b81526020018573ffffffffffffffffffffffffffffffffffffffff168152602001841515815260200187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509390945250929350915061015b9050826103c5565b600081815260208190526040902054909150156101a4576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80825260008181526020818152604091829020845181559084015160018201805493860151151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00000000000000000000000000000000000000000090941673ffffffffffffffffffffffffffffffffffffffff9092169190911792909217909155606083015183919060028201906102409082610682565b509050503373ffffffffffffffffffffffffffffffffffffffff16817fd0b86852e21f9e5fa4bc3b0cff9757ffe243d50c4b43968a42202153d651ea5e8460405161028b9190610558565b60405180910390a39695505050505050565b604080516080810182526000808252602082018190529181019190915260608082015260008281526020818152604091829020825160808101845281548152600182015473ffffffffffffffffffffffffffffffffffffffff8116938201939093527401000000000000000000000000000000000000000090920460ff1615159282019290925260028201805491929160608401919061033c906105e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610368906105e0565b80156103b55780601f1061038a576101008083540402835291602001916103b5565b820191906000526020600020905b81548152906001019060200180831161039857829003601f168201915b5050505050815250509050919050565b60008160600151826020015183604001516040516020016103e89392919061079c565b604051602081830303815290604052805190602001209050919050565b60005b83811015610420578181015183820152602001610408565b50506000910152565b60008151808452610441816020860160208601610405565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104866020830184610429565b9392505050565b600080600080606085870312156104a357600080fd5b843567ffffffffffffffff808211156104bb57600080fd5b818701915087601f8301126104cf57600080fd5b8135818111156104de57600080fd5b8860208285010111156104f057600080fd5b6020928301965094505085013573ffffffffffffffffffffffffffffffffffffffff8116811461051f57600080fd5b91506040850135801515811461053457600080fd5b939692955090935050565b60006020828403121561055157600080fd5b5035919050565b602081528151602082015273ffffffffffffffffffffffffffffffffffffffff6020830151166040820152604082015115156060820152600060608301516080808401526105a960a0840182610429565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600181811c908216806105f457607f821691505b60208210810361062d577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f82111561067d57600081815260208120601f850160051c8101602086101561065a5750805b601f850160051c820191505b8181101561067957828155600101610666565b5050505b505050565b815167ffffffffffffffff81111561069c5761069c6105b1565b6106b0816106aa84546105e0565b84610633565b602080601f83116001811461070357600084156106cd5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610679565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561075057888601518255948401946001909101908401610731565b508582101561078c57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600084516107ae818460208901610405565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815290151560f81b60148201526015019291505056fea164736f6c6343000813000a0000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 700000, "intent": "Deploy SchemaRegistry Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000061ea6101606040523480156200001257600080fd5b506040518060400160405280600381526020017f45415300000000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f312e332e30000000000000000000000000000000000000000000000000000000815250818160008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a08181525050620000ea8184846200015460201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050806101208181525050505050505062000144826200019060201b60201c565b610140818152505050506200027b565b60008383834630604051602001620001719594939291906200021e565b6040516020818303038152906040528051906020012090509392505050565b6000806020830151905080915050919050565b6000819050919050565b620001b881620001a3565b82525050565b6000819050919050565b620001d381620001be565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200020682620001d9565b9050919050565b6200021881620001f9565b82525050565b600060a082019050620002356000830188620001ad565b620002446020830187620001ad565b620002536040830186620001ad565b620002626060830185620001c8565b6200027160808301846200020d565b9695505050505050565b60805160a05160c05160e051610100516101205161014051615f14620002d660003960006107cc01526000612cb601526000612cf801526000612cd701526000612c0c01526000612c6201526000612c8b0152615f146000f3fe60806040526004361061011b5760003560e01c80630eabf6601461012057806312b11a171461013c57806313893f611461016757806317d7de7c146101a45780632d0335ab146101cf5780633c0427151461020c57806344adc90e1461023c578063469262671461026c5780634cb7e9e5146102885780634d003070146102a457806354fd4d50146102e157806379f7573a1461030c5780639541152514610335578063a3112a6414610365578063a6d4dbc7146103a2578063b469318d146103be578063b83010d3146103fb578063cf190f3414610426578063d45c443514610463578063e30bb563146104a0578063e71ff365146104dd578063ed24911d1461051a578063f10b5cc814610545578063f17325e714610570575b600080fd5b61013a60048036038101906101359190613b11565b6105a0565b005b34801561014857600080fd5b5061015161073a565b60405161015e9190613b77565b60405180910390f35b34801561017357600080fd5b5061018e60048036038101906101899190613be8565b610765565b60405161019b9190613c58565b60405180910390f35b3480156101b057600080fd5b506101b96107c5565b6040516101c69190613d03565b60405180910390f35b3480156101db57600080fd5b506101f660048036038101906101f19190613d83565b6107f5565b6040516102039190613dc9565b60405180910390f35b61022660048036038101906102219190613e08565b61083d565b6040516102339190613b77565b60405180910390f35b61025660048036038101906102519190613ea7565b61092d565b6040516102639190613fb2565b60405180910390f35b61028660048036038101906102819190613ff3565b610aaf565b005b6102a2600480360381019061029d9190614076565b610b52565b005b3480156102b057600080fd5b506102cb60048036038101906102c691906140ef565b610c37565b6040516102d89190613c58565b60405180910390f35b3480156102ed57600080fd5b506102f6610c57565b6040516103039190613d03565b60405180910390f35b34801561031857600080fd5b50610333600480360381019061032e9190614148565b610c90565b005b61034f600480360381019061034a91906141cb565b610d8c565b60405161035c9190613fb2565b60405180910390f35b34801561037157600080fd5b5061038c600480360381019061038791906140ef565b611036565b6040516103999190614380565b60405180910390f35b6103bc60048036038101906103b791906143c2565b611271565b005b3480156103ca57600080fd5b506103e560048036038101906103e091906143f0565b61133f565b6040516103f29190613c58565b60405180910390f35b34801561040757600080fd5b506104106113ae565b60405161041d9190613b77565b60405180910390f35b34801561043257600080fd5b5061044d600480360381019061044891906140ef565b6113d9565b60405161045a9190613c58565b60405180910390f35b34801561046f57600080fd5b5061048a600480360381019061048591906140ef565b6113fa565b6040516104979190613c58565b60405180910390f35b3480156104ac57600080fd5b506104c760048036038101906104c291906140ef565b61142b565b6040516104d4919061443f565b60405180910390f35b3480156104e957600080fd5b5061050460048036038101906104ff9190613be8565b611451565b6040516105119190613c58565b60405180910390f35b34801561052657600080fd5b5061052f6114b0565b60405161053c9190613b77565b60405180910390f35b34801561055157600080fd5b5061055a6114bf565b60405161056791906144b9565b60405180910390f35b61058a600480360381019061058591906144f3565b6114db565b6040516105979190613b77565b60405180910390f35b6000349050600083839050905060005b81811015610733576000600183038214905060008686848181106105d7576105d661453c565b5b90506020028101906105e9919061457a565b6105f29061498a565b9050600081602001519050600081519050600081148061061757508260400151518114155b1561064e576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b818110156106fc576106ec6040518060a00160405280866000015181526020018584815181106106845761068361453c565b5b60200260200101518152602001866040015184815181106106a8576106a761453c565b5b60200260200101518152602001866060015173ffffffffffffffffffffffffffffffffffffffff168152602001866080015167ffffffffffffffff168152506115a6565b6106f58161177c565b9050610651565b5061071283600001518385606001518a88611789565b8761071d91906149cc565b96505050505061072c8161177c565b90506105b0565b5050505050565b60007ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d98807660001b905090565b600080610770611e42565b9050600084849050905060005b818110156107b9576107a93387878481811061079c5761079b61453c565b5b9050602002013585611e4a565b6107b28161177c565b905061077d565b50819250505092915050565b60606107f07f0000000000000000000000000000000000000000000000000000000000000000611f85565b905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006108518261084c90614c45565b61216c565b6000600167ffffffffffffffff81111561086e5761086d6145a7565b5b6040519080825280602002602001820160405280156108a757816020015b61089461395e565b81526020019060019003908161088c5790505b5090508280602001906108ba9190614c58565b6108c390614c80565b816000815181106108d7576108d661453c565b5b60200260200101819052506109068360000135828560a00160208101906108fe9190613d83565b346001612361565b6020015160008151811061091d5761091c61453c565b5b6020026020010151915050919050565b6060600083839050905060008167ffffffffffffffff811115610953576109526145a7565b5b60405190808252806020026020018201604052801561098657816020015b60608152602001906001900390816109715790505b50905060008034905060005b84811015610a985760006001860382149050368989848181106109b8576109b761453c565b5b90506020028101906109ca9190614c93565b905060008180602001906109de9190614cbb565b905003610a17576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610a448260000135838060200190610a319190614cbb565b90610a3c9190614dd1565b338887612361565b9050806000015185610a5691906149cc565b94508060200151878581518110610a7057610a6f61453c565b5b602002602001018190525080602001515186019550505050610a918161177c565b9050610992565b50610aa38383612a26565b94505050505092915050565b6000600167ffffffffffffffff811115610acc57610acb6145a7565b5b604051908082528060200260200182016040528015610b0557816020015b610af26139b9565b815260200190600190039081610aea5790505b50905081602001803603810190610b1c9190614de6565b81600081518110610b3057610b2f61453c565b5b6020026020010181905250610b4d82600001358233346001611789565b505050565b6000349050600083839050905060005b81811015610c30576000600183038214905036868684818110610b8857610b8761453c565b5b9050602002810190610b9a9190614e13565b9050610c118160000135828060200190610bb49190614e3b565b808060200260200160405190810160405280939291908181526020016000905b82821015610c0457848483905060400201803603810190610bf59190614de6565b81526020019060010190610bd4565b5050505050338886611789565b85610c1c91906149cc565b94505050610c298161177c565b9050610b62565b5050505050565b600080610c42611e42565b9050610c4e8382612b27565b80915050919050565b6040518060400160405280600c81526020017f312e342e312d626574612e33000000000000000000000000000000000000000081525081565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050808211610d0c576040517f756688fe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f57b09af877df9068fd60a69d7b21f5576b8b38955812d6ae4ac52942f1e38fb78183604051610d80929190614e9e565b60405180910390a15050565b6060600083839050905060008167ffffffffffffffff811115610db257610db16145a7565b5b604051908082528060200260200182016040528015610de557816020015b6060815260200190600190039081610dd05790505b50905060008034905060005b8481101561101f576000600186038214905036898984818110610e1757610e1661453c565b5b9050602002810190610e299190614ec7565b9050366000828060200190610e3e9190614cbb565b9150915060008282905090506000811480610e6a5750838060400190610e649190614eef565b90508114155b15610ea1576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610f9657610f866040518060a0016040528087600001358152602001868685818110610ed757610ed661453c565b5b9050602002810190610ee99190614c58565b610ef290614c80565b8152602001878060400190610f079190614eef565b85818110610f1857610f1761453c565b5b905060600201803603810190610f2e9190614f52565b8152602001876060016020810190610f469190613d83565b73ffffffffffffffffffffffffffffffffffffffff168152602001876080016020810190610f749190614f7f565b67ffffffffffffffff1681525061216c565b610f8f8161177c565b9050610ea4565b506000610fc88560000135858590610fae9190614dd1565b876060016020810190610fc19190613d83565b8b8a612361565b9050806000015188610fda91906149cc565b975080602001518a8881518110610ff457610ff361453c565b5b6020026020010181905250806020015151890198505050505050506110188161177c565b9050610df1565b5061102a8383612a26565b94505050505092915050565b61103e6139d6565b603260008381526020019081526020016000206040518061014001604052908160008201548152602001600182015481526020016002820160009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160109054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152602001600382015481526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160149054906101000a900460ff161515151581526020016006820180546111e890614fdb565b80601f016020809104026020016040519081016040528092919081815260200182805461121490614fdb565b80156112615780601f1061123657610100808354040283529160200191611261565b820191906000526020600020905b81548152906001019060200180831161124457829003601f168201915b5050505050815250509050919050565b61128a818036038101906112859190615099565b6115a6565b6000600167ffffffffffffffff8111156112a7576112a66145a7565b5b6040519080825280602002602001820160405280156112e057816020015b6112cd6139b9565b8152602001906001900390816112c55790505b509050816020018036038101906112f79190614de6565b8160008151811061130b5761130a61453c565b5b602002602001018190525061133a8260000135828460c00160208101906113329190613d83565b346001611789565b505050565b6000603460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900467ffffffffffffffff16905092915050565b60007fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e7560001b905090565b6000806113e4611e42565b90506113f1338483611e4a565b80915050919050565b60006033600083815260200190815260200160002060009054906101000a900467ffffffffffffffff169050919050565b60008060001b603260008481526020019081526020016000206000015414159050919050565b60008061145c611e42565b9050600084849050905060005b818110156114a4576114948686838181106114875761148661453c565b5b9050602002013584612b27565b61149d8161177c565b9050611469565b50819250505092915050565b60006114ba612c08565b905090565b6000734200000000000000000000000000000000000020905090565b600080600167ffffffffffffffff8111156114f9576114f86145a7565b5b60405190808252806020026020018201604052801561153257816020015b61151f61395e565b8152602001906001900390816115175790505b5090508280602001906115459190614c58565b61154e90614c80565b816000815181106115625761156161453c565b5b602002602001018190525061157f83600001358233346001612361565b602001516000815181106115965761159561453c565b5b6020026020010151915050919050565b600067ffffffffffffffff16816080015167ffffffffffffffff16141580156115ed57506115d2611e42565b67ffffffffffffffff16816080015167ffffffffffffffff16105b15611624576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008160200151905060008260400151905060006117007fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e7560001b85606001518660000151866000015187602001516000808b6060015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906116c6906150c7565b919050558a608001516040516020016116e5979695949392919061511e565b60405160208183030381529060405280519060200120612d22565b905061174084606001518284602001518560400151866000015160405160200161172c939291906151e4565b604051602081830303815290604052612d3c565b611776576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b6000600182019050919050565b60008073420000000000000000000000000000000000002073ffffffffffffffffffffffffffffffffffffffff1663a2ea7c6e886040518263ffffffff1660e01b81526004016117d99190613b77565b600060405180830381865afa1580156117f6573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061181f91906153be565b90506000801b816000015103611861576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008651905060008167ffffffffffffffff811115611883576118826145a7565b5b6040519080825280602002602001820160405280156118bc57816020015b6118a96139d6565b8152602001906001900390816118a15790505b50905060008267ffffffffffffffff8111156118db576118da6145a7565b5b6040519080825280602002602001820160405280156119095781602001602082028036833780820191505090505b50905060005b83811015611e235760008a828151811061192c5761192b61453c565b5b602002602001015190506000603260008360000151815260200190815260200160002090506000801b816000015403611991576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8c8160010154146119ce576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8a73ffffffffffffffffffffffffffffffffffffffff168160050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a57576040517f4ca8886700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060050160149054906101000a900460ff16611a9f576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008160020160109054906101000a900467ffffffffffffffff1667ffffffffffffffff1614611afb576040517f905e710700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b03611e42565b8160020160106101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550806040518061014001604052908160008201548152602001600182015481526020016002820160009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016002820160109054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152602001600382015481526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160149054906101000a900460ff16151515158152602001600682018054611cc590614fdb565b80601f0160208091040260200160405190810160405280929190818152602001828054611cf190614fdb565b8015611d3e5780601f10611d1357610100808354040283529160200191611d3e565b820191906000526020600020905b815481529060010190602001808311611d2157829003601f168201915b505050505081525050858481518110611d5a57611d5961453c565b5b60200260200101819052508160200151848481518110611d7d57611d7c61453c565b5b6020026020010181815250508c8b73ffffffffffffffffffffffffffffffffffffffff16868581518110611db457611db361453c565b5b602002602001015160c0015173ffffffffffffffffffffffffffffffffffffffff167ff930a6e2523c9cc298691873087a740550b8fc85a0680830414c148ed927f6158560000151604051611e099190613b77565b60405180910390a45050611e1c8161177c565b905061190f565b50611e3384838360018b8b612f02565b94505050505095945050505050565b600042905090565b6000603460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600081600085815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1614611ef7576040517fec9d6eeb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8181600085815260200190815260200160002060006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508167ffffffffffffffff16838573ffffffffffffffffffffffffffffffffffffffff167f92a1f7a41a7c585a8b09e25b195e225b1d43248daca46b0faf9e0792777a222960405160405180910390a450505050565b60606000602067ffffffffffffffff811115611fa457611fa36145a7565b5b6040519080825280601f01601f191660200182016040528015611fd65781602001600182028036833780820191505090505b5090506000805b6020811015612093576000858260208110611ffb57611ffa61453c565b5b1a60f81b9050600060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036120345750612093565b808484815181106120485761204761453c565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506120808361177c565b92505061208c8161177c565b9050611fdd565b5060008167ffffffffffffffff8111156120b0576120af6145a7565b5b6040519080825280601f01601f1916602001820160405280156120e25781602001600182028036833780820191505090505b50905060005b82811015612160578381815181106121035761210261453c565b5b602001015160f81c60f81b8282815181106121215761212061453c565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506121598161177c565b90506120e8565b50809350505050919050565b600067ffffffffffffffff16816080015167ffffffffffffffff16141580156121b35750612198611e42565b67ffffffffffffffff16816080015167ffffffffffffffff16105b156121ea576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008160200151905060008260400151905060006122e57ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d98807660001b8560600151866000015186600001518760200151886040015189606001518a60800151805190602001208b60a001516000808f6060015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906122a7906150c7565b919050558e608001516040516020016122ca9b9a99989796959493929190615407565b60405160208183030381529060405280519060200120612d22565b9050612325846060015182846020015185604001518660000151604051602001612311939291906151e4565b604051602081830303815290604052612d3c565b61235b576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b612369613a7e565b600085519050612377613a7e565b8167ffffffffffffffff811115612391576123906145a7565b5b6040519080825280602002602001820160405280156123bf5781602001602082028036833780820191505090505b508160200181905250600073420000000000000000000000000000000000002073ffffffffffffffffffffffffffffffffffffffff1663a2ea7c6e8a6040518263ffffffff1660e01b81526004016124179190613b77565b600060405180830381865afa158015612434573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061245d91906153be565b90506000801b81600001510361249f576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008367ffffffffffffffff8111156124bb576124ba6145a7565b5b6040519080825280602002602001820160405280156124f457816020015b6124e16139d6565b8152602001906001900390816124d95790505b50905060008467ffffffffffffffff811115612513576125126145a7565b5b6040519080825280602002602001820160405280156125415781602001602082028036833780820191505090505b50905060005b858110156129fc5760008b82815181106125645761256361453c565b5b60200260200101519050600067ffffffffffffffff16816020015167ffffffffffffffff16141580156125b6575061259a611e42565b67ffffffffffffffff16816020015167ffffffffffffffff1611155b156125ed576040517f08e8b93700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8460400151158015612600575080604001515b15612637576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006040518061014001604052806000801b81526020018f815260200161265c611e42565b67ffffffffffffffff168152602001836020015167ffffffffffffffff168152602001600067ffffffffffffffff16815260200183606001518152602001836000015173ffffffffffffffffffffffffffffffffffffffff1681526020018d73ffffffffffffffffffffffffffffffffffffffff16815260200183604001511515815260200183608001518152509050600080600090505b6001156127335761270583826132f7565b91506000801b60326000848152602001908152602001600020600001540315612733578060010190506126f4565b818360000181815250508260326000848152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060608201518160020160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060808201518160020160106101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060a0820151816003015560c08201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060e08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101008201518160050160146101000a81548160ff0219169083151502179055506101208201518160060190816128c19190615654565b509050506000801b846060015114612917576128e0846060015161142b565b612916576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b8287868151811061292b5761292a61453c565b5b60200260200101819052508360a0015186868151811061294e5761294d61453c565b5b60200260200101818152505081896020015186815181106129725761297161453c565b5b6020026020010181815250508f8e73ffffffffffffffffffffffffffffffffffffffff16856000015173ffffffffffffffffffffffffffffffffffffffff167f8bf46bf4cfd674fa735a3d63ec1c9ad4153f033c290341f3a588b75685141b35856040516129e09190613b77565b60405180910390a4505050506129f58161177c565b9050612547565b50612a0c83838360008c8c612f02565b846000018181525050839550505050505095945050505050565b606060008267ffffffffffffffff811115612a4457612a436145a7565b5b604051908082528060200260200182016040528015612a725781602001602082028036833780820191505090505b5090506000808551905060005b81811015612b1a576000878281518110612a9c57612a9b61453c565b5b6020026020010151905060008151905060005b81811015612b0757828181518110612aca57612ac961453c565b5b6020026020010151878781518110612ae557612ae461453c565b5b602002602001018181525050856001019550612b008161177c565b9050612aaf565b505050612b138161177c565b9050612a7f565b5082935050505092915050565b60006033600084815260200190815260200160002060009054906101000a900467ffffffffffffffff1667ffffffffffffffff1614612b92576040517f2e26794600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806033600084815260200190815260200160002060006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508067ffffffffffffffff16827f5aafceeb1c7ad58e4a84898bdee37c02c0fc46e7d24e6b60e8209449f183459f60405160405180910390a35050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015612c8457507f000000000000000000000000000000000000000000000000000000000000000046145b15612cb1577f00000000000000000000000000000000000000000000000000000000000000009050612d1f565b612d1c7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000061335a565b90505b90565b6000612d35612d2f612c08565b83613394565b9050919050565b6000806000612d4b85856133c7565b9150915060006004811115612d6357612d62615726565b5b816004811115612d7657612d75615726565b5b148015612dae57508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15612dbe57600192505050612efb565b6000808773ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b8888604051602401612df392919061579f565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051612e5d919061580b565b600060405180830381855afa9150503d8060008114612e98576040519150601f19603f3d011682016040523d82523d6000602084013e612e9d565b606091505b5091509150818015612eb0575060208151145b8015612ef45750631626ba7e60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681806020019051810190612ef29190615822565b145b9450505050505b9392505050565b6000808651905060018103612f5d57612f558888600081518110612f2957612f2861453c565b5b602002602001015188600081518110612f4557612f4461453c565b5b6020026020010151888888613418565b9150506132ed565b600088602001519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036130255760005b82811015613009576000888281518110612fba57612fb961453c565b5b602002602001015114612ff9576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6130028161177c565b9050612f9d565b50831561301a5761301985613728565b5b6000925050506132ed565b6000808273ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa158015613073573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613097919061584f565b905060005b8481101561315e5760008a82815181106130b9576130b861453c565b5b60200260200101519050600081036130d1575061314e565b82613108576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b88811115613142576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80890398508084019350505b6131578161177c565b905061309c565b50871561321f578273ffffffffffffffffffffffffffffffffffffffff166388e5b2d9838c8c6040518463ffffffff1660e01b81526004016131a1929190615ad6565b60206040518083038185885af11580156131bf573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906131e4919061584f565b61321a576040517fbf2f3a8b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6132d5565b8273ffffffffffffffffffffffffffffffffffffffff166391db0b7e838c8c6040518463ffffffff1660e01b815260040161325b929190615ad6565b60206040518083038185885af1158015613279573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061329e919061584f565b6132d4576040517fe8bee83900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b85156132e5576132e487613728565b5b819450505050505b9695505050505050565b600082602001518360c001518460e00151856040015186606001518761010001518860a001518961012001518960405160200161333c99989796959493929190615bfa565b60405160208183030381529060405280519060200120905092915050565b60008383834630604051602001613375959493929190615c99565b6040516020818303038152906040528051906020012090509392505050565b600082826040516020016133a9929190615d43565b60405160208183030381529060405280519060200120905092915050565b60008060418351036134085760008060006020860151925060408601519150606086015160001a90506133fc8782858561375e565b94509450505050613411565b60006002915091505b9250929050565b60008087602001519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036134aa5760008614613490576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82156134a05761349f84613728565b5b600091505061371e565b60008614613597578073ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa1580156134fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613521919061584f565b613557576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83861115613591576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b85840393505b8415613655578073ffffffffffffffffffffffffffffffffffffffff1663e49617e187896040518363ffffffff1660e01b81526004016135d79190614380565b60206040518083038185885af11580156135f5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061361a919061584f565b613650576040517fccf3bb2700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613709565b8073ffffffffffffffffffffffffffffffffffffffff1663e60c350587896040518363ffffffff1660e01b815260040161368f9190614380565b60206040518083038185885af11580156136ad573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906136d2919061584f565b613708576040517fbd8ba84d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b82156137195761371884613728565b5b859150505b9695505050505050565b600081111561375b5761375a813373ffffffffffffffffffffffffffffffffffffffff1661386a90919063ffffffff16565b5b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115613799576000600391509150613861565b601b8560ff16141580156137b15750601c8560ff1614155b156137c3576000600491509150613861565b6000600187878787604051600081526020016040526040516137e89493929190615d89565b6020604051602081039080840390855afa15801561380a573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361385857600060019250925050613861565b80600092509250505b94509492505050565b804710156138ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016138a490615e1a565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff16826040516138d390615e60565b60006040518083038185875af1925050503d8060008114613910576040519150601f19603f3d011682016040523d82523d6000602084013e613915565b606091505b5050905080613959576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161395090615ee7565b60405180910390fd5b505050565b6040518060c00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600067ffffffffffffffff1681526020016000151581526020016000801916815260200160608152602001600081525090565b604051806040016040528060008019168152602001600081525090565b6040518061014001604052806000801916815260200160008019168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff16815260200160008019168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001606081525090565b604051806040016040528060008152602001606081525090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112613ad157613ad0613aac565b5b8235905067ffffffffffffffff811115613aee57613aed613ab1565b5b602083019150836020820283011115613b0a57613b09613ab6565b5b9250929050565b60008060208385031215613b2857613b27613aa2565b5b600083013567ffffffffffffffff811115613b4657613b45613aa7565b5b613b5285828601613abb565b92509250509250929050565b6000819050919050565b613b7181613b5e565b82525050565b6000602082019050613b8c6000830184613b68565b92915050565b60008083601f840112613ba857613ba7613aac565b5b8235905067ffffffffffffffff811115613bc557613bc4613ab1565b5b602083019150836020820283011115613be157613be0613ab6565b5b9250929050565b60008060208385031215613bff57613bfe613aa2565b5b600083013567ffffffffffffffff811115613c1d57613c1c613aa7565b5b613c2985828601613b92565b92509250509250929050565b600067ffffffffffffffff82169050919050565b613c5281613c35565b82525050565b6000602082019050613c6d6000830184613c49565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613cad578082015181840152602081019050613c92565b60008484015250505050565b6000601f19601f8301169050919050565b6000613cd582613c73565b613cdf8185613c7e565b9350613cef818560208601613c8f565b613cf881613cb9565b840191505092915050565b60006020820190508181036000830152613d1d8184613cca565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613d5082613d25565b9050919050565b613d6081613d45565b8114613d6b57600080fd5b50565b600081359050613d7d81613d57565b92915050565b600060208284031215613d9957613d98613aa2565b5b6000613da784828501613d6e565b91505092915050565b6000819050919050565b613dc381613db0565b82525050565b6000602082019050613dde6000830184613dba565b92915050565b600080fd5b600060e08284031215613dff57613dfe613de4565b5b81905092915050565b600060208284031215613e1e57613e1d613aa2565b5b600082013567ffffffffffffffff811115613e3c57613e3b613aa7565b5b613e4884828501613de9565b91505092915050565b60008083601f840112613e6757613e66613aac565b5b8235905067ffffffffffffffff811115613e8457613e83613ab1565b5b602083019150836020820283011115613ea057613e9f613ab6565b5b9250929050565b60008060208385031215613ebe57613ebd613aa2565b5b600083013567ffffffffffffffff811115613edc57613edb613aa7565b5b613ee885828601613e51565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613f2981613b5e565b82525050565b6000613f3b8383613f20565b60208301905092915050565b6000602082019050919050565b6000613f5f82613ef4565b613f698185613eff565b9350613f7483613f10565b8060005b83811015613fa5578151613f8c8882613f2f565b9750613f9783613f47565b925050600181019050613f78565b5085935050505092915050565b60006020820190508181036000830152613fcc8184613f54565b905092915050565b600060608284031215613fea57613fe9613de4565b5b81905092915050565b60006060828403121561400957614008613aa2565b5b600061401784828501613fd4565b91505092915050565b60008083601f84011261403657614035613aac565b5b8235905067ffffffffffffffff81111561405357614052613ab1565b5b60208301915083602082028301111561406f5761406e613ab6565b5b9250929050565b6000806020838503121561408d5761408c613aa2565b5b600083013567ffffffffffffffff8111156140ab576140aa613aa7565b5b6140b785828601614020565b92509250509250929050565b6140cc81613b5e565b81146140d757600080fd5b50565b6000813590506140e9816140c3565b92915050565b60006020828403121561410557614104613aa2565b5b6000614113848285016140da565b91505092915050565b61412581613db0565b811461413057600080fd5b50565b6000813590506141428161411c565b92915050565b60006020828403121561415e5761415d613aa2565b5b600061416c84828501614133565b91505092915050565b60008083601f84011261418b5761418a613aac565b5b8235905067ffffffffffffffff8111156141a8576141a7613ab1565b5b6020830191508360208202830111156141c4576141c3613ab6565b5b9250929050565b600080602083850312156141e2576141e1613aa2565b5b600083013567ffffffffffffffff811115614200576141ff613aa7565b5b61420c85828601614175565b92509250509250929050565b61422181613c35565b82525050565b61423081613d45565b82525050565b60008115159050919050565b61424b81614236565b82525050565b600081519050919050565b600082825260208201905092915050565b600061427882614251565b614282818561425c565b9350614292818560208601613c8f565b61429b81613cb9565b840191505092915050565b6000610140830160008301516142bf6000860182613f20565b5060208301516142d26020860182613f20565b5060408301516142e56040860182614218565b5060608301516142f86060860182614218565b50608083015161430b6080860182614218565b5060a083015161431e60a0860182613f20565b5060c083015161433160c0860182614227565b5060e083015161434460e0860182614227565b50610100830151614359610100860182614242565b50610120830151848203610120860152614373828261426d565b9150508091505092915050565b6000602082019050818103600083015261439a81846142a6565b905092915050565b600061010082840312156143b9576143b8613de4565b5b81905092915050565b600061010082840312156143d9576143d8613aa2565b5b60006143e7848285016143a2565b91505092915050565b6000806040838503121561440757614406613aa2565b5b600061441585828601613d6e565b9250506020614426858286016140da565b9150509250929050565b61443981614236565b82525050565b60006020820190506144546000830184614430565b92915050565b6000819050919050565b600061447f61447a61447584613d25565b61445a565b613d25565b9050919050565b600061449182614464565b9050919050565b60006144a382614486565b9050919050565b6144b381614498565b82525050565b60006020820190506144ce60008301846144aa565b92915050565b6000604082840312156144ea576144e9613de4565b5b81905092915050565b60006020828403121561450957614508613aa2565b5b600082013567ffffffffffffffff81111561452757614526613aa7565b5b614533848285016144d4565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160a0038336030381126145965761459561456b565b5b80830191505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6145df82613cb9565b810181811067ffffffffffffffff821117156145fe576145fd6145a7565b5b80604052505050565b6000614611613a98565b905061461d82826145d6565b919050565b600080fd5b600067ffffffffffffffff821115614642576146416145a7565b5b602082029050602081019050919050565b600060408284031215614669576146686145a2565b5b6146736040614607565b90506000614683848285016140da565b600083015250602061469784828501614133565b60208301525092915050565b60006146b66146b184614627565b614607565b905080838252602082019050604084028301858111156146d9576146d8613ab6565b5b835b8181101561470257806146ee8882614653565b8452602084019350506040810190506146db565b5050509392505050565b600082601f83011261472157614720613aac565b5b81356147318482602086016146a3565b91505092915050565b600067ffffffffffffffff821115614755576147546145a7565b5b602082029050602081019050919050565b600060ff82169050919050565b61477c81614766565b811461478757600080fd5b50565b60008135905061479981614773565b92915050565b6000606082840312156147b5576147b46145a2565b5b6147bf6060614607565b905060006147cf8482850161478a565b60008301525060206147e3848285016140da565b60208301525060406147f7848285016140da565b60408301525092915050565b60006148166148118461473a565b614607565b9050808382526020820190506060840283018581111561483957614838613ab6565b5b835b81811015614862578061484e888261479f565b84526020840193505060608101905061483b565b5050509392505050565b600082601f83011261488157614880613aac565b5b8135614891848260208601614803565b91505092915050565b6148a381613c35565b81146148ae57600080fd5b50565b6000813590506148c08161489a565b92915050565b600060a082840312156148dc576148db6145a2565b5b6148e660a0614607565b905060006148f6848285016140da565b600083015250602082013567ffffffffffffffff81111561491a57614919614622565b5b6149268482850161470c565b602083015250604082013567ffffffffffffffff81111561494a57614949614622565b5b6149568482850161486c565b604083015250606061496a84828501613d6e565b606083015250608061497e848285016148b1565b60808301525092915050565b600061499636836148c6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006149d782613db0565b91506149e283613db0565b92508282039050818111156149fa576149f961499d565b5b92915050565b614a0981614236565b8114614a1457600080fd5b50565b600081359050614a2681614a00565b92915050565b600080fd5b600067ffffffffffffffff821115614a4c57614a4b6145a7565b5b614a5582613cb9565b9050602081019050919050565b82818337600083830152505050565b6000614a84614a7f84614a31565b614607565b905082815260208101848484011115614aa057614a9f614a2c565b5b614aab848285614a62565b509392505050565b600082601f830112614ac857614ac7613aac565b5b8135614ad8848260208601614a71565b91505092915050565b600060c08284031215614af757614af66145a2565b5b614b0160c0614607565b90506000614b1184828501613d6e565b6000830152506020614b25848285016148b1565b6020830152506040614b3984828501614a17565b6040830152506060614b4d848285016140da565b606083015250608082013567ffffffffffffffff811115614b7157614b70614622565b5b614b7d84828501614ab3565b60808301525060a0614b9184828501614133565b60a08301525092915050565b600060e08284031215614bb357614bb26145a2565b5b614bbd60a0614607565b90506000614bcd848285016140da565b600083015250602082013567ffffffffffffffff811115614bf157614bf0614622565b5b614bfd84828501614ae1565b6020830152506040614c118482850161479f565b60408301525060a0614c2584828501613d6e565b60608301525060c0614c39848285016148b1565b60808301525092915050565b6000614c513683614b9d565b9050919050565b60008235600160c003833603038112614c7457614c7361456b565b5b80830191505092915050565b6000614c8c3683614ae1565b9050919050565b600082356001604003833603038112614caf57614cae61456b565b5b80830191505092915050565b60008083356001602003843603038112614cd857614cd761456b565b5b80840192508235915067ffffffffffffffff821115614cfa57614cf9614570565b5b602083019250602082023603831315614d1657614d15614575565b5b509250929050565b600067ffffffffffffffff821115614d3957614d386145a7565b5b602082029050602081019050919050565b6000614d5d614d5884614d1e565b614607565b90508083825260208201905060208402830185811115614d8057614d7f613ab6565b5b835b81811015614dc757803567ffffffffffffffff811115614da557614da4613aac565b5b808601614db28982614ae1565b85526020850194505050602081019050614d82565b5050509392505050565b6000614dde368484614d4a565b905092915050565b600060408284031215614dfc57614dfb613aa2565b5b6000614e0a84828501614653565b91505092915050565b600082356001604003833603038112614e2f57614e2e61456b565b5b80830191505092915050565b60008083356001602003843603038112614e5857614e5761456b565b5b80840192508235915067ffffffffffffffff821115614e7a57614e79614570565b5b602083019250604082023603831315614e9657614e95614575565b5b509250929050565b6000604082019050614eb36000830185613dba565b614ec06020830184613dba565b9392505050565b60008235600160a003833603038112614ee357614ee261456b565b5b80830191505092915050565b60008083356001602003843603038112614f0c57614f0b61456b565b5b80840192508235915067ffffffffffffffff821115614f2e57614f2d614570565b5b602083019250606082023603831315614f4a57614f49614575565b5b509250929050565b600060608284031215614f6857614f67613aa2565b5b6000614f768482850161479f565b91505092915050565b600060208284031215614f9557614f94613aa2565b5b6000614fa3848285016148b1565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614ff357607f821691505b60208210810361500657615005614fac565b5b50919050565b60006101008284031215615023576150226145a2565b5b61502d60a0614607565b9050600061503d848285016140da565b600083015250602061505184828501614653565b60208301525060606150658482850161479f565b60408301525060c061507984828501613d6e565b60608301525060e061508d848285016148b1565b60808301525092915050565b600061010082840312156150b0576150af613aa2565b5b60006150be8482850161500c565b91505092915050565b60006150d282613db0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036151045761510361499d565b5b600182019050919050565b61511881613d45565b82525050565b600060e082019050615133600083018a613b68565b615140602083018961510f565b61514d6040830188613b68565b61515a6060830187613b68565b6151676080830186613dba565b61517460a0830185613dba565b61518160c0830184613c49565b98975050505050505050565b6000819050919050565b6151a86151a382613b5e565b61518d565b82525050565b60008160f81b9050919050565b60006151c6826151ae565b9050919050565b6151de6151d982614766565b6151bb565b82525050565b60006151f08286615197565b6020820191506152008285615197565b60208201915061521082846151cd565b600182019150819050949350505050565b600081519050615230816140c3565b92915050565b600061524182613d45565b9050919050565b61525181615236565b811461525c57600080fd5b50565b60008151905061526e81615248565b92915050565b60008151905061528381614a00565b92915050565b600067ffffffffffffffff8211156152a4576152a36145a7565b5b6152ad82613cb9565b9050602081019050919050565b60006152cd6152c884615289565b614607565b9050828152602081018484840111156152e9576152e8614a2c565b5b6152f4848285613c8f565b509392505050565b600082601f83011261531157615310613aac565b5b81516153218482602086016152ba565b91505092915050565b6000608082840312156153405761533f6145a2565b5b61534a6080614607565b9050600061535a84828501615221565b600083015250602061536e8482850161525f565b602083015250604061538284828501615274565b604083015250606082015167ffffffffffffffff8111156153a6576153a5614622565b5b6153b2848285016152fc565b60608301525092915050565b6000602082840312156153d4576153d3613aa2565b5b600082015167ffffffffffffffff8111156153f2576153f1613aa7565b5b6153fe8482850161532a565b91505092915050565b60006101608201905061541d600083018e613b68565b61542a602083018d61510f565b615437604083018c613b68565b615444606083018b61510f565b615451608083018a613c49565b61545e60a0830189614430565b61546b60c0830188613b68565b61547860e0830187613b68565b615486610100830186613dba565b615494610120830185613dba565b6154a2610140830184613c49565b9c9b505050505050505050505050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026155147fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826154d7565b61551e86836154d7565b95508019841693508086168417925050509392505050565b600061555161554c61554784613db0565b61445a565b613db0565b9050919050565b6000819050919050565b61556b83615536565b61557f61557782615558565b8484546154e4565b825550505050565b600090565b615594615587565b61559f818484615562565b505050565b5b818110156155c3576155b860008261558c565b6001810190506155a5565b5050565b601f821115615608576155d9816154b2565b6155e2846154c7565b810160208510156155f1578190505b6156056155fd856154c7565b8301826155a4565b50505b505050565b600082821c905092915050565b600061562b6000198460080261560d565b1980831691505092915050565b6000615644838361561a565b9150826002028217905092915050565b61565d82614251565b67ffffffffffffffff811115615676576156756145a7565b5b6156808254614fdb565b61568b8282856155c7565b600060209050601f8311600181146156be57600084156156ac578287015190505b6156b68582615638565b86555061571e565b601f1984166156cc866154b2565b60005b828110156156f4578489015182556001820191506020850194506020810190506156cf565b86831015615711578489015161570d601f89168261561a565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600082825260208201905092915050565b600061577182614251565b61577b8185615755565b935061578b818560208601613c8f565b61579481613cb9565b840191505092915050565b60006040820190506157b46000830185613b68565b81810360208301526157c68184615766565b90509392505050565b600081905092915050565b60006157e582614251565b6157ef81856157cf565b93506157ff818560208601613c8f565b80840191505092915050565b600061581782846157da565b915081905092915050565b60006020828403121561583857615837613aa2565b5b600061584684828501615221565b91505092915050565b60006020828403121561586557615864613aa2565b5b600061587384828501615274565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610140830160008301516158c16000860182613f20565b5060208301516158d46020860182613f20565b5060408301516158e76040860182614218565b5060608301516158fa6060860182614218565b50608083015161590d6080860182614218565b5060a083015161592060a0860182613f20565b5060c083015161593360c0860182614227565b5060e083015161594660e0860182614227565b5061010083015161595b610100860182614242565b50610120830151848203610120860152615975828261426d565b9150508091505092915050565b600061598e83836158a8565b905092915050565b6000602082019050919050565b60006159ae8261587c565b6159b88185615887565b9350836020820285016159ca85615898565b8060005b85811015615a0657848403895281516159e78582615982565b94506159f283615996565b925060208a019950506001810190506159ce565b50829750879550505050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615a4d81613db0565b82525050565b6000615a5f8383615a44565b60208301905092915050565b6000602082019050919050565b6000615a8382615a18565b615a8d8185615a23565b9350615a9883615a34565b8060005b83811015615ac9578151615ab08882615a53565b9750615abb83615a6b565b925050600181019050615a9c565b5085935050505092915050565b60006040820190508181036000830152615af081856159a3565b90508181036020830152615b048184615a78565b90509392505050565b60008160601b9050919050565b6000615b2582615b0d565b9050919050565b6000615b3782615b1a565b9050919050565b615b4f615b4a82613d45565b615b2c565b82525050565b60008160c01b9050919050565b6000615b6d82615b55565b9050919050565b615b85615b8082613c35565b615b62565b82525050565b6000615b96826151bb565b9050919050565b615bae615ba982614236565b615b8b565b82525050565b600063ffffffff82169050919050565b60008160e01b9050919050565b6000615bdc82615bc4565b9050919050565b615bf4615bef82615bb4565b615bd1565b82525050565b6000615c06828c615197565b602082019150615c16828b615b3e565b601482019150615c26828a615b3e565b601482019150615c368289615b74565b600882019150615c468288615b74565b600882019150615c568287615b9d565b600182019150615c668286615197565b602082019150615c7682856157da565b9150615c828284615be3565b6004820191508190509a9950505050505050505050565b600060a082019050615cae6000830188613b68565b615cbb6020830187613b68565b615cc86040830186613b68565b615cd56060830185613dba565b615ce2608083018461510f565b9695505050505050565b600081905092915050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b6000615d2d600283615cec565b9150615d3882615cf7565b600282019050919050565b6000615d4e82615d20565b9150615d5a8285615197565b602082019150615d6a8284615197565b6020820191508190509392505050565b615d8381614766565b82525050565b6000608082019050615d9e6000830187613b68565b615dab6020830186615d7a565b615db86040830185613b68565b615dc56060830184613b68565b95945050505050565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b6000615e04601d83613c7e565b9150615e0f82615dce565b602082019050919050565b60006020820190508181036000830152615e3381615df7565b9050919050565b50565b6000615e4a6000836157cf565b9150615e5582615e3a565b600082019050919050565b6000615e6b82615e3d565b9150819050919050565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b6000615ed1603a83613c7e565b9150615edc82615e75565b604082019050919050565b60006020820190508181036000830152615f0081615ec4565b905091905056fea164736f6c6343000813000a00000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000046c961016060405234801561001157600080fd5b50604080518082018252600381526245415360e81b60208083019182528351808501855260058152640312e332e360dc1b908201529151812060e08190527f6a08c3e203132c561752255a4d52ffae85bb9c5d33cb3291520dea1b843563896101008190524660a081815286517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f818801819052818901959095526060810193909352608080840192909252308382018190528751808503909201825260c093840190975280519501949094209093529290915261012091909152516101405260805160a05160c05160e05161010051610120516101405161457e61014b600039600061073701526000612784015260006127d3015260006127ae01526000612707015260006127310152600061275b015261457e6000f3fe60806040526004361061018b5760003560e01c806395411525116100d6578063d45c44351161007f578063ed24911d11610059578063ed24911d146104fd578063f10b5cc814610512578063f17325e71461054157600080fd5b8063d45c443514610467578063e30bb5631461049e578063e71ff365146104dd57600080fd5b8063b469318d116100b0578063b469318d146103ba578063b83010d314610414578063cf190f341461044757600080fd5b80639541152514610367578063a3112a641461037a578063a6d4dbc7146103a757600080fd5b806344adc90e116101385780634d003070116101125780634d003070146102de57806354fd4d50146102fe57806379f7573a1461034757600080fd5b806344adc90e1461029857806346926267146102b85780634cb7e9e5146102cb57600080fd5b806317d7de7c1161016957806317d7de7c146102205780632d0335ab146102425780633c0427151461028557600080fd5b80630eabf6601461019057806312b11a17146101a557806313893f61146101e7575b600080fd5b6101a361019e3660046134c8565b610554565b005b3480156101b157600080fd5b507ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d9880765b6040519081526020015b60405180910390f35b3480156101f357600080fd5b506102076102023660046134c8565b6106eb565b60405167ffffffffffffffff90911681526020016101de565b34801561022c57600080fd5b50610235610730565b6040516101de9190613578565b34801561024e57600080fd5b506101d461025d3660046135bd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6101d46102933660046135da565b610760565b6102ab6102a63660046134c8565b610863565b6040516101de9190613615565b6101a36102c6366004613659565b6109e4565b6101a36102d93660046134c8565b610a68565b3480156102ea57600080fd5b506102076102f9366004613671565b610b4b565b34801561030a57600080fd5b506102356040518060400160405280600c81526020017f312e342e312d626574612e33000000000000000000000000000000000000000081525081565b34801561035357600080fd5b506101a3610362366004613671565b610b58565b6102ab6103753660046134c8565b610bef565b34801561038657600080fd5b5061039a610395366004613671565b610e62565b6040516101de9190613771565b6101a36103b5366004613784565b611025565b3480156103c657600080fd5b506102076103d5366004613797565b73ffffffffffffffffffffffffffffffffffffffff919091166000908152603460209081526040808320938352929052205467ffffffffffffffff1690565b34801561042057600080fd5b507fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e756101d4565b34801561045357600080fd5b50610207610462366004613671565b6110ca565b34801561047357600080fd5b50610207610482366004613671565b60009081526033602052604090205467ffffffffffffffff1690565b3480156104aa57600080fd5b506104cd6104b9366004613671565b600090815260326020526040902054151590565b60405190151581526020016101de565b3480156104e957600080fd5b506102076104f83660046134c8565b6110d8565b34801561050957600080fd5b506101d4611110565b34801561051e57600080fd5b5060405173420000000000000000000000000000000000002081526020016101de565b6101d461054f3660046137c3565b61111a565b348160005b818110156106e4577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82018114600086868481811061059a5761059a6137fe565b90506020028101906105ac919061382d565b6105b590613ac3565b60208101518051919250908015806105d257508260400151518114155b15610609576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b818110156106ad576106a56040518060a001604052808660000151815260200185848151811061063e5761063e6137fe565b6020026020010151815260200186604001518481518110610661576106616137fe565b60200260200101518152602001866060015173ffffffffffffffffffffffffffffffffffffffff168152602001866080015167ffffffffffffffff168152506111d8565b60010161060c565b506106c383600001518385606001518a886113e9565b6106cd9088613bed565b9650505050506106dd8160010190565b9050610559565b5050505050565b60004282825b818110156107245761071c3387878481811061070f5761070f6137fe565b9050602002013585611a18565b6001016106f1565b50909150505b92915050565b606061075b7f0000000000000000000000000000000000000000000000000000000000000000611b17565b905090565b600061077361076e83613d22565b611ca5565b604080516001808252818301909252600091816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083015260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90920191018161078a5790505090506107f86020840184613d9d565b61080190613dd1565b81600081518110610814576108146137fe565b602090810291909101015261083d83358261083560c0870160a088016135bd565b346001611e2f565b60200151600081518110610853576108536137fe565b6020026020010151915050919050565b60608160008167ffffffffffffffff8111156108815761088161386b565b6040519080825280602002602001820160405280156108b457816020015b606081526020019060019003908161089f5790505b509050600034815b848110156109ce577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85018114368989848181106108fc576108fc6137fe565b905060200281019061090e9190613ddd565b905061091d6020820182613e11565b9050600003610958576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061097d823561096c6020850185613e11565b61097591613e79565b338887611e2f565b805190915061098c9086613bed565b945080602001518785815181106109a5576109a56137fe565b6020026020010181905250806020015151860195505050506109c78160010190565b90506108bc565b506109d98383612541565b979650505050505050565b604080516001808252818301909252600091816020015b60408051808201909152600080825260208201528152602001906001900390816109fb579050509050610a3636839003830160208401613eed565b81600081518110610a4957610a496137fe565b6020908102919091010152610a63823582333460016113e9565b505050565b348160005b818110156106e4577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8201811436868684818110610aad57610aad6137fe565b9050602002810190610abf9190613ddd565b9050610b2c8135610ad36020840184613f09565b808060200260200160405190810160405280939291908181526020016000905b82821015610b1f57610b1060408302860136819003810190613eed565b81526020019060010190610af3565b50505050503388866113e9565b610b369086613bed565b94505050610b448160010190565b9050610a6d565b60004261072a838261262b565b33600090815260208190526040902054808211610ba1576040517f756688fe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b336000908152602081815260409182902084905581518381529081018490527f57b09af877df9068fd60a69d7b21f5576b8b38955812d6ae4ac52942f1e38fb7910160405180910390a15050565b60608160008167ffffffffffffffff811115610c0d57610c0d61386b565b604051908082528060200260200182016040528015610c4057816020015b6060815260200190600190039081610c2b5790505b509050600034815b848110156109ce577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8501811436898984818110610c8857610c886137fe565b9050602002810190610c9a919061382d565b9050366000610cac6020840184613e11565b909250905080801580610ccd5750610cc76040850185613f71565b90508114155b15610d04576040517f947d5a8400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610de557610ddd6040518060a0016040528087600001358152602001868685818110610d3957610d396137fe565b9050602002810190610d4b9190613d9d565b610d5490613dd1565b8152602001610d666040890189613f71565b85818110610d7657610d766137fe565b905060600201803603810190610d8c9190613fd8565b8152602001610da16080890160608a016135bd565b73ffffffffffffffffffffffffffffffffffffffff168152602001610dcc60a0890160808a01613ff4565b67ffffffffffffffff169052611ca5565b600101610d07565b506000610e0e8535610df78587613e79565b610e076080890160608a016135bd565b8b8a611e2f565b8051909150610e1d9089613bed565b975080602001518a8881518110610e3657610e366137fe565b602002602001018190525080602001515189019850505050505050610e5b8160010190565b9050610c48565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e0820183905261010082019290925261012081019190915260008281526032602090815260409182902082516101408101845281548152600182015492810192909252600281015467ffffffffffffffff808216948401949094526801000000000000000081048416606084015270010000000000000000000000000000000090049092166080820152600382015460a0820152600482015473ffffffffffffffffffffffffffffffffffffffff90811660c0830152600583015490811660e083015274010000000000000000000000000000000000000000900460ff16151561010082015260068201805491929161012084019190610f9c9061400f565b80601f0160208091040260200160405190810160405280929190818152602001828054610fc89061400f565b80156110155780601f10610fea57610100808354040283529160200191611015565b820191906000526020600020905b815481529060010190602001808311610ff857829003601f168201915b5050505050815250509050919050565b61103c6110373683900383018361405c565b6111d8565b604080516001808252818301909252600091816020015b604080518082019091526000808252602082015281526020019060019003908161105357905050905061108e36839003830160208401613eed565b816000815181106110a1576110a16137fe565b6020908102919091010152610a638235826110c260e0860160c087016135bd565b3460016113e9565b60004261072a338483611a18565b60004282825b81811015610724576111088686838181106110fb576110fb6137fe565b905060200201358461262b565b6001016110de565b600061075b6126ed565b604080516001808252818301909252600091829190816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083015260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816111345790505090506111a26020840184613d9d565b6111ab90613dd1565b816000815181106111be576111be6137fe565b602090810291909101015261083d83358233346001611e2f565b608081015167ffffffffffffffff161580159061120c57504267ffffffffffffffff16816080015167ffffffffffffffff16105b15611243576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020808201516040808401516060850151855184518587015173ffffffffffffffffffffffffffffffffffffffff84166000908152978890529487208054969794969495611337957fb5d556f07587ec0f08cf386545cc4362c702a001650c2058002615ee5c9d1e7595949392886112ba836140ca565b909155506080808c015160408051602081019990995273ffffffffffffffffffffffffffffffffffffffff9097169688019690965260608701949094529285019190915260a084015260c083015267ffffffffffffffff1660e0820152610100015b60405160208183030381529060405280519060200120612821565b90506113ad84606001518284602001518560400151866000015160405160200161139993929190928352602083019190915260f81b7fff0000000000000000000000000000000000000000000000000000000000000016604082015260410190565b604051602081830303815290604052612834565b6113e3576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050565b6040517fa2ea7c6e0000000000000000000000000000000000000000000000000000000081526004810186905260009081907342000000000000000000000000000000000000209063a2ea7c6e90602401600060405180830381865afa158015611457573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261149d9190810190614102565b80519091506114d8576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b855160008167ffffffffffffffff8111156114f5576114f561386b565b60405190808252806020026020018201604052801561159457816020015b60408051610140810182526000808252602080830182905292820181905260608083018290526080830182905260a0830182905260c0830182905260e0830182905261010083019190915261012082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816115135790505b50905060008267ffffffffffffffff8111156115b2576115b261386b565b6040519080825280602002602001820160405280156115db578160200160208202803683370190505b50905060005b838110156119fa5760008a82815181106115fd576115fd6137fe565b6020908102919091018101518051600090815260329092526040909120805491925090611656576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8c816001015414611693576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600581015473ffffffffffffffffffffffffffffffffffffffff8c81169116146116e9576040517f4ca8886700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600581015474010000000000000000000000000000000000000000900460ff1661173f576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002810154700100000000000000000000000000000000900467ffffffffffffffff1615611799576040517f905e710700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b426002820180547fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff811670010000000000000000000000000000000067ffffffffffffffff948516810291821793849055604080516101408101825287548152600188015460208201529386169286169290921791830191909152680100000000000000008304841660608301529091049091166080820152600382015460a0820152600482015473ffffffffffffffffffffffffffffffffffffffff90811660c0830152600583015490811660e083015274010000000000000000000000000000000000000000900460ff16151561010082015260068201805483916101208401916118a59061400f565b80601f01602080910402602001604051908101604052809291908181526020018280546118d19061400f565b801561191e5780601f106118f35761010080835404028352916020019161191e565b820191906000526020600020905b81548152906001019060200180831161190157829003601f168201915b505050505081525050858481518110611939576119396137fe565b6020026020010181905250816020015184848151811061195b5761195b6137fe565b6020026020010181815250508c8b73ffffffffffffffffffffffffffffffffffffffff16868581518110611991576119916137fe565b602002602001015160c0015173ffffffffffffffffffffffffffffffffffffffff167ff930a6e2523c9cc298691873087a740550b8fc85a0680830414c148ed927f61585600001516040516119e891815260200190565b60405180910390a450506001016115e1565b50611a0a84838360018b8b612a03565b9a9950505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff83166000908152603460209081526040808320858452918290529091205467ffffffffffffffff1615611a8c576040517fec9d6eeb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008381526020829052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff861690811790915590519091859173ffffffffffffffffffffffffffffffffffffffff8816917f92a1f7a41a7c585a8b09e25b195e225b1d43248daca46b0faf9e0792777a222991a450505050565b604080516020808252818301909252606091600091906020820181803683370190505090506000805b6020811015611be2576000858260208110611b5d57611b5d6137fe565b1a60f81b90507fff000000000000000000000000000000000000000000000000000000000000008116600003611b935750611be2565b80848481518110611ba657611ba66137fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053505060019182019101611b40565b5060008167ffffffffffffffff811115611bfe57611bfe61386b565b6040519080825280601f01601f191660200182016040528015611c28576020820181803683370190505b50905060005b82811015611c9c57838181518110611c4857611c486137fe565b602001015160f81c60f81b828281518110611c6557611c656137fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600101611c2e565b50949350505050565b608081015167ffffffffffffffff1615801590611cd957504267ffffffffffffffff16816080015167ffffffffffffffff16105b15611d10576040517f1ab7da6b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020808201516040808401516060808601518651855186880151868801519488015160808901518051908b012060a08a015173ffffffffffffffffffffffffffffffffffffffff871660009081529b8c9052988b2080549a9b989a9899611337997ffeb2925a02bae3dae48d424a0437a2b6ac939aa9230ddc55a1a76f065d988076999493928c611da0836140ca565b919050558e6080015160405160200161131c9b9a999897969594939291909a8b5273ffffffffffffffffffffffffffffffffffffffff998a1660208c015260408b019890985295909716606089015267ffffffffffffffff938416608089015291151560a088015260c087015260e0860152610100850193909352610120840152166101408201526101600190565b60408051808201909152600081526060602082015284516040805180820190915260008152606060208201528167ffffffffffffffff811115611e7457611e7461386b565b604051908082528060200260200182016040528015611e9d578160200160208202803683370190505b5060208201526040517fa2ea7c6e000000000000000000000000000000000000000000000000000000008152600481018990526000907342000000000000000000000000000000000000209063a2ea7c6e90602401600060405180830381865afa158015611f0f573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052611f559190810190614102565b8051909150611f90576040517fbf37b20e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008367ffffffffffffffff811115611fab57611fab61386b565b60405190808252806020026020018201604052801561204a57816020015b60408051610140810182526000808252602080830182905292820181905260608083018290526080830182905260a0830182905260c0830182905260e0830182905261010083019190915261012082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909201910181611fc95790505b50905060008467ffffffffffffffff8111156120685761206861386b565b604051908082528060200260200182016040528015612091578160200160208202803683370190505b50905060005b858110156125205760008b82815181106120b3576120b36137fe565b60200260200101519050600067ffffffffffffffff16816020015167ffffffffffffffff16141580156120fe57504267ffffffffffffffff16816020015167ffffffffffffffff1611155b15612135576040517f08e8b93700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8460400151158015612148575080604001515b1561217f576040517f157bd4c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006040518061014001604052806000801b81526020018f81526020016121a34290565b67ffffffffffffffff168152602001836020015167ffffffffffffffff168152602001600067ffffffffffffffff16815260200183606001518152602001836000015173ffffffffffffffffffffffffffffffffffffffff1681526020018d73ffffffffffffffffffffffffffffffffffffffff16815260200183604001511515815260200183608001518152509050600080600090505b6122458382612df4565b600081815260326020526040902054909250156122645760010161223b565b81835260008281526032602090815260409182902085518155908501516001820155908401516002820180546060870151608088015167ffffffffffffffff908116700100000000000000000000000000000000027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff92821668010000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009094169190951617919091171691909117905560a0840151600382015560c084015160048201805473ffffffffffffffffffffffffffffffffffffffff9283167fffffffffffffffffffffffff000000000000000000000000000000000000000090911617905560e0850151600583018054610100880151151574010000000000000000000000000000000000000000027fffffffffffffffffffffff000000000000000000000000000000000000000000909116929093169190911791909117905561012084015184919060068201906123e49082614228565b50505060608401511561243b57606084015160009081526032602052604090205461243b576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8287868151811061244e5761244e6137fe565b60200260200101819052508360a00151868681518110612470576124706137fe565b6020026020010181815250508189602001518681518110612493576124936137fe565b6020026020010181815250508f8e73ffffffffffffffffffffffffffffffffffffffff16856000015173ffffffffffffffffffffffffffffffffffffffff167f8bf46bf4cfd674fa735a3d63ec1c9ad4153f033c290341f3a588b75685141b358560405161250391815260200190565b60405180910390a4505050506125198160010190565b9050612097565b5061253083838360008c8c612a03565b845250919998505050505050505050565b606060008267ffffffffffffffff81111561255e5761255e61386b565b604051908082528060200260200182016040528015612587578160200160208202803683370190505b508451909150600090815b818110156126205760008782815181106125ae576125ae6137fe565b6020026020010151905060008151905060005b8181101561260c578281815181106125db576125db6137fe565b60200260200101518787815181106125f5576125f56137fe565b6020908102919091010152600195860195016125c1565b5050506126198160010190565b9050612592565b509195945050505050565b60008281526033602052604090205467ffffffffffffffff161561267b576040517f2e26794600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008281526033602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff85169081179091559051909184917f5aafceeb1c7ad58e4a84898bdee37c02c0fc46e7d24e6b60e8209449f183459f9190a35050565b60003073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614801561275357507f000000000000000000000000000000000000000000000000000000000000000046145b1561277d57507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b600061072a61282e6126ed565b83612e53565b60008060006128438585612e95565b9092509050600081600481111561285c5761285c614342565b14801561289457508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156128a4576001925050506129fc565b6000808773ffffffffffffffffffffffffffffffffffffffff16631626ba7e60e01b88886040516024016128d9929190614371565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290516129629190614392565b600060405180830381855afa9150503d806000811461299d576040519150601f19603f3d011682016040523d82523d6000602084013e6129a2565b606091505b50915091508180156129b5575080516020145b80156129f5575080517f1626ba7e00000000000000000000000000000000000000000000000000000000906129f390830160209081019084016143a4565b145b9450505050505b9392505050565b84516000906001819003612a5b57612a538888600081518110612a2857612a286137fe565b602002602001015188600081518110612a4357612a436137fe565b6020026020010151888888612eda565b915050612dea565b602088015173ffffffffffffffffffffffffffffffffffffffff8116612afc5760005b82811015612ae157878181518110612a9857612a986137fe565b6020026020010151600014612ad9576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600101612a7e565b508315612af157612af1856131f9565b600092505050612dea565b6000808273ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b6e91906143bd565b905060005b84811015612c2b5760008a8281518110612b8f57612b8f6137fe565b6020026020010151905080600003612ba75750612c23565b82612bde576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b88811115612c18576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b978890039792909201915b600101612b73565b508715612d06576040517f88e5b2d900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416906388e5b2d9908490612c88908e908e906004016143da565b60206040518083038185885af1158015612ca6573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612ccb91906143bd565b612d01576040517fbf2f3a8b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612dd5565b6040517f91db0b7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416906391db0b7e908490612d5c908e908e906004016143da565b60206040518083038185885af1158015612d7a573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612d9f91906143bd565b612dd5576040517fe8bee83900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8515612de457612de4876131f9565b50925050505b9695505050505050565b60208083015160c084015160e0850151604080870151606088015161010089015160a08a01516101208b01519451600099612e3599989796918c9101614493565b60405160208183030381529060405280519060200120905092915050565b6040517f190100000000000000000000000000000000000000000000000000000000000060208201526022810183905260428101829052600090606201612e35565b6000808251604103612ecb5760208301516040840151606085015160001a612ebf8782858561320c565b94509450505050612ed3565b506000905060025b9250929050565b602086015160009073ffffffffffffffffffffffffffffffffffffffff8116612f4e578515612f35576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8215612f4457612f44846131f9565b6000915050612dea565b8515613039578073ffffffffffffffffffffffffffffffffffffffff1663ce46e0466040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fc391906143bd565b612ff9576040517f1574f9f300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83861115613033576040517f1101129400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b85840393505b8415613111576040517fe49617e100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063e49617e1908890613093908b90600401613771565b60206040518083038185885af11580156130b1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906130d691906143bd565b61310c576040517fccf3bb2700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6131de565b6040517fe60c350500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063e60c3505908890613165908b90600401613771565b60206040518083038185885af1158015613183573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906131a891906143bd565b6131de576040517fbd8ba84d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82156131ed576131ed846131f9565b50939695505050505050565b8015613209576132093382613324565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613243575060009050600361331b565b8460ff16601b1415801561325b57508460ff16601c14155b1561326c575060009050600461331b565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156132c0573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166133145760006001925092505061331b565b9150600090505b94509492505050565b80471015613393576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064015b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d80600081146133ed576040519150601f19603f3d011682016040523d82523d6000602084013e6133f2565b606091505b5050905080610a63576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d61792068617665207265766572746564000000000000606482015260840161338a565b60008083601f84011261349557600080fd5b50813567ffffffffffffffff8111156134ad57600080fd5b6020830191508360208260051b8501011115612ed357600080fd5b600080602083850312156134db57600080fd5b823567ffffffffffffffff8111156134f257600080fd5b6134fe85828601613483565b90969095509350505050565b60005b8381101561352557818101518382015260200161350d565b50506000910152565b6000815180845261354681602086016020860161350a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006129fc602083018461352e565b73ffffffffffffffffffffffffffffffffffffffff8116811461320957600080fd5b80356135b88161358b565b919050565b6000602082840312156135cf57600080fd5b81356129fc8161358b565b6000602082840312156135ec57600080fd5b813567ffffffffffffffff81111561360357600080fd5b820160e081850312156129fc57600080fd5b6020808252825182820181905260009190848201906040850190845b8181101561364d57835183529284019291840191600101613631565b50909695505050505050565b60006060828403121561366b57600080fd5b50919050565b60006020828403121561368357600080fd5b5035919050565b6000610140825184526020830151602085015260408301516136b8604086018267ffffffffffffffff169052565b5060608301516136d4606086018267ffffffffffffffff169052565b5060808301516136f0608086018267ffffffffffffffff169052565b5060a083015160a085015260c083015161372260c086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e083015161374a60e086018273ffffffffffffffffffffffffffffffffffffffff169052565b506101008381015115159085015261012080840151818601839052612dea8387018261352e565b6020815260006129fc602083018461368a565b6000610100828403121561366b57600080fd5b600080604083850312156137aa57600080fd5b82356137b58161358b565b946020939093013593505050565b6000602082840312156137d557600080fd5b813567ffffffffffffffff8111156137ec57600080fd5b8201604081850312156129fc57600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6183360301811261386157600080fd5b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156138bd576138bd61386b565b60405290565b60405160c0810167ffffffffffffffff811182821017156138bd576138bd61386b565b6040516080810167ffffffffffffffff811182821017156138bd576138bd61386b565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156139505761395061386b565b604052919050565b600067ffffffffffffffff8211156139725761397261386b565b5060051b60200190565b60006040828403121561398e57600080fd5b6040516040810181811067ffffffffffffffff821117156139b1576139b161386b565b604052823581526020928301359281019290925250919050565b6000606082840312156139dd57600080fd5b6040516060810181811067ffffffffffffffff82111715613a0057613a0061386b565b604052905080823560ff81168114613a1757600080fd5b8082525060208301356020820152604083013560408201525092915050565b600082601f830112613a4757600080fd5b81356020613a5c613a5783613958565b613909565b82815260609283028501820192828201919087851115613a7b57600080fd5b8387015b85811015613a9e57613a9189826139cb565b8452928401928101613a7f565b5090979650505050505050565b803567ffffffffffffffff811681146135b857600080fd5b600060a08236031215613ad557600080fd5b613add61389a565b8235815260208084013567ffffffffffffffff80821115613afd57600080fd5b9085019036601f830112613b1057600080fd5b8135613b1e613a5782613958565b81815260069190911b83018401908481019036831115613b3d57600080fd5b938501935b82851015613b6657613b54368661397c565b82528582019150604085019450613b42565b80868801525050506040860135925080831115613b8257600080fd5b5050613b9036828601613a36565b604083015250613ba2606084016135ad565b6060820152613bb360808401613aab565b608082015292915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561072a5761072a613bbe565b801515811461320957600080fd5b600067ffffffffffffffff821115613c2857613c2861386b565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600060c08284031215613c6657600080fd5b613c6e6138c3565b90508135613c7b8161358b565b81526020613c8a838201613aab565b818301526040830135613c9c81613c00565b604083015260608381013590830152608083013567ffffffffffffffff811115613cc557600080fd5b8301601f81018513613cd657600080fd5b8035613ce4613a5782613c0e565b8181528684838501011115613cf857600080fd5b818484018583013760008483830101528060808601525050505060a082013560a082015292915050565b600060e08236031215613d3457600080fd5b613d3c61389a565b82358152602083013567ffffffffffffffff811115613d5a57600080fd5b613d6636828601613c54565b602083015250613d7936604085016139cb565b604082015260a0830135613d8c8161358b565b6060820152613bb360c08401613aab565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4183360301811261386157600080fd5b600061072a3683613c54565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261386157600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112613e4657600080fd5b83018035915067ffffffffffffffff821115613e6157600080fd5b6020019150600581901b3603821315612ed357600080fd5b6000613e87613a5784613958565b80848252602080830192508560051b850136811115613ea557600080fd5b855b81811015613ee157803567ffffffffffffffff811115613ec75760008081fd5b613ed336828a01613c54565b865250938201938201613ea7565b50919695505050505050565b600060408284031215613eff57600080fd5b6129fc838361397c565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112613f3e57600080fd5b83018035915067ffffffffffffffff821115613f5957600080fd5b6020019150600681901b3603821315612ed357600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112613fa657600080fd5b83018035915067ffffffffffffffff821115613fc157600080fd5b6020019150606081023603821315612ed357600080fd5b600060608284031215613fea57600080fd5b6129fc83836139cb565b60006020828403121561400657600080fd5b6129fc82613aab565b600181811c9082168061402357607f821691505b60208210810361366b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000610100828403121561406f57600080fd5b61407761389a565b82358152614088846020850161397c565b602082015261409a84606085016139cb565b604082015260c08301356140ad8161358b565b60608201526140be60e08401613aab565b60808201529392505050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036140fb576140fb613bbe565b5060010190565b6000602080838503121561411557600080fd5b825167ffffffffffffffff8082111561412d57600080fd5b908401906080828703121561414157600080fd5b6141496138e6565b825181528383015161415a8161358b565b81850152604083015161416c81613c00565b604082015260608301518281111561418357600080fd5b80840193505086601f84011261419857600080fd5b825191506141a8613a5783613c0e565b82815287858486010111156141bc57600080fd5b6141cb8386830187870161350a565b60608201529695505050505050565b601f821115610a6357600081815260208120601f850160051c810160208610156142015750805b601f850160051c820191505b818110156142205782815560010161420d565b505050505050565b815167ffffffffffffffff8111156142425761424261386b565b61425681614250845461400f565b846141da565b602080601f8311600181146142a957600084156142735750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555614220565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156142f6578886015182559484019460019091019084016142d7565b508582101561433257878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b82815260406020820152600061438a604083018461352e565b949350505050565b6000825161386181846020870161350a565b6000602082840312156143b657600080fd5b5051919050565b6000602082840312156143cf57600080fd5b81516129fc81613c00565b6000604082016040835280855180835260608501915060608160051b8601019250602080880160005b8381101561444f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa088870301855261443d86835161368a565b95509382019390820190600101614403565b50508584038187015286518085528782019482019350915060005b828110156144865784518452938101939281019260010161446a565b5091979650505050505050565b89815260007fffffffffffffffffffffffffffffffffffffffff000000000000000000000000808b60601b166020840152808a60601b166034840152507fffffffffffffffff000000000000000000000000000000000000000000000000808960c01b166048840152808860c01b1660508401525085151560f81b6058830152846059830152835161452c81607985016020880161350a565b80830190507fffffffff000000000000000000000000000000000000000000000000000000008460e01b166079820152607d81019150509a995050505050505050505056fea164736f6c6343000813000a0000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 5800000, "intent": "Deploy EAS Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001ffe608060405234801561000f575f80fd5b5061001e61002360201b60201c565b6101b3565b5f60019054906101000a900460ff1615610072576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161006990610161565b60405180910390fd5b60ff80165f8054906101000a900460ff1660ff1610156100df5760ff5f806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff6040516100d6919061019a565b60405180910390a15b565b5f82825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e6974695f8201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b5f61014b6027836100e1565b9150610156826100f1565b604082019050919050565b5f6020820190508181035f8301526101788161013f565b9050919050565b5f60ff82169050919050565b6101948161017f565b82525050565b5f6020820190506101ad5f83018461018b565b92915050565b611e3e806101c05f395ff3fe60806040526004361061008f575f3560e01c80630a7617b31461015a5780630c0544a314610182578063394d2731146101ac5780633e47158c146101d657806354fd4d50146102005780637dfbd0491461022a5780637fc81bb714610254578063b87ea8d41461027c578063c4d66de814610292578063d61a398b146102ba578063dad544e0146102e457610156565b366101565761009c61030e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610100576040517f14885cf900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f4790503373ffffffffffffffffffffffffffffffffffffffff167f213e72af0d3613bd643cff3059f872c1015e6541624e37872bf95eefbaf220a8348360405161014c929190611425565b60405180910390a2005b5f80fd5b348015610165575f80fd5b50610180600480360381019061017b91906114c8565b610336565b005b34801561018d575f80fd5b50610196610522565b6040516101a3919061151d565b60405180910390f35b3480156101b7575f80fd5b506101c0610544565b6040516101cd919061151d565b60405180910390f35b3480156101e1575f80fd5b506101ea610565565b6040516101f79190611591565b60405180910390f35b34801561020b575f80fd5b506102146107b4565b604051610221919061161a565b60405180910390f35b348015610235575f80fd5b5061023e6107ed565b60405161024b919061151d565b60405180910390f35b34801561025f575f80fd5b5061027a60048036038101906102759190611664565b6107f5565b005b348015610287575f80fd5b50610290610a1f565b005b34801561029d575f80fd5b506102b860048036038101906102b391906114c8565b610de9565b005b3480156102c5575f80fd5b506102ce610fd6565b6040516102db91906116af565b60405180910390f35b3480156102ef575f80fd5b506102f8610ffb565b60405161030591906116d7565b60405180910390f35b5f7f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135c905090565b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610393573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b7919061171a565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461041b576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610480576040517f99c6ec0800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f60026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f16417cc372deec0caee5f52e2ad77a5f07b4591fd56b4ff31b6e20f817d4daeb8183604051610516929190611745565b60405180910390a15050565b600160109054906101000a90046fffffffffffffffffffffffffffffffff1681565b60015f9054906101000a90046fffffffffffffffffffffffffffffffff1681565b5f806105927fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035f1b611075565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146105d057809150506107b1565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516106139190611799565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000005f1c175f1b61066a305f60405160200161064f9291906117da565b6040516020818303038152906040528051906020012061107f565b146106a1576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6106d43060016040516020016106b99291906117da565b60405160208183030381529060405280519060200120611075565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461077f578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610752573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610776919061171a565b925050506107b1565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b6301e1338081565b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610852573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610876919061171a565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108da576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f816fffffffffffffffffffffffffffffffff1603610925576040517fcf85916100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6301e133806fffffffffffffffffffffffffffffffff16816fffffffffffffffffffffffffffffffff161115610987576040517f30b9f35e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f600160109054906101000a90046fffffffffffffffffffffffffffffffff16905081600160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055507f4492086b630ed3846eec0979dd87a71c814ceb1c6dab80ab81e3450b21e4de288183604051610a13929190611801565b60405180910390a15050565b600160109054906101000a90046fffffffffffffffffffffffffffffffff1660015f9054906101000a90046fffffffffffffffffffffffffffffffff16610a669190611828565b6fffffffffffffffffffffffffffffffff16421015610ab1576040517f1e4a9f3a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b4260015f6101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055505f610b07734200000000000000000000000000000000000011611089565b90505f610b27734200000000000000000000000000000000000019611089565b90505f610b4773420000000000000000000000000000000000001a611089565b90505f610b6773420000000000000000000000000000000000001b611089565b9050610b725f6112f0565b5f82828587610b81919061186b565b610b8b919061186b565b610b95919061186b565b90505f8103610bd0576040517fc8972e5200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166354e7f42d878786886040518563ffffffff1660e01b8152600401610c31949392919061189e565b5f60405180830381865afa158015610c4b573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190610c739190611ad7565b90505f815190505f8103610cb3576040517f763970d600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805b82811015610d6c575f848281518110610cd257610cd1611b1e565b5b60200260200101516020015190505f8103610ced5750610d5f565b5f610d15868481518110610d0457610d03611b1e565b5b60200260200101515f015183611316565b905080610d4e576040517fd68d1b1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8184610d5a919061186b565b935050505b8080600101915050610cb6565b50838114610da6576040517f9c01eac000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f73f9a13241a1848ec157967f3a85601709353e616f1f2605d818c0f2d21774df8385604051610dd7929190611c3e565b60405180910390a15050505050505050565b5f8060019054906101000a900460ff16159050808015610e18575060015f8054906101000a900460ff1660ff16105b80610e445750610e273061132a565b158015610e43575060015f8054906101000a900460ff1660ff16145b5b610e83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7a90611cdc565b60405180910390fd5b60015f806101000a81548160ff021916908360ff1602179055508015610ebe5760015f60016101000a81548160ff0219169083151502179055505b610ec661134c565b815f60026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062015180600160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055504260015f6101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055508015610fd2575f8060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610fc99190611d3f565b60405180910390a15b5050565b5f60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f611004610565565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561104c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611070919061171a565b905090565b5f81549050919050565b5f81549050919050565b5f60018081111561109d5761109c611d58565b5b8273ffffffffffffffffffffffffffffffffffffffff166382356d8a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061110a9190611da8565b600181111561111c5761111b611d58565b5b14611153576040517fb4726cbe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff166366d003ac6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d7919061171a565b73ffffffffffffffffffffffffffffffffffffffff1614611224576040517fc3380cef00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f479050611231836112f0565b8273ffffffffffffffffffffffffffffffffffffffff16633ccfd60b6040518163ffffffff1660e01b81526004016020604051808303815f875af115801561127b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061129f9190611dd3565b91505f4790508282826112b29190611dfe565b146112e9576040517f87c91c5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050919050565b807f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135d50565b5f611322835a846113fb565b905092915050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661136b610565565b73ffffffffffffffffffffffffffffffffffffffff16141580156113c257503373ffffffffffffffffffffffffffffffffffffffff166113a9610ffb565b73ffffffffffffffffffffffffffffffffffffffff1614155b156113f9576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f190509392505050565b5f819050919050565b61141f8161140d565b82525050565b5f6040820190506114385f830185611416565b6114456020830184611416565b9392505050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114868261145d565b9050919050565b5f6114978261147c565b9050919050565b6114a78161148d565b81146114b1575f80fd5b50565b5f813590506114c28161149e565b92915050565b5f602082840312156114dd576114dc611455565b5b5f6114ea848285016114b4565b91505092915050565b5f6fffffffffffffffffffffffffffffffff82169050919050565b611517816114f3565b82525050565b5f6020820190506115305f83018461150e565b92915050565b5f819050919050565b5f61155961155461154f8461145d565b611536565b61145d565b9050919050565b5f61156a8261153f565b9050919050565b5f61157b82611560565b9050919050565b61158b81611571565b82525050565b5f6020820190506115a45f830184611582565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6115ec826115aa565b6115f681856115b4565b93506116068185602086016115c4565b61160f816115d2565b840191505092915050565b5f6020820190508181035f83015261163281846115e2565b905092915050565b611643816114f3565b811461164d575f80fd5b50565b5f8135905061165e8161163a565b92915050565b5f6020828403121561167957611678611455565b5b5f61168684828501611650565b91505092915050565b5f61169982611560565b9050919050565b6116a98161168f565b82525050565b5f6020820190506116c25f8301846116a0565b92915050565b6116d18161147c565b82525050565b5f6020820190506116ea5f8301846116c8565b92915050565b6116f98161147c565b8114611703575f80fd5b50565b5f81519050611714816116f0565b92915050565b5f6020828403121561172f5761172e611455565b5b5f61173c84828501611706565b91505092915050565b5f6040820190506117585f8301856116c8565b61176560208301846116c8565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6117a38261140d565b91506117ae8361140d565b92508282026117bc8161140d565b915082820484148315176117d3576117d261176c565b5b5092915050565b5f6040820190506117ed5f8301856116c8565b6117fa6020830184611416565b9392505050565b5f6040820190506118145f83018561150e565b611821602083018461150e565b9392505050565b5f611832826114f3565b915061183d836114f3565b925082820190506fffffffffffffffffffffffffffffffff8111156118655761186461176c565b5b92915050565b5f6118758261140d565b91506118808361140d565b92508282019050808211156118985761189761176c565b5b92915050565b5f6080820190506118b15f830187611416565b6118be6020830186611416565b6118cb6040830185611416565b6118d86060830184611416565b95945050505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61191b826115d2565b810181811067ffffffffffffffff8211171561193a576119396118e5565b5b80604052505050565b5f61194c61144c565b90506119588282611912565b919050565b5f67ffffffffffffffff821115611977576119766118e5565b5b602082029050602081019050919050565b5f80fd5b5f80fd5b5f61199a8261145d565b9050919050565b6119aa81611990565b81146119b4575f80fd5b50565b5f815190506119c5816119a1565b92915050565b6119d48161140d565b81146119de575f80fd5b50565b5f815190506119ef816119cb565b92915050565b5f60408284031215611a0a57611a0961198c565b5b611a146040611943565b90505f611a23848285016119b7565b5f830152506020611a36848285016119e1565b60208301525092915050565b5f611a54611a4f8461195d565b611943565b90508083825260208201905060408402830185811115611a7757611a76611988565b5b835b81811015611aa05780611a8c88826119f5565b845260208401935050604081019050611a79565b5050509392505050565b5f82601f830112611abe57611abd6118e1565b5b8151611ace848260208601611a42565b91505092915050565b5f60208284031215611aec57611aeb611455565b5b5f82015167ffffffffffffffff811115611b0957611b08611459565b5b611b1584828501611aaa565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611b7d81611990565b82525050565b611b8c8161140d565b82525050565b604082015f820151611ba65f850182611b74565b506020820151611bb96020850182611b83565b50505050565b5f611bca8383611b92565b60408301905092915050565b5f602082019050919050565b5f611bec82611b4b565b611bf68185611b55565b9350611c0183611b65565b805f5b83811015611c31578151611c188882611bbf565b9750611c2383611bd6565b925050600181019050611c04565b5085935050505092915050565b5f6040820190508181035f830152611c568185611be2565b9050611c656020830184611416565b9392505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c7265615f8201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b5f611cc6602e836115b4565b9150611cd182611c6c565b604082019050919050565b5f6020820190508181035f830152611cf381611cba565b9050919050565b5f819050919050565b5f60ff82169050919050565b5f611d29611d24611d1f84611cfa565b611536565b611d03565b9050919050565b611d3981611d0f565b82525050565b5f602082019050611d525f830184611d30565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60028110611d91575f80fd5b50565b5f81519050611da281611d85565b92915050565b5f60208284031215611dbd57611dbc611455565b5b5f611dca84828501611d94565b91505092915050565b5f60208284031215611de857611de7611455565b5b5f611df5848285016119e1565b91505092915050565b5f611e088261140d565b9150611e138361140d565b9250828203905081811115611e2b57611e2a61176c565b5b9291505056fea164736f6c6343000819000a0000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000017586080604052348015600e575f80fd5b5060156019565b60d4565b5f54610100900460ff161560835760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116101560d2575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611677806100e15f395ff3fe6080604052600436106100bb575f3560e01c80637dfbd04911610071578063c4d66de81161004c578063c4d66de8146102f6578063d61a398b14610315578063dad544e014610346575f80fd5b80637dfbd049146102ac5780637fc81bb7146102c3578063b87ea8d4146102e2575f80fd5b8063394d2731116100a1578063394d2731146101f65780633e47158c1461021e57806354fd4d5014610257575f80fd5b80630a7617b3146101735780630c0544a314610194575f80fd5b3661016f573373ffffffffffffffffffffffffffffffffffffffff7f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135c1614610130576040517f14885cf900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805134815247602082018190529133917f213e72af0d3613bd643cff3059f872c1015e6541624e37872bf95eefbaf220a8910160405180910390a2005b5f80fd5b34801561017e575f80fd5b5061019261018d3660046112a1565b61035a565b005b34801561019f575f80fd5b506001546101d09070010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b6040516fffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b348015610201575f80fd5b506001546101d0906fffffffffffffffffffffffffffffffff1681565b348015610229575f80fd5b5061023261051c565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101ed565b348015610262575f80fd5b5061029f6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b6040516101ed91906112bc565b3480156102b7575f80fd5b506101d06301e1338081565b3480156102ce575f80fd5b506101926102dd36600461130f565b610722565b3480156102ed575f80fd5b50610192610915565b348015610301575f80fd5b506101926103103660046112a1565b610ced565b348015610320575f80fd5b505f546102329062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b348015610351575f80fd5b50610232610ee9565b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103db919061133e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461043f576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff811661048c576040517f99c6ec0800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805473ffffffffffffffffffffffffffffffffffffffff838116620100008181027fffffffffffffffffffff0000000000000000000000000000000000000000ffff85161790945560408051949093049091168084526020840191909152917f16417cc372deec0caee5f52e2ad77a5f07b4591fd56b4ff31b6e20f817d4daeb91015b60405180910390a15050565b5f806105467fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561056957919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026105ac9190611386565b604080513060208201525f918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000009190911790610606906060015b604051602081830303815290604052805190602001205490565b1461063d576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091525f9061065e906060016105ec565b905073ffffffffffffffffffffffffffffffffffffffff8116156106f0578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e9919061133e565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561077f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a3919061133e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610807576040517f38bac74200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806fffffffffffffffffffffffffffffffff165f03610852576040517fcf85916100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6301e133806fffffffffffffffffffffffffffffffff821611156108a2576040517f30b9f35e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180546fffffffffffffffffffffffffffffffff8381167001000000000000000000000000000000008181028385161790945560408051949093049091168084526020840191909152917f4492086b630ed3846eec0979dd87a71c814ceb1c6dab80ab81e3450b21e4de289101610510565b60015461094a906fffffffffffffffffffffffffffffffff7001000000000000000000000000000000008204811691166113a3565b6fffffffffffffffffffffffffffffffff16421015610995576040517f1e4a9f3a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffffffffffff0000000000000000000000000000000016426fffffffffffffffffffffffffffffffff161790555f6109ef734200000000000000000000000000000000000011610f63565b90505f610a0f734200000000000000000000000000000000000019610f63565b90505f610a2f73420000000000000000000000000000000000001a610f63565b90505f610a4f73420000000000000000000000000000000000001b610f63565b9050610a5a5f6111b0565b5f8282610a6786886113d3565b610a7191906113d3565b610a7b91906113d3565b9050805f03610ab6576040517fc8972e5200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80546040517f54e7f42d000000000000000000000000000000000000000000000000000000008152600481018890526024810187905260448101859052606481018690526201000090910473ffffffffffffffffffffffffffffffffffffffff16906354e7f42d906084015f60405180830381865afa158015610b3c573d5f803e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610b81919081019061148b565b80519091505f819003610bc0576040517f763970d600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805b82811015610c70575f848281518110610bde57610bde61155a565b6020026020010151602001519050805f03610bf95750610c68565b5f610c20868481518110610c0f57610c0f61155a565b60200260200101515f0151836111d6565b905080610c59576040517fd68d1b1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c6382856113d3565b935050505b600101610bc3565b50838114610caa576040517f9c01eac000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f73f9a13241a1848ec157967f3a85601709353e616f1f2605d818c0f2d21774df8385604051610cdb929190611587565b60405180910390a15050505050505050565b5f54610100900460ff1615808015610d0b57505f54600160ff909116105b80610d245750303b158015610d2457505f5460ff166001145b610db4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840160405180910390fd5b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e10575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e186111e9565b5f80547fffffffffffffffffffff0000000000000000000000000000000000000000ffff166201000073ffffffffffffffffffffffffffffffffffffffff85160217905572015180000000000000000000000000000000006fffffffffffffffffffffffffffffffff4216176001558015610ee5575f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610510565b5050565b5f610ef261051c565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f3a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f5e919061133e565b905090565b5f60018273ffffffffffffffffffffffffffffffffffffffff166382356d8a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610faf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fd39190611622565b6001811115610fe457610fe46115f5565b1461101b576040517fb4726cbe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff166366d003ac6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561107b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061109f919061133e565b73ffffffffffffffffffffffffffffffffffffffff16146110ec576040517fc3380cef00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b476110f6836111b0565b8273ffffffffffffffffffffffffffffffffffffffff16633ccfd60b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015611140573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111649190611640565b915047826111728383611657565b146111a9576040517f87c91c5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050919050565b807f21346dddac42cc163a6523eefc19df981df7352c870dc3b0b17a6a92fc6fe8135d50565b5f6111e2835a8461126c565b9392505050565b336111f261051c565b73ffffffffffffffffffffffffffffffffffffffff161415801561123357503361121a610ee9565b73ffffffffffffffffffffffffffffffffffffffff1614155b1561126a576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f805f805f858888f1949350505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461129e575f80fd5b50565b5f602082840312156112b1575f80fd5b81356111e28161127d565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b5f6020828403121561131f575f80fd5b81356fffffffffffffffffffffffffffffffff811681146111e2575f80fd5b5f6020828403121561134e575f80fd5b81516111e28161127d565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b808202811582820484141761139d5761139d611359565b92915050565b6fffffffffffffffffffffffffffffffff8181168382160190808211156113cc576113cc611359565b5092915050565b8082018082111561139d5761139d611359565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040805190810167ffffffffffffffff81118282101715611436576114366113e6565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611483576114836113e6565b604052919050565b5f602080838503121561149c575f80fd5b825167ffffffffffffffff808211156114b3575f80fd5b818501915085601f8301126114c6575f80fd5b8151818111156114d8576114d86113e6565b6114e6848260051b0161143c565b818152848101925060069190911b830184019087821115611505575f80fd5b928401925b8184101561154f5760408489031215611521575f80fd5b611529611413565b84516115348161127d565b8152848601518682015283526040909301929184019161150a565b979650505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b604080825283518282018190525f91906020906060850190828801855b828110156115df578151805173ffffffffffffffffffffffffffffffffffffffff1685528501518585015292850192908401906001016115a4565b5050508093505050508260208301529392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f60208284031215611632575f80fd5b8151600281106111e2575f80fd5b5f60208284031215611650575f80fd5b5051919050565b8181038181111561139d5761139d61135956fea164736f6c6343000819000a0000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1700000, "intent": "Deploy FeeSplitter Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000969608060405234801561001057600080fd5b50610949806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610064578063e0145f5c14610094575b600080fd5b61004e6100b2565b60405161005b91906103ec565b60405180910390f35b61007e6004803603810190610079919061058d565b6100eb565b60405161008b919061062a565b60405180910390f35b61009c610337565b6040516100a9919061062a565b60405180910390f35b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60008082805190602001209050600060ff60f81b734e59b44847b379578588920ca78fbf26c0b4956c8684604051602001610129949392919061070d565b6040516020818303038152906040528051906020012060001c905060008173ffffffffffffffffffffffffffffffffffffffff163b146101b0578073ffffffffffffffffffffffffffffffffffffffff167ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b60405160405180910390a28092505050610331565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff1687876040516020016101f19291906107a2565b60405160208183030381529060405260405161020d91906107ca565b6000604051808303816000865af19150503d806000811461024a576040519150601f19603f3d011682016040523d82523d6000602084013e61024f565b606091505b50915091508061025e9061083f565b60601c945081158061029c57508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156102de57806040517fcb0fc6f70000000000000000000000000000000000000000000000000000000081526004016102d591906108f0565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d2886040516103249190610921565b60405180910390a2505050505b92915050565b6000734e59b44847b379578588920ca78fbf26c0b4956c905090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561038d578082015181840152602081019050610372565b8381111561039c576000848401525b50505050565b6000601f19601f8301169050919050565b60006103be82610353565b6103c8818561035e565b93506103d881856020860161036f565b6103e1816103a2565b840191505092915050565b6000602082019050818103600083015261040681846103b3565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61043581610422565b811461044057600080fd5b50565b6000813590506104528161042c565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61049a826103a2565b810181811067ffffffffffffffff821117156104b9576104b8610462565b5b80604052505050565b60006104cc61040e565b90506104d88282610491565b919050565b600067ffffffffffffffff8211156104f8576104f7610462565b5b610501826103a2565b9050602081019050919050565b82818337600083830152505050565b600061053061052b846104dd565b6104c2565b90508281526020810184848401111561054c5761054b61045d565b5b61055784828561050e565b509392505050565b600082601f83011261057457610573610458565b5b813561058484826020860161051d565b91505092915050565b600080604083850312156105a4576105a3610418565b5b60006105b285828601610443565b925050602083013567ffffffffffffffff8111156105d3576105d261041d565b5b6105df8582860161055f565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610614826105e9565b9050919050565b61062481610609565b82525050565b600060208201905061063f600083018461061b565b92915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6000819050919050565b61068c61068782610645565b610671565b82525050565b600061069d826105e9565b9050919050565b60008160601b9050919050565b60006106bc826106a4565b9050919050565b60006106ce826106b1565b9050919050565b6106e66106e182610692565b6106c3565b82525050565b6000819050919050565b61070761070282610422565b6106ec565b82525050565b6000610719828761067b565b60018201915061072982866106d5565b60148201915061073982856106f6565b60208201915061074982846106f6565b60208201915081905095945050505050565b600081519050919050565b600081905092915050565b600061077c8261075b565b6107868185610766565b935061079681856020860161036f565b80840191505092915050565b60006107ae82856106f6565b6020820191506107be8284610771565b91508190509392505050565b60006107d68284610771565b915081905092915050565b6000819050602082019050919050565b60007fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082169050919050565b600061082982516107f1565b80915050919050565b600082821b905092915050565b600061084a8261075b565b82610854846107e1565b905061085f8161081d565b9250601482101561089f5761089a7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083601403600802610832565b831692505b5050919050565b600082825260208201905092915050565b60006108c28261075b565b6108cc81856108a6565b93506108dc81856020860161036f565b6108e5816103a2565b840191505092915050565b6000602082019050818103600083015261090a81846108b7565b905092915050565b61091b81610422565b82525050565b60006020820190506109366000830184610912565b9291505056fea164736f6c634300080f000a0000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000005d8608060405234801561001057600080fd5b506105b8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063cdcb760a14610098578063e0145f5c146100d0575b600080fd5b6100826040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f91906103f7565b60405180910390f35b6100ab6100a6366004610440565b6100ea565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008f565b734e59b44847b379578588920ca78fbf26c0b4956c6100ab565b8051602080830191909120604080517fff00000000000000000000000000000000000000000000000000000000000000818501527f4e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000602182015260358101869052605580820184905282518083039091018152607590910190915280519201919091206000919073ffffffffffffffffffffffffffffffffffffffff81163b156101d85760405173ffffffffffffffffffffffffffffffffffffffff8216907ffbe57d889a7f75a4e0c7da304cd158fcaddc4b925cdd9f4cfb115c0f9e48009b90600090a291506103779050565b600080734e59b44847b379578588920ca78fbf26c0b4956c73ffffffffffffffffffffffffffffffffffffffff168787604051602001610219929190610519565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290526102519161053f565b6000604051808303816000865af19150503d806000811461028e576040519150601f19603f3d011682016040523d82523d6000602084013e610293565b606091505b5091509150806102a29061055b565b60601c94508115806102e057508273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561032257806040517fcb0fc6f700000000000000000000000000000000000000000000000000000000815260040161031991906103f7565b60405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff167f9b7318127ed899f286ea9ddd7925ed8ad24a682b6a825c3b5b3d88a3f00bc1d28860405161036a91815260200190565b60405180910390a2505050505b92915050565b60005b83811015610398578181015183820152602001610380565b838111156103a7576000848401525b50505050565b600081518084526103c581602086016020860161037d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061040a60208301846103ad565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806040838503121561045357600080fd5b82359150602083013567ffffffffffffffff8082111561047257600080fd5b818501915085601f83011261048657600080fd5b81358181111561049857610498610411565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156104de576104de610411565b816040528281528860208487010111156104f757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b8281526000825161053181602085016020870161037d565b919091016020019392505050565b6000825161055181846020870161037d565b9190910192915050565b6000815160208301517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000808216935060148310156105a35780818460140360031b1b83161693505b50505091905056fea164736f6c634300080f000a0000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 600000, "intent": "Deploy ConditionalDeployer Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003c2608060405234801561001057600080fd5b506103a2806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bec9d65146100515780631d8a4e921461006d57806354fd4d501461008b57806378ecabce146100a9575b600080fd5b61006b6004803603810190610066919061024d565b6100d9565b005b610075610178565b6040516100829190610289565b60405180910390f35b6100936101a1565b6040516100a0919061033d565b60405180910390f35b6100c360048036038101906100be919061024d565b6101da565b6040516100d0919061037a565b60405180910390f35b73deaddeaddeaddeaddeaddeaddeaddeaddead000173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610152576040517fee37fa8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b807fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc5550565b60007fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc54905090565b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60006101ed6101e7610178565b836101f4565b9050919050565b60008060001b821415801561020a575081828416145b905092915050565b600080fd5b6000819050919050565b61022a81610217565b811461023557600080fd5b50565b60008135905061024781610221565b92915050565b60006020828403121561026357610262610212565b5b600061027184828501610238565b91505092915050565b61028381610217565b82525050565b600060208201905061029e600083018461027a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156102de5780820151818401526020810190506102c3565b838111156102ed576000848401525b50505050565b6000601f19601f8301169050919050565b600061030f826102a4565b61031981856102af565b93506103298185602086016102c0565b610332816102f3565b840191505092915050565b600060208201905081810360008301526103578184610304565b905092915050565b60008115159050919050565b6103748161035f565b82525050565b600060208201905061038f600083018461036b565b9291505056fea164736f6c634300080f000a000000000000000000000000000000000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000283608060405234801561001057600080fd5b50610263806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bec9d65146100515780631d8a4e921461006657806354fd4d501461009b57806378ecabce146100e4575b600080fd5b61006461005f3660046101ca565b610107565b005b7fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc546040519081526020015b60405180910390f35b6100d76040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009291906101e3565b6100f76100f23660046101ca565b610178565b6040519015158152602001610092565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610154576040517fee37fa8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc55565b60006101ab6101a57fc8bc8f9195cfb2d040744aac63412d02ffc186ea9bd519039edc4666ee9032bc5490565b836101b1565b92915050565b600081158015906101c3575081828416145b9392505050565b6000602082840312156101dc57600080fd5b5035919050565b600060208083528351808285015260005b81811015610210578581018301518582016040015282016101f4565b81811115610222576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01692909201604001939250505056fea164736f6c634300080f000a0000000000000000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 300000, "intent": "Deploy L2DevFeatureFlags Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000ad56080604052348015600e575f80fd5b50610ab98061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c8063331b637f1461004357806354fd4d5014610073578063ab4d6f7514610091575b5f80fd5b61005d60048036038101906100589190610583565b6100ad565b60405161006a91906105d0565b60405180910390f35b61007b6102b0565b6040516100889190610649565b60405180910390f35b6100ab60048036038101906100a6919061068b565b6102e9565b005b5f67ffffffffffffffff8016836020015111156100f6576040517fd1f79e8200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b63ffffffff80168360400151111561013a576040517f94338eba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff801683606001511115610182576040517f596a19a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f835f01518360405160200161019992919061072e565b6040516020818303038152906040528051906020012090505f846020015190505f856060015190505f866040015190505f808484846040516020016101e1949392919061082e565b6040516020818303038152906040526101f9906108b4565b90505f858260405160200161020f92919061091a565b6040516020818303038152906040528051906020012090505f818a6080015160405160200161023f929190610965565b6040516020818303038152906040528051906020012090507f03000000000000000000000000000000000000000000000000000000000000005f1b7fff00000000000000000000000000000000000000000000000000000000000000195f1b82161797505050505050505092915050565b6040518060400160405280600581526020017f312e302e3200000000000000000000000000000000000000000000000000000081525081565b5f610304838036038101906102fe9190610990565b836100ad565b90505f61031082610388565b5090508061034a576040517fe3c0081600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b827f5c37832d2e8d10e346e55ad62071a6a2f9fa5130614ef2ec6617555c6f467ba78560405161037a9190610a93565b60405180910390a250505050565b5f805a835491505a6103e8818303111593505050915091565b5f604051905090565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6103f8826103b2565b810181811067ffffffffffffffff82111715610417576104166103c2565b5b80604052505050565b5f6104296103a1565b905061043582826103ef565b919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104638261043a565b9050919050565b61047381610459565b811461047d575f80fd5b50565b5f8135905061048e8161046a565b92915050565b5f819050919050565b6104a681610494565b81146104b0575f80fd5b50565b5f813590506104c18161049d565b92915050565b5f60a082840312156104dc576104db6103ae565b5b6104e660a0610420565b90505f6104f584828501610480565b5f830152506020610508848285016104b3565b602083015250604061051c848285016104b3565b6040830152506060610530848285016104b3565b6060830152506080610544848285016104b3565b60808301525092915050565b5f819050919050565b61056281610550565b811461056c575f80fd5b50565b5f8135905061057d81610559565b92915050565b5f8060c08385031215610599576105986103aa565b5b5f6105a6858286016104c7565b92505060a06105b78582860161056f565b9150509250929050565b6105ca81610550565b82525050565b5f6020820190506105e35f8301846105c1565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f61061b826105e9565b61062581856105f3565b9350610635818560208601610603565b61063e816103b2565b840191505092915050565b5f6020820190508181035f8301526106618184610611565b905092915050565b5f80fd5b5f60a0828403121561068257610681610669565b5b81905092915050565b5f8060c083850312156106a1576106a06103aa565b5b5f6106ae8582860161066d565b92505060a06106bf8582860161056f565b9150509250929050565b5f8160601b9050919050565b5f6106df826106c9565b9050919050565b5f6106f0826106d5565b9050919050565b61070861070382610459565b6106e6565b82525050565b5f819050919050565b61072861072382610550565b61070e565b82525050565b5f61073982856106f7565b6014820191506107498284610717565b6020820191508190509392505050565b5f6bffffffffffffffffffffffff82169050919050565b5f8160a01b9050919050565b5f61078682610770565b9050919050565b61079e61079982610759565b61077c565b82525050565b5f67ffffffffffffffff82169050919050565b5f8160c01b9050919050565b5f6107cd826107b7565b9050919050565b6107e56107e0826107a4565b6107c3565b82525050565b5f63ffffffff82169050919050565b5f8160e01b9050919050565b5f610810826107fa565b9050919050565b610828610823826107eb565b610806565b82525050565b5f610839828761078d565b600c8201915061084982866107d4565b60088201915061085982856107d4565b6008820191506108698284610817565b60048201915081905095945050505050565b5f81519050919050565b5f819050602082019050919050565b5f61089f8251610550565b80915050919050565b5f82821b905092915050565b5f6108be8261087b565b826108c884610885565b90506108d381610894565b925060208210156109135761090e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026108a8565b831692505b5050919050565b5f6109258285610717565b6020820191506109358284610717565b6020820191508190509392505050565b5f819050919050565b61095f61095a82610494565b610945565b82525050565b5f6109708285610717565b602082019150610980828461094e565b6020820191508190509392505050565b5f60a082840312156109a5576109a46103aa565b5b5f6109b2848285016104c7565b91505092915050565b5f6109c96020840184610480565b905092915050565b6109da81610459565b82525050565b5f6109ee60208401846104b3565b905092915050565b6109ff81610494565b82525050565b60a08201610a155f8301836109bb565b610a215f8501826109d1565b50610a2f60208301836109e0565b610a3c60208501826109f6565b50610a4a60408301836109e0565b610a5760408501826109f6565b50610a6560608301836109e0565b610a7260608501826109f6565b50610a8060808301836109e0565b610a8d60808501826109f6565b50505050565b5f60a082019050610aa65f830184610a05565b9291505056fea164736f6c6343000819000a0000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000069e6080604052348015600e575f80fd5b506106828061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c8063331b637f1461004357806354fd4d5014610069578063ab4d6f75146100b2575b5f80fd5b610056610051366004610512565b6100c7565b6040519081526020015b60405180910390f35b6100a56040518060400160405280600581526020017f312e302e3200000000000000000000000000000000000000000000000000000081525081565b604051610060919061053b565b6100c56100c036600461058e565b61039e565b005b5f67ffffffffffffffff801683602001511115610110576040517fd1f79e8200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604083015163ffffffff1015610152576040517f94338eba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606083015167ffffffffffffffff1015610198576040517f596a19a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82516040515f916101dd91859060200160609290921b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000168252601482015260340190565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00181528282528051602091820120878201516060890151898501515f9487018590527fffffffffffffffff00000000000000000000000000000000000000000000000060c084811b8216602c8a015283901b1660348801527fffffffff0000000000000000000000000000000000000000000000000000000060e082901b16603c88015292965090949093919291016040516020818303038152906040526102ac906105bc565b90505f85826040516020016102cb929190918252602082015260400190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152828252805160209182012060808d01519184018190529183015291505f90606001604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101207effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0300000000000000000000000000000000000000000000000000000000000000179a9950505050505050505050565b5f6103b76103b136859003850185610601565b836100c7565b90505f6103c38261043b565b509050806103fd576040517fe3c0081600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b827f5c37832d2e8d10e346e55ad62071a6a2f9fa5130614ef2ec6617555c6f467ba78560405161042d9190610622565b60405180910390a250505050565b5f805a835491505a6103e891031115939092509050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610475575f80fd5b919050565b5f60a0828403121561048a575f80fd5b60405160a0810181811067ffffffffffffffff821117156104d2577f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040529050806104e183610452565b8152602083013560208201526040830135604082015260608301356060820152608083013560808201525092915050565b5f8060c08385031215610523575f80fd5b61052d848461047a565b9460a0939093013593505050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b5f8082840360c08112156105a0575f80fd5b60a08112156105ad575f80fd5b50919360a08501359350915050565b805160208083015191908110156105fb577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8160200360031b1b821691505b50919050565b5f60a08284031215610611575f80fd5b61061b838361047a565b9392505050565b60a0810173ffffffffffffffffffffffffffffffffffffffff61064484610452565b168252602083013560208301526040830135604083015260608301356060830152608083013560808301529291505056fea164736f6c6343000819000a0000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 600000, "intent": "Deploy CrossL2Inbox Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000017756080604052348015600e575f80fd5b506117598061001c5f395ff3fe60806040526004361061008b575f3560e01c8063247944621461008f57806338ffde18146100b957806352617f3c146100e357806354fd4d501461010d5780636b0c3c5e146101375780637056f41f146101735780637936cbee146101af5780638d1d298f146101da578063b1b1b2091461020a578063bc294d7d14610246578063ecc7042814610282575b5f80fd5b34801561009a575f80fd5b506100a36102ac565b6040516100b09190610ceb565b60405180910390f35b3480156100c4575f80fd5b506100cd610312565b6040516100da9190610d43565b60405180910390f35b3480156100ee575f80fd5b506100f7610378565b6040516101049190610d78565b60405180910390f35b348015610118575f80fd5b5061012161037c565b60405161012e9190610e01565b60405180910390f35b348015610142575f80fd5b5061015d60048036038101906101589190610ee7565b6103b5565b60405161016a9190610f95565b60405180910390f35b34801561017e575f80fd5b5061019960048036038101906101949190610fae565b6104b1565b6040516101a69190610f95565b60405180910390f35b3480156101ba575f80fd5b506101c36106c3565b6040516101d192919061101f565b60405180910390f35b6101f460048036038101906101ef9190611068565b61074f565b6040516102019190611117565b60405180910390f35b348015610215575f80fd5b50610230600480360381019061022b9190611161565b610abb565b60405161023d91906111a6565b60405180910390f35b348015610251575f80fd5b5061026c600480360381019061026791906111bf565b610ad7565b6040516102799190610f95565b60405180910390f35b34801561028d575f80fd5b50610296610aec565b6040516102a39190610ceb565b60405180910390f35b5f6102b5610b27565b6102eb576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c905090565b5f61031b610b27565b610351576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c905090565b5f81565b6040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b5f610407874688888888888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050610b53565b90508060025f8881526020019081526020015f205414610453576040517f6eca2e4b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b858473ffffffffffffffffffffffffffffffffffffffff16887f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f32088878760405161049f93929190611224565b60405180910390a49695505050505050565b5f4685036104eb576040517f8ed9a95d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610564576040517f4faa250900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61056d610aec565b90506105c0864683338989898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050610b53565b91508160025f8381526020019081526020015f208190555060015f81819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1680929190610613906112aa565b91906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050808573ffffffffffffffffffffffffffffffffffffffff16877f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3203388886040516106b293929190611224565b60405180910390a450949350505050565b5f806106cd610b27565b610703576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c91507f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c90509091565b6060610759610b27565b15610790576040517f37ed32e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60017ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d73420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16845f0160208101906107f191906112ef565b73ffffffffffffffffffffffffffffffffffffffff161461083e576040517f7987c15700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002273ffffffffffffffffffffffffffffffffffffffff1663ab4d6f7585858560405161087f929190611348565b60405180910390206040518363ffffffff1660e01b81526004016108a4929190611438565b5f604051808303815f87803b1580156108bb575f80fd5b505af11580156108cd573d5f803e3d5ffd5b505050505f805f805f6108e08888610b91565b94509450945094509450468514610923576040517f31ac221100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f896080013590505f61093a878387878a88610b53565b90505f808281526020019081526020015f205f9054906101000a900460ff1615610990576040517f9ca9480b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60015f808381526020019081526020015f205f6101000a81548160ff0219169083151502179055506109c28285610c75565b5f8673ffffffffffffffffffffffffffffffffffffffff1634856040516109e9919061148f565b5f6040518083038185875af1925050503d805f8114610a23576040519150601f19603f3d011682016040523d82523d5f602084013e610a28565b606091505b50809a50819250505080610a3e57885189602001fd5b8186847fc270d73e26d2d39dee7ef92093555927e344e243415547ecc350b2b5385b68a28c80519060200120604051610a779190610f95565b60405180910390a4610a895f80610c75565b50505050505050505f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d9392505050565b5f602052805f5260405f205f915054906101000a900460ff1681565b6002602052805f5260405f205f915090505481565b5f610b2260015f9054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff165f610cbf565b905090565b5f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c5f811191505090565b5f868686868686604051602001610b6f969594939291906114a5565b6040516020818303038152906040528051906020012090509695505050505050565b5f805f8060605f87875f90602092610bab93929190611513565b810190610bb89190611161565b90507f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3205f1b8114610c15576040517fdf1eb58600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8787602090608092610c2993929190611513565b810190610c369190611588565b80965081975082985050505087876080908092610c5593929190611513565b810190610c6291906116f2565b8093508194505050509295509295909350565b817f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75d807fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35d5050565b5f80838360f01b1790508091505092915050565b5f819050919050565b610ce581610cd3565b82525050565b5f602082019050610cfe5f830184610cdc565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610d2d82610d04565b9050919050565b610d3d81610d23565b82525050565b5f602082019050610d565f830184610d34565b92915050565b5f61ffff82169050919050565b610d7281610d5c565b82525050565b5f602082019050610d8b5f830184610d69565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610dd382610d91565b610ddd8185610d9b565b9350610ded818560208601610dab565b610df681610db9565b840191505092915050565b5f6020820190508181035f830152610e198184610dc9565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b610e3b81610cd3565b8114610e45575f80fd5b50565b5f81359050610e5681610e32565b92915050565b610e6581610d23565b8114610e6f575f80fd5b50565b5f81359050610e8081610e5c565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112610ea757610ea6610e86565b5b8235905067ffffffffffffffff811115610ec457610ec3610e8a565b5b602083019150836001820283011115610ee057610edf610e8e565b5b9250929050565b5f805f805f8060a08789031215610f0157610f00610e2a565b5b5f610f0e89828a01610e48565b9650506020610f1f89828a01610e48565b9550506040610f3089828a01610e72565b9450506060610f4189828a01610e72565b935050608087013567ffffffffffffffff811115610f6257610f61610e2e565b5b610f6e89828a01610e92565b92509250509295509295509295565b5f819050919050565b610f8f81610f7d565b82525050565b5f602082019050610fa85f830184610f86565b92915050565b5f805f8060608587031215610fc657610fc5610e2a565b5b5f610fd387828801610e48565b9450506020610fe487828801610e72565b935050604085013567ffffffffffffffff81111561100557611004610e2e565b5b61101187828801610e92565b925092505092959194509250565b5f6040820190506110325f830185610d34565b61103f6020830184610cdc565b9392505050565b5f80fd5b5f60a0828403121561105f5761105e611046565b5b81905092915050565b5f805f60c0848603121561107f5761107e610e2a565b5b5f61108c8682870161104a565b93505060a084013567ffffffffffffffff8111156110ad576110ac610e2e565b5b6110b986828701610e92565b92509250509250925092565b5f81519050919050565b5f82825260208201905092915050565b5f6110e9826110c5565b6110f381856110cf565b9350611103818560208601610dab565b61110c81610db9565b840191505092915050565b5f6020820190508181035f83015261112f81846110df565b905092915050565b61114081610f7d565b811461114a575f80fd5b50565b5f8135905061115b81611137565b92915050565b5f6020828403121561117657611175610e2a565b5b5f6111838482850161114d565b91505092915050565b5f8115159050919050565b6111a08161118c565b82525050565b5f6020820190506111b95f830184611197565b92915050565b5f602082840312156111d4576111d3610e2a565b5b5f6111e184828501610e48565b91505092915050565b828183375f83830152505050565b5f61120383856110cf565b93506112108385846111ea565b61121983610db9565b840190509392505050565b5f6040820190506112375f830186610d34565b818103602083015261124a8184866111f8565b9050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6112b482611281565b91507dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036112e4576112e3611254565b5b600182019050919050565b5f6020828403121561130457611303610e2a565b5b5f61131184828501610e72565b91505092915050565b5f81905092915050565b5f61132f838561131a565b935061133c8385846111ea565b82840190509392505050565b5f611354828486611324565b91508190509392505050565b5f61136e6020840184610e72565b905092915050565b61137f81610d23565b82525050565b5f6113936020840184610e48565b905092915050565b6113a481610cd3565b82525050565b60a082016113ba5f830183611360565b6113c65f850182611376565b506113d46020830183611385565b6113e1602085018261139b565b506113ef6040830183611385565b6113fc604085018261139b565b5061140a6060830183611385565b611417606085018261139b565b506114256080830183611385565b611432608085018261139b565b50505050565b5f60c08201905061144b5f8301856113aa565b61145860a0830184610f86565b9392505050565b5f611469826110c5565b611473818561131a565b9350611483818560208601610dab565b80840191505092915050565b5f61149a828461145f565b915081905092915050565b5f60c0820190506114b85f830189610cdc565b6114c56020830188610cdc565b6114d26040830187610cdc565b6114df6060830186610d34565b6114ec6080830185610d34565b81810360a08301526114fe81846110df565b9050979650505050505050565b5f80fd5b5f80fd5b5f80858511156115265761152561150b565b5b838611156115375761153661150f565b5b6001850283019150848603905094509492505050565b5f61155782610d04565b9050919050565b6115678161154d565b8114611571575f80fd5b50565b5f813590506115828161155e565b92915050565b5f805f6060848603121561159f5761159e610e2a565b5b5f6115ac86828701610e48565b93505060206115bd86828701611574565b92505060406115ce86828701610e48565b9150509250925092565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61161282610db9565b810181811067ffffffffffffffff82111715611631576116306115dc565b5b80604052505050565b5f611643610e21565b905061164f8282611609565b919050565b5f67ffffffffffffffff82111561166e5761166d6115dc565b5b61167782610db9565b9050602081019050919050565b5f61169661169184611654565b61163a565b9050828152602081018484840111156116b2576116b16115d8565b5b6116bd8482856111ea565b509392505050565b5f82601f8301126116d9576116d8610e86565b5b81356116e9848260208601611684565b91505092915050565b5f806040838503121561170857611707610e2a565b5b5f61171585828601611574565b925050602083013567ffffffffffffffff81111561173657611735610e2e565b5b611742858286016116c5565b915050925092905056fea164736f6c6343000819000a0000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000011836080604052348015600e575f80fd5b506111678061001c5f395ff3fe6080604052600436106100b8575f3560e01c80637056f41f11610071578063b1b1b2091161004c578063b1b1b20914610228578063bc294d7d14610266578063ecc7042814610291575f80fd5b80637056f41f146101b65780637936cbee146101d55780638d1d298f14610215575f80fd5b806352617f3c116100a157806352617f3c1461011c57806354fd4d50146101425780636b0c3c5e14610197575f80fd5b806324794462146100bc57806338ffde18146100e3575b5f80fd5b3480156100c7575f80fd5b506100d06102c5565b6040519081526020015b60405180910390f35b3480156100ee575f80fd5b506100f7610344565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100da565b348015610127575f80fd5b5061012f5f81565b60405161ffff90911681526020016100da565b34801561014d575f80fd5b5061018a6040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b6040516100da9190610c7e565b3480156101a2575f80fd5b506100d06101b1366004610d00565b6103c3565b3480156101c1575f80fd5b506100d06101d0366004610d77565b6104ae565b3480156101e0575f80fd5b506101e96106ba565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016100da565b61018a610223366004610dcf565b61075e565b348015610233575f80fd5b50610256610242366004610e25565b5f6020819052908152604090205460ff1681565b60405190151581526020016100da565b348015610271575f80fd5b506100d0610280366004610e25565b60026020525f908152604090205481565b34801561029c575f80fd5b506001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166100d0565b5f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c61031e576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c90565b5f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c61039d576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b507fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c90565b5f610407874688888888888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610ae192505050565b5f878152600260205260409020549091508114610450576040517f6eca2e4b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b858473ffffffffffffffffffffffffffffffffffffffff16887f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f32088878760405161049c93929190610e3c565b60405180910390a49695505050505050565b5f4685036104e8576040517f8ed9a95d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fffffffffffffffffffffffffbdffffffffffffffffffffffffffffffffffffdd73ffffffffffffffffffffffffffffffffffffffff851601610557576040517f4faa250900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6105816001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1690565b90506105c6864683338989898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610ae192505050565b5f828152600260205260408120829055600180549294507dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909216919061060a83610ea5565b91906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050808573ffffffffffffffffffffffffffffffffffffffff16877f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3203388886040516106a993929190610e3c565b60405180910390a450949350505050565b5f807ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c610714576040517fbca35af600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50507fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35c907f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75c90565b60607ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5c156107b9576040517f37ed32e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60017ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d7342000000000000000000000000000000000000236107ff6020860186610f06565b73ffffffffffffffffffffffffffffffffffffffff161461084c576040517f7987c15700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002273ffffffffffffffffffffffffffffffffffffffff1663ab4d6f7585858560405161088d929190610f21565b6040519081900381207fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1682526108cc9291600401610f30565b5f604051808303815f87803b1580156108e3575f80fd5b505af11580156108f5573d5f803e3d5ffd5b505050505f805f805f6109088888610b1f565b9450945094509450945046851461094b576040517f31ac221100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60808901355f61095f878387878a88610ae1565b5f8181526020819052604090205490915060ff16156109aa576040517f9ca9480b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81815260208190526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556109ea8285610be8565b5f8673ffffffffffffffffffffffffffffffffffffffff163485604051610a119190610f89565b5f6040518083038185875af1925050503d805f8114610a4b576040519150601f19603f3d011682016040523d82523d5f602084013e610a50565b606091505b509950905080610a6257885189602001fd5b8186847fc270d73e26d2d39dee7ef92093555927e344e243415547ecc350b2b5385b68a28c80519060200120604051610a9d91815260200190565b60405180910390a4610aaf5f80610be8565b50505050505050505f7ff13569814868ede994184d5a425471fb19e869768a33421cb701a2ba3d420c0a5d9392505050565b5f868686868686604051602001610afd96959493929190610f9f565b6040516020818303038152906040528051906020012090509695505050505050565b5f808080606081610b33602082898b610ff5565b810190610b409190610e25565b90507f382409ac69001e11931a28435afef442cbfd20d9891907e8fa373ba7d351f3208114610b9b576040517fdf1eb58600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ba960806020898b610ff5565b810190610bb6919061101c565b91975095509350610bca876080818b610ff5565b810190610bd7919061107e565b969995985093965092949392505050565b817f711dfa3259c842fffc17d6e1f1e0fc5927756133a2345ca56b4cb8178589fee75d807fb83444d07072b122e2e72a669ce32857d892345c19856f4e7142d06a167ab3f35d5050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f610c906020830184610c32565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610cb8575f80fd5b50565b5f8083601f840112610ccb575f80fd5b50813567ffffffffffffffff811115610ce2575f80fd5b602083019150836020828501011115610cf9575f80fd5b9250929050565b5f805f805f8060a08789031215610d15575f80fd5b86359550602087013594506040870135610d2e81610c97565b93506060870135610d3e81610c97565b9250608087013567ffffffffffffffff811115610d59575f80fd5b610d6589828a01610cbb565b979a9699509497509295939492505050565b5f805f8060608587031215610d8a575f80fd5b843593506020850135610d9c81610c97565b9250604085013567ffffffffffffffff811115610db7575f80fd5b610dc387828801610cbb565b95989497509550505050565b5f805f83850360c0811215610de2575f80fd5b60a0811215610def575f80fd5b5083925060a084013567ffffffffffffffff811115610e0c575f80fd5b610e1886828701610cbb565b9497909650939450505050565b5f60208284031215610e35575f80fd5b5035919050565b73ffffffffffffffffffffffffffffffffffffffff8416815260406020820152816040820152818360608301375f818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b5f7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808316818103610efc577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6001019392505050565b5f60208284031215610f16575f80fd5b8135610c9081610c97565b818382375f9101908152919050565b60c081018335610f3f81610c97565b73ffffffffffffffffffffffffffffffffffffffff1682526020848101359083015260408085013590830152606080850135908301526080938401359382019390935260a0015290565b5f82518060208501845e5f920191825250919050565b8681528560208201528460408201525f73ffffffffffffffffffffffffffffffffffffffff808616606084015280851660808401525060c060a0830152610fe960c0830184610c32565b98975050505050505050565b5f8085851115611003575f80fd5b8386111561100f575f80fd5b5050820193919092039150565b5f805f6060848603121561102e575f80fd5b83359250602084013561104081610c97565b929592945050506040919091013590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f806040838503121561108f575f80fd5b823561109a81610c97565b9150602083013567ffffffffffffffff808211156110b6575f80fd5b818501915085601f8301126110c9575f80fd5b8135818111156110db576110db611051565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561112157611121611051565b81604052828152886020848701011115611139575f80fd5b826020860160208301375f602084830101528095505050505050925092905056fea164736f6c6343000819000a0000000000000000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1500000, "intent": "Deploy L2ToL2CrossDomainMessenger Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000b10608060405234801561001057600080fd5b50610af0806100206000396000f3fe6080604052600436106100345760003560e01c80634f0edcc91461003957806354fd4d501461006257806364a197f31461008d575b600080fd5b34801561004557600080fd5b50610060600480360381019061005b9190610677565b6100bd565b005b34801561006e57600080fd5b50610077610348565b6040516100849190610763565b60405180910390f35b6100a760048036038101906100a29190610785565b610381565b6040516100b491906107de565b60405180910390f35b73420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610136576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008073420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16637936cbee6040518163ffffffff1660e01b81526004016040805180830381865afa158015610197573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bb9190610823565b915091503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610224576040517fbc22e2aa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002573ffffffffffffffffffffffffffffffffffffffff1663a0712d68846040518263ffffffff1660e01b81526004016102719190610872565b600060405180830381600087803b15801561028b57600080fd5b505af115801561029f573d6000803e3d6000fd5b5050505082846040516102b1906105d2565b6102bb91906108ae565b6040518091039082f09050801580156102d8573d6000803e3d6000fd5b50508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fe5479bb8ebad3b9ac81f55f424a6289cf0a54ff2641708f41dcb2b26f264d35985846040516103399291906108c9565b60405180910390a35050505050565b6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036103e8576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002573ffffffffffffffffffffffffffffffffffffffff166344df8e70346040518263ffffffff1660e01b81526004016000604051808303818588803b15801561044457600080fd5b505af1158015610458573d6000803e3d6000fd5b505050505073420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16637056f41f83303073ffffffffffffffffffffffffffffffffffffffff16634f0edcc93389346040516024016104c093929190610901565b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518463ffffffff1660e01b81526004016105209392919061098d565b6020604051808303816000875af115801561053f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056391906109f7565b90508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fed98a2ff78833375c368471a747cdf0633024dde3f870feb08a934ac5be8340234856040516105c49291906108c9565b60405180910390a392915050565b60bf80610a2583390190565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061060e826105e3565b9050919050565b61061e81610603565b811461062957600080fd5b50565b60008135905061063b81610615565b92915050565b6000819050919050565b61065481610641565b811461065f57600080fd5b50565b6000813590506106718161064b565b92915050565b6000806000606084860312156106905761068f6105de565b5b600061069e8682870161062c565b93505060206106af8682870161062c565b92505060406106c086828701610662565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b60005b838110156107045780820151818401526020810190506106e9565b83811115610713576000848401525b50505050565b6000601f19601f8301169050919050565b6000610735826106ca565b61073f81856106d5565b935061074f8185602086016106e6565b61075881610719565b840191505092915050565b6000602082019050818103600083015261077d818461072a565b905092915050565b6000806040838503121561079c5761079b6105de565b5b60006107aa8582860161062c565b92505060206107bb85828601610662565b9150509250929050565b6000819050919050565b6107d8816107c5565b82525050565b60006020820190506107f360008301846107cf565b92915050565b60008151905061080881610615565b92915050565b60008151905061081d8161064b565b92915050565b6000806040838503121561083a576108396105de565b5b6000610848858286016107f9565b92505060206108598582860161080e565b9150509250929050565b61086c81610641565b82525050565b60006020820190506108876000830184610863565b92915050565b6000610898826105e3565b9050919050565b6108a88161088d565b82525050565b60006020820190506108c3600083018461089f565b92915050565b60006040820190506108de6000830185610863565b6108eb6020830184610863565b9392505050565b6108fb81610603565b82525050565b600060608201905061091660008301866108f2565b61092360208301856108f2565b6109306040830184610863565b949350505050565b600081519050919050565b600082825260208201905092915050565b600061095f82610938565b6109698185610943565b93506109798185602086016106e6565b61098281610719565b840191505092915050565b60006060820190506109a26000830186610863565b6109af60208301856108f2565b81810360408301526109c18184610954565b9050949350505050565b6109d4816107c5565b81146109df57600080fd5b50565b6000815190506109f1816109cb565b92915050565b600060208284031215610a0d57610a0c6105de565b5b6000610a1b848285016109e2565b9150509291505056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a00000000000000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000007ab608060405234801561001057600080fd5b5061078b806100206000396000f3fe6080604052600436106100345760003560e01c80634f0edcc91461003957806354fd4d501461005b57806364a197f3146100ba575b600080fd5b34801561004557600080fd5b506100596100543660046105ae565b6100db565b005b34801561006757600080fd5b506100a46040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b6040516100b1919061065a565b60405180910390f35b6100cd6100c8366004610674565b610340565b6040519081526020016100b1565b3373420000000000000000000000000000000000002314610128576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008073420000000000000000000000000000000000002373ffffffffffffffffffffffffffffffffffffffff16637936cbee6040518163ffffffff1660e01b81526004016040805180830381865afa158015610189573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ad91906106a0565b909250905073ffffffffffffffffffffffffffffffffffffffff82163014610201576040517fbc22e2aa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fa0712d68000000000000000000000000000000000000000000000000000000008152600481018490527342000000000000000000000000000000000000259063a0712d6890602401600060405180830381600087803b15801561026757600080fd5b505af115801561027b573d6000803e3d6000fd5b50505050828460405161028d9061057d565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f09050801580156102c7573d6000803e3d6000fd5b50508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fe5479bb8ebad3b9ac81f55f424a6289cf0a54ff2641708f41dcb2b26f264d3598584604051610331929190918252602082015260400190565b60405180910390a35050505050565b600073ffffffffffffffffffffffffffffffffffffffff831661038f576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002573ffffffffffffffffffffffffffffffffffffffff166344df8e70346040518263ffffffff1660e01b81526004016000604051808303818588803b1580156103eb57600080fd5b505af11580156103ff573d6000803e3d6000fd5b50506040805133602482015273ffffffffffffffffffffffffffffffffffffffff881660448201523460648083019190915282518083039091018152608490910182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f4f0edcc90000000000000000000000000000000000000000000000000000000017905290517f7056f41f0000000000000000000000000000000000000000000000000000000081527342000000000000000000000000000000000000239450637056f41f93506104de9250869130916004016106ce565b6020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610521919061070c565b604080513481526020810185905291925073ffffffffffffffffffffffffffffffffffffffff85169133917fed98a2ff78833375c368471a747cdf0633024dde3f870feb08a934ac5be83402910160405180910390a392915050565b60598061072683390190565b73ffffffffffffffffffffffffffffffffffffffff811681146105ab57600080fd5b50565b6000806000606084860312156105c357600080fd5b83356105ce81610589565b925060208401356105de81610589565b929592945050506040919091013590565b6000815180845260005b81811015610615576020818501810151868301820152016105f9565b81811115610627576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061066d60208301846105ef565b9392505050565b6000806040838503121561068757600080fd5b823561069281610589565b946020939093013593505050565b600080604083850312156106b357600080fd5b82516106be81610589565b6020939093015192949293505050565b83815273ffffffffffffffffffffffffffffffffffffffff8316602082015260606040820152600061070360608301846105ef565b95945050505050565b60006020828403121561071e57600080fd5b505191905056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 700000, "intent": "Deploy SuperchainETHBridge Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000005da608060405234801561001057600080fd5b506105ba806100206000396000f3fe60806040526004361061003f5760003560e01c806344df8e701461004457806354fd4d501461004e578063a0712d6814610079578063b60d4288146100a2575b600080fd5b61004c6100ac565b005b34801561005a57600080fd5b50610063610175565b60405161007091906103de565b60405180910390f35b34801561008557600080fd5b506100a0600480360381019061009b919061043b565b6101ae565b005b6100aa6102af565b005b73420000000000000000000000000000000000002473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610125576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b823460405161016b9190610477565b60405180910390a2565b6040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b73420000000000000000000000000000000000002473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610227576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b803360405161023590610339565b61023f91906104d3565b6040518091039082f090508015801561025c573d6000803e3d6000fd5b50503373ffffffffffffffffffffffffffffffffffffffff167f85719716ac5bd2744ae7ed3d16702129383049b97123b506320e7a5826ebbbba826040516102a49190610477565b60405180910390a250565b600034036102e9576040517f2c5211c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167fbb9e497a5b82d1a37f9496dd70c6efb97ba0d98c66c3422d05010105d06335983460405161032f9190610477565b60405180910390a2565b60bf806104ef83390190565b600081519050919050565b600082825260208201905092915050565b60005b8381101561037f578082015181840152602081019050610364565b8381111561038e576000848401525b50505050565b6000601f19601f8301169050919050565b60006103b082610345565b6103ba8185610350565b93506103ca818560208601610361565b6103d381610394565b840191505092915050565b600060208201905081810360008301526103f881846103a5565b905092915050565b600080fd5b6000819050919050565b61041881610405565b811461042357600080fd5b50565b6000813590506104358161040f565b92915050565b60006020828403121561045157610450610400565b5b600061045f84828501610426565b91505092915050565b61047181610405565b82525050565b600060208201905061048c6000830184610468565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006104bd82610492565b9050919050565b6104cd816104b2565b82525050565b60006020820190506104e860008301846104c4565b9291505056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003b3608060405234801561001057600080fd5b50610393806100206000396000f3fe60806040526004361061003f5760003560e01c806344df8e701461004457806354fd4d501461004e578063a0712d68146100ad578063b60d4288146100cd575b600080fd5b61004c6100d5565b005b34801561005a57600080fd5b506100976040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b6040516100a491906102a1565b60405180910390f35b3480156100b957600080fd5b5061004c6100c8366004610314565b61015a565b61004c610229565b3373420000000000000000000000000000000000002414610122576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405134815233907f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b82906020015b60405180910390a2565b33734200000000000000000000000000000000000024146101a7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80336040516101b590610295565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f09050801580156101ef573d6000803e3d6000fd5b505060405181815233907f85719716ac5bd2744ae7ed3d16702129383049b97123b506320e7a5826ebbbba9060200160405180910390a250565b34600003610263576040517f2c5211c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405134815233907fbb9e497a5b82d1a37f9496dd70c6efb97ba0d98c66c3422d05010105d063359890602001610150565b60598061032e83390190565b600060208083528351808285015260005b818110156102ce578581018301518582016040015282016102b2565b818111156102e0576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b60006020828403121561032657600080fd5b503591905056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 400000, "intent": "Deploy ETHLiquidity Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000173c608060405234801561001057600080fd5b5061171c806100206000396000f3fe608060405234801561001057600080fd5b50600436106101545760003560e01c8063015d8eb914610159578063098999be1461017557806309bd5a601461017f57806316d3bc7f1461019d57806321326849146101bb5780633db6be2b146101d95780633e47158c146101e35780634397dfef14610201578063440a5e201461022057806346a4d7801461022a57806347af267b146102465780634d5d9a2a1461027657806354fd4d5014610294578063550fcdc9146102b25780635cf24969146102d057806364ca23ef146102ee57806368d5dca61461030c5780638381f58a1461032a5780638b239f73146103485780639e8c496614610366578063b80777ea14610384578063c5985918146103a2578063d8444715146103c0578063dad544e0146103de578063e591b282146103fc578063e81b2c6d1461041a578063f820614014610438578063fe3d571014610456575b600080fd5b610173600480360381019061016e9190610f30565b610474565b005b61017d610590565b005b6101876105a3565b6040516101949190610ff5565b60405180910390f35b6101a56105a9565b6040516101b2919061101f565b60405180910390f35b6101c36105c3565b6040516101d09190611055565b60405180910390f35b6101e161060b565b005b6101eb61062e565b6040516101f891906110ef565b60405180910390f35b610209610887565b604051610217929190611147565b60405180910390f35b6102286108c5565b005b610244600480360381019061023f9190611170565b610914565b005b610260600480360381019061025b9190611170565b610929565b60405161026d9190611055565b60405180910390f35b61027e610949565b60405161028b91906111bc565b60405180910390f35b61029c61095d565b6040516102a99190611270565b60405180910390f35b6102ba61098b565b6040516102c79190611270565b60405180910390f35b6102d8610a62565b6040516102e591906112a1565b60405180910390f35b6102f6610a68565b604051610303919061101f565b60405180910390f35b610314610a82565b60405161032191906111bc565b60405180910390f35b610332610a98565b60405161033f919061101f565b60405180910390f35b610350610ab0565b60405161035d91906112a1565b60405180910390f35b61036e610ab6565b60405161037b91906112a1565b60405180910390f35b61038c610abc565b604051610399919061101f565b60405180910390f35b6103aa610ad6565b6040516103b791906111bc565b60405180910390f35b6103c8610aec565b6040516103d59190611270565b60405180910390f35b6103e6610bc3565b6040516103f391906112bc565b60405180910390f35b610404610c40565b60405161041191906112bc565b60405180910390f35b610422610c5c565b60405161042f9190610ff5565b60405180910390f35b610440610c62565b60405161044d91906112a1565b60405180910390f35b61045e610c68565b60405161046b91906112f4565b60405180910390f35b61047c610c40565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e090611381565b60405180910390fd5b876000806101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555086600060086101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550856001819055508460028190555083600360006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508260048190555081600581905550806006819055505050505050505050565b6105986108c5565b60a43560a01c600855565b60025481565b600860009054906101000a900467ffffffffffffffff1681565b6000600960007f435553544f4d5f4741535f544f4b454e00000000000000000000000000000000815260200190815260200160002060009054906101000a900460ff16905090565b6106136108c5565b60a43560a01c60b03560f01c818160601b1780600855505050565b60008061065d7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b610c7c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461069c5780915050610884565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516106df91906113d0565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b61073930600060405160200161071e92919061142a565b60405160208183030381529060405280519060200120610c87565b14610770576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006107a430600160405160200161078992919061142a565b60405160208183030381529060405280519060200120610c7c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610852578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610825573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610849919061147f565b92505050610884565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b6000806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bc906114f8565b60405180910390fd5b60006108cf610c40565b9050803318156108e757633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b61091d33610c92565b61092681610d7b565b50565b60096020528060005260406000206000915054906101000a900460ff1681565b60088054906101000a900463ffffffff1681565b6060610967610e33565b604051602001610977919061157a565b604051602081830303815290604052905090565b60606109956105c3565b6109d4576040518060400160405280600381526020017f4554480000000000000000000000000000000000000000000000000000000000815250610a5d565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015610a33573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610a5c91906116c6565b5b905090565b60015481565b600360009054906101000a900467ffffffffffffffff1681565b600360089054906101000a900463ffffffff1681565b60008054906101000a900467ffffffffffffffff1681565b60055481565b60065481565b600060089054906101000a900467ffffffffffffffff1681565b6003600c9054906101000a900463ffffffff1681565b6060610af66105c3565b610b35576040518060400160405280600581526020017f4574686572000000000000000000000000000000000000000000000000000000815250610bbe565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015610b94573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bbd91906116c6565b5b905090565b6000610bcd61062e565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3b919061147f565b905090565b600073deaddeaddeaddeaddeaddeaddeaddeaddead0001905090565b60045481565b60075481565b6008600c9054906101000a900461ffff1681565b600081549050919050565b600081549050919050565b610c9a610c40565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610d055750610cd6610bc3565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b80610d425750610d1361062e565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610d78576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b6009600082815260200190815260200160002060009054906101000a900460ff1615610dd3576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60016009600083815260200190815260200160002060006101000a81548160ff02191690831515021790555060011515817fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c60405160405180910390a350565b60606040518060400160405280600581526020017f312e392e30000000000000000000000000000000000000000000000000000000815250905090565b6000604051905090565b600080fd5b600080fd5b600067ffffffffffffffff82169050919050565b610ea181610e84565b8114610eac57600080fd5b50565b600081359050610ebe81610e98565b92915050565b6000819050919050565b610ed781610ec4565b8114610ee257600080fd5b50565b600081359050610ef481610ece565b92915050565b6000819050919050565b610f0d81610efa565b8114610f1857600080fd5b50565b600081359050610f2a81610f04565b92915050565b600080600080600080600080610100898b031215610f5157610f50610e7a565b5b6000610f5f8b828c01610eaf565b9850506020610f708b828c01610eaf565b9750506040610f818b828c01610ee5565b9650506060610f928b828c01610f1b565b9550506080610fa38b828c01610eaf565b94505060a0610fb48b828c01610f1b565b93505060c0610fc58b828c01610ee5565b92505060e0610fd68b828c01610ee5565b9150509295985092959890939650565b610fef81610efa565b82525050565b600060208201905061100a6000830184610fe6565b92915050565b61101981610e84565b82525050565b60006020820190506110346000830184611010565b92915050565b60008115159050919050565b61104f8161103a565b82525050565b600060208201905061106a6000830184611046565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006110b56110b06110ab84611070565b611090565b611070565b9050919050565b60006110c78261109a565b9050919050565b60006110d9826110bc565b9050919050565b6110e9816110ce565b82525050565b600060208201905061110460008301846110e0565b92915050565b600061111582611070565b9050919050565b6111258161110a565b82525050565b600060ff82169050919050565b6111418161112b565b82525050565b600060408201905061115c600083018561111c565b6111696020830184611138565b9392505050565b60006020828403121561118657611185610e7a565b5b600061119484828501610f1b565b91505092915050565b600063ffffffff82169050919050565b6111b68161119d565b82525050565b60006020820190506111d160008301846111ad565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156112115780820151818401526020810190506111f6565b83811115611220576000848401525b50505050565b6000601f19601f8301169050919050565b6000611242826111d7565b61124c81856111e2565b935061125c8185602086016111f3565b61126581611226565b840191505092915050565b6000602082019050818103600083015261128a8184611237565b905092915050565b61129b81610ec4565b82525050565b60006020820190506112b66000830184611292565b92915050565b60006020820190506112d1600083018461111c565b92915050565b600061ffff82169050919050565b6112ee816112d7565b82525050565b600060208201905061130960008301846112e5565b92915050565b7f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60008201527f756e742063616e20736574204c3120626c6f636b2076616c7565730000000000602082015250565b600061136b603b836111e2565b91506113768261130f565b604082019050919050565b6000602082019050818103600083015261139a8161135e565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006113db82610ec4565b91506113e683610ec4565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561141f5761141e6113a1565b5b828202905092915050565b600060408201905061143f600083018561111c565b61144c6020830184611292565b9392505050565b61145c8161110a565b811461146757600080fd5b50565b60008151905061147981611453565b92915050565b60006020828403121561149557611494610e7a565b5b60006114a38482850161146a565b91505092915050565b7f4c31426c6f636b4347543a206465707265636174656400000000000000000000600082015250565b60006114e26016836111e2565b91506114ed826114ac565b602082019050919050565b60006020820190508181036000830152611511816114d5565b9050919050565b600081905092915050565b600061152e826111d7565b6115388185611518565b93506115488185602086016111f3565b80840191505092915050565b7f2b637573746f6d2d6761732d746f6b656e2e3100000000000000000000000000815250565b60006115868284611523565b915061159182611554565b60138201915081905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6115e282611226565b810181811067ffffffffffffffff82111715611601576116006115aa565b5b80604052505050565b6000611614610e70565b905061162082826115d9565b919050565b600067ffffffffffffffff8211156116405761163f6115aa565b5b61164982611226565b9050602081019050919050565b600061166961166484611625565b61160a565b905082815260208101848484011115611685576116846115a5565b5b6116908482856111f3565b509392505050565b600082601f8301126116ad576116ac6115a0565b5b81516116bd848260208601611656565b91505092915050565b6000602082840312156116dc576116db610e7a565b5b600082015167ffffffffffffffff8111156116fa576116f9610e7f565b5b61170684828501611698565b9150509291505056fea164736f6c634300080f000a00000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000010b1608060405234801561001057600080fd5b50611091806100206000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80635cf24969116100f9578063c598591811610097578063e591b28211610071578063e591b28214610434578063e81b2c6d1461044e578063f820614014610457578063fe3d57101461046057600080fd5b8063c598591814610404578063d844471514610424578063dad544e01461042c57600080fd5b80638381f58a116100d35780638381f58a146103be5780638b239f73146103d25780639e8c4966146103db578063b80777ea146103e457600080fd5b80635cf249691461038557806364ca23ef1461038e57806368d5dca6146103a257600080fd5b80634397dfef1161016657806347af267b1161014057806347af267b146103145780634d5d9a2a1461033757806354fd4d5014610368578063550fcdc91461037d57600080fd5b80634397dfef146102c3578063440a5e20146102f957806346a4d7801461030157600080fd5b806316d3bc7f116101a257806316d3bc7f14610202578063213268491461022f5780633db6be2b1461028e5780633e47158c1461029657600080fd5b8063015d8eb9146101c9578063098999be146101de57806309bd5a60146101e6575b600080fd5b6101dc6101d7366004610d9c565b610491565b005b6101dc6105d1565b6101ef60025481565b6040519081526020015b60405180910390f35b6008546102169067ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016101f9565b7f435553544f4d5f4741535f544f4b454e0000000000000000000000000000000060005260096020527f4ad9936a67aeb1898ef7b848aecdf71a1f8999fbf63ff2f5b5691cb14bedfe4d5460ff165b60405190151581526020016101f9565b6101dc6105e4565b61029e61060e565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101f9565b6102cb610819565b6040805173ffffffffffffffffffffffffffffffffffffffff909316835260ff9091166020830152016101f9565b6101dc610880565b6101dc61030f366004610e0e565b6108d7565b61027e610322366004610e0e565b60096020526000908152604090205460ff1681565b6008546103539068010000000000000000900463ffffffff1681565b60405163ffffffff90911681526020016101f9565b6103706108ec565b6040516101f99190610e57565b61037061094c565b6101ef60015481565b6003546102169067ffffffffffffffff1681565b6003546103539068010000000000000000900463ffffffff1681565b6000546102169067ffffffffffffffff1681565b6101ef60055481565b6101ef60065481565b6000546102169068010000000000000000900467ffffffffffffffff1681565b600354610353906c01000000000000000000000000900463ffffffff1681565b610370610a88565b61029e610b79565b73deaddeaddeaddeaddeaddeaddeaddeaddead000161029e565b6101ef60045481565b6101ef60075481565b60085461047e906c01000000000000000000000000900461ffff1681565b60405161ffff90911681526020016101f9565b3373deaddeaddeaddeaddeaddeaddeaddeaddead000114610539576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f4c31426c6f636b3a206f6e6c7920746865206465706f7369746f72206163636f60448201527f756e742063616e20736574204c3120626c6f636b2076616c756573000000000060648201526084015b60405180910390fd5b6000805467ffffffffffffffff98891668010000000000000000027fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116998916999099179890981790975560019490945560029290925560038054919094167fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000009190911617909255600491909155600555600655565b6105d9610880565b60a43560a01c600855565b6105ec610880565b6dffff00000000000000000000000060b03560901c1660a43560a01c17600855565b6000806106397fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81161561065c57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000081525051600261069f9190610ea8565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000091909117906106fa906060015b604051602081830303815290604052805190602001205490565b14610731576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051306020820152600191810191909152600090610753906060016106e0565b905073ffffffffffffffffffffffffffffffffffffffff8116156107e7578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e09190610f0c565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4c31426c6f636b4347543a20646570726563617465640000000000000000000060448201526000908190606401610530565b73deaddeaddeaddeaddeaddeaddeaddeaddead00013381146108aa57633cc50b456000526004601cfd5b60043560801c60035560143560801c60005560243560015560443560075560643560025560843560045550565b6108e033610bf1565b6108e981610cce565b50565b606061092860408051808201909152600581527f312e392e30000000000000000000000000000000000000000000000000000000602082015290565b6040516020016109389190610f49565b604051602081830303815290604052905090565b60606109a27f435553544f4d5f4741535f544f4b454e0000000000000000000000000000000060005260096020527f4ad9936a67aeb1898ef7b848aecdf71a1f8999fbf63ff2f5b5691cb14bedfe4d5460ff1690565b6109de575060408051808201909152600381527f4554480000000000000000000000000000000000000000000000000000000000602082015290565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015610a3d573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610a839190810190610fb9565b905090565b6060610ade7f435553544f4d5f4741535f544f4b454e0000000000000000000000000000000060005260096020527f4ad9936a67aeb1898ef7b848aecdf71a1f8999fbf63ff2f5b5691cb14bedfe4d5460ff1690565b610b1a575060408051808201909152600581527f4574686572000000000000000000000000000000000000000000000000000000602082015290565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015610a3d573d6000803e3d6000fd5b6000610b8361060e565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a839190610f0c565b73ffffffffffffffffffffffffffffffffffffffff811673deaddeaddeaddeaddeaddeaddeaddeaddead00011480610c5b5750610c2c610b79565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b80610c985750610c6961060e565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6108e9576040517fbe9d7ca600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604090205460ff1615610d17576040517f4f45326000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526009602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091559051909183917fb876f6594132c89891d2fd198e925e999be741ec809abb58bfe9b966876cc06c9190a350565b803567ffffffffffffffff81168114610d9757600080fd5b919050565b600080600080600080600080610100898b031215610db957600080fd5b610dc289610d7f565b9750610dd060208a01610d7f565b96506040890135955060608901359450610dec60808a01610d7f565b979a969950949793969560a0850135955060c08501359460e001359350915050565b600060208284031215610e2057600080fd5b5035919050565b60005b83811015610e42578181015183820152602001610e2a565b83811115610e51576000848401525b50505050565b6020815260008251806020840152610e76816040850160208701610e27565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610f07577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b600060208284031215610f1e57600080fd5b815173ffffffffffffffffffffffffffffffffffffffff81168114610f4257600080fd5b9392505050565b60008251610f5b818460208701610e27565b7f2b637573746f6d2d6761732d746f6b656e2e3100000000000000000000000000920191825250601301919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060208284031215610fcb57600080fd5b815167ffffffffffffffff80821115610fe357600080fd5b818401915084601f830112610ff757600080fd5b81518181111561100957611009610f8a565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561104f5761104f610f8a565b8160405282815287602084870101111561106857600080fd5b611079836020830160208801610e27565b97965050505050505056fea164736f6c634300080f000a000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1100000, "intent": "Deploy L1BlockCGT Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000be0608060405234801561001057600080fd5b50610bc0806100206000396000f3fe6080604052600436106100595760003560e01c80633f827a5a1461008257806344df8e70146100ad57806354fd4d50146100c457806382e3702d146100ef578063c2b3e5ac1461012c578063ecc70428146101485761007d565b3661007d5761007b33620186a060405180602001604052806000815250610173565b005b600080fd5b34801561008e57600080fd5b50610097610249565b6040516100a491906105a8565b60405180910390f35b3480156100b957600080fd5b506100c261024e565b005b3480156100d057600080fd5b506100d961028c565b6040516100e6919061065c565b60405180910390f35b3480156100fb57600080fd5b50610116600480360381019061011191906106c8565b6102ba565b6040516101239190610710565b60405180910390f35b610146600480360381019061014191906108f4565b610173565b005b34801561015457600080fd5b5061015d6102da565b60405161016a9190610972565b60405180910390f35b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f691906109b9565b80156102025750600034115b15610239576040517fcdfaa11100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610244838383610318565b505050565b600181565b600047905061025c816104ac565b807f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f60405160405180910390a250565b60606102966104db565b6040516020016102a69190610a48565b604051602081830303815290604052905090565b60006020528060005260406000206000915054906101000a900460ff1681565b6000610313600160009054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001610518565b905090565b60006103826040518060c001604052806103306102da565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1681526020013481526020018581526020018481525061052d565b9050600160008083815260200190815260200160002060006101000a81548160ff0219169083151502179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff166103e56102da565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161041a9493929190610ad2565b60405180910390a46001600081819054906101000a90047dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1660010191906101000a8154817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505050565b806040516104b99061057f565b6040518091039082f09050801580156104d6573d6000803e3d6000fd5b505050565b60606040518060400160405280600581526020017f312e322e30000000000000000000000000000000000000000000000000000000815250905090565b600080838360f01b1790508091505092915050565b6000816000015182602001518360400151846060015185608001518660a0015160405160200161056296959493929190610b2d565b604051602081830303815290604052805190602001209050919050565b601e80610b9683390190565b600061ffff82169050919050565b6105a28161058b565b82525050565b60006020820190506105bd6000830184610599565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156105fd5780820151818401526020810190506105e2565b8381111561060c576000848401525b50505050565b6000601f19601f8301169050919050565b600061062e826105c3565b61063881856105ce565b93506106488185602086016105df565b61065181610612565b840191505092915050565b600060208201905081810360008301526106768184610623565b905092915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b6106a581610692565b81146106b057600080fd5b50565b6000813590506106c28161069c565b92915050565b6000602082840312156106de576106dd610688565b5b60006106ec848285016106b3565b91505092915050565b60008115159050919050565b61070a816106f5565b82525050565b60006020820190506107256000830184610701565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006107568261072b565b9050919050565b6107668161074b565b811461077157600080fd5b50565b6000813590506107838161075d565b92915050565b6000819050919050565b61079c81610789565b81146107a757600080fd5b50565b6000813590506107b981610793565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61080182610612565b810181811067ffffffffffffffff821117156108205761081f6107c9565b5b80604052505050565b600061083361067e565b905061083f82826107f8565b919050565b600067ffffffffffffffff82111561085f5761085e6107c9565b5b61086882610612565b9050602081019050919050565b82818337600083830152505050565b600061089761089284610844565b610829565b9050828152602081018484840111156108b3576108b26107c4565b5b6108be848285610875565b509392505050565b600082601f8301126108db576108da6107bf565b5b81356108eb848260208601610884565b91505092915050565b60008060006060848603121561090d5761090c610688565b5b600061091b86828701610774565b935050602061092c868287016107aa565b925050604084013567ffffffffffffffff81111561094d5761094c61068d565b5b610959868287016108c6565b9150509250925092565b61096c81610789565b82525050565b60006020820190506109876000830184610963565b92915050565b610996816106f5565b81146109a157600080fd5b50565b6000815190506109b38161098d565b92915050565b6000602082840312156109cf576109ce610688565b5b60006109dd848285016109a4565b91505092915050565b600081905092915050565b60006109fc826105c3565b610a0681856109e6565b9350610a168185602086016105df565b80840191505092915050565b7f2b637573746f6d2d6761732d746f6b656e000000000000000000000000000000815250565b6000610a5482846109f1565b9150610a5f82610a22565b60118201915081905092915050565b600081519050919050565b600082825260208201905092915050565b6000610a9582610a6e565b610a9f8185610a79565b9350610aaf8185602086016105df565b610ab881610612565b840191505092915050565b610acc81610692565b82525050565b6000608082019050610ae76000830187610963565b610af46020830186610963565b8181036040830152610b068185610a8a565b9050610b156060830184610ac3565b95945050505050565b610b278161074b565b82525050565b600060c082019050610b426000830189610963565b610b4f6020830188610b1e565b610b5c6040830187610b1e565b610b696060830186610963565b610b766080830185610963565b81810360a0830152610b888184610a8a565b905097965050505050505056fe60806040523073ffffffffffffffffffffffffffffffffffffffff16fffea164736f6c634300080f000a", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000862608060405234801561001057600080fd5b50610842806100206000396000f3fe6080604052600436106100695760003560e01c806382e3702d1161004357806382e3702d146100f6578063c2b3e5ac14610136578063ecc704281461014957600080fd5b80633f827a5a1461009257806344df8e70146100bf57806354fd4d50146100d457600080fd5b3661008d5761008b33620186a0604051806020016040528060008152506101ae565b005b600080fd5b34801561009e57600080fd5b506100a7600181565b60405161ffff90911681526020015b60405180910390f35b3480156100cb57600080fd5b5061008b610284565b3480156100e057600080fd5b506100e96102bc565b6040516100b691906105dd565b34801561010257600080fd5b506101266101113660046105f7565b60006020819052908152604090205460ff1681565b60405190151581526020016100b6565b61008b61014436600461063f565b6101ae565b34801561015557600080fd5b506101a06001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b6040519081526020016100b6565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa15801561020d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102319190610743565b801561023d5750600034115b15610274576040517fcdfaa11100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61027f83838361031c565b505050565b4761028e816104e0565b60405181907f7967de617a5ac1cc7eba2d6f37570a0135afa950d8bb77cdd35f0d0b4e85a16f90600090a250565b60606102f860408051808201909152600581527f312e322e30000000000000000000000000000000000000000000000000000000602082015290565b6040516020016103089190610765565b604051602081830303815290604052905090565b60006103b26040518060c001604052806103766001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b815233602082015273ffffffffffffffffffffffffffffffffffffffff871660408201523460608201526080810186905260a00184905261050a565b600081815260208190526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055905073ffffffffffffffffffffffffffffffffffffffff84163361044d6001547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e010000000000000000000000000000000000000000000000000000000000001790565b7f02a52367d10742d8032712c1bb8e0144ff1ec5ffda1ed7d70bb05a27449550543487878760405161048294939291906107a6565b60405180910390a45050600180547dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8082168301167fffff0000000000000000000000000000000000000000000000000000000000009091161790555050565b806040516104ed90610557565b6040518091039082f090508015801561027f573d6000803e3d6000fd5b80516020808301516040808501516060860151608087015160a0880151935160009761053a9790969591016107d6565b604051602081830303815290604052805190602001209050919050565b60088061082e83390190565b60005b8381101561057e578181015183820152602001610566565b8381111561058d576000848401525b50505050565b600081518084526105ab816020860160208601610563565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006105f06020830184610593565b9392505050565b60006020828403121561060957600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060006060848603121561065457600080fd5b833573ffffffffffffffffffffffffffffffffffffffff8116811461067857600080fd5b925060208401359150604084013567ffffffffffffffff8082111561069c57600080fd5b818601915086601f8301126106b057600080fd5b8135818111156106c2576106c2610610565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561070857610708610610565b8160405282815289602084870101111561072157600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b60006020828403121561075557600080fd5b815180151581146105f057600080fd5b60008251610777818460208701610563565b7f2b637573746f6d2d6761732d746f6b656e000000000000000000000000000000920191825250601101919050565b8481528360208201526080604082015260006107c56080830185610593565b905082606083015295945050505050565b868152600073ffffffffffffffffffffffffffffffffffffffff808816602084015280871660408401525084606083015283608083015260c060a083015261082160c0830184610593565b9897505050505050505056fe608060405230fffea164736f6c634300080f000a000000000000000000000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 750000, "intent": "Deploy L2ToL1MessagePasserCGT Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001ffe60806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d3565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000176565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff161015620000ed5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e49190620001b6565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015e602783620000ef565b91506200016b8262000100565b604082019050919050565b6000602082019050818103600083015262000191816200014f565b9050919050565b600060ff82169050919050565b620001b08162000198565b82525050565b6000602082019050620001cd6000830184620001a5565b92915050565b611e1b80620001e36000396000f3fe608060405260043610620000bc5760003560e01c80630c98483214620000c15780633e47158c14620000ef57806340c10f19146200011f57806344df8e70146200014d57806354fd4d501462000159578063550fcdc91462000189578063715018a614620001b95780638da5cb5b14620001d3578063906571471462000203578063c6f69fbb1462000231578063d8444715146200025f578063dad544e0146200028f578063f2fde38b14620002bf578063f46eccc414620002ed575b600080fd5b348015620000ce57600080fd5b50620000ed6004803603810190620000e79190620011c8565b62000331565b005b348015620000fc57600080fd5b5062000107620003d9565b60405162000116919062001265565b60405180910390f35b3480156200012c57600080fd5b506200014b6004803603810190620001459190620012bd565b62000646565b005b62000157620007f4565b005b3480156200016657600080fd5b506200017162000941565b604051620001809190620013a8565b60405180910390f35b3480156200019657600080fd5b50620001a16200097a565b604051620001b09190620013a8565b60405180910390f35b348015620001c657600080fd5b50620001d162000a10565b005b348015620001e057600080fd5b50620001eb62000a28565b604051620001fa9190620013dd565b60405180910390f35b3480156200021057600080fd5b506200022f60048036038101906200022991906200154b565b62000a52565b005b3480156200023e57600080fd5b506200025d6004803603810190620002579190620011c8565b62000bda565b005b3480156200026c57600080fd5b506200027762000c79565b604051620002869190620013a8565b60405180910390f35b3480156200029c57600080fd5b50620002a762000d0f565b604051620002b69190620013dd565b60405180910390f35b348015620002cc57600080fd5b50620002eb6004803603810190620002e59190620011c8565b62000d91565b005b348015620002fa57600080fd5b50620003196004803603810190620003139190620011c8565b62000e1b565b60405162000328919062001602565b60405180910390f35b6200033b62000e3b565b6001606560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f83b05b6735acd4b85e3bded8e72c851d1a87718f81e3c8e6f0c9d9a2baa88e4660405160405180910390a250565b6000806200040a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610360001b62000ec0565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146200044b578091505062000643565b60026040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000815250516200049091906200164e565b7f4f564d5f4c3143726f7373446f6d61696e4d657373656e67657200000000000060001c1760001b620004ee306000604051602001620004d2929190620016c0565b6040516020818303038152906040528051906020012062000ecb565b1462000526576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006200055e30600160405160200162000542929190620016c0565b6040516020818303038152906040528051906020012062000ec0565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161462000611578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620005e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000607919062001704565b9250505062000643565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b90565b606560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16620006ca576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002973ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff1660e01b815260040162000719919062001736565b600060405180830381600087803b1580156200073457600080fd5b505af115801562000749573d6000803e3d6000fd5b5050505080826040516200075d9062001142565b62000769919062001778565b6040518091039082f090508015801562000787573d6000803e3d6000fd5b50508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fec89d80a36947288037745287dde87d62cd8c141d5323130b3d26d97d84004c783604051620007e8919062001736565b60405180910390a35050565b606560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1662000878576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002973ffffffffffffffffffffffffffffffffffffffff1663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b158015620008d557600080fd5b505af1158015620008ea573d6000803e3d6000fd5b50505050503373ffffffffffffffffffffffffffffffffffffffff167f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b823460405162000937919062001736565b60405180910390a2565b6040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b606780546200098990620017c4565b80601f0160208091040260200160405190810160405280929190818152602001828054620009b790620017c4565b801562000a085780601f10620009dc5761010080835404028352916020019162000a08565b820191906000526020600020905b815481529060010190602001808311620009ea57829003601f168201915b505050505081565b62000a1a62000e3b565b62000a26600062000ed6565b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060019054906101000a900460ff1615905080801562000a845750600160008054906101000a900460ff1660ff16105b8062000ab5575062000a963062000f9c565b15801562000ab45750600160008054906101000a900460ff1660ff16145b5b62000af7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000aee906200186f565b60405180910390fd5b60016000806101000a81548160ff021916908360ff160217905550801562000b35576001600060016101000a81548160ff0219169083151502179055505b62000b3f62000fbf565b62000b4962001074565b62000b548462000d91565b826066908162000b65919062001a59565b50816067908162000b77919062001a59565b50801562000bd45760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498600160405162000bcb919062001b90565b60405180910390a15b50505050565b62000be462000e3b565b606560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff167fdf6bf03dfab5b4ccec3ba95544b98d7ecc9d4b9293d8673e86cb6edb5ac0cb6260405160405180910390a250565b6066805462000c8890620017c4565b80601f016020809104026020016040519081016040528092919081815260200182805462000cb690620017c4565b801562000d075780601f1062000cdb5761010080835404028352916020019162000d07565b820191906000526020600020905b81548152906001019060200180831162000ce957829003601f168201915b505050505081565b600062000d1b620003d9565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000d66573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d8c919062001704565b905090565b62000d9b62000e3b565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000e0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000e049062001c23565b60405180910390fd5b62000e188162000ed6565b50565b60656020528060005260406000206000915054906101000a900460ff1681565b62000e45620010d2565b73ffffffffffffffffffffffffffffffffffffffff1662000e6562000a28565b73ffffffffffffffffffffffffffffffffffffffff161462000ebe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000eb59062001c95565b60405180910390fd5b565b600081549050919050565b600081549050919050565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b3373ffffffffffffffffffffffffffffffffffffffff1662000fe0620003d9565b73ffffffffffffffffffffffffffffffffffffffff16141580156200103a57503373ffffffffffffffffffffffffffffffffffffffff166200102162000d0f565b73ffffffffffffffffffffffffffffffffffffffff1614155b1562001072576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600060019054906101000a900460ff16620010c6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620010bd9062001d2d565b60405180910390fd5b620010d0620010da565b565b600033905090565b600060019054906101000a900460ff166200112c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620011239062001d2d565b60405180910390fd5b620011406200113a620010d2565b62000ed6565b565b60bf8062001d5083390190565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620011908262001163565b9050919050565b620011a28162001183565b8114620011ae57600080fd5b50565b600081359050620011c28162001197565b92915050565b600060208284031215620011e157620011e062001159565b5b6000620011f184828501620011b1565b91505092915050565b6000819050919050565b6000620012256200121f620012198462001163565b620011fa565b62001163565b9050919050565b6000620012398262001204565b9050919050565b60006200124d826200122c565b9050919050565b6200125f8162001240565b82525050565b60006020820190506200127c600083018462001254565b92915050565b6000819050919050565b620012978162001282565b8114620012a357600080fd5b50565b600081359050620012b7816200128c565b92915050565b60008060408385031215620012d757620012d662001159565b5b6000620012e785828601620011b1565b9250506020620012fa85828601620012a6565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b838110156200134057808201518184015260208101905062001323565b8381111562001350576000848401525b50505050565b6000601f19601f8301169050919050565b6000620013748262001304565b6200138081856200130f565b93506200139281856020860162001320565b6200139d8162001356565b840191505092915050565b60006020820190508181036000830152620013c4818462001367565b905092915050565b620013d78162001183565b82525050565b6000602082019050620013f46000830184620013cc565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200143e8262001356565b810181811067ffffffffffffffff8211171562001460576200145f62001404565b5b80604052505050565b6000620014756200114f565b905062001483828262001433565b919050565b600067ffffffffffffffff821115620014a657620014a562001404565b5b620014b18262001356565b9050602081019050919050565b82818337600083830152505050565b6000620014e4620014de8462001488565b62001469565b905082815260208101848484011115620015035762001502620013ff565b5b62001510848285620014be565b509392505050565b600082601f83011262001530576200152f620013fa565b5b813562001542848260208601620014cd565b91505092915050565b60008060006060848603121562001567576200156662001159565b5b60006200157786828701620011b1565b935050602084013567ffffffffffffffff8111156200159b576200159a6200115e565b5b620015a98682870162001518565b925050604084013567ffffffffffffffff811115620015cd57620015cc6200115e565b5b620015db8682870162001518565b9150509250925092565b60008115159050919050565b620015fc81620015e5565b82525050565b6000602082019050620016196000830184620015f1565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200165b8262001282565b9150620016688362001282565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620016a457620016a36200161f565b5b828202905092915050565b620016ba8162001282565b82525050565b6000604082019050620016d76000830185620013cc565b620016e66020830184620016af565b9392505050565b600081519050620016fe8162001197565b92915050565b6000602082840312156200171d576200171c62001159565b5b60006200172d84828501620016ed565b91505092915050565b60006020820190506200174d6000830184620016af565b92915050565b6000620017608262001163565b9050919050565b620017728162001753565b82525050565b60006020820190506200178f600083018462001767565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620017dd57607f821691505b602082108103620017f357620017f262001795565b5b50919050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b600062001857602e836200130f565b91506200186482620017f9565b604082019050919050565b600060208201905081810360008301526200188a8162001848565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620018f57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620018b6565b620019018683620018b6565b95508019841693508086168417925050509392505050565b60006200193a620019346200192e8462001282565b620011fa565b62001282565b9050919050565b6000819050919050565b620019568362001919565b6200196e620019658262001941565b848454620018c3565b825550505050565b600090565b6200198562001976565b620019928184846200194b565b505050565b5b81811015620019ba57620019ae6000826200197b565b60018101905062001998565b5050565b601f82111562001a0957620019d38162001891565b620019de84620018a6565b81016020851015620019ee578190505b62001a06620019fd85620018a6565b83018262001997565b50505b505050565b600082821c905092915050565b600062001a2e6000198460080262001a0e565b1980831691505092915050565b600062001a49838362001a1b565b9150826002028217905092915050565b62001a648262001304565b67ffffffffffffffff81111562001a805762001a7f62001404565b5b62001a8c8254620017c4565b62001a99828285620019be565b600060209050601f83116001811462001ad1576000841562001abc578287015190505b62001ac8858262001a3b565b86555062001b38565b601f19841662001ae18662001891565b60005b8281101562001b0b5784890151825560018201915060208501945060208101905062001ae4565b8683101562001b2b578489015162001b27601f89168262001a1b565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b600060ff82169050919050565b600062001b7862001b7262001b6c8462001b40565b620011fa565b62001b4a565b9050919050565b62001b8a8162001b57565b82525050565b600060208201905062001ba7600083018462001b7f565b92915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600062001c0b6026836200130f565b915062001c188262001bad565b604082019050919050565b6000602082019050818103600083015262001c3e8162001bfc565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062001c7d6020836200130f565b915062001c8a8262001c45565b602082019050919050565b6000602082019050818103600083015262001cb08162001c6e565b9050919050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b600062001d15602b836200130f565b915062001d228262001cb7565b604082019050919050565b6000602082019050818103600083015262001d488162001d06565b905091905056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a0000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000146a608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61137d806100ed6000396000f3fe6080604052600436106100dd5760003560e01c80638da5cb5b1161007f578063d844471511610059578063d844471514610256578063dad544e01461026b578063f2fde38b14610280578063f46eccc4146102a057600080fd5b80638da5cb5b146101eb5780639065714714610216578063c6f69fbb1461023657600080fd5b806344df8e70116100bb57806344df8e701461016357806354fd4d501461016b578063550fcdc9146101c1578063715018a6146101d657600080fd5b80630c984832146100e25780633e47158c1461010457806340c10f1914610143575b600080fd5b3480156100ee57600080fd5b506101026100fd366004610ec7565b6102e0565b005b34801561011057600080fd5b5061011961035f565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014f57600080fd5b5061010261015e366004610eeb565b61056a565b6101026106cc565b34801561017757600080fd5b506101b46040518060400160405280600581526020017f312e302e3100000000000000000000000000000000000000000000000000000081525081565b60405161013a9190610f17565b3480156101cd57600080fd5b506101b46107c2565b3480156101e257600080fd5b50610102610850565b3480156101f757600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610119565b34801561022257600080fd5b50610102610231366004611064565b610864565b34801561024257600080fd5b50610102610251366004610ec7565b610a29565b34801561026257600080fd5b506101b4610aa5565b34801561027757600080fd5b50610119610ab2565b34801561028c57600080fd5b5061010261029b366004610ec7565b610b2f565b3480156102ac57600080fd5b506102d06102bb366004610ec7565b60656020526000908152604090205460ff1681565b604051901515815260200161013a565b6102e8610be6565b73ffffffffffffffffffffffffffffffffffffffff811660008181526065602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055517f83b05b6735acd4b85e3bded8e72c851d1a87718f81e3c8e6f0c9d9a2baa88e469190a250565b60008061038a7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116156103ad57919050565b6040518060400160405280601a81526020017f4f564d5f4c3143726f7373446f6d61696e4d657373656e6765720000000000008152505160026103f091906110da565b604080513060208201526000918101919091527f4f564d5f4c3143726f7373446f6d61696e4d657373656e676572000000000000919091179061044b906060015b604051602081830303815290604052805190602001205490565b14610482576040517f54e433cd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080513060208201526001918101919091526000906104a490606001610431565b905073ffffffffffffffffffffffffffffffffffffffff811615610538578073ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610531919061113e565b9250505090565b6040517f332144db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360009081526065602052604090205460ff166105b3576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f2e1a7d4d0000000000000000000000000000000000000000000000000000000081526004810182905273420000000000000000000000000000000000002990632e1a7d4d90602401600060405180830381600087803b15801561061957600080fd5b505af115801561062d573d6000803e3d6000fd5b50505050808260405161063f90610e99565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f0905080158015610679573d6000803e3d6000fd5b505060405181815273ffffffffffffffffffffffffffffffffffffffff83169033907fec89d80a36947288037745287dde87d62cd8c141d5323130b3d26d97d84004c79060200160405180910390a35050565b3360009081526065602052604090205460ff16610715576040517f5fbc4ede00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73420000000000000000000000000000000000002973ffffffffffffffffffffffffffffffffffffffff1663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b15801561077157600080fd5b505af1158015610785573d6000803e3d6000fd5b50506040513481523393507f875e07afd7ce17c6531b1a6b7b34829dcd8b7e6639448afbd6a8e29fa1422b829250602001905060405180910390a2565b606780546107cf9061115b565b80601f01602080910402602001604051908101604052809291908181526020018280546107fb9061115b565b80156108485780601f1061081d57610100808354040283529160200191610848565b820191906000526020600020905b81548152906001019060200180831161082b57829003601f168201915b505050505081565b610858610be6565b6108626000610c67565b565b600054610100900460ff16158080156108845750600054600160ff909116105b8061089e5750303b15801561089e575060005460ff166001145b61092f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561098d57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610995610cde565b61099d610d5f565b6109a684610b2f565b60666109b284826111fd565b5060676109bf83826111fd565b508015610a2357600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b610a31610be6565b73ffffffffffffffffffffffffffffffffffffffff811660008181526065602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055517fdf6bf03dfab5b4ccec3ba95544b98d7ecc9d4b9293d8673e86cb6edb5ac0cb629190a250565b606680546107cf9061115b565b6000610abc61035f565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2a919061113e565b905090565b610b37610be6565b73ffffffffffffffffffffffffffffffffffffffff8116610bda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610926565b610be381610c67565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610862576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610926565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b33610ce761035f565b73ffffffffffffffffffffffffffffffffffffffff1614158015610d28575033610d0f610ab2565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610862576040517fc4050a2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff16610df6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610926565b610862600054610100900460ff16610e90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610926565b61086233610c67565b60598061131883390190565b73ffffffffffffffffffffffffffffffffffffffff81168114610be357600080fd5b600060208284031215610ed957600080fd5b8135610ee481610ea5565b9392505050565b60008060408385031215610efe57600080fd5b8235610f0981610ea5565b946020939093013593505050565b600060208083528351808285015260005b81811015610f4457858101830151858201604001528201610f28565b81811115610f56576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610fca57600080fd5b813567ffffffffffffffff80821115610fe557610fe5610f8a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561102b5761102b610f8a565b8160405283815286602085880101111561104457600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121561107957600080fd5b833561108481610ea5565b9250602084013567ffffffffffffffff808211156110a157600080fd5b6110ad87838801610fb9565b935060408601359150808211156110c357600080fd5b506110d086828701610fb9565b9150509250925092565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611139577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500290565b60006020828403121561115057600080fd5b8151610ee481610ea5565b600181811c9082168061116f57607f821691505b6020821081036111a8577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f8211156111f857600081815260208120601f850160051c810160208610156111d55750805b601f850160051c820191505b818110156111f4578281556001016111e1565b5050505b505050565b815167ffffffffffffffff81111561121757611217610f8a565b61122b81611225845461115b565b846111ae565b602080601f83116001811461127e57600084156112485750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556111f4565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156112cb578886015182559484019460019091019084016112ac565b508582101561130757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b0190555056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 1400000, "intent": "Deploy LiquidityController Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000575608060405234801561001057600080fd5b50610555806100206000396000f3fe6080604052600436106100345760003560e01c80632e1a7d4d1461003957806354fd4d5014610062578063d0e30db01461008d575b600080fd5b34801561004557600080fd5b50610060600480360381019061005b919061031b565b610097565b005b34801561006e57600080fd5b506100776101d2565b60405161008491906103e1565b60405180910390f35b61009561020b565b005b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610110576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b4781111561014a576040517f7b7f21e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8033604051610158906102d4565b6101629190610444565b6040518091039082f090508015801561017f573d6000803e3d6000fd5b50503373ffffffffffffffffffffffffffffffffffffffff167fb1cce8684b4ffa8667b4577654e61ee3480d661ee9c27522ac80e211f6bd4d25826040516101c7919061046e565b60405180910390a250565b6040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b73420000000000000000000000000000000000002a73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610284576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167f7ff07ce9a287649537e4b012e45cf012d90228b12e2b56bb03515a6b5436fcdf346040516102ca919061046e565b60405180910390a2565b60bf8061048a83390190565b600080fd5b6000819050919050565b6102f8816102e5565b811461030357600080fd5b50565b600081359050610315816102ef565b92915050565b600060208284031215610331576103306102e0565b5b600061033f84828501610306565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610382578082015181840152602081019050610367565b83811115610391576000848401525b50505050565b6000601f19601f8301169050919050565b60006103b382610348565b6103bd8185610353565b93506103cd818560208601610364565b6103d681610397565b840191505092915050565b600060208201905081810360008301526103fb81846103a8565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061042e82610403565b9050919050565b61043e81610423565b82525050565b60006020820190506104596000830184610435565b92915050565b610468816102e5565b82525050565b6000602082019050610483600083018461045f565b9291505056fe608060405260405160bf38038060bf8339818101604052810190602191906096565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000606882603f565b9050919050565b607681605f565b8114608057600080fd5b50565b600081519050609081606f565b92915050565b60006020828403121560a95760a8603a565b5b600060b5848285016083565b9150509291505056fea164736f6c634300080f000a0000000000000000000000", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000036d608060405234801561001057600080fd5b5061034d806100206000396000f3fe6080604052600436106100345760003560e01c80632e1a7d4d1461003957806354fd4d501461005b578063d0e30db0146100ba575b600080fd5b34801561004557600080fd5b5061005961005436600461025b565b6100c2565b005b34801561006757600080fd5b506100a46040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516100b19190610274565b60405180910390f35b6100596101cb565b3373420000000000000000000000000000000000002a1461010f576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b47811115610149576040517f7b7f21e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80336040516101579061024f565b73ffffffffffffffffffffffffffffffffffffffff90911681526020016040518091039082f0905080158015610191573d6000803e3d6000fd5b505060405181815233907fb1cce8684b4ffa8667b4577654e61ee3480d661ee9c27522ac80e211f6bd4d259060200160405180910390a250565b3373420000000000000000000000000000000000002a14610218576040517f565369fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405134815233907f7ff07ce9a287649537e4b012e45cf012d90228b12e2b56bb03515a6b5436fcdf9060200160405180910390a2565b6059806102e883390190565b60006020828403121561026d57600080fd5b5035919050565b600060208083528351808285015260005b818110156102a157858101830151858201604001528201610285565b818111156102b3576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01692909201604001939250505056fe608060405260405160593803806059833981016040819052601e91602a565b806001600160a01b0316ff5b600060208284031215603b57600080fd5b81516001600160a01b0381168114605157600080fd5b939250505056fea164736f6c634300080f000a00000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 400000, "intent": "Deploy NativeAssetLiquidity Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0x3659cfe6000000000000000000000000d0172676a2ece2e5c30b70d2af2fc951661b5fa5", + "data": "0x3659cfe6000000000000000000000000893c2ceeb71d38514daf67728d3ff1b213fc4b5f", "from": "0x0000000000000000000000000000000000000000", "gasLimit": 50000, "intent": "Upgrade L2ProxyAdmin Implementation", "to": "0x4200000000000000000000000000000000000018" }, { - "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca4000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000056a06104006040523480156200001257600080fd5b506040516200534038038062005340833981810160405281019062000038919062000a3b565b3073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1681525050806000015173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050806020015173ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff1681525050806040015173ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050806060015173ffffffffffffffffffffffffffffffffffffffff166101008173ffffffffffffffffffffffffffffffffffffffff1681525050806080015173ffffffffffffffffffffffffffffffffffffffff166101208173ffffffffffffffffffffffffffffffffffffffff16815250508060a0015173ffffffffffffffffffffffffffffffffffffffff166101408173ffffffffffffffffffffffffffffffffffffffff16815250508060c0015173ffffffffffffffffffffffffffffffffffffffff166101608173ffffffffffffffffffffffffffffffffffffffff16815250508060e0015173ffffffffffffffffffffffffffffffffffffffff166101808173ffffffffffffffffffffffffffffffffffffffff168152505080610100015173ffffffffffffffffffffffffffffffffffffffff166101a08173ffffffffffffffffffffffffffffffffffffffff168152505080610120015173ffffffffffffffffffffffffffffffffffffffff166101c08173ffffffffffffffffffffffffffffffffffffffff168152505080610140015173ffffffffffffffffffffffffffffffffffffffff166101e08173ffffffffffffffffffffffffffffffffffffffff168152505080610160015173ffffffffffffffffffffffffffffffffffffffff166102008173ffffffffffffffffffffffffffffffffffffffff168152505080610180015173ffffffffffffffffffffffffffffffffffffffff166102208173ffffffffffffffffffffffffffffffffffffffff1681525050806101a0015173ffffffffffffffffffffffffffffffffffffffff166102408173ffffffffffffffffffffffffffffffffffffffff1681525050806101c0015173ffffffffffffffffffffffffffffffffffffffff166102608173ffffffffffffffffffffffffffffffffffffffff1681525050806101e0015173ffffffffffffffffffffffffffffffffffffffff166102808173ffffffffffffffffffffffffffffffffffffffff168152505080610200015173ffffffffffffffffffffffffffffffffffffffff166102a08173ffffffffffffffffffffffffffffffffffffffff168152505080610220015173ffffffffffffffffffffffffffffffffffffffff166102c08173ffffffffffffffffffffffffffffffffffffffff168152505080610240015173ffffffffffffffffffffffffffffffffffffffff166102e08173ffffffffffffffffffffffffffffffffffffffff168152505080610260015173ffffffffffffffffffffffffffffffffffffffff166103008173ffffffffffffffffffffffffffffffffffffffff168152505080610280015173ffffffffffffffffffffffffffffffffffffffff166103208173ffffffffffffffffffffffffffffffffffffffff1681525050806102a0015173ffffffffffffffffffffffffffffffffffffffff166103408173ffffffffffffffffffffffffffffffffffffffff1681525050806102c0015173ffffffffffffffffffffffffffffffffffffffff166103608173ffffffffffffffffffffffffffffffffffffffff1681525050806102e0015173ffffffffffffffffffffffffffffffffffffffff166103808173ffffffffffffffffffffffffffffffffffffffff168152505080610300015173ffffffffffffffffffffffffffffffffffffffff166103a08173ffffffffffffffffffffffffffffffffffffffff168152505080610320015173ffffffffffffffffffffffffffffffffffffffff166103c08173ffffffffffffffffffffffffffffffffffffffff168152505080610340015173ffffffffffffffffffffffffffffffffffffffff166103e08173ffffffffffffffffffffffffffffffffffffffff16815250505062000a6e565b6000604051905090565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620006e5826200069a565b810181811067ffffffffffffffff82111715620007075762000706620006ab565b5b80604052505050565b60006200071c62000686565b90506200072a8282620006da565b919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200075c826200072f565b9050919050565b6200076e816200074f565b81146200077a57600080fd5b50565b6000815190506200078e8162000763565b92915050565b60006103608284031215620007ae57620007ad62000695565b5b620007bb61036062000710565b90506000620007cd848285016200077d565b6000830152506020620007e3848285016200077d565b6020830152506040620007f9848285016200077d565b60408301525060606200080f848285016200077d565b606083015250608062000825848285016200077d565b60808301525060a06200083b848285016200077d565b60a08301525060c062000851848285016200077d565b60c08301525060e062000867848285016200077d565b60e0830152506101006200087e848285016200077d565b6101008301525061012062000896848285016200077d565b61012083015250610140620008ae848285016200077d565b61014083015250610160620008c6848285016200077d565b61016083015250610180620008de848285016200077d565b610180830152506101a0620008f6848285016200077d565b6101a0830152506101c06200090e848285016200077d565b6101c0830152506101e062000926848285016200077d565b6101e0830152506102006200093e848285016200077d565b6102008301525061022062000956848285016200077d565b610220830152506102406200096e848285016200077d565b6102408301525061026062000986848285016200077d565b610260830152506102806200099e848285016200077d565b610280830152506102a0620009b6848285016200077d565b6102a0830152506102c0620009ce848285016200077d565b6102c0830152506102e0620009e6848285016200077d565b6102e083015250610300620009fe848285016200077d565b6103008301525061032062000a16848285016200077d565b6103208301525061034062000a2e848285016200077d565b6103408301525092915050565b6000610360828403121562000a555762000a5462000690565b5b600062000a658482850162000794565b91505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516102a0516102c0516102e05161030051610320516103405161036051610380516103a0516103c0516103e05161468e62000cb2600039600081816109d10152611f49015260008181610978015261210701526000818161091f01526118a10152600081816108c6015261178801526000818161086d0152611862015260008181610814015261204c0152600081816107bb015261200e0152600081816107620152611fd00152600081816107090152611f920152600081816106b001526120c9015260008181610657015261208b0152600081816105fe0152611c4a0152600081816105a50152611b5301526000818161054c0152611a5c0152600081816104f30152611f0b01526000818161049a01526116af0152600081816104410152611ecc0152600081816103e80152611ea601526000818161038f0152611db20152600081816103370152611d8c0152600081816102df015261152901526000818161028701526115ec01526000818161022f01526119650152600081816101d7015261146601526000818161012701526113a301526000818161017f0152611d4401526000818160cf015281816113c4015281816114870152818161154a0152818161160d015281816116d0015281816117a9015281816118c20152818161198601528181611a7d01528181611b740152611c6b01526000610a2d015261468e6000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063615f64fe14610064578063d55ec69714610082575b600080fd5b61004e61008c565b60405161005b9190613979565b60405180910390f35b61006c6100c5565b6040516100799190613c0d565b60405180910390f35b61008a610a2b565b005b6040518060400160405280600581526020017f312e352e3000000000000000000000000000000000000000000000000000000081525081565b6100cd613378565b7f0000000000000000000000000000000000000000000000000000000000000000816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816040019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816060019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816080019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000000000000000000000000000000000000000000008160a0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000000000000000000000000000000000000000000008160c0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000000000000000000000000000000000000000000008160e0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610100019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610120019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610140019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610160019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610180019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816101a0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816101c0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816101e0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610200019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610220019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610240019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610260019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610280019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816102a0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816102c0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816102e0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610300019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610320019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081610340019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1603610ab0576040517fada337cf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610aba610ac8565b9050610ac581611389565b50565b610ad0613694565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b539190613c75565b8161016001901515908115158152505073420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166347af267b7f494e5445524f50000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b8152600401610bd09190613cbb565b602060405180830381865afa925050508015610c0a57506040513d601f19601f82011682018060405250810190610c079190613c75565b60015b610c2557600081610180019015159081151581525050610c38565b8082610180019015159081151581525050505b8061018001518015610c545750610c52600160001b61212e565b155b15610c8b576040517fa27dcc8800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604051806020016040528073420000000000000000000000000000000000000773ffffffffffffffffffffffffffffffffffffffff16639fce812c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cf5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d199190613d14565b73ffffffffffffffffffffffffffffffffffffffff168152508160000181905250604051806020016040528073420000000000000000000000000000000000001073ffffffffffffffffffffffffffffffffffffffff16637f46ddb26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610da4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc89190613d91565b73ffffffffffffffffffffffffffffffffffffffff168152508160200181905250604051806020016040528073420000000000000000000000000000000000001473ffffffffffffffffffffffffffffffffffffffff16637f46ddb26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e779190613dfc565b73ffffffffffffffffffffffffffffffffffffffff168152508160400181905250604051806020016040528073420000000000000000000000000000000000001273ffffffffffffffffffffffffffffffffffffffff1663ee9a31a26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f269190613e55565b73ffffffffffffffffffffffffffffffffffffffff168152508160600181905250604051806040016040528073420000000000000000000000000000000000001773ffffffffffffffffffffffffffffffffffffffff1663ee9a31a26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fb1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd59190613e55565b73ffffffffffffffffffffffffffffffffffffffff16815260200173420000000000000000000000000000000000001773ffffffffffffffffffffffffffffffffffffffff16637d1d0c5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561104f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110739190613eb8565b815250816080018190525061109b734200000000000000000000000000000000000011612295565b8160a001819052506110c0734200000000000000000000000000000000000019612295565b8160c001819052506110e573420000000000000000000000000000000000001a612295565b8160e0018190525061110a73420000000000000000000000000000000000001b612295565b816101000181905250806101600151156112c757600073420000000000000000000000000000000000002a905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561118d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b19190613e55565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015611217573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611240919061400b565b81526020018273ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015611290573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906112b9919061400b565b815250826101200181905250505b600073420000000000000000000000000000000000002b73ffffffffffffffffffffffffffffffffffffffff1663d61a398b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561134557506040513d601f19601f820116820180604052508101906113429190614092565b60015b6113525760009050611357565b809150505b60405180602001604052808273ffffffffffffffffffffffffffffffffffffffff168152508261014001819052505090565b61144c7342000000000000000000000000000000000000077f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460000151600001516040516024016113fc919061411e565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6014612446565b61150f7342000000000000000000000000000000000000107f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460200151600001516040516024016114bf919061416c565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6115d27342000000000000000000000000000000000000147f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460400151600001516040516024016115829190614196565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6116957342000000000000000000000000000000000000127f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000084606001516000015160405160240161164591906141c0565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6117637342000000000000000000000000000000000000177f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460800151600001518560800151602001516040516024016117129291906141ea565b60405160208183030381529060405263cd6dc68760e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050600160001b6000612446565b806101600151156118875761184873420000000000000000000000000000000000002a7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008461012001516000015185610120015160200151866101200151604001516040516024016117f893929190614213565b604051602081830303815290604052639065714760e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b6118867342000000000000000000000000000000000000297f0000000000000000000000000000000000000000000000000000000000000000612a95565b5b61194b73420000000000000000000000000000000000002b7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000846101400151600001516040516024016118fb9190614279565b60405160208183030381529060405263c4d66de860e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506000801b6000612446565b611a427342000000000000000000000000000000000000117f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460a00151600001518560a00151602001518660a00151604001516040516024016119d29392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611b397342000000000000000000000000000000000000197f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460c00151600001518560c00151602001518660c0015160400151604051602401611ac99392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611c3073420000000000000000000000000000000000001a7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008460e00151600001518560e00151602001518660e0015160400151604051602401611bc09392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611d2a73420000000000000000000000000000000000001b7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000846101000151600001518561010001516020015186610100015160400151604051602401611cba9392919061430b565b60405160208183030381529060405263b49dc74160e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b6000612446565b611d6873420000000000000000000000000000000000000f7f0000000000000000000000000000000000000000000000000000000000000000612a95565b611dd7734200000000000000000000000000000000000015826101600151611db0577f0000000000000000000000000000000000000000000000000000000000000000611dd2565b7f00000000000000000000000000000000000000000000000000000000000000005b612a95565b80610160015115611e825773420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff166346a4d7807f435553544f4d5f4741535f544f4b454e000000000000000000000000000000006040518263ffffffff1660e01b8152600401611e4f9190613cbb565b600060405180830381600087803b158015611e6957600080fd5b505af1158015611e7d573d6000803e3d6000fd5b505050505b611ef1734200000000000000000000000000000000000016826101600151611eca577f0000000000000000000000000000000000000000000000000000000000000000611eec565b7f00000000000000000000000000000000000000000000000000000000000000005b612a95565b611f2f7342000000000000000000000000000000000000187f0000000000000000000000000000000000000000000000000000000000000000612a95565b611f6d73420000000000000000000000000000000000002d7f0000000000000000000000000000000000000000000000000000000000000000612a95565b8061018001511561207157611fb67342000000000000000000000000000000000000227f0000000000000000000000000000000000000000000000000000000000000000612a95565b611ff47342000000000000000000000000000000000000237f0000000000000000000000000000000000000000000000000000000000000000612a95565b6120327342000000000000000000000000000000000000247f0000000000000000000000000000000000000000000000000000000000000000612a95565b6120707342000000000000000000000000000000000000257f0000000000000000000000000000000000000000000000000000000000000000612a95565b5b6120af7342000000000000000000000000000000000000207f0000000000000000000000000000000000000000000000000000000000000000612a95565b6120ed7342000000000000000000000000000000000000217f0000000000000000000000000000000000000000000000000000000000000000612a95565b61212b73420000000000000000000000000000000000002c7f0000000000000000000000000000000000000000000000000000000000000000612a95565b50565b60008073420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff1663204e1c7a73420000000000000000000000000000000000002d6040518263ffffffff1660e01b815260040161219291906141c0565b602060405180830381865afa1580156121af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121d39190613e55565b905060008173ffffffffffffffffffffffffffffffffffffffff163b036121fe576000915050612290565b73420000000000000000000000000000000000002d73ffffffffffffffffffffffffffffffffffffffff166378ecabce846040518263ffffffff1660e01b815260040161224b9190613cbb565b602060405180830381865afa158015612268573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061228c9190613c75565b9150505b919050565b61229d613742565b60008273ffffffffffffffffffffffffffffffffffffffff1663d0e12f906040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561230757506040513d601f19601f820116820180604052508101906123049190614367565b60015b6123145760009050612319565b809150505b600083905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16630d9019e16040518163ffffffff1660e01b8152600401602060405180830381865afa158015612374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123989190613e55565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d3e5792b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124229190613eb8565b815260200183600181111561243a57612439614294565b5b81525092505050919050565b61244f86612d37565b61249057856040517fc3fe4a6600000000000000000000000000000000000000000000000000000000815260040161248791906141c0565b60405180910390fd5b600073420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff1663204e1c7a886040518263ffffffff1660e01b81526004016124df91906141c0565b602060405180830381865afa1580156124fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125209190613e55565b905060008173ffffffffffffffffffffffffffffffffffffffff163b1415801561263657506126358773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612593573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906125bc919061400b565b8773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612607573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612630919061400b565b612d5b565b5b1561267857866040517ff8ce5d1600000000000000000000000000000000000000000000000000000000815260040161266f91906141c0565b60405180910390fd5b8673ffffffffffffffffffffffffffffffffffffffff16633659cfe6866040518263ffffffff1660e01b81526004016126b191906141c0565b600060405180830381600087803b1580156126cb57600080fd5b505af11580156126df573d6000803e3d6000fd5b5050505060007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b9050808414801561271e575060008360ff1614155b15612755576040517f10415a2900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8084146128c95760008873ffffffffffffffffffffffffffffffffffffffff1663a6ed563e866040518263ffffffff1660e01b81526004016127979190613cbb565b602060405180830381865afa1580156127b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d891906143c0565b9050600060ff60086001876127ed9190614429565b60ff166127fa9190614460565b8360001c901c1614612838576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600060088560ff1661284a9190614460565b60ff901b1990508973ffffffffffffffffffffffffffffffffffffffff16634e91db0887838560001c1660001b6040518363ffffffff1660e01b81526004016128949291906144ba565b600060405180830381600087803b1580156128ae57600080fd5b505af11580156128c2573d6000803e3d6000fd5b5050505050505b60008873ffffffffffffffffffffffffffffffffffffffff1663a6ed563e836040518263ffffffff1660e01b81526004016129049190613cbb565b602060405180830381865afa158015612921573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294591906143c0565b60001c9050600060ff604083901c161461298b576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff16634e91db088367ffffffffffffffff19841660001b6040518363ffffffff1660e01b81526004016129d49291906144ba565b600060405180830381600087803b1580156129ee57600080fd5b505af1158015612a02573d6000803e3d6000fd5b505050508873ffffffffffffffffffffffffffffffffffffffff16634f1ef28689886040518363ffffffff1660e01b8152600401612a41929190614538565b6000604051808303816000875af1158015612a60573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612a899190614609565b50505050505050505050565b612a9e82612d37565b612adf57816040517fc3fe4a66000000000000000000000000000000000000000000000000000000008152600401612ad691906141c0565b60405180910390fd5b600073420000000000000000000000000000000000001873ffffffffffffffffffffffffffffffffffffffff1663204e1c7a846040518263ffffffff1660e01b8152600401612b2e91906141c0565b602060405180830381865afa158015612b4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b6f9190613e55565b905060008173ffffffffffffffffffffffffffffffffffffffff163b14158015612c855750612c848373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612be2573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612c0b919061400b565b8373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612c56573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612c7f919061400b565b612d5b565b5b15612cc757826040517ff8ce5d16000000000000000000000000000000000000000000000000000000008152600401612cbe91906141c0565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff16633659cfe6836040518263ffffffff1660e01b8152600401612d0091906141c0565b600060405180830381600087803b158015612d1a57600080fd5b505af1158015612d2e573d6000803e3d6000fd5b50505050505050565b6000612d4282612d83565b8015612d545750612d5282612e03565b155b9050919050565b6000612d678383612e99565b158015612d7b5750612d798383612eef565b155b905092915050565b6000600b73420000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16901c73ffffffffffffffffffffffffffffffffffffffff16600b8373ffffffffffffffffffffffffffffffffffffffff16901c73ffffffffffffffffffffffffffffffffffffffff16149050919050565b600073420000000000000000000000000000000000004273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480612e92575073420000000000000000000000000000000000000673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b600080612ea584612f7c565b90506000612eb284612f7c565b905080600001518260000151148015612ed2575080602001518260200151145b8015612ee5575080604001518260400151145b9250505092915050565b600080612efb84612f7c565b90506000612f0884612f7c565b9050806000015182600001511080612f3a575080600001518260000151148015612f39575080602001518260200151105b5b80612f72575080600001518260000151148015612f5e575080602001518260200151145b8015612f71575080604001518260400151105b5b9250505092915050565b612f8461378b565b6000612fc5836040518060400160405280600181526020017f2e0000000000000000000000000000000000000000000000000000000000000081525061314d565b9050600381511015613003576040517f9eda858c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061305f8260028151811061301c5761301b614652565b5b60200260200101516040518060400160405280600181526020017f2d0000000000000000000000000000000000000000000000000000000000000081525061314d565b905060006130bd8260008151811061307a57613079614652565b5b60200260200101516040518060400160405280600181526020017f2b0000000000000000000000000000000000000000000000000000000000000081525061314d565b905060405180606001604052806130ee856000815181106130e1576130e0614652565b5b602002602001015161321a565b81526020016131178560018151811061310a57613109614652565b5b602002602001015161321a565b81526020016131408360008151811061313357613132614652565b5b602002602001015161321a565b8152509350505050919050565b6060600061315b848461328b565b9050601f1960208201600183510160051b81018651838201526001845101845260005b6001156131f8578251606084528181146131d95760405182820380825286601f8201165b6001156131be5780858d010151818401528781019050806131a2575b5060008160208401015286603f820116820160405281865250505b8751810191506020840193508284106131f257506131f8565b5061317e565b849550865161320f57602085019550600285510386525b505050505092915050565b60008151600a6000190460005b60011561327057600181019050603060ff82870151160382851185600a02828101965060098311818810831717158602955085841061326857505050613270565b505050613227565b50816132845763101827966000526004601cfd5b5050919050565b6060825182518181116133705760208501945060208401935060206040510192508460018284880103016000602084106132c55783872090505b601f841660200360031b87515b600115613351578951818118831c61333757831561330d5783878c201461330c5760018b019a50848b106133065750613351565b5061334c565b5b858b038952602089019850868b019a50861561333657848b106133305750613351565b5061334c565b5b60018b019a50848b1061334a5750613351565b505b6132d2565b87604051985060208901810360051c8952602081016040525050505050505b505092915050565b604051806103600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681525090565b604051806101a001604052806136a86137ac565b81526020016136b56137d5565b81526020016136c26137fe565b81526020016136cf613827565b81526020016136dc613850565b81526020016136e9613742565b81526020016136f6613742565b8152602001613703613742565b8152602001613710613742565b815260200161371d613880565b815260200161372a6138b7565b81526020016000151581526020016000151581525090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000600181111561378557613784614294565b5b81525090565b60405180606001604052806000815260200160008152602001600081525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081525090565b6040518060200160405280600073ffffffffffffffffffffffffffffffffffffffff1681525090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561391a5780820151818401526020810190506138ff565b83811115613929576000848401525b50505050565b6000601f19601f8301169050919050565b600061394b826138e0565b61395581856138eb565b93506139658185602086016138fc565b61396e8161392f565b840191505092915050565b600060208201905081810360008301526139938184613940565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006139c68261399b565b9050919050565b6139d6816139bb565b82525050565b610360820160008201516139f360008501826139cd565b506020820151613a0660208501826139cd565b506040820151613a1960408501826139cd565b506060820151613a2c60608501826139cd565b506080820151613a3f60808501826139cd565b5060a0820151613a5260a08501826139cd565b5060c0820151613a6560c08501826139cd565b5060e0820151613a7860e08501826139cd565b50610100820151613a8d6101008501826139cd565b50610120820151613aa26101208501826139cd565b50610140820151613ab76101408501826139cd565b50610160820151613acc6101608501826139cd565b50610180820151613ae16101808501826139cd565b506101a0820151613af66101a08501826139cd565b506101c0820151613b0b6101c08501826139cd565b506101e0820151613b206101e08501826139cd565b50610200820151613b356102008501826139cd565b50610220820151613b4a6102208501826139cd565b50610240820151613b5f6102408501826139cd565b50610260820151613b746102608501826139cd565b50610280820151613b896102808501826139cd565b506102a0820151613b9e6102a08501826139cd565b506102c0820151613bb36102c08501826139cd565b506102e0820151613bc86102e08501826139cd565b50610300820151613bdd6103008501826139cd565b50610320820151613bf26103208501826139cd565b50610340820151613c076103408501826139cd565b50505050565b600061036082019050613c2360008301846139dc565b92915050565b6000604051905090565b600080fd5b600080fd5b60008115159050919050565b613c5281613c3d565b8114613c5d57600080fd5b50565b600081519050613c6f81613c49565b92915050565b600060208284031215613c8b57613c8a613c33565b5b6000613c9984828501613c60565b91505092915050565b6000819050919050565b613cb581613ca2565b82525050565b6000602082019050613cd06000830184613cac565b92915050565b6000613ce1826139bb565b9050919050565b613cf181613cd6565b8114613cfc57600080fd5b50565b600081519050613d0e81613ce8565b92915050565b600060208284031215613d2a57613d29613c33565b5b6000613d3884828501613cff565b91505092915050565b6000613d4c8261399b565b9050919050565b6000613d5e82613d41565b9050919050565b613d6e81613d53565b8114613d7957600080fd5b50565b600081519050613d8b81613d65565b92915050565b600060208284031215613da757613da6613c33565b5b6000613db584828501613d7c565b91505092915050565b6000613dc9826139bb565b9050919050565b613dd981613dbe565b8114613de457600080fd5b50565b600081519050613df681613dd0565b92915050565b600060208284031215613e1257613e11613c33565b5b6000613e2084828501613de7565b91505092915050565b613e32816139bb565b8114613e3d57600080fd5b50565b600081519050613e4f81613e29565b92915050565b600060208284031215613e6b57613e6a613c33565b5b6000613e7984828501613e40565b91505092915050565b6000819050919050565b613e9581613e82565b8114613ea057600080fd5b50565b600081519050613eb281613e8c565b92915050565b600060208284031215613ece57613ecd613c33565b5b6000613edc84828501613ea3565b91505092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613f278261392f565b810181811067ffffffffffffffff82111715613f4657613f45613eef565b5b80604052505050565b6000613f59613c29565b9050613f658282613f1e565b919050565b600067ffffffffffffffff821115613f8557613f84613eef565b5b613f8e8261392f565b9050602081019050919050565b6000613fae613fa984613f6a565b613f4f565b905082815260208101848484011115613fca57613fc9613eea565b5b613fd58482856138fc565b509392505050565b600082601f830112613ff257613ff1613ee5565b5b8151614002848260208601613f9b565b91505092915050565b60006020828403121561402157614020613c33565b5b600082015167ffffffffffffffff81111561403f5761403e613c38565b5b61404b84828501613fdd565b91505092915050565b600061405f826139bb565b9050919050565b61406f81614054565b811461407a57600080fd5b50565b60008151905061408c81614066565b92915050565b6000602082840312156140a8576140a7613c33565b5b60006140b68482850161407d565b91505092915050565b6000819050919050565b60006140e46140df6140da8461399b565b6140bf565b61399b565b9050919050565b60006140f6826140c9565b9050919050565b6000614108826140eb565b9050919050565b614118816140fd565b82525050565b6000602082019050614133600083018461410f565b92915050565b6000614144826140c9565b9050919050565b600061415682614139565b9050919050565b6141668161414b565b82525050565b6000602082019050614181600083018461415d565b92915050565b61419081613d41565b82525050565b60006020820190506141ab6000830184614187565b92915050565b6141ba816139bb565b82525050565b60006020820190506141d560008301846141b1565b92915050565b6141e481613e82565b82525050565b60006040820190506141ff60008301856141b1565b61420c60208301846141db565b9392505050565b600060608201905061422860008301866141b1565b818103602083015261423a8185613940565b9050818103604083015261424e8184613940565b9050949350505050565b6000614263826140eb565b9050919050565b61427381614258565b82525050565b600060208201905061428e600083018461426a565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600281106142d4576142d3614294565b5b50565b60008190506142e5826142c3565b919050565b60006142f5826142d7565b9050919050565b614305816142ea565b82525050565b600060608201905061432060008301866141b1565b61432d60208301856141db565b61433a60408301846142fc565b949350505050565b6002811061434f57600080fd5b50565b60008151905061436181614342565b92915050565b60006020828403121561437d5761437c613c33565b5b600061438b84828501614352565b91505092915050565b61439d81613ca2565b81146143a857600080fd5b50565b6000815190506143ba81614394565b92915050565b6000602082840312156143d6576143d5613c33565b5b60006143e4848285016143ab565b91505092915050565b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614434826143ed565b915061443f836143ed565b92508260ff03821115614455576144546143fa565b5b828201905092915050565b600061446b82613e82565b915061447683613e82565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156144af576144ae6143fa565b5b828202905092915050565b60006040820190506144cf6000830185613cac565b6144dc6020830184613cac565b9392505050565b600081519050919050565b600082825260208201905092915050565b600061450a826144e3565b61451481856144ee565b93506145248185602086016138fc565b61452d8161392f565b840191505092915050565b600060408201905061454d60008301856141b1565b818103602083015261455f81846144ff565b90509392505050565b600067ffffffffffffffff82111561458357614582613eef565b5b61458c8261392f565b9050602081019050919050565b60006145ac6145a784614568565b613f4f565b9050828152602081018484840111156145c8576145c7613eea565b5b6145d38482856138fc565b509392505050565b600082601f8301126145f0576145ef613ee5565b5b8151614600848260208601614599565b91505092915050565b60006020828403121561461f5761461e613c33565b5b600082015167ffffffffffffffff81111561463d5761463c613c38565b5b614649848285016145db565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea164736f6c634300080f000a000000000000000000000000b6046d7d6b8898d2f20c7650d6a65460b1a9cc57000000000000000000000000d9e81870e20d456e3e66ae63e50663be301113210000000000000000000000004c0309d07e89597114e9cef7af674da2a743978a000000000000000000000000e1fd34ea56979d5e6843a70f87b8970997482820000000000000000000000000ef2175aec77ff5513efca444987a633d1d84a42c0000000000000000000000001e7ba86bcc07bc3e451079e211291d6b366b23200000000000000000000000008eed6576dfdc17c7efc7b4a04556a1caf7aae0150000000000000000000000009480161d8a5387bc14c15c38eb443e26edc9261a000000000000000000000000dbaa6597a08a9835939d4023494e9e2577e17e460000000000000000000000003f91d64cb737b20887ddc5a7bf0c2c641bfb49c5000000000000000000000000c57794f2a7d41e5b69a09923a3cac84dd6161bb30000000000000000000000008acb135db549512f0360c6bf6824e76f2bbbc8cd000000000000000000000000d0172676a2ece2e5c30b70d2af2fc951661b5fa5000000000000000000000000b602bc374faa645edd9bc2a362b1435506d2d605000000000000000000000000b602bc374faa645edd9bc2a362b1435506d2d605000000000000000000000000450bc9ce97113cc4f1604a0622cbecc31ae24e7a0000000000000000000000005187cfb8b0e6daeb16f64820e909c9b66c99d94400000000000000000000000023a60eb79c5878e5580c87d7a4caa25ed7c157bf00000000000000000000000085680e75af28d56d26baa99087673a8464c57a1f0000000000000000000000001bbe0811efede0f6a040fa729bff9a4b6829778400000000000000000000000036e9cd5f0e7866c9b99474b2170c7964331803340000000000000000000000006b760cff900e7892171c2b41ddcb3363fb81b14b000000000000000000000000a9e62d1c8952b74a5d9875a30e96a35b8d5601dc0000000000000000000000000a07c0e1ca7f28278830d24235391e006e07fba200000000000000000000000004d81febd4c5335c865b53f82af7f79eb6d9eb44000000000000000000000000c741843b3b1eaf9a90316abf785858c73cf87197000000000000000000000000390e85cedfabf9a4585397dc8f34d22292f57989", + "data": "0xcdcb760a9b217f1b15f9c04316d04d42f550c340c5b2ee8e5ae05cab4f8cd9cb21970ca400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000003f6c6104006040523480156200001257600080fd5b5060405162003c0c38038062003c0c8339810160408190526200003591620001d4565b30608090815281516001600160a01b0390811660a09081526020840151821660e09081526040850151831660c0908152606086015184166101009081529486015184166101209081529286015184166101409081529086015184166101609081529186015184166101809081529486015184166101a09081529286015184166101c09081529086015184166101e09081529186015184166102009081529486015184166102209081529286015184166102409081529086015184166102609081529186015184166102809081529486015184166102a09081529286015184166102c09081529086015184166102e090815291860151841661030090815294860151841661032090815292860151841661034090815290860151841661036052908501518316610380529284015182166103a05283015181166103c052910151166103e05262000407565b60405161036081016001600160401b0381118282101715620001b157634e487b7160e01b600052604160045260246000fd5b60405290565b80516001600160a01b0381168114620001cf57600080fd5b919050565b60006103608284031215620001e857600080fd5b620001f26200017f565b620001fd83620001b7565b81526200020d60208401620001b7565b60208201526200022060408401620001b7565b60408201526200023360608401620001b7565b60608201526200024660808401620001b7565b60808201526200025960a08401620001b7565b60a08201526200026c60c08401620001b7565b60c08201526200027f60e08401620001b7565b60e082015261010062000294818501620001b7565b90820152610120620002a8848201620001b7565b90820152610140620002bc848201620001b7565b90820152610160620002d0848201620001b7565b90820152610180620002e4848201620001b7565b908201526101a0620002f8848201620001b7565b908201526101c06200030c848201620001b7565b908201526101e062000320848201620001b7565b9082015261020062000334848201620001b7565b9082015261022062000348848201620001b7565b908201526102406200035c848201620001b7565b9082015261026062000370848201620001b7565b9082015261028062000384848201620001b7565b908201526102a062000398848201620001b7565b908201526102c0620003ac848201620001b7565b908201526102e0620003c0848201620001b7565b90820152610300620003d4848201620001b7565b90820152610320620003e8848201620001b7565b90820152610340620003fc848201620001b7565b908201529392505050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516102a0516102c0516102e05161030051610320516103405161036051610380516103a0516103c0516103e0516135c26200064a600039600081816104d801526119530152600081816104af0152611b10015260008181610486015261145301526000818161045d015261130501526000818161043401526113ec01526000818161040b0152611a560152600081816103e20152611a180152600081816103b901526119da015260008181610390015261199c0152600081816103670152611ad201526000818161033e0152611a9401526000818161031501526116e90152600081816102ec01526116690152600081816102c301526115ea01526000818161029a0152611915015260008181610271015261120501526000818161024801526118d701526000818161021f01526118b10152600081816101f601526117c00152600081816101ce015261179a0152600081816101a601526110e101526000818161017e015261116d01526000818161015601526114cd01526000818161012e0152610fdb01526000818160df0152610ed5015260008181610107015261175201526000818160ba01528181610ef701528181610ffd015281816111030152818161118f015281816112270152818161132701528181611475015281816114ef0152818161160c0152818161168b015261170b0152600061052b01526135c26000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d5014610046578063615f64fe14610098578063d55ec6971461050a575b600080fd5b6100826040518060400160405280600581526020017f312e352e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f9190612fd5565b60405180910390f35b604080516103608101825273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000811682527f0000000000000000000000000000000000000000000000000000000000000000811660208301527f00000000000000000000000000000000000000000000000000000000000000008116828401527f0000000000000000000000000000000000000000000000000000000000000000811660608301527f0000000000000000000000000000000000000000000000000000000000000000811660808301527f0000000000000000000000000000000000000000000000000000000000000000811660a08301527f0000000000000000000000000000000000000000000000000000000000000000811660c08301527f0000000000000000000000000000000000000000000000000000000000000000811660e08301527f000000000000000000000000000000000000000000000000000000000000000081166101008301527f000000000000000000000000000000000000000000000000000000000000000081166101208301527f000000000000000000000000000000000000000000000000000000000000000081166101408301527f000000000000000000000000000000000000000000000000000000000000000081166101608301527f000000000000000000000000000000000000000000000000000000000000000081166101808301527f000000000000000000000000000000000000000000000000000000000000000081166101a08301527f000000000000000000000000000000000000000000000000000000000000000081166101c08301527f000000000000000000000000000000000000000000000000000000000000000081166101e08301527f000000000000000000000000000000000000000000000000000000000000000081166102008301527f000000000000000000000000000000000000000000000000000000000000000081166102208301527f000000000000000000000000000000000000000000000000000000000000000081166102408301527f000000000000000000000000000000000000000000000000000000000000000081166102608301527f000000000000000000000000000000000000000000000000000000000000000081166102808301527f000000000000000000000000000000000000000000000000000000000000000081166102a08301527f000000000000000000000000000000000000000000000000000000000000000081166102c08301527f000000000000000000000000000000000000000000000000000000000000000081166102e08301527f000000000000000000000000000000000000000000000000000000000000000081166103008301527f000000000000000000000000000000000000000000000000000000000000000081166103208301527f000000000000000000000000000000000000000000000000000000000000000016610340820152905161008f9190612fe8565b610512610514565b005b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163003610583576040517fada337cf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061058d61059b565b905061059881610e96565b50565b6105a3612e1f565b73420000000000000000000000000000000000001573ffffffffffffffffffffffffffffffffffffffff1663213268496040518163ffffffff1660e01b8152600401602060405180830381865afa158015610602573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106269190613236565b15156101608201526040517f47af267b0000000000000000000000000000000000000000000000000000000081527f494e5445524f50000000000000000000000000000000000000000000000000006004820152734200000000000000000000000000000000000015906347af267b90602401602060405180830381865afa9250505080156106f0575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526106ed91810190613236565b60015b61070157600061018082015261070a565b15156101808201525b806101800151801561072357506107216001611b34565b155b1561075a576040517fa27dcc8800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604051806020016040528073420000000000000000000000000000000000000773ffffffffffffffffffffffffffffffffffffffff16639fce812c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e8919061327a565b73ffffffffffffffffffffffffffffffffffffffff16905281526040805160208082018084527f7f46ddb200000000000000000000000000000000000000000000000000000000905291519091829173420000000000000000000000000000000000001091637f46ddb29160248086019291908187030181865afa158015610874573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610898919061327a565b73ffffffffffffffffffffffffffffffffffffffff168152508160200181905250604051806020016040528073420000000000000000000000000000000000001473ffffffffffffffffffffffffffffffffffffffff16637f46ddb26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610923573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610947919061327a565b73ffffffffffffffffffffffffffffffffffffffff168152508160400181905250604051806020016040528073420000000000000000000000000000000000001273ffffffffffffffffffffffffffffffffffffffff1663ee9a31a26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f6919061327a565b73ffffffffffffffffffffffffffffffffffffffff1690526060820152604080518082018083527fee9a31a2000000000000000000000000000000000000000000000000000000009052905181907342000000000000000000000000000000000000179063ee9a31a2906044808501916020918187030181865afa158015610a82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa6919061327a565b73ffffffffffffffffffffffffffffffffffffffff16815260200173420000000000000000000000000000000000001773ffffffffffffffffffffffffffffffffffffffff16637d1d0c5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b449190613297565b90526080820152610b68734200000000000000000000000000000000000011611c97565b60a0820152610b8a734200000000000000000000000000000000000019611c97565b60c0820152610bac73420000000000000000000000000000000000001a611c97565b60e0820152610bce73420000000000000000000000000000000000001b611c97565b61010082015261016081015115610dbe57600073420000000000000000000000000000000000002a905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c72919061327a565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d84447156040518163ffffffff1660e01b8152600401600060405180830381865afa158015610cd8573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d1e9190810190613371565b81526020018273ffffffffffffffffffffffffffffffffffffffff1663550fcdc96040518163ffffffff1660e01b8152600401600060405180830381865afa158015610d6e573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610db49190810190613371565b9052610120830152505b600073420000000000000000000000000000000000002b73ffffffffffffffffffffffffffffffffffffffff1663d61a398b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610e59575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252610e569181019061327a565b60015b610e6557506000610e68565b90505b604080516020810190915273ffffffffffffffffffffffffffffffffffffffff909116815261014082015290565b80515160405173ffffffffffffffffffffffffffffffffffffffff9091166024820152610f9990734200000000000000000000000000000000000007907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de80000000000000000000000000000000000000000000000000000000017905260006014611e78565b60208101515160405173ffffffffffffffffffffffffffffffffffffffff909116602482015261109f90734200000000000000000000000000000000000010907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000906044015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc4d66de800000000000000000000000000000000000000000000000000000000179052600080611e78565b60408082015151905173ffffffffffffffffffffffffffffffffffffffff909116602482015261112b90734200000000000000000000000000000000000014907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401611021565b60608101515160405173ffffffffffffffffffffffffffffffffffffffff90911660248201526111b790734200000000000000000000000000000000000012907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401611021565b6080810151805160209091015160405173ffffffffffffffffffffffffffffffffffffffff909216602483015260448201526112c990734200000000000000000000000000000000000017907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090606401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fcd6dc6870000000000000000000000000000000000000000000000000000000017905260016000611e78565b80610160015115611410576101208101518051602082015160409283015192516113d29373420000000000000000000000000000000000002a937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361135493906024016133c2565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f9065714700000000000000000000000000000000000000000000000000000000179052600080611e78565b6114107342000000000000000000000000000000000000297f00000000000000000000000000000000000000000000000000000000000000006125d4565b6101408101515160405173ffffffffffffffffffffffffffffffffffffffff909116602482015261149d9073420000000000000000000000000000000000002b907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090604401611021565b60a08101518051602082015160409283015192516115ba93734200000000000000000000000000000000000011937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb49dc741000000000000000000000000000000000000000000000000000000001790527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006000611e78565b60c081015180516020820151604092830151925161163993734200000000000000000000000000000000000019937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b60e08101518051602082015160409283015192516116b89373420000000000000000000000000000000000001a937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b6101008101518051602082015160409283015192516117389373420000000000000000000000000000000000001b937f0000000000000000000000000000000000000000000000000000000000000000937f00000000000000000000000000000000000000000000000000000000000000009361151c939060240161343c565b61177673420000000000000000000000000000000000000f7f00000000000000000000000000000000000000000000000000000000000000006125d4565b6117e47342000000000000000000000000000000000000158261016001516117be577f00000000000000000000000000000000000000000000000000000000000000006125d4565b7f00000000000000000000000000000000000000000000000000000000000000006125d4565b8061016001511561188d576040517f46a4d7800000000000000000000000000000000000000000000000000000000081527f435553544f4d5f4741535f544f4b454e000000000000000000000000000000006004820152734200000000000000000000000000000000000015906346a4d78090602401600060405180830381600087803b15801561187457600080fd5b505af1158015611888573d6000803e3d6000fd5b505050505b6118fb7342000000000000000000000000000000000000168261016001516118d5577f00000000000000000000000000000000000000000000000000000000000000006125d4565b7f00000000000000000000000000000000000000000000000000000000000000006125d4565b6119397342000000000000000000000000000000000000187f00000000000000000000000000000000000000000000000000000000000000006125d4565b61197773420000000000000000000000000000000000002d7f00000000000000000000000000000000000000000000000000000000000000006125d4565b80610180015115611a7a576119c07342000000000000000000000000000000000000227f00000000000000000000000000000000000000000000000000000000000000006125d4565b6119fe7342000000000000000000000000000000000000237f00000000000000000000000000000000000000000000000000000000000000006125d4565b611a3c7342000000000000000000000000000000000000247f00000000000000000000000000000000000000000000000000000000000000006125d4565b611a7a7342000000000000000000000000000000000000257f00000000000000000000000000000000000000000000000000000000000000006125d4565b611ab87342000000000000000000000000000000000000207f00000000000000000000000000000000000000000000000000000000000000006125d4565b611af67342000000000000000000000000000000000000217f00000000000000000000000000000000000000000000000000000000000000006125d4565b61059873420000000000000000000000000000000000002c7f00000000000000000000000000000000000000000000000000000000000000006125d4565b6040517f204e1c7a00000000000000000000000000000000000000000000000000000000815273420000000000000000000000000000000000002d600482015260009081907342000000000000000000000000000000000000189063204e1c7a90602401602060405180830381865afa158015611bb5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd9919061327a565b90508073ffffffffffffffffffffffffffffffffffffffff163b600003611c035750600092915050565b6040517f78ecabce0000000000000000000000000000000000000000000000000000000081526004810184905273420000000000000000000000000000000000002d906378ecabce90602401602060405180830381865afa158015611c6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c909190613236565b9392505050565b611cb860408051606081018252600080825260208201819052909182015290565b60008273ffffffffffffffffffffffffffffffffffffffff1663d0e12f906040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611d3f575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252611d3c918101906134a5565b60015b611d4b57506000611d4e565b90505b600083905060405180606001604052808273ffffffffffffffffffffffffffffffffffffffff16630d9019e16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611da9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dcd919061327a565b73ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1663d3e5792b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e579190613297565b8152602001836001811115611e6e57611e6e61340d565b9052949350505050565b611e81866128a7565b611ed4576040517fc3fe4a6600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871660048201526024015b60405180910390fd5b6040517f204e1c7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871660048201526000907342000000000000000000000000000000000000189063204e1c7a90602401602060405180830381865afa158015611f55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f79919061327a565b905073ffffffffffffffffffffffffffffffffffffffff81163b158015906120c657506120c68773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015611fea573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526120309190810190613371565b8773ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa15801561207b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526120c19190810190613371565b6128f0565b15612115576040517ff8ce5d1600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88166004820152602401611ecb565b6040517f3659cfe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152881690633659cfe690602401600060405180830381600087803b15801561217e57600080fd5b505af1158015612192573d6000803e3d6000fd5b507ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009250505083811480156121c9575060ff831615155b15612200576040517f10415a2900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b808414612394576040517fa6ed563e0000000000000000000000000000000000000000000000000000000081526004810185905260009073ffffffffffffffffffffffffffffffffffffffff8a169063a6ed563e90602401602060405180830381865afa158015612275573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122999190613297565b90506122a68460016134f5565b6122b49060ff16600861351a565b81901c60ff16156122f1576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061230160ff8616600861351a565b6040517f4e91db080000000000000000000000000000000000000000000000000000000081526004810188905260ff90911b198381166024830152915073ffffffffffffffffffffffffffffffffffffffff8b1690634e91db0890604401600060405180830381600087803b15801561237957600080fd5b505af115801561238d573d6000803e3d6000fd5b5050505050505b6040517fa6ed563e0000000000000000000000000000000000000000000000000000000081526004810182905260009073ffffffffffffffffffffffffffffffffffffffff8a169063a6ed563e90602401602060405180830381865afa158015612402573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124269190613297565b905060ff604082901c1615612467576040517fc996d78400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f4e91db08000000000000000000000000000000000000000000000000000000008152600481018390527fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008216602482015273ffffffffffffffffffffffffffffffffffffffff8a1690634e91db0890604401600060405180830381600087803b1580156124f757600080fd5b505af115801561250b573d6000803e3d6000fd5b50506040517f4f1ef28600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c169250634f1ef2869150612563908b908a90600401613557565b6000604051808303816000875af1158015612582573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526125c89190810190613371565b50505050505050505050565b6125dd826128a7565b61262b576040517fc3fe4a6600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602401611ecb565b6040517f204e1c7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526000907342000000000000000000000000000000000000189063204e1c7a90602401602060405180830381865afa1580156126ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126d0919061327a565b905073ffffffffffffffffffffffffffffffffffffffff81163b158015906127d257506127d28373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa158015612741573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526127879190810190613371565b8373ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b8152600401600060405180830381865afa15801561207b573d6000803e3d6000fd5b15612821576040517ff8ce5d1600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602401611ecb565b6040517f3659cfe600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690633659cfe690602401600060405180830381600087803b15801561288a57600080fd5b505af115801561289e573d6000803e3d6000fd5b50505050505050565b60007208400000000000000000000000000000000000600b83901c721fffffffffffffffffffffffffffffffffffff161480156128ea57506128e882612916565b155b92915050565b60006128fc838361297e565b158015611c90575061290e83836129ce565b159392505050565b600073ffffffffffffffffffffffffffffffffffffffff821673420000000000000000000000000000000000004214806128ea575073ffffffffffffffffffffffffffffffffffffffff82167342000000000000000000000000000000000000061492915050565b60008061298a84612a43565b9050600061299784612a43565b805183519192501480156129b2575080602001518260200151145b80156129c5575080604001518260400151145b95945050505050565b6000806129da84612a43565b905060006129e784612a43565b805183519192501180612a0d575080518251148015612a0d575080602001518260200151105b806129c5575080518251148015612a2b575080602001518260200151145b80156129c55750604090810151910151109392505050565b612a6760405180606001604052806000815260200160008152602001600081525090565b6000612aa8836040518060400160405280600181526020017f2e00000000000000000000000000000000000000000000000000000000000000815250612c0f565b9050600381511015612ae6576040517f9eda858c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612b4182600281518110612afe57612afe613586565b60200260200101516040518060400160405280600181526020017f2d00000000000000000000000000000000000000000000000000000000000000815250612c0f565b90506000612b9e82600081518110612b5b57612b5b613586565b60200260200101516040518060400160405280600181526020017f2b00000000000000000000000000000000000000000000000000000000000000815250612c0f565b90506040518060600160405280612bce85600081518110612bc157612bc1613586565b6020026020010151612cba565b8152602001612be985600181518110612bc157612bc1613586565b8152602001612c0483600081518110612bc157612bc1613586565b905295945050505050565b60606000612c1d8484612d32565b9050601f1960208201600183510160051b81018651838201526001845101845260005b825160608452818114612c855760405182820380825286601f8201165b8b850181015183820152870180612c5d5750600082820160200152603f018616810160405284525b875160209490940193019050818310612c4057505050508091508251612cb357602081019150600281510382525b5092915050565b80516000907f1999999999999999999999999999999999999999999999999999999999999999825b600181019050603060ff82870151160382851185600a028281019650600983118188108317171586029550505050828110612ce257505080612d2c5763101827966000526004601cfd5b50919050565b606082518251818111612e17576020850194506020840193506020604051019250846001828488010301600060208410612d6b57508286205b601f841660200360031b87515b8951818118831c612dcd578315612dab5783878c2014612dab5760018b019a50848b10612da55750612ddc565b50612d78565b858b038952998601996020909801978615612dcd57848b10612da55750612ddc565b5060018a019950838a10612d78575b5050604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08189030160051c8152602090970190525050505b505092915050565b604080516101c08101825260006101a08201818152825282516020808201855282825280840191909152835180820185528281528385015283518082018552828152606084015283518085019094528184528301529060808201908152602001612ea060408051606081018252600080825260208201819052909182015290565b8152602001612ec660408051606081018252600080825260208201819052909182015290565b8152602001612eec60408051606081018252600080825260208201819052909182015290565b8152602001612f1260408051606081018252600080825260208201819052909182015290565b8152604080516060808201835260008252602082810182905292820152910190815260408051602081810190925260008152910190815260006020820181905260409091015290565b60005b83811015612f76578181015183820152602001612f5e565b83811115612f85576000848401525b50505050565b60008151808452612fa3816020860160208601612f5b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611c906020830184612f8b565b815173ffffffffffffffffffffffffffffffffffffffff1681526103608101602083015161302e602084018273ffffffffffffffffffffffffffffffffffffffff169052565b506040830151613056604084018273ffffffffffffffffffffffffffffffffffffffff169052565b50606083015161307e606084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060808301516130a6608084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060a08301516130ce60a084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060c08301516130f660c084018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e083015161311e60e084018273ffffffffffffffffffffffffffffffffffffffff169052565b506101008381015173ffffffffffffffffffffffffffffffffffffffff90811691840191909152610120808501518216908401526101408085015182169084015261016080850151821690840152610180808501518216908401526101a0808501518216908401526101c0808501518216908401526101e08085015182169084015261020080850151821690840152610220808501518216908401526102408085015182169084015261026080850151821690840152610280808501518216908401526102a0808501518216908401526102c0808501518216908401526102e0808501518216908401526103008085015182169084015261032080850151821690840152610340808501519182168185015290612e17565b60006020828403121561324857600080fd5b81518015158114611c9057600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461059857600080fd5b60006020828403121561328c57600080fd5b8151611c9081613258565b6000602082840312156132a957600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600067ffffffffffffffff808411156132fa576132fa6132b0565b604051601f85017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715613340576133406132b0565b8160405280935085815286868601111561335957600080fd5b613367866020830187612f5b565b5050509392505050565b60006020828403121561338357600080fd5b815167ffffffffffffffff81111561339a57600080fd5b8201601f810184136133ab57600080fd5b6133ba848251602084016132df565b949350505050565b73ffffffffffffffffffffffffffffffffffffffff841681526060602082015260006133f16060830185612f8b565b82810360408401526134038185612f8b565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff84168152602081018390526060810160028310613497577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b826040830152949350505050565b6000602082840312156134b757600080fd5b815160028110611c9057600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600060ff821660ff84168060ff03821115613512576135126134c6565b019392505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613552576135526134c6565b500290565b73ffffffffffffffffffffffffffffffffffffffff831681526040602082015260006133ba6040830184612f8b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea164736f6c634300080f000a0000000000000000000000002a5a3eabb9fd571a3af0299eebdf8eaafe29a914000000000000000000000000250af3f400cf8aac8d410c90f1ba3968dd87df96000000000000000000000000547d0fba434877d7237d511cf87fabe2ee26b152000000000000000000000000ac8538a2e6a1f5dfbb1c4b8bd97cefb2997824a8000000000000000000000000b178cdaa8336f25624a63c049edb5af7ca36c2da000000000000000000000000c053fc0155bf8bda5b568af53276e538f0ea4d58000000000000000000000000716ead0cf3e7ff86a02d4f8cb41a6d14922fa8330000000000000000000000006a97c5d55a21265326150efe12fc30fb21cbff56000000000000000000000000a0734858ba5085ff6db493021a0f8c54605c2cda00000000000000000000000027e51b2254433a3284d9ba73ea551c397db2a124000000000000000000000000a0f4ffff79a0a3e039fcbef738751efba8e84f96000000000000000000000000f43862b9d814bb4504158ceccb0b74b31265e4ee000000000000000000000000893c2ceeb71d38514daf67728d3ff1b213fc4b5f000000000000000000000000f7bed7215eef1003fac426682cf2edeb958569f7000000000000000000000000f7bed7215eef1003fac426682cf2edeb958569f7000000000000000000000000eddf416c7159387cc6df3015700f79cfb891137300000000000000000000000070de55bc0bfbc52c5d0cca1da5816c2428886a34000000000000000000000000bec660b456b84a081e90af29be43385bda5bf7b600000000000000000000000093a8a7a9c98cb998d88dba3373a6c7f8ee2e8a4600000000000000000000000037dc2fe754052a9fac35f17282599fafbeb9f423000000000000000000000000784f1fae11f1c3a9c413423fe1b370a3636b8d560000000000000000000000002f76618143d9d2731c56778192d3893864b423d7000000000000000000000000dda87ef358082ab3f4ba8982290c671efdc4d1590000000000000000000000008256398a687e740006098445b05d5ca46b7be21e0000000000000000000000008684ccc5bf484ec242dbc7119004a83533934a79000000000000000000000000906835344844979ffd3a752eaa23728d513db00b000000000000000000000000e35b194efc4907f383b7e3b87f4c2c339ce239f60000000000000000000000000000000000000000", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 4500000, "intent": "Deploy L2ContractsManager Implementation", "to": "0x420000000000000000000000000000000000002C" }, { - "data": "0x7c36f37e000000000000000000000000150ac59978e761027ab0b14ac95386b6d4ab69f2", + "data": "0x7c36f37e000000000000000000000000a723d436b320015ebead5e589c49e03131b80ee3", "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001", "gasLimit": 3000000, "intent": "L2ProxyAdmin Upgrade Predeploys", From 770a8660d7e1b2402c63b3988c3ab3c15d602ed3 Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 12:02:15 -0400 Subject: [PATCH 05/34] fix: use Portal2 in OPCM migrator --- .../src/L1/opcm/OPContractsManagerMigrator.sol | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol index f7a6a727550a0..e55a757890254 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol @@ -17,7 +17,6 @@ import { IDisputeGame } from "interfaces/dispute/IDisputeGame.sol"; import { IDisputeGameFactory } from "interfaces/dispute/IDisputeGameFactory.sol"; import { ISystemConfig } from "interfaces/L1/ISystemConfig.sol"; import { IOptimismPortal2 as IOptimismPortal } from "interfaces/L1/IOptimismPortal2.sol"; -import { IOptimismPortalInterop } from "interfaces/L1/IOptimismPortalInterop.sol"; import { IETHLockbox } from "interfaces/L1/IETHLockbox.sol"; import { IOPContractsManagerContainer } from "interfaces/L1/opcm/IOPContractsManagerContainer.sol"; import { IOPContractsManagerUtils } from "interfaces/L1/opcm/IOPContractsManagerUtils.sol"; @@ -240,7 +239,7 @@ contract OPContractsManagerMigrator is OPContractsManagerUtilsCaller { internal { // Convert portal to interop portal interface, and grab existing ETHLockbox and DGF. - IOptimismPortalInterop portal = IOptimismPortalInterop(payable(_systemConfig.optimismPortal())); + IOptimismPortal portal = IOptimismPortal(payable(_systemConfig.optimismPortal())); IETHLockbox existingLockbox = IETHLockbox(payable(address(portal.ethLockbox()))); IDisputeGameFactory existingDGF = IDisputeGameFactory(payable(address(portal.disputeGameFactory()))); From 42ed716a86d4e7c5d103531180d361fa52aa1ca8 Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 12:11:37 -0400 Subject: [PATCH 06/34] fix: semver bumps from interface change --- packages/contracts-bedrock/snapshots/semver-lock.json | 8 ++++---- packages/contracts-bedrock/src/L1/ETHLockbox.sol | 4 ++-- .../contracts-bedrock/src/L1/OptimismPortalInterop.sol | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index f8478d3a3cae4..1adbe465ae06d 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -4,8 +4,8 @@ "sourceCodeHash": "0xe772f7db8033e4a738850cb28ac4849d3a454c93732135a8a10d4f7cb498088e" }, "src/L1/ETHLockbox.sol:ETHLockbox": { - "initCodeHash": "0x781079a80d379658eb4553622a9da86f7532ffa424f1e8957a82680ee9435f66", - "sourceCodeHash": "0xba51f26758bf13f7c1029d154fa5e5afd06a2163563ded84cd3ef883b658d646" + "initCodeHash": "0xb2ff8426ab2eb36352f790748963c8e1f7a91caf16bee6a035c2c41bac532836", + "sourceCodeHash": "0x870004d5acc24a704277680f09ccca51a020a512e6c6d48cca583a23a0de43a2" }, "src/L1/FeesDepositor.sol:FeesDepositor": { "initCodeHash": "0xe2ca240d728f711df438b7aeb3589c95ad11a97d742539a692ddafaf1365eb54", @@ -32,8 +32,8 @@ "sourceCodeHash": "0x3a37d410bb549ca16030a7dfcc6cdf70d852e22b53542d4d6487226c9925bc8f" }, "src/L1/OptimismPortalInterop.sol:OptimismPortalInterop": { - "initCodeHash": "0x2a1bc53cca19588227849173d58ac2d1b85681ea1cde5b429077bd94ee745979", - "sourceCodeHash": "0x14cdbcb9bf42b67b9ca4fb89e7c43c97e421930db42d6037d7a780aeff6c067a" + "initCodeHash": "0xa7262e160851c0de73b96943a28141ea23d3337494f1c507ecfc66d8a8d83024", + "sourceCodeHash": "0x941a3ba130742d8671c27f230635614589e851ab685cd7094e2c4487c5e05585" }, "src/L1/ProtocolVersions.sol:ProtocolVersions": { "initCodeHash": "0xcb59ad9a5ec2a0831b7f4daa74bdacba82ffa03035dafb499a732c641e017f4e", diff --git a/packages/contracts-bedrock/src/L1/ETHLockbox.sol b/packages/contracts-bedrock/src/L1/ETHLockbox.sol index d1b0626aec924..63c470a2ca664 100644 --- a/packages/contracts-bedrock/src/L1/ETHLockbox.sol +++ b/packages/contracts-bedrock/src/L1/ETHLockbox.sol @@ -73,9 +73,9 @@ contract ETHLockbox is ProxyAdminOwnedBase, Initializable, ReinitializableBase, mapping(IETHLockbox => bool) public authorizedLockboxes; /// @notice Semantic version. - /// @custom:semver 1.2.1 + /// @custom:semver 1.3.1 function version() public view virtual returns (string memory) { - return "1.2.1"; + return "1.3.1"; } /// @notice Constructs the ETHLockbox contract. diff --git a/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol b/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol index a9f3a8ad54284..21c632d0376fb 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol @@ -217,9 +217,9 @@ contract OptimismPortalInterop is Initializable, ResourceMetering, Reinitializab error OptimismPortal_MigratingToSameRegistry(); /// @notice Semantic version. - /// @custom:semver 5.3.1+interop + /// @custom:semver 5.4.1+interop function version() public pure virtual returns (string memory) { - return "5.3.1+interop"; + return "5.4.1+interop"; } /// @param _proofMaturityDelaySeconds The proof maturity delay in seconds. From 8fd0babc5212d36f8e9d52ecdfdc7f38ff4ea083 Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 12:23:39 -0400 Subject: [PATCH 07/34] fix: only overwrite the lock box when passing non-zero value --- packages/contracts-bedrock/src/L1/OptimismPortal2.sol | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol index b99c218189bd2..177d7b8e39887 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol @@ -259,7 +259,10 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase // Now perform initialization logic. systemConfig = _systemConfig; anchorStateRegistry = _anchorStateRegistry; - ethLockbox = _ethLockbox; + if (address(_ethLockbox) != address(0)){ + ethLockbox = _ethLockbox; + + } // Assert that the lockbox state is valid. _assertValidLockboxState(); From 628a159b5c70e9480af408b054fb71216f6f1e8d Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 12:26:13 -0400 Subject: [PATCH 08/34] chore: update comments to refer to OptimismPortal2 instead of OptimismPortalInterop --- .../src/L1/opcm/OPContractsManagerMigrator.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol index e55a757890254..2016ec2ef7065 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol @@ -273,7 +273,7 @@ contract OPContractsManagerMigrator is OPContractsManagerUtilsCaller { // Migrate the portal to the new ETHLockbox and AnchorStateRegistry. // This also sets superRootsActive = true. // NOTE: This requires the portal to already be upgraded to the interop version - // (OptimismPortalInterop). If the portal is not on the interop version, this call will + // (OptimismPortal2). If the portal is not on the interop version, this call will // fail. portal.migrateToSharedDisputeGame(_newLockbox, _newASR); } From 21b208d6cdf397306e0f06c7c3e2279e5e6d8e5d Mon Sep 17 00:00:00 2001 From: Rodrigo Araujo Date: Wed, 1 Apr 2026 09:49:07 -0700 Subject: [PATCH 09/34] fix: mismatched names --- packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol | 4 ++-- packages/contracts-bedrock/src/L1/OptimismPortal2.sol | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol index c6f024b37879b..ab8c9bc714558 100644 --- a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol +++ b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol @@ -44,9 +44,9 @@ interface IOptimismPortal2 is IProxyAdminOwnedBase { event ETHMigrated(address indexed lockbox, uint256 balance); event PortalMigrated( IETHLockbox indexed oldLockbox, - IETHLockbox indexed _newLockbox, + IETHLockbox indexed newLockbox, IAnchorStateRegistry indexed oldAnchorStateRegistry, - IAnchorStateRegistry _newAnchorStateRegistry + IAnchorStateRegistry newAnchorStateRegistry ); event TransactionDeposited(address indexed from, address indexed to, uint256 indexed version, bytes opaqueData); event WithdrawalFinalized(bytes32 indexed withdrawalHash, bool success); diff --git a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol index 177d7b8e39887..f02b6029f5f62 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol @@ -259,9 +259,8 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase // Now perform initialization logic. systemConfig = _systemConfig; anchorStateRegistry = _anchorStateRegistry; - if (address(_ethLockbox) != address(0)){ + if (address(_ethLockbox) != address(0)) { ethLockbox = _ethLockbox; - } // Assert that the lockbox state is valid. From 10f352c6dea7a0a1601b61f776168f1d633a0f98 Mon Sep 17 00:00:00 2001 From: Rodrigo Araujo Date: Wed, 1 Apr 2026 10:24:37 -0700 Subject: [PATCH 10/34] fix: enable INTEROP feature flag in v1 OPCM deploy path --- packages/contracts-bedrock/snapshots/semver-lock.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 1adbe465ae06d..b30c193bb42b8 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -28,8 +28,8 @@ "sourceCodeHash": "0x7c0cb663f82b07da8dec8a7497cf2fa56a335fb5bdc57b612c86462f8527d4d5" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { - "initCodeHash": "0x2a6f3998d47c52ecdb0c08dbe2290b5e1b05670339bddb23f3eb43ea1912aefb", - "sourceCodeHash": "0x3a37d410bb549ca16030a7dfcc6cdf70d852e22b53542d4d6487226c9925bc8f" + "initCodeHash": "0x4157a5bd1509923a383d0a815d474e29cd80555f7c9b02f05484f74f04fb0794", + "sourceCodeHash": "0x6f657dd2fefe537140d31bbfcfec644783819afa7db7100fdee1fe8d7ac52eec" }, "src/L1/OptimismPortalInterop.sol:OptimismPortalInterop": { "initCodeHash": "0xa7262e160851c0de73b96943a28141ea23d3337494f1c507ecfc66d8a8d83024", @@ -112,7 +112,7 @@ "sourceCodeHash": "0x43379a0ceae81d693c0fb50d3b7e8b1836e7a2cae0b7931593d2324d09e59ba3" }, "src/L2/L2StandardBridge.sol:L2StandardBridge": { - "initCodeHash": "0xceccf652d13f2492b853c2ca2117538549259ce0ddfc085d75c5d5074cc5e80f", + "initCodeHash": "0x86e764ec87c02314c90835c61f7305761df4e2aa1e1a605c229cd1451076ac99", "sourceCodeHash": "0x00bf544cb76e2ee689de6cc9f1cd4cfdaae1ea63cd2edc16b3fde6357b04722e" }, "src/L2/L2StandardBridgeInterop.sol:L2StandardBridgeInterop": { @@ -148,7 +148,7 @@ "sourceCodeHash": "0xd93a8d5de6fd89ebf503976511065f0c2414814affdb908f26a867ffdd0f9fbe" }, "src/L2/OptimismMintableERC721Factory.sol:OptimismMintableERC721Factory": { - "initCodeHash": "0x50452b7514964a4c9cb75963ad5439d08d7b4e7908a41d555c9d380e17c85d55", + "initCodeHash": "0x7f30a69f1f31bb6380a79c744a32eeef7b39a3adaef707b22e059c3089c5efcd", "sourceCodeHash": "0x934698844664ca01b0898fc4fafd74d9685977dd141e71823c9ef7501cee505e" }, "src/L2/OptimismSuperchainERC20.sol:OptimismSuperchainERC20": { @@ -260,7 +260,7 @@ "sourceCodeHash": "0xd6683fe9be4019d34249ada5a4de3e597f1bd9cd473a89f6eff8f749a0b0e978" }, "src/universal/OptimismMintableERC20.sol:OptimismMintableERC20": { - "initCodeHash": "0x3c85eed0d017dca8eda6396aa842ddc12492587b061e8c756a8d32c4610a9658", + "initCodeHash": "0xa26cd5b88cb1d4e5cef0422b98ff4c33a3bbfa33479ebd8632d095bb2c633ca7", "sourceCodeHash": "0x7023665d461f173417d932b55010b8f6c34f2bbaf56cfe4e1b15862c08cbcaac" }, "src/universal/OptimismMintableERC20Factory.sol:OptimismMintableERC20Factory": { From 70a1e332e464b143c23813a3263ff494b0cbaccb Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 14:04:08 -0400 Subject: [PATCH 11/34] fix: remove casting to OptimismPortalInterop --- packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol index dd3cf6df931b7..1df2b9fbbe8c8 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol @@ -835,7 +835,7 @@ contract OPContractsManagerV2 is ISemver, OPContractsManagerUtilsCaller { } // Migrate any ETH into the ETHLockbox. - IOptimismPortalInterop(payable(_cts.optimismPortal)).migrateLiquidity(); + IOptimismPortal(payable(_cts.optimismPortal)).migrateLiquidity(); } // Update the L1CrossDomainMessenger. From 8adc0a464385f3f417bdc2f6ac5155c07e8d160a Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 14:25:15 -0400 Subject: [PATCH 12/34] chore: remove OptimismPortalInterop dead code --- .../test/L1/OptimismPortal2.t.sol | 178 ++---------------- 1 file changed, 13 insertions(+), 165 deletions(-) diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index f57406b2decd5..96276ab6526e1 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -28,7 +28,6 @@ import { UnknownChainId } from "src/dispute/lib/Errors.sol"; // Interfaces import { IResourceMetering } from "interfaces/L1/IResourceMetering.sol"; import { IOptimismPortal2 as IOptimismPortal } from "interfaces/L1/IOptimismPortal2.sol"; -import { IOptimismPortalInterop } from "interfaces/L1/IOptimismPortalInterop.sol"; import { IDisputeGame } from "interfaces/dispute/IDisputeGame.sol"; import { IProxy } from "interfaces/universal/IProxy.sol"; @@ -162,24 +161,6 @@ abstract contract OptimismPortal2_TestInit is DisputeGameFactory_TestInit { assertFalse(optimismPortal2.finalizedWithdrawals(Hashing.hashWithdrawal(_defaultTx))); } - /// @notice Sets the supeRootsActive variable to the provided value. - /// @param _superRootsActive The value to set the superRootsActive variable to. - function setSuperRootsActive(bool _superRootsActive) public { - // Get the slot for superRootsActive. - StorageSlot memory slot = ForgeArtifacts.getSlot("OptimismPortalInterop", "superRootsActive"); - - // Load the existing storage slot value. - bytes32 existingValue = vm.load(address(optimismPortal2), bytes32(slot.slot)); - - // Inject the bool into the existing storage slot value with a bitwise OR. - // Shift the bool left by the offset of the storage slot and OR with existing value. - bytes32 newValue = - bytes32(uint256(uint8(_superRootsActive ? 1 : 0)) << slot.offset * 8 | uint256(existingValue)); - - // Store the new value at the correct slot/offset. - vm.store(address(optimismPortal2), bytes32(slot.slot), newValue); - } - /// @notice Checks if the ETHLockbox feature is enabled. /// @return bool True if the ETHLockbox feature is enabled. function isUsingLockbox() public view returns (bool) { @@ -316,7 +297,7 @@ contract OptimismPortal2_Initialize_Test is OptimismPortal2_TestInit { // Call the `initialize` function with the sender vm.prank(_sender); - IOptimismPortalInterop(payable(optimismPortal2)).initialize(systemConfig, anchorStateRegistry, ethLockbox); + optimismPortal2.initialize(systemConfig, anchorStateRegistry, ethLockbox); } /// @notice Tests that the initialize function reverts when lockbox state is invalid. @@ -370,130 +351,6 @@ contract OptimismPortal2_Initialize_Test is OptimismPortal2_TestInit { } } -/// @title OptimismPortal2_UpgradeInterop_Test -/// @notice Reusable test for the current upgrade() function in the OptimismPortal2 contract. If -/// the upgrade() function is changed, tests inside of this contract should be updated to -/// reflect the new function. If the upgrade() function is removed, remove the -/// corresponding tests but leave this contract in place so it's easy to add tests back -/// in the future. -contract OptimismPortal2_UpgradeInterop_Test is CommonTest { - function setUp() public virtual override { - super.setUp(); - skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); - } - - /// @notice Tests that the upgrade() function succeeds. - function testFuzz_upgrade_interop_succeeds(address _newAnchorStateRegistry, uint256 _balance) external { - // Prevent overflow on an upgrade context - _balance = bound(_balance, 0, type(uint256).max - address(ethLockbox).balance); - - // Get the slot for _initialized. - StorageSlot memory slot = ForgeArtifacts.getSlot("OptimismPortal2", "_initialized"); - - // Set the initialized slot to 0. - vm.store(address(optimismPortal2), bytes32(slot.slot), bytes32(0)); - - // Set the balance of the portal and get the lockbox balance before the upgrade. - deal(address(optimismPortal2), _balance); - uint256 lockboxBalanceBefore = address(ethLockbox).balance; - - // Expect the ETH to be migrated to the lockbox. - vm.expectCall(address(ethLockbox), _balance, abi.encodeCall(ethLockbox.lockETH, ())); - - // Call the upgrade function. - vm.prank(address(optimismPortal2.proxyAdmin())); - IOptimismPortalInterop(payable(optimismPortal2)).upgrade( - IAnchorStateRegistry(_newAnchorStateRegistry), IETHLockbox(ethLockbox) - ); - - // Verify that the initialized slot was updated. - bytes32 initializedSlotAfter = vm.load(address(optimismPortal2), bytes32(slot.slot)); - assertEq(initializedSlotAfter, bytes32(uint256(optimismPortal2.initVersion()))); - - // Assert the portal is properly upgraded. - assertEq(address(optimismPortal2.ethLockbox()), address(ethLockbox)); - assertEq(address(optimismPortal2.anchorStateRegistry()), _newAnchorStateRegistry); - - // Balance has not updated. - assertEq(address(optimismPortal2).balance, _balance); - assertEq(address(ethLockbox).balance, lockboxBalanceBefore); - - // Now we migrate liquidity. - vm.prank(proxyAdminOwner); - IOptimismPortalInterop(payable(optimismPortal2)).migrateLiquidity(); - - // Balance has been updated. - assertEq(address(optimismPortal2).balance, 0); - assertEq(address(ethLockbox).balance, lockboxBalanceBefore + _balance); - } - - /// @notice Tests that the upgrade() function reverts if called a second time. - function test_upgrade_upgradeTwice_reverts() external { - // Get the slot for _initialized. - StorageSlot memory slot = ForgeArtifacts.getSlot("OptimismPortal2", "_initialized"); - - // Set the initialized slot to 0. - vm.store(address(optimismPortal2), bytes32(slot.slot), bytes32(0)); - - // Trigger first upgrade. - vm.prank(address(optimismPortal2.proxyAdmin())); - IOptimismPortalInterop(payable(optimismPortal2)).upgrade( - IAnchorStateRegistry(address(0xdeadbeef)), IETHLockbox(ethLockbox) - ); - - // Try to trigger second upgrade. - vm.prank(address(optimismPortal2.proxyAdmin())); - vm.expectRevert("Initializable: contract is already initialized"); - IOptimismPortalInterop(payable(optimismPortal2)).upgrade( - IAnchorStateRegistry(address(0xdeadbeef)), IETHLockbox(ethLockbox) - ); - } - - /// @notice Tests that the upgrade() function reverts if called after initialization. - function test_upgrade_afterInitialization_reverts() external { - // Get the slot for _initialized. - StorageSlot memory slot = ForgeArtifacts.getSlot("OptimismPortal2", "_initialized"); - - // Slot value should be set to already initialized. - bytes32 initializedSlotBefore = vm.load(address(optimismPortal2), bytes32(slot.slot)); - assertEq(initializedSlotBefore, bytes32(uint256(optimismPortal2.initVersion()))); - - // AnchorStateRegistry address should be non-zero. - assertNotEq(address(optimismPortal2.anchorStateRegistry()), address(0)); - - // SystemConfig address should be non-zero. - assertNotEq(address(optimismPortal2.systemConfig()), address(0)); - - // Try to trigger upgrade(). - vm.expectRevert("Initializable: contract is already initialized"); - IOptimismPortalInterop(payable(optimismPortal2)).upgrade( - IAnchorStateRegistry(address(0xdeadbeef)), IETHLockbox(ethLockbox) - ); - } - - /// @notice Tests that the upgrade() function reverts if called by a non-proxy admin or owner. - /// @param _sender The address of the sender to test. - function testFuzz_upgrade_notProxyAdminOrProxyAdminOwner_reverts(address _sender) public { - // Prank as the not ProxyAdmin or ProxyAdmin owner. - vm.assume(_sender != address(proxyAdmin) && _sender != proxyAdminOwner); - - // Get the slot for _initialized. - StorageSlot memory slot = ForgeArtifacts.getSlot("OptimismPortal2", "_initialized"); - - // Set the initialized slot to 0. - vm.store(address(optimismPortal2), bytes32(slot.slot), bytes32(0)); - - // Expect the revert with `ProxyAdminOwnedBase_NotProxyAdminOrProxyAdminOwner` selector. - vm.expectRevert(IProxyAdminOwnedBase.ProxyAdminOwnedBase_NotProxyAdminOrProxyAdminOwner.selector); - - // Call the `upgrade` function with the sender - vm.prank(_sender); - IOptimismPortalInterop(payable(optimismPortal2)).upgrade( - IAnchorStateRegistry(address(0xdeadbeef)), IETHLockbox(ethLockbox) - ); - } -} - /// @title OptimismPortal2_MinimumGasLimit_Test /// @notice Test contract for OptimismPortal2 `minimumGasLimit` function. contract OptimismPortal2_MinimumGasLimit_Test is OptimismPortal2_TestInit { @@ -827,7 +684,7 @@ contract OptimismPortal2_MigrateLiquidity_Test is CommonTest { vm.assume(_caller != optimismPortal2.proxyAdminOwner()); vm.expectRevert(IProxyAdminOwnedBase.ProxyAdminOwnedBase_NotProxyAdminOwner.selector); vm.prank(_caller); - IOptimismPortalInterop(payable(optimismPortal2)).migrateLiquidity(); + optimismPortal2.migrateLiquidity(); } /// @notice Tests that the liquidity migration from the portal to the lockbox succeeds. @@ -844,7 +701,7 @@ contract OptimismPortal2_MigrateLiquidity_Test is CommonTest { emit ETHMigrated(address(ethLockbox), _portalBalance); vm.prank(proxyAdminOwner); - IOptimismPortalInterop(payable(optimismPortal2)).migrateLiquidity(); + optimismPortal2.migrateLiquidity(); assertEq(address(optimismPortal2).balance, 0); assertEq(address(ethLockbox).balance, lockboxBalanceBefore + _portalBalance); @@ -866,7 +723,7 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test vm.expectRevert(IProxyAdminOwnedBase.ProxyAdminOwnedBase_NotProxyAdminOwner.selector); vm.prank(_caller); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( + optimismPortal2.migrateToSharedDisputeGame( IETHLockbox(address(1)), IAnchorStateRegistry(address(1)) ); } @@ -884,9 +741,9 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test address caller = optimismPortal2.proxyAdminOwner(); // Expect the migration to revert. - vm.expectRevert(IOptimismPortalInterop.OptimismPortal_MigratingToSameRegistry.selector); + vm.expectRevert(IOptimismPortal.OptimismPortal_MigratingToSameRegistry.selector); vm.prank(caller); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( + optimismPortal2.migrateToSharedDisputeGame( IETHLockbox(_newLockbox), newAnchorStateRegistry ); } @@ -910,13 +767,13 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test emit PortalMigrated(oldLockbox, _newLockbox, oldAnchorStateRegistry, _newAnchorStateRegistry); vm.prank(optimismPortal2.proxyAdminOwner()); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( + optimismPortal2.migrateToSharedDisputeGame( IETHLockbox(_newLockbox), IAnchorStateRegistry(_newAnchorStateRegistry) ); assertEq(address(optimismPortal2.ethLockbox()), _newLockbox); assertEq(address(optimismPortal2.anchorStateRegistry()), _newAnchorStateRegistry); - assertTrue(IOptimismPortalInterop(payable(optimismPortal2)).superRootsActive()); + // assertTrue(optimismPortal2.superRootsActive()); /// TODO: Is checking the INTEROP feature flag sufficient } /// @notice Tests that `migrateToSharedDisputeGame` reverts when the system is paused. @@ -928,7 +785,7 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test address caller = optimismPortal2.proxyAdminOwner(); vm.expectRevert(IOptimismPortal.OptimismPortal_CallPaused.selector); vm.prank(caller); - IOptimismPortalInterop(payable(optimismPortal2)).migrateToSharedDisputeGame( + optimismPortal2.migrateToSharedDisputeGame( IETHLockbox(address(1)), IAnchorStateRegistry(address(1)) ); } @@ -1205,9 +1062,6 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test function test_proveWithdrawalTransaction_superRootsVersionBadChainId_reverts() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); - // Enable super roots. - setSuperRootsActive(true); - // Mock rootClaimByChainId to revert with UnknownChainId. vm.mockCallRevert( address(game), @@ -1217,7 +1071,7 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test // Should revert because chainId not found in super root. vm.expectRevert(UnknownChainId.selector); - IOptimismPortalInterop(payable(optimismPortal2)).proveWithdrawalTransaction({ + optimismPortal2.proveWithdrawalTransaction({ _tx: _defaultTx, _disputeGameIndex: _proposedGameIndex, _outputRootProof: _outputRootProof, @@ -1230,9 +1084,6 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test function test_proveWithdrawalTransaction_superRootsVersionBadOutputRootProof_reverts() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); - // Enable super roots. - setSuperRootsActive(true); - // Mock rootClaimByChainId to return a different output root (wrong one). bytes32 wrongOutputRoot = keccak256(abi.encode(_outputRoot)); vm.mockCall( @@ -1242,8 +1093,8 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test ); // Should revert because the output root proof doesn't match. - vm.expectRevert(IOptimismPortalInterop.OptimismPortal_InvalidOutputRootProof.selector); - IOptimismPortalInterop(payable(optimismPortal2)).proveWithdrawalTransaction({ + vm.expectRevert(IOptimismPortal.OptimismPortal_InvalidOutputRootProof.selector); + optimismPortal2.proveWithdrawalTransaction({ _tx: _defaultTx, _disputeGameIndex: _proposedGameIndex, _outputRootProof: _outputRootProof, @@ -1256,9 +1107,6 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test function test_proveWithdrawalTransaction_superRootsVersion_succeeds() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); - // Enable super roots. - setSuperRootsActive(true); - // Mock rootClaimByChainId to return the correct output root. vm.mockCall( address(game), @@ -1267,7 +1115,7 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test ); // Should succeed. - IOptimismPortalInterop(payable(optimismPortal2)).proveWithdrawalTransaction({ + optimismPortal2.proveWithdrawalTransaction({ _tx: _defaultTx, _disputeGameIndex: _proposedGameIndex, _outputRootProof: _outputRootProof, From 068ed65134cc58c0d5b454aa69fcc73c90cbf5e1 Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 14:25:42 -0400 Subject: [PATCH 13/34] chore: update comment to remove OptimismPortalInterop --- packages/contracts-bedrock/src/libraries/DevFeatures.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/src/libraries/DevFeatures.sol b/packages/contracts-bedrock/src/libraries/DevFeatures.sol index b91b29f7bda4a..d677dbdac7382 100644 --- a/packages/contracts-bedrock/src/libraries/DevFeatures.sol +++ b/packages/contracts-bedrock/src/libraries/DevFeatures.sol @@ -10,7 +10,7 @@ pragma solidity ^0.8.0; /// etc. /// We'll expand to using all available bits if we need more than 64 concurrent features. library DevFeatures { - /// @notice The feature that enables the OptimismPortalInterop contract. + /// @notice The feature that enables the Interop migration functions on the OptimismPortal2 contract. bytes32 public constant OPTIMISM_PORTAL_INTEROP = bytes32(0x0000000000000000000000000000000000000000000000000000000000000001); From f54b924eae710d31c9f2a754635bafd70ca4cd65 Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 14:33:45 -0400 Subject: [PATCH 14/34] chore: remove OptimismPortalInterop specific tests since we now test OptimismPortal2 via the feature flag --- .../test/L1/OptimismPortal2.t.sol | 12 +++--------- .../test/L1/opcm/OPContractsManagerV2.t.sol | 19 ++++++++++--------- .../test/L2/L2DevFeatureFlags.t.sol | 2 +- .../test/vendor/Initializable.t.sol | 10 +++------- 4 files changed, 17 insertions(+), 26 deletions(-) diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index 96276ab6526e1..fdacd75f10cae 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -723,9 +723,7 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test vm.expectRevert(IProxyAdminOwnedBase.ProxyAdminOwnedBase_NotProxyAdminOwner.selector); vm.prank(_caller); - optimismPortal2.migrateToSharedDisputeGame( - IETHLockbox(address(1)), IAnchorStateRegistry(address(1)) - ); + optimismPortal2.migrateToSharedDisputeGame(IETHLockbox(address(1)), IAnchorStateRegistry(address(1))); } /// @notice Tests that `migrateToSharedDisputeGame` reverts if the new registry is the same as the @@ -743,9 +741,7 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test // Expect the migration to revert. vm.expectRevert(IOptimismPortal.OptimismPortal_MigratingToSameRegistry.selector); vm.prank(caller); - optimismPortal2.migrateToSharedDisputeGame( - IETHLockbox(_newLockbox), newAnchorStateRegistry - ); + optimismPortal2.migrateToSharedDisputeGame(IETHLockbox(_newLockbox), newAnchorStateRegistry); } /// @notice Tests that `migrateToSharedDisputeGame` updates the ETHLockbox contract, updates the @@ -785,9 +781,7 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test address caller = optimismPortal2.proxyAdminOwner(); vm.expectRevert(IOptimismPortal.OptimismPortal_CallPaused.selector); vm.prank(caller); - optimismPortal2.migrateToSharedDisputeGame( - IETHLockbox(address(1)), IAnchorStateRegistry(address(1)) - ); + optimismPortal2.migrateToSharedDisputeGame(IETHLockbox(address(1)), IAnchorStateRegistry(address(1))); } } diff --git a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol index d3eb2c62a91b9..fa431a57fb79a 100644 --- a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol +++ b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol @@ -29,7 +29,6 @@ import { IOPContractsManagerUtils } from "interfaces/L1/opcm/IOPContractsManager import { IOPContractsManagerContainer } from "interfaces/L1/opcm/IOPContractsManagerContainer.sol"; import { IOPContractsManagerMigrator } from "interfaces/L1/opcm/IOPContractsManagerMigrator.sol"; import { IOptimismPortal2 } from "interfaces/L1/IOptimismPortal2.sol"; -import { IOptimismPortalInterop } from "interfaces/L1/IOptimismPortalInterop.sol"; import { IDisputeGameFactory } from "interfaces/dispute/IDisputeGameFactory.sol"; import { IAnchorStateRegistry } from "interfaces/dispute/IAnchorStateRegistry.sol"; import { IETHLockbox } from "interfaces/L1/IETHLockbox.sol"; @@ -2042,14 +2041,16 @@ contract OPContractsManagerV2_Migrate_Test is OPContractsManagerV2_TestInit { assertTrue(newLockbox.authorizedPortals(portal2), "ETHLockbox does not have portal 2 authorized"); // Check that superRootsActive is true on both portals. - assertTrue( - IOptimismPortalInterop(payable(address(portal1))).superRootsActive(), - "Portal 1 superRootsActive should be true" - ); - assertTrue( - IOptimismPortalInterop(payable(address(portal2))).superRootsActive(), - "Portal 2 superRootsActive should be true" - ); + // assertTrue( + // portal1.superRootsActive(), + // "Portal 1 superRootsActive should be true" + // ); + // assertTrue( + // portal2.superRootsActive(), + // "Portal 2 superRootsActive should be true" + // ); + + /// TODO: Can we use the INTEROP flag for these checks // Check that the ETH_LOCKBOX feature is enabled on both SystemConfigs. assertTrue( diff --git a/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol b/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol index 0e277961dc8fe..4dd5dbe07b22c 100644 --- a/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol +++ b/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol @@ -85,7 +85,7 @@ contract L2DevFeatureFlags_IsDevFeatureEnabled_Test is L2DevFeatureFlags_TestIni } /// @notice Tests that `isDevFeatureEnabled` works correctly with the known OPTIMISM_PORTAL_INTEROP feature. - function test_isDevFeatureEnabled_optimismPortalInterop_succeeds() public { + function test_isDevFeatureEnabled_Interop_succeeds() public { vm.prank(Constants.DEPOSITOR_ACCOUNT); l2DevFeatureFlags.setDevFeatureBitmap(DevFeatures.OPTIMISM_PORTAL_INTEROP); diff --git a/packages/contracts-bedrock/test/vendor/Initializable.t.sol b/packages/contracts-bedrock/test/vendor/Initializable.t.sol index 4a85abd465686..884d3b690a206 100644 --- a/packages/contracts-bedrock/test/vendor/Initializable.t.sol +++ b/packages/contracts-bedrock/test/vendor/Initializable.t.sol @@ -23,7 +23,6 @@ import { IAnchorStateRegistry } from "interfaces/dispute/IAnchorStateRegistry.so import { IDisputeGameFactory } from "interfaces/dispute/IDisputeGameFactory.sol"; import { ProtocolVersion } from "interfaces/L1/IProtocolVersions.sol"; import { IOptimismPortal2 } from "interfaces/L1/IOptimismPortal2.sol"; -import { IOptimismPortalInterop } from "interfaces/L1/IOptimismPortalInterop.sol"; /// @title Initializer_Test /// @dev Ensures that the `initialize()` function on contracts cannot be called more than @@ -124,14 +123,13 @@ contract Initializer_Test is CommonTest { ); if (isDevFeatureEnabled(DevFeatures.OPTIMISM_PORTAL_INTEROP)) { - // OptimismPortal2Impl + // TODO(#19709): Remove this branching logic when we remove the OptimismPortalInterop from src contracts.push( InitializeableContract({ name: "OptimismPortal2Impl", target: EIP1967Helper.getImplementation(address(optimismPortal2)), initCalldata: abi.encodeCall( - IOptimismPortalInterop(payable(optimismPortal2)).initialize, - (systemConfig, anchorStateRegistry, ethLockbox) + optimismPortal2.initialize, (systemConfig, anchorStateRegistry, ethLockbox) ) }) ); @@ -141,13 +139,11 @@ contract Initializer_Test is CommonTest { name: "OptimismPortal2Proxy", target: address(optimismPortal2), initCalldata: abi.encodeCall( - IOptimismPortalInterop(payable(optimismPortal2)).initialize, - (systemConfig, anchorStateRegistry, ethLockbox) + optimismPortal2.initialize, (systemConfig, anchorStateRegistry, ethLockbox) ) }) ); } else { - // OptimismPortal2Impl contracts.push( InitializeableContract({ name: "OptimismPortal2Impl", From 143ffb9e908340c6675997d916f4023fd58ef163 Mon Sep 17 00:00:00 2001 From: Rodrigo Araujo Date: Wed, 1 Apr 2026 12:21:31 -0700 Subject: [PATCH 15/34] fix: restore superRootsActive flag in super-roots withdrawal proof tests --- .../test/L1/OptimismPortal2.t.sol | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index fdacd75f10cae..f35a832c7a3ce 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -1051,11 +1051,16 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test }); } - /// @notice Tests that `proveWithdrawalTransaction` reverts when superRootsActive is true + /// @notice Tests that `proveWithdrawalTransaction` reverts when super roots are active /// and the game's rootClaimByChainId reverts with UnknownChainId. function test_proveWithdrawalTransaction_superRootsVersionBadChainId_reverts() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); + // Enable superRootsActive on the OptimismPortalInterop impl (slot 63, offset 20). + bytes32 slot = bytes32(uint256(63)); + bytes32 existingValue = vm.load(address(optimismPortal2), slot); + vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); + // Mock rootClaimByChainId to revert with UnknownChainId. vm.mockCallRevert( address(game), @@ -1073,11 +1078,16 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test }); } - /// @notice Tests that `proveWithdrawalTransaction` reverts when superRootsActive is true + /// @notice Tests that `proveWithdrawalTransaction` reverts when super roots are active /// and the output root proof doesn't match the game's rootClaimByChainId. function test_proveWithdrawalTransaction_superRootsVersionBadOutputRootProof_reverts() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); + // Enable superRootsActive on the OptimismPortalInterop impl (slot 63, offset 20). + bytes32 slot = bytes32(uint256(63)); + bytes32 existingValue = vm.load(address(optimismPortal2), slot); + vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); + // Mock rootClaimByChainId to return a different output root (wrong one). bytes32 wrongOutputRoot = keccak256(abi.encode(_outputRoot)); vm.mockCall( @@ -1096,11 +1106,16 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test }); } - /// @notice Tests that `proveWithdrawalTransaction` succeeds when superRootsActive is true + /// @notice Tests that `proveWithdrawalTransaction` succeeds when super roots are active /// and all parameters are valid. function test_proveWithdrawalTransaction_superRootsVersion_succeeds() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); + // Enable superRootsActive on the OptimismPortalInterop impl (slot 63, offset 20). + bytes32 slot = bytes32(uint256(63)); + bytes32 existingValue = vm.load(address(optimismPortal2), slot); + vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); + // Mock rootClaimByChainId to return the correct output root. vm.mockCall( address(game), From 2ab17f022be8f2d9772a44a315f40dce7edbe518 Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 14:59:46 -0400 Subject: [PATCH 16/34] fix: test name camelCase --- packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol b/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol index 4dd5dbe07b22c..88a3248148cd6 100644 --- a/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol +++ b/packages/contracts-bedrock/test/L2/L2DevFeatureFlags.t.sol @@ -85,7 +85,7 @@ contract L2DevFeatureFlags_IsDevFeatureEnabled_Test is L2DevFeatureFlags_TestIni } /// @notice Tests that `isDevFeatureEnabled` works correctly with the known OPTIMISM_PORTAL_INTEROP feature. - function test_isDevFeatureEnabled_Interop_succeeds() public { + function test_isDevFeatureEnabled_interop_succeeds() public { vm.prank(Constants.DEPOSITOR_ACCOUNT); l2DevFeatureFlags.setDevFeatureBitmap(DevFeatures.OPTIMISM_PORTAL_INTEROP); From 47d85c6c78fc6b681ee63cb6e67d09df7dce7e6f Mon Sep 17 00:00:00 2001 From: steven Date: Wed, 1 Apr 2026 15:00:31 -0400 Subject: [PATCH 17/34] chore: remove OptimismPortalInterop from Initializable tests and remove interface from OPCM_V2 --- packages/contracts-bedrock/snapshots/semver-lock.json | 8 ++++---- .../src/L1/opcm/OPContractsManagerV2.sol | 1 - .../contracts-bedrock/test/vendor/Initializable.t.sol | 1 + 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index b30c193bb42b8..3efdb48ce5b6d 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -49,7 +49,7 @@ }, "src/L1/opcm/OPContractsManagerV2.sol:OPContractsManagerV2": { "initCodeHash": "0xd87b10a36b6e7a69fac4199651d118ca7841d1175faa0e954ade9f8b65577aa5", - "sourceCodeHash": "0x4bf8f8913b8a41fb064fff583078ded238035312116066e568794022b48d18d1" + "sourceCodeHash": "0x942356e27feee545ae5f07ce81dde29694a1b06d599fb47e44fa0b4d9a7107a2" }, "src/L2/BaseFeeVault.sol:BaseFeeVault": { "initCodeHash": "0xf1fb169c6dd4eceb5cec6ed6dfa3affc45970e5a01e00827d06af1f9e8df026d", @@ -112,7 +112,7 @@ "sourceCodeHash": "0x43379a0ceae81d693c0fb50d3b7e8b1836e7a2cae0b7931593d2324d09e59ba3" }, "src/L2/L2StandardBridge.sol:L2StandardBridge": { - "initCodeHash": "0x86e764ec87c02314c90835c61f7305761df4e2aa1e1a605c229cd1451076ac99", + "initCodeHash": "0xceccf652d13f2492b853c2ca2117538549259ce0ddfc085d75c5d5074cc5e80f", "sourceCodeHash": "0x00bf544cb76e2ee689de6cc9f1cd4cfdaae1ea63cd2edc16b3fde6357b04722e" }, "src/L2/L2StandardBridgeInterop.sol:L2StandardBridgeInterop": { @@ -148,7 +148,7 @@ "sourceCodeHash": "0xd93a8d5de6fd89ebf503976511065f0c2414814affdb908f26a867ffdd0f9fbe" }, "src/L2/OptimismMintableERC721Factory.sol:OptimismMintableERC721Factory": { - "initCodeHash": "0x7f30a69f1f31bb6380a79c744a32eeef7b39a3adaef707b22e059c3089c5efcd", + "initCodeHash": "0x50452b7514964a4c9cb75963ad5439d08d7b4e7908a41d555c9d380e17c85d55", "sourceCodeHash": "0x934698844664ca01b0898fc4fafd74d9685977dd141e71823c9ef7501cee505e" }, "src/L2/OptimismSuperchainERC20.sol:OptimismSuperchainERC20": { @@ -260,7 +260,7 @@ "sourceCodeHash": "0xd6683fe9be4019d34249ada5a4de3e597f1bd9cd473a89f6eff8f749a0b0e978" }, "src/universal/OptimismMintableERC20.sol:OptimismMintableERC20": { - "initCodeHash": "0xa26cd5b88cb1d4e5cef0422b98ff4c33a3bbfa33479ebd8632d095bb2c633ca7", + "initCodeHash": "0x3c85eed0d017dca8eda6396aa842ddc12492587b061e8c756a8d32c4610a9658", "sourceCodeHash": "0x7023665d461f173417d932b55010b8f6c34f2bbaf56cfe4e1b15862c08cbcaac" }, "src/universal/OptimismMintableERC20Factory.sol:OptimismMintableERC20Factory": { diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol index 1df2b9fbbe8c8..e25af33667a5b 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol @@ -24,7 +24,6 @@ import { IProxyAdmin } from "interfaces/universal/IProxyAdmin.sol"; import { IDisputeGameFactory } from "interfaces/dispute/IDisputeGameFactory.sol"; import { ISuperchainConfig } from "interfaces/L1/ISuperchainConfig.sol"; import { IOptimismPortal2 as IOptimismPortal } from "interfaces/L1/IOptimismPortal2.sol"; -import { IOptimismPortalInterop } from "interfaces/L1/IOptimismPortalInterop.sol"; import { ISystemConfig } from "interfaces/L1/ISystemConfig.sol"; import { IL1CrossDomainMessenger } from "interfaces/L1/IL1CrossDomainMessenger.sol"; import { IL1ERC721Bridge } from "interfaces/L1/IL1ERC721Bridge.sol"; diff --git a/packages/contracts-bedrock/test/vendor/Initializable.t.sol b/packages/contracts-bedrock/test/vendor/Initializable.t.sol index 884d3b690a206..fc11f81138498 100644 --- a/packages/contracts-bedrock/test/vendor/Initializable.t.sol +++ b/packages/contracts-bedrock/test/vendor/Initializable.t.sol @@ -400,6 +400,7 @@ contract Initializer_Test is CommonTest { excludes[j++] = "src/dispute/SuperPermissionedDisputeGame.sol"; excludes[j++] = "src/dispute/zk/ZKDisputeGame.sol"; // TODO: Eventually remove this exclusion. Same reason as above dispute contracts. + // TODO(#19709): Eventually remove this exclusion. Same reason as above dispute contracts. excludes[j++] = "src/L1/OptimismPortalInterop.sol"; // L2 contract initialization is tested in Predeploys.t.sol excludes[j++] = "src/L2/*"; From ead0d4df95b0c2bca27dd25d5fa10b36dca9f64f Mon Sep 17 00:00:00 2001 From: Rodrigo Araujo Date: Wed, 1 Apr 2026 13:14:22 -0700 Subject: [PATCH 18/34] fix: normalize INTEROP feature in SystemConfig fuzz test --- packages/contracts-bedrock/test/L1/SystemConfig.t.sol | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/contracts-bedrock/test/L1/SystemConfig.t.sol b/packages/contracts-bedrock/test/L1/SystemConfig.t.sol index 376f063e62d39..b1a114c683941 100644 --- a/packages/contracts-bedrock/test/L1/SystemConfig.t.sol +++ b/packages/contracts-bedrock/test/L1/SystemConfig.t.sol @@ -893,6 +893,12 @@ contract SystemConfig_IsFeatureEnabled_Test is SystemConfig_TestInit { systemConfig.setFeature(Features.CUSTOM_GAS_TOKEN, false); } + // Normalize INTEROP to avoid environment-dependent state + if (systemConfig.isFeatureEnabled(Features.INTEROP)) { + vm.prank(address(systemConfig.proxyAdmin())); + systemConfig.setFeature(Features.INTEROP, false); + } + assertFalse(systemConfig.isFeatureEnabled(_feature)); } From 87230bb5932d0e899c73b40a039c398a974e9b87 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 11:32:33 -0400 Subject: [PATCH 19/34] chore: add references for OptimismPortalInterop removal issue --- .../interfaces/L1/opcm/IOPContractsManagerContainer.sol | 1 + .../src/L1/opcm/OPContractsManagerContainer.sol | 1 + .../test/L1/opcm/OPContractsManagerContainer.t.sol | 1 + .../test/L1/opcm/OPContractsManagerUtils.t.sol | 1 + packages/contracts-bedrock/test/vendor/Initializable.t.sol | 2 +- 5 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/interfaces/L1/opcm/IOPContractsManagerContainer.sol b/packages/contracts-bedrock/interfaces/L1/opcm/IOPContractsManagerContainer.sol index 03ba33e9fce9f..a249073962f65 100644 --- a/packages/contracts-bedrock/interfaces/L1/opcm/IOPContractsManagerContainer.sol +++ b/packages/contracts-bedrock/interfaces/L1/opcm/IOPContractsManagerContainer.sol @@ -10,6 +10,7 @@ interface IOPContractsManagerContainer { address resolvedDelegateProxy; } + // TODO(#19709): Remove the reference to optimismPortalInteropImpl when we remove OptimismPortalInterop from src struct Implementations { address superchainConfigImpl; address protocolVersionsImpl; diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerContainer.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerContainer.sol index 5315096a0eeed..dbbe550be7c31 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerContainer.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerContainer.sol @@ -21,6 +21,7 @@ contract OPContractsManagerContainer { } /// @notice Addresses of the implementation contracts. + // TODO(#19709): Remove the reference to optimismPortalInteropImpl when we remove OptimismPortalInterop from src struct Implementations { address superchainConfigImpl; address protocolVersionsImpl; diff --git a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerContainer.t.sol b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerContainer.t.sol index 6ce881b617171..6f3e8a91d953c 100644 --- a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerContainer.t.sol +++ b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerContainer.t.sol @@ -25,6 +25,7 @@ contract OPContractsManagerContainer_TestInit is Test { resolvedDelegateProxy: makeAddr("resolvedDelegateProxy") }); + // TODO(#19709): Remove the reference to OptimismPortalImpl when we remove OptimismPortalInterop from src implementations = OPContractsManagerContainer.Implementations({ superchainConfigImpl: makeAddr("superchainConfigImpl"), protocolVersionsImpl: makeAddr("protocolVersionsImpl"), diff --git a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerUtils.t.sol b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerUtils.t.sol index c725605e9782f..9840c5017350b 100644 --- a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerUtils.t.sol +++ b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerUtils.t.sol @@ -100,6 +100,7 @@ contract OPContractsManagerUtils_TestInit is Test { }); // Set up implementations - use real StorageSetter, mocks for the rest. + // TODO(#19709): Remove the reference to OptimismPortalImpl when we remove OptimismPortalInterop from src implementations = OPContractsManagerContainer.Implementations({ superchainConfigImpl: makeAddr("superchainConfigImpl"), protocolVersionsImpl: makeAddr("protocolVersionsImpl"), diff --git a/packages/contracts-bedrock/test/vendor/Initializable.t.sol b/packages/contracts-bedrock/test/vendor/Initializable.t.sol index fc11f81138498..a6137501368b7 100644 --- a/packages/contracts-bedrock/test/vendor/Initializable.t.sol +++ b/packages/contracts-bedrock/test/vendor/Initializable.t.sol @@ -400,7 +400,7 @@ contract Initializer_Test is CommonTest { excludes[j++] = "src/dispute/SuperPermissionedDisputeGame.sol"; excludes[j++] = "src/dispute/zk/ZKDisputeGame.sol"; // TODO: Eventually remove this exclusion. Same reason as above dispute contracts. - // TODO(#19709): Eventually remove this exclusion. Same reason as above dispute contracts. + // TODO(#19709): Remove this exclusion as part of the OptimismPortalInterop removal excludes[j++] = "src/L1/OptimismPortalInterop.sol"; // L2 contract initialization is tested in Predeploys.t.sol excludes[j++] = "src/L2/*"; From cc255cee1dd4468021bc97e574ce791a658d2d82 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 11:35:13 -0400 Subject: [PATCH 20/34] chore: remove stale comment about superRootsActive --- .../contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol index 2016ec2ef7065..8a5a75ab54ce7 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol @@ -271,7 +271,6 @@ contract OPContractsManagerMigrator is OPContractsManagerUtilsCaller { } // Migrate the portal to the new ETHLockbox and AnchorStateRegistry. - // This also sets superRootsActive = true. // NOTE: This requires the portal to already be upgraded to the interop version // (OptimismPortal2). If the portal is not on the interop version, this call will // fail. From d7023aa66bd7381ac00bd1de938ac34dda26340b Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 12:56:02 -0400 Subject: [PATCH 21/34] fix(portal): bump OptimismPortal2 version and fix OPCM_V2 interop upgrade ordering Bump OptimismPortal2.version() from 5.4.0 to 5.5.0 so OPCM_V2 can upgrade from OptimismPortalInterop (5.4.1+interop) without triggering the DowngradeNotAllowed check. In OPContractsManagerV2._apply(), set the ETH_LOCKBOX feature on SystemConfig before upgrading the portal. Unlike OptimismPortalInterop which blindly sets the ethLockbox, OptimismPortal2.initialize() calls _assertValidLockboxState() which requires the ETH_LOCKBOX feature flag and ethLockbox address to be consistent. Update superRootsActive tests to support both OPCM_V2 (gameType mock) and legacy (slot 63 manipulation) paths via _enableSuperRootBehavior helper. --- .../snapshots/semver-lock.json | 8 ++--- .../src/L1/OptimismPortal2.sol | 4 +-- .../src/L1/opcm/OPContractsManagerV2.sol | 10 ++++++- .../test/L1/OptimismPortal2.t.sol | 29 +++++++++++-------- .../test/L1/opcm/OPContractsManagerV2.t.sol | 4 +++ 5 files changed, 36 insertions(+), 19 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 3efdb48ce5b6d..7f5abf1bb1aa9 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -28,8 +28,8 @@ "sourceCodeHash": "0x7c0cb663f82b07da8dec8a7497cf2fa56a335fb5bdc57b612c86462f8527d4d5" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { - "initCodeHash": "0x4157a5bd1509923a383d0a815d474e29cd80555f7c9b02f05484f74f04fb0794", - "sourceCodeHash": "0x6f657dd2fefe537140d31bbfcfec644783819afa7db7100fdee1fe8d7ac52eec" + "initCodeHash": "0x912df422c3da23a9136af3f5b7188460455c5c94f91edd930794283688e44590", + "sourceCodeHash": "0x300a689fbd2ca5aac60eb1c9e02d34498e504f27810b1a0cb50d09e32ed0193e" }, "src/L1/OptimismPortalInterop.sol:OptimismPortalInterop": { "initCodeHash": "0xa7262e160851c0de73b96943a28141ea23d3337494f1c507ecfc66d8a8d83024", @@ -48,8 +48,8 @@ "sourceCodeHash": "0xb09cb2f7cbde8585fad5c5beb6811fa9044b156b4203da8005d3f6a7a68c30b2" }, "src/L1/opcm/OPContractsManagerV2.sol:OPContractsManagerV2": { - "initCodeHash": "0xd87b10a36b6e7a69fac4199651d118ca7841d1175faa0e954ade9f8b65577aa5", - "sourceCodeHash": "0x942356e27feee545ae5f07ce81dde29694a1b06d599fb47e44fa0b4d9a7107a2" + "initCodeHash": "0x177c9727d6a6a450e279becd2a14103401ab3b177d820cc2af887aa3fe01c1f6", + "sourceCodeHash": "0x26aee19609bc0409d15909ea0afbae25e7755919bea2cd947ad9583f205fd6de" }, "src/L2/BaseFeeVault.sol:BaseFeeVault": { "initCodeHash": "0xf1fb169c6dd4eceb5cec6ed6dfa3affc45970e5a01e00827d06af1f9e8df026d", diff --git a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol index f02b6029f5f62..e85ac88127f90 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol @@ -231,9 +231,9 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase error OptimismPortal_InvalidLockboxState(); /// @notice Semantic version. - /// @custom:semver 5.4.0 + /// @custom:semver 5.5.0 function version() public pure virtual returns (string memory) { - return "5.4.0"; + return "5.5.0"; } /// @param _proofMaturityDelaySeconds The proof maturity delay in seconds. diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol index e25af33667a5b..a1d3d151521b4 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerV2.sol @@ -782,11 +782,19 @@ contract OPContractsManagerV2 is ISemver, OPContractsManagerUtilsCaller { ); // Update the OptimismPortal. + // When interop is enabled, the ETH_LOCKBOX feature must be set on SystemConfig before + // upgrading the portal. Unlike OptimismPortalInterop which blindly sets the ethLockbox, + // OptimismPortal2.initialize() calls _assertValidLockboxState() which requires the + // ETH_LOCKBOX feature flag and ethLockbox address to be consistent. Otherwise we end up in a state where we + // have a lockbox and the feature flag is off if (isDevFeatureEnabled(DevFeatures.OPTIMISM_PORTAL_INTEROP)) { + if (!_cts.systemConfig.isFeatureEnabled(Features.ETH_LOCKBOX)) { + _cts.systemConfig.setFeature(Features.ETH_LOCKBOX, true); + } _upgrade( _cts.proxyAdmin, address(_cts.optimismPortal), - impls.optimismPortalInteropImpl, + impls.optimismPortalImpl, abi.encodeCall( IOptimismPortal.initialize, (_cts.systemConfig, _cts.anchorStateRegistry, _cts.ethLockbox) ) diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index f35a832c7a3ce..b4775ece56fff 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -788,6 +788,20 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test /// @title OptimismPortal2_ProveWithdrawalTransaction_Test /// @notice Test contract for OptimismPortal2 `proveWithdrawalTransaction` function. contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_TestInit { + /// @notice Enables super root behavior on the portal for testing. + /// Uses gameType mock for OptimismPortal2 (OPCM_V2) or slot manipulation for OptimismPortalInterop. + function _enableSuperRoots() internal { + if (isDevFeatureEnabled(DevFeatures.OPCM_V2)) { + // OptimismPortal2 uses stateless GameTypes.isSuperGame() check. + vm.mockCall(address(game), abi.encodeCall(game.gameType, ()), abi.encode(GameTypes.SUPER_CANNON_KONA)); + } else { + // Legacy OptimismPortalInterop uses superRootsActive boolean at slot 63, offset 20. + bytes32 slot = bytes32(uint256(63)); + bytes32 existingValue = vm.load(address(optimismPortal2), slot); + vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); + } + } + /// @notice Tests that `proveWithdrawalTransaction` reverts when paused. function test_proveWithdrawalTransaction_paused_reverts() external { vm.startPrank(optimismPortal2.guardian()); @@ -1056,10 +1070,7 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test function test_proveWithdrawalTransaction_superRootsVersionBadChainId_reverts() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); - // Enable superRootsActive on the OptimismPortalInterop impl (slot 63, offset 20). - bytes32 slot = bytes32(uint256(63)); - bytes32 existingValue = vm.load(address(optimismPortal2), slot); - vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); + _enableSuperRoots(); // Mock rootClaimByChainId to revert with UnknownChainId. vm.mockCallRevert( @@ -1083,10 +1094,7 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test function test_proveWithdrawalTransaction_superRootsVersionBadOutputRootProof_reverts() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); - // Enable superRootsActive on the OptimismPortalInterop impl (slot 63, offset 20). - bytes32 slot = bytes32(uint256(63)); - bytes32 existingValue = vm.load(address(optimismPortal2), slot); - vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); + _enableSuperRoots(); // Mock rootClaimByChainId to return a different output root (wrong one). bytes32 wrongOutputRoot = keccak256(abi.encode(_outputRoot)); @@ -1111,10 +1119,7 @@ contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_Test function test_proveWithdrawalTransaction_superRootsVersion_succeeds() external { skipIfDevFeatureDisabled(DevFeatures.OPTIMISM_PORTAL_INTEROP); - // Enable superRootsActive on the OptimismPortalInterop impl (slot 63, offset 20). - bytes32 slot = bytes32(uint256(63)); - bytes32 existingValue = vm.load(address(optimismPortal2), slot); - vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); + _enableSuperRoots(); // Mock rootClaimByChainId to return the correct output root. vm.mockCall( diff --git a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol index fa431a57fb79a..d2fde0666755c 100644 --- a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol +++ b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol @@ -2052,6 +2052,10 @@ contract OPContractsManagerV2_Migrate_Test is OPContractsManagerV2_TestInit { /// TODO: Can we use the INTEROP flag for these checks + assertTrue( + address(chainContracts1.systemConfig) == address(chainContracts2.systemConfig), + "system configs not the same" + ); // Check that the ETH_LOCKBOX feature is enabled on both SystemConfigs. assertTrue( chainContracts1.systemConfig.isFeatureEnabled(Features.ETH_LOCKBOX), From 5d033f1df9fded102675479f4473ab37eb8570cd Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 13:10:09 -0400 Subject: [PATCH 22/34] chore: update checks for superRootActie to be for the INTEROP feature flag --- .../test/L1/opcm/OPContractsManagerV2.t.sol | 21 +++++++------------ 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol index d2fde0666755c..b5e0a9f92fe34 100644 --- a/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol +++ b/packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol @@ -2040,21 +2040,14 @@ contract OPContractsManagerV2_Migrate_Test is OPContractsManagerV2_TestInit { assertTrue(newLockbox.authorizedPortals(portal1), "ETHLockbox does not have portal 1 authorized"); assertTrue(newLockbox.authorizedPortals(portal2), "ETHLockbox does not have portal 2 authorized"); - // Check that superRootsActive is true on both portals. - // assertTrue( - // portal1.superRootsActive(), - // "Portal 1 superRootsActive should be true" - // ); - // assertTrue( - // portal2.superRootsActive(), - // "Portal 2 superRootsActive should be true" - // ); - - /// TODO: Can we use the INTEROP flag for these checks - + // Check that the ETH_LOCKBOX feature is enabled on both SystemConfigs. + assertTrue( + chainContracts1.systemConfig.isFeatureEnabled(Features.INTEROP), + "Chain 1 ETH_LOCKBOX feature should be enabled" + ); assertTrue( - address(chainContracts1.systemConfig) == address(chainContracts2.systemConfig), - "system configs not the same" + chainContracts2.systemConfig.isFeatureEnabled(Features.INTEROP), + "Chain 2 ETH_LOCKBOX feature should be enabled" ); // Check that the ETH_LOCKBOX feature is enabled on both SystemConfigs. assertTrue( From eb9b7902e64dc75813cb50313c2ca380b151b5f1 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 13:30:13 -0400 Subject: [PATCH 23/34] fix: standard validator assertions to be for Portal2 instead of PortalInterop when OPCM_V2 and Interop feature flags enabled --- .../snapshots/semver-lock.json | 6 ++-- .../OPContractsManagerStandardValidator.sol | 34 +++++++++++++------ 2 files changed, 27 insertions(+), 13 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 7f5abf1bb1aa9..0c0ce1411d954 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -24,8 +24,8 @@ "sourceCodeHash": "0x9d16e900a764cd7f19db3656cf7a9e555b23b9c7e018641ed21566657847a314" }, "src/L1/OPContractsManagerStandardValidator.sol:OPContractsManagerStandardValidator": { - "initCodeHash": "0x233f5f4b424bc2aabe170cf758c9ff80841ceab4c78e37edfe3a7bc660c5577d", - "sourceCodeHash": "0x7c0cb663f82b07da8dec8a7497cf2fa56a335fb5bdc57b612c86462f8527d4d5" + "initCodeHash": "0xabd9c8a94342957b4761daf6a6c221cdb5ea32b9f0a0b018b631dc858da88ce0", + "sourceCodeHash": "0xa73e96f9e16dd37964530a4a630b97222de780f881fdac522f6f5b9af4074133" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { "initCodeHash": "0x912df422c3da23a9136af3f5b7188460455c5c94f91edd930794283688e44590", @@ -49,7 +49,7 @@ }, "src/L1/opcm/OPContractsManagerV2.sol:OPContractsManagerV2": { "initCodeHash": "0x177c9727d6a6a450e279becd2a14103401ab3b177d820cc2af887aa3fe01c1f6", - "sourceCodeHash": "0x26aee19609bc0409d15909ea0afbae25e7755919bea2cd947ad9583f205fd6de" + "sourceCodeHash": "0x263e1d09fe1c1d7d4ed1f557866441bb256c82983815cb63c29f4d6a7ea73e88" }, "src/L2/BaseFeeVault.sol:BaseFeeVault": { "initCodeHash": "0xf1fb169c6dd4eceb5cec6ed6dfa3affc45970e5a01e00827d06af1f9e8df026d", diff --git a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol index 7310b8d0ed3c9..aa78287957813 100644 --- a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol +++ b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol @@ -40,8 +40,8 @@ import { IBigStepper } from "interfaces/dispute/IBigStepper.sol"; /// before and after an upgrade. contract OPContractsManagerStandardValidator is ISemver { /// @notice The semantic version of the OPContractsManagerStandardValidator contract. - /// @custom:semver 2.5.0 - string public constant version = "2.5.0"; + /// @custom:semver 2.6.0 + string public constant version = "2.6.0"; /// @notice The SuperchainConfig contract. ISuperchainConfig public superchainConfig; @@ -438,14 +438,28 @@ contract OPContractsManagerStandardValidator is ISemver { IOptimismPortal2 _portal = IOptimismPortal2(payable(_sysCfg.optimismPortal())); if (DevFeatures.isDevFeatureEnabled(devFeatureBitmap, DevFeatures.OPTIMISM_PORTAL_INTEROP)) { - _errors = internalRequire( - LibString.eq(getVersion(address(_portal)), string.concat(getVersion(optimismPortalInteropImpl))), - "PORTAL-10", - _errors - ); - _errors = internalRequire( - getProxyImplementation(_admin, address(_portal)) == optimismPortalInteropImpl, "PORTAL-20", _errors - ); + if (DevFeatures.isDevFeatureEnabled(devFeatureBitmap, DevFeatures.OPCM_V2)) { + _errors = internalRequire( + LibString.eq(getVersion(address(_portal)), string.concat(getVersion(optimismPortalImpl))), + "PORTAL-10", + _errors + ); + } else { + _errors = internalRequire( + LibString.eq(getVersion(address(_portal)), string.concat(getVersion(optimismPortalInteropImpl))), + "PORTAL-10", + _errors + ); + } + if (DevFeatures.isDevFeatureEnabled(devFeatureBitmap, DevFeatures.OPCM_V2)) { + _errors = internalRequire( + getProxyImplementation(_admin, address(_portal)) == optimismPortalImpl, "PORTAL-20", _errors + ); + } else { + _errors = internalRequire( + getProxyImplementation(_admin, address(_portal)) == optimismPortalInteropImpl, "PORTAL-20", _errors + ); + } } else { _errors = internalRequire( LibString.eq(getVersion(address(_portal)), getVersion(optimismPortalImpl)), "PORTAL-10", _errors From 29b366121085c221829ce56c34884e57cbd23750 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 13:36:41 -0400 Subject: [PATCH 24/34] fix: change event params back to non-indexed versions --- .../contracts-bedrock/interfaces/L1/IOptimismPortal2.sol | 6 +++--- .../contracts-bedrock/snapshots/abi/OptimismPortal2.json | 6 +++--- packages/contracts-bedrock/snapshots/semver-lock.json | 4 ++-- packages/contracts-bedrock/src/L1/OptimismPortal2.sol | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol index ab8c9bc714558..1202794af89ae 100644 --- a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol +++ b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol @@ -43,9 +43,9 @@ interface IOptimismPortal2 is IProxyAdminOwnedBase { event Initialized(uint8 version); event ETHMigrated(address indexed lockbox, uint256 balance); event PortalMigrated( - IETHLockbox indexed oldLockbox, - IETHLockbox indexed newLockbox, - IAnchorStateRegistry indexed oldAnchorStateRegistry, + IETHLockbox oldLockbox, + IETHLockbox newLockbox, + IAnchorStateRegistry oldAnchorStateRegistry, IAnchorStateRegistry newAnchorStateRegistry ); event TransactionDeposited(address indexed from, address indexed to, uint256 indexed version, bytes opaqueData); diff --git a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json index 7cf48deab9fb3..ebefbefcc9578 100644 --- a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json +++ b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json @@ -693,19 +693,19 @@ "anonymous": false, "inputs": [ { - "indexed": true, + "indexed": false, "internalType": "contract IETHLockbox", "name": "oldLockbox", "type": "address" }, { - "indexed": true, + "indexed": false, "internalType": "contract IETHLockbox", "name": "newLockbox", "type": "address" }, { - "indexed": true, + "indexed": false, "internalType": "contract IAnchorStateRegistry", "name": "oldAnchorStateRegistry", "type": "address" diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 0c0ce1411d954..39b6e4864f792 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -28,8 +28,8 @@ "sourceCodeHash": "0xa73e96f9e16dd37964530a4a630b97222de780f881fdac522f6f5b9af4074133" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { - "initCodeHash": "0x912df422c3da23a9136af3f5b7188460455c5c94f91edd930794283688e44590", - "sourceCodeHash": "0x300a689fbd2ca5aac60eb1c9e02d34498e504f27810b1a0cb50d09e32ed0193e" + "initCodeHash": "0x25efe4afd106a1e994f8ef92e7fda72a80d71edeb347d488f1cb0be59c760835", + "sourceCodeHash": "0xb14ab78410b24f848e2c56f13b76cc34df64b5c9fd845a6a64a1aea9dc652886" }, "src/L1/OptimismPortalInterop.sol:OptimismPortalInterop": { "initCodeHash": "0xa7262e160851c0de73b96943a28141ea23d3337494f1c507ecfc66d8a8d83024", diff --git a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol index e85ac88127f90..5d700365fd7d3 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol @@ -136,9 +136,9 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase /// @param oldAnchorStateRegistry The anchorStateRegistry used before the migration /// @param newAnchorStateRegistry The anchorStateRegistry used after the migration event PortalMigrated( - IETHLockbox indexed oldLockbox, - IETHLockbox indexed newLockbox, - IAnchorStateRegistry indexed oldAnchorStateRegistry, + IETHLockbox oldLockbox, + IETHLockbox newLockbox, + IAnchorStateRegistry oldAnchorStateRegistry, IAnchorStateRegistry newAnchorStateRegistry ); From c79d891b75e292e3192d4d293fe3369f2fc3691e Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 13:43:49 -0400 Subject: [PATCH 25/34] chore: clean up branching logic for portal/opcm feature flags --- .../src/L1/OPContractsManagerStandardValidator.sol | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol index aa78287957813..284ec350b2bd0 100644 --- a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol +++ b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol @@ -444,18 +444,15 @@ contract OPContractsManagerStandardValidator is ISemver { "PORTAL-10", _errors ); + _errors = internalRequire( + getProxyImplementation(_admin, address(_portal)) == optimismPortalImpl, "PORTAL-20", _errors + ); } else { _errors = internalRequire( LibString.eq(getVersion(address(_portal)), string.concat(getVersion(optimismPortalInteropImpl))), "PORTAL-10", _errors ); - } - if (DevFeatures.isDevFeatureEnabled(devFeatureBitmap, DevFeatures.OPCM_V2)) { - _errors = internalRequire( - getProxyImplementation(_admin, address(_portal)) == optimismPortalImpl, "PORTAL-20", _errors - ); - } else { _errors = internalRequire( getProxyImplementation(_admin, address(_portal)) == optimismPortalInteropImpl, "PORTAL-20", _errors ); From f830df49e618471eb02f877296539aee6def6480 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 14:06:53 -0400 Subject: [PATCH 26/34] chore: refactor the checks in assertValidPortal --- .../snapshots/semver-lock.json | 4 +- .../OPContractsManagerStandardValidator.sol | 44 ++++++++----------- 2 files changed, 20 insertions(+), 28 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 39b6e4864f792..1036699318521 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -24,8 +24,8 @@ "sourceCodeHash": "0x9d16e900a764cd7f19db3656cf7a9e555b23b9c7e018641ed21566657847a314" }, "src/L1/OPContractsManagerStandardValidator.sol:OPContractsManagerStandardValidator": { - "initCodeHash": "0xabd9c8a94342957b4761daf6a6c221cdb5ea32b9f0a0b018b631dc858da88ce0", - "sourceCodeHash": "0xa73e96f9e16dd37964530a4a630b97222de780f881fdac522f6f5b9af4074133" + "initCodeHash": "0x0f526653885529a95b251f0854fe36ebcfebe54e05c264275fd4488538222d6f", + "sourceCodeHash": "0x47e723a0e42204faaec0ad27a5fc4b5ee78c915343416108c3a0674396888e3b" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { "initCodeHash": "0x25efe4afd106a1e994f8ef92e7fda72a80d71edeb347d488f1cb0be59c760835", diff --git a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol index 284ec350b2bd0..159c8c38647de 100644 --- a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol +++ b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol @@ -425,6 +425,11 @@ contract OPContractsManagerStandardValidator is ISemver { return _errors; } + function isOPCMV1AndInterop(bytes32 _devFeatureBitmap) internal pure returns (bool) { + return DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPTIMISM_PORTAL_INTEROP) + && !DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPCM_V2); + } + /// @notice Asserts that the OptimismPortal contract is valid. function assertValidOptimismPortal( string memory _errors, @@ -437,35 +442,22 @@ contract OPContractsManagerStandardValidator is ISemver { { IOptimismPortal2 _portal = IOptimismPortal2(payable(_sysCfg.optimismPortal())); - if (DevFeatures.isDevFeatureEnabled(devFeatureBitmap, DevFeatures.OPTIMISM_PORTAL_INTEROP)) { - if (DevFeatures.isDevFeatureEnabled(devFeatureBitmap, DevFeatures.OPCM_V2)) { - _errors = internalRequire( - LibString.eq(getVersion(address(_portal)), string.concat(getVersion(optimismPortalImpl))), - "PORTAL-10", - _errors - ); - _errors = internalRequire( - getProxyImplementation(_admin, address(_portal)) == optimismPortalImpl, "PORTAL-20", _errors - ); - } else { - _errors = internalRequire( - LibString.eq(getVersion(address(_portal)), string.concat(getVersion(optimismPortalInteropImpl))), - "PORTAL-10", - _errors - ); - _errors = internalRequire( - getProxyImplementation(_admin, address(_portal)) == optimismPortalInteropImpl, "PORTAL-20", _errors - ); - } + // Use the OptimismPortalInteropImpl only when OPTIMISM_PORTAL_INTEROP is enabled without OPCM_V2 (legacy path). + // With OPCM_V2, the portal is always optimismPortalImpl regardless of INTEROP. + address expectedPortalImpl; + if (isOPCMV1AndInterop(devFeatureBitmap)) { + expectedPortalImpl = optimismPortalInteropImpl; } else { - _errors = internalRequire( - LibString.eq(getVersion(address(_portal)), getVersion(optimismPortalImpl)), "PORTAL-10", _errors - ); - _errors = internalRequire( - getProxyImplementation(_admin, address(_portal)) == optimismPortalImpl, "PORTAL-20", _errors - ); + expectedPortalImpl = optimismPortalImpl; } + _errors = internalRequire( + LibString.eq(getVersion(address(_portal)), getVersion(expectedPortalImpl)), "PORTAL-10", _errors + ); + _errors = internalRequire( + getProxyImplementation(_admin, address(_portal)) == expectedPortalImpl, "PORTAL-20", _errors + ); + IDisputeGameFactory _dgf = IDisputeGameFactory(_sysCfg.disputeGameFactory()); _errors = internalRequire(address(_portal.disputeGameFactory()) == address(_dgf), "PORTAL-30", _errors); _errors = internalRequire(address(_portal.systemConfig()) == address(_sysCfg), "PORTAL-40", _errors); From 62f0653244c1ecba8d44f18ca8feec230337b571 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 14:18:22 -0400 Subject: [PATCH 27/34] chore: organize functions by visibility --- .../contracts-bedrock/snapshots/semver-lock.json | 2 +- .../src/L1/OPContractsManagerStandardValidator.sol | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 1036699318521..2f0a8e94fe0b5 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -25,7 +25,7 @@ }, "src/L1/OPContractsManagerStandardValidator.sol:OPContractsManagerStandardValidator": { "initCodeHash": "0x0f526653885529a95b251f0854fe36ebcfebe54e05c264275fd4488538222d6f", - "sourceCodeHash": "0x47e723a0e42204faaec0ad27a5fc4b5ee78c915343416108c3a0674396888e3b" + "sourceCodeHash": "0x351071d455ff5af83bc0edb52fd6a24a5e6917191e5443eb331fbf8dea21efb6" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { "initCodeHash": "0x25efe4afd106a1e994f8ef92e7fda72a80d71edeb347d488f1cb0be59c760835", diff --git a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol index 159c8c38647de..a77811a0bc7ac 100644 --- a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol +++ b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol @@ -425,11 +425,6 @@ contract OPContractsManagerStandardValidator is ISemver { return _errors; } - function isOPCMV1AndInterop(bytes32 _devFeatureBitmap) internal pure returns (bool) { - return DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPTIMISM_PORTAL_INTEROP) - && !DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPCM_V2); - } - /// @notice Asserts that the OptimismPortal contract is valid. function assertValidOptimismPortal( string memory _errors, @@ -770,6 +765,13 @@ contract OPContractsManagerStandardValidator is ISemver { return errors_; } + /// @notice Helper function to clean up branching logic in the assertValidOptimismPortal block where + /// The PortalImplementation address is conditional based on the feature flags currently set + function isOPCMV1AndInterop(bytes32 _devFeatureBitmap) internal pure returns (bool) { + return DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPTIMISM_PORTAL_INTEROP) + && !DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPCM_V2); + } + /// @notice Returns true if the game type is a super game type. function isSuperGame(GameType _gameType) internal pure returns (bool) { return GameTypes.isSuperGame(_gameType); From 35eb0473b935b090edc54722183b403586fbc394 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 14:30:53 -0400 Subject: [PATCH 28/34] fix: implement the _assertValidInteropState helper and add to initalize --- packages/contracts-bedrock/src/L1/OptimismPortal2.sol | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol index 5d700365fd7d3..21ebb0d89ca7b 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortal2.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortal2.sol @@ -198,6 +198,9 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase /// @notice Thrown when a withdrawal has not been proven against a valid dispute game. error OptimismPortal_InvalidDisputeGame(); + /// @notice Thrown when Interop is set without the lockbox feature flag + error OptimismPortal_InvalidInteropState(); + /// @notice Thrown when a withdrawal has not been proven against a valid merkle proof. error OptimismPortal_InvalidMerkleProof(); @@ -263,6 +266,7 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase ethLockbox = _ethLockbox; } + _assertValidInteropState(); // Assert that the lockbox state is valid. _assertValidLockboxState(); @@ -749,10 +753,11 @@ contract OptimismPortal2 is Initializable, ResourceMetering, ReinitializableBase } } + /// @notice Asserts the ETHLockbox feature flag must be set if INTEROP is set function _assertValidInteropState() internal view { - /// TODO - /// interop on - /// lockbox system feature set + if (systemConfig.isFeatureEnabled(Features.INTEROP) && !systemConfig.isFeatureEnabled(Features.ETH_LOCKBOX)) { + revert OptimismPortal_InvalidInteropState(); + } } /// @notice Asserts that the ETHLockbox is set/unset correctly depending on the feature flag. From 2b6fcec44ce1557e04d6fc667e50f2f26d100ca4 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 14:40:49 -0400 Subject: [PATCH 29/34] fix: update assert for INTEROP flag instead of superroots active --- packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index b4775ece56fff..04e761e791b9c 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -769,7 +769,7 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test assertEq(address(optimismPortal2.ethLockbox()), _newLockbox); assertEq(address(optimismPortal2.anchorStateRegistry()), _newAnchorStateRegistry); - // assertTrue(optimismPortal2.superRootsActive()); /// TODO: Is checking the INTEROP feature flag sufficient + assertTrue(systemConfig.isFeatureEnabled(Features.INTEROP)); } /// @notice Tests that `migrateToSharedDisputeGame` reverts when the system is paused. From 1cfd88244484bcdbc2f1029811801563186af171 Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 14:42:31 -0400 Subject: [PATCH 30/34] chore: add clarification to the comment about the prerequisites to the portal migration functions --- .../src/L1/opcm/OPContractsManagerMigrator.sol | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol index 8a5a75ab54ce7..0f0ef8e3c796c 100644 --- a/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol +++ b/packages/contracts-bedrock/src/L1/opcm/OPContractsManagerMigrator.sol @@ -272,7 +272,8 @@ contract OPContractsManagerMigrator is OPContractsManagerUtilsCaller { // Migrate the portal to the new ETHLockbox and AnchorStateRegistry. // NOTE: This requires the portal to already be upgraded to the interop version - // (OptimismPortal2). If the portal is not on the interop version, this call will + // (OptimismPortal2). And it requires the feature flag for INTEROP to be enabled + // If the portal is not on the interop version, this call will // fail. portal.migrateToSharedDisputeGame(_newLockbox, _newASR); } From 1ce8dde0860c4486c9ee48986a069a71c275c71f Mon Sep 17 00:00:00 2001 From: steven Date: Thu, 2 Apr 2026 16:47:21 -0400 Subject: [PATCH 31/34] chore: add TODO issue tracking for follow up removal --- .../contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol | 1 + .../scripts/deploy/DeployImplementations.s.sol | 2 ++ packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol | 1 + 3 files changed, 4 insertions(+) diff --git a/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol b/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol index a708cece68a0c..dad8ff3e72cf3 100644 --- a/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol +++ b/packages/contracts-bedrock/interfaces/L1/IOptimismPortalInterop.sol @@ -11,6 +11,7 @@ import { IAnchorStateRegistry } from "interfaces/dispute/IAnchorStateRegistry.so import { IProxyAdminOwnedBase } from "interfaces/universal/IProxyAdminOwnedBase.sol"; import { IETHLockbox } from "interfaces/L1/IETHLockbox.sol"; +/// TODO(#19709) remove this file and migrate fully to the OptimismPortal2 interface IOptimismPortalInterop is IProxyAdminOwnedBase { error ContentLengthMismatch(); error EmptyItem(); diff --git a/packages/contracts-bedrock/scripts/deploy/DeployImplementations.s.sol b/packages/contracts-bedrock/scripts/deploy/DeployImplementations.s.sol index b2c4a44fedb05..f1630f86eb054 100644 --- a/packages/contracts-bedrock/scripts/deploy/DeployImplementations.s.sol +++ b/packages/contracts-bedrock/scripts/deploy/DeployImplementations.s.sol @@ -370,6 +370,8 @@ contract DeployImplementations is Script { _output.optimismPortalImpl = impl; } + + /// TODO(#19709) remove this file and migrate fully to the OptimismPortal2 function deployOptimismPortalInteropImpl(Input memory _input, Output memory _output) private { uint256 proofMaturityDelaySeconds = _input.proofMaturityDelaySeconds; IOptimismPortalInterop impl = IOptimismPortalInterop( diff --git a/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol b/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol index 21c632d0376fb..81292373d1142 100644 --- a/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol +++ b/packages/contracts-bedrock/src/L1/OptimismPortalInterop.sol @@ -32,6 +32,7 @@ import { ISuperchainConfig } from "interfaces/L1/ISuperchainConfig.sol"; /// @notice The OptimismPortal is a low-level contract responsible for passing messages between L1 /// and L2. Messages sent directly to the OptimismPortal have no form of replayability. /// Users are encouraged to use the L1CrossDomainMessenger for a higher-level interface. +/// TODO(#19709) remove this file and migrate fully to the OptimismPortal2 contract OptimismPortalInterop is Initializable, ResourceMetering, ReinitializableBase, ProxyAdminOwnedBase, ISemver { /// @notice Represents a proven withdrawal. /// @custom:field disputeGameProxy Game that the withdrawal was proven against. From ab2da3db87721b3caba7872f70e4924304db18bc Mon Sep 17 00:00:00 2001 From: Rodrigo Araujo Date: Thu, 2 Apr 2026 14:03:34 -0700 Subject: [PATCH 32/34] fix: add missing OptimismPortal_InvalidInteropState error to IOptimismPortal2 --- packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol index 1202794af89ae..fde972fcd4608 100644 --- a/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol +++ b/packages/contracts-bedrock/interfaces/L1/IOptimismPortal2.sol @@ -35,6 +35,7 @@ interface IOptimismPortal2 is IProxyAdminOwnedBase { error OptimismPortal_NotUsingInterop(); error OptimismPortal_ProofNotOldEnough(); error OptimismPortal_Unproven(); + error OptimismPortal_InvalidInteropState(); error OptimismPortal_InvalidLockboxState(); error OutOfGas(); error UnexpectedList(); From 8a0e690134e0766ef88ad78bf8407cfe780dc054 Mon Sep 17 00:00:00 2001 From: steven Date: Fri, 3 Apr 2026 08:32:06 -0400 Subject: [PATCH 33/34] fix: assertions for the forked upgrade scenario --- .../contracts-bedrock/test/L1/OptimismPortal2.t.sol | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index 04e761e791b9c..8c85ca5a2e350 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -28,6 +28,7 @@ import { UnknownChainId } from "src/dispute/lib/Errors.sol"; // Interfaces import { IResourceMetering } from "interfaces/L1/IResourceMetering.sol"; import { IOptimismPortal2 as IOptimismPortal } from "interfaces/L1/IOptimismPortal2.sol"; +import { IOptimismPortalInterop } from "interfaces/L1/IOptimismPortalInterop.sol"; import { IDisputeGame } from "interfaces/dispute/IDisputeGame.sol"; import { IProxy } from "interfaces/universal/IProxy.sol"; @@ -769,7 +770,14 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test assertEq(address(optimismPortal2.ethLockbox()), _newLockbox); assertEq(address(optimismPortal2.anchorStateRegistry()), _newAnchorStateRegistry); - assertTrue(systemConfig.isFeatureEnabled(Features.INTEROP)); + /// If OPCM_V2 we can do this check, if not we don't + /// We only couple the Dev Feature with the System config feature flag in OPCM_V2 + if (isDevFeatureEnabled(DevFeatures.OPCM_V2)) { + assertTrue(systemConfig.isFeatureEnabled(Features.INTEROP)); + } else { + assertTrue(IOptimismPortalInterop(payable(address(optimismPortal2))).superRootsActive()); + assertTrue(IOptimismPortalInterop(payable(address(optimismPortal2))).superRootsActive()); + } } /// @notice Tests that `migrateToSharedDisputeGame` reverts when the system is paused. From 0bb90ac1172f750b0b2538f91b95b27b953c4ded Mon Sep 17 00:00:00 2001 From: steven Date: Fri, 3 Apr 2026 13:01:28 -0400 Subject: [PATCH 34/34] refactor: remove OPCM_V2 feature flag, make V2 canonical --- .../snapshots/abi/OptimismPortal2.json | 5 +++++ .../snapshots/semver-lock.json | 10 ++++----- .../OPContractsManagerStandardValidator.sol | 20 ++--------------- .../test/L1/OptimismPortal2.t.sol | 22 +++---------------- .../test/L1/SystemConfig.t.sol | 1 + 5 files changed, 16 insertions(+), 42 deletions(-) diff --git a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json index ebefbefcc9578..602251f628829 100644 --- a/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json +++ b/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json @@ -874,6 +874,11 @@ "name": "OptimismPortal_InvalidDisputeGame", "type": "error" }, + { + "inputs": [], + "name": "OptimismPortal_InvalidInteropState", + "type": "error" + }, { "inputs": [], "name": "OptimismPortal_InvalidLockboxState", diff --git a/packages/contracts-bedrock/snapshots/semver-lock.json b/packages/contracts-bedrock/snapshots/semver-lock.json index 2f0a8e94fe0b5..2aa1c7200be2a 100644 --- a/packages/contracts-bedrock/snapshots/semver-lock.json +++ b/packages/contracts-bedrock/snapshots/semver-lock.json @@ -24,16 +24,16 @@ "sourceCodeHash": "0x9d16e900a764cd7f19db3656cf7a9e555b23b9c7e018641ed21566657847a314" }, "src/L1/OPContractsManagerStandardValidator.sol:OPContractsManagerStandardValidator": { - "initCodeHash": "0x0f526653885529a95b251f0854fe36ebcfebe54e05c264275fd4488538222d6f", - "sourceCodeHash": "0x351071d455ff5af83bc0edb52fd6a24a5e6917191e5443eb331fbf8dea21efb6" + "initCodeHash": "0xad0549a36d8c093d6971b12577639a6d6a4a823fdd06ce4187ad8efd09a7e7bc", + "sourceCodeHash": "0xcee723c26da263433affef4c07b4a7384397f49ee78b04029f79d757013819bc" }, "src/L1/OptimismPortal2.sol:OptimismPortal2": { - "initCodeHash": "0x25efe4afd106a1e994f8ef92e7fda72a80d71edeb347d488f1cb0be59c760835", - "sourceCodeHash": "0xb14ab78410b24f848e2c56f13b76cc34df64b5c9fd845a6a64a1aea9dc652886" + "initCodeHash": "0xbce33e9c36303e2130a3389b63a781228bf3b0de44834d3ae73cd88ccf3ced0c", + "sourceCodeHash": "0xbcd2d7f8b3c530bd46d777912fdb46063fa7e4ab0b0b56496a922ea24d3e3229" }, "src/L1/OptimismPortalInterop.sol:OptimismPortalInterop": { "initCodeHash": "0xa7262e160851c0de73b96943a28141ea23d3337494f1c507ecfc66d8a8d83024", - "sourceCodeHash": "0x941a3ba130742d8671c27f230635614589e851ab685cd7094e2c4487c5e05585" + "sourceCodeHash": "0xa73d3099cb3a5e2e3a51323c091e77c8a46ef489d65756d8fa6d64879851ee6a" }, "src/L1/ProtocolVersions.sol:ProtocolVersions": { "initCodeHash": "0xcb59ad9a5ec2a0831b7f4daa74bdacba82ffa03035dafb499a732c641e017f4e", diff --git a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol index a77811a0bc7ac..63bb5f9d1a791 100644 --- a/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol +++ b/packages/contracts-bedrock/src/L1/OPContractsManagerStandardValidator.sol @@ -437,20 +437,11 @@ contract OPContractsManagerStandardValidator is ISemver { { IOptimismPortal2 _portal = IOptimismPortal2(payable(_sysCfg.optimismPortal())); - // Use the OptimismPortalInteropImpl only when OPTIMISM_PORTAL_INTEROP is enabled without OPCM_V2 (legacy path). - // With OPCM_V2, the portal is always optimismPortalImpl regardless of INTEROP. - address expectedPortalImpl; - if (isOPCMV1AndInterop(devFeatureBitmap)) { - expectedPortalImpl = optimismPortalInteropImpl; - } else { - expectedPortalImpl = optimismPortalImpl; - } - _errors = internalRequire( - LibString.eq(getVersion(address(_portal)), getVersion(expectedPortalImpl)), "PORTAL-10", _errors + LibString.eq(getVersion(address(_portal)), getVersion(optimismPortalImpl)), "PORTAL-10", _errors ); _errors = internalRequire( - getProxyImplementation(_admin, address(_portal)) == expectedPortalImpl, "PORTAL-20", _errors + getProxyImplementation(_admin, address(_portal)) == optimismPortalImpl, "PORTAL-20", _errors ); IDisputeGameFactory _dgf = IDisputeGameFactory(_sysCfg.disputeGameFactory()); @@ -765,13 +756,6 @@ contract OPContractsManagerStandardValidator is ISemver { return errors_; } - /// @notice Helper function to clean up branching logic in the assertValidOptimismPortal block where - /// The PortalImplementation address is conditional based on the feature flags currently set - function isOPCMV1AndInterop(bytes32 _devFeatureBitmap) internal pure returns (bool) { - return DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPTIMISM_PORTAL_INTEROP) - && !DevFeatures.isDevFeatureEnabled(_devFeatureBitmap, DevFeatures.OPCM_V2); - } - /// @notice Returns true if the game type is a super game type. function isSuperGame(GameType _gameType) internal pure returns (bool) { return GameTypes.isSuperGame(_gameType); diff --git a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol index 8c85ca5a2e350..f30f5bd056369 100644 --- a/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol +++ b/packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol @@ -28,7 +28,6 @@ import { UnknownChainId } from "src/dispute/lib/Errors.sol"; // Interfaces import { IResourceMetering } from "interfaces/L1/IResourceMetering.sol"; import { IOptimismPortal2 as IOptimismPortal } from "interfaces/L1/IOptimismPortal2.sol"; -import { IOptimismPortalInterop } from "interfaces/L1/IOptimismPortalInterop.sol"; import { IDisputeGame } from "interfaces/dispute/IDisputeGame.sol"; import { IProxy } from "interfaces/universal/IProxy.sol"; @@ -770,14 +769,7 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test assertEq(address(optimismPortal2.ethLockbox()), _newLockbox); assertEq(address(optimismPortal2.anchorStateRegistry()), _newAnchorStateRegistry); - /// If OPCM_V2 we can do this check, if not we don't - /// We only couple the Dev Feature with the System config feature flag in OPCM_V2 - if (isDevFeatureEnabled(DevFeatures.OPCM_V2)) { - assertTrue(systemConfig.isFeatureEnabled(Features.INTEROP)); - } else { - assertTrue(IOptimismPortalInterop(payable(address(optimismPortal2))).superRootsActive()); - assertTrue(IOptimismPortalInterop(payable(address(optimismPortal2))).superRootsActive()); - } + assertTrue(systemConfig.isFeatureEnabled(Features.INTEROP)); } /// @notice Tests that `migrateToSharedDisputeGame` reverts when the system is paused. @@ -797,17 +789,9 @@ contract OptimismPortal2_migrateToSharedDisputeGame_Test is OptimismPortal2_Test /// @notice Test contract for OptimismPortal2 `proveWithdrawalTransaction` function. contract OptimismPortal2_ProveWithdrawalTransaction_Test is OptimismPortal2_TestInit { /// @notice Enables super root behavior on the portal for testing. - /// Uses gameType mock for OptimismPortal2 (OPCM_V2) or slot manipulation for OptimismPortalInterop. function _enableSuperRoots() internal { - if (isDevFeatureEnabled(DevFeatures.OPCM_V2)) { - // OptimismPortal2 uses stateless GameTypes.isSuperGame() check. - vm.mockCall(address(game), abi.encodeCall(game.gameType, ()), abi.encode(GameTypes.SUPER_CANNON_KONA)); - } else { - // Legacy OptimismPortalInterop uses superRootsActive boolean at slot 63, offset 20. - bytes32 slot = bytes32(uint256(63)); - bytes32 existingValue = vm.load(address(optimismPortal2), slot); - vm.store(address(optimismPortal2), slot, existingValue | bytes32(uint256(1) << (20 * 8))); - } + // OptimismPortal2 uses stateless GameTypes.isSuperGame() check. + vm.mockCall(address(game), abi.encodeCall(game.gameType, ()), abi.encode(GameTypes.SUPER_CANNON_KONA)); } /// @notice Tests that `proveWithdrawalTransaction` reverts when paused. diff --git a/packages/contracts-bedrock/test/L1/SystemConfig.t.sol b/packages/contracts-bedrock/test/L1/SystemConfig.t.sol index b1a114c683941..b9964dacb86ff 100644 --- a/packages/contracts-bedrock/test/L1/SystemConfig.t.sol +++ b/packages/contracts-bedrock/test/L1/SystemConfig.t.sol @@ -10,6 +10,7 @@ import { ForgeArtifacts, StorageSlot } from "scripts/libraries/ForgeArtifacts.so // Libraries import { Constants } from "src/libraries/Constants.sol"; import { EIP1967Helper } from "test/mocks/EIP1967Helper.sol"; +import { DevFeatures } from "src/libraries/DevFeatures.sol"; import { Features } from "src/libraries/Features.sol"; // Interfaces