> For the complete documentation index, see [llms.txt](https://docs.javsphere.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.javsphere.com/engineering/smart-contracts/leveragex/llptoken.md).

# LLPToken

The LLPToken contract is designed for managing LeverageX LP (LLP) tokens. It integrates upgradeable capabilities and access control mechanisms for minting and burning tokens, essential for leveraged trading systems.

**Key Features**

• Mintable & Burnable Tokens: Dynamically mint and burn LLP tokens as needed.

• Upgradeable Architecture: Built using OpenZeppelin’s proxy upgradeable framework.

• Access Control: Minting permissions restricted to a designated borrowing provider.

**Core Functionalities**

**Initialization**

• The contract initializes the LLP token with the name “LeverageX LP” and symbol “LLP”.

• Ensures upgradeability by following OpenZeppelin’s recommended practices.

**Borrowing Provider**

• Set Borrowing Provider:

Allows the contract owner to assign or update the borrowing provider, the entity authorized to mint LLP tokens.

• Access Control:

Includes a modifier to restrict certain functions to the borrowing provider only.

**Minting Tokens**

• Mint Tokens:

Enables the borrowing provider to mint LLP tokens for a specified account and amount.
