InfraredBERAFeeReceivor

Git Source

Inherits: Upgradeable, IInfraredBERAFeeReceivor

Fee receivor receives coinbase priority fees + MEV credited to contract on EL upon block validation also receives collected validator bribe share.

CL validators should set fee_recipient to the address of this contract

State Variables

InfraredBERA

The address of InfraredBERA

address public InfraredBERA;

infrared

IInfrared public infrared;

shareholderFees

Accumulated protocol fees in contract to be claimed by governor

uint256 public shareholderFees;

Functions

initialize

Initializer function (replaces constructor)

function initialize(
    address _gov,
    address _keeper,
    address ibera,
    address _infrared
) external initializer;

Parameters

NameTypeDescription
_govaddressAddress for admin / gov to upgrade
_keeperaddressAddress for keeper
iberaaddressAddress for InfraredBERA
_infraredaddressAddress for Infrared

distribution

Amount of BERA swept to InfraredBERA and fees taken for protool on next call to sweep

function distribution() public view returns (uint256 amount, uint256 fees);

Returns

NameTypeDescription
amountuint256THe amount of BERA forwarded to InfraredBERA on next sweep
feesuint256The protocol fees taken on next sweep

sweep

Sweeps accumulated coinbase priority fees + MEV to InfraredBERA to autocompound principal

function sweep() external returns (uint256 amount, uint256 fees);

collect

Collects accumulated shareholder fees

Reverts if msg.sender is not iBERA contract

function collect() external returns (uint256 sharesMinted);

Returns

NameTypeDescription
sharesMinteduint256The amount of iBERA shares minted and sent to infrared

receive

receive() external payable;