# Locking APW for veAPW

## What is veAPW

As mentionned in [Spectra General Documentation](https://docs.spectra.finance/tokenomics/veapw-token), Vote-escrowed APW (veAPW) is based on Curve's Vote-Escrowed CRV (veCRV) and serves as a vault where users can lock their APW for up to 2 years in order to gain voting power and participate in Spectra DAO governance.

#### veAPW gives users access to:

* Proposal voting power (participation in the protocol decisions - 1 veAPW = 104 votes)
* Gauge weight power (liquidity mining redirection)
* Yield (70% of the protool fees + a small inflation until june 2024)
* Boosting power (boost your rewards up to 2.5x)

#### The longer APW is locked, the more voting power the user receives:

* 1 APW locked for 1 week = 0.009615 veAPW = 1 vote
* 1 APW locked for 6 months = 0.25 veAPW = 26 votes
* 1 APW locked for 1 year = 0.5 veAPW = 52 votes
* 1 APW locked for 2 years = 1 veAPW = 104 votes

{% hint style="warning" %}
The weight associated with the veAPW gradually decreases as the escrowed tokens approach their lock expiry.
{% endhint %}

{% hint style="info" %}
At the lock expiry, 1 veAPW is redeemable for 1 APW.
{% endhint %}

## How to create a veAPW lock

1. Ensure that the user has a sufficient balance of APW tokens for the transaction.
2. Call veAPW's `create_lock()` function, specifying the desired amount of APW to lock, as well as the lock duration.

## How to increase a veAPW lock amount

1. Ensure that the user has an existing, non-expired veAPW lock.
2. Call veAPW's `increase_amount()` function, specifying the desired amount of APW to add to the existing lock.

{% hint style="info" %}
For an existing, non-expired lock, the lock amount can also be increased on behalf of its owner, using `deposit_for()`.
{% endhint %}

## How to increase a veAPW unlock time

1. Ensure that the user has an existing, non-expired veAPW lock.
2. Call veAPW's `increase_unlock_time()` function, specifying the new lock expiry.

{% hint style="warning" %}
The new lock expiration date must be later than the current one, and the overall lock duration cannot exceed 2 years.
{% endhint %}

## How to withdraw APW from an expired veAPW lock

1. Ensure that the user has an existing, expired veAPW lock.
2. Call veAPW's `withdraw()` function, specifying the new lock expiry.

## How to claim locking rewards

* Call `FeeDistributor`'s [`claim()`](/technical-reference/contract-functions/feedistributor.md#claim)function.

{% hint style="info" %}
Multiple claims can be performed in a single call with [`claim_many()`](/technical-reference/contract-functions/feedistributor.md#claim_many)`.`
{% endhint %}


---

# 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://dev.spectra.finance/guides/locking-apw-for-veapw.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.
