UNPKG

@venusprotocol/governance-contracts

Version:
498 lines (497 loc) 31.4 kB
{ "_format": "hh-sol-artifact-1", "contractName": "IRMRiskSteward", "sourceName": "contracts/RiskSteward/IRMRiskSteward.sol", "abi": [ { "inputs": [ { "internalType": "address", "name": "corePoolComptroller_", "type": "address" }, { "internalType": "address", "name": "riskStewardReceiver_", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "InvalidAddressLength", "type": "error" }, { "inputs": [], "name": "OnlyRiskStewardReceiver", "type": "error" }, { "inputs": [], "name": "RedundantValue", "type": "error" }, { "inputs": [], "name": "RenounceOwnershipNotAllowed", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "errorCode", "type": "uint256" } ], "name": "SetInterestRateModelFailed", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "calledContract", "type": "address" }, { "internalType": "string", "name": "methodSignature", "type": "string" } ], "name": "Unauthorized", "type": "error" }, { "inputs": [], "name": "UnsupportedUpdateType", "type": "error" }, { "inputs": [], "name": "ZeroAddressNotAllowed", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint256", "name": "updateId", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "market", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newInterestRateModel", "type": "address" } ], "name": "InterestRateModelUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oldAccessControlManager", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newAccessControlManager", "type": "address" } ], "name": "NewAccessControlManager", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferStarted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "inputs": [], "name": "CORE_POOL_COMPTROLLER", "outputs": [ { "internalType": "contract ICorePoolComptroller", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "INTEREST_RATE_MODEL", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "INTEREST_RATE_MODEL_KEY", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "RISK_STEWARD_RECEIVER", "outputs": [ { "internalType": "contract IRiskStewardReceiver", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "accessControlManager", "outputs": [ { "internalType": "contract IAccessControlManagerV8", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "string", "name": "referenceId", "type": "string" }, { "internalType": "uint256", "name": "updateId", "type": "uint256" }, { "internalType": "address", "name": "market", "type": "address" }, { "internalType": "string", "name": "updateType", "type": "string" }, { "internalType": "bytes32", "name": "updateTypeKey", "type": "bytes32" }, { "internalType": "bytes", "name": "newValue", "type": "bytes" }, { "internalType": "bytes", "name": "previousValue", "type": "bytes" }, { "internalType": "uint256", "name": "timestamp", "type": "uint256" }, { "internalType": "address", "name": "publisher", "type": "address" }, { "internalType": "uint96", "name": "poolId", "type": "uint96" }, { "internalType": "uint32", "name": "destLzEid", "type": "uint32" }, { "internalType": "bytes", "name": "additionalData", "type": "bytes" } ], "internalType": "struct RiskParameterUpdate", "name": "update", "type": "tuple" } ], "name": "applyUpdate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "accessControlManager_", "type": "address" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "string", "name": "referenceId", "type": "string" }, { "internalType": "uint256", "name": "updateId", "type": "uint256" }, { "internalType": "address", "name": "market", "type": "address" }, { "internalType": "string", "name": "updateType", "type": "string" }, { "internalType": "bytes32", "name": "updateTypeKey", "type": "bytes32" }, { "internalType": "bytes", "name": "newValue", "type": "bytes" }, { "internalType": "bytes", "name": "previousValue", "type": "bytes" }, { "internalType": "uint256", "name": "timestamp", "type": "uint256" }, { "internalType": "address", "name": "publisher", "type": "address" }, { "internalType": "uint96", "name": "poolId", "type": "uint96" }, { "internalType": "uint32", "name": "destLzEid", "type": "uint32" }, { "internalType": "bytes", "name": "additionalData", "type": "bytes" } ], "internalType": "struct RiskParameterUpdate", "name": "update", "type": "tuple" } ], "name": "isSafeForDirectExecution", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pendingOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "safeDeltaBps", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "accessControlManager_", "type": "address" } ], "name": "setAccessControlManager", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x60c060405234801561001057600080fd5b5060405161148538038061148583398101604081905261002f91610160565b6100388161005a565b6001600160a01b03808316608052811660a052610053610084565b5050610193565b6001600160a01b038116610081576040516342bcdf7f60e11b815260040160405180910390fd5b50565b600054610100900460ff16156100f05760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015610142576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811461015b57600080fd5b919050565b6000806040838503121561017357600080fd5b61017c83610144565b915061018a60208401610144565b90509250929050565b60805160a0516112bf6101c66000396000818161024201526105f10152600081816102e70152610bf601526112bf6000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063b296e6cb11610097578063e30c397811610066578063e30c3978146102a8578063ee97f265146102c6578063f2fde38b146102cf578063fa7b81a0146102e257600080fd5b8063b296e6cb1461023d578063b4a0bdf314610264578063bf63783914610282578063c4d66de81461029557600080fd5b8063715018a6116100d3578063715018a61461018457806379ba50971461018c5780638da5cb5b14610194578063a052e9b3146101d357600080fd5b80630e32cb86146100fa5780633c781b1f1461010f57806342b7cfbd14610161575b600080fd5b61010d61010836600461111a565b610309565b005b61014b6040518060400160405280601181526020017f696e746572657374526174654d6f64656c00000000000000000000000000000081525081565b604051610158919061113e565b60405180910390f35b61017461016f3660046111ab565b61031d565b6040519015158152602001610158565b61010d6104f0565b61010d610522565b60335473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610158565b60408051808201909152601181527f696e746572657374526174654d6f64656c00000000000000000000000000000060209091015261022f7ff75408e574901a1e186e15f549424e67ef3d922f87ae58b527ea22f51cf7ef2581565b604051908152602001610158565b6101ae7f000000000000000000000000000000000000000000000000000000000000000081565b60975473ffffffffffffffffffffffffffffffffffffffff166101ae565b61010d6102903660046111ab565b6105d9565b61010d6102a336600461111a565b610710565b60655473ffffffffffffffffffffffffffffffffffffffff166101ae565b61022f60c95481565b61010d6102dd36600461111a565b6108a4565b6101ae7f000000000000000000000000000000000000000000000000000000000000000081565b610311610954565b61031a816109d7565b50565b60408051808201909152601181527f696e746572657374526174654d6f64656c000000000000000000000000000000602090910152600060808201357ff75408e574901a1e186e15f549424e67ef3d922f87ae58b527ea22f51cf7ef25146103b1576040517f80919d7b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006103fd6103c360a08501856111e7565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610af992505050565b90506000610411606085016040860161111a565b73ffffffffffffffffffffffffffffffffffffffff1663f3fdb15a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561045b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061047f9190611253565b90508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036104e6576040517f925cd79500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060009392505050565b6040517f96c553eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606554339073ffffffffffffffffffffffffffffffffffffffff1681146105d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61031a81610b50565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610648576040517f3a739dd700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051808201909152601181527f696e746572657374526174654d6f64656c0000000000000000000000000000006020909101527f08abf71a8b6fe5e1e791ea0ab6bdb19810c26dd07851a74ad815dd0ae30810db6080820135016106de5760006106ba6103c360a08401846111e7565b90506106da60208301356106d4606085016040860161111a565b83610b81565b5050565b6040517f80919d7b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff16158080156107305750600054600160ff909116105b8061074a5750303b15801561074a575060005460ff166001145b6107d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105c7565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561083457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61083d82610e03565b80156106da57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a15050565b6108ac610954565b6065805473ffffffffffffffffffffffffffffffffffffffff83167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116811790915561090f60335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b60335473ffffffffffffffffffffffffffffffffffffffff1633146109d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c7565b565b73ffffffffffffffffffffffffffffffffffffffff8116610a7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f696e76616c696420616365737320636f6e74726f6c206d616e6167657220616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105c7565b6097805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa09101610898565b60008151602014610b36576040517fcc2cec0200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81806020019051810190610b4a9190611253565b92915050565b606580547fffffffffffffffffffffffff000000000000000000000000000000000000000016905561031a81610eab565b60008273ffffffffffffffffffffffffffffffffffffffff16635fe3b5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf29190611253565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610d20576040517ff2b3abbd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301526000919085169063f2b3abbd906024016020604051808303816000875af1158015610cb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cdd9190611270565b90508015610d1a576040517f4bb4ca74000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b50610da2565b6040517f8bcd401600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690638bcd401690602401600060405180830381600087803b158015610d8957600080fd5b505af1158015610d9d573d6000803e3d6000fd5b505050505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16857fa8e9cd499759e0d6670a4fb6813dccb496a67475ff4c67d231e79e23bb816b4f60405160405180910390a450505050565b600054610100900460ff16610e9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b610ea2610f22565b61031a81610fc1565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610fb9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b6109d5611058565b600054610100900460ff16610311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b600054610100900460ff166110ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b6109d533610b50565b73ffffffffffffffffffffffffffffffffffffffff8116811461031a57600080fd5b60006020828403121561112c57600080fd5b8135611137816110f8565b9392505050565b60006020808352835180602085015260005b8181101561116c57858101830151858201604001528201611150565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6000602082840312156111bd57600080fd5b813567ffffffffffffffff8111156111d457600080fd5b8201610180818503121561113757600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261121c57600080fd5b83018035915067ffffffffffffffff82111561123757600080fd5b60200191503681900382131561124c57600080fd5b9250929050565b60006020828403121561126557600080fd5b8151611137816110f8565b60006020828403121561128257600080fd5b505191905056fea2646970667358221220ffafab2b05c4082cc0eab20286eea72770cd146ce1ad14000b0adc55a789f6cf64736f6c63430008190033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063b296e6cb11610097578063e30c397811610066578063e30c3978146102a8578063ee97f265146102c6578063f2fde38b146102cf578063fa7b81a0146102e257600080fd5b8063b296e6cb1461023d578063b4a0bdf314610264578063bf63783914610282578063c4d66de81461029557600080fd5b8063715018a6116100d3578063715018a61461018457806379ba50971461018c5780638da5cb5b14610194578063a052e9b3146101d357600080fd5b80630e32cb86146100fa5780633c781b1f1461010f57806342b7cfbd14610161575b600080fd5b61010d61010836600461111a565b610309565b005b61014b6040518060400160405280601181526020017f696e746572657374526174654d6f64656c00000000000000000000000000000081525081565b604051610158919061113e565b60405180910390f35b61017461016f3660046111ab565b61031d565b6040519015158152602001610158565b61010d6104f0565b61010d610522565b60335473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610158565b60408051808201909152601181527f696e746572657374526174654d6f64656c00000000000000000000000000000060209091015261022f7ff75408e574901a1e186e15f549424e67ef3d922f87ae58b527ea22f51cf7ef2581565b604051908152602001610158565b6101ae7f000000000000000000000000000000000000000000000000000000000000000081565b60975473ffffffffffffffffffffffffffffffffffffffff166101ae565b61010d6102903660046111ab565b6105d9565b61010d6102a336600461111a565b610710565b60655473ffffffffffffffffffffffffffffffffffffffff166101ae565b61022f60c95481565b61010d6102dd36600461111a565b6108a4565b6101ae7f000000000000000000000000000000000000000000000000000000000000000081565b610311610954565b61031a816109d7565b50565b60408051808201909152601181527f696e746572657374526174654d6f64656c000000000000000000000000000000602090910152600060808201357ff75408e574901a1e186e15f549424e67ef3d922f87ae58b527ea22f51cf7ef25146103b1576040517f80919d7b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006103fd6103c360a08501856111e7565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610af992505050565b90506000610411606085016040860161111a565b73ffffffffffffffffffffffffffffffffffffffff1663f3fdb15a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561045b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061047f9190611253565b90508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036104e6576040517f925cd79500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060009392505050565b6040517f96c553eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606554339073ffffffffffffffffffffffffffffffffffffffff1681146105d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61031a81610b50565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610648576040517f3a739dd700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051808201909152601181527f696e746572657374526174654d6f64656c0000000000000000000000000000006020909101527f08abf71a8b6fe5e1e791ea0ab6bdb19810c26dd07851a74ad815dd0ae30810db6080820135016106de5760006106ba6103c360a08401846111e7565b90506106da60208301356106d4606085016040860161111a565b83610b81565b5050565b6040517f80919d7b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff16158080156107305750600054600160ff909116105b8061074a5750303b15801561074a575060005460ff166001145b6107d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105c7565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561083457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61083d82610e03565b80156106da57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a15050565b6108ac610954565b6065805473ffffffffffffffffffffffffffffffffffffffff83167fffffffffffffffffffffffff0000000000000000000000000000000000000000909116811790915561090f60335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b60335473ffffffffffffffffffffffffffffffffffffffff1633146109d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c7565b565b73ffffffffffffffffffffffffffffffffffffffff8116610a7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f696e76616c696420616365737320636f6e74726f6c206d616e6167657220616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105c7565b6097805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa09101610898565b60008151602014610b36576040517fcc2cec0200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81806020019051810190610b4a9190611253565b92915050565b606580547fffffffffffffffffffffffff000000000000000000000000000000000000000016905561031a81610eab565b60008273ffffffffffffffffffffffffffffffffffffffff16635fe3b5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf29190611253565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610d20576040517ff2b3abbd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301526000919085169063f2b3abbd906024016020604051808303816000875af1158015610cb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cdd9190611270565b90508015610d1a576040517f4bb4ca74000000000000000000000000000000000000000000000000000000008152600481018290526024016105c7565b50610da2565b6040517f8bcd401600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152841690638bcd401690602401600060405180830381600087803b158015610d8957600080fd5b505af1158015610d9d573d6000803e3d6000fd5b505050505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16857fa8e9cd499759e0d6670a4fb6813dccb496a67475ff4c67d231e79e23bb816b4f60405160405180910390a450505050565b600054610100900460ff16610e9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b610ea2610f22565b61031a81610fc1565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610fb9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b6109d5611058565b600054610100900460ff16610311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b600054610100900460ff166110ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105c7565b6109d533610b50565b73ffffffffffffffffffffffffffffffffffffffff8116811461031a57600080fd5b60006020828403121561112c57600080fd5b8135611137816110f8565b9392505050565b60006020808352835180602085015260005b8181101561116c57858101830151858201604001528201611150565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6000602082840312156111bd57600080fd5b813567ffffffffffffffff8111156111d457600080fd5b8201610180818503121561113757600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261121c57600080fd5b83018035915067ffffffffffffffff82111561123757600080fd5b60200191503681900382131561124c57600080fd5b9250929050565b60006020828403121561126557600080fd5b8151611137816110f8565b60006020828403121561128257600080fd5b505191905056fea2646970667358221220ffafab2b05c4082cc0eab20286eea72770cd146ce1ad14000b0adc55a789f6cf64736f6c63430008190033", "linkReferences": {}, "deployedLinkReferences": {} }