Contracts architecture

MoC system is a network of cooperative contracts working together to ultimately provide an US dollar pegged ERC20 Token (DoC). In this sense, be can categorize then into 4 categories:

  • MoC state Contracts: They keep MoC state variables and logic (MoC, MoCState, MoCBucketContainer, MoCSettlement)

  • MoC pure logic Contracts & Libraries: Functional extensions of the above merely to have responsibility separation and contracts size (aka deploy fee) low. (MoCHelperLib, MoCLibConnection, MoCConverter, MoCExchange, MoCConnector, MoCBProxManager, MoCInrate, MoCWhitelist, MoCBase)

  • Tokens: Tokens backed by the system (OwnerBurnableToken, DocToken, BProToken, MoCToken)

  • External Dependencies: External contracts the system relies on, in this case the Oracle or price provider; this could evolved independently of MoC system as along as the interface is maintained. (PriceProvider)