AltExercisepOLY

Git Source

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;
}