> For the complete documentation index, see [llms.txt](https://developers.mstable.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.mstable.org/emissions-controller/polygon-integration/l2-emissions-controller.md).

# L2 Emissions Controller

## Functions

### addRecipient()

`function addRecipient (address _bridgeRecipient, address _endRecipient) external`

Adds a new mapping of a contract that receives rewards from the PoS Bridge to the contract that ultimately receives the rewards.

| Parameter          | Type    | Description                                                                                                           |
| ------------------ | ------- | --------------------------------------------------------------------------------------------------------------------- |
| `_bridgeRecipient` | address | Address of the contract that will receive rewards from the bridge                                                     |
| `_endRecipient`    | address | Address of the contract that ultimately receive rewards and implements the `IRewardsDistributionRecipient` interface. |

### distributeRewards()

`function distributeRewards (address[] _endRecipients) external`

Transfers bridged rewards sitting in the child recipient contracts to the end recipient contracts and the notifys them of the amount of rewards received.

| Parameter        | Type       | Description                                                  |
| ---------------- | ---------- | ------------------------------------------------------------ |
| `_endRecipients` | address\[] | List of contract addressess that ultimately receive rewards. |
