# UNCHAIN X Introduction

Welcome to Unchain X Documentation. In this document, we introduce the features of Unchain X, an AMM (Automated Market Maker) protocol on the Binance Smart Chain (BSC) network, and the governance token UNX (Unchain X)..

## What is an AMM (Automated Market Maker) protocol?

It is a pivotal DEX (Decentralized Exchange) protocol that has brought the decentralized finance (DeFi) market to the general public. Simply put, AMM replaces traditional order books with on-chain liquidity pools created by liquidity providers, supporting immediate token swaps between tokens.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FuMgXnH1l3DzdlolhRYse%2F1.%20Unchain%20X.png?alt=media&amp;token=48477fe2-ee7b-45bc-843b-1830a12312b2" alt=""><figcaption></figcaption></figure>

## What’s the Unchain X?

UNCHAIN X is an AMM (Automated Market Maker) protocol based on the Binance Smart Chain (BSC) network. Unlike centralized exchanges (CEX), where there is central intervention, DEX (Decentralized Exchange) allows participants to exercise influence on growth through trading, liquidity provision, voting, and other means without central authority. UNCHAIN X aims to be a decentralized future financial platform capable of handling all forms of digital assets, including intellectual property, NFTs, real estate, and physical assets.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2F7VOdDfNsWno4oxUFSXdk%2F2.%20DEX.png?alt=media&amp;token=4d002f7f-197b-4d40-b4fa-b1aa7279c888" alt=""><figcaption></figcaption></figure>

## Advantages of decentralized exchanges

Unlike traditional centralized exchanges, decentralized exchanges enable direct peer-to-peer trading online without the need for separate intermediary companies. This ensures transparency of transactions as they can be verified by all users. Furthermore, transactions can be conducted using only wallet addresses, ensuring anonymity without the need for additional personal information.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FF65Wurxw4qaqTgDMkFMI%2F3.%20Advantages%20of%20Unchain%20X.png?alt=media&amp;token=6a66428b-fc23-4ad5-9fd0-45455e903ca4" alt=""><figcaption></figcaption></figure>

Unchain X operates on the Binance Smart Chain (BSC) network, allowing users to swiftly swap desired coins with low transaction fees.

As a decentralized exchange, Unchain X is poised to evolve alongside the growth of the DEFI financial market, functioning transparently and reliably through DAO governance.

Governance participation is enabled through the UNX token. Unchain X, in association with UNX, holds significant scalability within the blockchain industry and plans to develop blockchain protocols beyond DEX to align with international regulatory frameworks.

## Advantages of Unchain X

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FhlygeboHKLYNe8M3NqgI%2FAdvantages%20of%20Unchain%20X.png?alt=media&amp;token=a87fc420-57e8-4b88-b4c2-fd1bd314fc62" alt=""><figcaption></figcaption></figure>

At Unchain X, you can deposit assets based on the Binance Smart Chain (BSC) network to earn UNX, the governance token of Unchain X, as reward.

Unchain X allows participation in Unchain X governance by using UNX, the Unchain X governance token, to engage in decentralized decision-making.

## Unchain X Circular Ecosystem

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FtiOFghwYoyKNZKjghXJM%2FUnchain%20X%20Circular%20Ecosystem.png?alt=media&amp;token=9f3f8db4-3805-4e85-90cc-9aa405c42f63" alt=""><figcaption></figcaption></figure>

In the Unchain X galaxy, there are numerous UNX stars. Like other galaxies, the Unchain X galaxy's ecosystem circulates and grows according to the principles of cosmic expansion.

## Principle of Cosmic Expansion

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FhfVxFovUWSj1D8SY26pg%2FPrinciple%20of%20Cosmic%20Expansion.png?alt=media&amp;token=e736c1f2-032d-4724-bc20-88ca222905b1" alt=""><figcaption></figcaption></figure>

Star → Demise of star → Particles → Aggregation of particles → Formation of new stars


# UNCHAIN X Protocol

Unchain X is an AMM (Automated Market Maker) based swap protocol.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2F0Ey8Z7AccvwhiKLcrIet%2F4.%20AMM.png?alt=media&amp;token=6c81b0e1-e278-4e41-ab16-5e2b77d8d281" alt=""><figcaption></figcaption></figure>

The Unchain X protocol is a P2P system designed to exchange cryptocurrencies (BEP20 tokens) on Binance Smart Chain (BSC). The protocol is implemented as a set of smart contracts that are continuous and non-upgradeable. It is designed to work without a trusted intermediary that prioritizes censorship resistance, security, and self-storage and can optionally restrict access.

AMM is an innovative trading mechanism that evolved from traditional order book-based DEXs, revolutionizing cryptocurrency trading on-chain. Instead of buy/sell order books, traders can freely transact through liquidity pools created by liquidity providers, who earn a reward of trading fees proportional to their liquidity contribution. Additionally, anyone holding tokens following the BSC type can become a liquidity provider.

Unchain X's AMM mechanism is based on the formula x\*y=k \[x=A, y=B, k=Constant Function]. When creating a liquidity pool, the quantity of each token determines the price range of the corresponding token. For example, if the liquidity supply of x (A) increases, y (B) decreases to maintain the constant function k. This design ensures that token supply quantities fluctuate in the liquidity pool, forming prices accordingly.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FVzKqmwzxg8wvIWaC775V%2F5.%20AMM%20Graph.png?alt=media&amp;token=e27f7941-1222-41ad-b69c-d0ebcd9fe44e" alt=""><figcaption></figcaption></figure>

\*In AMM-based swap protocols, there can be slippage between the expected price at the time of the trade and the actual executed price. Additionally, liquidity providers may incur impermanent loss during the adjustment process by the automated market-making mechanism if there is a discrepancy between the pool's token price and external prices after supplying liquidity.

Please proceed with trading and providing liquidity while keeping these risks in mind.


# UNCHAIN X Cautions

Please note the following risks associated with using Unchain X.

* Please note the following risks associated with using Unchain X.

  Unchain X is a decentralized blockchain protocol without central entities. Users participate in transactions through liquidity pools created by other users on the blockchain at their own discretion and responsibility. As a result, in case of user error, such as mistaken transactions, recovery support may not be available from any party, including Unchain X. It is recommended to always test with small amounts first to manage the risks associated with mistakes.
* All assets and liquidity pools identified on the Unchain X website are tokens on the Binance Smart Chain (BSC) network. They are registered directly by users without undergoing individual scrutiny. The Unchain X team does not guarantee their safety.
* When exchanging assets on Unchain X, due to the nature of AMM (Automated Market Maker), the asset prices applicable to users at that moment can fluctuate significantly. This can vary depending on the swap volume, the quantity (ratio) of assets pending in the pool, and real-time deposits and withdrawals to the pool.
* Due to asset price fluctuations, users may deposit or withdraw assets from the pool at prices or ratios they did not anticipate. Furthermore, if there are price changes from the time of deposit to withdrawal, users may incur losses compared to simply holding the assets.
* All figures displayed on the website are estimated information provided to assist users in their decision-making. They do not guarantee the timeliness, suitability, or accuracy of the data.
* Unchain X website never asks for users' personal wallet private keys, mnemonic keys, or seed phrases.
* Please review the following information for further risks, precautions, and terms of use.

## &#x20;1. Overview

Unchain X is a decentralized application (DApp) that utilizes the Binance Smart Chain (BSC), developed by a third party. Users of Unchain X can utilize its decentralized protocol to exchange various virtual assets and provide liquidity directly through their BSC wallets, accessed via interfaces such as the Unchain X website (hereinafter referred to as "Unchain X").

The contents of this User Guide (hereinafter referred to as the "Guide") contain matters that users must agree to in order to use Unchain X, so please read it carefully to the end. By confirming this Guide and continuing to use Unchain X, users are deemed to have read, understood, and agreed to its contents.

## 2. Changes to this Guide

The contents of this Guide may be constantly changed, added, deleted, supplemented, or modified by Unchain X for reasons such as changes, additions, deletions, enhancements, user protection, error corrections, etc. If the contents of this Guide are changed, the changes take effect from the time they are posted. However, in cases where the changes are disadvantageous to users or involve significant changes, they will be posted at least 30 days prior to their effective date. If users confirm the changed Guide and continue to use Unchain X after the effective date, they are deemed to have read, understood, and agreed to the changes.

## 3. User Eligibility

• To use Unchain X, users must be at least of legal age in their country (e.g., at least 21 years old according to Singapore law) and must represent and warrant that they have full rights and authority to enter into and comply with civil contracts on their own behalf or on behalf of the corporation they represent or act for.

• The user is not listed as subject to economic or trade sanctions by any government authority (including, but not limited to, the Office of Foreign Assets Control of the U.S. Department of the Treasure, etc.) ii) not a citizen or resident of a jurisdiction subject to comprehensive economic sanctions by the United States (or designated by the United States government as a state sponsor of terrorism) iii) state that the user's access to and use of Unchain-X is in full compliance with relevant laws and regulations, and that the user will not use Unchain-X for the purpose of performing, facilitating, or promoting any illegal activity.

## 4. Precautions during the Use of Unchain X

### 4.1. General Matters

When using the Unchain X website, please ensure the following precautions to create a stable network environment:

* It is recommended to use only one tab while using the site.
* Prolonged access using multiple tabs, accessing from locations using company/public IP addresses, or excessive requests to RPC may make usage difficult.
* If you encounter difficulties in using the site due to other reasons, please close all tabs accessing the site and try accessing the site again after at least 1 hour has passed.

### 4.2. Asset Deposits and Withdrawals

#### 4.2.1. General Asset Deposits and Withdrawals

Users should be aware of the following when depositing and withdrawing assets on Unchain X.

* To request transactions, users must have a BSC wallet capable of handling BSC assets and a small amount of BNB to use as transaction processing fees on the BSC network.
* The assets that can be used for deposits on Unchain X follow the BEP-20 format issued on the BSC. Therefore, assets other than BEP-20 types and assets from other chains (such as Ethereum, Ripple, etc., unless explicitly mentioned) must be converted to the BEP-20 format via a bridge site before depositing them on Unchain X.

#### 4.2.2. Asset Misdelivery

Users must accurately confirm the type and address of the assets when processing asset deposits and withdrawals on Unchain X. If users deposit unsupported types of assets on the BSC or input incorrect deposit addresses, the assets may not be correctly deposited, leading to potential loss.

Unchain X is a decentralized application where the user's private key is not managed by a central authority. Therefore, Unchain X is unable to recover or provide technical support for misdelivered assets, including the situations mentioned above. In the event of misdelivered assets, Unchain X and others will have no access to the assets, and as a result, the approach to misdelivery on Unchain X may differ technically and structurally from that of centralized exchanges.

To prevent user errors, it is recommended to conduct initial tests with small amounts before transferring the entire asset balance.

\*Please refer to the terms and precautions of individual bridge sites for any asset misdelivery issues caused through bridges.

### 4.3. Liquidity Provision (Deposit), Withdrawal, and Swap Related.

Users can supply (deposit) or withdraw their assets from the liquidity pool on Unchain X to take positions as liquidity providers, and they can also conduct swap transactions through the liquidity pool. However, users must be aware of the risks associated with these actions and proceed with all activities at their own discretion and responsibility.

#### 4.3.1. Pricing

Unchain X operates based on the Automated Market Maker (AMM) mechanism, where the price of each token on Unchain X is determined by the exchange ratio within the contract where the token pairs are deposited. Due to the automated smart contracts adjusting prices to maintain stability according to the formula x\*y=k for each pool, the prices displayed on the Unchain X website may not be the same as those on other exchanges, and there is no guarantee of matching fair value or market prices.

* The price of each token at the time of depositing, withdrawing, or swapping assets is applied based on the aforementioned price measurement method (exchange ratio of token pairs), and the price is not determined proportionally to the exchange quantity.
* Additionally, due to the real-time participation of various users, the exchange ratio of token pairs may change momentarily, resulting in the possibility of price fluctuations between the displayed price on the Unchain X website and the actual price at the time of the transaction (due to trading in the token pair, asset deposits and withdrawals in the token pair, etc.)
* While the Unchain X protocol has safeguards in place to minimize losses that may occur from significant changes in the exchange ratio, users must confirm the exchange ratio applied at the time of the transaction before proceeding with liquidity provision, withdrawal, or swap.

#### 4.3.2. Display of Expected Conpensation and Usage Costs

