# LpWallet (v2)

This is a standard Jetton token wallet for holding liquidity tokens. Only specific modifications for this implementation will be described.

## User message handlers

### `burn` (0x595f07bc)

Burn an amount of liquidity tokens.

#### **TL-B**

```
burn#595f07bc query_id:uint64 amount:Grams response_destination:MsgAddress custom_payload:Maybe ^Cell = InternalMsgBody;
```

#### **Message body**

| Name                   | Type        | Description                                    |
| ---------------------- | ----------- | ---------------------------------------------- |
| `op`                   | `uint32`    | Operation code is equal to `burn`              |
| `query_id`             | `uint64`    | Query id                                       |
| `amount`               | `coins`     | Amount of coins to burn (in basic token units) |
| `response_destination` | `address`   | Address of a user                              |
| `custom_payloads`      | `maybe_ref` | Payloads for token0 and token1                 |

#### **custom\_payloads**

| Name        | Type        | Description                                     |
| ----------- | ----------- | ----------------------------------------------- |
| `payload_0` | `maybe_ref` | Payload used for `amount0`; can be `cross_swap` |
| `payload_1` | `maybe_ref` | Payload used for `amount1`; can be `cross_swap` |

#### **Outgoing messages**

Sends a message with `burn_notification_ext` op code to the router contract with the amount of token burnt.
