Skip to content

add underlyingTokens to missing pools#2342

Merged
slasher125 merged 21 commits intoDefiLlama:masterfrom
0xkr3p:fix/add-underlying-tokens
Feb 9, 2026
Merged

add underlyingTokens to missing pools#2342
slasher125 merged 21 commits intoDefiLlama:masterfrom
0xkr3p:fix/add-underlying-tokens

Conversation

@0xkr3p
Copy link
Copy Markdown
Contributor

@0xkr3p 0xkr3p commented Feb 5, 2026

Summary

Add underlyingTokens field to 182 adapters that were missing it. Combined with 4 adapters that already provide underlyingTokens via upstream APIs/shared code, effective coverage reaches 821 of 856 adapters (95.9%), with only 33 truly blocked (dead APIs/protocols).

The underlyingTokens field identifies the actual tokens deposited into each pool, enabling better token-level tracking and price attribution across DefiLlama.

Changes by Category

On-Chain Contract Lookups (4 adapters)

Added contract calls to fetch underlying tokens dynamically:

  • ellipsis-financecoins(i) from Curve pool contracts
  • integraltoken0()/token1() from LP contracts
  • woofi-earnwant() from vault contracts
  • acryptostoken() from vault contracts

Static Token Mappings (24 adapters)

Hardcoded token addresses where data isn't available from APIs:
zunami-protocol, return-finance, stlos-liquid-staking, stfil, predy-v5, dexswap, crowdswap, interport-finance, killswitch, nucleus, yel-finance, zkp2p, spice-finance, sovryn-dex, line-token, bolide, vector-finance, wing-finance, stablebase, securo-finance, deri-protocol, umoja-ybtc, francium, pluto

Non-EVM Token Identifiers (17 adapters)

Added chain-native identifiers (not EVM addresses) — IBC denoms, ESDT identifiers, canister IDs, Obyte asset hashes, NEAR account IDs, etc.:

  • Cosmos: osmosis-dex, kava-mint, stride, persistence-dex, quasar-vaults
  • MultiversX: hatom-liquid-staking, hatom-tao-liquid-staking
  • Substrate: taiga-acala, taiga-karura, defichain-dex
  • NEAR: pembrock-finance
  • Other: nerveswap (Nuls), pando-leaf (Mixin), psyoptions (Solana), thorchain-dex, yusan (ICP), oswap-amm (Obyte)

API-Sourced (4 adapters)

Passed through or extracted underlyingTokens from upstream API data:
cian-yield-layer, steadefi, zeroliquid, minswap

Address Case Fixes (3 adapters)

Lowercased checksummed addresses that were failing validation:
bifrost-liquid-staking, sommelier, neutra-finance

API/Endpoint Fixes (2 adapters)

Fixed broken data sources alongside adding underlyingTokens:

  • merkle-trade — migrated API from v1 → v2 (was returning 404)
  • vires-finance — added Waves asset IDs from existing mapping

Straightforward Additions (126 adapters)

Token addresses were already available in the data flow — added underlyingTokens field referencing existing variables:
aave-v3, abracadabra-spell, accountable, aegis, allbridge-classic, alpaca-finance-2.0, alpaca-leveraged-yield-farming, amnis-finance, amphor, angle, animeswap, anzen-v2, aqua-patina, archimedes-finance, aries-markets, aura, avantis, azuro, b14g, bella-protocol, bfx-(blast-futures), bitu-protocol, cap, cat-in-a-box, cellana-finance, ceto-swap, chainflip, clave, concentrator, cream-lending, crvusd, d2-finance, davos-protocol, deficurrent, ethena-usde, filet-finance, flashstake, folks-finance-lending, fractal-protocol, fuel-staking, fx-protocol, garden, gauntlet, ghost, glif, harmonix-finance, harvest-finance, hashking, hatom-lending, hipo, hubble-exchange, index-coop, infinifi, ionic-protocol, isle-finance, javsphere, jelly, kai-finance, keom-protocol, kokoa-finance, kyberswap-fairflow, landx-finance, liquidswap, lista-cdp, lombard-lbtc, loopring, magik-farm, meme-dollar, meso-finance, metastreet-v2, metavault.trade, midas-rwa, minto, moola-market, morfi, mortgagefi, mover, mu-digital, navi-lending, nodedao, ondo-yield-assets, openeden-tbill, opyn-squeeth, paladin-warlord, pepeteam-swaves, polytrade, project-0, qidao, raft, raydium-amm, realt-tokens, reflexer, renzo, reservoir-protocol, resolv, resupply, rhino.fi, scallop-lend, sdai, sendit, sensi, sft-protocol, sharpe-magnum, singularity-finance, sky-lending, smardex-amm, smardex-usdn, spark-savings, sprinter, stable-jack-v1, stake.link-index, stake.link-liquid, strata-markets, strx-finance, superstate-uscc, swapr-v2, tempus-finance, tenderize-v1, tortuga, unitas, unizen, velodrome-v2, wink, wise-lending, wise-lending-v2, yieldfi, zipswap

Remaining (38 adapters without explicit underlyingTokens in code)

Every adapter in the repo that does not have underlyingTokens explicitly in its own code is listed below. 4 already work via upstream/shared code, 2 are special cases, and 32 are truly blocked. All alive APIs have been investigated and fixed where possible.

Already Working via Upstream (4 adapters — not blocked)

These adapters already provide underlyingTokens through passthrough APIs or shared code, no changes needed:

Adapter Chain Mechanism
aptin-finance-v2 Aptos Upstream API at data.aptin.io already includes underlyingTokens (Aptos type paths)
full-sail Sui Upstream API at app.fullsail.finance already includes underlyingTokens (Sui object IDs)
beets-dex-v3 Sonic Imports from shared beets-dex/utils.ts which already handles underlyingTokens
kolibri Tezos Imports from shared quipuswap-stableswap/helpers.js which already handles underlyingTokens via contractAddress

Dead APIs — adapter cannot fetch data (13)

Adapter Chain API Error Notes
marginfi-lending Solana S3 snapshot 403 $65M TVL — could migrate to mrgn API (needs API key)
pickle Multi Connection refused $6.5M TVL — both endpoints dead, protocol likely abandoned
mole Avalanche 502 Bad Gateway Leveraged yield farming — server down
nx-finance Solana Domain parked (302→403) Lending protocol — domain expired/parked
atlendis Polygon Heroku 404 GraphQL endpoint gone
lendos Cronos HTTP 500
multipli.fi Multi HTTP 403
verocket VeChain Connection refused
robo-vault Multi Connection refused
ghostmarket Neo HTTP 500
compx-yield Algorand HTTP 504 timeout
sturdy Ethereum HTTP 404 Cloud Functions endpoint dead
pony-finance Ethereum HTTP 404 Vercel app dead

Dead / Inactive Protocols (8)

Adapter Chain Status
friktion Solana Protocol shut down, $0 TVL
optifi Solana Protocol shut down, $0 TVL
complifi Ethereum/Polygon Inactive, minimal TVL
koyo-finance Boba Inactive, API dead (conn refused), $1K TVL
nuls-pocm Nuls Exotic chain, staking only
frakt Solana API dead (conn refused)
armor Ethereum API dead (conn refused)
notional-v2 Ethereum Netlify Functions dead (conn refused)

Commented Out Code (2)

Adapter Chain TVL Notes
homora-v2 Multi $110M 502/540 lines commented out
gyroscope-protocol Multi $1.8M 130/155 lines commented out

