Skip to main content

ConvertibleDepositActivator

Git Source

Inherits: Owned

Single-use contract to activate the Convertible Deposits system

State Variables

RESERVE_MIGRATOR

address public constant RESERVE_MIGRATOR = 0x986b99579BEc7B990331474b66CcDB94Fa2419F5

OPERATOR

address public constant OPERATOR = 0x6417F206a0a6628Da136C0Faa39026d0134D2b52

YIELD_REPURCHASE_FACILITY

address public constant YIELD_REPURCHASE_FACILITY = 0x271e35a8555a62F6bA76508E85dfD76D580B0692

DEPOSIT_MANAGER

address public immutable DEPOSIT_MANAGER

CD_FACILITY

address public immutable CD_FACILITY

REDEMPTION_VAULT

address public immutable REDEMPTION_VAULT

CD_AUCTIONEER

address public immutable CD_AUCTIONEER

EMISSION_MANAGER

address public immutable EMISSION_MANAGER

HEART

address public immutable HEART

RESERVE_WRAPPER

address public immutable RESERVE_WRAPPER

CD_NAME

string public constant CD_NAME = "cdf"

USDS

address public constant USDS = 0xdC035D45d973E3EC169d2276DDab16f1e407384F

SUSDS

address public constant SUSDS = 0xa3931d71877C0E7a3148CB7Eb4463524FEc27fbD

USDS_MAX_CAPACITY

uint256 public constant USDS_MAX_CAPACITY = 1_000_000e18

USDS_MIN_DEPOSIT

uint256 public constant USDS_MIN_DEPOSIT = 1e18

PERIOD_1M

uint8 public constant PERIOD_1M = 1

PERIOD_2M

uint8 public constant PERIOD_2M = 2

PERIOD_3M

uint8 public constant PERIOD_3M = 3

RECLAIM_RATE

uint16 public constant RECLAIM_RATE = 90e2

CDA_INITIAL_TARGET

uint256 public constant CDA_INITIAL_TARGET = 0

CDA_INITIAL_TICK_SIZE

uint256 public constant CDA_INITIAL_TICK_SIZE = 0

CDA_INITIAL_MIN_PRICE

uint256 public constant CDA_INITIAL_MIN_PRICE = 0

CDA_INITIAL_TICK_SIZE_BASE

uint256 public constant CDA_INITIAL_TICK_SIZE_BASE = 2e18

CDA_INITIAL_TICK_STEP_MULTIPLIER

uint24 public constant CDA_INITIAL_TICK_STEP_MULTIPLIER = 10075

CDA_AUCTION_TRACKING_PERIOD

uint8 public constant CDA_AUCTION_TRACKING_PERIOD = 7

CDA_MINIMUM_BID

uint256 public constant CDA_MINIMUM_BID = 100e18

EM_BASE_EMISSIONS_RATE

uint256 public constant EM_BASE_EMISSIONS_RATE = 200000

EM_MINIMUM_PREMIUM

uint256 public constant EM_MINIMUM_PREMIUM = 5e17

EM_BACKING

uint256 public constant EM_BACKING = 11690000000000000000

EM_TICK_SIZE

uint256 public constant EM_TICK_SIZE = 150e9

EM_MIN_PRICE_SCALAR

uint256 public constant EM_MIN_PRICE_SCALAR = 12e17

EM_BOND_MARKET_CAPACITY_SCALAR

uint256 public constant EM_BOND_MARKET_CAPACITY_SCALAR = 0

EM_RESTART_TIMEFRAME

uint48 public constant EM_RESTART_TIMEFRAME = 950400

isActivated

True if the activation has been performed

bool public isActivated = false

Functions

constructor

constructor(
address owner_,
address depositManager_,
address cdFacility_,
address cdAuctioneer_,
address redemptionVault_,
address emissionManager_,
address heart_,
address reserveWrapper_
) Owned(owner_);

_activateContracts

function _activateContracts() internal;

_configureAssets

function _configureAssets() internal;

_configureAuction

function _configureAuction() internal;

_configurePeriodicTasks

function _configurePeriodicTasks() internal;

activate

Activates the Convertible Deposits system

This function assumes:

  • The "admin" role has been granted to the contract This function reverts if:
  • The caller is not the owner
  • The function has already been run
function activate() external onlyOwner;

Events

Activated

event Activated(address caller);

Errors

AlreadyActivated

error AlreadyActivated();

InvalidParams

error InvalidParams(string reason);