> For the complete documentation index, see [llms.txt](https://docs.quipuswap.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.quipuswap.com/smart-contracts/dex-2.0/dexcore-contract/entrypoints-overview/callbacks/launch_callback.md).

# launch\_callback

An additional entrypoint that helps to [vote](/smart-contracts/dex-2.0/bucket-contract/entrypoints-overview/vote.md) in [Bucket](/smart-contracts/dex-2.0/bucket-contract.md) contract for a user's baker in time of the first TOK/TEZ exchange launch.

### Call parameters

```pascaligo
type vote_t             is [@layout:comb] record [
  voter                   : address;
  candidate               : key_hash;
  execute_voting          : bool;
  votes                   : nat;
]

type launch_callback_t  is [@layout:comb] record [
  vote_params             : vote_t;
  bucket                  : address;
]
```

#### vote\_t

<table><thead><tr><th width="150">Field</th><th width="150">Type</th><th>Description</th></tr></thead><tbody><tr><td>voter</td><td>address</td><td>A user who votes</td></tr><tr><td>candidate</td><td>key_hash</td><td>Baker the user votes for</td></tr><tr><td>execute_voting</td><td>bool</td><td>Flag that indicates: execute voting or not</td></tr><tr><td>votes</td><td>nat</td><td>Amount of votes that will be used for voting</td></tr></tbody></table>

#### launch\_callback\_t

| Field        | Type               | Description                                                                                         |
| ------------ | ------------------ | --------------------------------------------------------------------------------------------------- |
| vote\_params | [vote\_t](#vote_t) | Voting parameters                                                                                   |
| bucket       | address            | [Bucket](/smart-contracts/dex-2.0/bucket-contract.md) contract address where need to execute voting |

### Usage

Only [DexCore](/smart-contracts/dex-2.0/dexcore-contract.md) contract can call this entrypoint.

### Errors

* `138` - only entered (transaction must be not the first transaction in the chain of calls).
* `403` - `sender` of the transaction is not [DexCore](/smart-contracts/dex-2.0/dexcore-contract.md) contract.
* `412` - non payable entrypoint (can't accept TEZ tokens during call of an entrypoint).