Pure Passthrough — upstream API doesn't include token data (5)

Adapter Chain API Status Notes
icpex ICP Alive (empty array) Passthrough, API returns [] — no pools
nudes Solana Dead (conn refused)
unknown Unknown Dead (conn refused)
penrose Polygon Dead (conn refused)
avault Multi 401 Unauthorized Requires auth

Exotic Chains / Dead APIs (4)

Adapter Chain API Status Notes
plenty Tezos Dead (conn refused) Tezos DEX
earnmos Evmos Dead (conn refused)
lachain-yield-market LaChain Dead (conn refused) Exotic L1
fairfi Unknown Dead (conn refused)

Special Cases (2)

Adapter Chain Reason
line-token-rewards Obyte Single-token staking reward for LINE — no underlying assets, underlyingTokens not applicable
affluent Multi Done & Merged

Coverage

Metric Before After
Adapters with underlyingTokens 658 821*
Total adapters 856 856
Truly blocked 32
Coverage 76.9% 96.0%

* Includes 4 adapters (aptin-finance-v2, full-sail, beets-dex-v3, kolibri) that already provide underlyingTokens via upstream APIs/shared code — not modified in this PR but confirmed working. Remaining 34 adapters have dead APIs/protocols (32 blocked) + 2 special cases (line-token-rewards N/A, affluent on separate branch). polynomial-liquidity has underlyingTokens in code but API is dead (Cloudflare 403) — will work when API comes back.

Test plan

  • Ran npm run test --adapter={name} for all modified adapters where APIs are alive
  • Verified underlyingTokens format matches existing patterns (array of strings, raw addresses)
  • Non-EVM identifiers validated (IBC denoms, ESDT tokens, canister IDs, Obyte hashes, Mixin UUIDs)
  • Confirmed zero addresses are intentional for native tokens (ETH, FIL, MON)
  • No breaking changes — underlyingTokens is an optional field
  • Re-checked all previously "alive" APIs — mole (502), nx-finance (domain expired), affluent (separate branch)
  • Verified passthrough adapters (aptin-finance-v2, full-sail, beets-dex-v3, kolibri) already provide underlyingTokens via upstream
  • Added NEAR account IDs for pembrock-finance (NEAR RPC confirmed alive)

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Feb 5, 2026

Important

Review skipped

Too many files!

This PR contains 182 files, which is 32 over the limit of 150.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • 🔍 Trigger a full review
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 1981 passed, 1981 total
Snapshots: 0 total
Time: 0.591 s
Ran all test suites.

Nb of pools: 220
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬────────────────────────┬──────────────────────────────────────────────────┬────────────────────┬────────────────────┬────────────────┬──────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase                │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd     │ debtCeilingUsd │ apyBaseBorrow        │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼────────────────────────┼──────────────────────────────────────────────────┼────────────────────┼────────────────────┼────────────────┼──────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4833599060.419286  │ 0.00008633312469282533 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4834354984.927174  │ 755924.5078878403  │ null           │ 1.0036493000205704   │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3475782487.5769672 │ 0.0011636192623771023  │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3612491182.4864645 │ 136708694.90949726 │ null           │ 0.04730464417968166  │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2716247436.9420905 │ 0.0043386330115273535  │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2789185935.5796843 │ 72938498.63759375  │ null           │ 0.33174007175969394  │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 2234015077.667043  │ 2.150229774498589      │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 6629385700.027471  │ 4395370622.360428  │ null           │ 3.6034010498451243   │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1678899505.3377604 │ 0.0027965772524143053  │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1707509662.0349498 │ 28610156.69718933  │ null           │ 0.3337840332117229   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1241034512.1485348 │ 0                      │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1241034485.8140142 │ -26.3345205783844  │ null           │ 0                    │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 971580387.8795754  │ 1.2086653876746753e-7  │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 971673289.0249494  │ 92901.14537405968  │ null           │ 0.001487258100392266 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 7       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 893849621.9446719  │ 3.0694735474167567     │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4300829439.918977  │ 3406979817.974305  │ null           │ 4.305309375523199    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 689791428.4452097  │ 0                      │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 689791428.4452097  │ 0                  │ null           │ 0                    │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 670829313.1451002  │ 0.7577114004470779     │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1148949684.2714841 │ 478120371.1263839  │ null           │ 2.4276142477452924   │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴────────────────────────┴──────────────────────────────────────────────────┴────────────────────┴────────────────────┴────────────────┴──────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 1981 passed, 1981 total
Snapshots: 0 total
Time: 0.649 s
Ran all test suites.

Nb of pools: 220
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬────────────────────────┬──────────────────────────────────────────────────┬────────────────────┬────────────────────┬────────────────┬──────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase                │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd     │ debtCeilingUsd │ apyBaseBorrow        │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼────────────────────────┼──────────────────────────────────────────────────┼────────────────────┼────────────────────┼────────────────┼──────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4956905418.816248  │ 0.00008636180122863804 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4957680882.605367  │ 775463.7891187668  │ null           │ 1.0036505077844338   │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3575741333.6033063 │ 0.001150961241485544   │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3715584404.471724  │ 139843070.86841774 │ null           │ 0.0470466472018066   │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2781391084.599155  │ 0.004276241060901375   │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2855189173.863589  │ 73798089.26443386  │ null           │ 0.33079481908418634  │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 2153015794.7535706 │ 2.1985012560481176     │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 6532489518.74163   │ 4379473723.988059  │ null           │ 3.643623790428049    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1721370415.1682694 │ 0.002877263109192057   │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1751389333.6073906 │ 30018918.439121246 │ null           │ 0.3357074538119897   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1249188064.742999  │ 0                      │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1249188038.4084787 │ -26.33452033996582 │ null           │ 0                    │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 948307401.8295552  │ 2.969587271049288      │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4294314882.877757  │ 3346007481.048202  │ null           │ 4.234678731075696    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 7       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 933634715.5699822  │ 1.2086653876746753e-7  │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 933723988.4039199  │ 89272.83393776417  │ null           │ 0.001487258100392266 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 680080685.6246282  │ 0                      │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 680080685.6246282  │ 0                  │ null           │ 0                    │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 668464415.2056763  │ 0.7663246627795124     │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1149542856.1600883 │ 481078440.954412   │ null           │ 2.4413731744050664   │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴────────────────────────┴──────────────────────────────────────────────────┴────────────────────┴────────────────────┴────────────────┴──────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 1981 passed, 1981 total
Snapshots: 0 total
Time: 0.556 s
Ran all test suites.

