Skip to content

Latest commit

 

History

History
289 lines (265 loc) · 10 KB

Vesting.md

File metadata and controls

289 lines (265 loc) · 10 KB

Vesting Contract. (Vesting.sol)

View Source: contracts/governance/Vesting/Vesting.sol

↗ Extends: TeamVesting

Vesting contract

Team tokens and investor tokens are vested. Therefore, a smart contract needs to be developed to enforce the vesting schedule. *

Functions


constructor

Setup the vesting schedule.

function (address _logic, address _SOV, address _stakingAddress, address _tokenOwner, uint256 _cliff, uint256 _duration, address _feeSharingCollectorProxy) public nonpayable TeamVesting 

Arguments

Name Type Description
_logic address The address of logic contract.
_SOV address The SOV token address.
_stakingAddress address
_tokenOwner address The owner of the tokens.
_cliff uint256 The time interval to the first withdraw in seconds.
_duration uint256 The total duration in seconds.
_feeSharingCollectorProxy address
Source Code
constructor(
        address _logic,
        address _SOV,
        address _stakingAddress,
        address _tokenOwner,
        uint256 _cliff,
        uint256 _duration,
        address _feeSharingCollectorProxy
    )
        public
        TeamVesting(
            _logic,
            _SOV,
            _stakingAddress,
            _tokenOwner,
            _cliff,
            _duration,
            _feeSharingCollectorProxy
        )
    {}

governanceWithdrawTokens

We need to add this implementation to prevent proxy call VestingLogic.governanceWithdrawTokens

function governanceWithdrawTokens(address receiver) public nonpayable

Arguments

Name Type Description
receiver address The receiver of the token withdrawal.
Source Code
function governanceWithdrawTokens(address receiver) public {
        revert("operation not supported");
    }

Contracts