Hierarchy

  • ContractFactory
    • TestGovernance__factory

Constructors

  • Parameters

    • Rest ...args: TestGovernanceConstructorParams

    Returns TestGovernance__factory

Properties

abi: readonly [{
    inputs: readonly [];
    name: "SF_GOV_INVALID_LIQUIDATION_OR_PATRICIAN_PERIOD";
    type: "error";
}, {
    inputs: readonly [];
    name: "SF_GOV_MUST_BE_CONTRACT";
    type: "error";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "factory";
        type: "address";
    }, {
        indexed: false;
        internalType: "bool";
        name: "authorized";
        type: "bool";
    }];
    name: "AppFactoryAuthorizationChanged";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "deployer";
        type: "address";
    }, {
        indexed: false;
        internalType: "string";
        name: "appRegistrationKey";
        type: "string";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "expirationTs";
        type: "uint256";
    }];
    name: "AppRegistrationKeyChanged";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "bool";
        name: "isKeySet";
        type: "bool";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "liquidationPeriod";
        type: "uint256";
    }];
    name: "CFAv1LiquidationPeriodChanged";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "bytes32";
        name: "key";
        type: "bytes32";
    }, {
        indexed: false;
        internalType: "bool";
        name: "isKeySet";
        type: "bool";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "value";
        type: "uint256";
    }];
    name: "ConfigChanged";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "previousOwner";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "newOwner";
        type: "address";
    }];
    name: "OwnershipTransferred";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "bool";
        name: "isKeySet";
        type: "bool";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "liquidationPeriod";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "patricianPeriod";
        type: "uint256";
    }];
    name: "PPPConfigurationChanged";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "bool";
        name: "isKeySet";
        type: "bool";
    }, {
        indexed: false;
        internalType: "address";
        name: "rewardAddress";
        type: "address";
    }];
    name: "RewardAddressChanged";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "bool";
        name: "isKeySet";
        type: "bool";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "minimumDeposit";
        type: "uint256";
    }];
    name: "SuperTokenMinimumDepositChanged";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        indexed: true;
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "bool";
        name: "isKeySet";
        type: "bool";
    }, {
        indexed: false;
        internalType: "address";
        name: "forwarder";
        type: "address";
    }, {
        indexed: false;
        internalType: "bool";
        name: "enabled";
        type: "bool";
    }];
    name: "TrustedForwarderChanged";
    type: "event";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "factory";
        type: "address";
    }];
    name: "authorizeAppFactory";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperToken[]";
        name: "token";
        type: "address[]";
    }, {
        internalType: "address[]";
        name: "newAdmins";
        type: "address[]";
    }];
    name: "batchChangeSuperTokenAdmin";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperToken[]";
        name: "tokens";
        type: "address[]";
    }];
    name: "batchUpdateSuperTokenLogic";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperToken[]";
        name: "tokens";
        type: "address[]";
    }, {
        internalType: "address[]";
        name: "tokenLogics";
        type: "address[]";
    }];
    name: "batchUpdateSuperTokenLogic";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperToken[]";
        name: "tokens";
        type: "address[]";
    }, {
        internalType: "uint256[]";
        name: "minimumDeposits";
        type: "uint256[]";
    }];
    name: "batchUpdateSuperTokenMinimumDeposit";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperToken";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "newAdmin";
        type: "address";
    }];
    name: "changeSuperTokenAdmin";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "deployer";
        type: "address";
    }, {
        internalType: "string";
        name: "registrationKey";
        type: "string";
    }];
    name: "clearAppRegistrationKey";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "key";
        type: "bytes32";
    }];
    name: "clearConfig";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }];
    name: "clearPPPConfig";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }];
    name: "clearRewardAddress";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperToken";
        name: "superToken";
        type: "address";
    }];
    name: "clearSuperTokenMinimumDeposit";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "address";
        name: "forwarder";
        type: "address";
    }];
    name: "disableTrustedForwarder";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "address";
        name: "forwarder";
        type: "address";
    }];
    name: "enableTrustedForwarder";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "key";
        type: "bytes32";
    }];
    name: "getConfigAsAddress";
    outputs: readonly [{
        internalType: "address";
        name: "value";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "key";
        type: "bytes32";
    }];
    name: "getConfigAsUint256";
    outputs: readonly [{
        internalType: "uint256";
        name: "period";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }];
    name: "getPPPConfig";
    outputs: readonly [{
        internalType: "uint256";
        name: "liquidationPeriod";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "patricianPeriod";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }];
    name: "getRewardAddress";
    outputs: readonly [{
        internalType: "address";
        name: "";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }];
    name: "getSuperTokenMinimumDeposit";
    outputs: readonly [{
        internalType: "uint256";
        name: "value";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "rewardAddress";
        type: "address";
    }, {
        internalType: "uint256";
        name: "liquidationPeriod";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "patricianPeriod";
        type: "uint256";
    }, {
        internalType: "address[]";
        name: "trustedForwarders";
        type: "address[]";
    }];
    name: "initialize";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "factory";
        type: "address";
    }];
    name: "isAuthorizedAppFactory";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "address";
        name: "forwarder";
        type: "address";
    }];
    name: "isTrustedForwarder";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "owner";
    outputs: readonly [{
        internalType: "address";
        name: "";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "agreementClass";
        type: "address";
    }];
    name: "registerAgreementClass";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "renounceOwnership";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "newGov";
        type: "address";
    }];
    name: "replaceGovernance";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "deployer";
        type: "address";
    }, {
        internalType: "string";
        name: "registrationKey";
        type: "string";
    }, {
        internalType: "uint256";
        name: "expirationTs";
        type: "uint256";
    }];
    name: "setAppRegistrationKey";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "key";
        type: "bytes32";
    }, {
        internalType: "address";
        name: "value";
        type: "address";
    }];
    name: "setConfig";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "key";
        type: "bytes32";
    }, {
        internalType: "uint256";
        name: "value";
        type: "uint256";
    }];
    name: "setConfig";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "uint256";
        name: "liquidationPeriod";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "patricianPeriod";
        type: "uint256";
    }];
    name: "setPPPConfig";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "address";
        name: "rewardAddress";
        type: "address";
    }];
    name: "setRewardAddress";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperfluidToken";
        name: "superToken";
        type: "address";
    }, {
        internalType: "uint256";
        name: "value";
        type: "uint256";
    }];
    name: "setSuperTokenMinimumDeposit";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "newOwner";
        type: "address";
    }];
    name: "transferOwnership";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "factory";
        type: "address";
    }];
    name: "unauthorizeAppFactory";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "hostNewLogic";
        type: "address";
    }, {
        internalType: "address[]";
        name: "agreementClassNewLogics";
        type: "address[]";
    }, {
        internalType: "address";
        name: "superTokenFactoryNewLogic";
        type: "address";
    }, {
        internalType: "address";
        name: "poolBeaconNewLogic";
        type: "address";
    }];
    name: "updateContracts";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "address";
        name: "deployer";
        type: "address";
    }, {
        internalType: "string";
        name: "registrationKey";
        type: "string";
    }];
    name: "verifyAppRegistrationKey";
    outputs: readonly [{
        internalType: "bool";
        name: "validNow";
        type: "bool";
    }, {
        internalType: "uint256";
        name: "expirationTs";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}]