Nb of pools: 220
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬────────────────────────┬──────────────────────────────────────────────────┬────────────────────┬─────────────────────┬────────────────┬───────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase                │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd      │ debtCeilingUsd │ apyBaseBorrow         │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼────────────────────────┼──────────────────────────────────────────────────┼────────────────────┼─────────────────────┼────────────────┼───────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4573899023.879331  │ 0.00008644776611889839 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4574615218.053845  │ 716194.1745147705   │ null           │ 1.0036541283329883    │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3327686475.2965155 │ 0.001153378744575116   │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3457970256.8687544 │ 130283781.57223892  │ null           │ 0.047096030165540086  │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2564046904.0106926 │ 0.00429590694916634    │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2632331697.660647  │ 68284793.64995432   │ null           │ 0.3310932298073589    │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 2189260639.480859  │ 2.1395385920844183     │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 6464887146.956379  │ 4275626507.47552    │ null           │ 3.5944317001830415    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1620575552.515341  │ 0.002792821410240808   │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1648160729.0909488 │ 27585176.575607777  │ null           │ 0.33369406820132375   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1261972281.5933487 │ 0                      │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1261972221.3398898 │ -60.253458976745605 │ null           │ 0                     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 953123920.1725643  │ 2.935320784354176      │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4229751484.211797  │ 3276627564.039233   │ null           │ 4.210175946177837     │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 7       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 869273998.5267487  │ 1.2060970417301959e-7  │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 869357028.9126401  │ 83030.38589143753   │ null           │ 0.0014856770901640324 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 676627527.3947595  │ 0                      │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 676627527.3947595  │ 0                   │ null           │ 0                     │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 659081562.9356608  │ 0.7963917277594533     │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1149478767.3369215 │ 490397204.4012606   │ null           │ 2.488806526883993     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴────────────────────────┴──────────────────────────────────────────────────┴────────────────────┴─────────────────────┴────────────────┴───────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 1981 passed, 1981 total
Snapshots: 0 total
Time: 0.603 s
Ran all test suites.

Nb of pools: 220
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬───────────────────────┬──────────────────────────────────────────────────┬────────────────────┬────────────────────┬────────────────┬───────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase               │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd     │ debtCeilingUsd │ apyBaseBorrow         │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼───────────────────────┼──────────────────────────────────────────────────┼────────────────────┼────────────────────┼────────────────┼───────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4706820444.656987  │ 0.0000864514611866475 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4707557471.962161  │ 737027.3051738739  │ null           │ 1.0036542839560805    │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3416054571.2768917 │ 0.0011418872975593585 │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3549104103.985867  │ 133049532.70897532 │ null           │ 0.046860827144155244  │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2637455905.231484  │ 0.004255369879241156  │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2707148179.1408362 │ 69692273.9093523   │ null           │ 0.3304776451813462    │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 2162128371.8121247 │ 2.1559749015093956    │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 6432930359.480513  │ 4270801987.668388  │ null           │ 3.6082118265681626    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1657884880.456868  │ 0.00278316154366803   │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1686025717.3868525 │ 28140836.92998457  │ null           │ 0.33346250367078234   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1263440011.4893675 │ 0                     │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1263439950.7175598 │ -60.77180767059326 │ null           │ 0                     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 983351682.787256   │ 2.8766333902871586    │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4218188798.982677  │ 3234837116.195421  │ null           │ 4.167875395599231     │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 7       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 877436542.4549395  │ 1.2060970417301959e-7 │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 877520352.5021247  │ 83810.04718518257  │ null           │ 0.0014856770901640324 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 677019591.5754071  │ 0                     │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 677019591.5754071  │ 0                  │ null           │ 0                     │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 647600235.5304562  │ 0.8122218056677356    │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1137823169.2247171 │ 490222933.69426095 │ null           │ 2.513420131578598     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴───────────────────────┴──────────────────────────────────────────────────┴────────────────────┴────────────────────┴────────────────┴───────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

> defillama-apy-server@1.0.0 test
> jest

