vault.flag
Documentation for eth_defi.vault.flag Python module.
Vault status flags and notes.
Manual flags and notes for individual vaults and protocols. A bad flag, see
BAD_FLAGS, hides a vault on the website and in the data exports.
Instructions for adding entries
Every entry added to VAULT_FLAGS_AND_NOTES must be documented with an
extensive line comment block directly above it. This applies to humans and to
AI agents alike, including the check-top-list-vaults and add-vault-note
skills. A bare address, or a comment with only the vault name, is not enough.
The comment block states:
the vault name, protocol, chain and, when known, curator;
when the entry was added and what found the problem, e.g. the vault report investability check, an incident report or a user report;
what is wrong, with the figures observed and when, e.g. utilisation, redeemable liquidity or the collateral’s market;
why this
VaultFlagwas chosen;canonical source URLs for the data: the vault’s page on
https://tradingstrategy.ai/vaults/, the block explorer page of the vault and of any token or oracle involved, the protocol’s app or forum post, and the incident reports or announcements relied on. Prefer human-readable pages over API endpoints.
Use VaultFlag.review_needed for a vault we are unsure about: it
is not blacklisted, and its note tells readers the vault is under review. Its
comment block must also record each check run’s decision, the date and the
model, what conflicts or is missing, and what a reviewer should check to
decide. When a later run looks at the vault again, add its finding to the same
comment block rather than a new entry.
The note message itself goes in a module-level constant with a #: comment,
so it can be shared by vaults with the same problem. See the King RSS USDC
Vault entry for an example. After changing flags, rerun the vault metadata
scan, see VaultFlag.
Module Attributes
Don't touch vaults with these flags |
|
Public qualification for GMX's share-price-equivalent performance curve. |
|
Public qualification for YieldBasis's USD redemption-value curve. |
|
Shared explanation of the reviewed 40acres pools' repayment-dependent exits. |
|
Team-reported reserve exhaustion and subsequent collateral migration. |
|
Aerodrome USDC, 40acres on Base; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 53,417,278. |
|
Velodrome USDC, 40acres on Optimism; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 159,012,563. |
|
Pharaoh USDC, 40acres on Avalanche; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 99,220,018. |
|
Blackhole USDC, 40acres on Avalanche; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 99,220,018. |
|
Vault-specific notes and classifications that do not exclude a vault from research datasets. |
|
Protocol-wide descriptive notes that do not flag products as problematic. |
|
Plutus Hedge, Arbitrum; reviewed 2026-11-02 following a user report. |
|
Protocol-wide descriptive classifications; these do not hide vaults. |
|
Product classification flags that are descriptive rather than exclusionary. |
|
Agent RockSteady live-execution copy supplied by NuWealth on 2026-11-03. |
|
User-reported illiquidity of the reviewed K3 Capital Cluster vault. |
|
User-reported illiquidity of Apostro's Ethereum USDC Core vault. |
|
User-reported illiquidity of Mainstreet Greenhouse's Sonic USDC vault. |
|
User-reported illiquidity of UltraYield's Gearbox USDC vault on Monad. |
|
User-reported illiquidity of Silo Finance's Ethereum market 148 USDC vault. |
|
King RSS USDC Vault lends against a token with no market, see its entry in |
|
Credifi's Euler pool lends against an unsellable credit-line token, see its entry in |
|
Euler pools left with bad debt by the Stream Finance and Elixir collapse, see their entries in |
|
A vault denominated in the collapsed Stream Finance xUSD, see its entry in |
|
Trevee plUSD lends only into an Euler pool that takes collapsed Stream xUSD as collateral, see its entry in |
|
Under review: collateral without a liquid market, valued by its issuer; see the |
|
Under review: the vault's lending pool is often fully borrowed; see the |
|
Under review: the vault's reported protocol or TVL may be wrong; see the |
|
Under review: a review started by a person rather than the investability check; see the |
|
Protocol-wide flags and notes. |
|
YieldNest RWA MAX collateral liquidation warning. |
|
Legacy ESPN withdrawal arrangements; official documentation reviewed 2026-11-02. |
|
Asseto IP Vault launch context, product roles and outstanding manual review. |
|
Vault-specific flags and notes. |
Functions
|
Get vault-specific notes. |
|
Get all special vault flags. |
|
Is this vault flagged for any special reason? |
Classes
Flags indicating the status of a vault. |
- class VaultFlag
-
Flags indicating the status of a vault.
Manual vault flags are resolved through
eth_defi.vault.base.VaultBase.get_flags()during vault metadata scanning and stored in the vault metadata database as_flags. Published vault JSON then serialises those stored values throughscripts/erc-4626/vault-analysis-json.py/eth_defi.vault.top_vaults_json.After changing
VaultFlag,VAULT_DESCRIPTIVE_FLAGS,PROTOCOL_DESCRIPTIVE_FLAGS, orVAULT_FLAGS_AND_NOTES, rerun the vault metadata scan and its top-vault JSON post-processing. Running only the JSON export against an oldvault-metadata-db.picklewill keep the previously stored flags.- deposit = 'deposit'
We can deposit now
- redeem = 'redeem'
We can redeem now
- paused = 'paused'
Vault is paused
- trading = 'trading'
Vault is in trading mode - we can expect vault to generate yield
- idle = 'idle'
Vault is not in trading mode - any deposit are unlikely to generate yield right now
- illiquid = 'illiquid'
Vault is illiquid
E.g. Stream xUSD episode
- broken = 'broken'
Vault is broken
Onchain metrics coming out of it do not make sense
- malicious = 'malicious'
The contract will steal your money
- controversial = 'controversial'
Vault has unresolved controversy based on community reports
- abnormal_tvl = 'abnormal_tvl'
Abnormal TVL
- market_making = 'market_making'
The vault supplies automated-market-maker inventory and is exposed to trader profit and loss.
- liquidity_provision = 'liquidity_provision'
The vault represents a pro-rata share of protocol liquidity.
- wrapped_asset = 'wrapped_asset'
This vault represents an underlying wrapped asset like a share
- tokenised_fund = 'tokenised_fund'
This vault represents shares in a legally structured tokenised fund.
Fund assets, NAV calculation and investor eligibility can be managed off-chain by the fund issuer. Apply this only where the product has a legal fund structure; epoch-settled DeFi vault shares alone do not make a product a tokenised fund.
- unofficial = 'unofficial'
A detectable vault cannot be verified as an official product from a protocol’s authoritative metadata. Use this flag only where the source explicitly does not endorse the vault; absence from one frontend alone is insufficient because a protocol can endorse partner products outside its primary frontend. The deployment may be unofficial or a spoof attempt. For example, the Yearn V3-compatible Coinflakes Vault V2.0 at
0x254bd33e2f62713f893f0842c99e68f855cda315is absent from Yearn’s frontend and is thereforeunofficial.
- abnormal_price_on_low_tvl = 'abnormal_price_on_low_tvl'
Vault has abnormal price behaviour on low TVL
- subvault = 'subvault'
This vault is a subvault used by other vaults
Share price is unrealistically high (> $1M), likely a broken contract
- misleading_valuation = 'misleading_valuation'
Vault reported an incorrect share price because of misleading accounting
- abnormal_volatility = 'abnormal_volatility'
Annualised volatility is unrealistically high
- perp_dex_trading_vault = 'perp_dex_trading_vault'
Tnis vault is a perp dex trading vault on Hyperliquid, Orderly, Lighter, etc.
- irregular_reporting = 'irregular_reporting'
The vault does not do daily NAV. It’s share price has confusing equity curve, making users misjudge the vault.
- long_duration = 'long_duration'
This is for vaults with especially long redemption periods.
- withdrawal_restrictions = 'withdrawal_restrictions'
Withdrawals depend on a queue, trading window or operator action. Liquidity and repayment risks have separate flags. This is not a claim that every withdrawal route is closed. Deliberately outside BAD_FLAGS.
- forty_acres_withdrawal_risk = 'forty_acres_withdrawal_risk'
40acres withdrawal warning: USDC is lent against income-generating collateral and reported assets include outstanding borrower loans. Immediate withdrawals require USDC held by the supply vault; lenders cannot demand loan repayment or trigger automatic collateral liquidation. Collateral income and voluntary repayments replenish cash, without a guaranteed completion date. Reduced or failed income can delay repayment or cause losses. Applied only to reviewed liquidity-constrained pools, not every 40acres deployment; deliberately excluded from
BAD_FLAGSso affected vaults remain visible in the catalogue and data exports.
- morpho_issues = 'morpho_issues'
Morpho Blue API reports one or more RED-level warnings on this vault or its underlying markets.
RED warnings include unrealised bad debt (
bad_debt_unrealized), oracle price deviation, short timelock, and deposit-disabled. Checkother_data["morpho_vault_flags"]andother_data["morpho_market_flags"]in the metrics Series for the specific flag types.
- not_in_morpho_api = 'not_in_morpho_api'
Morpho API does not return this vault by address.
- depegged_denomination_token = 'depegged_denomination_token'
Vault denomination stablecoin is marked as depegged.
- review_needed = 'review_needed'
A human should review this vault; it is not blacklisted.
Use this when there is a credible concern but not enough evidence to blacklist, e.g. the vault report investability check left the vault
uncertain, or its AI-assisted research is not deterministic and separate runs reach different decisions. The vault stays visible on the website and in the exports; its note tells readers it is under review. Deliberately not inBAD_FLAGS. Replace it with a bad flag, or remove the entry, once a human has decided.
- __new__(value)
- capitalize()
Return a capitalized version of the string.
More specifically, make the first character have upper case and the rest lower case.
- casefold()
Return a version of the string suitable for caseless comparisons.
- center(width, fillchar=' ', /)
Return a centered string of length width.
Padding is done using the specified fill character (default is a space).
- count()
Return the number of non-overlapping occurrences of substring sub in string S[start:end].
Optional arguments start and end are interpreted as in slice notation.
- encode(encoding='utf-8', errors='strict')
Encode the string using the codec registered for encoding.
- encoding
The encoding in which to encode the string.
- errors
The error handling scheme to use for encoding errors. The default is ‘strict’ meaning that encoding errors raise a UnicodeEncodeError. Other possible values are ‘ignore’, ‘replace’ and ‘xmlcharrefreplace’ as well as any other name registered with codecs.register_error that can handle UnicodeEncodeErrors.
- endswith()
Return True if the string ends with the specified suffix, False otherwise.
- suffix
A string or a tuple of strings to try.
- start
Optional start position. Default: start of the string.
- end
Optional stop position. Default: end of the string.
- expandtabs(tabsize=8)
Return a copy where all tab characters are expanded using spaces.
If tabsize is not given, a tab size of 8 characters is assumed.
- find()
Return the lowest index in S where substring sub is found, such that sub is contained within S[start:end].
Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.
- format(*args, **kwargs)
Return a formatted version of the string, using substitutions from args and kwargs. The substitutions are identified by braces (‘{’ and ‘}’).
- format_map(mapping, /)
Return a formatted version of the string, using substitutions from mapping. The substitutions are identified by braces (‘{’ and ‘}’).
- index()
Return the lowest index in S where substring sub is found, such that sub is contained within S[start:end].
Optional arguments start and end are interpreted as in slice notation. Raises ValueError when the substring is not found.
- isalnum()
Return True if the string is an alpha-numeric string, False otherwise.
A string is alpha-numeric if all characters in the string are alpha-numeric and there is at least one character in the string.
- isalpha()
Return True if the string is an alphabetic string, False otherwise.
A string is alphabetic if all characters in the string are alphabetic and there is at least one character in the string.
- isascii()
Return True if all characters in the string are ASCII, False otherwise.
ASCII characters have code points in the range U+0000-U+007F. Empty string is ASCII too.
- isdecimal()
Return True if the string is a decimal string, False otherwise.
A string is a decimal string if all characters in the string are decimal and there is at least one character in the string.
- isdigit()
Return True if the string is a digit string, False otherwise.
A string is a digit string if all characters in the string are digits and there is at least one character in the string.
- isidentifier()
Return True if the string is a valid Python identifier, False otherwise.
Call keyword.iskeyword(s) to test whether string s is a reserved identifier, such as “def” or “class”.
- islower()
Return True if the string is a lowercase string, False otherwise.
A string is lowercase if all cased characters in the string are lowercase and there is at least one cased character in the string.
- isnumeric()
Return True if the string is a numeric string, False otherwise.
A string is numeric if all characters in the string are numeric and there is at least one character in the string.
- isprintable()
Return True if all characters in the string are printable, False otherwise.
A character is printable if repr() may use it in its output.
- isspace()
Return True if the string is a whitespace string, False otherwise.
A string is whitespace if all characters in the string are whitespace and there is at least one character in the string.
- istitle()
Return True if the string is a title-cased string, False otherwise.
In a title-cased string, upper- and title-case characters may only follow uncased characters and lowercase characters only cased ones.
- isupper()
Return True if the string is an uppercase string, False otherwise.
A string is uppercase if all cased characters in the string are uppercase and there is at least one cased character in the string.
- join(iterable, /)
Concatenate any number of strings.
The string whose method is called is inserted in between each given string. The result is returned as a new string.
Example: ‘.’.join([‘ab’, ‘pq’, ‘rs’]) -> ‘ab.pq.rs’
- ljust(width, fillchar=' ', /)
Return a left-justified string of length width.
Padding is done using the specified fill character (default is a space).
- lower()
Return a copy of the string converted to lowercase.
- lstrip(chars=None, /)
Return a copy of the string with leading whitespace removed.
If chars is given and not None, remove characters in chars instead.
- static maketrans()
Return a translation table usable for str.translate().
If there is only one argument, it must be a dictionary mapping Unicode ordinals (integers) or characters to Unicode ordinals, strings or None. Character keys will be then converted to ordinals. If there are two arguments, they must be strings of equal length, and in the resulting dictionary, each character in x will be mapped to the character at the same position in y. If there is a third argument, it must be a string, whose characters will be mapped to None in the result.
- partition(sep, /)
Partition the string into three parts using the given separator.
This will search for the separator in the string. If the separator is found, returns a 3-tuple containing the part before the separator, the separator itself, and the part after it.
If the separator is not found, returns a 3-tuple containing the original string and two empty strings.
- removeprefix(prefix, /)
Return a str with the given prefix string removed if present.
If the string starts with the prefix string, return string[len(prefix):]. Otherwise, return a copy of the original string.
- removesuffix(suffix, /)
Return a str with the given suffix string removed if present.
If the string ends with the suffix string and that suffix is not empty, return string[:-len(suffix)]. Otherwise, return a copy of the original string.
- replace(old, new, /, count=- 1)
Return a copy with all occurrences of substring old replaced by new.
- count
Maximum number of occurrences to replace. -1 (the default value) means replace all occurrences.
If the optional argument count is given, only the first count occurrences are replaced.
- rfind()
Return the highest index in S where substring sub is found, such that sub is contained within S[start:end].
Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.
- rindex()
Return the highest index in S where substring sub is found, such that sub is contained within S[start:end].
Optional arguments start and end are interpreted as in slice notation. Raises ValueError when the substring is not found.
- rjust(width, fillchar=' ', /)
Return a right-justified string of length width.
Padding is done using the specified fill character (default is a space).
- rpartition(sep, /)
Partition the string into three parts using the given separator.
This will search for the separator in the string, starting at the end. If the separator is found, returns a 3-tuple containing the part before the separator, the separator itself, and the part after it.
If the separator is not found, returns a 3-tuple containing two empty strings and the original string.
- rsplit(sep=None, maxsplit=- 1)
Return a list of the substrings in the string, using sep as the separator string.
- sep
The separator used to split the string.
When set to None (the default value), will split on any whitespace character (including n r t f and spaces) and will discard empty strings from the result.
- maxsplit
Maximum number of splits. -1 (the default value) means no limit.
Splitting starts at the end of the string and works to the front.
- rstrip(chars=None, /)
Return a copy of the string with trailing whitespace removed.
If chars is given and not None, remove characters in chars instead.
- split(sep=None, maxsplit=- 1)
Return a list of the substrings in the string, using sep as the separator string.
- sep
The separator used to split the string.
When set to None (the default value), will split on any whitespace character (including n r t f and spaces) and will discard empty strings from the result.
- maxsplit
Maximum number of splits. -1 (the default value) means no limit.
Splitting starts at the front of the string and works to the end.
Note, str.split() is mainly useful for data that has been intentionally delimited. With natural text that includes punctuation, consider using the regular expression module.
- splitlines(keepends=False)
Return a list of the lines in the string, breaking at line boundaries.
Line breaks are not included in the resulting list unless keepends is given and true.
- startswith()
Return True if the string starts with the specified prefix, False otherwise.
- prefix
A string or a tuple of strings to try.
- start
Optional start position. Default: start of the string.
- end
Optional stop position. Default: end of the string.
- strip(chars=None, /)
Return a copy of the string with leading and trailing whitespace removed.
If chars is given and not None, remove characters in chars instead.
- swapcase()
Convert uppercase characters to lowercase and lowercase characters to uppercase.
- title()
Return a version of the string where each word is titlecased.
More specifically, words start with uppercased characters and all remaining cased characters have lower case.
- translate(table, /)
Replace each character in the string using the given translation table.
- table
Translation table, which must be a mapping of Unicode ordinals to Unicode ordinals, strings, or None.
The table must implement lookup/indexing via __getitem__, for instance a dictionary or list. If this operation raises LookupError, the character is left untouched. Characters mapped to None are deleted.
- upper()
Return a copy of the string converted to uppercase.
- zfill(width, /)
Pad a numeric string with zeros on the left, to fill a field of the given width.
The string is never truncated.
- BAD_FLAGS = {VaultFlag.abnormal_price_on_low_tvl, VaultFlag.abnormal_share_price, VaultFlag.abnormal_tvl, VaultFlag.abnormal_volatility, VaultFlag.broken, VaultFlag.controversial, VaultFlag.depegged_denomination_token, VaultFlag.illiquid, VaultFlag.irregular_reporting, VaultFlag.malicious, VaultFlag.misleading_valuation, VaultFlag.morpho_issues, VaultFlag.not_in_morpho_api, VaultFlag.paused, VaultFlag.subvault, VaultFlag.unofficial}
Don’t touch vaults with these flags
- GMX_SINGLE_SIDED_USDC_NOTE = 'The vault performance approximates the single-sided USDC deposit value. GMX vaults hold exposure to all underlying tokens they market make'
Public qualification for GMX’s share-price-equivalent performance curve.
GMX liquidity-provider shares retain exposure to every token in their underlying markets, despite the single-sided USDC performance convention.
- YIELD_BASIS_NOTE = "A [YieldBasis](https://yieldbasis.com/earn) yb-LP is a leveraged BTC or ETH liquidity-provider position. Its value rises and falls with the underlying asset.\n\nyb-LP yield comes primarily from [trading fees earned by the underlying Curve pool and YieldBasis LEVAMM](https://docs.yieldbasis.com/user/protocol/fee-mechanics), after protocol fee allocations and rebalancing costs.\n\nPerformance is shown in USD using the marginal amount returned by `preview_withdraw`, so the [Temporary Redemption Discount (TRD)](https://docs.yieldbasis.com/user/protocol/fundamental-value-redemption-value-and-trd) is part of the historical equity curve. [New shares mint at fundamental PPS, while exits use redemption value](https://docs.yieldbasis.com/dev/integration/deposit-withdraw); negative TRD therefore affects an immediate exit, not entry.\n\nThe entry and exit fee fields each model a 0.10% conversion between a generic USD stablecoin and the pool's BTC or ETH token. These endpoint costs sit outside the historical equity curve and exclude price impact, gas and MEV.\n"
Public qualification for YieldBasis’s USD redemption-value curve. The note gives general readers concise return and risk guidance.
- FORTY_ACRES_WITHDRAWAL_NOTE = "#### Withdrawal restrictions\n\n**Withdrawals depend on available USDC and may remain restricted for an uncertain period.**\nDepositors fund borrower loans secured by income-generating collateral. The\n[lending documentation](https://docs.40acres.finance/lending) explains that\nborrowers' collateral rewards fund lender returns and that fully utilised\npools require repayments before lenders can withdraw.\n\nReported vault assets include outstanding loans, rather than only USDC ready\nto pay withdrawals. Collateral income and voluntary borrower repayments can\nreplenish that cash, but lenders cannot demand immediate loan repayment or\ntrigger automatic collateral liquidation. The\n[risk disclosure](https://docs.40acres.finance/risk-disclosure) explains that\nrepayment has no fixed timeline: falling rewards can extend it, and failed\nreward generation can leave the vault with bad debt and losses for depositors.\n\n"
Shared explanation of the reviewed 40acres pools’ repayment-dependent exits.
- FORTY_ACRES_AERO_HISTORY_NOTE = "#### Reserve exhaustion and collateral migration\n\nIn its [30 March 2026 lender update](https://40acresfinance.substack.com/p/40-acres-lender-update),\n40acres reported that a $3.3 million withdrawal outflow exhausted available\nUSDC reserves, leaving remaining lenders dependent on loan repayments. The\nupdate did not identify individual affected pools, so it does not establish\nthe outflow's allocation between vaults.\n\nThe same lender update announced secondary markets for vault shares. These\ndo not guarantee a buyer, an exit price or enough liquidity for a depositor\nto sell their shares.\n\nThe [8 October 2026 migration announcement](https://40acresfinance.substack.com/p/aero-migration-what-40acres-users)\nsaid Aerodrome and Velodrome borrowers' collateral would migrate to sAERO,\na staked AERO position held in borrower portfolio accounts on Base, with\nits rewards continuing to repay loans. The stated three-to-five-day delay\nfor Velodrome borrowers withdrawing collateral after repayment is **not a\nwithdrawal timetable for USDC lenders**.\n"
Team-reported reserve exhaustion and subsequent collateral migration.
- FORTY_ACRES_AERODROME_NOTE = "#### Withdrawal restrictions\n\n**Withdrawals depend on available USDC and may remain restricted for an uncertain period.**\nDepositors fund borrower loans secured by income-generating collateral. The\n[lending documentation](https://docs.40acres.finance/lending) explains that\nborrowers' collateral rewards fund lender returns and that fully utilised\npools require repayments before lenders can withdraw.\n\nReported vault assets include outstanding loans, rather than only USDC ready\nto pay withdrawals. Collateral income and voluntary borrower repayments can\nreplenish that cash, but lenders cannot demand immediate loan repayment or\ntrigger automatic collateral liquidation. The\n[risk disclosure](https://docs.40acres.finance/risk-disclosure) explains that\nrepayment has no fixed timeline: falling rewards can extend it, and failed\nreward generation can leave the vault with bad debt and losses for depositors.\n\n\n#### Aerodrome USDC snapshot\n\nOn **2 November 2026**, the [Base vault](https://basescan.org/address/0xb99b6df96d4d5448cc0a5b3e0ef7896df9507cf5)\nheld **zero USDC available for immediate withdrawals**, against approximately\n5.60 million USDC of reported assets. Approximately 5.61 million USDC was\nrecorded as outstanding loan principal. These are dated observations, not a\nguarantee of future liquidity or recovery. The\n[official contract directory](https://docs.40acres.finance/contracts) identifies\nthe supply vault and its associated loan contract.\n#### Reserve exhaustion and collateral migration\n\nIn its [30 March 2026 lender update](https://40acresfinance.substack.com/p/40-acres-lender-update),\n40acres reported that a $3.3 million withdrawal outflow exhausted available\nUSDC reserves, leaving remaining lenders dependent on loan repayments. The\nupdate did not identify individual affected pools, so it does not establish\nthe outflow's allocation between vaults.\n\nThe same lender update announced secondary markets for vault shares. These\ndo not guarantee a buyer, an exit price or enough liquidity for a depositor\nto sell their shares.\n\nThe [8 October 2026 migration announcement](https://40acresfinance.substack.com/p/aero-migration-what-40acres-users)\nsaid Aerodrome and Velodrome borrowers' collateral would migrate to sAERO,\na staked AERO position held in borrower portfolio accounts on Base, with\nits rewards continuing to repay loans. The stated three-to-five-day delay\nfor Velodrome borrowers withdrawing collateral after repayment is **not a\nwithdrawal timetable for USDC lenders**.\n"
Aerodrome USDC, 40acres on Base; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 53,417,278. Zero direct USDC against 5,600,744.570341 USDC of reported assets. A visible descriptive warning records repayment-dependent exits without blacklisting. https://tradingstrategy.ai/vaults/aerodrome-usdc
- FORTY_ACRES_VELODROME_NOTE = "#### Withdrawal restrictions\n\n**Withdrawals depend on available USDC and may remain restricted for an uncertain period.**\nDepositors fund borrower loans secured by income-generating collateral. The\n[lending documentation](https://docs.40acres.finance/lending) explains that\nborrowers' collateral rewards fund lender returns and that fully utilised\npools require repayments before lenders can withdraw.\n\nReported vault assets include outstanding loans, rather than only USDC ready\nto pay withdrawals. Collateral income and voluntary borrower repayments can\nreplenish that cash, but lenders cannot demand immediate loan repayment or\ntrigger automatic collateral liquidation. The\n[risk disclosure](https://docs.40acres.finance/risk-disclosure) explains that\nrepayment has no fixed timeline: falling rewards can extend it, and failed\nreward generation can leave the vault with bad debt and losses for depositors.\n\n\n#### Velodrome USDC snapshot\n\nOn **2 November 2026**, the [Optimism vault](https://optimistic.etherscan.io/address/0x08dcdbf7bade91ccd42cb2a4ea8e5d199d285957)\nheld **zero USDC available for immediate withdrawals**, against approximately\n635,156 USDC of reported assets and 636,038 USDC of outstanding loan principal.\nThese are dated observations, not a guarantee of future liquidity or recovery.\nThe [official contract directory](https://docs.40acres.finance/contracts)\nidentifies this USDC supply vault on Optimism; the announced collateral\nmigration to Base does not itself make its USDC available for withdrawal.\n#### Reserve exhaustion and collateral migration\n\nIn its [30 March 2026 lender update](https://40acresfinance.substack.com/p/40-acres-lender-update),\n40acres reported that a $3.3 million withdrawal outflow exhausted available\nUSDC reserves, leaving remaining lenders dependent on loan repayments. The\nupdate did not identify individual affected pools, so it does not establish\nthe outflow's allocation between vaults.\n\nThe same lender update announced secondary markets for vault shares. These\ndo not guarantee a buyer, an exit price or enough liquidity for a depositor\nto sell their shares.\n\nThe [8 October 2026 migration announcement](https://40acresfinance.substack.com/p/aero-migration-what-40acres-users)\nsaid Aerodrome and Velodrome borrowers' collateral would migrate to sAERO,\na staked AERO position held in borrower portfolio accounts on Base, with\nits rewards continuing to repay loans. The stated three-to-five-day delay\nfor Velodrome borrowers withdrawing collateral after repayment is **not a\nwithdrawal timetable for USDC lenders**.\n"
Velodrome USDC, 40acres on Optimism; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 159,012,563. Zero direct USDC against 635,156.416471 USDC of reported assets. The same visible warning applies; migrated collateral on Base does not move this vault. https://tradingstrategy.ai/vaults/velodrome-usdc
- FORTY_ACRES_PHARAOH_NOTE = "#### Withdrawal restrictions\n\n**Withdrawals depend on available USDC and may remain restricted for an uncertain period.**\nDepositors fund borrower loans secured by income-generating collateral. The\n[lending documentation](https://docs.40acres.finance/lending) explains that\nborrowers' collateral rewards fund lender returns and that fully utilised\npools require repayments before lenders can withdraw.\n\nReported vault assets include outstanding loans, rather than only USDC ready\nto pay withdrawals. Collateral income and voluntary borrower repayments can\nreplenish that cash, but lenders cannot demand immediate loan repayment or\ntrigger automatic collateral liquidation. The\n[risk disclosure](https://docs.40acres.finance/risk-disclosure) explains that\nrepayment has no fixed timeline: falling rewards can extend it, and failed\nreward generation can leave the vault with bad debt and losses for depositors.\n\n\n#### Pharaoh USDC snapshot\n\nOn **2 November 2026**, the [Avalanche vault](https://snowtrace.io/address/0x124d00b1ce4453ffc5a5f65ce83af13a7709bac7)\nheld **zero USDC available for immediate withdrawals**, against approximately\n243,666 USDC of reported assets and 244,036 USDC of outstanding loan principal.\nThe [40acres FAQ](https://docs.40acres.finance/faq) identifies\nPharaoh's xPHAR market. [Pharaoh's documentation](https://docs.phar.gg/pages/xphar)\nexplains that xPHAR is a token providing voting rights and protocol rewards.\nThe [official contract directory](https://docs.40acres.finance/contracts)\nlists the associated supply vault and loan contract. The liquidity figures\nare dated observations, not a guaranteed withdrawal timetable.\n"
Pharaoh USDC, 40acres on Avalanche; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 99,220,018. Zero direct USDC against 243,666.472184 USDC of reported assets. Do not infer that the March announcement specifically described this pool. https://tradingstrategy.ai/vaults/pharaoh-usdc
- FORTY_ACRES_BLACKHOLE_NOTE = "#### Withdrawal restrictions\n\n**Withdrawals depend on available USDC and may remain restricted for an uncertain period.**\nDepositors fund borrower loans secured by income-generating collateral. The\n[lending documentation](https://docs.40acres.finance/lending) explains that\nborrowers' collateral rewards fund lender returns and that fully utilised\npools require repayments before lenders can withdraw.\n\nReported vault assets include outstanding loans, rather than only USDC ready\nto pay withdrawals. Collateral income and voluntary borrower repayments can\nreplenish that cash, but lenders cannot demand immediate loan repayment or\ntrigger automatic collateral liquidation. The\n[risk disclosure](https://docs.40acres.finance/risk-disclosure) explains that\nrepayment has no fixed timeline: falling rewards can extend it, and failed\nreward generation can leave the vault with bad debt and losses for depositors.\n\n\n#### Blackhole USDC snapshot and collateral concerns\n\nOn **2 November 2026**, the [Avalanche vault](https://snowtrace.io/address/0xc0485c4bafb594ae1457820fb6e5b67e8a04bcfd)\nheld approximately **1,581 USDC available for immediate withdrawals against\n635,055 USDC of reported assets**, or about 0.25%. Approximately 633,474 USDC\nwas recorded as outstanding loan principal. The onchain check also showed\nthat the vault was not accepting new deposits.\nThe [official contract directory](https://docs.40acres.finance/contracts)\nidentifies the supply vault and the loan contract for veBLACK, positions\nrepresenting locked BLACK tokens.\n\nOn the same date, 40acres' [official live-data service](https://docs.40acres.finance/ai-assistants.md)\nreported approximately **634,000 USDC of borrower debt against $222,000 to $224,000\nof indicative collateral value**. Debt can include amounts beyond outstanding\nprincipal.\n\nThis protocol-reported valuation is not a verified sale price,\nrecovery estimate or established realised loss, but it raises concerns about\nrepayment beyond the immediate cash shortage. Neither the remaining cash nor\nthe collateral valuation establishes when a lender can exit in full.\n"
Blackhole USDC, 40acres on Avalanche; user-requested review on 2026-11-02, independently checked using RPC and the official API at block 99,220,018. Only 1,581.265377 USDC direct cash against 635,055.027604 USDC reported assets. Protocol-reported collateral valuation is indicative, not realisable recovery. https://tradingstrategy.ai/vaults/blackhole-usdc
- VAULT_NOTES: dict[str, str] = {'0x0324dd195d0cd53f9f07bee6a48ee7a20bad738f': "SPiCE Venture Capital Fund (SPICE).\n\n- **Curator:** SPiCE VC / Securitize.\n- **Vault strategy:** Tokenised interests in a venture-capital fund investing in early-stage companies building blockchain and tokenisation infrastructure.\n- **NAV reporting:** SPiCE publishes periodic net-asset-value reports for the fund. The value depends on the underlying venture portfolio, so this integration does not use a fixed share-price estimate.\n- **Investor access:** Fund interests are permissioned digital securities and remain subject to the fund's investor-eligibility and transfer rules.\n- **Fund page:** [SPiCE VC](https://spicevc.com/).\n", '0x09864f52b035ae22ee739dfa5c748fa080d07bd8': 'JPMorgan OnChain Liquidity-Token Money Market Fund (JLTXX).\n\n- **Curator:** J.P. Morgan Asset Management / Kinexys.\n- **Vault strategy:** Registered government money market fund investing in U.S. Treasury securities and overnight repurchase agreements collateralised by U.S. Treasury securities and/or cash.\n- **Fee structure:** Token Class prospectus advertises 0.71% gross total annual fund operating expenses and 0.16% net total annual fund operating expenses after waivers through 2028-06-30. These are off-chain fund expenses, not ODA-FACT token contract methods.\n- Equity curve and profit information for this vault are missing because they are not publicly available and proprietary to J.P. Morgan.\n- **Fact sheet:** [JLTXX fact sheet](https://am.jpmorgan.com/content/dam/jpm-am-aem/americas/us/en/literature/fact-sheet/money-market/fs-ocltmm-t.pdf).\n', '0x17418038ecf73ba4026c4f428547bf099706f27b': "Apollo Diversified Credit Securitize Fund (ACRED).\n\n- **Curator:** Apollo / Securitize.\n- **Vault strategy:** Tokenised feeder fund investing in Apollo Diversified Credit Fund, a diversified global-credit strategy spanning corporate direct lending, asset-backed lending, and performing, dislocated and structured credit.\n- **NAV reporting:** The fund supports subscriptions and redemptions at daily NAV. Its NAV changes with the underlying credit portfolio; historical NAV is read from RedStone's ACRED fundamental feed rather than modelled as a fixed share price.\n- **Investor access:** The product is available to qualifying investors through Securitize Markets.\n- **Fund page:** [Apollo Diversified Credit Securitize Fund](https://securitize.io/primary-market/apollo-diversified-credit-securitize-fund).\n", '0x1b19c19393e2d034d8ff31ff34c81252fcbbee92': "Ondo Short-Term U.S. Government Bond Fund (OUSG).\n\n- **Curator:** Ondo Finance.\n- **Vault strategy:** Tokenised shares providing exposure primarily to short-term U.S. Treasuries and government-sponsored-enterprise securities, alongside cash-management holdings.\n- **NAV reporting:** Ondo updates the fund NAV at the end of each business day and publishes the NAV per OUSG token through its on-chain price oracle.\n- **Investor access:** OUSG is a qualified-access product. Eligible, onboarded investors may use Ondo's supported subscription and redemption process; token transfers remain restricted to onboarded holders.\n- **Fund page:** [Ondo OUSG](https://docs.ondo.finance/qualified-access-products/ousg/overview).\n", '0x1f41e42d0a9e3c0dd3ba15b527342783b43200a9': "Blockchain Capital III Digital Liquid Venture Fund (BCAP).\n\n- **Curator:** Blockchain Capital / Securitize.\n- **Vault strategy:** Tokenised fund interests in a venture-capital fund investing in companies building blockchain and cryptocurrency products.\n- **NAV reporting:** The value follows the fund's net asset value and depends on its venture portfolio. Historical NAV is read from RedStone's BCAP fundamental feed rather than using a fixed share-price estimate.\n- **Investor access:** BCAP is a permissioned Securitize offering for eligible investors; subscription, redemption and transfer terms follow the fund documentation.\n- **Fund page:** [Blockchain Capital](https://www.blockchaincapital.com/about-us).\n", '0x1fecf3d9d4fee7f2c02917a66028a48c6706c179': 'WisdomTree Treasury Money Market Digital Fund (WTGXX).\n\n- **Curator:** WisdomTree.\n- **Token structure:** Permissioned, revocable compliance ERC-20 shares; not an ERC-4626 vault.\n- **NAV source:** Historical NAV data is not publicly available. WisdomTree provides it through the permissioned DataSpan API, which requires an API key issued after approval.\n- **Investor access:** Wallets must be approved by WisdomTree Connect; public deposit and redemption managers are intentionally unsupported.\n- **Fund page:** [WisdomTree WTGXX](https://www.wisdomtreeconnect.com/digital-funds/money-market/wtgxx).\n', '0x2255718832bc9fd3be1caf75084f4803da14ff01': "VanEck Treasury Fund (VBILL).\n\n- **Curator:** VanEck / Securitize.\n- **Vault strategy:** Tokenised fund investing in short-term U.S. Treasury obligations, repurchase agreements collateralised by U.S. Treasury obligations and cash for redemptions.\n- **NAV reporting:** The fund seeks to maintain a stable USD 1 net asset value and has daily NAV calculations. Historical NAV is read from RedStone's Ethereum VBILL fundamental feed, so the adapter does not assume a fixed share price.\n- **Investor access:** The fund is designed for institutional and qualified investors.\n- **Fund page:** [VanEck Treasury Fund](https://securitize.io/primary-market/vaneck-vbill).\n", '0x252739487c1fa66eaeae7ced41d6358ab2a6bca9': "Arca U.S. Treasury Fund (ArCoin).\n\n- **Curator:** Arca / Securitize.\n- **Vault strategy:** Tokenised shares in a registered fund investing primarily in short-term U.S. Treasury securities, with cash and other high-quality fixed-income instruments permitted for liquidity and portfolio management.\n- **NAV reporting:** ArCoin's value follows the fund's net asset value and may change with the portfolio. This integration does not model a fixed share price.\n- **Investor access:** The fund makes periodic repurchase offers; eligible investors use the fund's designated process to request repurchase of their shares.\n- **Fund page:** [Arca U.S. Treasury Fund](https://www.arcalabs.com/fund-overview).\n", '0x2893ef551b6dd69f661ac00f11d93e5dc5dc0e99': 'BlackRock USD Institutional Digital Liquidity Fund (BUIDL) on Polygon.\n\n- **Curator:** BlackRock / Securitize.\n- **Vault strategy:** Tokenised shares in a fund that invests in cash, U.S. Treasury bills and repurchase agreements.\n- **Token structure:** BUIDL is a permissioned Securitize token. Investors must complete issuer eligibility and compliance checks before subscribing, redeeming or transferring shares.\n- **Stable dollar share value:** BUIDL targets a USD 1 share value. Fund income accrues daily and is distributed monthly as newly issued BUIDL shares to eligible holders, rather than increasing the unit price. The token is therefore modelled at an estimated USD 1 per share and the on-chain share price does not represent total return.\n- **Fund page:** [BlackRock BUIDL](https://www.blackrock.com/us/individual/products/buidl/).\n', '0x43415eb6ff9db7e26a15b704e7a3edce97d31c4e': "Invesco Short Duration US Government Securities Fund (USTB).\n\n- **Curator:** Superstate.\n- **Vault strategy:** Tokenised shares in a short-duration U.S. government-securities fund.\n- **NAV and liquidity:** The tracked NAV/share is Superstate's issuer-published continuous price. It is not an exchange price and does not by itself guarantee redeemable USDC liquidity.\n- **Eligibility:** USTB is a permissioned instrument. Transfers, subscriptions and redemptions require Superstate approval and can be paused or subject to issuer settlement conditions.\n- **Fund documentation:** [Superstate USTB](https://docs.superstate.com/superstate-funds/ustb).\n", '0x51c2d74017390cbbd30550179a16a1c28f7210fc': "Securitize Tokenized AAA CLO Fund (STAC).\n\n- **Curator:** BNY Investments / Securitize.\n- **Vault strategy:** Tokenised fund dedicated to U.S. dollar-denominated collateralised loan obligations with AAA-rated tranches.\n- **Fund oversight:** The fund was developed with BNY, which acts as custodian for the underlying assets; BNY Investments is the fund's sub-adviser.\n- **NAV reporting:** The share value follows the NAV of the CLO portfolio and is not a stable-dollar fund. Historical NAV is read from RedStone's STAC fundamental feed; Chronicle separately verifies the fund's assets and valuation inputs through its Proof of Asset dashboard.\n- **Fund page:** [Securitize Tokenized AAA CLO Fund](https://www.securitize-stac.com/).\n", '0x53fc82f14f009009b440a706e31c9021e1196a2f': 'BlackRock USD Institutional Digital Liquidity Fund (BUIDL) on Avalanche.\n\n- **Curator:** BlackRock / Securitize.\n- **Vault strategy:** Tokenised shares in a fund that invests in cash, U.S. Treasury bills and repurchase agreements.\n- **Token structure:** BUIDL is a permissioned Securitize token. Investors must complete issuer eligibility and compliance checks before subscribing, redeeming or transferring shares.\n- **Stable dollar share value:** BUIDL targets a USD 1 share value. Fund income accrues daily and is distributed monthly as newly issued BUIDL shares to eligible holders, rather than increasing the unit price. The token is therefore modelled at an estimated USD 1 per share and the on-chain share price does not represent total return.\n- **Fund page:** [BlackRock BUIDL](https://www.blackrock.com/us/individual/products/buidl/).\n', '0x5e17f6f450dcb0bc69b232ea554e224d7e88067a': "Protos Cryptocurrency Fund (PRTS).\n\n- **Curator:** Protos Asset Management / Securitize.\n- **Vault strategy:** Tokenised interests in an actively managed fund investing in digital assets and related instruments.\n- **NAV reporting:** The value follows the fund's net asset value and changes with its investment portfolio. This integration does not use a fixed share-price estimate.\n- **Investor access:** PRTS is a permissioned Securitize offering for eligible investors; subscription, redemption and transfer terms follow the fund documentation.\n- **Fund page:** [Protos Asset Management NAV announcement](https://protosmanagement.com/2024/05/09/protos-asset-management-releases-march-31-2024-prts-token-nav/).\n", '0x671642ac281c760e34251d51bc9eef27026f3b7a': "Mantle Index Four (MI4).\n\n- **Curator:** Mantle Guard / Securitize.\n- **Vault strategy:** Tokenised fund exposure to a diversified basket of BTC, ETH, SOL and U.S. dollar assets, with selected staking strategies and periodic rebalancing.\n- **NAV reporting:** The share value follows the fund's portfolio and is not stable. Historical NAV is read from RedStone's Mantle MI4 fundamental feed.\n- **Investor access:** MI4 is a permissioned Securitize offering on Mantle for qualifying investors; subscriptions, redemptions and transfers follow the fund terms.\n- **Fund page:** [Mantle Index Four](https://securitize.io/primary-market/mantle-index-four-fund).\n", '0x682ef9cc637ef56577092b29ae9275a629aae7db': 'Science Blockchain (SCI2).\n\n- **Curator:** Science Inc. / Securitize.\n- **Vault strategy:** Tokenised interests in Science Blockchain, an investment vehicle that works with early-stage blockchain companies.\n- **NAV reporting:** The value follows the net asset value of the underlying portfolio and can change as the portfolio is valued. This integration does not use a fixed share-price estimate.\n- **Investor access:** SCI2 is a permissioned Securitize offering for eligible investors; subscription, redemption and transfer terms follow the fund documentation.\n- **Fund page:** [Science Blockchain](https://www.science-inc.com/blockchain.html).\n', '0x6a7c6aa2b8b8a6a891de552bdeffa87c3f53bd46': "My OnChain Net Yield Fund (MONY).\n\n- **Curator:** J.P. Morgan Asset Management / Kinexys.\n- **Fund access:** The Ethereum token is a permissioned FACT Diamond. Its account activation, stop-code, lock and role controls mean an ERC-20 transfer or burn interface does not establish general investor eligibility or public redemption access.\n- **Valuation:** The deployed token exposes no on-chain NAV or share-price function. Supply is tracked as an on-chain diagnostic only; do not derive fund value from it.\n- **Operations:** J.P. Morgan's launch announcement says the fund is powered by Kinexys Digital Assets and distributed through Morgan Money.\n", '0x6a9da2d710bb9b700acde7cb81f10f1ff8c89041': 'BlackRock USD Institutional Digital Liquidity Fund - I Class (BUIDL-I).\n\n- **Curator:** BlackRock / Securitize.\n- **Vault strategy:** I Class tokenised shares in the same BlackRock liquidity-fund product family as BUIDL, investing in cash, U.S. Treasury bills and repurchase agreements.\n- **Token structure:** BUIDL-I is a permissioned Securitize DSToken. Investors must complete issuer eligibility and compliance checks before subscribing, redeeming or transferring shares.\n- **Stable dollar share value:** BUIDL-I targets a USD 1 share value. Fund income accrues daily and is distributed monthly as newly issued shares, rather than increasing the unit price. The token is therefore modelled at an estimated USD 1 per share and the on-chain share price does not represent total return.\n- **Fund page:** [BlackRock BUIDL](https://www.blackrock.com/us/individual/products/buidl/).\n', '0x7712c34205737192402172409a8f7ccef8aa2aec': 'BlackRock USD Institutional Digital Liquidity Fund (BUIDL) on Ethereum.\n\n- **Curator:** BlackRock / Securitize.\n- **Vault strategy:** Tokenised shares in a fund that invests in cash, U.S. Treasury bills and repurchase agreements.\n- **Token structure:** BUIDL is a permissioned Securitize token. Investors must complete issuer eligibility and compliance checks before subscribing, redeeming or transferring shares.\n- **Stable dollar share value:** BUIDL targets a USD 1 share value. Fund income accrues daily and is distributed monthly as newly issued BUIDL shares to eligible holders, rather than increasing the unit price. The token is therefore modelled at an estimated USD 1 per share and the on-chain share price does not represent total return.\n- **Fund page:** [BlackRock BUIDL](https://www.blackrock.com/us/individual/products/buidl/).\n', '0x96f6ef951840721adbf46ac996b59e0235cb985c': "Ondo U.S. Dollar Yield (USDY).\n\n- **Curator:** Ondo Finance.\n- **Vault strategy:** A permissioned tokenised note backed, depending on issuance date, by short-term U.S. Treasuries, short-term Treasury ETF shares or bank demand deposits.\n- **NAV reporting:** USDY is an accumulating token: its redemption price increases as yield accrues. Historical NAV is read from Ondo's published on-chain Redemption Price Oracle.\n- **Investor access:** USDY is available to qualifying non-U.S. individual and institutional investors. Transfers, subscriptions and redemptions require issuer onboarding and compliance checks.\n- **Fund page:** [Ondo USDY](https://docs.ondo.finance/general-access-products/usdy/basics).\n", '0xa1cdab15bba75a80df4089cafba013e376957cf5': 'BlackRock USD Institutional Digital Liquidity Fund (BUIDL) on Optimism.\n\n- **Curator:** BlackRock / Securitize.\n- **Vault strategy:** Tokenised shares in a fund that invests in cash, U.S. Treasury bills and repurchase agreements.\n- **Token structure:** BUIDL is a permissioned Securitize token. Investors must complete issuer eligibility and compliance checks before subscribing, redeeming or transferring shares.\n- **Stable dollar share value:** BUIDL targets a USD 1 share value. Fund income accrues daily and is distributed monthly as newly issued BUIDL shares to eligible holders, rather than increasing the unit price. The token is therefore modelled at an estimated USD 1 per share and the on-chain share price does not represent total return.\n- **Fund page:** [BlackRock BUIDL](https://www.blackrock.com/us/individual/products/buidl/).\n', '0xa6525ae43edcd03dc08e775774dcabd3bb925872': 'BlackRock USD Institutional Digital Liquidity Fund (BUIDL) on Arbitrum.\n\n- **Curator:** BlackRock / Securitize.\n- **Vault strategy:** Tokenised shares in a fund that invests in cash, U.S. Treasury bills and repurchase agreements.\n- **Token structure:** BUIDL is a permissioned Securitize token. Investors must complete issuer eligibility and compliance checks before subscribing, redeeming or transferring shares.\n- **Stable dollar share value:** BUIDL targets a USD 1 share value. Fund income accrues daily and is distributed monthly as newly issued BUIDL shares to eligible holders, rather than increasing the unit price. The token is therefore modelled at an estimated USD 1 per share and the on-chain share price does not represent total return.\n- **Fund page:** [BlackRock BUIDL](https://www.blackrock.com/us/individual/products/buidl/).\n', '0xc0c61c29ef8beabc694987c93e5fe4af647042e7': "COSIMO X (COSX).\n\n- **Curator:** COSIMO digital / Securitize.\n- **Vault strategy:** Tokenised interests in COSIMO X, an evergreen venture fund that invests in digital-asset businesses.\n- **NAV reporting:** The value follows the fund's net asset value and changes with the underlying venture portfolio. This integration does not use a fixed share-price estimate.\n- **Investor access:** COSX is a permissioned Securitize offering for eligible investors; subscription, redemption and transfer terms follow the fund documentation.\n- **Fund page:** [COSIMO X](https://www.cosimodigital.com/asset-management/cosimo-x).\n", '0xcbeb19549054cc0a6257a77736fc78c367216ce7': "Spiko EU T-Bills Money Market Fund (EUTBL).\n\n- **Curator:** Spiko.\n- **Vault strategy:** Permissioned tokenised share in Spiko's Eurozone Treasury-bill money-market fund.\n- **Valuation:** Spiko's verified Chainlink-compatible Oracle publishes EUR NAV/share; fund holdings are off-chain.\n- **Dealing:** Subscriptions, transfers and redemptions require eligibility checks and issuer-operated servicing.\n- **Fees:** Spiko states a 0.25% annual management fee, reflected in NAV/share.\n", '0xda2ffa104356688e74d9340519b8c17f00d7752e': "Hamilton Lane SCOPE Securitize Tokenized Feeder Fund (HLSCOPE).\n\n- **Curator:** Hamilton Lane / Securitize.\n- **Vault strategy:** Tokenised feeder-fund interests providing access to Hamilton Lane's Senior Credit Opportunities Fund, an evergreen private-credit strategy focused on senior secured loans.\n- **NAV reporting:** The underlying strategy's valuations are determined periodically and the share value can change with its private-credit holdings. Historical NAV is read from RedStone's HLSCOPE fundamental feed rather than using a fixed share-price estimate.\n- **Investor access:** The fund is a permissioned Securitize offering for eligible investors; subscription and redemption terms follow the feeder-fund documentation.\n- **Fund page:** [Hamilton Lane Senior Credit Opportunities Fund](https://www.hamiltonlane.com/en-us/strategies/evergreen/global/senior-credit-opportunities-fund).\n", '0xdf1c8e71cbdf48af50b36f96ad2eb6f5094ba72a': 'ARK Venture Fund (ARKVX), tokenised on Ethereum through Securitize.\n\n- **Curator:** ARK Investment Management LLC (ARK Invest) manages the fund. Securitize Markets, LLC, an SEC-registered broker-dealer, distributes the tokenised shares, and Securitize provides the tokenisation and investor-onboarding infrastructure. The Bank of New York Mellon is the fund\'s custodian.\n- **Vault strategy:** The fund\'s objective is "to seek long-term growth of capital". It invests 20% to 90% of its assets in private companies and the remainder in public companies aligned with disruptive innovation, such as artificial intelligence, space, robotics, energy storage, fintech and genomics. On 2026-08-31 it held 74.15% in private companies and had USD 1.30 billion of net assets across all share classes. Its largest positions were SpaceX (7.54%), Kalshi (5.81%), Ayar Labs (5.65%), OpenAI (5.26%), Stripe (4.16%) and Anthropic (3.86%).\n- **Prospectus and regulatory status:** ARKVX is a closed-end interval fund registered under the Investment Company Act of 1940 (file 811-23778). Its current [prospectus and statement of additional information](https://www.sec.gov/Archives/edgar/data/1905088/000121390025102648/ea0260971-01_486bpos.htm) are dated 2025-10-28. On 2026-09-21 the SEC granted [amended exemptive relief](https://www.sec.gov/Archives/edgar/data/1905088/999999999726001524/filename1.pdf) (Release No. 36333) that permits a tokenised share class. The press describes the tokens as Class D shares held one-to-one at BNY Mellon, whereas the SEC application describes a separate Tokenized Class that is not yet registered in a prospectus amendment. Read the prospectus before investing.\n- **Fees:** The prospectus fee table for Class D shows a 2.75% management fee, 0.04% interest on borrowed funds, 0.69% other expenses (including a 0.15% distribution and servicing fee) and 0.01% acquired fund fees: 3.49% gross annual expenses. ARK waives or reimburses 0.59%, giving **2.90% net annual expenses for Class D**. The expense cap stays in place until the fund\'s Board approves its termination, and ARK cannot recoup waived amounts. According to the SEC application, the tokenised class has the same management fee and no sales load, but may bear its own other expenses, including blockchain gas costs, so its total expense ratio may differ. There is no performance fee or early repurchase fee. Press coverage of the Securitize route reports a **2% subscription fee**, deducted before units are priced at NAV; it is not in the SEC filings, but onchain settlement prices are consistent with it.\n- **Fund value promise:** The fund does not promise a stable or guaranteed share value. NAV is calculated each business day as of the NYSE close, and ARK, as the Rule 2a-5 valuation designee, fair-values the private holdings. NAV can therefore differ from the price at which those holdings could be sold, and can move sharply when private companies are revalued. The prospectus states that investors "should invest in the Fund only if they can sustain a complete loss". Shares are not bank deposits and are not FDIC-insured or bank-guaranteed.\n- **Liquidity and redemptions:** The fund\'s shares are not listed on an exchange, and the prospectus says no secondary market is expected. The SEC relief permits tokenised shares to trade on alternative trading systems, but ARK\'s tokenisation announcement still states that no secondary market is expected to develop. The fund\'s main liquidity route is its quarterly Rule 23c-3 repurchase offers, made in March, June, September and December, for 5% to 25% of outstanding shares at NAV; the fund expects to offer 5%. When tenders exceed the offer, repurchases are prorated, so a holder may not be able to sell all of their shares in a given quarter. The current offer\'s deadline is 2026-09-30 ([notice](https://www.sec.gov/Archives/edgar/data/1905088/000121390026096448/ea0304158-01_n23c3a.htm)).\n- **Distributions:** The fund intends to make annual distributions, reinvested in shares unless the holder opts out. How the tokenised class receives distributions is not yet documented.\n- **Token structure and eligibility:** ARKVX tokens are Securitize DSTokens. Only investors who have passed identity and eligibility checks can subscribe, redeem or receive transfers, and only into whitelisted wallets. Subscriptions are paid in USDC through Securitize\'s ERC-7540-style subscription vault. They are batched into generations that settle after NAV is struck; the first settlements came one to two business days apart. The prospectus sets a USD 500 minimum investment for Class D, and press coverage reports the same minimum for the tokenised route.\n- **Price data in this listing:** The share price is rebuilt from onchain deposit settlement events. Each settlement records a USDC price that includes the 2% subscription fee, so NAV/share is the settlement price multiplied by 0.98, rounded to cents. This matches ARK\'s published NAV for the business day before each settlement. The price updates only when deposits settle, so it lags the fund\'s own NAV by at least one business day and stays at the last settled value until deposits settle again. TVL covers onchain tokenised shares only, not the whole fund.\n- **Fund page:** [ARK Venture Fund](https://www.ark-funds.com/funds/arkvx).\n', '0xe4880249745eac5f1ed9d8f7df844792d560e750': "Spiko US T-Bills Money Market Fund (USTBL).\n\n- **Curator:** Spiko.\n- **Vault strategy:** Permissioned tokenised share in Spiko's U.S. Treasury-bill money-market fund.\n- **Valuation:** Spiko's verified Chainlink-compatible Oracle publishes NAV/share; fund holdings are off-chain.\n- **Dealing:** Subscriptions, transfers and redemptions require eligibility checks and issuer-operated servicing.\n- **Fees:** Spiko states a 0.25% annual management fee, reflected in NAV/share.\n"}
Vault-specific notes and classifications that do not exclude a vault from research datasets.
Unlike
VAULT_FLAGS_AND_NOTES, entries here do not make the vault “flagged” throughis_flagged_vault().
- PROTOCOL_NOTES: dict[str, str] = {'GMX': 'The vault performance approximates the single-sided USDC deposit value. GMX vaults hold exposure to all underlying tokens they market make', 'YieldBasis': "A [YieldBasis](https://yieldbasis.com/earn) yb-LP is a leveraged BTC or ETH liquidity-provider position. Its value rises and falls with the underlying asset.\n\nyb-LP yield comes primarily from [trading fees earned by the underlying Curve pool and YieldBasis LEVAMM](https://docs.yieldbasis.com/user/protocol/fee-mechanics), after protocol fee allocations and rebalancing costs.\n\nPerformance is shown in USD using the marginal amount returned by `preview_withdraw`, so the [Temporary Redemption Discount (TRD)](https://docs.yieldbasis.com/user/protocol/fundamental-value-redemption-value-and-trd) is part of the historical equity curve. [New shares mint at fundamental PPS, while exits use redemption value](https://docs.yieldbasis.com/dev/integration/deposit-withdraw); negative TRD therefore affects an immediate exit, not entry.\n\nThe entry and exit fee fields each model a 0.10% conversion between a generic USD stablecoin and the pool's BTC or ETH token. These endpoint costs sit outside the historical equity curve and exclude price impact, gas and MEV.\n"}
Protocol-wide descriptive notes that do not flag products as problematic.
- PLUTUS_HEDGE_WITHDRAWAL_NOTE = "#### Withdrawal restrictions\n\n**Withdrawals are not available on demand through every route.** [Plutus's withdrawal documentation](https://docs.plutus.fi/products/plvassets), reviewed on 2 November 2026, describes limited direct-redemption windows and a withdrawal queue that can be entered through its app at any time. Plutus states that queued requests can remain pending for up to seven days before processing; this is the protocol's stated timing, not a guaranteed payment deadline.\n\nA closed direct-redemption window does not by itself establish that the queue is closed. Trading Strategy's 30-day lockup figure is an estimate, not a guaranteed withdrawal deadline. Queued withdrawals are valued at the exchange rate when processed, and the tokens must then be claimed.\n\nThe app can also route exits through a liquidity pool. Such an exit depends on market liquidity and can incur slippage, meaning the proceeds may differ from the vault's quoted share value."
Plutus Hedge, Arbitrum; reviewed 2026-11-02 following a user report. The displayed closed direct-redemption route does not prove the queue is closed. The protocol documents queue processing of up to seven days. https://tradingstrategy.ai/vaults/plutus-hedge-token https://arbiscan.io/address/0x58bfc95a864e18e8f3041d2fcd3418f48393fe6a https://docs.plutus.fi/products/plvassets
- PROTOCOL_DESCRIPTIVE_FLAGS: dict[str, set[eth_defi.vault.flag.VaultFlag]] = {'D2 Finance': {VaultFlag.withdrawal_restrictions}}
Protocol-wide descriptive classifications; these do not hide vaults. D2 Finance, all chains; reviewed 2026-11-02 at the user’s request. The trading phase closes withdrawals until funds return, rather than proving permanent illiquidity. Preserve strategy notes and any manual bad flags. Example: HYPE++ (Arbitrum). https://tradingstrategy.ai/vaults/0x75288264fdfea8ce68e6d852696ab1ce2f3e5004 https://arbiscan.io/address/0x75288264fdfea8ce68e6d852696ab1ce2f3e5004 https://docs.d2.finance/docs/vault-design
- VAULT_DESCRIPTIVE_FLAGS: dict[str, set[eth_defi.vault.flag.VaultFlag]] = {'0x0324dd195d0cd53f9f07bee6a48ee7a20bad738f': {VaultFlag.tokenised_fund}, '0x08dcdbf7bade91ccd42cb2a4ea8e5d199d285957': {VaultFlag.forty_acres_withdrawal_risk}, '0x09864f52b035ae22ee739dfa5c748fa080d07bd8': {VaultFlag.tokenised_fund}, '0x124d00b1ce4453ffc5a5f65ce83af13a7709bac7': {VaultFlag.forty_acres_withdrawal_risk}, '0x17418038ecf73ba4026c4f428547bf099706f27b': {VaultFlag.tokenised_fund}, '0x1b19c19393e2d034d8ff31ff34c81252fcbbee92': {VaultFlag.tokenised_fund}, '0x1f41e42d0a9e3c0dd3ba15b527342783b43200a9': {VaultFlag.tokenised_fund}, '0x1fecf3d9d4fee7f2c02917a66028a48c6706c179': {VaultFlag.tokenised_fund}, '0x2255718832bc9fd3be1caf75084f4803da14ff01': {VaultFlag.tokenised_fund}, '0x252739487c1fa66eaeae7ced41d6358ab2a6bca9': {VaultFlag.tokenised_fund}, '0x2893ef551b6dd69f661ac00f11d93e5dc5dc0e99': {VaultFlag.tokenised_fund}, '0x2ba3fc5bdbbe7be2630fb71e759739625246bcd9': {VaultFlag.withdrawal_restrictions}, '0x43415eb6ff9db7e26a15b704e7a3edce97d31c4e': {VaultFlag.tokenised_fund}, '0x51c2d74017390cbbd30550179a16a1c28f7210fc': {VaultFlag.tokenised_fund}, '0x53fc82f14f009009b440a706e31c9021e1196a2f': {VaultFlag.tokenised_fund}, '0x58bfc95a864e18e8f3041d2fcd3418f48393fe6a': {VaultFlag.withdrawal_restrictions}, '0x5e17f6f450dcb0bc69b232ea554e224d7e88067a': {VaultFlag.tokenised_fund}, '0x671642ac281c760e34251d51bc9eef27026f3b7a': {VaultFlag.tokenised_fund}, '0x682ef9cc637ef56577092b29ae9275a629aae7db': {VaultFlag.tokenised_fund}, '0x6a7c6aa2b8b8a6a891de552bdeffa87c3f53bd46': {VaultFlag.tokenised_fund}, '0x6a9da2d710bb9b700acde7cb81f10f1ff8c89041': {VaultFlag.tokenised_fund}, '0x7712c34205737192402172409a8f7ccef8aa2aec': {VaultFlag.tokenised_fund}, '0x96f6ef951840721adbf46ac996b59e0235cb985c': {VaultFlag.tokenised_fund}, '0x99e9092bae6d4394e54034ecb1e45441678323b9': {VaultFlag.tokenised_fund}, '0xa1cdab15bba75a80df4089cafba013e376957cf5': {VaultFlag.tokenised_fund}, '0xa6525ae43edcd03dc08e775774dcabd3bb925872': {VaultFlag.tokenised_fund}, '0xb250c9e0f7be4cff13f94374c993ac445a1385fe': {VaultFlag.withdrawal_restrictions}, '0xb99b6df96d4d5448cc0a5b3e0ef7896df9507cf5': {VaultFlag.forty_acres_withdrawal_risk}, '0xc0485c4bafb594ae1457820fb6e5b67e8a04bcfd': {VaultFlag.forty_acres_withdrawal_risk}, '0xc0c61c29ef8beabc694987c93e5fe4af647042e7': {VaultFlag.tokenised_fund}, '0xcbeb19549054cc0a6257a77736fc78c367216ce7': {VaultFlag.tokenised_fund}, '0xda2ffa104356688e74d9340519b8c17f00d7752e': {VaultFlag.tokenised_fund}, '0xdf1c8e71cbdf48af50b36f96ad2eb6f5094ba72a': {VaultFlag.tokenised_fund}, '0xe4880249745eac5f1ed9d8f7df844792d560e750': {VaultFlag.tokenised_fund}}
Product classification flags that are descriptive rather than exclusionary.
- get_vault_special_flags(address, protocol_name=None)
Get all special vault flags.
Vault flags can be address-specific or protocol-wide. Protocol-wide flags are used when all vaults under a detected protocol should inherit the same manual warning, such as the Summer.fi illiquid flag added after the 2026-07-06 exploit reporting. Descriptive protocol flags qualify access without excluding vaults from the catalogue.
- Parameters
address (Union[str, eth_typing.evm.HexAddress]) –
- Return type
- get_notes(address, chain_id=None, protocol_name=None, *, include_defaults=True)
Get vault-specific notes.
Notes can come from the descriptive vault or protocol notes matrices, special vault flags or chain-wide defaults. Descriptive notes do not make a vault flagged.
- Parameters
address (Union[eth_typing.evm.HexAddress, str]) – Vault address (will be lowercased).
chain_id (Optional[int]) – Chain ID of the vault. Used to apply chain-wide default notes (e.g. all Hypercore vaults get
HYPERCORE_VAULT_NOTE).protocol_name (Optional[str]) – Optional protocol label for manual protocol warnings and default notes.
include_defaults (bool) – Include generic protocol and chain notes. Set to
Falsewhen checking for a current manual override before using a cached adapter strategy note.
- Returns
The maintained note, or
Nonewhen no applicable note is present.- Return type
- is_flagged_vault(address, protocol_name=None)
Is this vault flagged for any special reason?
Supports both EVM (
0x-prefixed) and non-EVM addresses (e.g. GRVTvlt:prefix).
- ROCKSTEADY_VAULT_NOTE = "#### Live execution and identity\n\nAI tools help research and test the strategy; **no AI makes live trading decisions**. The vault's original Hyperliquid description, which mentions Claude, was written at launch and cannot be edited. [nuwealth.ai/check](https://nuwealth.ai/check) lists the official vault and leader addresses. NuWealth.ai is separate from NuWealth at nuwealth.io, a Morpho lending business. Live figures are on [nuwealth.ai/record](https://nuwealth.ai/record).\n\n#### Performance methodology\n\nProfit and loss (PnL) results here differ from the method used on the Hyperliquid website. Instead of raw account PnL, the data is cleaned from deposit/redeem flow and reflects better the actual profitability of the underlying trading activity."
Agent RockSteady live-execution copy supplied by NuWealth on 2026-11-03.
The operator requested removal of the historical research section and test figures, retaining identity checks, live-record links and PnL methodology.
- K3_CAPITAL_CLUSTER_ILLIQUID = 'This vault is illiquid.'
User-reported illiquidity of the reviewed K3 Capital Cluster vault.
- APOSTRO_USDC_CORE_ILLIQUID = 'Apostro USDC Core is illiquid.'
User-reported illiquidity of Apostro’s Ethereum USDC Core vault.
- MAINSTREET_GREENHOUSE_USDC_ILLIQUID = 'Mainstreet Greenhouse USDC is illiquid.'
User-reported illiquidity of Mainstreet Greenhouse’s Sonic USDC vault.
- EDGE_ULTRAYIELD_USDC_ILLIQUID = 'EDGE UltraYield USDC is illiquid.'
User-reported illiquidity of UltraYield’s Gearbox USDC vault on Monad.
- BORROWABLE_USDC_SILOID_148_ILLIQUID = 'Borrowable USDC Deposit, SiloId: 148 is illiquid.'
User-reported illiquidity of Silo Finance’s Ethereum market 148 USDC vault.
- KING_RSS_UNSELLABLE_COLLATERAL = 'Lends against RSS elephanToken, which has no market and a custom oracle; the reported yield cannot be realised.'
King RSS USDC Vault lends against a token with no market, see its entry in
VAULT_FLAGS_AND_NOTES
- CREDIFI_UNSECURED_CREDIT_COLLATERAL = "Lends only against Credifi CREDIT, a single-holder bookkeeping token with no market priced at $1 by Credifi's own unverified oracle, so the loans are unsecured credit lines and the collateral cannot be valued or sold."
Credifi’s Euler pool lends against an unsellable credit-line token, see its entry in
VAULT_FLAGS_AND_NOTES
- STREAM_ELIXIR_EULER_BAD_DEBT = 'Fully borrowed against deUSD, sdeUSD or USDX collateral that collapsed with Stream Finance and Elixir in November 2025; the vault has no cash and withdrawals fail.'
Euler pools left with bad debt by the Stream Finance and Elixir collapse, see their entries in
VAULT_FLAGS_AND_NOTES
- STREAM_XUSD_DENOMINATED = 'Denominated in Stream Finance xUSD, which collapsed in November 2025 and trades near $0.02; the reported TVL counts xUSD at $1 and the vault has no borrowers.'
A vault denominated in the collapsed Stream Finance xUSD, see its entry in
VAULT_FLAGS_AND_NOTES
- TREVEE_PLUSD_XUSD_COLLATERAL = 'Lends its whole balance into an Euler pool that accepts collapsed Stream Finance xUSD as collateral; the vault has no redeemable liquidity and withdrawals fail.'
Trevee plUSD lends only into an Euler pool that takes collapsed Stream xUSD as collateral, see its entry in
VAULT_FLAGS_AND_NOTES
- REVIEW_NEEDED_OFF_MARKET_COLLATERAL = "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."
Under review: collateral without a liquid market, valued by its issuer; see the
review_neededentries inVAULT_FLAGS_AND_NOTES
- REVIEW_NEEDED_EXIT_LIQUIDITY = "Under review: the vault's lending pool has been almost fully borrowed at times, so withdrawals may have to wait for repayments. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the withdrawable liquidity before depositing."
Under review: the vault’s lending pool is often fully borrowed; see the
review_neededentries inVAULT_FLAGS_AND_NOTES
- REVIEW_NEEDED_DATA_QUALITY = 'Under review: the reported protocol or TVL of this vault may be inaccurate. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Verify the vault onchain before depositing.'
Under review: the vault’s reported protocol or TVL may be wrong; see the
review_neededentries inVAULT_FLAGS_AND_NOTES
- REVIEW_NEEDED_MANUAL = 'Under review: the Trading Strategy team is reviewing this vault. It is not blacklisted; check its positions and withdrawable liquidity before depositing.'
Under review: a review started by a person rather than the investability check; see the
review_neededentries inVAULT_FLAGS_AND_NOTES
- PROTOCOL_FLAGS_AND_NOTES: dict[str, tuple[eth_defi.vault.flag.VaultFlag | None, str]] = {'Summer.fi': (<VaultFlag.illiquid: 'illiquid'>, 'Summer.fi vault is illiquid')}
Protocol-wide flags and notes.
Unlike
VAULT_FLAGS_AND_NOTES, these entries apply to all vaults under a protocol name returned by vault detection.Summer.fi incident context: CryptoBriefing reported on 2026-07-06 that Blockaid flagged an active exploit against Summer.fi, with approx. $6M DAI drained from Ethereum contracts including 0x98C49e13bf99D7CAd8069faa2A370933EC9EcF17.
Source: https://cryptobriefing.com/blockaid-detects-6m-exploit-summer-fi/
- YIELDNEST_YNRWAX = 'The vault is currently ongoing of collateral liquidation process which may take long time. Do not deposit.'
YieldNest RWA MAX collateral liquidation warning.
- ETH_STRATEGY_ESPN = "ESPN (ETH Strategy Perpetual Note) is a legacy vault that bought long-dated ETH call options through ETH Strategy's convertible notes and sold shorter-dated call options on Derive. The [official ESPN documentation](https://docs.ethstrat.xyz/espn/espn), reviewed on 2 November 2026, marks it as superseded by EARN.\n\n#### Withdrawal restrictions\n\n**Direct withdrawals are controlled by the owner, and queued exits depend on available liquidity.** The documentation states that direct withdrawals are disabled by default and can be enabled or disabled by the owner. It separately describes a redemption queue for when instant liquidity is unavailable, so closed direct withdrawals do not mean every exit route is closed.\n\nThe documented queue processes requests in order and fixes their USDS value when queued. Shares awaiting withdrawal do not earn further ESPN yield. The documentation does not establish a guaranteed payment date for an individual request; holders should check the legacy vault and queue before relying on an exit."
Legacy ESPN withdrawal arrangements; official documentation reviewed 2026-11-02.
- ASSETO_IP_VAULT_NOTE = "[Soneium announced IP Vault with Asseto](https://x.com/soneium/status/2114999606400692706) on 27 October 2026, with opening scheduled for 28 October. The announcement described a $549 million underlying royalties fund; this figure is the fund's size as reported at launch, not the amount deposited in IP Vault.\n\nAsseto provides the tokenised exposure to Partners Group Diversified Royalties Opportunities Evergreen, a fund launched in 2025 and managed by Partners Group. The vault holds an interest in that fund, whose investments span entertainment, media and other royalty opportunities. Investors hold vault shares rather than directly owning individual songs, films or patents. The [underlying fund documentation](https://ipusd.gitbook.io/ipusd-docs/general/the-underlying-fund-and-strategy) states that Partners Group is not affiliated with ipUSD or IP Vault and does not endorse them. Published historical fund and strategy returns are separate from this new vault's performance; its advertised 5–9% annual target is an estimate.\n\nThe vault runs on Soneium, the Ethereum network developed by Sony Block Solutions Labs, a [joint venture of Sony Group and Startale](https://soneium.org/en/blog/introducing-soneium-by-sony-block-solutions-labs-for-the-future-of-web3/). This identifies the organisations behind the network, rather than a guarantee of the vault's investments.\n\nUsers subscribe with ipUSD and receive sIPUSD investment shares after settlement. Returns and losses are reflected in the value of each share. Holding the ipUSD stablecoin alone does not earn the vault's royalty returns. See the [product overview](https://ipusd.gitbook.io/ipusd-docs/general/understanding-ipusd-and-the-ip-vault).\n\nThe [withdrawal documentation](https://ipusd.gitbook.io/ipusd-docs/user-guide/exiting-the-ip-vault) describes instant withdrawals with a 5% protocol fee, subject to available capacity. **Standard withdrawals have no guaranteed settlement date** and wait in a queue without a protocol withdrawal fee. When the vault needs proceeds from the underlying fund, the wait can extend to several months; the documentation gives an example of approximately six months. The share value can change while waiting.\n\nIP Vault is still under verification. At Soneium block 29,979,401 on 27 October 2026, the live administrative delay was three minutes, while the [contract disclosures](https://ipusd.gitbook.io/ipusd-docs/technical-reference/contracts-roles-and-disclosures) stated three days. The administrator can change this delay, as shown in the [deployed timelock](https://soneium.blockscout.com/address/0x921530D47da54b3461704A804b4F9E686989B77F?tab=contract). Valuations can reuse older fund prices and include assets awaiting settlement. Governance, valuation and withdrawal arrangements remain under review; these observations precede the announced opening."
Asseto IP Vault launch context, product roles and outstanding manual review.
- VAULT_FLAGS_AND_NOTES: dict[str, tuple[eth_defi.vault.flag.VaultFlag | None, str]] = {'0x00c8a649c9837523ebb406ceb17a6378ab5c74cf': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x01864ae3c7d5f507cc4c24ca67b4cabbdda37ecd': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x018b86a893f57a632f90c4a8308353ac938adc01': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault's lending pool has been almost fully borrowed at times, so withdrawals may have to wait for repayments. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the withdrawable liquidity before depositing."), '0x01ba69727e2860b37bc1a2bd56999c1afb4c15d8': (<VaultFlag.illiquid: 'illiquid'>, 'The vault is currently ongoing of collateral liquidation process which may take long time. Do not deposit.'), '0x0319c82013cf676661f7bde576c6731869a93fc0': (<VaultFlag.illiquid: 'illiquid'>, 'Peapods vault is illiquid'), '0x049e8aab2d3ca187e47d74cf8171ad266f18643e': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x05c2e246156d37b39a825a25dd08d5589e3fd883': (<VaultFlag.abnormal_price_on_low_tvl: 'abnormal_price_on_low_tvl'>, 'Low-TVL vault with abnormal price behaviour'), '0x06a491e3efee37eb191d0434f54be6e42509f9d3': (<VaultFlag.illiquid: 'illiquid'>, 'USDN Wrapper is illiquid'), '0x06fd9d03b3d0f18e4919919b72d30c582f0a97e5': (<VaultFlag.illiquid: 'illiquid'>, 'Wrapped HLP is illiquid'), '0x09cea16a2563c2d7d807c86f5b8da760389b5915': (None, 'Early withdrawal within 7-day cooldown incurs a 20% liquidation penalty on the unstaked amount. Initiate cooldown and wait 7 days to withdraw without penalty.'), '0x0ab02dd08c1555d1a20c76a6ea30e3e36f3e06d4': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x0ddb1ea478f8ef0e22c7706d2903a41e94b1299b': (<VaultFlag.abnormal_price_on_low_tvl: 'abnormal_price_on_low_tvl'>, 'Low-TVL vault with abnormal price behaviour'), '0x0e297de4005883c757c9f09fdf7cf1363c20e626': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x0f6d1d626fd6284c6c1c1345f30996b89b879689': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x10019c629aa7c51e3853286b1c7894b17c257e00': (<VaultFlag.abnormal_tvl: 'abnormal_tvl'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x1320382143d98a80a0b247148a42dd2aa33d9c2d': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x138c289bb8b855cf271305c8bcf91dc31ba30194': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x153bd1abe60104bd46aa05a27fa12d1346d64a57': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0x17271da949bbd4713c7c599759e2bf30604fc8da': (<VaultFlag.illiquid: 'illiquid'>, 'Mainstreet Greenhouse USDC is illiquid.'), '0x172a687c397e315dbe56ed78ab347d7743d0d4fa': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x1905eddf5943ef6c92ccf1469bd40fc2cb4a77b0': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0x196f3c7443e940911ee2bb88e019fd71400349d9': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x19f233b2953275196e6343f17b76da098c478e21': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0x1ad2d433b5e95077eb2855eab854b72ea9ee9d6c': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x1de3ba67da79a81bc0c3922689c98550e4bd9bc2': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x20abecf84ce707c3650b4e8afcf7ea1e22bbcd0c': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x2137568666f12fc5a026f5430ae7194f1c1362ab': (<VaultFlag.illiquid: 'illiquid'>, 'Fully borrowed against deUSD, sdeUSD or USDX collateral that collapsed with Stream Finance and Elixir in November 2025; the vault has no cash and withdrawals fail.'), '0x21b92610c69c889b6ca972a973f637e9f10885b3': (<VaultFlag.abnormal_tvl: 'abnormal_tvl'>, 'The TVL on this vault is abnormal'), '0x21ed44c18c926c60092b1b2985e2c999421a5a69': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0x2433d6ac11193b4695d9ca73530de93c538ad18a': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x25b4dc5f96312c7083a58d80d8ecad6ecddbbdfb': (<VaultFlag.unofficial: 'unofficial'>, 'This appears to be a test vault and should not be shown to end users.'), '0x25f893276544d86a82b1ce407182836f45cb6673': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x27934d4879fc28a74703726edae15f757e45a48a': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x27968d36b937dcb26f33902fa489e5b228b104be': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x2ba39e5388ac6c702cb29aea78d52aa66832f1ee': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x2ba3fc5bdbbe7be2630fb71e759739625246bcd9': (<VaultFlag.review_needed: 'review_needed'>, "[Soneium announced IP Vault with Asseto](https://x.com/soneium/status/2114999606400692706) on 27 October 2026, with opening scheduled for 28 October. The announcement described a $549 million underlying royalties fund; this figure is the fund's size as reported at launch, not the amount deposited in IP Vault.\n\nAsseto provides the tokenised exposure to Partners Group Diversified Royalties Opportunities Evergreen, a fund launched in 2025 and managed by Partners Group. The vault holds an interest in that fund, whose investments span entertainment, media and other royalty opportunities. Investors hold vault shares rather than directly owning individual songs, films or patents. The [underlying fund documentation](https://ipusd.gitbook.io/ipusd-docs/general/the-underlying-fund-and-strategy) states that Partners Group is not affiliated with ipUSD or IP Vault and does not endorse them. Published historical fund and strategy returns are separate from this new vault's performance; its advertised 5–9% annual target is an estimate.\n\nThe vault runs on Soneium, the Ethereum network developed by Sony Block Solutions Labs, a [joint venture of Sony Group and Startale](https://soneium.org/en/blog/introducing-soneium-by-sony-block-solutions-labs-for-the-future-of-web3/). This identifies the organisations behind the network, rather than a guarantee of the vault's investments.\n\nUsers subscribe with ipUSD and receive sIPUSD investment shares after settlement. Returns and losses are reflected in the value of each share. Holding the ipUSD stablecoin alone does not earn the vault's royalty returns. See the [product overview](https://ipusd.gitbook.io/ipusd-docs/general/understanding-ipusd-and-the-ip-vault).\n\nThe [withdrawal documentation](https://ipusd.gitbook.io/ipusd-docs/user-guide/exiting-the-ip-vault) describes instant withdrawals with a 5% protocol fee, subject to available capacity. **Standard withdrawals have no guaranteed settlement date** and wait in a queue without a protocol withdrawal fee. When the vault needs proceeds from the underlying fund, the wait can extend to several months; the documentation gives an example of approximately six months. The share value can change while waiting.\n\nIP Vault is still under verification. At Soneium block 29,979,401 on 27 October 2026, the live administrative delay was three minutes, while the [contract disclosures](https://ipusd.gitbook.io/ipusd-docs/technical-reference/contracts-roles-and-disclosures) stated three days. The administrator can change this delay, as shown in the [deployed timelock](https://soneium.blockscout.com/address/0x921530D47da54b3461704A804b4F9E686989B77F?tab=contract). Valuations can reuse older fund prices and include assets awaiting settlement. Governance, valuation and withdrawal arrangements remain under review; these observations precede the announced opening."), '0x2c910f67dbf81099e6f8e126e7265d7595dc20ad': (<VaultFlag.illiquid: 'illiquid'>, 'hyUSD₮0 (hwHLP) vault is illiquid'), '0x2e5109aa82a4ebcc776e89abeb68f5d0b91ccea1': (<VaultFlag.illiquid: 'illiquid'>, 'Peapods vault is illiquid'), '0x2efd686fe4023b683b67fe0b59a0f941ab381d84': (<VaultFlag.illiquid: 'illiquid'>, 'Peapods vault is illiquid'), '0x2f5dc399b1e31f9808d1ef1256917abd2447c74f': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x3014ed70b39be395e1a5eb8ab4c4b8a5378e6522': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x3094b241aade60f91f1c82b0628a10d9501462f9': (<VaultFlag.illiquid: 'illiquid'>, 'Mo Earn Max USDC is illiquid'), '0x322e1d5384aa4ed66aeca770b95686271de61dc3': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x332e81368daec705612ff06b3a80b10ae1e5f110': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x36585e7ae4b8a422135618a2c113b8b516067e7a': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x36e2aa296e798ca6262dc5fad5f5660e638d5402': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x3710b212b39477df2deaadcf16ef56c384a3d142': (<VaultFlag.abnormal_price_on_low_tvl: 'abnormal_price_on_low_tvl'>, 'Low-TVL vault with abnormal price behaviour'), '0x3799251bd81925cfccf2992f10af27a4e62bf3f7': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x3839a0dd920463eb5d8231efe4d8c5edc44145ec': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0x385021b412c9d2dd70823f8b5ff353028a039806': (<VaultFlag.illiquid: 'illiquid'>, 'Lends its whole balance into an Euler pool that accepts collapsed Stream Finance xUSD as collateral; the vault has no redeemable liquidity and withdrawals fail.'), '0x391b3f70e254d582588b27e97e48d1cfcdf0be7e': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x39c0aec5738ed939876245224afc7e09c8480a52': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x39de0f00189306062d79edec6dca5bb6bfd108f9': (<VaultFlag.illiquid: 'illiquid'>, 'Fully borrowed against deUSD, sdeUSD or USDX collateral that collapsed with Stream Finance and Elixir in November 2025; the vault has no cash and withdrawals fail.'), '0x3a87cf9af4d21778dad1ce7d0bf053f4b8f2631f': (<VaultFlag.illiquid: 'illiquid'>, 'Peapods vault is illiquid'), '0x3bb60eca398f480f4b7756600c04309de486232e': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x3ccff8c929b497c1ff96592b8ff592b45963e732': (<VaultFlag.proprietary_trading: 'proprietary_trading'>, 'Foxify offers perp DEX and funding for proprietary trades. This vault is associated with this activity, but it is not publicly described how the vault works.'), '0x3d7b0c3997e48fa3fc96cd057d1fb4e5f891835b': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x3f2de801629116a83b9734bb72012a554e01cfc1': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x3f604074f3f12ff70c29e6bcc9232c707dc4d970': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x4739e2c293bdcd835829aa7c5d7fbdee93565d1a': (None, 'Abnormal high yield due to Pendle looping - more info here https://x.com/ssmccul/status/2006016219275501936'), '0x481d4909d7ca2eb27c4975f08dce07dbef0d3fa7': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x4935fadb17df859667cc4f7bfe6a8cb24f86f8d0': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x49c5733d71511a78a3e12925ea832f49031c97e9': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x4b5c90dc6bc08a10a24487726e614e9d148362e1': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x4c1aeda9b43efcf1da1d1755b18802aabe90f61e': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0x4c8e1656e042a206eef7e8fcff99bac667e4623e': (<VaultFlag.abnormal_price_on_low_tvl: 'abnormal_price_on_low_tvl'>, 'Low-TVL vault with abnormal price behaviour'), '0x4dc1ce9b9f9ef00c144bfad305f16c62293dc0e8': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x4f04cb32688ea1954e53c85b846597881ebe9582': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x4f55e28d36b30a638c3aa1d5cbf9c4ccb3831506': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid. Share price chart has abnormal high returns while deposits are still enabled.'), '0x5103d3ee6d599984609daaadd3a439152cc0c392': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x53ce611b5477997972dad83585a0ad5cb56f433b': (<VaultFlag.illiquid: 'illiquid'>, 'Peapods vault is illiquid'), '0x5424293637cc59ad7580ad1cac46e28d4801a587': (<VaultFlag.abnormal_share_price: 'abnormal_share_price'>, 'Share price chart has abnormal high returns and the vault protocol is not yet identified.'), '0x5435bc53f2c61298167cdb11cdf0db2bfa259ca0': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0x55555815a5595991c3a0ff119b59aef6c8b55555': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x57c582346b7d49a46af3745a8278917d1c1311b8': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x58e0f0b81576f23c5f002d949b2bb11a5d2714d6': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0x5954ce6671d97d24b782920ddcdbb4b1e63ab2de': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x5a733b25a17dc0f26b862ca9e32b439801b1a8c7': (<VaultFlag.abnormal_share_price: 'abnormal_share_price'>, 'This vault has experienced irregular share price resets (epoch resets) that distort the performance metrics and make the equity curve misleading.'), '0x5b56f90340dbaa6a8693dadb141d620f0e154fe6': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x5b63bd1574d40d98c6967047f0323cc5d4895775': (<VaultFlag.abnormal_price_on_low_tvl: 'abnormal_price_on_low_tvl'>, 'Low-TVL vault with abnormal price behaviour'), '0x5eb03d0fcfd3860be03b81a1ab3d46db3315202a': (<VaultFlag.illiquid: 'illiquid'>, 'Peapods vault is illiquid'), '0x6030ad53d90ec2fb67f3805794dbb3fa5fd6eb64': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x606fe9a70338e798a292ca22c1f28c829f24048e': (<VaultFlag.illiquid: 'illiquid'>, 'Borrowable USDC Deposit, SiloId: 142 is illiquid'), '0x61e175f91f017987c421e0731d6baa0594eca6eb': (<VaultFlag.illiquid: 'illiquid'>, 'Greenhouse vault is illiquid'), '0x61ffbead1d4dc9ffba35eb16fd6cadee9b37b2aa': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x64167cd42859f64cff2aa4b63c3175ccef9659dd': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x64fcfd84109768136a687ed9614a9d0b8c6910e2': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x66be42a0bda425a8c3b3c2cf4f4cb9edfcaed21d': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x672b77f0538b53dc117c9ddfeb7377a678d321a6': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x683dbc88b371ae48962b56e36e5a0c34e3ad4caf': (<VaultFlag.malicious: 'malicious'>, 'This vault is reported as malicious, and may have some sort of mechanism to steal funds.'), '0x694e47afd14a64661a04eee674fb331bcdef3737': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x69a93dbab609266af96f05658b2e22d020de2e19': (<VaultFlag.illiquid: 'illiquid'>, 'Fully borrowed against deUSD, sdeUSD or USDX collateral that collapsed with Stream Finance and Elixir in November 2025; the vault has no cash and withdrawals fail.'), '0x6abbda8243f4bf130a97beae759a6e91522520b9': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x6b343f7b797f1488aa48c49d540690f2b2c89751': (<VaultFlag.illiquid: 'illiquid'>, 'EDGE UltraYield USDC is illiquid.'), '0x6c09bfdc1df45d6c4ff78dc9f1c13af29eb335d4': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x6c7150b9eb23ee563b28905791ad5b6c9cb6b21a': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x6d2981ff9b8d7edbb7604de7a65bac8694ac849f': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x6f6046e59501e484152d46045ba5eecf1cab8935': (<VaultFlag.irregular_reporting: 'irregular_reporting'>, 'The share price of this vault is updated too irregularly onchain. This makes it difficult to compare it against other vaults. Having no onchain transparency to the value of the vault poses a risk to users.'), '0x6fc9b3a52944a577cd8971fd8fde0819001bc595': (<VaultFlag.illiquid: 'illiquid'>, 'This vault is illiquid.'), '0x70c329d6f06b33fa6b75e335b35168b1de84217b': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x7184bea7743ccfbe390f9cd830095a13ef867941': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x7193794ec82f527efb618ac50c078d348ecba4b6': (<VaultFlag.illiquid: 'illiquid'>, 'Etherealm USDC is illiquid'), '0x74847d0d124ce5c89ca8f4e7547aecd09e86b2e0': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0x777791c4d6dc2ce140d00d2828a7c93503c67777': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0x7786dba2a1f7a4b0b7abf0962c449154c4f2b8ac': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x7a26c6c1628c86788526efb81f37a2ffac243a98': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x7a6e3635694952dc00f6ba4d4ad1a7b892028789': (<VaultFlag.irregular_reporting: 'irregular_reporting'>, 'The share price of this vault is updated too irregularly onchain. This makes it difficult to compare it against other vaults. Having no onchain transparency to the value of the vault poses a risk to users.'), '0x7aca67a6856bf532a7b2dea9b20253f08bc9a85a': (<VaultFlag.abnormal_price_on_low_tvl: 'abnormal_price_on_low_tvl'>, 'Low-TVL vault with abnormal price behaviour'), '0x7db7bcd6746f4dcfa2fdcdd80c1c313cc371f166': (<VaultFlag.unofficial: 'unofficial'>, 'This appears to be a test vault and should not be shown to end users.'), '0x7e88ae5e50474a48dea4c42a634aa7485e7caa62': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x7fab04ff2717d9a6b71a51c56c29697179597d40': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault's lending pool has been almost fully borrowed at times, so withdrawals may have to wait for repayments. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the withdrawable liquidity before depositing."), '0x8092c20351cf4048b464df2144dc8a4dd49ce71d': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x82c4c641ccc38719ae1f0fbd16a64808d838fdfd': (<VaultFlag.illiquid: 'illiquid'>, 'Steakhouse Prime AUSD vault is illiquid'), '0x8399c8fc273bd165c346af74a02e65f10e4fd78f': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x85968bf0f1f110c707fef10a59f80118f349c058': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x87caed1e19da46098e710b69cae33e74c146bacd': (<VaultFlag.illiquid: 'illiquid'>, 'Peapods vault is illiquid'), '0x887d57a509070a0843c6418eb5cffc090dcbbe95': (<VaultFlag.illiquid: 'illiquid'>, 'All ZeroLend vaults on Superform are in withdraw-only mode. Support could not give an answer on why.'), '0x888239ffa9a0613f9142c808aa9f7d1948a14f75': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x890a5122aa1da30fec4286de7904ff808f0bd74a': (None, 'Main Street Market related products were wiped out in Oct 10th event https://x.com/Main_St_Finance/status/1976972055951147194'), '0x8977aafd34323fa046f51f3c913a30caa7dd17db': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0x8adb906421f65c27155f44f1829ca1e5b024c3f6': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x8bce54605f56f2f711d9b60bdf2433aae8a14aa5': (<VaultFlag.abnormal_tvl: 'abnormal_tvl'>, 'The TVL on this vault is abnormal'), '0x8f23da78e3f31ab5deb75dc3282198bed630ffde': (<VaultFlag.illiquid: 'illiquid'>, 'Fully borrowed against deUSD, sdeUSD or USDX collateral that collapsed with Stream Finance and Elixir in November 2025; the vault has no cash and withdrawals fail.'), '0x92fbb58342164546325602588599b05802c69bbe': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x93c8201c35666f9af8b3b943bad67b42ad0159a1': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x93fec6639717b6215a48e5a72a162c50dcc40d68': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0x942bed98560e9b2aa0d4ec76bbda7a7e55f6b2d6': (<VaultFlag.illiquid: 'illiquid'>, 'All ZeroLend vaults on Superform are in withdraw-only mode. Support could not give an answer on why.'), '0x94643e86aa5e38ddac6c7791c1297f4e40cd96c1': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x98281466abcf48eaad8c6e22dedd18a3426a93b4': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x99347d5f70d3838763f6bddcf80304c8aa953b57': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0x9a1bf5365edbb99c2c61ca6d9ffad0b705acfc6f': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x9c4d4800b489d217724155399cd64d07eae603f3': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x9ccf74e64922d8a48b87aa4200b7c27b2b1d860a': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0x9deb2b3593eb4e1838b233d386a9358448f753e3': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xa1627a0e1d0ebca9326d2219b84df0c600bed4b1': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xa446938b0204aa4055cdfed68ddf0e0d1bab3e9e': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0xa45189636c04388adbb4d865100dd155e55682ec': (<VaultFlag.illiquid: 'illiquid'>, 'Fully borrowed against deUSD, sdeUSD or USDX collateral that collapsed with Stream Finance and Elixir in November 2025; the vault has no cash and withdrawals fail.'), '0xa5eed1615cd883dd6883ca3a385f525e3beb4e79': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xa6f6887ed116f3c41497a837a0319264a2eef3fa': (<VaultFlag.illiquid: 'illiquid'>, 'Borrowable USDC Deposit, SiloId: 148 is illiquid.'), '0xa9a4bd976dbcfc2b89f554467ac85e2c758e2618': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xa9c251f8304b1b3fc2b9e8fcae78d94eff82ac66': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xaba9d2d4b6b93c3dc8976d8eb0690cca56431fe4': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xac69cfe6bb269cebf8ab4764d7e678c3658b99f2': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xacb7432a4bb15402ce2afe0a7c9d5b738604f6f9': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xad755c6c31515aef8d2f830767d846774f7e9ea9': (<VaultFlag.malicious: 'malicious'>, 'This vault is reported as malicious, and may have some sort of mechanism to steal funds.'), '0xae79b0d94e1c53cd2e8160899b8d58ec138d341f': (<VaultFlag.illiquid: 'illiquid'>, 'Borrowable USDC Deposit, SiloId: 111 is illiquid'), '0xaedf7d5f3112552e110e5f9d08c9997adce0b78d': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xaf293898269ac7f366d0e05052b5fdfee8c8052c': (<VaultFlag.irregular_reporting: 'irregular_reporting'>, 'The share price of this vault is updated too irregularly onchain. This makes it difficult to compare it against other vaults. Having no onchain transparency to the value of the vault poses a risk to users.'), '0xaf68a0f0d2d4f82e671578ae6dd6a99de0e84cc6': (<VaultFlag.malicious: 'malicious'>, 'This vault is reported as malicious, and may have some sort of mechanism to steal funds.'), '0xb1412442aa998950f2f652667d5eba35fe66e43f': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xb250c9e0f7be4cff13f94374c993ac445a1385fe': (<VaultFlag.long_duration: 'long_duration'>, "ESPN (ETH Strategy Perpetual Note) is a legacy vault that bought long-dated ETH call options through ETH Strategy's convertible notes and sold shorter-dated call options on Derive. The [official ESPN documentation](https://docs.ethstrat.xyz/espn/espn), reviewed on 2 November 2026, marks it as superseded by EARN.\n\n#### Withdrawal restrictions\n\n**Direct withdrawals are controlled by the owner, and queued exits depend on available liquidity.** The documentation states that direct withdrawals are disabled by default and can be enabled or disabled by the owner. It separately describes a redemption queue for when instant liquidity is unavailable, so closed direct withdrawals do not mean every exit route is closed.\n\nThe documented queue processes requests in order and fixes their USDS value when queued. Shares awaiting withdrawal do not earn further ESPN yield. The documentation does not establish a guaranteed payment date for an individual request; holders should check the legacy vault and queue before relying on an exit."), '0xb38d431e932fea77d1df0ae0dfe4400c97e597b8': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xb45ad160634c528cc3d2926d9807104fa3157305': (None, 'An attacker used ~$30M in flash loans to inflate the sDOLA exchange rate (from ~1.188 to ~1.358 per DOLA) by donating assets directly into the vault. This triggered faulty oracle pricing on LlamaLend, force-liquidating ~27 user positions (DOLA-backed leveraged longs) and letting the attacker profit ~$240K in liquidation rewards.'), '0xb4a2fc3adaf3bfa8fcba2a6fdaa200de106b8825': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0xb5526491742fee67e9e0d0d8c619a95d422fd398': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xb57320b253363bf749d5ce6e66592fdc74cce6f7': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault's lending pool has been almost fully borrowed at times, so withdrawals may have to wait for repayments. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the withdrawable liquidity before depositing."), '0xb5a30e1fa2cf3c8dea882124b3ab5a47a27c5dd2': (<VaultFlag.review_needed: 'review_needed'>, 'Under review: the reported protocol or TVL of this vault may be inaccurate. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Verify the vault onchain before depositing.'), '0xb7305d968ecd8a23a13ec01927e3f9588c7653b5': (<VaultFlag.illiquid: 'illiquid'>, 'Etherealm USDC is illiquid'), '0xb739ae19620f7ecb4fb84727f205453aa5bc1ad2': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xb8a14b03900828f863aedd9dd905363863bc31f4': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xbcf722b41ff6f2f932721582680ed0116292cc28': (<VaultFlag.abnormal_tvl: 'abnormal_tvl'>, 'The TVL on this vault is abnormal'), '0xbed7c02887efd6b5eb9a547ac1a4d5e582791647': (<VaultFlag.abnormal_share_price: 'abnormal_share_price'>, 'Share price chart has abnormal high returns and the vault protocol is not yet identified.'), '0xbeef0f82e269760429be6255fa00821b7e4b592a': (<VaultFlag.review_needed: 'review_needed'>, 'Under review: the reported protocol or TVL of this vault may be inaccurate. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Verify the vault onchain before depositing.'), '0xc1ec6d26902949bf6cbb0c9859dbead1e87fb243': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xc2810eb57526df869049fbf4c541791a3255d24c': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xc30c60de46dec551b96326cbd05592c9245773ef': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0xc38421e5577250eba177bc5bc832e747bea13ee0': (None, 'Early withdrawal within 7-day cooldown incurs a 20% liquidation penalty on the unstaked amount. Initiate cooldown and wait 7 days to withdraw without penalty.'), '0xc41f2ba7102e9f9f2d603eb951f955ae205ed272': (<VaultFlag.illiquid: 'illiquid'>, 'Fully borrowed against deUSD, sdeUSD or USDX collateral that collapsed with Stream Finance and Elixir in November 2025; the vault has no cash and withdrawals fail.'), '0xc42d337861878baa4dc820d9e6b6c667c2b57e8a': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0xc5e7d3f76a03006540f17668a0267c668ffb5b75': (<VaultFlag.illiquid: 'illiquid'>, 'Liquity V2 WETH Stability Pool vault is illiquid'), '0xc6137bc1378c2396051e06417704d31615f77cb9': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault's lending pool has been almost fully borrowed at times, so withdrawals may have to wait for repayments. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the withdrawable liquidity before depositing."), '0xc7990369da608c2f4903715e3bd22f2970536c29': (None, 'Main Street Market related products were wiped out in Oct 10th event https://x.com/Main_St_Finance/status/1976972055951147194'), '0xc9f01b5c6048b064e6d925d1c2d7206d4feef8a3': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xcbc9b61177444a793b85442d3a953b90f6170b7d': (<VaultFlag.illiquid: 'illiquid'>, 'Resolv vault is illiquid'), '0xcca902f2d3d265151f123d8ce8fdac38ba9745ed': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0xce0b790ae0d8cf91e01f3fb69025e14569b574f3': (<VaultFlag.misleading_valuation: 'misleading_valuation'>, 'This vault incorrectly reported its share price in the past, due to misleading accounting'), '0xce6ab1c71981e79cd30052c521c162674251018a': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xcf450973dee1ee41cb708496bf73f34324180035': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0xd0ee0cf300dfb598270cd7f4d0c6e0d8f6e13f29': (<VaultFlag.controversial: 'controversial'>, 'Based on community reports, this vault is controversial. Do not deposit, unless the issue is resolved and full transparency becomes available.'), '0xd144eaff17b0308a5154444907781382398aac61': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xd1468af648565f11393e4033cb0cd270b62495c9': (<VaultFlag.abnormal_tvl: 'abnormal_tvl'>, 'Vault is not known, not listed on the website of the protocol'), '0xd24e4a98b5fd90ff21a9cc5e2c1254de8084cd81': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xd5428b889621eee8060fc105aa0ab0fa2e344468': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xd6e094faf9585757f879067ce79c7f6b3c8e4fb0': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xd80c3e98c9093b41645c07c2b6d956136f89559b': (<VaultFlag.illiquid: 'illiquid'>, 'VI-USDC-QA_G is illiquid.'), '0xd87598dd895de1b7fb2ba6af91b152f26baf7bee': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xda14a41dbda731f03a94cb722191639dd22b35b2': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xda2f1b3cba732d779cff56f0cf9d3bc8aea6cd8d': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xdc1ab820c92735e7a5e48f10fa3d8424ec47a93e': (<VaultFlag.illiquid: 'illiquid'>, 'Borrowable USDC Deposit, SiloId: 145 is illiquid'), '0xdebdab749330bb976fd10dc52f9a452aaf029028': (<VaultFlag.depegged_denomination_token: 'depegged_denomination_token'>, 'Denominated in Stream Finance xUSD, which collapsed in November 2025 and trades near $0.02; the reported TVL counts xUSD at $1 and the vault has no borrowers.'), '0xe0345f66318f482acccd67244a921c7fdc410957': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xe0fc62e685e2b3183b4b88b1fe674cfec55a63f7': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xe1a62fdcc6666847d5ea752634e45e134b2f824b': (<VaultFlag.unofficial: 'unofficial'>, "This vault is missing in the protocol's primary website and cannot be verified."), '0xe1bca19baa63894d374578320551633320436523': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0xe296ee7f83d1d95b3f7827ff1d08fe1e4cf09d8d': (<VaultFlag.illiquid: 'illiquid'>, 'Vault not actively listed on any known website. Likely unmaintained. You may lose your deposits.'), '0xe3ba8f17fe581dd473e6699cfad04502998a57c7': (<VaultFlag.malicious: 'malicious'>, 'This vault is reported as malicious, and may have some sort of mechanism to steal funds.'), '0xe83522f0882493844c48add97ef03281040e3d2d': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xeaa3b922e9febca37d1c02d2142a59595094c605': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xeae33e9f53fc405f834d4678e6c07a2523b2126e': (<VaultFlag.illiquid: 'illiquid'>, 'Odins Reserve vault is illiquid'), '0xeaf77df5d03306bca4ee8b58b6821e6aca76309d': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xed9278c5188f37670b33ef3b00729e38260cd5d5': (<VaultFlag.illiquid: 'illiquid'>, 'Apostro USDC Frontier is illiquid'), '0xed9777944a2fb32504a410d23f246463b3f40908': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xeee75954eded526ef98a0cecc027beee4586315e': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xf06bedaf951aaff253acaa05e391adfbdd6bfbe0': (<VaultFlag.illiquid: 'illiquid'>, 'Summer.fi vault is illiquid'), '0xf0795c47fa58d00f5f77f4d5c01f31ee891e21b4': (<VaultFlag.illiquid: 'illiquid'>, 'Resolv USDC vault is illiquid'), '0xf115c134c23c7a05fbd489a8be3116ebf54b0d9f': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xf1ba8c5ca5ab011d06f31e64dad313d204acb9eb': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xf26c68e6d26f725858e7cc353ee30e43adf0b732': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault lends against collateral without a liquid DEX market, valued by its issuer's NAV or oracle. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the collateral and the withdrawable liquidity before depositing."), '0xf675fbe777e992f5d5d84adf41161dc0f20104a6': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xf6bc16b79c469b94cdd25f3e2334dd4fee47a581': (<VaultFlag.illiquid: 'illiquid'>, 'Main Street Market related products were wiped out in Oct 10th event https://x.com/Main_St_Finance/status/1976972055951147194'), '0xf6e1443e3f70724cec8c0a779c7c35a8dcda928b': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xf6f87073cf8929c206a77b0694619dc776f89885': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xf75ae954d30217b4ee70dbfb33f04162aa3cf260': (<VaultFlag.abnormal_price_on_low_tvl: 'abnormal_price_on_low_tvl'>, 'Low-TVL vault with abnormal price behaviour'), '0xf7ede5332c6b4a235be4aa3c019222cfe72e984f': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xf80c0529bd94c773844e459853cd91b9263dd525': (<VaultFlag.misleading_valuation: 'misleading_valuation'>, 'Lends against RSS elephanToken, which has no market and a custom oracle; the reported yield cannot be realised.'), '0xf868a2b30854fe13e26f7ab7a92609ccb6b9c0e1': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault's lending pool has been almost fully borrowed at times, so withdrawals may have to wait for repayments. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the withdrawable liquidity before depositing."), '0xf90cf999de728a582e154f926876b70e93a747b7': (<VaultFlag.illiquid: 'illiquid'>, 'Vault likely illiquid due to Stream xUSD exposure issues. You may lose all of your deposits.'), '0xf91a9a1c782a1c11b627f6e576d92c7d72cdd4af': (<VaultFlag.subvault: 'subvault'>, 'This vault is likely not intended to be directly exposed to the end users. It may be used by other vaults as a part of the strategy mix and has erratic TVL.'), '0xf9bb65e113418292d1a3555515fbd64637a0be18': (<VaultFlag.review_needed: 'review_needed'>, "Under review: the vault's lending pool has been almost fully borrowed at times, so withdrawals may have to wait for repayments. Our automated investability checks have not reached a consistent verdict, so the vault is not blacklisted. Check the withdrawable liquidity before depositing."), '0xfa17f7aadbfac2c5d3c8125555404c1ae17df853': (<VaultFlag.illiquid: 'illiquid'>, 'Clearstar Yield USDC is illiquid'), '0xfb7cef5cfdba99bd1f7c0350575980470dad3e6f': (<VaultFlag.broken: 'broken'>, "Onchain metrics coming out of this vault do not make sense and it's likely the smart contract is broken."), '0xff5b00730ba463994fe0dbf574c538da258bc2ca': (<VaultFlag.illiquid: 'illiquid'>, 'Apostro USDC Core is illiquid.'), '0xffaabc0bfbcec0355129e7653c6f1923ec533b66': (<VaultFlag.misleading_valuation: 'misleading_valuation'>, "Lends only against Credifi CREDIT, a single-holder bookkeeping token with no market priced at $1 by Credifi's own unverified oracle, so the loans are unsecured credit lines and the collateral cannot be valued or sold."), 'lighter-pool-281474976710654': (None, "LLP (Lighter Liquidity Provider) is the protocol's community-owned market-making pool providing liquidity and handling liquidations on Lighter DEX.\n\nDepositing into LLP requires staking LIT tokens at a 1:10 ratio (1 LIT staked per 10 USDC deposited). Staking ≥100 LIT waives withdrawal and transfer fees. If staked LIT does not fully cover the deposit, up to 3% or 100 USDC of the uncovered amount is returned daily to the user's balance.\n\nWithdrawal cooldown is 5 minutes. Operator fee is 0%."), 'lighter-pool-robinhood-281474976710654': (None, "Lighter Liquidity Provider (LLP) on Robinhood Chain is the USDG-denominated protocol insurance fund for Robinhood Wallet perpetual futures.\n\nDuring partial liquidations, the protocol can send a liquidation fee of up to 1% to LLP. During full liquidations, LLP can take over the remaining positions. The pool therefore carries market-making and liquidation risk and is not equivalent to holding USDG directly.\n\nRobinhood's public documentation does not state that the Ethereum LLP's LIT staking access rule applies to this deployment, so the Ethereum USDC/LIT requirements are intentionally not repeated here.\n\n[Robinhood Wallet perpetual futures](https://robinhood.com/us/en/support/articles/robinhood-wallet-perpetual-futures/)."), 'vlt:34dtzyg6lhkgm49je5aabi9tebw': (None, 'GLP deposit limits are tied to your lifetime trading volume on GRVT. Each tier sets a maximum percentage of account equity and an absolute USDT cap:\n\n| Trading volume | % of equity | Max USDT |\n|---|---|---|\n| $0–$10k | 10% | $10k |\n| $10k–$1m | 20% | $20k |\n| $1m–$10m | 30% | $50k |\n| $10m–$100m | 40% | $100k |\n| $100m–$250m | 50% | $250k |\n| $250m+ | 60% | $500k |\n\nThe system checks your total equity meets the minimum for your tier when you attempt withdrawals, transfers, or redemption cancellations — if it does not, the action is blocked. Redemptions take 2–7 days.\n\n[More details on the GLP programme](https://help.grvt.io/en/articles/12760192-grvt-liquidity-provider-glp).\n')}
Vault-specific flags and notes.
Most entries identify vaults that should not be used. Some entries, such as tokenised funds, are descriptive classifications and are not in
BAD_FLAGS.Make sure address is lowercased