# KUMA Bond Clone Tokens (KBCT)

When the central bank rate drops lower than the current `KIBToken` yield, Clone Bonds lower the coupon of bonds that were bought by users from the `KUMASwap` contract. This ensures that at any point in time there are enough KIBTokens in circulation to buy all the bonds from the `KUMASwap` reserve.

The lowest paying yield corresponds to the lowest yield between the central bank rate and the lowest coupon in the `KUMASwap` reserve. The `KIBToken` yield always corresponds to the lowest paying yield.

To understand why `KIBTSupply` might be a problem without clone NFTs, consider the case where the `KUMASwap` contract holds 2 different one year bonds $1,000 bonds - one with a 3% coupon and one with a 5% coupon. If we also assume the central bank rate is higher than either bond coupon, the KIBT yield will be that of the lowest bond in the swap contract (in this case 3%). Since the 5% bond appreciates more quickly than the `KIBT` total supply, there won't be enough `KIBT` for users to buy both bonds from the `KUMASwap`. Clone NFTs fix this through lowering the reward coupons of the bond so that they can be redeemed by the circulating KIBT supply. In this case, a Clone NFT would be issued for the 5% bond so that it can be redeemed as a 3% bond.

A clone bond is always paired with a parent bond from the reserve and will have a lower coupon overriding its parent coupon when the bond is valued. For each clone bond present, the parent bond cannot be redeemed by a user and can only be redeemed by the MCAG multisig when the clone bond has been redeemed by MCAG. KBCT contain the following metadata:

```json
struct CloneBond {
   uint256 parentId; - The parentId of the `CloneBond`'s parent bond
   uint256 issuance; - The timestamp of the time the clone bond was issued (different than that of the parent bond's issuance)
   uint256 coupon; - The coupon of the `CloneBond`
   uint256 principal; - The principal of the `CloneBond`; equal to the realizedValue of the parent bond on the `CloneBond`'s issuance
}
```

KBCT can only be issued by the `KUMASwap` in the `buyBond` function.

Clone bond coupons are only created if the bond's face value is greater than that of the amount of `KIBT` the bond has backed in the `KUMASwap` contract. This happens when the central bank bond rate for a given risk category decreases past the minimum coupon held by the `KUMASwap` contract.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kuma.bond/kuma-protocol/developers/smart-contract-architecture/kuma-bond-clone-tokens-kbct.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