PASS src/adaptors/test.js
  Running aave-v3 Test
    ✓ Check if link to the pool's page exist
    ✓ Check for unique pool ids (1 ms)
    ✓ Check project field is constant in all pools and if folder name and project field in pool objects matches the information in /protocols slug (1 ms)
    Check for allowed field names
      ✓ Expects pool id 0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4579a27af00a62c0eb156349f31b345c08386419-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4d5f47fa6a74757f35c14fd3a6ef8e3c9bc514e8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc1a318493ff07a68fe438cee60a7ad0d0dba300e-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x5d72a9d9a9510cd8cbdba12ac62593a58930a948-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4ee376c40edc83832aaafc18fc0272660f5e90b-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xfa82580c16a31d0c1bc632a36f82e83efef3eec0-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x927709711794f3de5ddbf1d176bee2d55ba13c21-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7519403e12111ff6b710877fcd821d0c12caf43a-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x1a88df1cfe15af22b3c4c783d4e6f7f9e0c1885d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apy,url,underlyingTokens
      ✓ Expects pool id 0xd7424238ccbe7b7198ab3cfe232e0271e22da7bd-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x65906988adee75306021c417a1a3458040239602-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc035a7cf15375ce2706766804551791ad035e0c2-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x24ab03a9a5bc2c49e5523e8d915a3536ac38b91d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8ffdf2de812095b1d19cb146e4c004587c0a0692-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x08b798c40b9ab931356d9ab4235f548325c4cb80-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x078f358208685046a11c85e8ad32895ded33a249-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0c0d01abf3e6adfca0989ebba9d6e85dd58eab1e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbdb9300b7cde636d9cd4aff00f6f009ffbbc8ee6-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7c307e128efa31f540f2e2d976c995e0b65f51f6-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe3190143eb552456f88464662f0c0c4ac67a77eb-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8437d7c167dfb82ed4cb79cd44b7a32a1dd95c77-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xec4ef66d4fceeba34abb4de69db391bc5476ccc8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6b030ff3fb9956b1b69f475b77ae0d3cf2cc5afa-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa700b4eb416be35b2911fd5dee80678ff64ff6c9-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x10ac93971cdb1f5c778144084242374473c350da-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xaf1a7a488c8348b41d5860c04162af7d3d38a996-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x81b76ff3fed28ba0b4a5d4c76bd5c13bd0641d86-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5e8c8a7243651db1384c0ddfdbe39761e8e7e51a-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x724dc807b04555b71ed48a6896b6f41593b8c637-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xce8c60fd8390efcc3fc66a3f0bd64beb969e750e-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6d80113e533a2c0fe82eabd35f1875dcea89ea97-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8a2b6f94ff3a89a03e8c02ee92b55af90c9454a2-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcc9ee9483f662091a1de4795249e24ac0ac2630f-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xea1132120ddcdda2f119e99fa7a27a0d036f7ac9-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x513c7e3a9c69ca3e22550ef58ac1c0088e918fff-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x513c7e3a9c69ca3e22550ef58ac1c0088e918fff-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x56a7ddc4e848ebf43845854205ad71d5d5f72d3d-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x9b00a09492a626678e5a3009982191586c444df9-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x078f358208685046a11c85e8ad32895ded33a249-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x80a94c36747cf51b2fbabdff045f6d22c1930ed1-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x4e65fe4dba92790696d040ac24aa414708f5c0ab-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x99cbc45ea5bb7ef3a5bc08fb1b7e56bb2442ef0d-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x018008bfb33d285247a21d44e50697654f754e63-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x935efcbefc1df0541afc3fe145134f8c9a0beb89-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcca43cef272c30415866914351fdfc3e881bb7c2-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xaa6e91c82942aeae040303bf96c15a6dbcb82ca0-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4e2a4d9b3df7aae73b418bd39f3af9e148e3f479-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x32a6268f9ba3642dda7892add74f1d34469a4259-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4a0e0b9149bcee3c920d2e00b5de09138fd8bb7-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x40b4baecc69b882e8804f9286b12228c27f8c9bf-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa9251ca9de909cb71783723713b21e4233fbf1b1-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x23e4e76d01b2002be436ce8d6044b0aa2f68b68a-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7c0477d085ecb607cf8429f3ec91ae5e1e460f4f-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5fefd7069a7d91d01f269dade14526ccf3487810-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa4d94019934d8333ef880abffbf2fdd611c762bd-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xc45a479877e1e9dfe9fcd4056c699575a1045daa-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7a5c3860a77a8dc1b225bd46d0fb2ac1c6d191bc-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbe54767735fb7acca2aa7e2d209a6f705073536d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5c43d6c075c7cf95fb188fb2977eed3e3f2a92c2-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x90da57e0a6c0d166bf15764e03b83745dc90025b-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x078f358208685046a11c85e8ad32895ded33a249-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2e94171493fabe316b6205f1585779c887771e2f-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xdee98402a302e4d707fb9bf2bac66faeec31e8df-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf59036caebea7dc4b86638dfa2e3c97da9fccd40-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcf3d55c10db69f28fd1a75bd73f3d8a2d9c595ad-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xfa1fdbbd71b0aa16162d76914d69cd8cb3ef92da-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x977b6fc5de62598b08c85ac8cf2b745874e8b78c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x68215b6533c47ff9f7125ac95adf00fe4a62f79e-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa1fa064a85266e2ca82dee5c5ccec84df445760e-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x74e5664394998f13b07af42446380acef637969f-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38d693ce1df5aadf7bc62595a37d667ad57922e5-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0c7921ab4888fd06731898b3ffffeb06781d5f4f-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x578ee1ca3a8e1b54554da1bf7c583506c4cd11c6-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe1cfd16b8e4b1c86bb5b7a104cfefbc7b09326dd-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6533afac2e7bccb20dca161449a13a32d391fb00-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf6d2224916ddfbbab6e6bd0d1b7034f4ae0cab18-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x787897df92703bb3fc4d9ee98e15c0b8130bf163-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x481a2acf3a72ffdc602a9541896ca1db87f86cf7-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf385280f36e009c157697d25e0b802efabfd789c-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x00901a076785e0906d1028c7d6372d247bec7d61-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe18ab82c81e7eecff32b8a82b1b7d2d23f1ece96-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc0333cb85b59a788d8c7cae5e1fd6e229a3e5a65-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xeaa74d7f42267eb907092af4bc700f667eed0b8b-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd80a5e16dbdc52bd1c947cedfa22c562be9129c8-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xedbc7449a9b594ca4e053d9737ec5dc4cbccbfb2-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6d80113e533a2c0fe82eabd35f1875dcea89ea97-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x90072a4aa69b5eb74984ab823efc5f91e90b3a72-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbdfd4e51d3c14a232135f04988a42576efb31519-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6c5e14a212c1c3e4baf6f871ac9b1a969918c131-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x1c0e06a0b1a4c160c17545ff2a951bfca57c0002-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7b95ec873268a6bfc6427e7a28e396db9d0ebc65-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb0ec6c4482ac1ef77be239c0ac833cf37a27c876-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf301805be1df81102c957f6d4ce29d2b8c056b2a-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf1ab7f60128924d69f6d7de25a20ef70bbd43d07-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8eb270e296023e9d92081fdf967ddd7878724424-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2a1fbcb52ed4d9b23dad17e1e8aed4bb0e6079b8-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x724dc807b04555b71ed48a6896b6f41593b8c637-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x374d7860c4f2f604de0191298dd393703cce84f3-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa818f1b57c201e092c4a2017a91815034326efd1-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x513c7e3a9c69ca3e22550ef58ac1c0088e918fff-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x37f7e06359f98162615e016d0008023d910bb576-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5aa4bc74811d672da5308019da4779f673e60b47-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0b9a412c94f07223752031f75a20dde542d63d5c-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x62fc96b27a510cf4977b59ff952dc32378cc221d-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x80ca0d8c38d2e2bcbab66aa1648bd1c7160500fe-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38c503a438185cde29b5cf4dc1442fd6f074f1cc-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38d693ce1df5aadf7bc62595a37d667ad57922e5-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcdd80e6211fc767352b198f827200c7e93d7bb04-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd6cd2c0fc55936498726cacc497832052a9b2d1b-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4e607633f3d984633e946aea4eb71f92564c1c9-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x58943d20e010d9e34c4511990e232783460d0219-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe728577e9a1fe7032bc309b4541f58f45443866e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x88231dfec71d4ff5c1e466d08c321944a7adc673-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd0dd6cef72143e22cced4867eb0d5f2328715533-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8a9fde6925a839f6b1932d16b36ac026f8d3fbdb-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x285866acb0d60105b4ed350a463361c2d9afa0e2-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x3fe6a295459fae07df8a0cecc36f37160fe86aa9-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbcffb4b3beadc989bd1458740952af6ec8fbe431-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4199cc1f5ed0d796563d7ccb2e036253e2c18281-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x67eaf2bee4384a2f84da9eb8105c661c123736ba-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb7b93bcf82519bb757fd18b23a389245dbd8ca64-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (3 ms)
      ✓ Expects pool id 0x4c612e3b15b96ff9a6faed838f8d07d479a8dd4c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb76cf92076adbf1d9c39294fa8e7a67579fde357-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x71aef7b30728b9bb371578f36c5a1f1502a5723e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x5f9190496e0dfc831c3bd307978de4a245e2f5cd-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4e58a2e433a739726134c83d2f07b2562e8dfdb3-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x9a44fd41566876a39655f74971a3a6ea0a17a454-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x885c8aec5867571582545f894a5906971db9bf27-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0a1d576f3efef75b330424287a95a366e8281d54-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe818a67ee5c0531afaa31aa6e20bcac36227a641-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xff8309b9e99bfd2d4021bc71a362abd93dbd4785-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5b1322eeb46240b02e20062b8f0f9908d525b09c-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc3e77dc389537db1eec7c33b95cf3beeca71a209-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8acae35059c9ae27709028ff6689386a44c09f3a-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x7314ef2ca509490f65f52cc8fc9e0675c66390b8-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe036478da9a7ed89b56fe39a06e1fc1a4b38d4ea-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd9fa75d14c26720d5ce7ee2530793a823e8f07b9-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x1d738a3436a8c49ceffbab7fbf04b660fb528cbd-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x9326fa5a71c93d5de313c91c3b80d74d0c3a0f5a-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x75bd1a659bdc62e4c313950d44a2416fab43e785-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbba98352628b0b0c4b40583f593ffcb630935a45-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x545bd6c032efdde65a377a6719def2796c8e0f2e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x09aa30b182488f769a9824f15e6ce58591da4781-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xdd5745756c2de109183c6b5bb886f9207bef114d-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38d693ce1df5aadf7bc62595a37d667ad57922e5-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe977f9b2a5ccf0457870a67231f23be4daecfbdb-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8ffdf2de812095b1d19cb146e4c004587c0a0692-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x724dc807b04555b71ed48a6896b6f41593b8c637-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x61b19879f4033c2b5682a969cccc9141e022823c-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2516e7b3f76294e03c42aa4c5b5b4dce9c436fb8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8eb270e296023e9d92081fdf967ddd7878724424-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc7b4c17861357b8abb91f25581e7263e08dcb59c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb82fa9f31612989525992fcfbb09ab22eff5c85a-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc2015641564a5914a17cb9a92ec8d8fecfa8f2d0-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4e245848d6e1220dbe62e155d89fa327e43cb06-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc48574bc5358c967d9447e7df70230fdb469e4e7-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta

