Burner
Burner
Inherits: IBurner, Ownable2Step
Burner is used to swap USDC to MONT and burn MONT
The contract uses a custom pool in Uniswap to burn MONT tokens
State Variables
mont
Address of the MONT token
IMONT public immutable mont;
usdc
Address of the USDC token
IERC20 public immutable usdc;
uniswapPoolFee
Fee of the Uniswap V3 pool for MONT-USDC
uint24 public immutable uniswapPoolFee;
swapRouter
Address of the Uniswap SwapRouter contract
ISwapRouter public immutable swapRouter;
Functions
constructor
Sets related contract addresses
constructor(IMONT _mont, IERC20 _usdc, ISwapRouter _swapRouter, uint24 _uniswapPoolFee) Ownable(msg.sender);
Parameters
Name
Type
Description
_mont
IMONT
The address of the MONT ERC20 token contract
_usdc
IERC20
The address of the USDC token
_swapRouter
ISwapRouter
The address of the UniswapV3 SwapRouter contract
_uniswapPoolFee
uint24
The fee of the UniswapV3 pool
burnTokens
Swaps USDC to MONT and burns MONT tokens
Emits MONTTokensBurned event
function burnTokens(uint256 _amountOutMinimum, uint256 _deadline) external onlyOwner;
Parameters
Name
Type
Description
_amountOutMinimum
uint256
The minimum amount of MONT to burn
_deadline
uint256
Deadline of the swap
Last updated