Guides
Locking APW for veAPW
What is veAPW
As described in the current veSPECTRA documentation, vote-escrowed tokens are based on Curve's Vote-Escrowed CRV model and provide voting power in Spectra governance. This page documents the legacy APW and veAPW workflow.
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
The weight associated with the veAPW gradually decreases as the escrowed tokens approach their lock expiry.
At the lock expiry, 1 veAPW is redeemable for 1 APW.
How to create a veAPW lock
- Ensure that the user has a sufficient balance of APW tokens for the transaction.
- 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
- Ensure that the user has an existing, non-expired veAPW lock.
- Call veAPW's
increase_amount()function, specifying the desired amount of APW to add to the existing lock.
For an existing, non-expired lock, the lock amount can also be increased on behalf of its owner, using deposit_for().
How to increase a veAPW unlock time
- Ensure that the user has an existing, non-expired veAPW lock.
- Call veAPW's
increase_unlock_time()function, specifying the new lock expiry.
The new lock expiration date must be later than the current one, and the overall lock duration cannot exceed 2 years.
How to withdraw APW from an expired veAPW lock
- Ensure that the user has an existing, expired veAPW lock.
- Call veAPW's
withdraw()function, specifying the new lock expiry.
How to claim locking rewards
- Call
FeeDistributor'sclaim()function.
Multiple claims can be performed in a single call with claim_many().