Overview
Lintel is a vault on Elysium, Kinetiq’s Layer 2 over HyperEVM, which uses HYPE for gas. You deposit HYPE and receive vault shares. The shares are a plain ERC-20 token, so you can hold them, move them, or use them anywhere that accepts an ERC-20. Their value is read from the vault itself.
The vault, LintelVault, is an unmodified ERC-4626 vault built on OpenZeppelin’s implementation. Its asset is WHYPE, the wrapped form of HYPE. The site has two parts: this brief and its docs, and an app that talks to the vault through your own wallet.
Three things to know before anything else:
- It does not generate yield by itself. The vault holds WHYPE and nothing else. The share price rises only when WHYPE is sent to the vault as a reward. If nobody sends rewards, the share price does not move. Nothing on this site promises a rate.
- Nobody controls it. The vault has no owner, no pause, no upgrade path and no setter. Every parameter is fixed at deployment.
- It is not audited. See Security and the risk disclosure.
Quick start
Deposit
- Open the app and connect a browser wallet such as MetaMask. If the wallet does not know Elysium, the app asks it to add the network (see Network).
- Enter an amount of HYPE. The app keeps a small amount back for gas.
- Sign the steps the app shows, in order. The first deposit takes three signatures: wrap (HYPE to WHYPE), approve (lets the vault take your WHYPE) and deposit. The approval is unlimited, so later deposits take two. If you already hold enough WHYPE, the wrap is skipped.
- Your position appears once the deposit is confirmed. It is not in the vault until the third step, the deposit itself, has gone through.
Withdraw
- Switch to the Withdraw tab and enter the number of shares to redeem.
- Sign the redeem. Shares are burned and WHYPE is sent to your wallet in the same transaction. There is no queue, cooldown, epoch or exit fee.
- Optionally, sign a second transaction to unwrap the WHYPE back to HYPE.
How the vault works
Shares and share price
A deposit mints shares at the current rate. A redeem burns them and pays out their value. The rate is totalAssets / totalSupply, with ERC-4626’s rounding: deposits round the shares down, redeems round the assets down, both in the vault’s favour by at most a few wei. The share supply changes only on deposit and redeem. A reward raises the share price; it never mints shares.
Rewards and harvest
Any WHYPE transferred to the vault without a deposit is a reward. It does not count straight away. It is invisible to totalAssets until someone calls harvest(). After that it is released into the share price linearly over exactly seven days.
harvest()takes no arguments and anyone can call it, but only after the current seven-day cycle has ended. Before that it reverts withCycleNotEnded, so nobody can hold rewards back by calling it over and over.- A reward sent in the middle of a cycle waits for that cycle to end, then takes seven days to release. From arrival to fully released can therefore take up to fourteen days.
- A harvest that finds nothing new still starts a new cycle.
The release is slow on purpose. If a reward counted the moment it landed, someone could deposit just before it, redeem just after, and take part of it without holding through it, because exit is free and same-block. With a seven-day release, holding for one block earns one block’s worth.
The seed
The vault is deployed with at least 0.001 HYPE, which is wrapped and deposited for shares sent to 0x…dEaD. That address has no known key, so the share supply can never fall to zero. If every holder leaves while a reward is still releasing, the rest of it goes to those locked shares instead of inflating the price against the next depositor.
Decimals
Shares have 21 decimals, not 18. The vault uses OpenZeppelin’s decimals offset of 3, which puts 1,000 virtual shares behind every unit of WHYPE. This is what makes the first-depositor inflation attack unprofitable. A whole share is still worth about one WHYPE at launch, but the raw integer amounts are 1,000 times larger than WHYPE’s. Always read decimals() from the vault rather than assuming 18.
Fees
The vault charges nothing: no deposit, withdrawal, management or performance fee, and there is no fee switch to turn one on later. You pay only Elysium network gas, in HYPE. Measured on a fork of Elysium:
| Action | Gas |
|---|---|
| Wrap HYPE | 57,647 |
| Approve WHYPE | 53,737 |
| Deposit | 82,936 |
| Redeem | 81,684 |
| Unwrap WHYPE | 43,109 |
| Harvest | 68,600 |
At the 0.15 gwei Elysium was quoting when this was written, a whole first deposit costs well under 0.0001 HYPE in gas.
Network
Elysium is an Arbitrum Orbit chain run by Conduit for Kinetiq. It settles to HyperEVM, chain 999. Kinetiq has not yet published an official public RPC or explorer for mainnet, so the site uses community endpoints. They are listed here so you can check what your wallet is being given.
| Setting | Value |
|---|---|
| Network name | |
| Chain ID | 99901 (hex 0x1863d) |
| Currency | HYPE, 18 decimals |
| RPC | https://rpc.volta.family, with https://rpc-live.elysp.com as fallback (both community-run) |
| Explorer | https://explorer.volta.family (community-run Blockscout) |
When Kinetiq publishes official endpoints, they will replace these.
Contracts
| Contract | Address |
|---|---|
| Lintel vault | Not deployed yet |
| WHYPE (asset) | 0xba876237b0f021a6c6d852d6c26e107997cc5e81 |
About WHYPE. Kinetiq has not yet published mainnet addresses; its docs list testnet only. The WHYPE above was checked on chain. Its proxy code and its implementation code are byte-for-byte identical to the WHYPE in Kinetiq’s testnet documentation, and it is administered the same way. It is an upgradeable proxy, so whoever controls its admin can change its code. The Lintel vault cannot be changed, but the token it holds can.
Earlier deployments of this site’s contracts on other chains, under the names Kynix and Plint, are not used and are not Lintel.
For integrators
The vault implements ERC-4626 with no changes to the interface, so a standard vault adapter works as-is.
- Pricing. Value a share with
convertToAssets(10**21), which gives WHYPE (18 decimals) per whole share. It is a view call that depends only on the vault’s own state, not on any oracle or pool. totalAssets()leaves out rewards that are not harvested yet and the part of the current reward still releasing. It never counts value the vault cannot pay out.- Previews are exact.
previewDeposit,previewMint,previewWithdrawandpreviewRedeemmatch what the call does in the same block. - No rebasing. Balances change only on transfer, deposit and redeem.
- Native HYPE is refused. Deposits and rewards are WHYPE only.
Beyond ERC-4626, the vault exposes:
| Member | What it returns or does |
|---|---|
harvest() | Picks up everything sent since the last harvest and starts a seven-day release. Anyone may call it once cycleEnd has passed. |
unreleasedReward() | Part of the current reward still locked, rounded up. |
cycleStart(), cycleEnd() | The current cycle, in unix seconds. The next harvest opens at cycleEnd. |
trackedAssets() | Deposits, less withdrawals, plus every harvested reward. |
cycleReward() | The reward picked up by the last harvest. |
CYCLE_LENGTH | 7 days. |
MIN_SEED, DEAD | The deployment seed minimum (0.001 HYPE) and the address holding the seed shares. |
Harvest event | (caller, reward, cycleStart, cycleEnd) |
| Errors | CycleNotEnded(cycleEnd), SeedTooSmall(minimum) |
Security
- Not audited. No external audit has been done.
- Tested. 24 tests run against real WETH9 bytecode. They cover the ERC-4626 previews, the seven-day release to the wei, harvest refusing to run early, a reward sandwich, the first-depositor inflation attack, every holder leaving mid-cycle, and long random sequences that check after every step that the vault never owes more than it holds. A separate test runs the whole user path on a fork of Elysium against the real WHYPE.
- No admin keys. Nobody can pause, upgrade, drain or reconfigure the vault, and nobody can reverse a transaction.
- No bug bounty is offered at present.
Tests prove only what they test. Do not deposit more than you can afford to lose.
Policies
Using the site or the app means accepting the Terms of Use. Read the Risk Disclosure before depositing. What the site does with data is set out in the Privacy Policy.