diff --git a/abis/0.8.21/GuardCM.json b/abis/0.8.21/GuardCM.json deleted file mode 100644 index 4e3766c..0000000 --- a/abis/0.8.21/GuardCM.json +++ /dev/null @@ -1,472 +0,0 @@ -{ - "_format": "hh-sol-artifact-1", - "contractName": "GuardCM", - "sourceName": "contracts/multisigs/GuardCM.sol", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "_timelock", - "type": "address" - }, - { - "internalType": "address", - "name": "_multisig", - "type": "address" - }, - { - "internalType": "address", - "name": "_governor", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "expected", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "provided", - "type": "uint256" - } - ], - "name": "IncorrectDataLength", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "address", - "name": "manager", - "type": "address" - } - ], - "name": "ManagerOnly", - "type": "error" - }, - { - "inputs": [], - "name": "NoDelegateCall", - "type": "error" - }, - { - "inputs": [], - "name": "NoSelfCall", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bytes4", - "name": "selector", - "type": "bytes4" - } - ], - "name": "NotAuthorized", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "proposalId", - "type": "uint256" - }, - { - "internalType": "enum ProposalState", - "name": "state", - "type": "uint8" - } - ], - "name": "NotDefeated", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "address", - "name": "owner", - "type": "address" - } - ], - "name": "OwnerOnly", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "numValues1", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "numValues2", - "type": "uint256" - } - ], - "name": "WrongArrayLength", - "type": "error" - }, - { - "inputs": [], - "name": "ZeroAddress", - "type": "error" - }, - { - "inputs": [], - "name": "ZeroValue", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "proposalId", - "type": "uint256" - } - ], - "name": "GovernorCheckProposalIdChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "governor", - "type": "address" - } - ], - "name": "GovernorUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "GuardPaused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [], - "name": "GuardUnpaused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address[]", - "name": "targets", - "type": "address[]" - }, - { - "indexed": true, - "internalType": "bytes4[]", - "name": "selectors", - "type": "bytes4[]" - }, - { - "indexed": false, - "internalType": "bool[]", - "name": "statuses", - "type": "bool[]" - } - ], - "name": "SetTargetSelectors", - "type": "event" - }, - { - "inputs": [], - "name": "SCHEDULE", - "outputs": [ - { - "internalType": "bytes4", - "name": "", - "type": "bytes4" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "SCHEDULE_BATCH", - "outputs": [ - { - "internalType": "bytes4", - "name": "", - "type": "bytes4" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newGovernor", - "type": "address" - } - ], - "name": "changeGovernor", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "proposalId", - "type": "uint256" - } - ], - "name": "changeGovernorCheckProposalId", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "name": "checkAfterExecution", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "enum Enum.Operation", - "name": "operation", - "type": "uint8" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address payable", - "name": "", - "type": "address" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "checkTransaction", - "outputs": [], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "governor", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "governorCheckProposalId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "mapAllowedTargetSelectors", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "multisig", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "targets", - "type": "address[]" - }, - { - "internalType": "bytes4[]", - "name": "selectors", - "type": "bytes4[]" - }, - { - "internalType": "bool[]", - "name": "statuses", - "type": "bool[]" - } - ], - "name": "setTargetSelectors", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x60c06040525f805460ff60a01b1916600160a01b1790557f89684e30619ebaeae83b1cbcc1bce3d5341c22fc8132a6fd126510c3ea90558760025534801562000046575f80fd5b5060405162001d1638038062001d168339810160408190526200006991620000b3565b6001600160a01b0392831660805290821660a0525f80546001600160a01b03191691909216179055620000fa565b80516001600160a01b0381168114620000ae575f80fd5b919050565b5f805f60608486031215620000c6575f80fd5b620000d18462000097565b9250620000e16020850162000097565b9150620000f16040850162000097565b90509250925092565b60805160a051611b9f620001775f395f81816101980152818161082d015281816109540152610af401525f8181610255015281816102f60152818161035e0152818161053a015281816105a20152818161065c015281816108d401528181610b6501528181610bcd01528181610c7d0152610ce50152611b9f5ff3fe608060405234801561000f575f80fd5b50600436106100f0575f3560e01c806375f0bb521161009357806393271368116100635780639327136814610277578063e4c0aaf414610289578063ed7a97541461029c578063f7cde1cc146102a4575f80fd5b806375f0bb52146102225780638456cb591461023557806387b68df11461023d5780638da5cb5b14610250575f80fd5b80633f4ba83a116100ce5780633f4ba83a1461018b5780634783c35b146101935780635c975abb146101ba57806360c75f9a146101f0575f80fd5b80630c340a24146100f457806316979a181461013d5780631b603b7814610176575b5f80fd5b5f546101139073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6101456102bb565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091168152602001610134565b610189610184366004611339565b6102de565b005b610189610522565b6101137f000000000000000000000000000000000000000000000000000000000000000081565b5f546101de9074010000000000000000000000000000000000000000900460ff1681565b60405160ff9091168152602001610134565b6102126101fe366004611417565b60016020525f908152604090205460ff1681565b6040519015158152602001610134565b6101896102303660046114ce565b610636565b6101896108bd565b61018961024b366004611417565b610b4d565b6101137f000000000000000000000000000000000000000000000000000000000000000081565b6101896102853660046115aa565b5050565b6101896102973660046115d4565b610c65565b610145610dcb565b6102ad60025481565b604051908152602001610134565b604051806060016040528060378152602001611af1603791398051906020012081565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610390576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044015b60405180910390fd5b815183511415806103a357508051835114155b156103e757825182516040517f8151c11000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610387565b5f5b83518110156104b9575f848281518110610405576104056115f6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a0848381518110610439576104396115f6565b602002602001015160e01c63ffffffff16901b81179050828281518110610462576104626115f6565b6020908102919091018101515f9283526001909152604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556104b281611650565b90506103e9565b50816040516104c89190611687565b6040518091039020836040516104de91906116de565b60405180910390207f3566893a78ae4b9cb943242afd5c2d1555846935f708711661701936da5b973683604051610515919061171d565b60405180910390a3505050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146105cf576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b5f80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001781556040517fb7494247183e272909cbb2787cfe307a720be20191d035876006b8903349b3619190a1565b5f5474010000000000000000000000000000000000000000900460ff166001036108b0577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff160361082b5760018860018111156106c1576106c1611762565b036106f8576040517f034aef8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60048951101561074357885160046040517f34c9027a000000000000000000000000000000000000000000000000000000008152600401610387929190918252602082015260400190565b5f61074d8a61178f565b9050604051806060016040528060378152602001611af160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806108165750604051806080016040528060428152602001611b2860429139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610825576108258a82610dee565b506108b0565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff16036108b0576040517f73dc029f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016330361093d575f80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674020000000000000000000000000000000000000000179055610b21565b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303610ab1575f80546002546040517f3e4f49e600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921691633e4f49e6916109d59160040190815260200190565b6020604051808303815f875af11580156109f1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1591906117de565b90506003816007811115610a2b57610a2b611762565b03610a73575f80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674020000000000000000000000000000000000000000179055610aab565b600254816040517fe83cca170000000000000000000000000000000000000000000000000000000081526004016103879291906117fc565b50610b21565b6040517f625a43fe00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b60405133907fe09b21d6dd32859666ae309428ea624d48855f4762e0c91f342016e4947d793b905f90a2565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610bfa576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b805f03610c33576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600281905560405181907f63a01eaabe199ab888e562c930e21f3436583ea5acd4ca5c4ceffac3a523e039905f90a250565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610d12576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b73ffffffffffffffffffffffffffffffffffffffff8116610d5f576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117825560405190917f386c8d5fb4be6c928b7de4c7ae0a4b2ad0d2b2a7edad65d9f0af9ba255e5121991a250565b604051806080016040528060428152602001611b28604291398051906020012081565b5f60048351610dfd9190611845565b67ffffffffffffffff811115610e1557610e15611162565b6040519080825280601f01601f191660200182016040528015610e3f576020820181803683370190505b5090505f5b8151811015610ec45783610e5982600461185e565b81518110610e6957610e696115f6565b602001015160f81c60f81b828281518110610e8657610e866115f6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350610ebd81611650565b9050610e44565b50606080604051806060016040528060378152602001611af160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610ffe57604080516001808252818301909252906020808301908036833701905050604080516001808252818301909252919350816020015b6060815260200190600190039081610f6157905050905082806020019051810190610f8c91906118d1565b5050855191925085915f9150610fa457610fa46115f6565b60200260200101835f81518110610fbd57610fbd6115f6565b602002602001018290528273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250505061101d565b828060200190518101906110129190611a16565b509395509093505050505b5f5b825181101561115a575f83828151811061103b5761103b6115f6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a083838151811061106f5761106f6115f6565b60200260200101516110809061178f565b60e01c901b175f8181526001602052604090205460ff16611149578382815181106110ad576110ad6115f6565b60200260200101518383815181106110c7576110c76115f6565b60200260200101516110d89061178f565b6040517e95569f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301527fffffffff00000000000000000000000000000000000000000000000000000000166024820152604401610387565b5061115381611650565b905061101f565b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156111d6576111d6611162565b604052919050565b5f67ffffffffffffffff8211156111f7576111f7611162565b5060051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81168114611222575f80fd5b50565b803561123081611201565b919050565b5f82601f830112611244575f80fd5b81356020611259611254836111de565b61118f565b82815260059290921b84018101918181019086841115611277575f80fd5b8286015b848110156112c05780357fffffffff00000000000000000000000000000000000000000000000000000000811681146112b3575f8081fd5b835291830191830161127b565b509695505050505050565b80358015158114611230575f80fd5b5f82601f8301126112e9575f80fd5b813560206112f9611254836111de565b82815260059290921b84018101918181019086841115611317575f80fd5b8286015b848110156112c05761132c816112cb565b835291830191830161131b565b5f805f6060848603121561134b575f80fd5b833567ffffffffffffffff80821115611362575f80fd5b818601915086601f830112611375575f80fd5b81356020611385611254836111de565b82815260059290921b8401810191818101908a8411156113a3575f80fd5b948201945b838610156113ca5785356113bb81611201565b825294820194908201906113a8565b975050870135925050808211156113df575f80fd5b6113eb87838801611235565b93506040860135915080821115611400575f80fd5b5061140d868287016112da565b9150509250925092565b5f60208284031215611427575f80fd5b5035919050565b5f67ffffffffffffffff82111561144757611447611162565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f830112611482575f80fd5b81356114906112548261142e565b8181528460208386010111156114a4575f80fd5b816020850160208301375f918101602001919091529392505050565b803560028110611230575f80fd5b5f805f805f805f805f805f6101608c8e0312156114e9575f80fd5b6114f28c611225565b9a5060208c0135995067ffffffffffffffff8060408e01351115611514575f80fd5b6115248e60408f01358f01611473565b995061153260608e016114c0565b985060808d0135975060a08d0135965060c08d0135955061155560e08e01611225565b94506115646101008e01611225565b9350806101208e01351115611577575f80fd5b506115898d6101208e01358e01611473565b91506115986101408d01611225565b90509295989b509295989b9093969950565b5f80604083850312156115bb575f80fd5b823591506115cb602084016112cb565b90509250929050565b5f602082840312156115e4575f80fd5b81356115ef81611201565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361168057611680611623565b5060010190565b81515f9082906020808601845b838110156116d25781517fffffffff000000000000000000000000000000000000000000000000000000001685529382019390820190600101611694565b50929695505050505050565b81515f9082906020808601845b838110156116d257815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201906001016116eb565b602080825282518282018190525f9190848201906040850190845b81811015611756578351151583529284019291840191600101611738565b50909695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f815160208301517fffffffff00000000000000000000000000000000000000000000000000000000808216935060048310156117d65780818460040360031b1b83161693505b505050919050565b5f602082840312156117ee575f80fd5b8151600881106115ef575f80fd5b8281526040810160088310611838577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b8260208301529392505050565b8181038181111561185857611858611623565b92915050565b8082018082111561185857611858611623565b5f82601f830112611880575f80fd5b815161188e6112548261142e565b818152602085818487010111156118a3575f80fd5b5f5b838110156118c05785810182015183820183015281016118a5565b505f92820101919091529392505050565b5f805f805f8060c087890312156118e6575f80fd5b86516118f181611201565b60208801516040890151919750955067ffffffffffffffff811115611914575f80fd5b61192089828a01611871565b945050606087015192506080870151915060a087015190509295509295509295565b5f82601f830112611951575f80fd5b81516020611961611254836111de565b82815260059290921b8401810191818101908684111561197f575f80fd5b8286015b848110156112c05780518352918301918301611983565b5f82601f8301126119a9575f80fd5b815160206119b9611254836111de565b82815260059290921b840181019181810190868411156119d7575f80fd5b8286015b848110156112c057805167ffffffffffffffff8111156119fa575f8081fd5b611a088986838b0101611871565b8452509183019183016119db565b5f805f805f8060c08789031215611a2b575f80fd5b865167ffffffffffffffff80821115611a42575f80fd5b818901915089601f830112611a55575f80fd5b81516020611a65611254836111de565b82815260059290921b8401810191818101908d841115611a83575f80fd5b948201945b83861015611aaa578551611a9b81611201565b82529482019490820190611a88565b918c0151919a50909350505080821115611ac2575f80fd5b611ace8a838b01611942565b96506040890151915080821115611ae3575f80fd5b5061192089828a0161199a56fe7363686564756c6528616464726573732c75696e743235362c62797465732c627974657333322c627974657333322c75696e74323536297363686564756c65426174636828616464726573735b5d2c75696e743235365b5d2c62797465735b5d2c627974657333322c627974657333322c75696e7432353629a264697066735822122037f44921bc70e0de5761e0bb853bbd3289227643bec2c51f5705a5b1bcdb0c5864736f6c63430008150033", - "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100f0575f3560e01c806375f0bb521161009357806393271368116100635780639327136814610277578063e4c0aaf414610289578063ed7a97541461029c578063f7cde1cc146102a4575f80fd5b806375f0bb52146102225780638456cb591461023557806387b68df11461023d5780638da5cb5b14610250575f80fd5b80633f4ba83a116100ce5780633f4ba83a1461018b5780634783c35b146101935780635c975abb146101ba57806360c75f9a146101f0575f80fd5b80630c340a24146100f457806316979a181461013d5780631b603b7814610176575b5f80fd5b5f546101139073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6101456102bb565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091168152602001610134565b610189610184366004611339565b6102de565b005b610189610522565b6101137f000000000000000000000000000000000000000000000000000000000000000081565b5f546101de9074010000000000000000000000000000000000000000900460ff1681565b60405160ff9091168152602001610134565b6102126101fe366004611417565b60016020525f908152604090205460ff1681565b6040519015158152602001610134565b6101896102303660046114ce565b610636565b6101896108bd565b61018961024b366004611417565b610b4d565b6101137f000000000000000000000000000000000000000000000000000000000000000081565b6101896102853660046115aa565b5050565b6101896102973660046115d4565b610c65565b610145610dcb565b6102ad60025481565b604051908152602001610134565b604051806060016040528060378152602001611af1603791398051906020012081565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610390576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044015b60405180910390fd5b815183511415806103a357508051835114155b156103e757825182516040517f8151c11000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610387565b5f5b83518110156104b9575f848281518110610405576104056115f6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a0848381518110610439576104396115f6565b602002602001015160e01c63ffffffff16901b81179050828281518110610462576104626115f6565b6020908102919091018101515f9283526001909152604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556104b281611650565b90506103e9565b50816040516104c89190611687565b6040518091039020836040516104de91906116de565b60405180910390207f3566893a78ae4b9cb943242afd5c2d1555846935f708711661701936da5b973683604051610515919061171d565b60405180910390a3505050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146105cf576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b5f80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001781556040517fb7494247183e272909cbb2787cfe307a720be20191d035876006b8903349b3619190a1565b5f5474010000000000000000000000000000000000000000900460ff166001036108b0577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff160361082b5760018860018111156106c1576106c1611762565b036106f8576040517f034aef8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60048951101561074357885160046040517f34c9027a000000000000000000000000000000000000000000000000000000008152600401610387929190918252602082015260400190565b5f61074d8a61178f565b9050604051806060016040528060378152602001611af160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806108165750604051806080016040528060428152602001611b2860429139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610825576108258a82610dee565b506108b0565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff16036108b0576040517f73dc029f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016330361093d575f80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674020000000000000000000000000000000000000000179055610b21565b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303610ab1575f80546002546040517f3e4f49e600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921691633e4f49e6916109d59160040190815260200190565b6020604051808303815f875af11580156109f1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1591906117de565b90506003816007811115610a2b57610a2b611762565b03610a73575f80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674020000000000000000000000000000000000000000179055610aab565b600254816040517fe83cca170000000000000000000000000000000000000000000000000000000081526004016103879291906117fc565b50610b21565b6040517f625a43fe00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b60405133907fe09b21d6dd32859666ae309428ea624d48855f4762e0c91f342016e4947d793b905f90a2565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610bfa576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b805f03610c33576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600281905560405181907f63a01eaabe199ab888e562c930e21f3436583ea5acd4ca5c4ceffac3a523e039905f90a250565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610d12576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000166024820152604401610387565b73ffffffffffffffffffffffffffffffffffffffff8116610d5f576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117825560405190917f386c8d5fb4be6c928b7de4c7ae0a4b2ad0d2b2a7edad65d9f0af9ba255e5121991a250565b604051806080016040528060428152602001611b28604291398051906020012081565b5f60048351610dfd9190611845565b67ffffffffffffffff811115610e1557610e15611162565b6040519080825280601f01601f191660200182016040528015610e3f576020820181803683370190505b5090505f5b8151811015610ec45783610e5982600461185e565b81518110610e6957610e696115f6565b602001015160f81c60f81b828281518110610e8657610e866115f6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350610ebd81611650565b9050610e44565b50606080604051806060016040528060378152602001611af160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610ffe57604080516001808252818301909252906020808301908036833701905050604080516001808252818301909252919350816020015b6060815260200190600190039081610f6157905050905082806020019051810190610f8c91906118d1565b5050855191925085915f9150610fa457610fa46115f6565b60200260200101835f81518110610fbd57610fbd6115f6565b602002602001018290528273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250505061101d565b828060200190518101906110129190611a16565b509395509093505050505b5f5b825181101561115a575f83828151811061103b5761103b6115f6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a083838151811061106f5761106f6115f6565b60200260200101516110809061178f565b60e01c901b175f8181526001602052604090205460ff16611149578382815181106110ad576110ad6115f6565b60200260200101518383815181106110c7576110c76115f6565b60200260200101516110d89061178f565b6040517e95569f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301527fffffffff00000000000000000000000000000000000000000000000000000000166024820152604401610387565b5061115381611650565b905061101f565b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156111d6576111d6611162565b604052919050565b5f67ffffffffffffffff8211156111f7576111f7611162565b5060051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81168114611222575f80fd5b50565b803561123081611201565b919050565b5f82601f830112611244575f80fd5b81356020611259611254836111de565b61118f565b82815260059290921b84018101918181019086841115611277575f80fd5b8286015b848110156112c05780357fffffffff00000000000000000000000000000000000000000000000000000000811681146112b3575f8081fd5b835291830191830161127b565b509695505050505050565b80358015158114611230575f80fd5b5f82601f8301126112e9575f80fd5b813560206112f9611254836111de565b82815260059290921b84018101918181019086841115611317575f80fd5b8286015b848110156112c05761132c816112cb565b835291830191830161131b565b5f805f6060848603121561134b575f80fd5b833567ffffffffffffffff80821115611362575f80fd5b818601915086601f830112611375575f80fd5b81356020611385611254836111de565b82815260059290921b8401810191818101908a8411156113a3575f80fd5b948201945b838610156113ca5785356113bb81611201565b825294820194908201906113a8565b975050870135925050808211156113df575f80fd5b6113eb87838801611235565b93506040860135915080821115611400575f80fd5b5061140d868287016112da565b9150509250925092565b5f60208284031215611427575f80fd5b5035919050565b5f67ffffffffffffffff82111561144757611447611162565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f830112611482575f80fd5b81356114906112548261142e565b8181528460208386010111156114a4575f80fd5b816020850160208301375f918101602001919091529392505050565b803560028110611230575f80fd5b5f805f805f805f805f805f6101608c8e0312156114e9575f80fd5b6114f28c611225565b9a5060208c0135995067ffffffffffffffff8060408e01351115611514575f80fd5b6115248e60408f01358f01611473565b995061153260608e016114c0565b985060808d0135975060a08d0135965060c08d0135955061155560e08e01611225565b94506115646101008e01611225565b9350806101208e01351115611577575f80fd5b506115898d6101208e01358e01611473565b91506115986101408d01611225565b90509295989b509295989b9093969950565b5f80604083850312156115bb575f80fd5b823591506115cb602084016112cb565b90509250929050565b5f602082840312156115e4575f80fd5b81356115ef81611201565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361168057611680611623565b5060010190565b81515f9082906020808601845b838110156116d25781517fffffffff000000000000000000000000000000000000000000000000000000001685529382019390820190600101611694565b50929695505050505050565b81515f9082906020808601845b838110156116d257815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201906001016116eb565b602080825282518282018190525f9190848201906040850190845b81811015611756578351151583529284019291840191600101611738565b50909695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f815160208301517fffffffff00000000000000000000000000000000000000000000000000000000808216935060048310156117d65780818460040360031b1b83161693505b505050919050565b5f602082840312156117ee575f80fd5b8151600881106115ef575f80fd5b8281526040810160088310611838577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b8260208301529392505050565b8181038181111561185857611858611623565b92915050565b8082018082111561185857611858611623565b5f82601f830112611880575f80fd5b815161188e6112548261142e565b818152602085818487010111156118a3575f80fd5b5f5b838110156118c05785810182015183820183015281016118a5565b505f92820101919091529392505050565b5f805f805f8060c087890312156118e6575f80fd5b86516118f181611201565b60208801516040890151919750955067ffffffffffffffff811115611914575f80fd5b61192089828a01611871565b945050606087015192506080870151915060a087015190509295509295509295565b5f82601f830112611951575f80fd5b81516020611961611254836111de565b82815260059290921b8401810191818101908684111561197f575f80fd5b8286015b848110156112c05780518352918301918301611983565b5f82601f8301126119a9575f80fd5b815160206119b9611254836111de565b82815260059290921b840181019181810190868411156119d7575f80fd5b8286015b848110156112c057805167ffffffffffffffff8111156119fa575f8081fd5b611a088986838b0101611871565b8452509183019183016119db565b5f805f805f8060c08789031215611a2b575f80fd5b865167ffffffffffffffff80821115611a42575f80fd5b818901915089601f830112611a55575f80fd5b81516020611a65611254836111de565b82815260059290921b8401810191818101908d841115611a83575f80fd5b948201945b83861015611aaa578551611a9b81611201565b82529482019490820190611a88565b918c0151919a50909350505080821115611ac2575f80fd5b611ace8a838b01611942565b96506040890151915080821115611ae3575f80fd5b5061192089828a0161199a56fe7363686564756c6528616464726573732c75696e743235362c62797465732c627974657333322c627974657333322c75696e74323536297363686564756c65426174636828616464726573735b5d2c75696e743235365b5d2c62797465735b5d2c627974657333322c627974657333322c75696e7432353629a264697066735822122037f44921bc70e0de5761e0bb853bbd3289227643bec2c51f5705a5b1bcdb0c5864736f6c63430008150033", - "linkReferences": {}, - "deployedLinkReferences": {} -} diff --git a/abis/0.8.23/GuardCM.json b/abis/0.8.23/GuardCM.json new file mode 100644 index 0000000..5c1a95c --- /dev/null +++ b/abis/0.8.23/GuardCM.json @@ -0,0 +1,752 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GuardCM", + "sourceName": "contracts/multisigs/GuardCM.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_timelock", + "type": "address" + }, + { + "internalType": "address", + "name": "_multisig", + "type": "address" + }, + { + "internalType": "address", + "name": "_governor", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "expected", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "provided", + "type": "uint256" + } + ], + "name": "IncorrectDataLength", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + } + ], + "name": "L2ChainIdNotSupported", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "manager", + "type": "address" + } + ], + "name": "ManagerOnly", + "type": "error" + }, + { + "inputs": [], + "name": "NoDelegateCall", + "type": "error" + }, + { + "inputs": [], + "name": "NoSelfCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + } + ], + "name": "NotAuthorized", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "proposalId", + "type": "uint256" + }, + { + "internalType": "enum ProposalState", + "name": "state", + "type": "uint8" + } + ], + "name": "NotDefeated", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "OwnerOnly", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "numValues1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numValues2", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numValues3", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numValues4", + "type": "uint256" + } + ], + "name": "WrongArrayLength", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "provided", + "type": "address" + }, + { + "internalType": "address", + "name": "expected", + "type": "address" + } + ], + "name": "WrongL2BridgeMediator", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "functionSig", + "type": "bytes4" + }, + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + } + ], + "name": "WrongSelector", + "type": "error" + }, + { + "inputs": [], + "name": "ZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "ZeroValue", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "proposalId", + "type": "uint256" + } + ], + "name": "GovernorCheckProposalIdChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "governor", + "type": "address" + } + ], + "name": "GovernorUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "GuardPaused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [], + "name": "GuardUnpaused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address[]", + "name": "bridgeMediatorL1s", + "type": "address[]" + }, + { + "indexed": true, + "internalType": "address[]", + "name": "bridgeMediatorL2s", + "type": "address[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "chainIds", + "type": "uint256[]" + } + ], + "name": "SetBridgeMediators", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address[]", + "name": "targets", + "type": "address[]" + }, + { + "indexed": true, + "internalType": "bytes4[]", + "name": "selectors", + "type": "bytes4[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "chainIds", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "bool[]", + "name": "statuses", + "type": "bool[]" + } + ], + "name": "SetTargetSelectors", + "type": "event" + }, + { + "inputs": [], + "name": "MIN_GNOSIS_PAYLOAD_LENGTH", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MIN_POLYGON_PAYLOAD_LENGTH", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MIN_SCHEDULE_DATA_LENGTH", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "PROCESS_MESSAGE_FROM_FOREIGN", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "REQUIRE_TO_PASS_MESSAGE", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "SCHEDULE", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "SCHEDULE_BATCH", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "SELECTOR_DATA_LENGTH", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "SEND_MESSAGE_TO_CHILD", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newGovernor", + "type": "address" + } + ], + "name": "changeGovernor", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "proposalId", + "type": "uint256" + } + ], + "name": "changeGovernorCheckProposalId", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "name": "checkAfterExecution", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "enum Enum.Operation", + "name": "operation", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address payable", + "name": "", + "type": "address" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "checkTransaction", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "bridgeMediatorL1", + "type": "address" + } + ], + "name": "getBridgeMediatorChainId", + "outputs": [ + { + "internalType": "address", + "name": "bridgeMediatorL2", + "type": "address" + }, + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + } + ], + "name": "getTargetSelectorChainId", + "outputs": [ + { + "internalType": "bool", + "name": "status", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governorCheckProposalId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "mapAllowedTargetSelectorChainIds", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "mapBridgeMediatorL1L2ChainIds", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "multisig", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pause", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "bridgeMediatorL1s", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "bridgeMediatorL2s", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "chainIds", + "type": "uint256[]" + } + ], + "name": "setBridgeMediatorChainIds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "targets", + "type": "address[]" + }, + { + "internalType": "bytes4[]", + "name": "selectors", + "type": "bytes4[]" + }, + { + "internalType": "uint256[]", + "name": "chainIds", + "type": "uint256[]" + }, + { + "internalType": "bool[]", + "name": "statuses", + "type": "bool[]" + } + ], + "name": "setTargetSelectorChainIds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "unpause", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60c06040527fc31bbc1e3236488ae8f22fbf502bfdf157c6632d6e26bf7aecc7efa40d960d295f556001805460ff60a01b1916600160a01b17905534801562000046575f80fd5b506040516200314138038062003141833981016040819052620000699162000104565b6001600160a01b03831615806200008757506001600160a01b038216155b806200009a57506001600160a01b038116155b15620000b95760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b0392831660805290821660a052600180546001600160a01b031916919092161790556200014b565b80516001600160a01b0381168114620000ff575f80fd5b919050565b5f805f6060848603121562000117575f80fd5b6200012284620000e8565b92506200013260208501620000e8565b91506200014260408501620000e8565b90509250925092565b60805160a051612f6b620001d65f395f818161028b01528181610fc2015281816110ea015261128a01525f818161047901528181610555015281816105bd01528181610670015281816106d8015281816109d901528181610a4101528181610df101528181611069015281816112fb0152818161136301528181611433015261149b0152612f6b5ff3fe608060405234801561000f575f80fd5b50600436106101a5575f3560e01c80636b3ddbad116100e85780638da5cb5b11610093578063e4c0aaf41161006e578063e4c0aaf4146104b5578063ed7a9754146104c8578063f7cde1cc146104d0578063fba12cc7146104d8575f80fd5b80638da5cb5b14610474578063932713681461049b578063e2c916f2146104ad575f80fd5b806381792616116100c357806381792616146104505780638456cb591461045957806387b68df114610461575f80fd5b80636b3ddbad1461037557806375f0bb52146103dc5780637c257f9d146103ef575f80fd5b80634783c35b116101535780635c975abb1161012e5780635c975abb1461031a5780635d78d4691461035157806362e7db5e1461036457806364578cbb1461036d575f80fd5b80634783c35b146102865780634b5e8ef4146102ad5780634e33804c146102c0575f80fd5b806336b057601161018357806336b05760146102345780633ce3778c146102665780633f4ba83a1461027c575f80fd5b80630c340a24146101a957806316979a18146101f357806327d1fdb61461022c575b5f80fd5b6001546101c99073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6101fb6104f7565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016101ea565b6101fb61051a565b61025661024236600461228a565b60026020525f908152604090205460ff1681565b60405190151581526020016101ea565b61026e600481565b6040519081526020016101ea565b61028461053d565b005b6101c97f000000000000000000000000000000000000000000000000000000000000000081565b6102846102bb366004612445565b610658565b6040805180820190915260208082527f70726f636573734d65737361676546726f6d466f726569676e286279746573299101526101fb7fcd9e30d9a96b5cf16d4d4b0663962503e1de56754666be789049f4520693c4e281565b60015461033f9074010000000000000000000000000000000000000000900460ff1681565b60405160ff90911681526020016101ea565b61028461035f366004612568565b6109c1565b61026e61012481565b61026e60a481565b6103b0610383366004612667565b73ffffffffffffffffffffffffffffffffffffffff165f908152600360205260409020549060a082901c90565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101ea565b6102846103ea366004612729565b610d7f565b6102566103fd366004612805565b60c01b77ffffffff0000000000000000000000000000000000000000604092831c1673ffffffffffffffffffffffffffffffffffffffff90931692909217919091175f9081526002602052205460ff1690565b61026e61010481565b610284611052565b61028461046f36600461228a565b6112e3565b6101c97f000000000000000000000000000000000000000000000000000000000000000081565b6102846104a9366004612840565b5050565b6101fb6113f8565b6102846104c3366004612667565b61141b565b6101fb611583565b61026e5f5481565b61026e6104e6366004612667565b60036020525f908152604090205481565b604051806060016040528060378152602001612e71603791398051906020012081565b604051806060016040528060218152602001612eea602191398051906020012081565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146105ef576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044015b60405180910390fd5b600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790556040517fb7494247183e272909cbb2787cfe307a720be20191d035876006b8903349b361905f90a1565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610705576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b8151835114158061071857508051835114155b1561076d578251825182516040517f1d0d3849000000000000000000000000000000000000000000000000000000008152600481019390935260248301919091526044820181905260648201526084016105e6565b5f5b8151811015610958575f73ffffffffffffffffffffffffffffffffffffffff168482815181106107a1576107a161286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16148061080f57505f73ffffffffffffffffffffffffffffffffffffffff168382815181106107ef576107ef61286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16145b15610846576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8282815181106108595761085961286a565b6020026020010151905080606414158015610875575080608914155b80156108835750806127d814155b80156108925750806201388114155b156108cc576040517f05877c35000000000000000000000000000000000000000000000000000000008152600481018290526024016105e6565b5f8483815181106108df576108df61286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a082901b811790508060035f88868151811061091e5761091e61286a565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2055505060010161076f565b50816040516109679190612897565b60405180910390208360405161097d9190612897565b60405180910390207f95edddabf9b8025555342277f0dea82b15055157eb2f2fb0a2f7a26ea13110c5836040516109b4919061291c565b60405180910390a3505050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610a6e576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b82518451141580610a8157508051845114155b80610a8e57508151845114155b15610ae35783518351825184516040517f1d0d384900000000000000000000000000000000000000000000000000000000815260048101949094526024840192909252604483015260648201526084016105e6565b5f5b8451811015610d13575f73ffffffffffffffffffffffffffffffffffffffff16858281518110610b1757610b1761286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610b6c576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83515f90859083908110610b8257610b8261286a565b60200260200101517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610be0576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828181518110610bf257610bf261286a565b60200260200101515f03610c32576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f858281518110610c4557610c4561286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a0858381518110610c7957610c7961286a565b602002602001015160e01c63ffffffff16901b8117905060c0848381518110610ca457610ca461286a565b6020026020010151901b81179050828281518110610cc457610cc461286a565b6020908102919091018101515f9283526002909152604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055600101610ae5565b5082604051610d22919061292e565b604051809103902084604051610d389190612897565b60405180910390207f820c9405a0f2bb85b6d3faa5e7cc32aab79e983e6b14fc2f47c34855003cd8b48484604051610d71929190612979565b60405180910390a350505050565b6001805474010000000000000000000000000000000000000000900460ff169003611045576001886001811115610db857610db86129d0565b03610def576040517f034aef8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff1603610fc057600489511015610e8d57885160046040517f34c9027a0000000000000000000000000000000000000000000000000000000081526004016105e6929190918252602082015260400190565b5f610e978a6129fd565b9050604051806060016040528060378152602001612e7160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610f605750604051806080016040528060428152602001612ea860429139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610fba576101048a511015610fb05789516040517f34c9027a000000000000000000000000000000000000000000000000000000008152600481019190915261010460248201526044016105e6565b610fba8a826115a6565b50611045565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff1603611045576040517f73dc029f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633036110d357600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740200000000000000000000000000000000000000001790556112b7565b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303611247576001545f80546040517f3e4f49e6000000000000000000000000000000000000000000000000000000008152919273ffffffffffffffffffffffffffffffffffffffff1691633e4f49e69161116b9160040190815260200190565b6020604051808303815f875af1158015611187573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ab9190612a4c565b905060038160078111156111c1576111c16129d0565b0361120a57600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674020000000000000000000000000000000000000000179055611241565b5f54816040517fe83cca170000000000000000000000000000000000000000000000000000000081526004016105e6929190612a6a565b506112b7565b6040517f625a43fe00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b60405133907fe09b21d6dd32859666ae309428ea624d48855f4762e0c91f342016e4947d793b905f90a2565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614611390576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b805f036113c9576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81815560405182917f63a01eaabe199ab888e562c930e21f3436583ea5acd4ca5c4ceffac3a523e03991a250565b6040518060600160405280602b8152602001612f0b602b91398051906020012081565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146114c8576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b73ffffffffffffffffffffffffffffffffffffffff8116611515576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f386c8d5fb4be6c928b7de4c7ae0a4b2ad0d2b2a7edad65d9f0af9ba255e51219905f90a250565b604051806080016040528060428152602001612ea8604291398051906020012081565b5f600483516115b59190612ae0565b67ffffffffffffffff8111156115cd576115cd6122a1565b6040519080825280601f01601f1916602001820160405280156115f7576020820181803683370190505b5090505f5b81518110156116745783611611826004612af9565b815181106116215761162161286a565b602001015160f81c60f81b82828151811061163e5761163e61286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053506001016115fc565b50606080604051806060016040528060378152602001612e7160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036117ae57604080516001808252818301909252906020808301908036833701905050604080516001808252818301909252919350816020015b60608152602001906001900390816117115790505090508280602001905181019061173c9190612b70565b5050855191925085915f91506117545761175461286a565b60200260200101835f8151811061176d5761176d61286a565b602002602001018290528273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050506117cd565b828060200190518101906117c29190612cb8565b509395509093505050505b5f5b82518110156118e2575f60035f8584815181106117ee576117ee61286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f8190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461189b575f60a083901c90506118958585815181106118865761188661286a565b602002602001015183836118ea565b506118d8565b6118d88584815181106118b0576118b061286a565b60200260200101518585815181106118ca576118ca61286a565b60200260200101514661200f565b50506001016117cf565b505050505050565b80606414806118fa5750806127d8145b15611d61575f611909846129fd565b90506040518060600160405280602b8152602001612f0b602b9139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146119cc576040517fb2673f6e0000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000082166004820152602481018390526044016105e6565b61012484511015611a175783516040517f34c9027a000000000000000000000000000000000000000000000000000000008152600481019190915261012460248201526044016105e6565b5f60048551611a269190612ae0565b67ffffffffffffffff811115611a3e57611a3e6122a1565b6040519080825280601f01601f191660200182016040528015611a68576020820181803683370190505b5090505f5b8151811015611ae55785611a82826004612af9565b81518110611a9257611a9261286a565b602001015160f81c60f81b828281518110611aaf57611aaf61286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600101611a6d565b505f8082806020019051810190611afc9190612d92565b50915091508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611b86576040517f7a6cfa0c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8084166004830152871660248201526044016105e6565b611b8f816129fd565b6040805180820190915260208082527f70726f636573734d65737361676546726f6d466f726569676e2862797465732991015293507fffffffff0000000000000000000000000000000000000000000000000000000084167fcd9e30d90000000000000000000000000000000000000000000000000000000014611c6a576040517fb2673f6e0000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000085166004820152602481018690526044016105e6565b5f60048251611c799190612ae0565b67ffffffffffffffff811115611c9157611c916122a1565b6040519080825280601f01601f191660200182016040528015611cbb576020820181803683370190505b5090505f5b8151811015611d385782611cd5600483612af9565b81518110611ce557611ce561286a565b602001015160f81c60f81b828281518110611d0257611d0261286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600101611cc0565b505f81806020019051810190611d4e9190612de8565b9050611d5a81886120db565b5050505050505b8060891480611d7257508062013881145b1561200a575f611d81846129fd565b9050604051806060016040528060218152602001612eea60219139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614611e44576040517fb2673f6e0000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000082166004820152602481018390526044016105e6565b60a484511015611e8d5783516040517f34c9027a000000000000000000000000000000000000000000000000000000008152600481019190915260a460248201526044016105e6565b5f60048551611e9c9190612ae0565b67ffffffffffffffff811115611eb457611eb46122a1565b6040519080825280601f01601f191660200182016040528015611ede576020820181803683370190505b5090505f5b8151811015611f5b5785611ef8600483612af9565b81518110611f0857611f0861286a565b602001015160f81c60f81b828281518110611f2557611f2561286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600101611ee3565b505f8082806020019051810190611f729190612e22565b915091508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611ffb576040517f7a6cfa0c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8084166004830152871660248201526044016105e6565b61200581866120db565b505050505b505050565b73ffffffffffffffffffffffffffffffffffffffff831660a0612031846129fd565b60e01c901b1760c082901b175f8181526002602052604090205460ff166120d5578361205c846129fd565b6040517f43abfb6c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301527fffffffff00000000000000000000000000000000000000000000000000000000166024820152604481018390526064016105e6565b50505050565b5f5b825181101561200a57828101601481015160249182015191909201919073ffffffffffffffffffffffffffffffffffffffff8216612147576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60048163ffffffff161015612199576040517f34c9027a00000000000000000000000000000000000000000000000000000000815263ffffffff821660048281019190915260248201526044016105e6565b5f8163ffffffff1667ffffffffffffffff8111156121b9576121b96122a1565b6040519080825280601f01601f1916602001820160405280156121e3576020820181803683370190505b5090505f5b8263ffffffff1681101561226457866122018287612af9565b815181106122115761221161286a565b602001015160f81c60f81b82828151811061222e5761222e61286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053506001016121e8565b5061227563ffffffff831685612af9565b935061228283828761200f565b5050506120dd565b5f6020828403121561229a575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612315576123156122a1565b604052919050565b5f67ffffffffffffffff821115612336576123366122a1565b5060051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81168114612361575f80fd5b50565b803561236f81612340565b919050565b5f82601f830112612383575f80fd5b813560206123986123938361231d565b6122ce565b8083825260208201915060208460051b8701019350868411156123b9575f80fd5b602086015b848110156123de5780356123d181612340565b83529183019183016123be565b509695505050505050565b5f82601f8301126123f8575f80fd5b813560206124086123938361231d565b8083825260208201915060208460051b870101935086841115612429575f80fd5b602086015b848110156123de578035835291830191830161242e565b5f805f60608486031215612457575f80fd5b833567ffffffffffffffff8082111561246e575f80fd5b61247a87838801612374565b9450602086013591508082111561248f575f80fd5b61249b87838801612374565b935060408601359150808211156124b0575f80fd5b506124bd868287016123e9565b9150509250925092565b80357fffffffff000000000000000000000000000000000000000000000000000000008116811461236f575f80fd5b8035801515811461236f575f80fd5b5f82601f830112612514575f80fd5b813560206125246123938361231d565b8083825260208201915060208460051b870101935086841115612545575f80fd5b602086015b848110156123de5761255b816124f6565b835291830191830161254a565b5f805f806080858703121561257b575f80fd5b843567ffffffffffffffff80821115612592575f80fd5b61259e88838901612374565b95506020915081870135818111156125b4575f80fd5b8701601f810189136125c4575f80fd5b80356125d26123938261231d565b81815260059190911b8201840190848101908b8311156125f0575f80fd5b928501925b8284101561261557612606846124c7565b825292850192908501906125f5565b9750505050604087013591508082111561262d575f80fd5b612639888389016123e9565b9350606087013591508082111561264e575f80fd5b5061265b87828801612505565b91505092959194509250565b5f60208284031215612677575f80fd5b813561268281612340565b9392505050565b5f67ffffffffffffffff8211156126a2576126a26122a1565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f8301126126dd575f80fd5b81356126eb61239382612689565b8181528460208386010111156126ff575f80fd5b816020850160208301375f918101602001919091529392505050565b80356002811061236f575f80fd5b5f805f805f805f805f805f6101608c8e031215612744575f80fd5b61274d8c612364565b9a5060208c0135995067ffffffffffffffff8060408e0135111561276f575f80fd5b61277f8e60408f01358f016126ce565b995061278d60608e0161271b565b985060808d0135975060a08d0135965060c08d013595506127b060e08e01612364565b94506127bf6101008e01612364565b9350806101208e013511156127d2575f80fd5b506127e48d6101208e01358e016126ce565b91506127f36101408d01612364565b90509295989b509295989b9093969950565b5f805f60608486031215612817575f80fd5b833561282281612340565b9250612830602085016124c7565b9150604084013590509250925092565b5f8060408385031215612851575f80fd5b82359150612861602084016124f6565b90509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81515f9082906020808601845b838110156128d657815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201906001016128a4565b50929695505050505050565b5f815180845260208085019450602084015f5b83811015612911578151875295820195908201906001016128f5565b509495945050505050565b602081525f61268260208301846128e2565b81515f9082906020808601845b838110156128d65781517fffffffff00000000000000000000000000000000000000000000000000000000168552938201939082019060010161293b565b604081525f61298b60408301856128e2565b8281036020848101919091528451808352858201928201905f5b818110156129c35784511515835293830193918301916001016129a5565b5090979650505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015612a445780818460040360031b1b83161693505b505050919050565b5f60208284031215612a5c575f80fd5b815160088110612682575f80fd5b8281526040810160088310612aa6577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b8260208301529392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b81810381811115612af357612af3612ab3565b92915050565b80820180821115612af357612af3612ab3565b5f82601f830112612b1b575f80fd5b8151612b2961239382612689565b8181526020856020848701011115612b3f575f80fd5b5f5b83811015612b5c578581018201518382018301528101612b41565b50505f918101602001919091529392505050565b5f805f805f8060c08789031215612b85575f80fd5b8651612b9081612340565b60208801516040890151919750955067ffffffffffffffff811115612bb3575f80fd5b612bbf89828a01612b0c565b945050606087015192506080870151915060a087015190509295509295509295565b5f82601f830112612bf0575f80fd5b81516020612c006123938361231d565b8083825260208201915060208460051b870101935086841115612c21575f80fd5b602086015b848110156123de5780518352918301918301612c26565b5f82601f830112612c4c575f80fd5b81516020612c5c6123938361231d565b82815260059290921b84018101918181019086841115612c7a575f80fd5b8286015b848110156123de57805167ffffffffffffffff811115612c9c575f80fd5b612caa8986838b0101612b0c565b845250918301918301612c7e565b5f805f805f8060c08789031215612ccd575f80fd5b865167ffffffffffffffff80821115612ce4575f80fd5b818901915089601f830112612cf7575f80fd5b81516020612d076123938361231d565b82815260059290921b8401810191818101908d841115612d25575f80fd5b948201945b83861015612d4c578551612d3d81612340565b82529482019490820190612d2a565b918c0151919a50909350505080821115612d64575f80fd5b612d708a838b01612be1565b96506040890151915080821115612d85575f80fd5b50612bbf89828a01612c3d565b5f805f60608486031215612da4575f80fd5b8351612daf81612340565b602085015190935067ffffffffffffffff811115612dcb575f80fd5b612dd786828701612b0c565b925050604084015190509250925092565b5f60208284031215612df8575f80fd5b815167ffffffffffffffff811115612e0e575f80fd5b612e1a84828501612b0c565b949350505050565b5f8060408385031215612e33575f80fd5b8251612e3e81612340565b602084015190925067ffffffffffffffff811115612e5a575f80fd5b612e6685828601612b0c565b915050925092905056fe7363686564756c6528616464726573732c75696e743235362c62797465732c627974657333322c627974657333322c75696e74323536297363686564756c65426174636828616464726573735b5d2c75696e743235365b5d2c62797465735b5d2c627974657333322c627974657333322c75696e743235362973656e644d657373616765546f4368696c6428616464726573732c62797465732972657175697265546f506173734d65737361676528616464726573732c62797465732c75696e7432353629a26469706673582212200d07699fd764e891ddd0000db0b74412058dc6d8ef3fe671bcf60d3ffb8ff3f464736f6c63430008170033", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106101a5575f3560e01c80636b3ddbad116100e85780638da5cb5b11610093578063e4c0aaf41161006e578063e4c0aaf4146104b5578063ed7a9754146104c8578063f7cde1cc146104d0578063fba12cc7146104d8575f80fd5b80638da5cb5b14610474578063932713681461049b578063e2c916f2146104ad575f80fd5b806381792616116100c357806381792616146104505780638456cb591461045957806387b68df114610461575f80fd5b80636b3ddbad1461037557806375f0bb52146103dc5780637c257f9d146103ef575f80fd5b80634783c35b116101535780635c975abb1161012e5780635c975abb1461031a5780635d78d4691461035157806362e7db5e1461036457806364578cbb1461036d575f80fd5b80634783c35b146102865780634b5e8ef4146102ad5780634e33804c146102c0575f80fd5b806336b057601161018357806336b05760146102345780633ce3778c146102665780633f4ba83a1461027c575f80fd5b80630c340a24146101a957806316979a18146101f357806327d1fdb61461022c575b5f80fd5b6001546101c99073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6101fb6104f7565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016101ea565b6101fb61051a565b61025661024236600461228a565b60026020525f908152604090205460ff1681565b60405190151581526020016101ea565b61026e600481565b6040519081526020016101ea565b61028461053d565b005b6101c97f000000000000000000000000000000000000000000000000000000000000000081565b6102846102bb366004612445565b610658565b6040805180820190915260208082527f70726f636573734d65737361676546726f6d466f726569676e286279746573299101526101fb7fcd9e30d9a96b5cf16d4d4b0663962503e1de56754666be789049f4520693c4e281565b60015461033f9074010000000000000000000000000000000000000000900460ff1681565b60405160ff90911681526020016101ea565b61028461035f366004612568565b6109c1565b61026e61012481565b61026e60a481565b6103b0610383366004612667565b73ffffffffffffffffffffffffffffffffffffffff165f908152600360205260409020549060a082901c90565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101ea565b6102846103ea366004612729565b610d7f565b6102566103fd366004612805565b60c01b77ffffffff0000000000000000000000000000000000000000604092831c1673ffffffffffffffffffffffffffffffffffffffff90931692909217919091175f9081526002602052205460ff1690565b61026e61010481565b610284611052565b61028461046f36600461228a565b6112e3565b6101c97f000000000000000000000000000000000000000000000000000000000000000081565b6102846104a9366004612840565b5050565b6101fb6113f8565b6102846104c3366004612667565b61141b565b6101fb611583565b61026e5f5481565b61026e6104e6366004612667565b60036020525f908152604090205481565b604051806060016040528060378152602001612e71603791398051906020012081565b604051806060016040528060218152602001612eea602191398051906020012081565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146105ef576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044015b60405180910390fd5b600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790556040517fb7494247183e272909cbb2787cfe307a720be20191d035876006b8903349b361905f90a1565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610705576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b8151835114158061071857508051835114155b1561076d578251825182516040517f1d0d3849000000000000000000000000000000000000000000000000000000008152600481019390935260248301919091526044820181905260648201526084016105e6565b5f5b8151811015610958575f73ffffffffffffffffffffffffffffffffffffffff168482815181106107a1576107a161286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16148061080f57505f73ffffffffffffffffffffffffffffffffffffffff168382815181106107ef576107ef61286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16145b15610846576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8282815181106108595761085961286a565b6020026020010151905080606414158015610875575080608914155b80156108835750806127d814155b80156108925750806201388114155b156108cc576040517f05877c35000000000000000000000000000000000000000000000000000000008152600481018290526024016105e6565b5f8483815181106108df576108df61286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a082901b811790508060035f88868151811061091e5761091e61286a565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040015f2055505060010161076f565b50816040516109679190612897565b60405180910390208360405161097d9190612897565b60405180910390207f95edddabf9b8025555342277f0dea82b15055157eb2f2fb0a2f7a26ea13110c5836040516109b4919061291c565b60405180910390a3505050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610a6e576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b82518451141580610a8157508051845114155b80610a8e57508151845114155b15610ae35783518351825184516040517f1d0d384900000000000000000000000000000000000000000000000000000000815260048101949094526024840192909252604483015260648201526084016105e6565b5f5b8451811015610d13575f73ffffffffffffffffffffffffffffffffffffffff16858281518110610b1757610b1761286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603610b6c576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83515f90859083908110610b8257610b8261286a565b60200260200101517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610be0576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828181518110610bf257610bf261286a565b60200260200101515f03610c32576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f858281518110610c4557610c4561286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff16905060a0858381518110610c7957610c7961286a565b602002602001015160e01c63ffffffff16901b8117905060c0848381518110610ca457610ca461286a565b6020026020010151901b81179050828281518110610cc457610cc461286a565b6020908102919091018101515f9283526002909152604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055600101610ae5565b5082604051610d22919061292e565b604051809103902084604051610d389190612897565b60405180910390207f820c9405a0f2bb85b6d3faa5e7cc32aab79e983e6b14fc2f47c34855003cd8b48484604051610d71929190612979565b60405180910390a350505050565b6001805474010000000000000000000000000000000000000000900460ff169003611045576001886001811115610db857610db86129d0565b03610def576040517f034aef8500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff1603610fc057600489511015610e8d57885160046040517f34c9027a0000000000000000000000000000000000000000000000000000000081526004016105e6929190918252602082015260400190565b5f610e978a6129fd565b9050604051806060016040528060378152602001612e7160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610f605750604051806080016040528060428152602001612ea860429139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b15610fba576101048a511015610fb05789516040517f34c9027a000000000000000000000000000000000000000000000000000000008152600481019190915261010460248201526044016105e6565b610fba8a826115a6565b50611045565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff1603611045576040517f73dc029f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633036110d357600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740200000000000000000000000000000000000000001790556112b7565b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303611247576001545f80546040517f3e4f49e6000000000000000000000000000000000000000000000000000000008152919273ffffffffffffffffffffffffffffffffffffffff1691633e4f49e69161116b9160040190815260200190565b6020604051808303815f875af1158015611187573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ab9190612a4c565b905060038160078111156111c1576111c16129d0565b0361120a57600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674020000000000000000000000000000000000000000179055611241565b5f54816040517fe83cca170000000000000000000000000000000000000000000000000000000081526004016105e6929190612a6a565b506112b7565b6040517f625a43fe00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b60405133907fe09b21d6dd32859666ae309428ea624d48855f4762e0c91f342016e4947d793b905f90a2565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614611390576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b805f036113c9576040517f7c946ed700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81815560405182917f63a01eaabe199ab888e562c930e21f3436583ea5acd4ca5c4ceffac3a523e03991a250565b6040518060600160405280602b8152602001612f0b602b91398051906020012081565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146114c8576040517fa43d6ada00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201526044016105e6565b73ffffffffffffffffffffffffffffffffffffffff8116611515576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f386c8d5fb4be6c928b7de4c7ae0a4b2ad0d2b2a7edad65d9f0af9ba255e51219905f90a250565b604051806080016040528060428152602001612ea8604291398051906020012081565b5f600483516115b59190612ae0565b67ffffffffffffffff8111156115cd576115cd6122a1565b6040519080825280601f01601f1916602001820160405280156115f7576020820181803683370190505b5090505f5b81518110156116745783611611826004612af9565b815181106116215761162161286a565b602001015160f81c60f81b82828151811061163e5761163e61286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053506001016115fc565b50606080604051806060016040528060378152602001612e7160379139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916036117ae57604080516001808252818301909252906020808301908036833701905050604080516001808252818301909252919350816020015b60608152602001906001900390816117115790505090508280602001905181019061173c9190612b70565b5050855191925085915f91506117545761175461286a565b60200260200101835f8151811061176d5761176d61286a565b602002602001018290528273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050506117cd565b828060200190518101906117c29190612cb8565b509395509093505050505b5f5b82518110156118e2575f60035f8584815181106117ee576117ee61286a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f8190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461189b575f60a083901c90506118958585815181106118865761188661286a565b602002602001015183836118ea565b506118d8565b6118d88584815181106118b0576118b061286a565b60200260200101518585815181106118ca576118ca61286a565b60200260200101514661200f565b50506001016117cf565b505050505050565b80606414806118fa5750806127d8145b15611d61575f611909846129fd565b90506040518060600160405280602b8152602001612f0b602b9139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146119cc576040517fb2673f6e0000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000082166004820152602481018390526044016105e6565b61012484511015611a175783516040517f34c9027a000000000000000000000000000000000000000000000000000000008152600481019190915261012460248201526044016105e6565b5f60048551611a269190612ae0565b67ffffffffffffffff811115611a3e57611a3e6122a1565b6040519080825280601f01601f191660200182016040528015611a68576020820181803683370190505b5090505f5b8151811015611ae55785611a82826004612af9565b81518110611a9257611a9261286a565b602001015160f81c60f81b828281518110611aaf57611aaf61286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600101611a6d565b505f8082806020019051810190611afc9190612d92565b50915091508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611b86576040517f7a6cfa0c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8084166004830152871660248201526044016105e6565b611b8f816129fd565b6040805180820190915260208082527f70726f636573734d65737361676546726f6d466f726569676e2862797465732991015293507fffffffff0000000000000000000000000000000000000000000000000000000084167fcd9e30d90000000000000000000000000000000000000000000000000000000014611c6a576040517fb2673f6e0000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000085166004820152602481018690526044016105e6565b5f60048251611c799190612ae0565b67ffffffffffffffff811115611c9157611c916122a1565b6040519080825280601f01601f191660200182016040528015611cbb576020820181803683370190505b5090505f5b8151811015611d385782611cd5600483612af9565b81518110611ce557611ce561286a565b602001015160f81c60f81b828281518110611d0257611d0261286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600101611cc0565b505f81806020019051810190611d4e9190612de8565b9050611d5a81886120db565b5050505050505b8060891480611d7257508062013881145b1561200a575f611d81846129fd565b9050604051806060016040528060218152602001612eea60219139805190602001207bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614611e44576040517fb2673f6e0000000000000000000000000000000000000000000000000000000081527fffffffff0000000000000000000000000000000000000000000000000000000082166004820152602481018390526044016105e6565b60a484511015611e8d5783516040517f34c9027a000000000000000000000000000000000000000000000000000000008152600481019190915260a460248201526044016105e6565b5f60048551611e9c9190612ae0565b67ffffffffffffffff811115611eb457611eb46122a1565b6040519080825280601f01601f191660200182016040528015611ede576020820181803683370190505b5090505f5b8151811015611f5b5785611ef8600483612af9565b81518110611f0857611f0861286a565b602001015160f81c60f81b828281518110611f2557611f2561286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600101611ee3565b505f8082806020019051810190611f729190612e22565b915091508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611ffb576040517f7a6cfa0c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8084166004830152871660248201526044016105e6565b61200581866120db565b505050505b505050565b73ffffffffffffffffffffffffffffffffffffffff831660a0612031846129fd565b60e01c901b1760c082901b175f8181526002602052604090205460ff166120d5578361205c846129fd565b6040517f43abfb6c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90921660048301527fffffffff00000000000000000000000000000000000000000000000000000000166024820152604481018390526064016105e6565b50505050565b5f5b825181101561200a57828101601481015160249182015191909201919073ffffffffffffffffffffffffffffffffffffffff8216612147576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60048163ffffffff161015612199576040517f34c9027a00000000000000000000000000000000000000000000000000000000815263ffffffff821660048281019190915260248201526044016105e6565b5f8163ffffffff1667ffffffffffffffff8111156121b9576121b96122a1565b6040519080825280601f01601f1916602001820160405280156121e3576020820181803683370190505b5090505f5b8263ffffffff1681101561226457866122018287612af9565b815181106122115761221161286a565b602001015160f81c60f81b82828151811061222e5761222e61286a565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053506001016121e8565b5061227563ffffffff831685612af9565b935061228283828761200f565b5050506120dd565b5f6020828403121561229a575f80fd5b5035919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612315576123156122a1565b604052919050565b5f67ffffffffffffffff821115612336576123366122a1565b5060051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81168114612361575f80fd5b50565b803561236f81612340565b919050565b5f82601f830112612383575f80fd5b813560206123986123938361231d565b6122ce565b8083825260208201915060208460051b8701019350868411156123b9575f80fd5b602086015b848110156123de5780356123d181612340565b83529183019183016123be565b509695505050505050565b5f82601f8301126123f8575f80fd5b813560206124086123938361231d565b8083825260208201915060208460051b870101935086841115612429575f80fd5b602086015b848110156123de578035835291830191830161242e565b5f805f60608486031215612457575f80fd5b833567ffffffffffffffff8082111561246e575f80fd5b61247a87838801612374565b9450602086013591508082111561248f575f80fd5b61249b87838801612374565b935060408601359150808211156124b0575f80fd5b506124bd868287016123e9565b9150509250925092565b80357fffffffff000000000000000000000000000000000000000000000000000000008116811461236f575f80fd5b8035801515811461236f575f80fd5b5f82601f830112612514575f80fd5b813560206125246123938361231d565b8083825260208201915060208460051b870101935086841115612545575f80fd5b602086015b848110156123de5761255b816124f6565b835291830191830161254a565b5f805f806080858703121561257b575f80fd5b843567ffffffffffffffff80821115612592575f80fd5b61259e88838901612374565b95506020915081870135818111156125b4575f80fd5b8701601f810189136125c4575f80fd5b80356125d26123938261231d565b81815260059190911b8201840190848101908b8311156125f0575f80fd5b928501925b8284101561261557612606846124c7565b825292850192908501906125f5565b9750505050604087013591508082111561262d575f80fd5b612639888389016123e9565b9350606087013591508082111561264e575f80fd5b5061265b87828801612505565b91505092959194509250565b5f60208284031215612677575f80fd5b813561268281612340565b9392505050565b5f67ffffffffffffffff8211156126a2576126a26122a1565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f8301126126dd575f80fd5b81356126eb61239382612689565b8181528460208386010111156126ff575f80fd5b816020850160208301375f918101602001919091529392505050565b80356002811061236f575f80fd5b5f805f805f805f805f805f6101608c8e031215612744575f80fd5b61274d8c612364565b9a5060208c0135995067ffffffffffffffff8060408e0135111561276f575f80fd5b61277f8e60408f01358f016126ce565b995061278d60608e0161271b565b985060808d0135975060a08d0135965060c08d013595506127b060e08e01612364565b94506127bf6101008e01612364565b9350806101208e013511156127d2575f80fd5b506127e48d6101208e01358e016126ce565b91506127f36101408d01612364565b90509295989b509295989b9093969950565b5f805f60608486031215612817575f80fd5b833561282281612340565b9250612830602085016124c7565b9150604084013590509250925092565b5f8060408385031215612851575f80fd5b82359150612861602084016124f6565b90509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b81515f9082906020808601845b838110156128d657815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201906001016128a4565b50929695505050505050565b5f815180845260208085019450602084015f5b83811015612911578151875295820195908201906001016128f5565b509495945050505050565b602081525f61268260208301846128e2565b81515f9082906020808601845b838110156128d65781517fffffffff00000000000000000000000000000000000000000000000000000000168552938201939082019060010161293b565b604081525f61298b60408301856128e2565b8281036020848101919091528451808352858201928201905f5b818110156129c35784511515835293830193918301916001016129a5565b5090979650505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f815160208301517fffffffff0000000000000000000000000000000000000000000000000000000080821693506004831015612a445780818460040360031b1b83161693505b505050919050565b5f60208284031215612a5c575f80fd5b815160088110612682575f80fd5b8281526040810160088310612aa6577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b8260208301529392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b81810381811115612af357612af3612ab3565b92915050565b80820180821115612af357612af3612ab3565b5f82601f830112612b1b575f80fd5b8151612b2961239382612689565b8181526020856020848701011115612b3f575f80fd5b5f5b83811015612b5c578581018201518382018301528101612b41565b50505f918101602001919091529392505050565b5f805f805f8060c08789031215612b85575f80fd5b8651612b9081612340565b60208801516040890151919750955067ffffffffffffffff811115612bb3575f80fd5b612bbf89828a01612b0c565b945050606087015192506080870151915060a087015190509295509295509295565b5f82601f830112612bf0575f80fd5b81516020612c006123938361231d565b8083825260208201915060208460051b870101935086841115612c21575f80fd5b602086015b848110156123de5780518352918301918301612c26565b5f82601f830112612c4c575f80fd5b81516020612c5c6123938361231d565b82815260059290921b84018101918181019086841115612c7a575f80fd5b8286015b848110156123de57805167ffffffffffffffff811115612c9c575f80fd5b612caa8986838b0101612b0c565b845250918301918301612c7e565b5f805f805f8060c08789031215612ccd575f80fd5b865167ffffffffffffffff80821115612ce4575f80fd5b818901915089601f830112612cf7575f80fd5b81516020612d076123938361231d565b82815260059290921b8401810191818101908d841115612d25575f80fd5b948201945b83861015612d4c578551612d3d81612340565b82529482019490820190612d2a565b918c0151919a50909350505080821115612d64575f80fd5b612d708a838b01612be1565b96506040890151915080821115612d85575f80fd5b50612bbf89828a01612c3d565b5f805f60608486031215612da4575f80fd5b8351612daf81612340565b602085015190935067ffffffffffffffff811115612dcb575f80fd5b612dd786828701612b0c565b925050604084015190509250925092565b5f60208284031215612df8575f80fd5b815167ffffffffffffffff811115612e0e575f80fd5b612e1a84828501612b0c565b949350505050565b5f8060408385031215612e33575f80fd5b8251612e3e81612340565b602084015190925067ffffffffffffffff811115612e5a575f80fd5b612e6685828601612b0c565b915050925092905056fe7363686564756c6528616464726573732c75696e743235362c62797465732c627974657333322c627974657333322c75696e74323536297363686564756c65426174636828616464726573735b5d2c75696e743235365b5d2c62797465735b5d2c627974657333322c627974657333322c75696e743235362973656e644d657373616765546f4368696c6428616464726573732c62797465732972657175697265546f506173734d65737361676528616464726573732c62797465732c75696e7432353629a26469706673582212200d07699fd764e891ddd0000db0b74412058dc6d8ef3fe671bcf60d3ffb8ff3f464736f6c63430008170033", + "linkReferences": {}, + "deployedLinkReferences": {} +}