Inherits: IZeroGovernor, ThresholdGovernor
Author: M^0 Labs
The maximum number of Zero tokens that can be rewarded per active epoch.
Returns the address of the Emergency Governor Deployer.
Returns the address of the Power Token Deployer.
Returns the address of the Standard Governor Deployer.
The set of allowed cash tokens.
Construct a new ZeroGovernor contract.
Parameters
voteToken_
address
The address of the token used to vote.
emergencyGovernorDeployer_
address
The address of the Emergency Governor Deployer contract.
powerTokenDeployer_
address
The address of the Power Token Deployer contract.
standardGovernorDeployer_
address
The address of the Standard Governor Deployer contract.
bootstrapToken_
address
The address of the token that bootstraps the reset.
standardProposalFee_
uint256
The proposal fee for the Standard Governor.
emergencyProposalThresholdRatio_
uint16
The threshold ratio for the Emergency Governor.
zeroProposalThresholdRatio_
uint16
The threshold ratio for the Zero Governor.
allowedCashTokens_
address[]
The set of allowed cash tokens.
One of the valid proposals. Reset the Standard Governor, Emergency Governor, and Power Token to the Power Token holders. This would be used by Zero Token holders in the event that inflation is soon to result in Power Token overflowing, and/or there is a loss of faith in the state of either the Standard Governor or Emergency Governor.
One of the valid proposals. Reset the Standard Governor, Emergency Governor, and Power Token to the ZeroToken holders. This would be used by Zero Token holders if they no longer have faith in the current set of PowerToken holders and/or the state of either the Standard Governor or Emergency Governor.
One of the valid proposals. Sets the Cash Token of the system.
Parameters
newCashToken_
address
newProposalFee_
uint256
One of the valid proposals. Sets the threshold ratio for Emergency Governor proposals.
Parameters
newThresholdRatio_
uint16
One of the valid proposals. Sets the threshold ratio for this governor's proposals.
Parameters
newThresholdRatio_
uint16
Returns whether token
is an allowed Cash Token of the system, as a parameter in setCashToken proposal.
Parameters
token_
address
Returns
<none>
bool
Whether token
is an allowed Cash Token.
Returns the address of the Emergency Governor.
Returns the address of the Standard Governor.
Deploys the ephemeral standardGovernor
, emergencyGovernor
, and powerToken
contracts.
Parameters
emergencyGovernorDeployer_
address
The address of the Emergency Governor Deployer contract.
powerTokenDeployer_
address
The address of the Power Token Deployer contract.
standardGovernorDeployer_
address
The address of the Standard Governor Deployer contract.
bootstrapToken_
address
The address of a token to bootstrap the new Power Token.
cashToken_
address
The address of the Cash Token contract.
emergencyProposalThresholdRatio_
uint16
The threshold ratio for the Emergency Governor.
proposalFee_
uint256
The proposal fee for the Standard Governor.
Returns
standardGovernor_
address
The address of the deployed Standard Governor contract.
emergencyGovernor_
address
The address of the deployed Emergency Governor contract.
powerToken_
address
The address of the deployed Power Token contract.
*Redeploy the ephemeral standardGovernor
, emergencyGovernor
, and powerToken
contracts, where:
the cash token is the same cash token in the existing standardGovernor
the emergencyGovernor
threshold ratio is the same threshold ratio in the existing emergencyGovernor
the standardGovernor
proposal fee is the same proposal fee in the existing standardGovernor
*
Parameters
bootstrapToken_
address
The token to bootstrap the powerToken
balances and voting powers.
All proposals target this contract itself, and must call one of the listed functions to be valid.
Parameters
callData_
bytes
The call data to check.