All compensation indicators displayed on the Unchain X website, such as deposit reward, UNX distribution rate, airdrop compensation, transaction fee compensation, and staking reward, are estimated projections based on distributed rewards, and do not guarantee a fixed rate of return.

Unchain X strives to provide information as accurately and in real-time as possible. However, due to fluctuations in token prices, changes in the size of liquidity pools, transaction processing delays, and other factors, the displayed estimated compensation may differ from the actual compensation.

### 4.4. Deposit Specific Precautions

#### Pair Deposit

Users can deposit two types of assets on Unchain X to obtain UNX distribution reward, transaction fee distribution reward, and token airdrop reward.

Pair deposits may result in impermanent losses.

If the current market price of the assets deposited by the user significantly increases or decreases compared to the price at the time of deposit, the expected compensation may decrease compared to holding the assets without depositing them. Additionally, there is a possibility of incurring evaluation losses at that time. However, such losses are confirmed when the user withdraws assets from the pool, and if the price difference of the assets in the deposit status recovers to the price at the time of deposit, the actual losses may decrease. Furthermore, overall compensation should be estimated considering both UNX distribution and transaction fee distribution revenue.

### 4.5 Unchain X Governance Voting Related

Users holding voting power (UNX) by staking UNX can participate in Unchain X governance voting according to the Unchain X governance voting policy.

## 5. Unchain X v3 Additional Precautions

### 5.1. Concentrated Liquidity

Unchain X v3 provides a feature called Concentrated Liquidity. In this guide, the liquidity pool with Concentrated Liquidity applied is referred to as the 'v3 pool', while the liquidity pool with the previous functionality is referred to as the 'v2 pool'.

Compared to the v2 pool, the v3 pool offers users more freedom and choice in supplying concentrated liquidity and specifying the supply range. However, it may entail greater potential reawrds and higher risks of losses due to its operational principles.

Regarding the risks associated with v3 pool deposits, as the specified price range becomes narrower compared to v2 pool deposits, there may be heightened risks of (i) Impermanent Loss (IL), (ii) changes in the composition ratio and value of deposited assets (it is also possible for the ratio of the two deposited assets to be fixed at 100:0 upon withdrawal), (iii) the risk of no longer receiving deposit rewards if the token price deviates from the user-specified price range, and (iv) the risk of loss due to price range deviation and price range migration (v3 to v3 migration).

Since v3 pool deposits involve high structural complexity and difficulty in predicting asset loss risks (especially with narrow price ranges), they are not recommended for users with limited experience in cryptocurrency investments or those who cannot afford potential losses.

Users must carefully evaluate and consider the risks associated with concentrated liquidity before supplying liquidity to the liquidity pool and managing it under their responsibility and judgment.

### 5.2 v2 to v3 Migration

Users can transfer liquidity supplied to the v2 pool to the v3 pool using the v2 to v3 migration feature. However, during the execution of v2 to v3 migration, users may incur the following burdens: (i) Losses due to the confirmation of impermanent loss in the v2 pool as withdrawals occur during the v2 to v3 migration, and (ii) Costs such as transaction fees and slippage incurred from asset swaps between assets to enter the price range selected by the user in the v3 pool.

## 6. Prohibited Actions

Users must comply with the precautions in this guide and must not engage in the following actions.

* Actions that undermine or disrupt the healthy trading order of Unchain X.
* Using automated means such as agents, scripts, spiders, spyware, toolbars, or other illegitimate methods to disrupt or negatively impact the operation of Unchain X (including Unchain X interfaces, Unchain X protocols, etc.).
* Acts that tarnish the reputation of the Unchain X team or interfere with their work.
* Providing inaccurate or misleading information while using Unchain X.
* Involvement in the unauthorized seizure of assets belonging to Unchain X users or the usurpation of user wallet permissions without just cause.
* Engaging in any form of criminal activity (such as terrorist activities, tax evasion, etc.) directly or indirectly related to the proceeds derived from using Unchain X.
* Impersonating someone else during communication with the Unchain X support function.
* Any other illegal activities violating relevant laws and regulations.

## 7. Disclaimer and Limitation of Liability

* Unchain X operates as a web-based interface to facilitate the exchange and liquidity provision of various virtual assets by allowing users to communicate directly with their Binance Smart Chain (BSC) blockchain wallets. However, Unchain X does not manage or control users' personal assets or the liquidity pools where assets are deposited, nor does it guarantee the integrity or reliability of transactions. Users must carefully evaluate and consider the risks of each transaction, including potential losses due to the rewards of each transaction, token prices, and fluctuations in exchange rates, before proceeding with trading at their own discretion and responsibility.
* Content and information provided by Unchain X, including estimated rewards, current token prices, and yield calculation examples, serve as auxiliary materials for facilitating decentralized trading, liquidity provision, removal, and swaps on Unchain X. They do not constitute investment advice or inducement for trading. While Unchain X strives to provide timely and accurate information, it does not guarantee the timeliness, suitability, or accuracy of such information.
* Unchain X shall not be held responsible for any loss of assets or property incurred by users due to failure to realize expected rewards through the use of Unchain X or inherent risks associated with trading.
* Unchain X does not guarantee the continuity of the features and services provided. Features offered by Unchain X may be added or permanently removed at specific points in time, and Unchain X services may be suspended or altered. (In the event of permanent feature removal or service interruption, affected users will be notified and provided with guidance on coping methods with at least 30 days' notice.)
* Unchain X bears no responsibility for third-party services, including the Binance Smart Chain (BSC) blockchain platform used by the Unchain X protocol and wallet applications provided by third parties.
* Developers, operators, and governance participants of Unchain X do not expressly or implicitly guarantee any direct or indirect commitments regarding related protocols, codes, services, etc., within the limits permitted by law.
* All software used by Unchain X, including smart contract codes, may contain undiscovered defects due to inherent complexity and limitations, which may lead to asset loss resulting from hacking, flash loan attacks, etc.
* While Unchain X endeavors to maintain the latest block synchronization, it cannot guarantee uninterrupted provision of Unchain X functionality due to force majeure, server maintenance, increased congestion in the Binance Smart Chain (BSC), computer system errors, software attacks, etc. The provision of Unchain X functionality is not guaranteed 24 hours a day.
* In situations such as those described above, errors in displayed figures on the website, temporary service unavailability, connectivity errors, and suspensions may occur. As a result, transaction delays and failures may occur during the processing of liquidity deposits, withdrawals, swaps, etc., requested by users.
* Unchain X explicitly disclaims any warranties, guarantees, or conditions, whether express or implied, including but not limited to the examples provided herein. Users understand and accept that Unchain X is provided "as is" and "as available." Users are solely responsible for their use of Unchain X. Users understand and acknowledge that computer, software, communication, and blockchain systems are inherently imperfect.
* Unchain X shall not be liable for any direct, indirect, incidental, special, consequential, or punitive damages whatsoever, including but not limited to loss of rewards (whether incurred directly or indirectly), loss of credit or business reputation, data loss damages, costs of obtaining substitute products or services, or other intangible losses. In any event, the limit of liability borne by Unchain X for user compensation shall be the greater of the amount paid by the user to Unchain X as consideration for the use of Unchain X or $100.00 USD. The limitation of liability under this provision shall apply to the extent permitted by applicable laws.
* All features included in this document may be subject to restrictions due to social regulatory issues, and some features may be restricted until normal procedures are followed in accordance with social consensus-based regulations.

## 8. Rights Protection and Judicial Cooperation

In the following cases, user access information (wallet address, access information, etc.) may be provided to regulatory authorities or judicial agencies if deemed reasonably necessary.

* In cases where there is reasonable evidence that the assets are involved in hacking, money laundering, or other criminal activities
* Upon request from regulatory authorities or judicial agencies based on applicable laws

## 9. Safety and Security

Unchain X has completed professional security audits through a specialized security audit firm and makes reasonable efforts to eliminate and prevent security vulnerabilities.

## 10. User Notices

Unchain X may provide notices and notifications to users through commercially reasonable means, including public communication channels (such as SNS channel addresses posted on the Unchain X website). Notices and notifications provided by Unchain X through public communication channels take effect immediately upon posting.

​

This service notice is effective from May 17th, 2024.

​

Service Notice Change and Posting History

(May 17th, 2024) : Initial Establishment


# Privacy Policy

This Privacy Policy explains the way of treatment on the https\://unchainx.io website (the "Service") of the user information for the Service.

## Purpose of processing personal information, collection items, retention and use period, provision to third parties

&#x20;

The service does not collect, use, or provide users' personal information to third parties.

&#x20;

\- The service does not request/store/process information that can personally identify the user, or information such as private keys, mnemonic words, seed phrases, etc. required to access the wallet owned by the user, or any equivalent information.

\- Users must safely manage the above matters themselves, and the service is not responsible if any damage occurs due to the user's failure to fulfill these care obligations.

&#x20;

## Installation, operation, and rejection of automatic personal information collection devices

&#x20;

1\. The Service may use 'cookies' that store and retrieve use of information from time to time to provide users with individually customized services.

&#x20;

2\. Cookies are very small text files to be sent to the browser of the users by the server(http) used for the operation of the websites of the company and may be stored on hard disks of the users' computer (PC).

&#x20;

1\) Purpose of using cookies: Cookies are used to provide optimized information to users by identifying the types of visits and usage of each service and website visited by the user, popular search terms, and whether or not secure access is available.

&#x20;

2\) Installation, operation, and rejection of cookies: A user can enable or disable cookie storage using the basic function of a web browser. For detailed cookie setting methods for each browser, please refer to the description of each browser.

&#x20;

3\) If a user refuses to provide cookies, a user may experience difficulties in using customized services.

&#x20;

## Point of contact

If you have any questions about this Privacy Policy, please contact <https://unchainx.io/help> The user's message is forwarded to the person in charge of the company's privacy policy.

&#x20;

## Revision Terms of Privacy Policy

The Service may revise and post this Privacy Policy from time to time, and the revised policy will take effect from the same time as it is posted. If the privacy policy is changed significantly unfavorable to users, it will be posted at least 30 days before the effective date.


# Audits

## Audit Reports

**Launchpad**

