> For the complete documentation index, see [llms.txt](https://yupana-finance.gitbook.io/yupana-document-portal/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://yupana-finance.gitbook.io/yupana-document-portal/developer-space/ytoken-contract-methods/admin-methods/setup-entrypionts/setuseaction.md).

# setUseAction

This entrypoint sets main landing method lambda bytes to storage.

Each function packed to bytes and setted to corresponding index

Indexes of functions:

```pascaligo
mint             -> 0n
redeem           -> 1n
borrow           -> 2n
repay            -> 3n
liquidate        -> 4n
enterMarket      -> 5n
exitMarket       -> 6n
// Admin methods here
setAdmin         -> 7n 
withdrawReserve  -> 8n
setTokenFactors  -> 9n
setGlobalFactors -> 10n
setBorrowPause   -> 11n
```

Lambdas could be found on git [here](https://github.com/madfish-solutions/yupana-protocol-core/contracts/partial/yToken/lendingMethods.ligo) and [here (admin part)](https://github.com/madfish-solutions/yupana-protocol-core/contracts/partial/yToken/adminMethods.ligo).

### Usage

{% tabs %}
{% tab title="🌮   Taquito" %}

```typescript
const yupana = await tezos.contract.at(yTokenAddress);
const operation = await yupana.methods.setUseAction(index, bytes).send();
await operation.confirmation();
```

{% endtab %}

{% tab title="🐍   Pytezos" %}

```python
yupana = ContractInterface.from_michelson(code) # or client.contract(contract_address)...
call = yupana.setUseAction(index, bytes)
opg = call.inject()
```

{% endtab %}
{% endtabs %}

### Errors

* `yToken/use-lambda-already-set` - lambda with passed index is already set.
* `yToken/you-not-admin` - `sender` is not contract admin.