Nb of pools: 220
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬────────────────────────┬──────────────────────────────────────────────────┬────────────────────┬────────────────────┬────────────────┬───────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase                │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd     │ debtCeilingUsd │ apyBaseBorrow         │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼────────────────────────┼──────────────────────────────────────────────────┼────────────────────┼────────────────────┼────────────────┼───────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4576075597.913226  │ 0.00008640137676578468 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4576791738.343472  │ 716140.4302453995  │ null           │ 1.0036521745745768    │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3331348995.2409306 │ 0.0011389040304574229  │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3460923187.635844  │ 129574192.39491367 │ null           │ 0.04679957337926475   │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2573064371.069314  │ 0.004241513102352031   │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2640872164.6313057 │ 67807793.56199169  │ null           │ 0.33026679665732456   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 2158745282.0572147 │ 2.1580483853908263     │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 6428968900.43473   │ 4270223618.377515  │ null           │ 3.609946489434225     │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1618296081.7231662 │ 0.0027409803628805685  │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1645425518.0529573 │ 27129436.32979107  │ null           │ 0.33244831556032495   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1253584931.047943  │ 0                      │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1253584870.276098  │ -60.77184510231018 │ null           │ 0                     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 941064249.9484322  │ 2.934954555512957      │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4175333670.301043  │ 3234269420.3526106 │ null           │ 4.209913625969031     │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 7       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 877302304.0139508  │ 1.2060970417301959e-7  │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 877386101.2391688  │ 83797.22521793842  │ null           │ 0.0014856770901640324 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 676961262.6096286  │ 0                      │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 676961262.6096286  │ 0                  │ null           │ 0                     │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 657962430.7831877  │ 0.7784605358014973     │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1137934320.9936697 │ 479971890.210482   │ null           │ 2.460628598824416     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴────────────────────────┴──────────────────────────────────────────────────┴────────────────────┴────────────────────┴────────────────┴───────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 1909 passed, 1909 total
Snapshots: 0 total
Time: 0.536 s
Ran all test suites.

Nb of pools: 212
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬────────────────────────┬──────────────────────────────────────────────────┬────────────────────┬────────────────────┬────────────────┬───────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase                │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd     │ debtCeilingUsd │ apyBaseBorrow         │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼────────────────────────┼──────────────────────────────────────────────────┼────────────────────┼────────────────────┼────────────────┼───────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4741543157.766038  │ 0.00008691812271949433 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4742289609.846256  │ 746452.0802183151  │ null           │ 1.0036739376911534    │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3455092415.489052  │ 0.0011487799376202292  │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3590083130.4079843 │ 134990714.91893244 │ null           │ 0.04700204461264629   │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2697817997.361152  │ 0.004886575875838476   │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2777666158.8364    │ 79848161.47524786  │ null           │ 0.3398629802500012    │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1704990821.480642  │ 0.0028157623102861534  │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1734204213.3001468 │ 29213391.819504738 │ null           │ 0.33424297623306787   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 1324762889.1263735 │ 2.7265767530038647     │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 5227961564.517745  │ 3903198675.3913717 │ null           │ 4.057692366618815     │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1254449903.69098   │ 0                      │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1254449842.8802104 │ -60.81076955795288 │ null           │ 0                     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 911260953.4587555  │ 2.940574616503126      │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4056412158.547568  │ 3145151205.0888124 │ null           │ 4.213943177918791     │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 7       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 898588966.5776007  │ 1.2126783823853813e-7  │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 898675030.9194224  │ 86064.34182167053  │ null           │ 0.0014897250416738789 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 677022706.2992182  │ 0                      │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 677022706.2992182  │ 0                  │ null           │ 0                     │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 636971803.8425356  │ 0.8186812048157234     │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1122515613.1203642 │ 485543809.2778286  │ null           │ 2.5233946441287713    │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴────────────────────────┴──────────────────────────────────────────────────┴────────────────────┴────────────────────┴────────────────┴───────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

> defillama-apy-server@1.0.0 test
> jest

