# Access Control

<table><thead><tr><th>Contract</th><th width="304">Contract Functionality</th><th>Function</th><th>Function Details</th></tr></thead><tbody><tr><td><a href="https://etherscan.io/address/0x2748C55219DCa1D9D3c3a57505e99BB04e42F254">AdminContract</a></td><td>Add collateral, including to add/remove stability pools, and add oracle.</td><td><a href="https://www.contractreader.io/contract/mainnet/0x2748C55219DCa1D9D3c3a57505e99BB04e42F254#admincontract-1-18-65">addNewCollateral</a></td><td></td></tr><tr><td><a href="https://etherscan.io/address/0x99838142189adE67c1951f9c57c3333281334F7F">TroveManager</a></td><td>contains functionality for liquidations and redemptions. It sends redemption fees to the MON Staking contract. Also contains the state of each Trove - i.e. a record of the Trove’s collateral and debt. TroveManager does not hold value (i.e. Ether / other tokens). TroveManager functions call in to the various Pools to tell them to move Ether/tokens between Pools, where necessary.</td><td><a href="https://www.contractreader.io/contract/mainnet/0x99838142189adE67c1951f9c57c3333281334F7F#trovemanager-1-32-1042">setRedemptionWhitelistStatus</a></td><td>set collateral redemptions as whitelistable (set to false)</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x99838142189adE67c1951f9c57c3333281334F7F#trovemanager-1-32-1046">addUserToWhitelistRedemption</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x99838142189adE67c1951f9c57c3333281334F7F#trovemanager-1-32-1050">removeUserFromWhitelistRedemption</a></td><td></td></tr><tr><td><a href="https://etherscan.io/address/0x202FbFF035188f9f0525E144C8B3F8249a74aD21">StabilityPoolManager</a></td><td>add/remove stability pools</td><td><a href="https://www.contractreader.io/contract/mainnet/0x202FbFF035188f9f0525E144C8B3F8249a74aD21#stabilitypoolmanager-1-9-31">setAdminContract</a></td><td>address _admin</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x202FbFF035188f9f0525E144C8B3F8249a74aD21#stabilitypoolmanager-1-9-41">addStabilityPool</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x202FbFF035188f9f0525E144C8B3F8249a74aD21#stabilitypoolmanager-1-9-60">removeStabilityPool</a></td><td></td></tr><tr><td><a href="https://etherscan.io/address/0x045da4bFe02B320f4403674B3b7d121737727A36">DCHFtoken</a></td><td>The DCHF token contract</td><td><a href="https://www.contractreader.io/contract/mainnet/0x045da4bFe02B320f4403674B3b7d121737727A36#dchftoken-1-14-66">emergencyStopMinting</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x045da4bFe02B320f4403674B3b7d121737727A36#dchftoken-1-14-120">addTroveManager</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x045da4bFe02B320f4403674B3b7d121737727A36#dchftoken-1-14-129">removeTroveManager</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x045da4bFe02B320f4403674B3b7d121737727A36#dchftoken-1-14-136">addBorrowerOps</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x045da4bFe02B320f4403674B3b7d121737727A36#dchftoken-1-14-145">removeBorrowerOps</a></td><td></td></tr><tr><td><a href="https://etherscan.io/address/0x09AB3C0ce6Cb41C13343879A667a6bDAd65ee9DA">PriceFeed</a></td><td>Contains functionality for obtaining the current prices, which the system uses for calculating collateralization ratios.</td><td><a href="https://www.contractreader.io/contract/mainnet/0x09AB3C0ce6Cb41C13343879A667a6bDAd65ee9DA#pricefeed-1-11-49">setAdminContract</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x09AB3C0ce6Cb41C13343879A667a6bDAd65ee9DA#pricefeed-1-11-55">addOracle</a></td><td>add a Chainlink oracle price feed for a specific token</td></tr><tr><td><a href="https://etherscan.io/address/0x6F9990B242873d7396511f2630412A3fcEcacc42">dfrancParameters</a></td><td>Stores system parameters</td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-75">setAdminContract</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-81">setPriceFeed</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-94">setAsDefault</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-126">setCollateralParameters</a></td><td>set multiple params</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-149">setMCR</a></td><td>101%-1000%</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-161">setCCR</a></td><td>101%-1000%</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-173">setPercentDivisor</a></td><td>2-200</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-185">setBorrowingFeeFloor</a></td><td>0-10%</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-200">setMaxBorrowingFee</a></td><td>0-10%</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-215">setDCHFGasCompensation</a></td><td>1-200</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-227">setMinNetDebt</a></td><td>0-10000</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-239">setRedemptionFeeFloor</a></td><td>.1-10%</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-252">removeRedemptionBlock</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x6F9990B242873d7396511f2630412A3fcEcacc42#dfrancparameters-1-14-98">setAsDefaultWithRemptionBlock</a></td><td></td></tr><tr><td><a href="https://etherscan.io/address/0x8Bc3702c35D33E5DF7cb0F06cb72a0c34Ae0C56F">MONstaking</a></td><td>the staking contract, containing stake and unstake functionality for MON holders. This contract receives ETH fees from redemptions, and LUSD fees from new debt issuance.</td><td><a href="https://www.contractreader.io/contract/mainnet/0x8Bc3702c35D33E5DF7cb0F06cb72a0c34Ae0C56F#monstaking-1-17-191">pause</a></td><td>pauses staking allowance</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x8Bc3702c35D33E5DF7cb0F06cb72a0c34Ae0C56F#monstaking-1-17-195">unpause</a></td><td>unpauses staking allowance</td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x8Bc3702c35D33E5DF7cb0F06cb72a0c34Ae0C56F#monstaking-1-17-199">changeTreasuryAddress</a></td><td>Address where protocol fees can be send to in case contract is paused</td></tr><tr><td><a href="https://etherscan.io/address/0x0fa46e8cBCEff8468DB2Ec2fD77731D8a11d3D86#code">CommunityIssuance</a></td><td>This contract handles the issuance of MON tokens to Stability Providers as a function of time. It is controlled by the StabilityPool.</td><td><a href="https://www.contractreader.io/contract/mainnet/0x0fa46e8cBCEff8468DB2Ec2fD77731D8a11d3D86#communityissuance-1-15-89">setAdminContract</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x0fa46e8cBCEff8468DB2Ec2fD77731D8a11d3D86#communityissuance-1-15-103">removeFundFromStabilityPool</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x0fa46e8cBCEff8468DB2Ec2fD77731D8a11d3D86#communityissuance-1-15-149">transferFundToAnotherStabilityPool</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x0fa46e8cBCEff8468DB2Ec2fD77731D8a11d3D86#communityissuance-1-15-95">addFundToStabilityPool</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x0fa46e8cBCEff8468DB2Ec2fD77731D8a11d3D86#communityissuance-1-15-123">addFundToStabilityPoolFrom</a></td><td></td></tr><tr><td></td><td></td><td><a href="https://www.contractreader.io/contract/mainnet/0x0fa46e8cBCEff8468DB2Ec2fD77731D8a11d3D86#communityissuance-1-15-231">setWeeklyDfrancDistribution</a></td><td></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.defifranc.com/extras/access-control.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