* [Launchpad security audit](https://github.com/UNCHAIN-X-Labs/launchpad-staking-contract/blob/main/audit/PeckShield-Audit-Report-UnchainX-v1.0.pdf)(Apr 2024)
* [Unchain-X certik audit](https://skynet.certik.com/projects/unchain-x) (Jul 2024)
* [Unchain X Circular Ecosystem certik audit](https://skynet.certik.com/projects/unchain-x) (Sep 2024)


# UNX

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FdzieeIa0KmQcTcfjN0VB%2F6.%20UNX%20Tokenomics.png?alt=media&amp;token=b1b4c874-c5a8-4e8c-ad21-54b56184a99f" alt=""><figcaption></figcaption></figure>

* **UNX Tokenomics**\
  \
  UNX serves as a powerful incentive for participants in Unchain X, providing rewards that enable them to secure more liquidity within Unchain X. Through efficient distribution of limited UNX resources and maximizing its value, the tokenomics framework facilitates meaningful liquidity-based trading and provides more opportunities.<br>
* **UNX Mining Yield**\
  \
  UNX daily total mining supply is 300,000 UNX, with halving occurring every 21,024,000 block numbers.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FSB6WWCoQvhoVu8HWWyyR%2Fsupply_graph.png?alt=media&amp;token=44224b9a-f391-4e80-9906-c6745385b01b" alt=""><figcaption></figcaption></figure>

* **UNX Initial supply**

| Total Supply            | 10,000,000,000 |
| ----------------------- | -------------- |
| Total Mining Allocation | 9,550,000,000  |
| Pre-mined for Launchpad | 331,515,000    |
| Marketing               | 50,000,000     |
| Development incentives  | 20,000,000     |
| Liquidity provision     | 48,485,000     |

\*The launchpad return rate adjustment assets will be used as initial development incentives.

* **UNX Halving**

**A total of 9,550,000,000 UNX is locked in the HalvingProtocol contract and mined block by block.**

1. **Block Reward: 10.416666666666666666 UNX**   \
   (The reward is halved 5 times, every 21,024,000 blocks)
2. **Genesis Block of the UNX Mining Protocol: 41,199,810**
3. **Halving Interval: Every 21,024,000 blocks**
4. **Halving Schedule**   \
   \- 1st Halving: Block 62,223,810   \
   \- 2nd Halving: Block 83,247,810   \
   \- 3rd Halving: Block 104,271,810   \
   \- 4th Halving: Block 125,295,810   \
   \- 5th Halving: Block 146,319,810   \
   \- After the final halving, mining continues until the supply is exhausted.

**\[Before the Lorentz Hard Fork]**\
Block Time: 3 seconds\
Daily Reward: Approximately 300,000 UNX

**\[After the Lorentz Hard Fork]**\
Block Time: 1.5 seconds\
Daily Reward: Approximately 600,000 UNX

**\[After the Maxwell Hard Fork]**\
Block Time: 0.75 seconds\
Daily Reward: Approximately 1,200,000 UNX

**\[After the Fermi Hard Fork]**\
Block time: 0.45 seconds\
Daily rewards: approximately 1,000,000 UNX\
(Based on the current halving cycle)

* **Launchpad Pre-mining Distribution Plan**

| **Reward Phase** | **Reward Start Date** | **Amount to be Distributed** |
| ---------------- | --------------------- | ---------------------------- |
| 1                | September 8, 2024     | 27,289,007.7                 |
| 2                | October 8, 2024       | 27,289,007.7                 |
| 3                | November 7, 2024      | 27,289,007.7                 |
| 4                | December 7, 2024      | 27,289,007.7                 |
| 5                | January 6, 2025       | 27,289,007.7                 |
| 6                | February 5, 2025      | 27,289,007.7                 |
| 7                | March 7, 2025         | 27,289,007.7                 |
| 8                | April 6, 2025         | 27,289,007.7                 |
| 9                | May 6, 2025           | 27,289,007.7                 |
| 10               | June 5, 2025          | 27,289,007.7                 |


# UNX Launchpad

To ensure the smooth liquidity and adoption of UNX, Unchain X has implemented a special launchpad system where rewards in UNX are naturally liquefied for participants in the initial launchpad. This system is designed to facilitate the establishment of UNX within Unchain X

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FjGDDm3CFshsk4w7ganZb%2F8.%20UNX%20Launchpad.png?alt=media&amp;token=fbb47ac6-89d4-47ae-a8a1-01829ebcaf59" alt=""><figcaption></figcaption></figure>

| Launchpad Period (Days)  | 53  |
| ------------------------ | --- |
| Round                    | 5   |
| Unlocking Rate (Monthly) | 10% |

* **Unchain X Launchpad UNX Distribution**

| **Deposit Type** | **Mining Quantity (Per Day)** |
| ---------------- | ----------------------------- |
| BNB              | 37,500                        |
| BTC              | 37,500                        |
| ETH              | 37,500                        |
| XRP              | 37,500                        |
| SOL              | 37,500                        |
| DOGE             | 37,500                        |
| USDT             | 37,500                        |
| FDUSD            | 37,500                        |

**Total Distribution Amount Per Day: 300,000UNX**

## UNX Launchpad Rounds

Users can participate in the launchpad over 5 rounds, each lasting for 13/10/10/10/10 days.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FjHsDzOedmYQutLPjHsQw%2F9.%20Round.png?alt=media&amp;token=6d853943-9a00-4ef2-a3cd-76f5d9281c92" alt=""><figcaption></figcaption></figure>

During each round, participant assets are locked, and upon the completion of each round, deposited assets are returned. Users can participate in multiple rounds.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2F3AEHXZDhKvEkZfFKenO1%2F10.%20Unchain%20X%20Starter%20Option.png?alt=media&amp;token=2f60003b-8738-4a68-8ce0-d8547d366a9e" alt=""><figcaption></figcaption></figure>

Through the Starter Option, users can set the return rate, allowing them to mine more UNX. A lower return rate setting results in a lower return rate on deposited assets and more UNX being mined.

The return rate follows the following guidelines.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FFXnV91pnOSymT4O5VRCL%2F11.%20Mining%20Rate%20Graph.png?alt=media&amp;token=0a4404b7-c775-4066-80dc-ab240cba1a0f" alt=""><figcaption></figcaption></figure>

**\*In the return rate option, a geometric progression formula is applied, where a default mining bonus rate of 5% + 0.3% is added each time the next 1% return rate is set.**

| **Return Rate Option** | **Mining Yield** |
| ---------------------- | ---------------- |
| 99%                    | 105%             |
| 98%                    | 110.3%           |
| 97%                    | 115.9%           |
| 96%                    | 121.8%           |
| 95%                    | 128%             |
| 94%                    | 134.5%           |
| 93%                    | 141.3%           |
| 92%                    | 148.4%           |
| 91%                    | 155.8%           |
| 90%                    | 163.5%           |
| 89%                    | 171.5%           |
| 88%                    | 179.8%           |
| 87%                    | 188.4%           |
| 86%                    | 197.3%           |
| 85%                    | 206.5%           |
| 84%                    | 216%             |
| 83%                    | 225.8%           |
| 82%                    | 235.9%           |
| 81%                    | 246.3%           |
| 80%                    | 257%             |
| 79%                    | 268%             |
| 78%                    | 279.3%           |
| 77%                    | 290.9%           |
| 76%                    | 302.8%           |
| 75%                    | 315%             |
| 74%                    | 327.5%           |
| 73%                    | 340.3%           |
| 72%                    | 353.4%           |
| 71%                    | 366.8%           |
| 70%                    | 380.5%           |
| 69%                    | 394.5%           |
| 68%                    | 408.8%           |
| 67%                    | 423.4%           |
| 66%                    | 438.3%           |
| 65%                    | 453.5%           |
| 64%                    | 469%             |
| 63%                    | 484.8%           |
| 62%                    | 500.9%           |
| 61%                    | 517.3%           |
| 60%                    | 534%             |
| 59%                    | 551%             |
| 58%                    | 568.3%           |
| 57%                    | 585.9%           |
| 56%                    | 603.8%           |
| 55%                    | 622%             |
| 54%                    | 640.5%           |
| 53%                    | 659.3%           |
| 52%                    | 678.4%           |
| 51%                    | 697.8%           |
| 50%                    | 717.5%           |
| 49%                    | 737.5%           |
| 48%                    | 757.8%           |
| 47%                    | 778.4%           |
| 46%                    | 799.3%           |
| 45%                    | 820.5%           |
| 44%                    | 842%             |
| 43%                    | 863.8%           |
| 42%                    | 885.9%           |
| 41%                    | 908.3%           |
| 40%                    | 931%             |
| 39%                    | 954%             |
| 38%                    | 977.3%           |
| 37%                    | 1000.9%          |
| 36%                    | 1024.8%          |
| 35%                    | 1049%            |
| 34%                    | 1073.5%          |
| 33%                    | 1098.3%          |
| 32%                    | 1123.4%          |
| 31%                    | 1148.8%          |
| 30%                    | 1174.5%          |
| 29%                    | 1200.5%          |
| 28%                    | 1226.8%          |
| 27%                    | 1253.4%          |
| 26%                    | 1280.3%          |
| 25%                    | 1307.5%          |
| 24%                    | 1335%            |
| 23%                    | 1362.8%          |
| 22%                    | 1390.9%          |
| 21%                    | 1419.3%          |
| 20%                    | 1448%            |
| 19%                    | 1477%            |
| 18%                    | 1506.3%          |
| 17%                    | 1535.9%          |
| 16%                    | 1565.8%          |
| 15%                    | 1596%            |
| 14%                    | 1626.5%          |
| 13%                    | 1657.3%          |
| 12%                    | 1688.4%          |
| 11%                    | 1719.8%          |
| 10%                    | 1751.5%          |
| 9%                     | 1783.5%          |
| 8%                     | 1815.8%          |
| 7%                     | 1848.4%          |
| 6%                     | 1881.3%          |
| 5%                     | 1914.5%          |
| 4%                     | 1948%            |
| 3%                     | 1981.8%          |
| 2%                     | 2015.9%          |
| 1%                     | 2050.3%          |
| 0%                     | 2085%            |

• Up until the 5th day of each round, users are free to set the return rate. From the 6th day onwards, only return rate settings exceeding 50% are allowed.

• The return rate cannot be adjusted to a higher rate but can be adjusted to a lower rate.

• UNX mined during the launchpad period will have a lock-up period where 10% of the locked amount will be released every 30 days after the official opening of UNCHAIN X.

• UNX is mined at a rate of 300,000 per day with a halving structure. Additional UNX can be secured during the launchpad period from pre-allocated amounts. Subsequently, UNX undergoes 5 halving cycles, gradually establishing its value in the market.


# Swap

Swapping is the most common method of exchanging various BEP20 tokens circulating on the Binance Smart Chain (BSC) based on the ratio of tokens deposited in the pool.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FVValQQVsxC0ABv8jbKL9%2F12.%20Swap.png?alt=media&amp;token=ee45ed8d-9459-4744-b26d-ebce7858e56b" alt=""><figcaption></figcaption></figure>

Unchain X swap operates on an AMM-based protocol, utilizing the CPMM (Constant Product Market Makers) function.

CPMM(x\*y=k)

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2F5XQKa86dmTUHKRHSKFZJ%2F13.%20CPMM%20Graph.png?alt=media&amp;token=9526226f-51a1-47b4-9165-e7033d949200" alt=""><figcaption></figcaption></figure>

## Fee rewards

When a user swaps tokens through Unchain X, transaction fee rewards are distributed proportionally to all liquidity within the range at the time of the swap. Liquidity that falls outside the position range no longer remains active, and no fee rewards are incurred. If the spot price reverses and re-enters the position range, liquidity is reactivated, and fee rewards are incurred. Additionally, fees are not automatically reinvested.

## Slippage

Slippage is a term used to describe the potential change in a specific price while a submitted transaction is pending.

When transactions are submitted to the BSC, the order of execution is determined by the amount of "gas" provided as fees for each transaction execution. Transactions with higher provided fees are executed more quickly. Transactions with lower gas fees are kept pending for a certain period. During this period, the price environment for final execution of the transaction changes due to other swaps occurring.

Slippage tolerance sets the margin of change that users can accept beyond the price impact. If the execution price exceeds the allowed slippage range, the transaction fails, and the swap does not occur.


# Pair Deposit(v2)

Pair deposit is a deposit method where two assets are deposited into a pair pool, and in compensation, rewards can be obtained. By depositing assets into a pair pool on the BSC network, users can receive UNX rewards based on the UNX daily distribution, their stake within the pool.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FPTp3Ipt8FwhSoub725Xg%2F14.%20Pair%20Deposit.png?alt=media&amp;token=39b24ea2-d47a-480a-b340-5ce021c4cb06" alt=""><figcaption></figcaption></figure>

## Liquidity Provision and LP Token Supply

Users can deposit their assets into pools of their preference, and we refer to these ecosystem participants as Liquidity Providers (LPs). By providing liquidity to a pool, LPs receive LP tokens as evidence, and the number of LP tokens received represents their share (%) of the total pool. When withdrawing all assets from a pool, LP tokens are automatically returned, and users can receive the following rewards from the pool through LP token proof during the asset deposit period.

## UNX Distribution Reward

When users supply liquidity to the UNX reward pool, they can receive UNX mining rewards based on their LP share (%) in the pool and the STARTER option.

## Transaction Fee Reward

When users supply liquidity to a regular pool, they can receive transaction fee rewards based on their LP share (%) in the pool. Transaction fees are accumulated in the pool, and upon withdrawal, the total withdrawal amount includes the transaction fee rewards, which is processed according to the exchange rate at the time of withdrawal.

## Impermanent Loss

Users can deposit two types (pairs) of assets into Unchain X to earn UNX rewards, trading fee rewards, and potential airdrop rewards.

According to the comparison example, impermanent loss can occur.&#x20;

If the current market price of the assets deposited by the user significantly increases or decreases compared to the price at the time of deposit, there is a possibility of an evaluation difference at that time that the actual expected reward, which could have been held without depositing the assets, could have. This loss occurs when the user withdraws assets from the pool, but there is no actual loss if the price difference of the assets in the deposit state before withdrawal is recovered as the price of the dice to be deposited in the pool. Additionally, there is a total reward. Verify the expected results considering both the UNX distributor and the trading fee distribution reward.


# Concentrated Liquidity(v3)

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2Fiptb20wTobURHaLkntGn%2F15.%20Unchain%20X%20V3.png?alt=media&amp;token=bf0fda1a-046a-462b-b2f9-5be0c8c2afcd" alt=""><figcaption></figcaption></figure>

## Introduction[​](https://docs.uniswap.org/concepts/protocol/concentrated-liquidity#introduction) <a href="#introduction" id="introduction"></a>

The defining idea of Unchain X v3 is concentrated liquidity: liquidity that is allocated within a custom price range. In earlier versions, liquidity was distributed uniformly along the price curve between 0 and infinity.

The Pair Deposit(v2) uniform distribution allowed trading across the entire price interval (0, ∞) without any loss of liquidity. However, in many pools, the majority of the liquidity was never used.

Consider stablecoin pairs, where the relative price of the two assets stays relatively constant. The liquidity outside the typical price range of a stablecoin pair is rarely touched. For example, the v2 USDT/FDUSD pair utilizes \~0.50% of the total available capital for trading between $0.99 and $1.01, the price range in which LPs would expect to see the most volume - and consequently earn the most fee rewards.

With v3, liquidity providers may concentrate their capital to smaller price intervals than (0, ∞). In a stablecoin/stablecoin pair, for example, an LP may choose to allocate capital solely to the 0.99 - 1.01 range. As a result, traders are offered deeper liquidity around the mid-price, and LPs earn more trading fee rewards with their capital. We call liquidity concentrated to a finite interval a position. LPs may have many different positions per pool, creating individualized price curves that reflect the preferences of each LP.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2Fx2VDXk8iLQDn723g5Q94%2F16.%20Provide%20Centralized%20Liquidity.png?alt=media&amp;token=16d1c527-ceed-425e-af68-f50f0f41e55d" alt=""><figcaption></figcaption></figure>

## Active Liquidity[​](https://docs.uniswap.org/concepts/protocol/concentrated-liquidity#active-liquidity) <a href="#active-liquidity" id="active-liquidity"></a>

As the price of an asset rises or falls, it may exit the price bounds that LPs have set in a position. When the price exits a position's interval, the position's liquidity is no longer active and no longer earns fee rewards.

As price moves in one direction, LPs gain more of the one asset as swappers demand the other, until their entire liquidity consists of only one asset. (In v2, we don't typically see this behavior because LPs rarely reach the upper or lower bound of the price of two assets, i.e., 0 and ∞). If the price ever reenters the interval, the liquidity becomes active again, and in-range LPs begin earning fee rewards once more.

Importantly, LPs are free to create as many positions as they see fit, each with its own price interval. Concentrated liquidity serves as a mechanism to let the market decide what a sensible distribution of liquidity is, as rational LPs are incentivize to concentrate their liquidity while ensuring that their liquidity remains active.

## Ticks[​](https://docs.uniswap.org/concepts/protocol/concentrated-liquidity#ticks) <a href="#ticks" id="ticks"></a>

To achieve concentrated liquidity, the once continuous spectrum of price space has been partitioned with ticks.

Ticks are the boundaries between discrete areas in price space. Ticks are spaced such that an increase or decrease of 1 tick represents a 0.01% increase or decrease in price at any point in price space.

Ticks function as boundaries for liquidity positions. When a position is created, the provider must choose the lower and upper tick that will represent their position's borders.

As the spot price changes during swapping, the pool contract will continuously exchange the outbound asset for the inbound, progressively using all the liquidity available within the current tick interval until the next tick is reached. At this point, the contract switches to a new tick and activates any dormant liquidity within a position that has a boundary at the newly active tick.

While each pool has the same number of underlying ticks, in practice only a portion of them are able to serve as active ticks. Due to the nature of the v3 smart contracts, tick spacing is directly correlated to the swap fee. Lower fee tiers allow closer potentially active ticks, and higher fees allow a relatively wider spacing of potential active ticks.

While inactive ticks have no impact on transaction cost during swaps, crossing an active tick does increase the cost of the transaction in which it is crossed, as the tick crossing will activate the liquidity within any new positions using the given tick as a border.

In areas where capital efficiency is paramount, such as stable coin pairs, narrower tick spacing increases the granularity of liquidity provisioning and will likely lower price impact when swapping - the result being significantly improved prices for stable coin swaps.


# Governance

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FdZNJAibbBGQxm0s1CGIG%2F17.%20Unchain%20X%20Governanace.png?alt=media&amp;token=596bd490-7534-47c0-9da9-d1a5ec262bbd" alt=""><figcaption></figcaption></figure>

Unchain X Governance builds a framework for the growth of the entire UNX ecosystem through the Unchain X DAO, which utilizes a consensus that operates governance through voting. DAO will determine the main issues of the UNX protocol. Unchain X creates an ongoing demand for UNX to secure voting rights (UNX) through its governance structure and encourages more participation in UNX ecosystem. This will not only form a stable price support base for UNX, but also form a virtuous cycle structure for UNX with the activation of governance and DAO.

## Unchain X Circular Ecosystem

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FqYJkgXOLuQErZqiKapiQ%2FUnchain%20X%20Circular%20Ecosystem.png?alt=media&amp;token=5b192a00-9547-4182-9d8d-dd503313a0f3" alt=""><figcaption></figcaption></figure>

In the Unchain X galaxy, there are numerous UNX stars. Like other galaxies, the Unchain X galaxy's ecosystem circulates and grows according to the principles of cosmic expansion.

## Principle of Cosmic Expansion

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FF8psG0gH2jJsmWh72sJ2%2FPrinciple%20of%20Cosmic%20Expansion.png?alt=media&amp;token=4269411e-b920-4af2-bb8c-1e9d67aaacaf" alt=""><figcaption></figcaption></figure>

Star → Demise of star → Particles → Aggregation of particles → Formation of new stars

## How to get VUNX

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FwCqL2uU1pvtZY75tmP6P%2FHow%20to%20get%20VUNX.png?alt=media&amp;token=68aa24e5-ac23-447f-963f-b951ff7cc644" alt=""><figcaption></figcaption></figure>

According to the principles of cosmic expansion, in the Unchain X galaxy, you can burn stars (UNX) to obtain X Particles (XPT) at a ratio of 1 UNX to 10 XPT. Using the X-Fusion system, you can exchange X Particles (XPT) for VP at a 1:1 ratio, which can be used to convert into X Guardians (VUNX) that have the authority to make major decisions in the Unchain X galaxy. Additionally, a certain amount of the daily distribution of UNX is allocated to the X-Fusion system, allowing users to acquire new stars (UNX). The distribution of new stars (UNX) is based on the proportion of usage in the X-Fusion system. (This system deducts the mining shares based on the proportion of UNX you have claimed compared to the total unclaimed UNX.)

## Example of Share Deduction Ratio

Claimed UNX: 10, Total unclaimed UNX: 200

10/200 = 5% share deduction

## X Guardians

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FeXBR6viL8NvtQTepZXe4%2FX%20Guardians.png?alt=media&amp;token=d071ffc3-2dd5-4b63-b086-bc0987d288ae" alt=""><figcaption></figcaption></figure>

In Unchain X, the Circular Ecosystem enables the acquisition of X Guardians (VUNX) to determine the main issues of the Unchain X galaxy, and any user who acquires X Guardians (VUNX) at the same time is referred to as X Guardians.

The X Guardians vote on key issues within the Unchain X, directly participating in the Unchain X ecosystem, and defending the Unchain X galaxy.

## Governance Information

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FiYceU0kJWg8iBNC7WEeC%2FGovernance%20Information.png?alt=media&amp;token=61b78e3f-a4fb-42ea-ba74-71513e43dfae" alt=""><figcaption></figcaption></figure>

Unchain X governance is sequentially disclosed, separated by Lv.3, for stable ecosystem configuration.

## Governance Lv1: Voting capabilities

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2F38kn6psAx6bJl2QtbQOt%2FGovernance%20Lv1.png?alt=media&amp;token=b384b548-8175-4a37-87a0-e63874389055" alt=""><figcaption></figcaption></figure>

In Governance Level 1, X-Guardians participate in decision-making through voting on key proposals, with the goal of building a stable ecosystem.

At the current Level 1 stage, governance is primarily centered around Pool Voting, which adjusts the allocation of rewards across liquidity pools, a core element of protocol operations. Through this process, balance among assets within the ecosystem and an efficient liquidity provisioning structure are maintained.

## Governance Lv2: Agenda Registration

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FeYgOUnpMKdGRSPHeeBsm%2FGovernance%20Lv2.png?alt=media&amp;token=c57d1d54-6520-42e2-bf66-1c9eb5ffe88e" alt=""><figcaption></figcaption></figure>

From the governance Lv. 2nd stage, X-Guardians can register on the agenda. If it is deemed necessary to decide on a major issue, X-Guardians who meet the agenda registration conditions can register on the agenda at any time according to the governance policy. At this stage, all procedures related to governance are converted to on-chain data.

## Governance Lv3 : Complete Decentralization

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FDD1KJ6mMDtNmlPA6qNIH%2FGovernance%20Lv3.png?alt=media&amp;token=b554db8b-e1db-498a-8977-30cf9ef0169f" alt=""><figcaption></figcaption></figure>

Remove the permissions of Unchain X within the Unchain X contract to completely remove features that can affect the protocol and achieve complete decentralization.


# Governance Voting Policy

* By burning stars (UNX), you can obtain X Particles (XPT) at a ratio of 1 UNX to 10 X Particles (XPT).

  Comment
* Vote Points (VP) can be obtained using the X-Fusion system at a ratio of 1 XPT to 1 Vote Point (VP).

  Comment
* &#x20;X Guardians (VUNX) can be acquired at a ratio of 1 Vote Point (VP) to 1 X Guardian (VUNX).

  Comment
* This system deducts mining shares based on the proportion of UNX you have claimed compared to the total unclaimed UNX. (If you claimed 10 UNX and the total unclaimed UNX is 200, then the deduction ratio is 10/200 = 5%.)


# Mining Power Redistribution Mechanism

**Dual Voting Structure for Pools**

Redistribution of UNX mining power is carried out by operating pool voting in a dual structure of UNX pair pools and general pair pools.

* In each category, pools are selected for voting based on trading volume.
* There is no minimum trading volume requirement. Up to 50 pools per category are selected weekly based on the highest trading volume. (In the case of identical volumes, the pool with higher liquidity takes priority.)

**Reward Weight Allocation**

* The total daily UNX rewards allocated to each category are derived from the overall UNX liquidity mining rewards.

  A separate weighting is applied per category: (UNX-paired pools: 60%, Other pools: 40%)
* The figures may change through an agenda voting.

**Voting Method**

* Voting takes place independently within each category.
* Users can vote for multiple pools within each category during the same round.\
  **Example:** If a user has 100,000 voting power (VP), they can distribute 100,000 VP across UNX-paired pools, and also 100,000 VP across other pools.
* **Quorum Rule:** If the total number of valid votes in a category is less than one-third of the total available voting power, the results for that category will not be reflected. Each category operates independently in terms of result validation.

**Reward Distribution Rate Calculation**

The final UNX rewards are determined by combining a base distribution rate with voting-based allocation

* A portion of the rewards in each category is first distributed evenly across all eligible pools as the base allocation.

  → This ensures a minimum level of reward for all pools, helping maintain overall liquidity stability on the DEX.
* The remaining rewards are then distributed proportionally based on the voting results (i.e., each pool’s share of the total votes in its category).\
  \
  **Example:**\
  **-** Total Daily Liquidity Mining Rewards: 600,000 UNX\
  \- UNX-Paired Pools (60%) → 360,000 UNX

  &#x20;  10% of this (36,000 UNX) is allocated as base rewards.\
  \- Other Pools (40%) → 240,000 UNX

  10% of this (24,000 UNX) is allocated as base rewards.\
  \
  **If:**\
  **-** There are 9 pools in the UNX-paired category → Each pool receives 4,000 UNX as a base  allocation.\
  \- There are 10 pools in the other category → Each pool receives 2,400 UNX as a base allocation.\
  The remaining rewards in each category are then distributed according to each pool’s voting share.

**Round Operation Process**

Each round is automatically managed and scheduled based on internal contract logic.

* **Snapshot:**

  Pools eligible for voting in each category are selected based on trading volume as of 00:00 UTC the day before voting begins.\
  (The valid voting rights for that round are also determined at snapshot time.)
* **Voting Period:**

  Voting begins 24 hours after the snapshot and continues for 5 days.
* **Result Application:**

  Voting results are applied 48 hours after the voting period ends.
* **Effect Duration:**

  The applied results remain in effect for 2 weeks.\
  \
  **Example:**

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FqlfEp4QU9Ew5JkjYkqi8%2F2025-09-24-160251_002.png?alt=media&amp;token=c6c18bde-ed89-4563-b136-304167e55c58" alt=""><figcaption></figcaption></figure>


# Proposal

## *Proposal Registration*

* Anyone may register a proposal if they meet the required authority and conditions.
* For each topic, modification/proposal options can be selected and submitted.
* Participants who meet certain qualification requirements may submit proposals through an on-chain transaction.

**Proposal Registration Authority**

* Ownership of Guardians NFT at the time of registration.
* Only accounts holding NFT of a specific class or higher are eligible to register proposals. (Sergeant)

**Proposal Registration Fee**

* Registration fee asset (ERC20)
* 1,000 UNX
* The paid fee is allocated to the protocol as revenue and will be burned according to a separate project schedule. The fee is non-refundable under any circumstances, regardless of whether the proposal is approved or rejected.

**Additional Proposal Registration Conditions**

* Interval for registering identical agenda topics
* -Re-submission of proposals on the same topic is restricted depending on the outcome.  \
  Approved proposals may be resubmitted after 6 weeks, while rejected proposals may be resubmitted after 2 weeks.

**(-In the case of the Assets Topic, each token is considered a separate agenda.)**

*Voting*

* The total valid voting power and quorum are determined based on the block at the time the proposal is registered.
* Quorum requirement: one-third (1/3) of the total valid voting power at the time of proposal registration.
* For each proposal, all accounts holding Voting Power (VP) at the standard block are eligible to participate.

**Voting Period**

* Voting Start Time: The time of proposal registration (based on real-world time).
* Voting End Time: The time obtained by adding the predefined voting period to the proposal registration time.
* Voting Duration: 5 full days from the time of proposal registration.

**Execution of Results**

* (If approved) Execution waiting period: 2 full days from the end of the voting period.
* After the waiting period ends, an on-chain transaction is executed through the administrator account via an automated system.

## Governance Topics

**Assets**

<sub>**Others Token Listing**</sub>

* Technical verification, such as compliance with the ERC20 standard, can be performed. However, the evaluation of a project’s legitimacy or security rests entirely with users, and the protocol assumes no responsibility in this regard.

<sub>**Others Token Delisting**</sub>

* During the agenda voting period, certain functions related to the token will be temporarily suspended. (Liquidity pool creation will be suspended, while swaps remain available.)

**Ecosystem**

<sub>**Pool-Voting UNX Distribution Ratio**</sub>

* **Initial rate**:  \
  UNX Paired: 60%&#x20;  \
  Others: 40%&#x20;

<sub>**Adjustable Ratio Range**</sub>

* 3:7 \~ 7:3

(If the proposal is approved, the results will be applied starting from the next Pool-Voting round at the time of execution.)

<sub>**X-Universe: Referral Access Burn Threshold**</sub>

* Adjust the required amount of UNX tokens to be burned in order to unlock referral invitation eligibility.

<sub>**Proposal: Agenda Submission Eligibility Threshold**</sub>

* Adjust the eligibility requirements for users to submit governance proposals.

**X-Launcher UNX Buyback Ratio**

* **Initial rate:** 1% of the total bonding curve sales amount.
* **Adjustable Ratio Range:** 0.1% to 5% (freely adjustable within the range up to two decimal places).

## ***Fee Policy***

**Liquidity Pool Creation Fee**

* **Initial rate:** 10,000 UNX

<sub>**Adjustable Range:**</sub>

* Minimum: 10,000 UNX (freely adjustable in whole number units within the range)

**X-Launcher Bond Creation Fee**

* **Initial rate:** 100 UNX

<sub>**Adjustable Range:**</sub>

* Minimum: 100 UNX (freely adjustable in whole number units within the range)

**NFT Marketplace Trading Fee**

* **Initial rate:** 2.5%

<sub>**Adjustable Range:**</sub>

* 1% to 5% (freely adjustable within the range up to two decimal places)

(If the proposal is approved, any previous listing/offer orders will be invalidated as of the time the results are executed.)

**Proposal Fee**

* **Initial rate:** 1,000 UNX

<sub>**Adjustable Range:**</sub>&#x20;

* Minimum 1,000 UNX (freely adjustable in whole number units within the defined range)


# X-Launcher

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FB7e1rybsv32csPskIPq8%2F20.%20X-Launcher.png?alt=media&amp;token=1edb5a3e-d2d6-4831-adb2-bb3e91872bc0" alt=""><figcaption></figcaption></figure>

X-Launcher is an AI-powered feature within the Unchain-X platform that enables anyone to launch and trade tokens. In a user-friendly environment, users can quickly realize and launch their token ideas through AI, allowing them to establish a foundation for growth.

X-Launcher by Unchain-X serves as a gateway to expand the DEX ecosystem by attracting token deployers who want to grow the ecosystem rapidly.


# Initial Sale

The initial sale uses the exponential method of the bonding curve.

The bonding curve is a mathematical model used for digital asset issuance. The token price is linked to supply via a predefined price-supply relationship. Buy or sell transactions are managed by smart contracts that automatically calculate the amount of underlying assets (payment tokens) required. When buying, the payment token is added to the bonding curve pool, and new tokens are minted, while when selling, tokens are burned, and the underlying asset is returned from the pool.

By leveraging the Discrete Bonding Curve (DBC) model, the curve is divided into distinct price intervals.

Unlike a continuous linear curve (y=x), the DBC model implements stepwise intervals under the curve, offering enhanced customization and resolving technical challenges in implementing bonding curves via smart contracts.

Exponential Model

This model features prices increasing at a constant rate within each price range and is widely used for most liquidity-based bonding curves.

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2F6x0mP4yFDX0kp95QVJLx%2F2.png?alt=media&amp;token=d7b1bb39-015e-460e-85a9-6b617dbf7e7a" alt=""><figcaption></figcaption></figure>

P: Current token price (Price)

S: Circulating token supply (Supply)

k: Constant value (Scaling factor)

n: Exponent (Exponent, generally n > 1)

P=kS$$^{n}$$

* As S (supply) increases, P (price) rises rapidly

This approach ensures gradual price adjustments based on demand and is designed to facilitate both buying and selling, ensuring liquidity.


# Token Launch Process

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2Fliq3Fcj5EhBmml5cjmN2%2Fai.png?alt=media&amp;token=42e7310c-7f10-451b-be3c-a3a6504216b8" alt=""><figcaption></figcaption></figure>

Follow the steps below to successfully launch tokens after Unchain-X’s review!

|     | Description                                                                                        | Executor                               |
| --- | -------------------------------------------------------------------------------------------------- | -------------------------------------- |
| 1   | Launch Request                                                                                     | Token Deployer                         |
| 2   | <p>Launch Review,<br>Execute Launch Tx Upon Review Approval </p><p>(Create Bonding Curve Pool)</p> | AI                                     |
| 3-1 | Liquidity Pool Migration Upon Fundraising Achievement Within Initial Sale Period                   | Last Purchasing User                   |
| 3-2 | Liquidity Pool Migration Upon Expiration of Initial Sale Period                                    | Token Deployer or Last Purchasing User |

**1.     Token Launch Request**

Required Information

1\.     Token Information

* &#x20;Name: (Token name)
* &#x20; Symbol (Ticker): (Token symbol)
* &#x20;Image: (Token logo) - PNG.(200 x 200)

**2.     Bonding Curve Options**

* &#x20;Maximum token supply
* Total funding goal (BNB)
* Initial Buy
* Sale period (set in days)

**3.     Project Information**

* &#x20;Introduction: (Brief project overview)
* &#x20; Wallet address for fees and launch revenue
* &#x20;Website URL
* &#x20;SNS URL(e.g., X, Telegram, Discord, etc)

**\*The information above can be generated using AI, or users may also enter it manually themselves.**

**\*AI token generation through X-Launcher is limited to 3 attempts per wallet and 12 attempts per IP address.**\
**This limitation applies only to the AI token generation feature, not to general token creation, and is enforced as a daily limit rather than a global restriction.**


# Launch Review

The launch has been successfully completed following Unchain-X review process.

Content containing provocative wording, images, or external links may be subject to review. However, the platform does not verify whether a project is a scam or guarantee its credibility.

* The platform does not provide any guarantees regarding the validity, stability, or profitability of issued tokens or projects. All purchases and participation are made solely at the user's own judgment and responsibility.
* X-Launcher provides a feature that allows anyone to freely create and launch projects, and the platform does not verify, approve, endorse, or assume responsibility for individual projects or tokens. Therefore, users are strongly advised to conduct their own research and verification before participating.
* In particular, users are solely responsible for securing all rights related to any text, images, brand assets, or other content used during the token creation process. Users must obtain all necessary rights, licenses, permissions, and approvals for such content, and all legal responsibility related to its use rests entirely with the user.
* The project does not review, verify, approve, or assume responsibility for tokens or related content created by users.


# Bonding Curve Pool Creation

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FNRXZoKEnFsbjPfru9fpF%2Fphoto_2025-03-07_11-36-25.jpg?alt=media&amp;token=addb74a3-6606-4e40-b8b6-9e138d77fe36" alt=""><figcaption></figcaption></figure>

**Bonding Curve Pool Creation**

\-      After approval, the token deployer directly executes the transaction

\-      80% of the maximum supply is allocated to create the bonding curve based on the input values

\-      An issuance fee must be paid. (Issuance fee in UNX: 100 UNX)

\-      Bonding curve transactions will halt upon achieving the funding goal.

**When Funding Goal is Achieved Within Initial Sale Period**

1\.     Liquidity Pool Migration

—     Migration to the liquidity pool occurs automatically during the last Purchasing User’s transaction.

—      Liquidity is provided with the raised funds (BNB) minus some portion, along with 20% of the new token supply.

* Initial price: The final sale price on the bonding curve
* Liquidity pool fee: 1%
* Liquidity provision range: Full Range
* To compensate for gas fees and unfavorable conditions, 0.1% of the total raised funds is provided as an incentive during migration to the last Purchasing User.
* As part of the UNX deflation strategy, 1% of the raised amount (BNB) will be used to buy back and burn UNX.
* Liquidity pool creation fees are deducted from the funding amount (Liquidity pool creation fee in UNX: It will be included starting from the opening of the liquidity creation.)

—   During migration, the generated position NFT is allocated to the X-Launcher contract, and the swap fees for the position are permanently not collected, remaining in the pool.

—   If the migrated pool is designated as a UNX distribution pool, the deployer holds the right to collect the UNX mined from that position.

\*\* However, if the initial sale period has been exceeded, token deployers can initiate migration at any time as long as 50% or more of the funding target has been met.

**When Initial Sale Period is Exceeded**

&#x20;Liquidity Pool Migration

* The process when funding goals are achieved follows the same procedure as when funding goals are met within the initial sale period.
* &#x20;If more than 50% of the funding goal is met, the token deployer can initiate migration at any time.
* During migration, the generated position NFT is assigned to the X-Launcher contract, and the swap fees for the position are permanently not collected, remaining in the pool.
* If the migrated pool is designated as a UNX distribution pool, the deployer holds the right to collect the UNX mined from that position.

**Fees**

\-      Issuance fee: to be updated

&#x20; Bonding Curve Fees

* During Initial Sale Period: Buy (0.5%) / Sell (5%)
* After Initial Sale Period: Buy (1%) / Sell (1%)

(The buy and sell fees listed above are evenly distributed between the protocol and the deployer.)


# Conclusion

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FEERfFFRuEYJmQ0L9jSjd%2F5.png?alt=media&amp;token=47600076-a40a-49ff-b63d-914c0b5a9c76" alt=""><figcaption></figcaption></figure>

Conclusion

* X-Launcher is a powerful feature of Unchain X that enables anyone to easily launch tokens and secure liquidity through AI.
* Using the Exponential Bonding Curve model, token prices increase progressively with supply, ensuring efficient liquidity management.
* Through Unchain X’s review process and governance, the platform aims to expand its token ecosystem.
* Experience the new crypto market with Unchain X’s X-Launcher!


# NFT Marketplace

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FaqwdQYHPy6AIfGRhEEGx%2F1.jpeg?alt=media&amp;token=965efaf2-09c1-4660-b631-3f83bad7866a" alt=""><figcaption></figcaption></figure>

Within the Unchain X ecosystem, X Guardians NFT exist,\
and X Guardians are core assets that symbolize protocol participation rights rather than simple collectible NFT.

Participants who hold X Guardians NFT\
can take part in governance activities within Unchain X,\
allowing them to directly participate in the protocol’s operational direction and key decision-making processes.

The Unchain X NFT Marketplace was established to provide an official trading environment where X Guardians NFT, as well as future project-related NFT, can be freely traded.


# Role of X Guardians NFT

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FaMPk77dgw0KaTlhGKmUv%2F2.jpeg?alt=media&amp;token=5b42cbd9-d355-4dbf-aa62-5945499d1f78" alt=""><figcaption></figcaption></figure>

**X Guardians NFT serve the following roles:**

* Participation rights for Unchain X pool voting
* A basic requirement for participating in DAO-based governance agendas
* An NFT that proves eligibility for participation within the Unchain X ecosystem

Eligibility for governance participation is determined by whether X Guardians NFT are held, and participation is not possible without holding the NFT.


# Purpose of the NFT Marketplace

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FKmS9Gb1rEtV3Jnl7ljTt%2F3.jpeg?alt=media&amp;token=0013e7e6-b196-4ac7-b4f6-3016b23a1661" alt=""><figcaption></figcaption></figure>

**The Unchain X NFT Marketplace is operated with the following purposes:**

* Providing a transparent and secure trading environment for X Guardians NFT and other project-related NFT
* Lowering the entry barrier for ecosystem participation
* Ensuring flexibility in NFT ownership and transfer
* Strengthening the sustainability of the DAO governance participation structure

Through the official marketplace, users can trade NFT in a reliable environment.


# Key Features of the NFT Marketplace

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FcgDhD8SZla06FgASOWT8%2F4.jpeg?alt=media&amp;token=c249174f-dec6-436e-a915-5e28dfff5d33" alt=""><figcaption></figcaption></figure>

**The following features are provided in the Unchain X NFT Marketplace:**

* X Guardians NFT sale registration
* X Guardians NFT purchase offer
* X Guardians NFT trade execution
* NFT holding verification
* Trade history verification

NFT transactions are conducted in an on-chain environment, and all transaction records are transparently recorded on the blockchain.


# Governance and NFT Integration Structure

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FeHkvE3fzZpElhac22Jh8%2F5.jpeg?alt=media&amp;token=463db607-5885-4255-b371-39ca6d380b48" alt=""><figcaption></figcaption></figure>

* Governance participation is based on wallets holding X Guardians NFT.
* Governance participation is only possible when the NFT exists in the wallet.
* When an NFT is traded (sold), the governance participation rights of that wallet are automatically revoked.
* Wallets that newly acquire an NFT immediately obtain governance participation eligibility.

Through this structure, governance participation rights are always directly linked to NFT ownership status.


# Operations and Policy Overview

**Operational Principles**

The Unchain X NFT Marketplace operates based on the following principles:

* No direct project intervention in price formation
* Maintenance of a voluntary trading structure among market participants
* Disclosure of transparent transaction records
* Guarantee of fair accessibility and equal participation opportunities
* **All NFT transactions are subject to a 2.5% protocol fee, which will be burned in the future as part of a deflationary strategy.**
* Unchain X does not guide NFT transaction prices or market trends in any specific direction.

**Updates and Future Plans**

The NFT Marketplace will be updated in stages,\
and details regarding feature additions and improvements will be announced through official notices.

Unchain X plans to continuously advance the structure connecting NFT and governance in order to build a more stable and participation-driven ecosystem.

**Notices**

* X Guardians NFTs and all project-related NFT do not guarantee investment returns.
* The value of NFT is determined by the judgment of market participants.
* Governance participation rights vary depending on NFT ownership status.


# X DROP

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FXherm72UDz1SWflOgUu5%2F1.jpg?alt=media&amp;token=3ec136ef-4e68-418c-8d5e-04e88cc7e823" alt=""><figcaption></figcaption></figure>

Unchain X Contribution-Based Additional Rewards Program.

X-DROP is a contribution-based additional rewards program designed to support the continued growth and activation of the Unchain X ecosystem.

Users who contribute to the protocol and ecosystem, including by participating in Unchain X governance or providing liquidity, may receive additional rewards based on their level of contribution.

X-DROP is intended to reward meaningful participation and contribution to the ecosystem rather than mere asset ownership, and may be expanded into various forms of reward programs in the future.

**\*X-DROP is an incentive program operated at the team’s discretion. Participation in X-DROP does not grant participants any rights to the protocol’s revenue, profits, or assets, and the availability, amount, and timing of rewards are not guaranteed in advance. Please review “**[**4. Terms of Use and Important Notices**](https://docs.unchainx.io/product/pages/G8TzLkt7JM2ruxliXpzR#id-4.-terms-of-use-and-important-notices)**” before participating.**


# Governance Participation Rewards Airdrop

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2Fe2C9bcoZ3OH5YJylF05d%2F2.jpg?alt=media&amp;token=92e007a9-f050-45d9-88ba-084b047d60f0" alt=""><figcaption></figcaption></figure>

Governance Rewards Drop is an X-DROP program that provides additional rewards to users who participate in Unchain X governance.

Rewards are not distributed on a fixed recurring schedule, but are conducted through non-regular Waves. Each Wave has a separate Snapshot Period, and eligibility and reward amounts are determined based on governance participation metrics recorded during that period.


# Governance Participation Metrics

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2F1zb14Ad6Vuo7mWH0fAXM%2F3.jpg?alt=media&amp;token=22096aad-49c2-406c-a602-b8cc29cd8ef5" alt=""><figcaption></figcaption></figure>

Governance participation is measured based on the following activities

•   Participation in Pool Voting

•   Participation in Proposal Voting

For Pool Voting, participation records in the Paired and Others categories are reflected as separate, independent metrics. Accordingly, continued governance participation across different areas allows users to accumulate participation metrics that may be reflected in the calculation of X-DROP rewards.

The specific calculation methodology and weighting of participation metrics may vary by Wave and will be announced when each Wave begins.


# Wave Operations

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FJF3Ko9CoRepILDu1T91p%2F4.jpg?alt=media&amp;token=51e3998b-1986-4070-9746-995203aed1ff" alt=""><figcaption></figcaption></figure>

Governance Rewards Drop is operated on a Wave-by-Wave basis. Each Wave has its own Snapshot Period and reward criteria, and the timing and detailed conditions may vary depending on ecosystem conditions and the operational direction of the protocol.

When each Wave begins, the following information will be announced through official channels:

•   Snapshot Period

•   Criteria for calculating participation metrics

•   Type of reward token

•   Expected distribution timing

Whether and when a Wave will take place is not fixed, and there is no guarantee that a Wave will occur within any particular period.


# Reward

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2Fe1FVwr1ff6zxlyzj3n6d%2F5.jpg?alt=media&amp;token=91e1815e-e5de-4759-9636-a77f5a0f0d2c" alt=""><figcaption></figcaption></figure>

### Reward Funding and Amounts

The reward funding for each Wave is allocated on a Wave-by-Wave basis from resources held by the team.

The sourcing and allocation of reward funding are determined at the team’s discretion and are not linked to any specific revenue source or calculated according to any predetermined percentage.

The type and amount of reward tokens distributed in each Wave may vary and will be determined based on the conditions of the relevant Wave and the operational status of the protocol.

**\*X-DROP is not a program for distributing protocol revenue to participants. Participation in X-DROP does not grant participants any right or entitlement to the revenue, profits, assets, or any equivalent interest of the Unchain X protocol.**

### Reward Distribution

Rewards will be distributed after the end of each Wave in accordance with the method and timing announced for that Wave.

Distribution timing may be adjusted due to network congestion, technical reasons, third-party service disruptions, or similar circumstances. Any such changes will be announced through official channels.


# Custom Liquidity Mining

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2Fugf1c85GSzocU6eX5EhI%2F6.jpg?alt=media&amp;token=1233ba6f-c762-4414-9fb5-3a5b4811299d" alt=""><figcaption></figcaption></figure>

## **Coming Soon**

The detailed structure and participation requirements have not yet been finalized and will be announced separately when made available.

**\*Nothing in this document constitutes a commitment that the program will be introduced in the future or implemented under any particular conditions.**


# Cautions

## 1.   Eligibility and Exclusions

### 1.1 Excluded Jurisdictions and Persons

The following users are excluded from participation in X-DROP and from receiving rewards:

•   Citizens or residents of the United States, or entities organized under the laws of the United States

•   Citizens or residents of countries or regions subject to sanctions designated by the United Nations (UN), the United States, the European Union, or other relevant authorities

•   Users in countries or regions where the acquisition or holding of virtual assets is restricted under applicable laws and regulations

•   Persons listed on sanctions lists (including the SDN List) and their related parties

Users are responsible for confirming that they do not fall within any of the excluded categories above. If the team determines that a user is an excluded person, the team may refuse to distribute rewards or recover rewards that have already been distributed.

### 1.2 Other Excluded Persons

•   Employees and officers of the team, and their related parties

•   Persons involved in the planning, operation, or calculation process of this program

•   Persons who violate applicable laws and regulations or the Unchain X Terms of Use

&#x20;

## 2. Prevention of Abusive Participation

### 2.1 Types of Abusive Participation

The following activities are considered abusive participation:

1\.  Using multiple wallets controlled by the same person to artificially increase participation metrics

2\.  Engaging in wash trading or creating circular liquidity solely for the purpose of influencing reward calculations

3\.  Using automated tools to generate participation metrics in a manner that exceeds normal usage patterns

4\.  Obtaining rewards by exploiting system vulnerabilities or errors

5\.  Any other activity that distorts reward calculations contrary to the purpose of the program

### 2.2 Actions and Objections

If abusive participation is confirmed or reasonably suspected based on objective evidence, the team may take the following actions:

•   Exclude the relevant participation metrics from calculation

•   Withhold or refuse reward distribution

•   Recover rewards that have already been distributed

•   Restrict future participation in X-DROP programs

If the team takes any of the above actions, it will notify the relevant user of the reason. The user may submit an objection within 14 days from the date of notification, and the team will review the objection and provide the result.

&#x20;

## 3. Program Changes and Discontinuation

### 3.1 Grounds for Changes or Discontinuation

The team may modify or discontinue the X-DROP program if any of the following circumstances arise:

1\.  Applicable laws or regulations are enacted or amended, or a government or regulatory authority takes action or issues administrative guidance

2\.  The technical structure or operating method of the protocol changes

3\.  A security incident, system failure, or external attack occurs, or there is a risk of such an event

4\.  Abusive participation becomes widespread to the extent that achieving the purpose of the program becomes difficult

5\.  Any other unavoidable circumstance comparable to those described in Items 1 through 4 above

### 3.2 Procedures for Changes or Discontinuation

•   If the program is modified or discontinued, the team will provide advance notice through official channels.

•   Any change that is unfavorable to users will be announced at least 7 days before its effective date. However, where urgent action is required due to a circumstance described in Items 1 or 3 of Section 5.1, notice may be provided without delay after the action is taken.

•   Rewards that have been finalized and announced for a Wave that has already ended will not be subject to modification or discontinuation.

&#x20;

## 4. Terms of Use and Important Notices

### 4.1 Legal Nature of Rewards

•   X-DROP is an incentive program operated at the team’s discretion to promote activity within the ecosystem.

•   Participants do not have the right to demand or claim the distribution of rewards based on this document or their participation in the program.

•   X-DROP is not an investment product, and reward tokens do not represent any equity interest in, dividend right against, redemption right against, or any comparable right to the revenue, profits, or assets of the protocol.

•   The team does not promise or guarantee any return to participants.

### 4.2 Risk Disclosure

Users participate based on their own judgment and responsibility after acknowledging the following risks:

•   The value of virtual assets may fluctuate, and the value of tokens received as rewards may decrease or become worthless.

•   Providing liquidity involves the risk of loss, including Impermanent Loss.

•   Smart contracts may contain technical defects or security vulnerabilities.

•   The program may be restricted or discontinued due to changes in the regulatory environment.

### 4.3 Taxes

•   Users are responsible for any taxes arising from the receipt or disposition of rewards.

•   Users must independently confirm their reporting and payment obligations under the laws and regulations applicable in their jurisdiction.

•   If withholding or similar obligations arise under applicable laws and regulations, the team may deduct the relevant amount before distribution.

### 4.4 Disclosure of Information

•   Information regarding X-DROP will be disclosed through official channels. Information circulated through channels other than official channels should not be relied upon.

•   The team maintains an internal policy prohibiting trading based on non-public information relating to the program.

### 4.5 Limitation of Liability

The team is not liable for losses incurred by users due to any of the following circumstances:

•   Failure, delay, congestion, or forks of blockchain networks

•   Failure by users to properly manage their wallets, loss of private keys, or entry of an incorrect wallet address

•   Failure or interruption of services provided by third parties

•   Force majeure events, including natural disasters

### 4.6 Nature of This Document

•   This document is provided for informational purposes regarding the program and does not constitute a solicitation of an offer, investment solicitation, or an offer to enter into a contract.

•   Future plans described in this document are not guaranteed to be implemented.

•   The contents of this document may be changed. Please refer to official channels for the latest information.


# RWA MARKET

<figure><img src="https://1536695640-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FY4GJqtTsovFQyPDTuWRY%2Fuploads%2FRQyKXAt1qS6h38R2uXd3%2F21.%20RWA%20Market.png?alt=media&amp;token=beb27049-9e22-452d-8cc3-180f364d753b" alt=""><figcaption></figcaption></figure>

Unchain X RWA Market is supported in the Unchain X 2.0 phase.


# Launchpad

{% content-ref url="/pages/izEmx9RqMuJpzG32QLRr" %}
[ILaunchpad](/developer/launchpad/ilaunchpad)
{% endcontent-ref %}

{% content-ref url="/pages/vha7mZz69g5jYRdD3tjz" %}
[Launchpad](/developer/launchpad/launchpad)
{% endcontent-ref %}

[Launchpad security audit](https://github.com/UNCHAIN-X-Labs/launchpad-staking-contract/blob/main/audit/PeckShield-Audit-Report-UnchainX-v1.0.pdf) (Apr 2024)


# ILaunchpad

*Interface of launchpad staking reward. Basic structs, events and errors to be used in the launchpad contract are defined in this interface.*

### PoolInfo

*The staking pool information. Each token to be staked should be mapped one pool information.*

```solidity
struct PoolInfo {
  uint256 allocation;
  uint256 lastUpdatedBlock;
  uint256 rewardPerTokenStored;
  uint256 totalSupply;
  bool isActive;
}
```

### DepositInfo

*The deposit information. One deposit information should be mapped for each staking pool in which each account has deposited.*

```solidity
struct DepositInfo {
  uint256 amount;
  uint256 userRewardPerTokenPaid;
  uint256 reward;
}
```

### Depositparams

*Parameters required when depositing into a staking pool.*

```solidity
struct Depositparams {
  address token;
  uint256 amount;
  uint8 refundOption;
}
```

### AdjustDepositParams

*Parameters required when adjusting the return option for what has already been deposited in the staking pool.*

```solidity
struct AdjustDepositParams {
  address token;
  uint8 currentOption;
  uint8 replacementOption;
}
```

### PoolInfoResponse

*The response to be returned when requesting staking pool information.*

```solidity
struct PoolInfoResponse {
  uint256 totalSupply;
  uint256 dailyAllocation;
}
```

### DepositInfoResponse

*The response to be returned when requesting deposit information.*

```solidity
struct DepositInfoResponse {
  uint256 amount;
  uint256 rewards;
  uint256 dailyRewards;
  uint8 refundOption;
}
```

### MiningMultiplierParams

*The parameter required when set mining multiplier.*

```solidity
struct MiningMultiplierParams {
  uint8 refundOption;
  uint256 multiplier;
}
```

### PoolConfig

*The parameter required when set pool information.*

```solidity
struct PoolConfig {
  address stakingToken;
  uint256 allocation;
}
```

### ClaimConfig

*The parameter required when set claim schedule.*

```solidity
struct ClaimConfig {
  uint256 countLimit;
  uint256 startBlock;
  uint256 cycle;
}
```

### InitializeParams

*The parameter required when initialize.*

```solidity
struct InitializeParams {
  uint256 miningStartBlock;
  uint256 miningEndBlock;
  uint256 bonusSupply;
  struct ILaunchpadStaking.PoolConfig[] poolList;
  struct ILaunchpadStaking.MiningMultiplierParams[] miningMultipliers;
  struct ILaunchpadStaking.ClaimConfig claimSchedule;
}
```

### CreatePool

```solidity
event CreatePool(address token, uint256 allocation)
```

*This event should be emit when create staking pool.*

#### Parameters

| Name       | Type    | Description                         |
| ---------- | ------- | ----------------------------------- |
| token      | address | The staking token contract address. |
| allocation | uint256 | The allocation of reward per block. |

### Deposit

```solidity
event Deposit(address user, address token, uint8 refundOption, uint256 amount)
```

*This event should be emit when user deposit to staking pool.*

#### Parameters

| Name         | Type    | Description                         |
| ------------ | ------- | ----------------------------------- |
| user         | address | The user's account address.         |
| token        | address | The staking token contract address. |
| refundOption | uint8   | The deposited refund options.       |
| amount       | uint256 | The amount of token for deposit.    |

### Withdraw

```solidity
event Withdraw(address user, address token, uint8 refundOption, uint256 amount)
```

*This event should be emit when user withdraw from staking pool.*

#### Parameters

| Name         | Type    | Description                         |
| ------------ | ------- | ----------------------------------- |
| user         | address | The user's account address.         |
| token        | address | The staking token contract address. |
| refundOption | uint8   | The deposited refund options.       |
| amount       | uint256 | The amount of token for witdraw.    |

### EmergencyWithdraw

```solidity
event EmergencyWithdraw(address user, address token, uint256 amount)
```

*This event should be emit when user emergency withdraw from staking pool.*

#### Parameters

| Name   | Type    | Description                         |
| ------ | ------- | ----------------------------------- |
| user   | address | The user's account address.         |
| token  | address | The staking token contract address. |
| amount | uint256 | The amount of token for withdraw.   |

### Refund

```solidity
event Refund(address user, address token, uint256 amount)
```

*This event should be emit when user refunded from staking pool.*

#### Parameters

| Name   | Type    | Description                         |
| ------ | ------- | ----------------------------------- |
| user   | address | The user's account address.         |
| token  | address | the staking token contract address. |
| amount | uint256 | The amount of token for withdraw.   |

### Claim

```solidity
event Claim(address user, uint256 count, uint256 reward)
```

*This event should be emit when user claim rewards.*

#### Parameters

| Name   | Type    | Description                 |
| ------ | ------- | --------------------------- |
| user   | address | The user's account address. |
| count  | uint256 | The claim count.            |
| reward | uint256 | The amount of reward.       |

### Collect

```solidity
event Collect(address user, address token, uint256 amount)
```

*This event should be emit when transfer token to collector.*

#### Parameters

| Name   | Type    | Description                         |
| ------ | ------- | ----------------------------------- |
| user   | address | The user's account address.         |
| token  | address | The staking token contract address. |
| amount | uint256 | The amount of token for withdraw.   |

### FixRewards

```solidity
event FixRewards(address user, uint256 amount)
```

*This event should be emit when fixed user's total rewards.*

#### Parameters

| Name   | Type    | Description                 |
| ------ | ------- | --------------------------- |
| user   | address | The user's account address. |
| amount | uint256 | Total claimable rewards.    |

### InvalidPeriod

```solidity
error InvalidPeriod(uint256 startBlock, uint256 endBlock)
```

*It was not executed within the valid period.*

#### Parameters

| Name       | Type    | Description                |
| ---------- | ------- | -------------------------- |
| startBlock | uint256 | The starting block number. |
| endBlock   | uint256 | The end block number.      |

### InvalidPool

```solidity
error InvalidPool(address token)
```

*The pool of token does not exist.*

#### Parameters

| Name  | Type    | Description                         |
| ----- | ------- | ----------------------------------- |
| token | address | The staking token contract address. |

### InvalidDepositInfo

```solidity
error InvalidDepositInfo(address user, address token, uint8 refundOption)
```

*The deposit information does not exist.*

#### Parameters

| Name         | Type    | Description                         |
| ------------ | ------- | ----------------------------------- |
| user         | address | The user's account address.         |
| token        | address | The staking token contract address. |
| refundOption | uint8   | The deposited refund option.        |

### InvalidDepositedPool

```solidity
error InvalidDepositedPool(address user, address token)
```

*The deposited pool by token dose not exist.*

#### Parameters

| Name  | Type    | Description                         |
| ----- | ------- | ----------------------------------- |
| user  | address | The user's account address.         |
| token | address | The staking token contract address. |

### OutOfRange

```solidity
error OutOfRange(uint256 first, uint256 last, uint256 input)
```

*The input value is not a valid range value.*

#### Parameters

| Name  | Type    | Description               |
| ----- | ------- | ------------------------- |
| first | uint256 | The first value in range. |
| last  | uint256 | The last value in range.  |
| input | uint256 | The input value.          |

### ClaimUnauthorized

```solidity
error ClaimUnauthorized(address user)
```

*The user is not authorized to claim. To claim reward, the user must first withdraw deposit.*

#### Parameters

| Name | Type    | Description                 |
| ---- | ------- | --------------------------- |
| user | address | The user's account address. |

### NotYetStarted

```solidity
error NotYetStarted(uint256 startingPoint)
```

*The starting block number has not yet been reached.*

#### Parameters

| Name          | Type    | Description                |
| ------------- | ------- | -------------------------- |
| startingPoint | uint256 | The starting block number. |

### NotExistRewardOf

```solidity
error NotExistRewardOf(address user)
```

*The user's reward does not exist.*

#### Parameters

| Name | Type    | Description                 |
| ---- | ------- | --------------------------- |
| user | address | The user's account address. |

### OverTheLimit

```solidity
error OverTheLimit(uint256 limit, uint256 required)
```

*The required value is exceeds the limit value.*

#### Parameters

| Name     | Type    | Description         |
| -------- | ------- | ------------------- |
| limit    | uint256 | The limit value.    |
| required | uint256 | The required value. |

### OverTheDeadline

```solidity
error OverTheDeadline(uint256 deadline)
```

*Over the deadline. No more execute the function.*

#### Parameters

| Name     | Type    | Description                    |
| -------- | ------- | ------------------------------ |
| deadline | uint256 | The block number for deadline. |

### BelowStandard

```solidity
error BelowStandard(uint256 standard, uint256 required)
```

*The required value is below the standard value.*

#### Parameters

| Name     | Type    | Description         |
| -------- | ------- | ------------------- |
| standard | uint256 | The standard value. |
| required | uint256 | The required value. |

### ERC20TransferFailure

```solidity
error ERC20TransferFailure(address to, address from, address token, uint256 amount)
```

*The ERC20 token transfer is failed.*

#### Parameters

| Name   | Type    | Description                              |
| ------ | ------- | ---------------------------------------- |
| to     | address | The address of receiver.                 |
| from   | address | The address of sender.                   |
| token  | address | The token contract address for transfer. |
| amount | uint256 | The amount for transfer.                 |

### ETHTransferFailure

```solidity
error ETHTransferFailure(address to, address from, uint256 amount)
```

*The Native token transfer is failed.*

#### Parameters

| Name   | Type    | Description              |
| ------ | ------- | ------------------------ |
| to     | address | The address of receiver. |
| from   | address | The address of sender.   |
| amount | uint256 | The amount for transfer. |


# Launchpad

This staking reward contract follows a typical staking reward system but has a unique feature called the refund option. The refund option is a selectable value for the percentage of the deposit to be refunded after the staking period ends. Setting the refund option lower allows users to receive additional bonus rewards in addition to the rewards allocated to the staking pool. The refund option for an already deposited contract can only be changed to a lower percentage. Claiming rewards can be done after users withdraw their deposits following the end of the staking period, and rewards can be received divided into a total of 10 cycles, each defined cycle.

User's Withdrawal status.

### updateReward

```solidity
modifier updateReward(address stakingToken, uint8 refundOption)
```

*The modifier to run when executing deposit and withdraw functions. It must be run whenever the staking pool's deposit information changes.*

#### Parameters

| Name         | Type    | Description                   |
| ------------ | ------- | ----------------------------- |
| stakingToken | address | The address of staking token. |
| refundOption | uint8   | The refund option for update. |

### checkActive

```solidity
modifier checkActive(address stakingToken)
```

*Checking staking pool is active.*

#### Parameters

| Name         | Type    | Description                   |
| ------------ | ------- | ----------------------------- |
| stakingToken | address | The address of staking token. |

### constructor

```solidity
constructor(address rewardToken_, address collector_) public
```

### deposit

```solidity
function deposit(struct ILaunchpadStaking.Depositparams params) external payable returns (uint256)
```

*Deposit to staking pool.*

#### Parameters

| Name   | Type                                   | Description             |
| ------ | -------------------------------------- | ----------------------- |
| params | struct ILaunchpadStaking.Depositparams | Parameters for deposit. |

#### Return Values

| Name | Type    | Description        |
| ---- | ------- | ------------------ |
| \[0] | uint256 | acculated deposit. |

### adjustDeposit

```solidity
function adjustDeposit(struct ILaunchpadStaking.AdjustDepositParams params) external returns (uint256)
```

*Adjust return options on user's deposit info. It must adjust refund option to downward.*

#### Parameters

| Name   | Type                                         | Description                    |
| ------ | -------------------------------------------- | ------------------------------ |
| params | struct ILaunchpadStaking.AdjustDepositParams | Parameters for adjust deposit. |

#### Return Values

| Name | Type    | Description        |
| ---- | ------- | ------------------ |
| \[0] | uint256 | acculated deposit. |

### withdrawRefund

```solidity
function withdrawRefund(address stakingToken) external returns (uint256 refund, uint256 rewards)
```

*Withdraw from all refund options of specific staking token pool when claimable.*

#### Parameters

| Name         | Type    | Description                 |
| ------------ | ------- | --------------------------- |
| stakingToken | address | Token address for withdraw. |

### emergencyWithdrawRefund

```solidity
function emergencyWithdrawRefund(address account, address stakingToken) external returns (uint256 refund)
```

*Emergency withdraw from all refund options of specific staking pool deposited by account. should be execute when paused.*

#### Parameters

| Name         | Type    | Description                 |
| ------------ | ------- | --------------------------- |
| account      | address | Depositor address.          |
| stakingToken | address | Token address for withdraw. |

#### Return Values

| Name   | Type    | Description       |
| ------ | ------- | ----------------- |
| refund | uint256 | Amount of refund. |

### withdrawReward

```solidity
function withdrawReward(address to, uint256 amount) external
```

*Withdraw reward token by owner.*

#### Parameters

| Name   | Type    | Description              |
| ------ | ------- | ------------------------ |
| to     | address | The address of receiver. |
| amount | uint256 |                          |

### emergenctWithdrawReward

```solidity
function emergenctWithdrawReward(address to) external
```

*Emergency withdraw reward token by owner. Should be execute when paused.*

#### Parameters

| Name | Type    | Description              |
| ---- | ------- | ------------------------ |
| to   | address | The address of receiver. |

### claim

```solidity
function claim() external returns (uint256 rewards)
```

*Claim rewards. Should be execute after {withdrawRefund}.*

#### Return Values

| Name    | Type    | Description        |
| ------- | ------- | ------------------ |
| rewards | uint256 | claimable rewards. |

### initialize

```solidity
function initialize(struct ILaunchpadStaking.InitializeParams params) external
```

*Initialize configuration for mining protocol.*

#### Parameters

| Name   | Type                                      | Description        |
| ------ | ----------------------------------------- | ------------------ |
| params | struct ILaunchpadStaking.InitializeParams | {InitializeParams} |

### pause

```solidity
function pause() external
```

*Pause mining protocol*

### unpause

```solidity
function unpause() external
```

*Unpause mining protocol*

### setPool

```solidity
function setPool(struct ILaunchpadStaking.PoolConfig params) public
```

*Set staking pool. Only execute before start mining.*

#### Parameters

| Name   | Type                                | Description  |
| ------ | ----------------------------------- | ------------ |
| params | struct ILaunchpadStaking.PoolConfig | {PoolConfig} |

### setBonusRewardSupply

```solidity
function setBonusRewardSupply(uint256 amount) public
```

*Set {bonusRewardSupply}.*

#### Parameters

| Name   | Type    | Description                    |
| ------ | ------- | ------------------------------ |
| amount | uint256 | Amount of bonus reward supply. |

### setMiningPeriod

```solidity
function setMiningPeriod(uint256 startBlock, uint256 endBlock) public
```

*Set staking period.*

#### Parameters

| Name       | Type    | Description              |
| ---------- | ------- | ------------------------ |
| startBlock | uint256 | The staking start block. |
| endBlock   | uint256 | The staking end block.   |

### setClaimSchedule

```solidity
function setClaimSchedule(struct ILaunchpadStaking.ClaimConfig params) public
```

### setBonusMiningMultiplier

```solidity
function setBonusMiningMultiplier(struct ILaunchpadStaking.MiningMultiplierParams params) public
```

*Set {bonusMiningMultipliers}.*

#### Parameters

| Name   | Type                                            | Description                                                                                                                                 |
| ------ | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| params | struct ILaunchpadStaking.MiningMultiplierParams | {MiningMultiplierParams}. refundOption: Refund option. multiplier: Bonus mining multiplier. If mining power is 100.0 %, multiplier is 1000. |

### setBonusMiningMultiplierBatch

```solidity
function setBonusMiningMultiplierBatch(struct ILaunchpadStaking.MiningMultiplierParams[] params) public
```

*Set batch {bonusMiningMultipliers}.*

#### Parameters

| Name   | Type                                               | Description                                                                        |
| ------ | -------------------------------------------------- | ---------------------------------------------------------------------------------- |
| params | struct ILaunchpadStaking.MiningMultiplierParams\[] | Batch of bonus mining multipliers. If mining power is 100.0 %, multiplier is 1000. |

### earned

```solidity
function earned(address account, address stakingToken, uint8 refundOption) public view returns (uint256)
```

*Return user's rewards for a specific refund option in the staking pool.*

#### Parameters

| Name         | Type    | Description             |
| ------------ | ------- | ----------------------- |
| account      | address | User's account address. |
| stakingToken | address | Staking token address.  |
| refundOption | uint8   | Refund option.          |

### earnedForAllOptions

```solidity
function earnedForAllOptions(address account, address stakingToken) public view returns (uint256 rewards)
```

*Return user's rewards for all refund options in the staking pool.*

#### Parameters

| Name         | Type    | Description             |
| ------------ | ------- | ----------------------- |
| account      | address | User's account address. |
| stakingToken | address | Staking token address.  |

### lastBlockRewardApplicable

```solidity
function lastBlockRewardApplicable() public view returns (uint256)
```

*If current block number greater than or equal to {stakingEndBlock}, return {stakingEndBlock}. Else return current block number.*

### rewardPerToken

```solidity
function rewardPerToken(address stakingToken) public view returns (uint256)
```

*Return reward per token deposited pool.*

#### Parameters

| Name         | Type    | Description            |
| ------------ | ------- | ---------------------- |
| stakingToken | address | Staking token address. |

### totalMiningRewards

```solidity
function totalMiningRewards() public view returns (uint256)
```

*Return total mining rewards.*

#### Return Values

| Name | Type    | Description                              |
| ---- | ------- | ---------------------------------------- |
| \[0] | uint256 | totalMiningRewards total minting reward. |

### poolInfoListByTokens

```solidity
function poolInfoListByTokens(address[] tokens) public view returns (struct ILaunchpadStaking.PoolInfoResponse[])
```

*Return poolInfo list.*

#### Parameters

| Name   | Type       | Description                                        |
| ------ | ---------- | -------------------------------------------------- |
| tokens | address\[] | Array of token address getting {PoolInfoResponse}. |

### depositedPoolsByAccount

```solidity
function depositedPoolsByAccount(address account) public view returns (address[])
```

Return user's deposited pools.

#### Parameters

| Name    | Type    | Description     |
| ------- | ------- | --------------- |
| account | address | User's account. |

### depositInfoListByToken

```solidity
function depositInfoListByToken(address account, address token) public view returns (struct ILaunchpadStaking.DepositInfoResponse[])
```

Return user's deposited pool info for a specific refund option.

#### Parameters

| Name    | Type    | Description            |
| ------- | ------- | ---------------------- |
| account | address | User's account.        |
| token   | address | Staking token address. |

### calculateRefund

```solidity
function calculateRefund(uint8 refundOption, uint256 amount) public pure returns (uint256 refund)
```

*Return refund.*

#### Parameters

| Name         | Type    | Description     |
| ------------ | ------- | --------------- |
| refundOption | uint8   | Refund option.  |
| amount       | uint256 | Deposit amount. |

#### Return Values

| Name   | Type    | Description                        |
| ------ | ------- | ---------------------------------- |
| refund | uint256 | Refund calculated by returnOption. |

### \_transferERC20

```solidity
function _transferERC20(address to, address token, uint256 amount) internal
```

Call transfer() function to ERC20 Contract.

#### Parameters

| Name   | Type    | Description                 |
| ------ | ------- | --------------------------- |
| to     | address | Receiver address.           |
| token  | address | Token address for transfer. |
| amount | uint256 | Amount for transfer.        |

### \_transferFromERC20

```solidity
function _transferFromERC20(address from, address to, address token, uint256 amount) internal
```

Call transferFrom() function to ERC20 Contract.

#### Parameters

| Name   | Type    | Description                 |
| ------ | ------- | --------------------------- |
| from   | address | Sender address.             |
| to     | address | Receiver address.           |
| token  | address | Token address for transfer. |
| amount | uint256 | Amount for transfer.        |

### \_transferETH

```solidity
function _transferETH(address to, uint256 amount) internal
```

Call send ETH.

#### Parameters

| Name   | Type    | Description          |
| ------ | ------- | -------------------- |
| to     | address | Receiver address.    |
| amount | uint256 | Amount for tranfser. |

### \_withdrawRefund

```solidity
function _withdrawRefund(address account, address stakingToken) internal returns (uint256 refund)
```

*Withdraw token to account.*

#### Parameters

| Name         | Type    | Description                 |
| ------------ | ------- | --------------------------- |
| account      | address | Receiver address.           |
| stakingToken | address | Token address for transfer. |

### \_updateReward

```solidity
function _updateReward(address account, address stakingToken, uint8 refundOption) internal
```

*Update information related to reward.*

#### Parameters

| Name         | Type    | Description                |
| ------------ | ------- | -------------------------- |
| account      | address | User's address for update. |
| stakingToken | address | Token address for update.  |
| refundOption | uint8   | Refund option for update.  |

### \_verifyDeadline

```solidity
function _verifyDeadline(uint256 target, uint256 deadline) internal pure
```

### rewardToken

```solidity
address rewardToken
```

The reward token address.

### collector

```solidity
address collector
```

The address for collect non-refund amount.

### totalAllocationPerBlock

```solidity
uint256 totalAllocationPerBlock
```

The reward allocation per block for all pool.

### bonusRewardSupply

```solidity
uint256 bonusRewardSupply
```

Total bonus rewards for refund option.

### stakingStartBlock

```solidity
uint256 stakingStartBlock
```

The Staking start block number.

### stakingEndBlock

```solidity
uint256 stakingEndBlock
```

The Staking end block number.

### claimLimit

```solidity
uint256 claimLimit
```

The claim limit.

### pools

```solidity
mapping(address => struct ILaunchpadStaking.PoolInfo) pools
```

Pool token address => Pool Info.

### refundOf

```solidity
mapping(address => mapping(address => uint256)) refundOf
```

User's refund by staking token (user address => staking token => refund).

### bonusMiningMultipliers

```solidity
mapping(uint8 => uint256) bonusMiningMultipliers
```

Bonus mining multipliers each refundOption.

### depositInfo

```solidity
mapping(address => mapping(address => mapping(uint8 => struct ILaunchpadStaking.DepositInfo))) depositInfo
```

Deposit info by account, staking token address, refund option.

### count

```solidity
mapping(address => uint256) count
```

User's claim count(account => count).

### claimableBlock

```solidity
mapping(uint256 => uint256) claimableBlock
```

Block number per count(count => block number).

### totalUserRewards

```solidity
mapping(address => uint256) totalUserRewards
```

User's total reward amount(account => amount).

### claimable

```solidity
mapping(address => bool) claimable
```

User's claimable status.

### isWithdrawn

```solidity
mapping(address => mapping(address => bool)) isWithdrawn
```