PASS src/adaptors/test.js
  Running aave-v3 Test
    ✓ Check if link to the pool's page exist
    ✓ Check for unique pool ids (2 ms)
    ✓ Check project field is constant in all pools and if folder name and project field in pool objects matches the information in /protocols slug (1 ms)
    Check for allowed field names
      ✓ Expects pool id 0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x4579a27af00a62c0eb156349f31b345c08386419-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc1a318493ff07a68fe438cee60a7ad0d0dba300e-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5d72a9d9a9510cd8cbdba12ac62593a58930a948-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4ee376c40edc83832aaafc18fc0272660f5e90b-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xfa82580c16a31d0c1bc632a36f82e83efef3eec0-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x927709711794f3de5ddbf1d176bee2d55ba13c21-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4d5f47fa6a74757f35c14fd3a6ef8e3c9bc514e8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7519403e12111ff6b710877fcd821d0c12caf43a-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x1a88df1cfe15af22b3c4c783d4e6f7f9e0c1885d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apy,url,underlyingTokens
      ✓ Expects pool id 0xd7424238ccbe7b7198ab3cfe232e0271e22da7bd-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x65906988adee75306021c417a1a3458040239602-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc035a7cf15375ce2706766804551791ad035e0c2-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8ffdf2de812095b1d19cb146e4c004587c0a0692-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x078f358208685046a11c85e8ad32895ded33a249-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (4 ms)
      ✓ Expects pool id 0x08b798c40b9ab931356d9ab4235f548325c4cb80-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbdb9300b7cde636d9cd4aff00f6f009ffbbc8ee6-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x24ab03a9a5bc2c49e5523e8d915a3536ac38b91d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x7c307e128efa31f540f2e2d976c995e0b65f51f6-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8437d7c167dfb82ed4cb79cd44b7a32a1dd95c77-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe3190143eb552456f88464662f0c0c4ac67a77eb-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xec4ef66d4fceeba34abb4de69db391bc5476ccc8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0c0d01abf3e6adfca0989ebba9d6e85dd58eab1e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6b030ff3fb9956b1b69f475b77ae0d3cf2cc5afa-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xaf1a7a488c8348b41d5860c04162af7d3d38a996-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x10ac93971cdb1f5c778144084242374473c350da-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa700b4eb416be35b2911fd5dee80678ff64ff6c9-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x935efcbefc1df0541afc3fe145134f8c9a0beb89-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5e8c8a7243651db1384c0ddfdbe39761e8e7e51a-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x81b76ff3fed28ba0b4a5d4c76bd5c13bd0641d86-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x724dc807b04555b71ed48a6896b6f41593b8c637-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xce8c60fd8390efcc3fc66a3f0bd64beb969e750e-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcc9ee9483f662091a1de4795249e24ac0ac2630f-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6d80113e533a2c0fe82eabd35f1875dcea89ea97-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x513c7e3a9c69ca3e22550ef58ac1c0088e918fff-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x8a2b6f94ff3a89a03e8c02ee92b55af90c9454a2-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xea1132120ddcdda2f119e99fa7a27a0d036f7ac9-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x513c7e3a9c69ca3e22550ef58ac1c0088e918fff-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x56a7ddc4e848ebf43845854205ad71d5d5f72d3d-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x9b00a09492a626678e5a3009982191586c444df9-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x078f358208685046a11c85e8ad32895ded33a249-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x80a94c36747cf51b2fbabdff045f6d22c1930ed1-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4e65fe4dba92790696d040ac24aa414708f5c0ab-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x99cbc45ea5bb7ef3a5bc08fb1b7e56bb2442ef0d-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x018008bfb33d285247a21d44e50697654f754e63-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcca43cef272c30415866914351fdfc3e881bb7c2-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x32a6268f9ba3642dda7892add74f1d34469a4259-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xaa6e91c82942aeae040303bf96c15a6dbcb82ca0-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4e2a4d9b3df7aae73b418bd39f3af9e148e3f479-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4a0e0b9149bcee3c920d2e00b5de09138fd8bb7-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xa9251ca9de909cb71783723713b21e4233fbf1b1-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x40b4baecc69b882e8804f9286b12228c27f8c9bf-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x23e4e76d01b2002be436ce8d6044b0aa2f68b68a-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5fefd7069a7d91d01f269dade14526ccf3487810-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa4d94019934d8333ef880abffbf2fdd611c762bd-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7c0477d085ecb607cf8429f3ec91ae5e1e460f4f-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc45a479877e1e9dfe9fcd4056c699575a1045daa-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7a5c3860a77a8dc1b225bd46d0fb2ac1c6d191bc-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5c43d6c075c7cf95fb188fb2977eed3e3f2a92c2-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x90da57e0a6c0d166bf15764e03b83745dc90025b-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcdd80e6211fc767352b198f827200c7e93d7bb04-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xbe54767735fb7acca2aa7e2d209a6f705073536d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x078f358208685046a11c85e8ad32895ded33a249-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x68215b6533c47ff9f7125ac95adf00fe4a62f79e-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2e94171493fabe316b6205f1585779c887771e2f-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x787897df92703bb3fc4d9ee98e15c0b8130bf163-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf59036caebea7dc4b86638dfa2e3c97da9fccd40-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xdee98402a302e4d707fb9bf2bac66faeec31e8df-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x977b6fc5de62598b08c85ac8cf2b745874e8b78c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xcf3d55c10db69f28fd1a75bd73f3d8a2d9c595ad-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa1fa064a85266e2ca82dee5c5ccec84df445760e-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38d693ce1df5aadf7bc62595a37d667ad57922e5-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0c7921ab4888fd06731898b3ffffeb06781d5f4f-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x74e5664394998f13b07af42446380acef637969f-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x578ee1ca3a8e1b54554da1bf7c583506c4cd11c6-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe1cfd16b8e4b1c86bb5b7a104cfefbc7b09326dd-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf6d2224916ddfbbab6e6bd0d1b7034f4ae0cab18-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6533afac2e7bccb20dca161449a13a32d391fb00-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x481a2acf3a72ffdc602a9541896ca1db87f86cf7-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf385280f36e009c157697d25e0b802efabfd789c-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x00901a076785e0906d1028c7d6372d247bec7d61-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc0333cb85b59a788d8c7cae5e1fd6e229a3e5a65-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x374d7860c4f2f604de0191298dd393703cce84f3-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe18ab82c81e7eecff32b8a82b1b7d2d23f1ece96-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd80a5e16dbdc52bd1c947cedfa22c562be9129c8-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xeaa74d7f42267eb907092af4bc700f667eed0b8b-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xedbc7449a9b594ca4e053d9737ec5dc4cbccbfb2-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6d80113e533a2c0fe82eabd35f1875dcea89ea97-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbdfd4e51d3c14a232135f04988a42576efb31519-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x90072a4aa69b5eb74984ab823efc5f91e90b3a72-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xfa1fdbbd71b0aa16162d76914d69cd8cb3ef92da-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6c5e14a212c1c3e4baf6f871ac9b1a969918c131-sonic to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x1c0e06a0b1a4c160c17545ff2a951bfca57c0002-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf1ab7f60128924d69f6d7de25a20ef70bbd43d07-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6ab707aca953edaefbc4fd23ba73294241490620-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7b95ec873268a6bfc6427e7a28e396db9d0ebc65-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb0ec6c4482ac1ef77be239c0ac833cf37a27c876-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8eb270e296023e9d92081fdf967ddd7878724424-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf301805be1df81102c957f6d4ce29d2b8c056b2a-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2a1fbcb52ed4d9b23dad17e1e8aed4bb0e6079b8-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x37f7e06359f98162615e016d0008023d910bb576-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x724dc807b04555b71ed48a6896b6f41593b8c637-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xa818f1b57c201e092c4a2017a91815034326efd1-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x513c7e3a9c69ca3e22550ef58ac1c0088e918fff-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x62fc96b27a510cf4977b59ff952dc32378cc221d-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0b9a412c94f07223752031f75a20dde542d63d5c-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x80ca0d8c38d2e2bcbab66aa1648bd1c7160500fe-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5aa4bc74811d672da5308019da4779f673e60b47-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (2 ms)
      ✓ Expects pool id 0xd6cd2c0fc55936498726cacc497832052a9b2d1b-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x38d693ce1df5aadf7bc62595a37d667ad57922e5-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38c503a438185cde29b5cf4dc1442fd6f074f1cc-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x58943d20e010d9e34c4511990e232783460d0219-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4e607633f3d984633e946aea4eb71f92564c1c9-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xe728577e9a1fe7032bc309b4541f58f45443866e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x3fe6a295459fae07df8a0cecc36f37160fe86aa9-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x625e7708f30ca75bfd92586e17077590c60eb4cd-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd0dd6cef72143e22cced4867eb0d5f2328715533-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8a9fde6925a839f6b1932d16b36ac026f8d3fbdb-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x285866acb0d60105b4ed350a463361c2d9afa0e2-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbcffb4b3beadc989bd1458740952af6ec8fbe431-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x88231dfec71d4ff5c1e466d08c321944a7adc673-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x191c10aa4af7c30e871e70c95db0e4eb77237530-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4199cc1f5ed0d796563d7ccb2e036253e2c18281-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x67eaf2bee4384a2f84da9eb8105c661c123736ba-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb7b93bcf82519bb757fd18b23a389245dbd8ca64-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4c612e3b15b96ff9a6faed838f8d07d479a8dd4c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb76cf92076adbf1d9c39294fa8e7a67579fde357-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x71aef7b30728b9bb371578f36c5a1f1502a5723e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5f9190496e0dfc831c3bd307978de4a245e2f5cd-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4e58a2e433a739726134c83d2f07b2562e8dfdb3-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x9a44fd41566876a39655f74971a3a6ea0a17a454-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf329e36c7bf6e5e86ce2150875a84ce77f477375-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x885c8aec5867571582545f894a5906971db9bf27-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xe818a67ee5c0531afaa31aa6e20bcac36227a641-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x0a1d576f3efef75b330424287a95a366e8281d54-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc3e77dc389537db1eec7c33b95cf3beeca71a209-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5b1322eeb46240b02e20062b8f0f9908d525b09c-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8acae35059c9ae27709028ff6689386a44c09f3a-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbba98352628b0b0c4b40583f593ffcb630935a45-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7314ef2ca509490f65f52cc8fc9e0675c66390b8-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x1d738a3436a8c49ceffbab7fbf04b660fb528cbd-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe036478da9a7ed89b56fe39a06e1fc1a4b38d4ea-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd9fa75d14c26720d5ce7ee2530793a823e8f07b9-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x9326fa5a71c93d5de313c91c3b80d74d0c3a0f5a-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x75bd1a659bdc62e4c313950d44a2416fab43e785-bsc to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xff8309b9e99bfd2d4021bc71a362abd93dbd4785-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x545bd6c032efdde65a377a6719def2796c8e0f2e-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xdd5745756c2de109183c6b5bb886f9207bef114d-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x09aa30b182488f769a9824f15e6ce58591da4781-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xe977f9b2a5ccf0457870a67231f23be4daecfbdb-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38d693ce1df5aadf7bc62595a37d667ad57922e5-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x724dc807b04555b71ed48a6896b6f41593b8c637-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8ffdf2de812095b1d19cb146e4c004587c0a0692-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2516e7b3f76294e03c42aa4c5b5b4dce9c436fb8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc7b4c17861357b8abb91f25581e7263e08dcb59c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8eb270e296023e9d92081fdf967ddd7878724424-polygon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xb82fa9f31612989525992fcfbb09ab22eff5c85a-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc2015641564a5914a17cb9a92ec8d8fecfa8f2d0-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xd4e245848d6e1220dbe62e155d89fa327e43cb06-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0xc48574bc5358c967d9447e7df70230fdb469e4e7-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x25718130c2a8eb94e2e1fafb5f1cdd4b459acf64-scroll to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x44705f578135cc5d703b4c9c122528c73eb87145-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x38a5357ce55c81add62abc84fb32981e2626adef-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x85abaddcae06efee2cb5f75f33b6471759efde24-metis to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xaa0200d169ff3ba9385c12e073c5d1d30434ae7b-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x8eb270e296023e9d92081fdf967ddd7878724424-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6914eccf50837dc61b43ee478a9bd9b439648956-etherfi to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6d80113e533a2c0fe82eabd35f1875dcea89ea97-optimism to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x56d919e7b25aa42f3f8a4bc77b8982048f2e84b4-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xbe1f842e7e0afd2c2322aae5d34ba899544b29db-etherfi to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xea601a9fecf80bfc529f08a51bd8cb0d72fc862a-plasma to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x34c02571094e08e935b8cf8dc10f1ad6795f1f81-celo to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x7380c583cde4409eff5dd3320d93a45d96b80e2e-etherfi to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x5f4a0873a3a02f7c0cb0e13a1d4362a1ad90e751-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x61b19879f4033c2b5682a969cccc9141e022823c-linea to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x6533afac2e7bccb20dca161449a13a32d391fb00-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc45a479877e1e9dfe9fcd4056c699575a1045daa-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x2edff5af94334fbd7c38ae318edf1c40e072b73b-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xde6ef6cb4abd3a473ffc2942eef5d84536f8e864-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x4b0821e768ed9039a70ed1e80e15e76a5be5df5f-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf3c9d58b76ac6ee6811520021e9a9318c49e4cfa-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xdf7f48892244c6106ea784609f7de10ab36f9c7e-etherfi to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x5722921bb6c37eaeb78b993765aa5d79cc50052f-era to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x00907f9921424583e7ffbfedf84f92b7b2be4977-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xebe517846d0f36eced99c735cbf6131e1feb775d-arbitrum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xf611aeb5013fd2c0511c9cd55c7dc5c1140741a6-avalanche to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x067ae75628177fd257c2b1e500993e1a0babcbd1-base to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x3fdcec11b4f15c79d483aedc56f37d302837cf4d-xdai to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta (1 ms)
      ✓ Expects pool id 0x18efe565a5373f430e2f809b97de30335b3ad96a-lido to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x946281a2d0dd6e650d08f74833323d66ae4c8b12-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0xc167932ac4eec2b65844ef00d31b4550250536a5-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
      ✓ Expects pool id 0x844f07ab09aa5dbdce6a9b1206ce150e1eadaccb-horizon to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,underlyingTokens,totalSupplyUsd,totalBorrowUsd,debtCeilingUsd,apyBaseBorrow,ltv,url,borrowable,mintedCoin,poolMeta
    Check apy data types
      ✓ Expects pool with id 0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum to have at least one number apy field (1 ms)
      ✓ Expects pool with id 0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x4579a27af00a62c0eb156349f31b345c08386419-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma to have at least one number apy field
      ✓ Expects pool with id 0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xc1a318493ff07a68fe438cee60a7ad0d0dba300e-plasma to have at least one number apy field
      ✓ Expects pool with id 0x5d72a9d9a9510cd8cbdba12ac62593a58930a948-plasma to have at least one number apy field
      ✓ Expects pool with id 0xd4ee376c40edc83832aaafc18fc0272660f5e90b-plasma to have at least one number apy field
      ✓ Expects pool with id 0xfa82580c16a31d0c1bc632a36f82e83efef3eec0-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x927709711794f3de5ddbf1d176bee2d55ba13c21-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x4d5f47fa6a74757f35c14fd3a6ef8e3c9bc514e8-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x7519403e12111ff6b710877fcd821d0c12caf43a-plasma to have at least one number apy field
      ✓ Expects pool with id 0x1a88df1cfe15af22b3c4c783d4e6f7f9e0c1885d-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xd7424238ccbe7b7198ab3cfe232e0271e22da7bd-base to have at least one number apy field
      ✓ Expects pool with id 0x65906988adee75306021c417a1a3458040239602-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xc035a7cf15375ce2706766804551791ad035e0c2-lido to have at least one number apy field (1 ms)
      ✓ Expects pool with id 0x8ffdf2de812095b1d19cb146e4c004587c0a0692-avalanche to have at least one number apy field
      ✓ Expects pool with id 0x078f358208685046a11c85e8ad32895ded33a249-arbitrum to have at least one number apy field
      ✓ Expects pool with id 0x08b798c40b9ab931356d9ab4235f548325c4cb80-horizon to have at least one number apy field
      ✓ Expects pool with id 0xbdb9300b7cde636d9cd4aff00f6f009ffbbc8ee6-base to have at least one number apy field (1 ms)
      ✓ Expects pool with id 0x24ab03a9a5bc2c49e5523e8d915a3536ac38b91d-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x7c307e128efa31f540f2e2d976c995e0b65f51f6-base to have at least one number apy field
      ✓ Expects pool with id 0x8437d7c167dfb82ed4cb79cd44b7a32a1dd95c77-arbitrum to have at least one number apy field
      ✓ Expects pool with id 0xe3190143eb552456f88464662f0c0c4ac67a77eb-horizon to have at least one number apy field (1 ms)
      ✓ Expects pool with id 0xec4ef66d4fceeba34abb4de69db391bc5476ccc8-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x0c0d01abf3e6adfca0989ebba9d6e85dd58eab1e-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x6b030ff3fb9956b1b69f475b77ae0d3cf2cc5afa-arbitrum to have at least one number apy field
      ✓ Expects pool with id 0xaf1a7a488c8348b41d5860c04162af7d3d38a996-plasma to have at least one number apy field
      ✓ Expects pool with id 0x10ac93971cdb1f5c778144084242374473c350da-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xa700b4eb416be35b2911fd5dee80678ff64ff6c9-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x935efcbefc1df0541afc3fe145134f8c9a0beb89-linea to have at least one number apy field
      ✓ Expects pool with id 0x5e8c8a7243651db1384c0ddfdbe39761e8e7e51a-ethereum to have at least one number apy field (1 ms)
      ✓ Expects pool with id 0x81b76ff3fed28ba0b4a5d4c76bd5c13bd0641d86-ethereum to have at least one number apy field

