# RiskManager

INIT risk manager contract.

## View Functions

### CORE

InitCore contract address.

```solidity
function CORE() external view returns (address initCore);
```

### getModeDebtShares

Get current mode debt shares.

```solidity
function getModeDebtShares(uint16 _mode, address _pool) external view returns (uint debtShares);
```

### getModeDebtAmtStored

Get mode debt amount without interest accrual. For interest accrual, use [getModeDebtAmtCurrent](#getmodedebtamtcurrent).

```solidity
function getModeDebtAmtStored(uint16 _mode, address _pool) external view returns (uint debtAmount);
```

### getModeDebtCeilingAmt

Get mode debt ceiling amount. Positions in a mode cannot have a total borrow more than the debt ceiling amount.

```solidity
function getModeDebtCeilingAmt(uint16 _mode, address _pool) external view returns (uint debtCeiling);
```

## External Functions

### getModeDebtAmtCurrent

Accrue interest and get mode debt amount.

```solidity
function getModeDebtAmtCurrent(uint16 _mode, address _pool) external returns (uint debtAmount);
```

Parameters:

| Name    | Type      | Description                     |
| ------- | --------- | ------------------------------- |
| `_mode` | `uint16`  | mode to get debt amount         |
| `_pool` | `address` | lending pool to get debt amount |

Returns:

| Name         | Type      | Description                                                |
| ------------ | --------- | ---------------------------------------------------------- |
| `debtAmount` | `uint256` | underlying token debt amount of mode after accrue interest |