bytecode: "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611f728061007e6000396000f3fe608060405234801561001057600080fd5b50600436106102105760003560e01c806380f70cba11610125578063948eda5e116100ad578063d099b6a01161007c578063d099b6a0146104a6578063e447cc1d146104b9578063f047a2d9146104cc578063f2fde38b146104df578063f79a8e63146104f257600080fd5b8063948eda5e1461045a578063ab846f1a1461046d578063c9615a9814610480578063cadf8f851461049357600080fd5b80638abe04e9116100f45780638abe04e9146103ed5780638b93b3f5146104105780638da5cb5b146104235780638e12552f146104345780638ecbd87b1461044757600080fd5b806380f70cba146103985780638369a0f1146103b9578063870299c0146103c75780638a7ff2f7146103da57600080fd5b806342148deb116101a8578063640b6cc911610177578063640b6cc914610344578063715018a61461035757806378707cb81461035f5780637dce4f81146103725780637f0558e41461038557600080fd5b806342148deb146102e357806344864b25146102f657806345228235146103095780635a9078181461033157600080fd5b806321964473116101e45780632196447314610297578063256b5173146102aa57806325c955c3146102bd57806332552908146102d057600080fd5b806286d5551461021557806301a06b971461022a57806311cf00f11461023d57806319df62ab1461026c575b600080fd5b610228610223366004611903565b610505565b005b610228610238366004611949565b6105d2565b61025061024b366004611a25565b610656565b6040805192151583526020830191909152015b60405180910390f35b61027f61027a366004611949565b610686565b6040516001600160a01b039091168152602001610263565b6102286102a5366004611ad3565b6106ba565b6102286102b8366004611b56565b61072d565b6102286102cb366004611949565b6107a0565b6102286102de366004611b56565b6107fc565b6102286102f1366004611ba1565b610879565b610228610304366004611949565b610936565b61031c610317366004611949565b6109a1565b60408051928352602083019190915201610263565b61022861033f366004611bf6565b6109e9565b610228610352366004611c72565b610a9b565b610228610aab565b61022861036d366004611cb3565b610abf565b610228610380366004611b56565b610ad1565b610228610393366004611c72565b610b31565b6103ab6103a6366004611c72565b610ba4565b604051908152602001610263565b61027f6103a6366004611c72565b6102286103d5366004611ad3565b610c15565b6103ab6103e8366004611949565b610d01565b6104006103fb366004611949565b610d2e565b6040519015158152602001610263565b61022861041e366004611949565b610d49565b6000546001600160a01b031661027f565b610228610442366004611d06565b610dcc565b610228610455366004611949565b6110de565b610228610468366004611a25565b61114f565b61022861047b366004611b56565b6111bd565b61022861048e366004611ad3565b611219565b6102286104a1366004611949565b611305565b6102286104b4366004611d94565b61133d565b6102286104c7366004611949565b61139d565b6104006104da366004611b56565b61140e565b6102286104ed366004611dfe565b611429565b610228610500366004611903565b6114a7565b8082111580610518575063ffffffff8210155b80610527575063ffffffff8110155b15610545576040516370b8cc0560e11b815260040160405180910390fd5b602082901b811761057885857fe420d96e81cb4a6b2abb2366c4f93312d4e2ae878a7d4b22e73472fdad891f78846114af565b6040805160018152602081018590529081018390526001600160a01b0380861691908716907f60a59221512cd8cbfb226200f7ba6f20dc4b38a3cf04993d17ea4e56d26aa186906060015b60405180910390a35050505050565b6105fd82827fe420d96e81cb4a6b2abb2366c4f93312d4e2ae878a7d4b22e73472fdad891f78611562565b60408051600080825260208201819052918101919091526001600160a01b0380831691908416907f60a59221512cd8cbfb226200f7ba6f20dc4b38a3cf04993d17ea4e56d26aa186906060015b60405180910390a35050565b60008060006106658585611623565b9050600061067587600084610ba4565b428110159890975095505050505050565b60006106b383837f9f60ae461adf056670e03ae602566409933242392cb06744f5747c9f38b05d09610ba4565b9392505050565b8281146106c9576106c9611e1b565b60005b818110156107255761071d868686848181106106ea576106ea611e31565b90506020020160208101906106ff9190611dfe565b85858581811061071157610711611e31565b90506020020135610b31565b6001016106cc565b505050505050565b8261073781611656565b604051630c56507560e01b81526001600160a01b0384811660048301528381166024830152851690630c56507590604401600060405180830381600087803b15801561078257600080fd5b505af1158015610796573d6000803e3d6000fd5b5050505050505050565b6107b48260006107af8461168d565b611562565b806001600160a01b0316826001600160a01b03167f8bfde939e79b7e6c603d67aa576e5b75a3f370334b14a9b0e5e263190034d31d600060405161064a911515815260200190565b61082883837f9f60ae461adf056670e03ae602566409933242392cb06744f5747c9f38b05d0984611720565b60408051600181526001600160a01b03838116602083015280851692908616917f14e12f219a4f9023456dc7832e10119ab768b8ccefc8cb79bc6de0419781eeeb91015b60405180910390a3505050565b8261088381611656565b60005b8281101561092f57846001600160a01b031663fa6e0cfe8585848181106108af576108af611e31565b90506020020160208101906108c49190611dfe565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260006024820152604401600060405180830381600087803b15801561090c57600080fd5b505af1158015610920573d6000803e3d6000fd5b50505050806001019050610886565b5050505050565b8161094081611656565b604051631ca0c40360e21b81526001600160a01b038381166004830152841690637283100c906024015b600060405180830381600087803b15801561098457600080fd5b505af1158015610998573d6000803e3d6000fd5b50505050505050565b60008060006109d185857fe420d96e81cb4a6b2abb2366c4f93312d4e2ae878a7d4b22e73472fdad891f78610ba4565b63ffffffff602082901c811697911695509350505050565b6001600160a01b0386166109ff576109ff611e1b565b6002546001600160a01b031615610a1857610a18611e1b565b600280546001600160a01b0319166001600160a01b038816908117909155610a42906000876107fc565b610a4f8660008686610505565b60005b8181101561099857600254610a93906001600160a01b03166000858585818110610a7e57610a7e611e31565b905060200201602081019061047b9190611dfe565b600101610a52565b610aa6838383611562565b505050565b610ab36117d5565b610abd600061182f565b565b610acb84848484611720565b50505050565b610adf83836107af8461187f565b60408051600181526001600160a01b038381166020830152600092820192909252818416918516907f168da2dec91b2e06e30d49955479383e76f71ba185807a8a5b75e2ed563e1d279060600161086c565b610b5d83837feae305fa863b373417e615b1044222e2806cefc7788d169ce6748a443c3f6cc4846114af565b6040805160018152602081018390526001600160a01b0380851692908616917fc055c4a3853372c08a98805545379133f00f7261d956b9197729d67f37a82a53910161086c565b6001600160a01b03808416600090815260016020908152604080832093861683529281528282208483529052908120805460ff16610c0957506001600160a01b0384166000908152600160209081526040808320838052825280832085845290915290205b60010154949350505050565b84610c1f81611656565b838214610c2e57610c2e611e1b565b60005b8481101561099857866001600160a01b031663fa6e0cfe878784818110610c5a57610c5a611e31565b9050602002016020810190610c6f9190611dfe565b868685818110610c8157610c81611e31565b9050602002016020810190610c969190611dfe565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401600060405180830381600087803b158015610cde57600080fd5b505af1158015610cf2573d6000803e3d6000fd5b50505050806001019050610c31565b60006106b383837feae305fa863b373417e615b1044222e2806cefc7788d169ce6748a443c3f6cc4610ba4565b6000610d3f8360006103a68561168d565b6001149392505050565b803b6000819003610d6d576040516380dddd7360e01b815260040160405180910390fd5b50610d84826000610d7d8461168d565b60016114af565b806001600160a01b0316826001600160a01b03167f8bfde939e79b7e6c603d67aa576e5b75a3f370334b14a9b0e5e263190034d31d600160405161064a911515815260200190565b85610dd681611656565b6001600160a01b03861615610e94576040516311a5465560e21b81526001600160a01b038781166004830152881690634695195490602401600060405180830381600087803b158015610e2857600080fd5b505af1158015610e3c573d6000803e3d6000fd5b50505050856001600160a01b0316639903ad386040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e7b57600080fd5b505af1158015610e8f573d6000803e3d6000fd5b505050505b60005b84811015610fb257876001600160a01b03166306cecba8878784818110610ec057610ec0611e31565b9050602002016020810190610ed59190611dfe565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015610f1657600080fd5b505af1158015610f2a573d6000803e3d6000fd5b50505050858582818110610f4057610f40611e31565b9050602002016020810190610f559190611dfe565b6001600160a01b0316639903ad386040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610f8f57600080fd5b505af1158015610fa3573d6000803e3d6000fd5b50505050806001019050610e97565b506001600160a01b0383161561106b576040516354fbc49360e01b81526001600160a01b0384811660048301528816906354fbc49390602401600060405180830381600087803b15801561100557600080fd5b505af1158015611019573d6000803e3d6000fd5b50505050826001600160a01b0316639903ad386040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561105857600080fd5b505af1925050508015611069575060015b505b6001600160a01b0382161561099857604051632f89bf8960e01b81526001600160a01b038381166004830152881690632f89bf8990602401600060405180830381600087803b1580156110bd57600080fd5b505af11580156110d1573d6000803e3d6000fd5b5050505050505050505050565b61110982827feae305fa863b373417e615b1044222e2806cefc7788d169ce6748a443c3f6cc4611562565b60408051600080825260208201526001600160a01b0380841692908516917fc055c4a3853372c08a98805545379133f00f7261d956b9197729d67f37a82a53910161064a565b600061115b8383611623565b905061116984600083611562565b826001600160a01b0316846001600160a01b03167fa22916b55c84301b9ba61d6494b1860339c075b3518e6db6f496bdf2a13d6ffc8460006040516111af929190611e8d565b60405180910390a350505050565b6111cb8383610d7d8461187f565b6040805160018082526001600160a01b03848116602084015292820152818416918516907f168da2dec91b2e06e30d49955479383e76f71ba185807a8a5b75e2ed563e1d279060600161086c565b8461122381611656565b83821461123257611232611e1b565b60005b8481101561099857866001600160a01b0316630c56507587878481811061125e5761125e611e31565b90506020020160208101906112739190611dfe565b86868581811061128557611285611e31565b905060200201602081019061129a9190611dfe565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401600060405180830381600087803b1580156112e257600080fd5b505af11580156112f6573d6000803e3d6000fd5b50505050806001019050611235565b8161130f81611656565b6040516315a024e160e01b81526001600160a01b0383811660048301528416906315a024e19060240161096a565b60006113498484611623565b905061135885600083856114af565b836001600160a01b0316856001600160a01b03167fa22916b55c84301b9ba61d6494b1860339c075b3518e6db6f496bdf2a13d6ffc85856040516105c3929190611e8d565b6113c882827f9f60ae461adf056670e03ae602566409933242392cb06744f5747c9f38b05d09611562565b60408051600080825260208201526001600160a01b0380841692908516917f14e12f219a4f9023456dc7832e10119ab768b8ccefc8cb79bc6de0419781eeeb910161064a565b600061141e84846103a68561187f565b600114949350505050565b6114316117d5565b6001600160a01b03811661149b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6114a48161182f565b50565b610acb848484845b836114b981611656565b60408051848152600160208201529081018390526001600160a01b0380861691908716907f33afe19ae6902b933890ff48190fabdc4cf7f5ab499be9c4d9d98e3b4562e3909060600160405180910390a350604080518082018252600180825260208083019485526001600160a01b039788166000908152828252848120979098168852958652828720948752939094529093209151825460ff19169015151782559151910155565b8261156c81611656565b826001600160a01b0316846001600160a01b03167f33afe19ae6902b933890ff48190fabdc4cf7f5ab499be9c4d9d98e3b4562e390846000806040516115c5939291909283529015156020830152604082015260600190565b60405180910390a350604080518082018252600080825260208083018281526001600160a01b03978816835260018083528584209790981683529581528382209482529390935291209051815460ff19169015151781559051910155565b60008282604051602001611638929190611eaf565b60405160208183030381529060405280519060200120905092915050565b6002546001600160a01b0382811691161461167357611673611e1b565b6000546001600160a01b031633146114a4576114a4611e1b565b6040805160208101829052603960608201527f6f72672e7375706572666c7569642d66696e616e63652e7375706572666c756960808201527f642e61707057686974654c697374696e672e666163746f72790000000000000060a08201526001600160a01b0383169181019190915260009060c0015b604051602081830303815290604052805190602001209050919050565b8361172a81611656565b60408051848152600160208201526001600160a01b03848116828401529151868316928816917f33afe19ae6902b933890ff48190fabdc4cf7f5ab499be9c4d9d98e3b4562e390919081900360600190a35060408051808201825260018082526001600160a01b03938416602080840191825297851660009081528289528481209790951685529587528284209484529390955290209251835460ff19169015151783559051910155565b6000546001600160a01b03163314610abd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611492565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040805160208101829052603260608201527f6f72672e7375706572666c7569642d66696e616e63652e7375706572666c756960808201527132173a393ab9ba32b22337b93bb0b93232b960711b60a08201526001600160a01b0383169181019190915260009060c001611703565b6001600160a01b03811681146114a457600080fd5b6000806000806080858703121561191957600080fd5b8435611924816118ee565b93506020850135611934816118ee565b93969395505050506040820135916060013590565b6000806040838503121561195c57600080fd5b8235611967816118ee565b91506020830135611977816118ee565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126119a957600080fd5b813567ffffffffffffffff808211156119c4576119c4611982565b604051601f8301601f19908116603f011681019082821181831017156119ec576119ec611982565b81604052838152866020858801011115611a0557600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600060608486031215611a3a57600080fd5b8335611a45816118ee565b92506020840135611a55816118ee565b9150604084013567ffffffffffffffff811115611a7157600080fd5b611a7d86828701611998565b9150509250925092565b60008083601f840112611a9957600080fd5b50813567ffffffffffffffff811115611ab157600080fd5b6020830191508360208260051b8501011115611acc57600080fd5b9250929050565b600080600080600060608688031215611aeb57600080fd5b8535611af6816118ee565b9450602086013567ffffffffffffffff80821115611b1357600080fd5b611b1f89838a01611a87565b90965094506040880135915080821115611b3857600080fd5b50611b4588828901611a87565b969995985093965092949392505050565b600080600060608486031215611b6b57600080fd5b8335611b76816118ee565b92506020840135611b86816118ee565b91506040840135611b96816118ee565b809150509250925092565b600080600060408486031215611bb657600080fd5b8335611bc1816118ee565b9250602084013567ffffffffffffffff811115611bdd57600080fd5b611be986828701611a87565b9497909650939450505050565b60008060008060008060a08789031215611c0f57600080fd5b8635611c1a816118ee565b95506020870135611c2a816118ee565b94506040870135935060608701359250608087013567ffffffffffffffff811115611c5457600080fd5b611c6089828a01611a87565b979a9699509497509295939492505050565b600080600060608486031215611c8757600080fd5b8335611c92816118ee565b92506020840135611ca2816118ee565b929592945050506040919091013590565b60008060008060808587031215611cc957600080fd5b8435611cd4816118ee565b93506020850135611ce4816118ee565b9250604085013591506060850135611cfb816118ee565b939692955090935050565b60008060008060008060a08789031215611d1f57600080fd5b8635611d2a816118ee565b95506020870135611d3a816118ee565b9450604087013567ffffffffffffffff811115611d5657600080fd5b611d6289828a01611a87565b9095509350506060870135611d76816118ee565b91506080870135611d86816118ee565b809150509295509295509295565b60008060008060808587031215611daa57600080fd5b8435611db5816118ee565b93506020850135611dc5816118ee565b9250604085013567ffffffffffffffff811115611de157600080fd5b611ded87828801611998565b949793965093946060013593505050565b600060208284031215611e1057600080fd5b81356106b3816118ee565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000815180845260005b81811015611e6d57602081850181015186830182015201611e51565b506000602082860101526020601f19601f83011685010191505092915050565b604081526000611ea06040830185611e47565b90508260208301529392505050565b60608152604160608201527f6f72672e7375706572666c7569642d66696e616e63652e7375706572666c756960808201527f642e61707057686974654c697374696e672e726567697374726174696f6e4b6560a0820152607960f81b60c082015260018060a01b038316602082015260e060408201526000611f3460e0830184611e47565b94935050505056fea264697066735822122063a7e8ea5d766c54e394554a1382f91625a8612427bcda3ea31e3d4cf61bcb4e64736f6c63430008170033" = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611f728061007e6000396000f3fe608060405234801561001057600080fd5b50600436106102105760003560e01c806380f70cba11610125578063948eda5e116100ad578063d099b6a01161007c578063d099b6a0146104a6578063e447cc1d146104b9578063f047a2d9146104cc578063f2fde38b146104df578063f79a8e63146104f257600080fd5b8063948eda5e1461045a578063ab846f1a1461046d578063c9615a9814610480578063cadf8f851461049357600080fd5b80638abe04e9116100f45780638abe04e9146103ed5780638b93b3f5146104105780638da5cb5b146104235780638e12552f146104345780638ecbd87b1461044757600080fd5b806380f70cba146103985780638369a0f1146103b9578063870299c0146103c75780638a7ff2f7146103da57600080fd5b806342148deb116101a8578063640b6cc911610177578063640b6cc914610344578063715018a61461035757806378707cb81461035f5780637dce4f81146103725780637f0558e41461038557600080fd5b806342148deb146102e357806344864b25146102f657806345228235146103095780635a9078181461033157600080fd5b806321964473116101e45780632196447314610297578063256b5173146102aa57806325c955c3146102bd57806332552908146102d057600080fd5b806286d5551461021557806301a06b971461022a57806311cf00f11461023d57806319df62ab1461026c575b600080fd5b610228610223366004611903565b610505565b005b610228610238366004611949565b6105d2565b61025061024b366004611a25565b610656565b6040805192151583526020830191909152015b60405180910390f35b61027f61027a366004611949565b610686565b6040516001600160a01b039091168152602001610263565b6102286102a5366004611ad3565b6106ba565b6102286102b8366004611b56565b61072d565b6102286102cb366004611949565b6107a0565b6102286102de366004611b56565b6107fc565b6102286102f1366004611ba1565b610879565b610228610304366004611949565b610936565b61031c610317366004611949565b6109a1565b60408051928352602083019190915201610263565b61022861033f366004611bf6565b6109e9565b610228610352366004611c72565b610a9b565b610228610aab565b61022861036d366004611cb3565b610abf565b610228610380366004611b56565b610ad1565b610228610393366004611c72565b610b31565b6103ab6103a6366004611c72565b610ba4565b604051908152602001610263565b61027f6103a6366004611c72565b6102286103d5366004611ad3565b610c15565b6103ab6103e8366004611949565b610d01565b6104006103fb366004611949565b610d2e565b6040519015158152602001610263565b61022861041e366004611949565b610d49565b6000546001600160a01b031661027f565b610228610442366004611d06565b610dcc565b610228610455366004611949565b6110de565b610228610468366004611a25565b61114f565b61022861047b366004611b56565b6111bd565b61022861048e366004611ad3565b611219565b6102286104a1366004611949565b611305565b6102286104b4366004611d94565b61133d565b6102286104c7366004611949565b61139d565b6104006104da366004611b56565b61140e565b6102286104ed366004611dfe565b611429565b610228610500366004611903565b6114a7565b8082111580610518575063ffffffff8210155b80610527575063ffffffff8110155b15610545576040516370b8cc0560e11b815260040160405180910390fd5b602082901b811761057885857fe420d96e81cb4a6b2abb2366c4f93312d4e2ae878a7d4b22e73472fdad891f78846114af565b6040805160018152602081018590529081018390526001600160a01b0380861691908716907f60a59221512cd8cbfb226200f7ba6f20dc4b38a3cf04993d17ea4e56d26aa186906060015b60405180910390a35050505050565b6105fd82827fe420d96e81cb4a6b2abb2366c4f93312d4e2ae878a7d4b22e73472fdad891f78611562565b60408051600080825260208201819052918101919091526001600160a01b0380831691908416907f60a59221512cd8cbfb226200f7ba6f20dc4b38a3cf04993d17ea4e56d26aa186906060015b60405180910390a35050565b60008060006106658585611623565b9050600061067587600084610ba4565b428110159890975095505050505050565b60006106b383837f9f60ae461adf056670e03ae602566409933242392cb06744f5747c9f38b05d09610ba4565b9392505050565b8281146106c9576106c9611e1b565b60005b818110156107255761071d868686848181106106ea576106ea611e31565b90506020020160208101906106ff9190611dfe565b85858581811061071157610711611e31565b90506020020135610b31565b6001016106cc565b505050505050565b8261073781611656565b604051630c56507560e01b81526001600160a01b0384811660048301528381166024830152851690630c56507590604401600060405180830381600087803b15801561078257600080fd5b505af1158015610796573d6000803e3d6000fd5b5050505050505050565b6107b48260006107af8461168d565b611562565b806001600160a01b0316826001600160a01b03167f8bfde939e79b7e6c603d67aa576e5b75a3f370334b14a9b0e5e263190034d31d600060405161064a911515815260200190565b61082883837f9f60ae461adf056670e03ae602566409933242392cb06744f5747c9f38b05d0984611720565b60408051600181526001600160a01b03838116602083015280851692908616917f14e12f219a4f9023456dc7832e10119ab768b8ccefc8cb79bc6de0419781eeeb91015b60405180910390a3505050565b8261088381611656565b60005b8281101561092f57846001600160a01b031663fa6e0cfe8585848181106108af576108af611e31565b90506020020160208101906108c49190611dfe565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260006024820152604401600060405180830381600087803b15801561090c57600080fd5b505af1158015610920573d6000803e3d6000fd5b50505050806001019050610886565b5050505050565b8161094081611656565b604051631ca0c40360e21b81526001600160a01b038381166004830152841690637283100c906024015b600060405180830381600087803b15801561098457600080fd5b505af1158015610998573d6000803e3d6000fd5b50505050505050565b60008060006109d185857fe420d96e81cb4a6b2abb2366c4f93312d4e2ae878a7d4b22e73472fdad891f78610ba4565b63ffffffff602082901c811697911695509350505050565b6001600160a01b0386166109ff576109ff611e1b565b6002546001600160a01b031615610a1857610a18611e1b565b600280546001600160a01b0319166001600160a01b038816908117909155610a42906000876107fc565b610a4f8660008686610505565b60005b8181101561099857600254610a93906001600160a01b03166000858585818110610a7e57610a7e611e31565b905060200201602081019061047b9190611dfe565b600101610a52565b610aa6838383611562565b505050565b610ab36117d5565b610abd600061182f565b565b610acb84848484611720565b50505050565b610adf83836107af8461187f565b60408051600181526001600160a01b038381166020830152600092820192909252818416918516907f168da2dec91b2e06e30d49955479383e76f71ba185807a8a5b75e2ed563e1d279060600161086c565b610b5d83837feae305fa863b373417e615b1044222e2806cefc7788d169ce6748a443c3f6cc4846114af565b6040805160018152602081018390526001600160a01b0380851692908616917fc055c4a3853372c08a98805545379133f00f7261d956b9197729d67f37a82a53910161086c565b6001600160a01b03808416600090815260016020908152604080832093861683529281528282208483529052908120805460ff16610c0957506001600160a01b0384166000908152600160209081526040808320838052825280832085845290915290205b60010154949350505050565b84610c1f81611656565b838214610c2e57610c2e611e1b565b60005b8481101561099857866001600160a01b031663fa6e0cfe878784818110610c5a57610c5a611e31565b9050602002016020810190610c6f9190611dfe565b868685818110610c8157610c81611e31565b9050602002016020810190610c969190611dfe565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401600060405180830381600087803b158015610cde57600080fd5b505af1158015610cf2573d6000803e3d6000fd5b50505050806001019050610c31565b60006106b383837feae305fa863b373417e615b1044222e2806cefc7788d169ce6748a443c3f6cc4610ba4565b6000610d3f8360006103a68561168d565b6001149392505050565b803b6000819003610d6d576040516380dddd7360e01b815260040160405180910390fd5b50610d84826000610d7d8461168d565b60016114af565b806001600160a01b0316826001600160a01b03167f8bfde939e79b7e6c603d67aa576e5b75a3f370334b14a9b0e5e263190034d31d600160405161064a911515815260200190565b85610dd681611656565b6001600160a01b03861615610e94576040516311a5465560e21b81526001600160a01b038781166004830152881690634695195490602401600060405180830381600087803b158015610e2857600080fd5b505af1158015610e3c573d6000803e3d6000fd5b50505050856001600160a01b0316639903ad386040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e7b57600080fd5b505af1158015610e8f573d6000803e3d6000fd5b505050505b60005b84811015610fb257876001600160a01b03166306cecba8878784818110610ec057610ec0611e31565b9050602002016020810190610ed59190611dfe565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015610f1657600080fd5b505af1158015610f2a573d6000803e3d6000fd5b50505050858582818110610f4057610f40611e31565b9050602002016020810190610f559190611dfe565b6001600160a01b0316639903ad386040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610f8f57600080fd5b505af1158015610fa3573d6000803e3d6000fd5b50505050806001019050610e97565b506001600160a01b0383161561106b576040516354fbc49360e01b81526001600160a01b0384811660048301528816906354fbc49390602401600060405180830381600087803b15801561100557600080fd5b505af1158015611019573d6000803e3d6000fd5b50505050826001600160a01b0316639903ad386040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561105857600080fd5b505af1925050508015611069575060015b505b6001600160a01b0382161561099857604051632f89bf8960e01b81526001600160a01b038381166004830152881690632f89bf8990602401600060405180830381600087803b1580156110bd57600080fd5b505af11580156110d1573d6000803e3d6000fd5b5050505050505050505050565b61110982827feae305fa863b373417e615b1044222e2806cefc7788d169ce6748a443c3f6cc4611562565b60408051600080825260208201526001600160a01b0380841692908516917fc055c4a3853372c08a98805545379133f00f7261d956b9197729d67f37a82a53910161064a565b600061115b8383611623565b905061116984600083611562565b826001600160a01b0316846001600160a01b03167fa22916b55c84301b9ba61d6494b1860339c075b3518e6db6f496bdf2a13d6ffc8460006040516111af929190611e8d565b60405180910390a350505050565b6111cb8383610d7d8461187f565b6040805160018082526001600160a01b03848116602084015292820152818416918516907f168da2dec91b2e06e30d49955479383e76f71ba185807a8a5b75e2ed563e1d279060600161086c565b8461122381611656565b83821461123257611232611e1b565b60005b8481101561099857866001600160a01b0316630c56507587878481811061125e5761125e611e31565b90506020020160208101906112739190611dfe565b86868581811061128557611285611e31565b905060200201602081019061129a9190611dfe565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401600060405180830381600087803b1580156112e257600080fd5b505af11580156112f6573d6000803e3d6000fd5b50505050806001019050611235565b8161130f81611656565b6040516315a024e160e01b81526001600160a01b0383811660048301528416906315a024e19060240161096a565b60006113498484611623565b905061135885600083856114af565b836001600160a01b0316856001600160a01b03167fa22916b55c84301b9ba61d6494b1860339c075b3518e6db6f496bdf2a13d6ffc85856040516105c3929190611e8d565b6113c882827f9f60ae461adf056670e03ae602566409933242392cb06744f5747c9f38b05d09611562565b60408051600080825260208201526001600160a01b0380841692908516917f14e12f219a4f9023456dc7832e10119ab768b8ccefc8cb79bc6de0419781eeeb910161064a565b600061141e84846103a68561187f565b600114949350505050565b6114316117d5565b6001600160a01b03811661149b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6114a48161182f565b50565b610acb848484845b836114b981611656565b60408051848152600160208201529081018390526001600160a01b0380861691908716907f33afe19ae6902b933890ff48190fabdc4cf7f5ab499be9c4d9d98e3b4562e3909060600160405180910390a350604080518082018252600180825260208083019485526001600160a01b039788166000908152828252848120979098168852958652828720948752939094529093209151825460ff19169015151782559151910155565b8261156c81611656565b826001600160a01b0316846001600160a01b03167f33afe19ae6902b933890ff48190fabdc4cf7f5ab499be9c4d9d98e3b4562e390846000806040516115c5939291909283529015156020830152604082015260600190565b60405180910390a350604080518082018252600080825260208083018281526001600160a01b03978816835260018083528584209790981683529581528382209482529390935291209051815460ff19169015151781559051910155565b60008282604051602001611638929190611eaf565b60405160208183030381529060405280519060200120905092915050565b6002546001600160a01b0382811691161461167357611673611e1b565b6000546001600160a01b031633146114a4576114a4611e1b565b6040805160208101829052603960608201527f6f72672e7375706572666c7569642d66696e616e63652e7375706572666c756960808201527f642e61707057686974654c697374696e672e666163746f72790000000000000060a08201526001600160a01b0383169181019190915260009060c0015b604051602081830303815290604052805190602001209050919050565b8361172a81611656565b60408051848152600160208201526001600160a01b03848116828401529151868316928816917f33afe19ae6902b933890ff48190fabdc4cf7f5ab499be9c4d9d98e3b4562e390919081900360600190a35060408051808201825260018082526001600160a01b03938416602080840191825297851660009081528289528481209790951685529587528284209484529390955290209251835460ff19169015151783559051910155565b6000546001600160a01b03163314610abd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611492565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040805160208101829052603260608201527f6f72672e7375706572666c7569642d66696e616e63652e7375706572666c756960808201527132173a393ab9ba32b22337b93bb0b93232b960711b60a08201526001600160a01b0383169181019190915260009060c001611703565b6001600160a01b03811681146114a457600080fd5b6000806000806080858703121561191957600080fd5b8435611924816118ee565b93506020850135611934816118ee565b93969395505050506040820135916060013590565b6000806040838503121561195c57600080fd5b8235611967816118ee565b91506020830135611977816118ee565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126119a957600080fd5b813567ffffffffffffffff808211156119c4576119c4611982565b604051601f8301601f19908116603f011681019082821181831017156119ec576119ec611982565b81604052838152866020858801011115611a0557600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600060608486031215611a3a57600080fd5b8335611a45816118ee565b92506020840135611a55816118ee565b9150604084013567ffffffffffffffff811115611a7157600080fd5b611a7d86828701611998565b9150509250925092565b60008083601f840112611a9957600080fd5b50813567ffffffffffffffff811115611ab157600080fd5b6020830191508360208260051b8501011115611acc57600080fd5b9250929050565b600080600080600060608688031215611aeb57600080fd5b8535611af6816118ee565b9450602086013567ffffffffffffffff80821115611b1357600080fd5b611b1f89838a01611a87565b90965094506040880135915080821115611b3857600080fd5b50611b4588828901611a87565b969995985093965092949392505050565b600080600060608486031215611b6b57600080fd5b8335611b76816118ee565b92506020840135611b86816118ee565b91506040840135611b96816118ee565b809150509250925092565b600080600060408486031215611bb657600080fd5b8335611bc1816118ee565b9250602084013567ffffffffffffffff811115611bdd57600080fd5b611be986828701611a87565b9497909650939450505050565b60008060008060008060a08789031215611c0f57600080fd5b8635611c1a816118ee565b95506020870135611c2a816118ee565b94506040870135935060608701359250608087013567ffffffffffffffff811115611c5457600080fd5b611c6089828a01611a87565b979a9699509497509295939492505050565b600080600060608486031215611c8757600080fd5b8335611c92816118ee565b92506020840135611ca2816118ee565b929592945050506040919091013590565b60008060008060808587031215611cc957600080fd5b8435611cd4816118ee565b93506020850135611ce4816118ee565b9250604085013591506060850135611cfb816118ee565b939692955090935050565b60008060008060008060a08789031215611d1f57600080fd5b8635611d2a816118ee565b95506020870135611d3a816118ee565b9450604087013567ffffffffffffffff811115611d5657600080fd5b611d6289828a01611a87565b9095509350506060870135611d76816118ee565b91506080870135611d86816118ee565b809150509295509295509295565b60008060008060808587031215611daa57600080fd5b8435611db5816118ee565b93506020850135611dc5816118ee565b9250604085013567ffffffffffffffff811115611de157600080fd5b611ded87828801611998565b949793965093946060013593505050565b600060208284031215611e1057600080fd5b81356106b3816118ee565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000815180845260005b81811015611e6d57602081850181015186830182015201611e51565b506000602082860101526020601f19601f83011685010191505092915050565b604081526000611ea06040830185611e47565b90508260208301529392505050565b60608152604160608201527f6f72672e7375706572666c7569642d66696e616e63652e7375706572666c756960808201527f642e61707057686974654c697374696e672e726567697374726174696f6e4b6560a0820152607960f81b60c082015260018060a01b038316602082015260e060408201526000611f3460e0830184611e47565b94935050505056fea264697066735822122063a7e8ea5d766c54e394554a1382f91625a8612427bcda3ea31e3d4cf61bcb4e64736f6c63430008170033"

Methods

  • Parameters

    • address: string

    Returns TestGovernance

  • Parameters

    • signer: Signer

    Returns TestGovernance__factory

  • Parameters

    • Optional overrides: Overrides & {
          from?: string;
      }

    Returns Promise<TestGovernance>

  • Parameters

    • Optional overrides: Overrides & {
          from?: string;
      }

    Returns TransactionRequest

  • Parameters

    • address: string
    • signerOrProvider: Signer | Provider

    Returns TestGovernance

  • Returns TestGovernanceInterface

Generated using TypeDoc