AltExercisepOLY
Exercise contract for unapproved sellers prior to migrating pOLY. It is not possible for a user to use both (no double dipping).
State Variables
owner
address owner;
newOwner
address newOwner;
pOLY
address immutable pOLY;
OHM
address immutable OHM;
DAI
address immutable DAI;
treasury
address immutable treasury;
circulatingOHMContract
address immutable circulatingOHMContract;
terms
mapping(address => Term) public terms;
walletChange
mapping(address => address) public walletChange;
Functions
constructor
constructor(address _pOLY, address _ohm, address _dai, address _treasury, address _circulatingOHMContract);
setTerms
function setTerms(address _vester, uint256 _rate, uint256 _claimed, uint256 _max) external;
exercise
function exercise(uint256 _amount) external;
pushWalletChange
function pushWalletChange(address _newWallet) external;
pullWalletChange
function pullWalletChange(address _oldWallet) external;
redeemableFor
function redeemableFor(address _vester) public view returns (uint256);
redeemable
function redeemable(Term memory _info) internal view returns (uint256);
pushOwnership
function pushOwnership(address _newOwner) external returns (bool);
pullOwnership
function pullOwnership() external returns (bool);
Structs
Term
struct Term {
uint256 percent;
uint256 claimed;
uint256 max;
}