# DBXen functionalities

### Basics

The $DXN token is the reward token distributed to those who use the DBXen. $DXN distribution is divided into one day long cycles - the first cycle reward pool being 10,000 $DXN tokens.

A new reward distribution cycle starts after 24 hours have passed since the previous cycle and at least one XEN burn is completed - this means that gap cycles can exist that do not contain any new $XEN burns, respectively do not distribute/unlock rewards. In this case, in the eventuality that multiple consecutive gap cycles pass, the distribution will resume with the reward amount that should have normally followed once a burn is made.

The reward pool decreases by \~0.2% per cycle, which means that after roughly 62 years of constant protocol usage the entire supply of \~5,01 mil. $DXN tokens will be unlocked. $DXN tokens staked inside the protocol by users accumulate native token fees that are accrued every time a new $XEN burn is made.

<figure><img src="https://610088869-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM2BPXQqPlT27GLb7lD96%2Fuploads%2FW6fthkmdHmq3XFbZpkqK%2FFoiSni6XEAMl52o.jpeg?alt=media&#x26;token=9a0bdf7e-8b51-4820-bbf4-55c8fbdbac96" alt=""><figcaption></figcaption></figure>

### Costs of Burning $XEN

In order to burn $XEN, the users pay the transaction gas fee and an additional mandatory Protocol fee, defined below:

$$
Protocol fee = Gas Spent * (1 - 0.00005 * Number Of Batches) * Number Of Batches
$$

{% hint style="info" %}
The batch has a fixed number of $XEN tokens to burn.&#x20;

For example on Polygon 1 batch = 2.500.000 $XEN tokens.&#x20;

In this case the user must have at least Number Of Batches \* 2.500.000 $XEN tokens in wallet to execute the burn function.&#x20;
{% endhint %}

The amount corresponding to Protocol fee goes towards the reward pool out of which $DXN token holders are being rewarded based on their accrued $DXN.

{% hint style="success" %}
The calculation for Protocol Fee is built to apply an additional discount based on how much $XEN the user burns. The max discount is 50% for 10000 batches (bigger the number of batches, bigger the discount).
{% endhint %}

$$
PF = GS*(1-0.00005*NB)*NB
$$

In plain words, the Protocol fee calculation used to calculate the fees charged from a user when they perform burn operation on DBXen Protocol is determined by multiplying the amount of gas spent on the operation by a factor that takes into account the number of batches being burned in the operation.

This factor is calculated by first taking the number of batches that a user burns, multiply it by 0.00005 and subtract all this from value 1. The result is then afterwards multiplied by the number of batches.

The calculation is built to encourage users to perform larger, more efficient burn operations through gradually charging them lower fees as they increase to a larger number of batches being burned.

where :

* PF - metric that represents the fee charged for burn function. PF is paid in the native token of the blockchain.
* GS - stands for the total amount of gas consumed by burn function in order to execute the code.
* NB - refers to the number of batches the user burns. This is a coefficient that directly influences the discount in protocol fees as the number of batches increases.
* The 0.00005 constant is used to factor in the discount on protocol fee.

| Blockchain      | Cost of $XEN / BATCH | MAX BATCH NUMBER |
| --------------- | -------------------- | ---------------- |
| All Blockchains | 2.500.000 $XEN       | 10000            |

### $DXN cycle reward distribution

**Definition:** The formula "User Reward/Cycle" is used to calculate the rewards percentage that a specific user is entitled to receive for their contribution to a burn cycle.

It is determined by multiplying the total cycle reward amount by the number of batches that the user has burned (contributed) in that specific cycle. All of this is then divided by the total number of batches that have been burned in that cycle by all users.

The calculation proportionately and fairly distributes the rewards to all participants, based on the work/burn that each user has contributed.

$$
URC= TCR * \ UBN / TBN
$$

where:

* URC - stands for User Reward/Cycle. This variable represents the reward earned by a specific user in a particular cycle.
* TCR - The total amount of rewards that are distributed among all users in a particular cycle.
* UBN - The total number of batches that a specific user has burned (or destroyed) tokens during the cycle.
* TBN - The total number of batches that have been burned by all users during the cycle.

The calculation of $DXN rewards is based on the gas consumed from burning $XEN. In other words, this is the equivalent of how computationally expensive the execution of the transaction is.

After the cycle ends, the reward calculated per user for a specific cycle is given by the total amount of gas consumed divided by the amount of gas consumed by a specific user. The rewards are claimable only after the corresponding cycle ends.

### Native token fee distribution

Each cycle will have its own pool of accrued native token fees that accumulate while burnBatch transactions are executed.&#x20;

Per cycle, these are distributed based on how many locked $DXN tokens a user has inside the protocol (locked - unclaimed $DXN + staked $DXN) added with how many DXN tokens were gained from burning $XEN in the corresponding cycle.&#x20;

As a practical example, if only user A sends burns $XEN in the first cycle, it will receive all the native token rewards.&#x20;

However, if then only user B burns $XEN in the second cycle, granted user A does not claim its rewards, the native token fees distribution for cycle 2 is calculated as follows: user A has 10,000 $DXN tokens locked during cycle 2; user B gained all of the 9,980 $DXN rewards from cycle 2 -> user A receives 10,000/19,980 in fees and user B gains 9,980/19,980 fees - the amount “19,980” is the total $DXN unlocked up to cycle 2 (in our case 10,000) + the $DXN amount that will unlock after cycle 2 (in our case 9,980).

### Claiming rewards ($DXN)

Once a cycle ends, the rewards associated with it are ready to be claimed. A user claiming its rewards will be granted the entire amount of $DXN tokens earned in all previous cycles.

As a result of this, these tokens no longer generate native token fees for the user, including the cycle within which they were removed. In order to start gaining fees again, one must stake its tokens to do so.

### Claiming native token fees (native token of blockchain)

As in the case of claiming rewards, a user wishing to claim its accumulated fees will withdraw all the native tokens obtained beforehand.

### Staking $DXN tokens

The unclaimed $DXN tokens are considered as staked within the protocol. This means the process of claim-> approve -> stake is somewhat redundant.&#x20;

Claimed or unstaked $DXN needs to be staked back into the protocol in order to generate the respective rewards.&#x20;

Unclaimed+Staked $DXN will generate passive income in blockchain native token based on the share from the reward pool entitled to each respective user. The reward pool amount is based on the smart contract balance in which the protocol fees are collected.

As soon as you stake $DXN, the tokens will be locked during the whole cycle that follows (irrespective of whether the cycle is a gap cycle or not) while also starting to generate fees, given $XEN is burned.

&#x20;Once that cycle ends, these tokens can be unstaked, returning them to the user. However, if the $DXN is staked before the first $XEN burn of the cycle, they can only start to generate fees beginning within the current cycle if at least one more $XEN burn happens. They can afterwards be unstaked at the end of the cycle, should the user choose to do so.

### Unstaking $DXN tokens

The staked $DXN tokens that have reached the cycle in which they are unlocked, as explained previously, can be unstaked, ending up back into the possession of their owner.

\