Nb of pools: 220
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬───────────────────────┬──────────────────────────────────────────────────┬────────────────────┬─────────────────────┬────────────────┬───────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase               │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd      │ debtCeilingUsd │ apyBaseBorrow         │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼───────────────────────┼──────────────────────────────────────────────────┼────────────────────┼─────────────────────┼────────────────┼───────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4749478040.861797  │ 0.0000869728138552721 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4750226210.517447  │ 748169.6556501389   │ null           │ 1.003676240991487     │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3451169970.1557536 │ 0.0011490571226663603 │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3586024333.050447  │ 134854362.89469337  │ null           │ 0.04700771474916402   │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2711719156.4412193 │ 0.004868276934880195  │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2791733798.0388064 │ 80014641.59758711   │ null           │ 0.3395966726117925    │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1715229715.1611047 │ 0.002815502160739343  │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1744616328.1721141 │ 29386613.011009455  │ null           │ 0.3342367596943809    │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 1379826388.8687022 │ 2.6539484695163464    │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 5238298782.666659  │ 3858472393.7979574  │ null           │ 4.0032848815234905    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1248395238.5124393 │ 0                     │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1248395177.7077103 │ -60.804728984832764 │ null           │ 0                     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 894067569.515715   │ 2.966536240130494     │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4041316364.432285  │ 3147248794.9165697  │ null           │ 4.232504346314865     │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 7       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 892462715.9661833  │ 1.2381565804022655e-7 │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 892549086.9076962  │ 86370.94151294231   │ null           │ 0.0015052931499886786 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 677020714.4303095  │ 0                     │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 677020714.4303095  │ 0                   │ null           │ 0                     │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 630679468.8268178  │ 0.8281916986243223    │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1116355197.5032833 │ 485675728.6764655   │ null           │ 2.5380092667771854    │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴───────────────────────┴──────────────────────────────────────────────────┴────────────────────┴─────────────────────┴────────────────┴───────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link
Copy Markdown

