⬅️ Contracts
PCVEquityMinter
A FeiTimedMinter that mints based on a percentage of PCV equity
Mainnet implementations
Core, CollateralizationOracleWrapper, BalancerLBPSwapper
Events
APRUpdate
event APRUpdate(uint256,uint256)
Params
Param |
Type |
Notes |
oldAprBasisPoints |
uint256 |
|
newAprBasisPoints |
uint256 |
|
BufferCapUpdate
event BufferCapUpdate(uint256,uint256)
Params
Param |
Type |
Notes |
oldBufferCap |
uint256 |
|
newBufferCap |
uint256 |
|
BufferUsed
event BufferUsed(uint256,uint256)
Params
Param |
Type |
Notes |
amountUsed |
uint256 |
|
bufferRemaining |
uint256 |
|
CollateralizationOracleUpdate
event CollateralizationOracleUpdate(address,address)
Params
Param |
Type |
Notes |
oldCollateralizationOracle |
address |
|
newCollateralizationOracle |
address |
|
ContractAdminRoleUpdate
event ContractAdminRoleUpdate(bytes32,bytes32)
Params
Param |
Type |
Notes |
oldContractAdminRole |
bytes32 indexed |
|
newContractAdminRole |
bytes32 indexed |
|
CoreUpdate
event CoreUpdate(address,address)
Params
Param |
Type |
Notes |
oldCore |
address indexed |
|
newCore |
address indexed |
|
DurationUpdate
event DurationUpdate(uint256,uint256)
Params
Param |
Type |
Notes |
oldDuration |
uint256 |
|
newDuration |
uint256 |
|
FeiMinting
event FeiMinting(address,uint256)
Params
Param |
Type |
Notes |
caller |
address indexed |
|
feiAmount |
uint256 |
|
IncentiveUpdate
event IncentiveUpdate(uint256,uint256)
Params
Param |
Type |
Notes |
oldIncentiveAmount |
uint256 |
|
newIncentiveAmount |
uint256 |
|
MintAmountUpdate
event MintAmountUpdate(uint256,uint256)
Params
Param |
Type |
Notes |
oldMintAmount |
uint256 |
|
newMintAmount |
uint256 |
|
Paused
event Paused(address)
Params
Param |
Type |
Notes |
account |
address |
|
RateLimitPerSecondUpdate
event RateLimitPerSecondUpdate(uint256,uint256)
Params
Param |
Type |
Notes |
oldRateLimitPerSecond |
uint256 |
|
newRateLimitPerSecond |
uint256 |
|
TargetUpdate
event TargetUpdate(address,address)
Params
Param |
Type |
Notes |
oldTarget |
address |
|
newTarget |
address |
|
TimerReset
event TimerReset(uint256)
Params
Param |
Type |
Notes |
startTime |
uint256 |
|
Unpaused
event Unpaused(address)
Params
Param |
Type |
Notes |
account |
address |
|
Methods
CONTRACT_ADMIN_ROLE
function CONTRACT_ADMIN_ROLE() view returns(bytes32)
a role used with a subset of governor permissions for this contract only
Returns
MAX_APR_BASIS_POINTS
function MAX_APR_BASIS_POINTS() view returns(uint256)
The maximum percentage of PCV equity to be minted per year, in basis points
Returns
MAX_MINT_FREQUENCY
function MAX_MINT_FREQUENCY() view returns(uint256)
least frequent that mints can happen
Returns
MAX_RATE_LIMIT_PER_SECOND
function MAX_RATE_LIMIT_PER_SECOND() view returns(uint256)
maximum rate limit per second governance can set for this contract
Returns
MIN_MINT_FREQUENCY
function MIN_MINT_FREQUENCY() view returns(uint256)
most frequent that mints can happen
Returns
aprBasisPoints
function aprBasisPoints() view returns(uint256)
the APR paid out from pcv equity per year expressed in basis points
Returns
buffer
function buffer() view returns(uint256)
the amount of action used before hitting limit
replenishes at rateLimitPerSecond per second up to bufferCap
Returns
bufferCap
function bufferCap() view returns(uint256)
the cap of the buffer that can be used at once
Returns
collateralizationOracle
function collateralizationOracle() view returns(address)
the collateralization oracle used to determine PCV equity
Returns
core
function core() view returns(address)
address of the Core contract referenced
Returns
Param |
Type |
Notes |
|
address |
ICore implementation address |
doPartialAction
function doPartialAction() view returns(bool)
a flag for whether to allow partial actions to complete if the buffer is less than amount
Returns
duration
function duration() view returns(uint256)
the duration of the timed period
Returns
fei
function fei() view returns(address)
address of the Fei contract referenced by Core
Returns
Param |
Type |
Notes |
|
address |
IFei implementation address |
feiBalance
function feiBalance() view returns(uint256)
fei balance of contract
Returns
Param |
Type |
Notes |
|
uint256 |
fei amount held |
incentiveAmount
function incentiveAmount() view returns(uint256)
FEI incentive for calling keeper functions
Returns
isContractAdmin
function isContractAdmin(address) view returns(bool)
returns whether a given address has the admin role for this contract
Params
Param |
Type |
Notes |
_admin |
address |
|
Returns
isTimeEnded
function isTimeEnded() view returns(bool)
return true if time period has ended
Returns
isTimeStarted
function isTimeStarted() view returns(bool)
Returns
lastBufferUsedTime
function lastBufferUsedTime() view returns(uint256)
the last time the buffer was used by the contract
Returns
mint
function mint() nonpayable
triggers a minting of FEI based on the PCV equity
mintAmount
function mintAmount() view returns(uint256)
Returns
pause
function pause() nonpayable
set pausable methods to paused
paused
function paused() view returns(bool)
Returns true if the contract is paused, and false otherwise.
Returns
rateLimitPerSecond
function rateLimitPerSecond() view returns(uint256)
the rate per second for this contract
Returns
remainingTime
function remainingTime() view returns(uint256)
number of seconds remaining until time is up
Returns
Param |
Type |
Notes |
|
uint256 |
remaining |
setAPRBasisPoints
function setAPRBasisPoints(uint256) nonpayable
sets the new APR for determining buyback size from PCV equity
Params
Param |
Type |
Notes |
newAprBasisPoints |
uint256 |
|
setBufferCap
function setBufferCap(uint256) nonpayable
set the buffer cap
Params
Param |
Type |
Notes |
newBufferCap |
uint256 |
|
setCollateralizationOracle
function setCollateralizationOracle(address) nonpayable
set the collateralization oracle
Params
Param |
Type |
Notes |
newCollateralizationOracle |
address |
|
setContractAdminRole
function setContractAdminRole(bytes32) nonpayable
sets a new admin role for this contract
Params
Param |
Type |
Notes |
newContractAdminRole |
bytes32 |
|
setCore
function setCore(address) nonpayable
set new Core reference address
Params
Param |
Type |
Notes |
newCore |
address |
the new core address |
setFrequency
function setFrequency(uint256) nonpayable
set the mint frequency
Params
Param |
Type |
Notes |
newFrequency |
uint256 |
|
setIncentiveAmount
function setIncentiveAmount(uint256) nonpayable
set the incentiveAmount
Params
Param |
Type |
Notes |
newIncentiveAmount |
uint256 |
|
setMintAmount
function setMintAmount(uint256) nonpayable
Params
Param |
Type |
Notes |
newMintAmount |
uint256 |
|
setRateLimitPerSecond
function setRateLimitPerSecond(uint256) nonpayable
set the rate limit per second
Params
Param |
Type |
Notes |
newRateLimitPerSecond |
uint256 |
|
setTarget
function setTarget(address) nonpayable
set the new FEI target
Params
Param |
Type |
Notes |
newTarget |
address |
|
startTime
function startTime() view returns(uint256)
the start timestamp of the timed period
Returns
target
function target() view returns(address)
the target receiving minted FEI
Returns
timeSinceStart
function timeSinceStart() view returns(uint256)
number of seconds since contract was initialized
will be less than or equal to duration
Returns
Param |
Type |
Notes |
|
uint256 |
timestamp |
tribe
function tribe() view returns(address)
address of the Tribe contract referenced by Core
Returns
Param |
Type |
Notes |
|
address |
IERC20 implementation address |
tribeBalance
function tribeBalance() view returns(uint256)
tribe balance of contract
Returns
Param |
Type |
Notes |
|
uint256 |
tribe amount held |
unpause
function unpause() nonpayable
set pausable methods to unpaused
⬅️ Contracts