# What is $BUT and deBUT

### Overview

* **$BUT** — [The native protocol token of Bucket](https://suivision.xyz/coin/0xbc858cb910b9914bee64fff0f9b38855355a040c49155a17b265d9086d256545::but::BUT).
* **deBUT** — a **non-transferable weighting** tied to your **staked BUT**.
  * Think “**staking power**”: **deBUT weighting determines the strength of your future utilities and rewards.**
  * **Fully staked:** `1 BUT → 1 deBUT` (weight **1:1**).
  * Starting an **unstake** introduces a **unstake period** and a **penalty** (details below).

***

### Unstake mechanics

When you start **unstaking**, you choose an **unstake period `T`** between **30 and 365 days**. Your **final BUT received** at completion depends on `T`:

* At **T = 30 days**, you receive **30%** back (**70% penalty**).
* At **T = 365 days**, you receive **100%** back (**0% penalty**).
* For unstake period in between, the **penalty decreases linearly** from **70% → 0%**.

#### Penalty formula

Let `T` be the chosen unstake period in **days** (30 ≤ T ≤ 365).&#x20;

Then \
penalty\_ratio  = 0.70 × ( 1 − (T − 30) / 335 )

received\_ratio = 1 − penalty\_ratio

* Checks:
  * `T = 30` → `penalty = 70%`, `received = 30%`
  * `T = 365` → `penalty = 0%`, `received = 100%`

<figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FzmSWMIYiCojtUoNnVbEg%2Fimage.png?alt=media&#x26;token=d7ed22df-1ac3-4aa5-901d-96462952831d" alt="" width="375"><figcaption></figcaption></figure>

***

### deBUT weight during the unstake countdown

While an amount `U` of your staked BUT is in the **unstake period**, the **weight of that portion** is counted at **50%** until the countdown completes or is cancelled.

* Let `S_total` be your staked BUT before requesting to unstake.
* **Effective deBUT weight during the countdown**: deBUT\_weight = (S\_total − U) × 1.0 + U × 0.5
* **Cancel Unstake:** restores **1:1** weight instantly.
* At completion, settlement follows the **received/penalty** ratios from the formula above.

**Example (all 100 BUT unstaked for 30 days):**

* During the 30-day countdown: **deBUT weight = 100 × 0.5 = 50**.
* At completion (T = 30): `received_ratio = 0.30` → you **claim 30 BUT**; **70 BUT** goes to the **penalty pool**.
* If you **cancel** before completion: stake returns to **100 BUT** and **deBUT weight = 100** (1:1).

> **Important:** After the chosen unstake period **completes**, the request **cannot be cancelled**.

***

### Penalty pool & distributions

* **Penalty destination:** BUT deducted by penalty accumulates in a **penalty pool**.
* **Future distribution:** The pool is intended to be **distributed to deBUT holders**.
  * Details, cadence, and methodology: **To be announced**.

***

### How to stake BUT (Step-by-step)

All actions are available on the [**BUT page**](https://www.bucketprotocol.io/but).

1. Open the **BUT** page → Check **Stake tab**.<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FZc9lm7BDHOVjYJicd2It%2FCleanShot%202025-09-15%20at%2001.10.38%402x.png?alt=media&#x26;token=e4c0da65-3d39-4612-8da7-13e5a1bff107" alt="" width="375"><figcaption></figcaption></figure>
2. Enter the **BUT amount** to stake and **check the preview**.<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FxoUvOXQWyIR6Idr9hLs8%2FCleanShot%202025-09-15%20at%2001.12.31%402x.png?alt=media&#x26;token=057154d0-cf67-46ce-8bb0-1e4789284400" alt="" width="375"><figcaption></figcaption></figure>
3. **Confirm(Stake)**.<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FVirNEJf4QdopieDvkVIL%2FCleanShot%202025-09-15%20at%2001.12.58%402x.png?alt=media&#x26;token=4aa074cf-e103-4c5e-a860-656265ded653" alt="" width="375"><figcaption></figcaption></figure>

***

### How to unstake BUT (Step-by-step)

1. On the [**BUT** page](https://www.bucketprotocol.io/but) → Check **Unstake tab.**<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FTp7rV67IqS3zpJ9GNr67%2FCleanShot%202025-09-15%20at%2001.14.45%402x.png?alt=media&#x26;token=650dbe80-04d3-42b1-a33f-f75e0d6241ab" alt="" width="375"><figcaption></figcaption></figure>
2. Input Unstaking amount and choose an **unstake period `T`** between **30–365 days**.<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FsHDbfpvcDTNTjFseT1Ye%2FCleanShot%202025-09-15%20at%2001.19.06%402x.png?alt=media&#x26;token=0601e2a6-2d16-4b19-92d9-0362f2374af5" alt="" width="375"><figcaption></figcaption></figure>
3. The preview shows:
   * **deBUT weight during countdown**
   * **penalty\_ratio** (expected penalty)<br>

     <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2F44edK6RjrwzVkGg18k3j%2FCleanShot%202025-09-15%20at%2001.19.29%402x.png?alt=media&#x26;token=35ee05b1-5ff2-4d2b-9f41-433b8e04f8fe" alt="" width="375"><figcaption></figcaption></figure>
4. **Confirm** to start the countdown.<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FxsSJMWiogU5AG4RaWZYY%2FCleanShot%202025-09-15%20at%2001.21.03%402x.png?alt=media&#x26;token=a90d7104-ce8e-4ff2-9f3e-9cb27d002f16" alt="" width="375"><figcaption></figcaption></figure>

***

#### Cancel Unstake

1. Check Unstaking requests on BUT page.<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2Fnd4YZC0rVAAtGcU3171a%2FCleanShot%202025-09-15%20at%2001.22.23%402x.png?alt=media&#x26;token=95127b67-233a-4ad0-81bd-6423e2a9532e" alt="" width="375"><figcaption></figcaption></figure>
2. While the countdown is active, click **Cancel Unstake**.<br>

   <figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FT0dARc998sQvPQkyG361%2FCleanShot%202025-09-15%20at%2001.23.14%402x.png?alt=media&#x26;token=65645360-75f2-485a-a464-2603dd45ffdd" alt="" width="375"><figcaption></figcaption></figure>
3. Your stake returns to **fully staked** and **deBUT = 1:1** immediately.

<figure><img src="https://2164669523-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvo4y92EukVo5jeASAueL%2Fuploads%2FaRWiBMCBOlBZmmQ0nvZz%2FCleanShot%202025-09-15%20at%2001.23.51%402x.png?alt=media&#x26;token=04c2ae6f-f944-49f5-aee8-8151f5794238" alt="" width="375"><figcaption></figcaption></figure>

> **Note:** After the selected period completes, **cancel is unavailable**.

***

### Examples

**Example A — 30-day Unstake**

* `T = 30` → `received_ratio = 0.30` → you **claim 30%**; **70%** goes to the **penalty pool**.
* During the countdown, the unstaking portion counts at **50% deBUT weight**.

**Example B — 180-day Unstake**

* `T = 180` →\
  `penalty_ratio = 0.70 × (1 − (180 − 30)/335) ≈ 0.3955`\
  `received_ratio ≈ 0.6045` → claim **\~60.45%** at completion.
* During the countdown, that portion’s **deBUT weight = 50%**.

**Example C — 365-day Unstake**

* `T = 365` → `received_ratio = 1.00` (no penalty).
* No penalty; the portion still counts as **50% deBUT weight** **only** if it is in an active countdown (i.e., until completion or cancellation).