The aave-v3 adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 1909 passed, 1909 total
Snapshots: 0 total
Time: 0.611 s
Ran all test suites.

Nb of pools: 212
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬───────────┬─────────────────────┬────────────────────┬────────────────────────┬──────────────────────────────────────────────────┬────────────────────┬─────────────────────┬────────────────┬───────────────────────┬────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┬──────────┐
│ (index) │ pool                                                  │ chain      │ project   │ symbol              │ tvlUsd             │ apyBase                │ underlyingTokens                                 │ totalSupplyUsd     │ totalBorrowUsd      │ debtCeilingUsd │ apyBaseBorrow         │ ltv    │ url                                                                                                                             │ borrowable │ mintedCoin │ poolMeta │
├─────────┼───────────────────────────────────────────────────────┼────────────┼───────────┼─────────────────────┼────────────────────┼────────────────────────┼──────────────────────────────────────────────────┼────────────────────┼─────────────────────┼────────────────┼───────────────────────┼────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┼──────────┤
│ 0       │ '0xbdfa7b7893081b35fb54027489e2bc7a38275129-ethereum' │ 'ethereum' │ 'aave-v3' │ 'weETH'             │ 4867213530.803391  │ 0.00008714582312608646 │ [ '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee' ] │ 4867981765.210992  │ 768234.4076004028   │ null           │ 1.0036835271542648    │ 0.775  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 1       │ '0x0b925ed163218f6662a35e0f0371ac234f9e9371-ethereum' │ 'ethereum' │ 'aave-v3' │ 'wstETH'            │ 3520798071.42059   │ 0.0011752558268025882  │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0' ] │ 3659994324.356493  │ 139196252.93590307  │ null           │ 0.04754058655111007   │ 0.785  │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 2       │ '0x5ee5bf7ae06d1be5997a1a72006fe6c607ec6de8-ethereum' │ 'ethereum' │ 'aave-v3' │ 'WBTC'              │ 2820342555.9320736 │ 0.004776244704227316   │ [ '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599' ] │ 2902276606.6543283 │ 81934050.72225475   │ null           │ 0.3382522694598802    │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 3       │ '0x5c647ce0ae10658ec44fa4e11a51c96e94efd1dd-ethereum' │ 'ethereum' │ 'aave-v3' │ 'cbBTC'             │ 1823896780.4279191 │ 0.0027488082802072603  │ [ '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf' ] │ 1854541713.809932  │ 30644933.382012844  │ null           │ 0.33263690134964635   │ 0.73   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 4       │ '0x23878914efe38d27c4d67ab83ed1b93a74d4086a-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDT'              │ 1508759884.057279  │ 2.5114318215546128     │ [ '0xdAC17F958D2ee523a2206206994597C13D831ec7' ] │ 5322596572.845377  │ 3813836688.788098   │ null           │ 3.8943137988524708    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xdac17f958d2ee523a2206206994597c13d831ec7&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 5       │ '0x4579a27af00a62c0eb156349f31b345c08386419-ethereum' │ 'ethereum' │ 'aave-v3' │ 'sUSDe'             │ 1249023031.807347  │ 0                      │ [ '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497' ] │ 1249022970.957102  │ -60.850244998931885 │ null           │ 0                     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x9d39a5de30e57443bff2a8307a4256c8797a3497&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 6       │ '0x98c23e9d8f34fefb1b7bd6a91b7ff122f4e16f5c-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDC'              │ 936218279.1415327  │ 2.8801474178639617     │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' ] │ 4024046097.3721986 │ 3087827818.230666   │ null           │ 4.1704215326134735    │ 0.75   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
│ 7       │ '0x2d62109243b87c4ba3ee7ba1d91b0dd0a074d7b1-ethereum' │ 'ethereum' │ 'aave-v3' │ 'rsETH'             │ 891750287.3283969  │ 1.28796743063951e-7    │ [ '0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7' ] │ 891838308.3332376  │ 88021.00484073162   │ null           │ 0.0015352734541273494 │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xa1290d69c65a6fe4df752f95823fae25cb99e5a7&marketName=proto_mainnet_v3' │ false      │ null       │ null     │
│ 8       │ '0x53349cbed7a3f851f0722bf3fa8f1b93fa939bef-plasma'   │ 'plasma'   │ 'aave-v3' │ 'PT-sUSDE-9APR2026' │ 677733047.8853298  │ 0                      │ [ '0xab509448ad489e2E1341e25CC500f2596464Cc82' ] │ 677733047.8853298  │ 0                   │ null           │ 0                     │ 0.0005 │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0xab509448ad489e2e1341e25cc500f2596464cc82&marketName=proto_plasma_v3'  │ false      │ null       │ null     │
│ 9       │ '0x4f5923fc5fd4a93352581b38b7cd26943012decf-ethereum' │ 'ethereum' │ 'aave-v3' │ 'USDe'              │ 631314312.9928303  │ 0.8289165243863161     │ [ '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3' ] │ 1117854352.1197302 │ 486540039.12689996  │ null           │ 2.539119645070608     │ 0.72   │ 'https://app.aave.com/reserve-overview/?underlyingAsset=0x4c9edd5852cd905f086c759e8383e09bff1e68b3&marketName=proto_mainnet_v3' │ true       │ null       │ null     │
└─────────┴───────────────────────────────────────────────────────┴────────────┴───────────┴─────────────────────┴────────────────────┴────────────────────────┴──────────────────────────────────────────────────┴────────────────────┴─────────────────────┴────────────────┴───────────────────────┴────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┴──────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@0xkr3p 0xkr3p marked this pull request as ready for review February 6, 2026 17:22
@0xkr3p 0xkr3p requested a review from slasher125 February 6, 2026 17:22
@slasher125 slasher125 merged commit 7347d82 into DefiLlama:master Feb 9, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants