From 0f8d295edb399a0b5f6a7b5eb99fec3ee456dd55 Mon Sep 17 00:00:00 2001 From: nigiri <168690269+0xnigir1@users.noreply.github.com> Date: Wed, 28 Aug 2024 19:06:52 -0300 Subject: [PATCH 1/2] feat: add more exhaustive list of tokens and remove coingeckoId field --- packages/metadata/examples/chains.json | 40 + packages/metadata/examples/tokens.json | 3053 +++++++++++++++++ .../src/providers/githubMetadata.provider.ts | 6 +- .../providers/localFileMetadata.provider.ts | 6 +- packages/metadata/src/schemas/index.ts | 1 - .../test/fixtures/metadata.fixtures.ts | 4 - .../providers/githubMetadata.provider.spec.ts | 4 - packages/metrics/src/l1/l1MetricsService.ts | 51 +- .../test/unit/l1/l1MetricsService.spec.ts | 59 +- .../pricing/src/mappings/coingecko.mapping.ts | 374 +- packages/shared/src/metadata/token.ts | 50 - packages/shared/src/metadata/zkchain.ts | 14 +- packages/shared/src/types/token.type.ts | 1 - 13 files changed, 3473 insertions(+), 190 deletions(-) create mode 100644 packages/metadata/examples/chains.json create mode 100644 packages/metadata/examples/tokens.json diff --git a/packages/metadata/examples/chains.json b/packages/metadata/examples/chains.json new file mode 100644 index 0000000..2e0d8f3 --- /dev/null +++ b/packages/metadata/examples/chains.json @@ -0,0 +1,40 @@ +[ + { + "chainId": 324, + "name": "ZKsyncERA", + "iconUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/24091.png", + "publicRpcs": [ + "https://mainnet.era.zksync.io", + "https://zksync.drpc.org", + "https://zksync.meowrpc.com" + ], + "explorerUrl": "https://explorer.zksync.io/", + "launchDate": 1679626800, + "chainType": "Rollup", + "baseToken": { + "name": "Ether", + "symbol": "ETH", + "contractAddress": null, + "type": "native", + "imageUrl": "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628", + "decimals": 18 + } + }, + { + "chainId": 388, + "name": "Cronos", + "iconUrl": "https://zkevm.cronos.org/images/chains/zkevm.svg", + "chainType": "Validium", + "publicRpcs": ["https://mainnet.zkevm.cronos.org"], + "explorerUrl": "https://explorer.zkevm.cronos.org/", + "baseToken": { + "symbol": "zkCRO", + "name": "zkCRO", + "contractAddress": "0x28Ff2E4dD1B58efEB0fC138602A28D5aE81e44e2", + "type": "erc20", + "imageUrl": "https://zkevm.cronos.org/images/chains/zkevm.svg", + "decimals": 18 + }, + "launchDate": 1679626800 + } +] diff --git a/packages/metadata/examples/tokens.json b/packages/metadata/examples/tokens.json new file mode 100644 index 0000000..640c5c2 --- /dev/null +++ b/packages/metadata/examples/tokens.json @@ -0,0 +1,3053 @@ +[ + { + "name": "0x Protocol Token", + "symbol": "ZRX", + "contractAddress": "0xE41d2489571d322189246DaFA5ebDe1F4699F498", + "coingeckoId": "0x", + "imageUrl": "https://assets.coingecko.com/coins/images/863/large/0x.png?1696501996", + "type": "erc20", + "decimals": 18 + }, + { + "name": "10Set Token", + "symbol": "10SET", + "contractAddress": "0x7FF4169a6B5122b664c51c95727d87750eC07c84", + "coingeckoId": "tenset", + "imageUrl": "https://assets.coingecko.com/coins/images/14629/large/PNG_Tenset_Sign-back_RGB.png?1696514307", + "type": "erc20", + "decimals": 18 + }, + { + "name": "1INCH Token", + "symbol": "1INCH", + "contractAddress": "0x111111111117dC0aa78b770fA6A738034120C302", + "coingeckoId": "1inch", + "imageUrl": "https://assets.coingecko.com/coins/images/13469/large/1inch-token.png?1696513230", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Aave Token", + "symbol": "AAVE", + "contractAddress": "0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9", + "coingeckoId": "aave", + "imageUrl": "https://assets.coingecko.com/coins/images/12645/large/AAVE.png?1696512452", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Across Protocol Token", + "symbol": "ACX", + "contractAddress": "0x44108f0223A3C3028F5Fe7AEC7f9bb2E66beF82F", + "coingeckoId": "across-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/28161/large/across-200x200.png?1696527165", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Aevo", + "symbol": "AEVO", + "contractAddress": "0xB528edBef013aff855ac3c50b381f253aF13b997", + "coingeckoId": "aevo-exchange", + "imageUrl": "https://assets.coingecko.com/coins/images/35893/large/aevo.png?1710138340", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Alchemix USD", + "symbol": "alUSD", + "contractAddress": "0xBC6DA0FE9aD5f3b0d58160288917AA56653660E9", + "coingeckoId": "alchemix-usd", + "imageUrl": "https://assets.coingecko.com/coins/images/14114/large/Alchemix_USD.png?1696513835", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Alchemy", + "symbol": "ACH", + "contractAddress": "0xEd04915c23f00A313a544955524EB7DBD823143d", + "coingeckoId": "alchemy-pay", + "imageUrl": "https://assets.coingecko.com/coins/images/12390/large/ACH_%281%29.png?1696512213", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Aleph Zero", + "symbol": "AZERO", + "contractAddress": "0xdD0ae774F7E300CdAA4EA371cD55169665Ee6AFe", + "coingeckoId": "aleph-zero", + "imageUrl": "https://coin-images.coingecko.com/coins/images/17212/large/azero-logo_coingecko.png?1698147162", + "type": "erc20", + "decimals": 18 + }, + { + "name": "aleph.im v2", + "symbol": "ALEPH", + "contractAddress": "0x27702a26126e0B3702af63Ee09aC4d1A084EF628", + "coingeckoId": "aleph", + "imageUrl": "https://assets.coingecko.com/coins/images/11676/large/Aleph-Logo-BW.png?1696511566", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ALEX", + "symbol": "ALEX", + "contractAddress": "0xe7c3755482d0dA522678Af05945062d4427e0923", + "coingeckoId": "alexgo", + "imageUrl": "https://assets.coingecko.com/coins/images/25837/large/ALEX_Token.png?1696524922", + "type": "erc20", + "decimals": 18 + }, + { + "name": "AltLayer Token", + "symbol": "ALT", + "contractAddress": "0x8457CA5040ad67fdebbCC8EdCE889A335Bc0fbFB", + "coingeckoId": "altlayer", + "imageUrl": "https://coin-images.coingecko.com/coins/images/34608/large/Logomark_200x200.png?1715107868", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Amino", + "symbol": "AMO", + "contractAddress": "0x1a2EB478FA07125C9935A77b3C03a82470801E30", + "coingeckoId": "amino", + "imageUrl": "https://coin-images.coingecko.com/coins/images/32677/large/IMG_6956.png?1698920127", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Amp", + "symbol": "AMP", + "contractAddress": "0xfF20817765cB7f73d4bde2e66e067E58D11095C2", + "coingeckoId": "amp-token", + "imageUrl": "https://assets.coingecko.com/coins/images/12409/large/amp-200x200.png?1696512231", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ankr Network", + "symbol": "ANKR", + "contractAddress": "0x8290333ceF9e6D528dD5618Fb97a76f268f3EDD4", + "coingeckoId": "ankr", + "imageUrl": "https://assets.coingecko.com/coins/images/4324/large/U85xTl2.png?1696504928", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ankr Staked ETH", + "symbol": "ankrETH", + "contractAddress": "0xE95A203B1a91a908F9B9CE46459d101078c2c3cb", + "coingeckoId": "ankreth", + "imageUrl": "https://assets.coingecko.com/coins/images/13403/large/aETHc.png?1696513165", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ankr Staked MATIC", + "symbol": "ankrMATIC", + "contractAddress": "0x26dcFbFa8Bc267b250432c01C982Eaf81cC5480C", + "coingeckoId": "ankr-reward-earning-matic", + "imageUrl": "https://assets.coingecko.com/coins/images/25742/large/a-matic-c-da4ec10dc9723e695700e25dbf8c8edf.png?1696524833", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Anyswap", + "symbol": "ANY", + "contractAddress": "0xf99d58e463A2E07e5692127302C20A191861b4D6", + "coingeckoId": "anyswap", + "imageUrl": "https://assets.coingecko.com/coins/images/12242/large/anyswap.jpg?1696512074", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ApeCoin", + "symbol": "APE", + "contractAddress": "0x4d224452801ACEd8B2F0aebE155379bb5D594381", + "coingeckoId": "apecoin", + "imageUrl": "https://assets.coingecko.com/coins/images/24383/large/apecoin.jpg?1696523566", + "type": "erc20", + "decimals": 18 + }, + { + "name": "APENFT", + "symbol": "NFT", + "contractAddress": "0xEF40B859D21e4d566a3d713e756197c021BffaAa", + "coingeckoId": "apenft", + "imageUrl": "https://assets.coingecko.com/coins/images/15687/large/apenft.jpg?1696515316", + "type": "erc20", + "decimals": 6 + }, + { + "name": "ApeX Token", + "symbol": "APEX", + "contractAddress": "0x52A8845DF664D76C69d2EEa607CD793565aF42B8", + "coingeckoId": "apex-token-2", + "imageUrl": "https://assets.coingecko.com/coins/images/25266/large/CxpMECpk_400x400_%281%29.png?1696524406", + "type": "erc20", + "decimals": 18 + }, + { + "name": "API3", + "symbol": "API3", + "contractAddress": "0x0b38210ea11411557c13457D4dA7dC6ea731B88a", + "coingeckoId": "api3", + "imageUrl": "https://assets.coingecko.com/coins/images/13256/large/api3.jpg?1696513031", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Aragon Network Token", + "symbol": "ANT", + "contractAddress": "0xa117000000f279D81A1D3cc75430fAA017FA5A2e", + "coingeckoId": "aragon", + "imageUrl": "https://assets.coingecko.com/coins/images/681/large/Avatar_Circle_x6.png?1696501871", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Arbitrum", + "symbol": "ARB", + "contractAddress": "0xB50721BCf8d664c30412Cfbc6cf7a15145234ad1", + "coingeckoId": "arbitrum", + "imageUrl": "https://coin-images.coingecko.com/coins/images/16547/large/arb.jpg?1721358242", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ARPA Token", + "symbol": "ARPA", + "contractAddress": "0xBA50933C268F567BDC86E1aC131BE072C6B0b71a", + "coingeckoId": "arpa", + "imageUrl": "https://assets.coingecko.com/coins/images/8506/large/9u0a23XY_400x400.jpg?1696508685", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Audius", + "symbol": "AUDIO", + "contractAddress": "0x18aAA7115705e8be94bfFEBDE57Af9BFc265B998", + "coingeckoId": "audius", + "imageUrl": "https://assets.coingecko.com/coins/images/12913/large/AudiusCoinLogo_2x.png?1696512701", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Aurora", + "symbol": "AURORA", + "contractAddress": "0xAaAAAA20D9E0e2461697782ef11675f668207961", + "coingeckoId": "aurora-near", + "imageUrl": "https://assets.coingecko.com/coins/images/20582/large/aurora.jpeg?1696519989", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Axie Infinity Shard", + "symbol": "AXS", + "contractAddress": "0xBB0E17EF65F82Ab018d8EDd776e8DD940327B28b", + "coingeckoId": "axie-infinity", + "imageUrl": "https://assets.coingecko.com/coins/images/13029/large/axie_infinity_logo.png?1696512817", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Baby Doge Coin", + "symbol": "BabyDoge", + "contractAddress": "0xAC57De9C1A09FeC648E93EB98875B212DB0d460B", + "coingeckoId": "baby-doge-coin", + "imageUrl": "https://assets.coingecko.com/coins/images/16125/large/babydoge.jpg?1696515731", + "type": "erc20", + "decimals": 9 + }, + { + "name": "Bag", + "symbol": "BAG", + "contractAddress": "0x808688c820AB080A6Ff1019F03E5EC227D9b522B", + "coingeckoId": "bag", + "imageUrl": "https://assets.coingecko.com/coins/images/35417/large/BAG-coingecko.png?1709393428", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Balancer", + "symbol": "BAL", + "contractAddress": "0xba100000625a3754423978a60c9317c58a424e3D", + "coingeckoId": "balancer", + "imageUrl": "https://assets.coingecko.com/coins/images/11683/large/Balancer.png?1696511572", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Bancor Network Token", + "symbol": "BNT", + "contractAddress": "0x1F573D6Fb3F13d689FF844B4cE37794d79a7FF1C", + "coingeckoId": "bancor", + "imageUrl": "https://assets.coingecko.com/coins/images/736/large/bancor-bnt.png?1696501892", + "type": "erc20", + "decimals": 18 + }, + { + "name": "BandToken", + "symbol": "BAND", + "contractAddress": "0xBA11D00c5f74255f56a5E366F4F77f5A186d7f55", + "coingeckoId": "band-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/9545/large/Band_token_blue_violet_token.png?1696509627", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Basic Attention Token", + "symbol": "BAT", + "contractAddress": "0x0D8775F648430679A709E98d2b0Cb6250d2887EF", + "coingeckoId": "basic-attention-token", + "imageUrl": "https://assets.coingecko.com/coins/images/677/large/basic-attention-token.png?1696501867", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Bella", + "symbol": "BEL", + "contractAddress": "0xA91ac63D040dEB1b7A5E4d4134aD23eb0ba07e14", + "coingeckoId": "bella-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/12478/large/Bella.png?1696512296", + "type": "erc20", + "decimals": 18 + }, + { + "name": "BetSwirl v2", + "symbol": "BETS", + "contractAddress": "0x94025780a1aB58868D9B2dBBB775f44b32e8E6e5", + "coingeckoId": "betswirl", + "imageUrl": "https://coin-images.coingecko.com/coins/images/26618/large/icon_200.png?1696525691", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Biconomy Token", + "symbol": "BICO", + "contractAddress": "0xF17e65822b568B3903685a7c9F496CF7656Cc6C2", + "coingeckoId": "biconomy", + "imageUrl": "https://assets.coingecko.com/coins/images/21061/large/biconomy_logo.jpg?1696520444", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Bifrost", + "symbol": "BFC", + "contractAddress": "0x0c7D5ae016f806603CB1782bEa29AC69471CAb9c", + "coingeckoId": "bifrost", + "imageUrl": "https://assets.coingecko.com/coins/images/4639/large/BFC_Symbol.png?1696505208", + "type": "erc20", + "decimals": 18 + }, + { + "name": "BitDAO", + "symbol": "BIT", + "contractAddress": "0x1A4b46696b2bB4794Eb3D4c26f1c55F9170fa4C5", + "coingeckoId": "bitdao", + "imageUrl": "https://assets.coingecko.com/coins/images/17627/large/rI_YptK8.png?1696517158", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Bitfinex LEO Token", + "symbol": "LEO", + "contractAddress": "0x2AF5D2aD76741191D15Dfe7bF6aC92d4Bd912Ca3", + "coingeckoId": "leo-token", + "imageUrl": "https://assets.coingecko.com/coins/images/8418/large/leo-token.png?1696508607", + "type": "erc20", + "decimals": 18 + }, + { + "name": "BitTorrent", + "symbol": "BTT", + "contractAddress": "0xC669928185DbCE49d2230CC9B0979BE6DC797957", + "coingeckoId": "bittorrent", + "imageUrl": "https://assets.coingecko.com/coins/images/22457/large/btt_logo.png?1696521780", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Blur", + "symbol": "BLUR", + "contractAddress": "0x5283D291DBCF85356A21bA090E6db59121208b44", + "coingeckoId": "blur", + "imageUrl": "https://assets.coingecko.com/coins/images/28453/large/blur.png?1696527448", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Boba Token", + "symbol": "BOBA", + "contractAddress": "0x42bBFa2e77757C645eeaAd1655E0911a7553Efbc", + "coingeckoId": "boba-network", + "imageUrl": "https://assets.coingecko.com/coins/images/20285/large/Boba-200x200---white.png?1696519690", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Brokoli Token", + "symbol": "BRKL", + "contractAddress": "0x4674a4F24C5f63D53F22490Fb3A08eAAAD739ff8", + "coingeckoId": "brokoli", + "imageUrl": "https://assets.coingecko.com/coins/images/18763/large/brkl.png?1696518228", + "type": "erc20", + "decimals": 18 + }, + { + "name": "BUSD", + "symbol": "BUSD", + "contractAddress": "0x4Fabb145d64652a948d72533023f6E7A623C7C53", + "coingeckoId": "binance-usd", + "imageUrl": "https://assets.coingecko.com/coins/images/9576/large/BUSDLOGO.jpg?1696509654", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Cartesi Token", + "symbol": "CTSI", + "contractAddress": "0x491604c0FDF08347Dd1fa4Ee062a822A5DD06B5D", + "coingeckoId": "cartesi", + "imageUrl": "https://assets.coingecko.com/coins/images/11038/large/Cartesi_Logo.png?1696510982", + "type": "erc20", + "decimals": 18 + }, + { + "name": "CelerToken", + "symbol": "CELR", + "contractAddress": "0x4F9254C83EB525f9FCf346490bbb3ed28a81C667", + "coingeckoId": "celer-network", + "imageUrl": "https://assets.coingecko.com/coins/images/4379/large/Celr.png?1696504978", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Celsius", + "symbol": "CEL", + "contractAddress": "0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d", + "coingeckoId": "celsius-degree-token", + "imageUrl": "https://assets.coingecko.com/coins/images/3263/large/CEL_logo.png?1696503976", + "type": "erc20", + "decimals": 4 + }, + { + "name": "Chain", + "symbol": "XCN", + "contractAddress": "0xA2cd3D43c775978A96BdBf12d733D5A1ED94fb18", + "coingeckoId": "chain-2", + "imageUrl": "https://assets.coingecko.com/coins/images/24210/large/onyxlogo.jpg?1696523397", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ChainLink Token", + "symbol": "LINK", + "contractAddress": "0x514910771AF9Ca656af840dff83E8264EcF986CA", + "coingeckoId": "chainlink", + "imageUrl": "https://assets.coingecko.com/coins/images/877/large/chainlink-new-logo.png?1696502009", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ChainPort Token", + "symbol": "PORTX", + "contractAddress": "0x104F3152D8ebFC3f679392977356962Ff36566aC", + "coingeckoId": "chainport", + "imageUrl": "https://assets.coingecko.com/coins/images/24490/large/VE-tUL-q_400x400.png?1696523670", + "type": "erc20", + "decimals": 18 + }, + { + "name": "chiliZ", + "symbol": "CHZ", + "contractAddress": "0x3506424F91fD33084466F402d5D97f05F8e3b4AF", + "coingeckoId": "chiliz", + "imageUrl": "https://assets.coingecko.com/coins/images/8834/large/CHZ_Token_updated.png?1696508986", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Chroma", + "symbol": "CHR", + "contractAddress": "0x8A2279d4A90B6fe1C4B30fa660cC9f926797bAA2", + "coingeckoId": "chromaway", + "imageUrl": "https://assets.coingecko.com/coins/images/5000/large/Chromia.png?1696505533", + "type": "erc20", + "decimals": 6 + }, + { + "name": "Civic", + "symbol": "CVC", + "contractAddress": "0x41e5560054824eA6B0732E656E3Ad64E20e94E45", + "coingeckoId": "civic", + "imageUrl": "https://assets.coingecko.com/coins/images/788/large/civic-orange.png?1696501939", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Coin98", + "symbol": "C98", + "contractAddress": "0xAE12C5930881c53715B369ceC7606B70d8EB229f", + "coingeckoId": "coin98", + "imageUrl": "https://assets.coingecko.com/coins/images/17117/large/logo.png?1696516677", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Coinbase Wrapped Staked ETH", + "symbol": "cbETH", + "contractAddress": "0xBe9895146f7AF43049ca1c1AE358B0541Ea49704", + "coingeckoId": "coinbase-wrapped-staked-eth", + "imageUrl": "https://assets.coingecko.com/coins/images/27008/large/cbeth.png?1709186989", + "type": "erc20", + "decimals": 18 + }, + { + "name": "CoinEx Token", + "symbol": "CET", + "contractAddress": "0x081F67aFA0cCF8c7B17540767BBe95DF2bA8D97F", + "coingeckoId": "coinex-token", + "imageUrl": "https://assets.coingecko.com/coins/images/4817/large/coinex-token.png?1696505367", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Compound", + "symbol": "COMP", + "contractAddress": "0xc00e94Cb662C3520282E6f5717214004A7f26888", + "coingeckoId": "compound-governance-token", + "imageUrl": "https://assets.coingecko.com/coins/images/10775/large/COMP.png?1696510737", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Compound Dai", + "symbol": "cDAI", + "contractAddress": "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643", + "coingeckoId": "cdai", + "imageUrl": "https://assets.coingecko.com/coins/images/9281/large/cDAI.png?1696509390", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Compound Ether", + "symbol": "cETH", + "contractAddress": "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5", + "coingeckoId": "compound-ether", + "imageUrl": "https://assets.coingecko.com/coins/images/10643/large/ceth.png?1696510617", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Compound USD Coin", + "symbol": "cUSDC", + "contractAddress": "0x39AA39c021dfbaE8faC545936693aC917d5E7563", + "coingeckoId": "compound-usd-coin", + "imageUrl": "https://assets.coingecko.com/coins/images/9442/large/Compound_USDC.png?1696509534", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Compound Wrapped BTC", + "symbol": "cWBTC", + "contractAddress": "0xccF4429DB6322D5C611ee964527D42E5d685DD6a", + "coingeckoId": "compound-wrapped-btc", + "imageUrl": "https://assets.coingecko.com/coins/images/10823/large/cwbtc.png?1696510780", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Connect Financial", + "symbol": "CNFI", + "contractAddress": "0xEABB8996eA1662cAd2f7fB715127852cd3262Ae9", + "coingeckoId": "connect-financial", + "imageUrl": "https://assets.coingecko.com/coins/images/13592/large/cf-logo-iconic-black.png?1696513344", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Connext", + "symbol": "NEXT", + "contractAddress": "0xFE67A4450907459c3e1FFf623aA927dD4e28c67a", + "coingeckoId": "connext", + "imageUrl": "https://coin-images.coingecko.com/coins/images/31293/large/photo_2024-06-03_12-14-59.png?1717638614", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ConstitutionDAO", + "symbol": "PEOPLE", + "contractAddress": "0x7A58c0Be72BE218B41C608b7Fe7C5bB630736C71", + "coingeckoId": "constitutiondao", + "imageUrl": "https://assets.coingecko.com/coins/images/20612/large/GN_UVm3d_400x400.jpg?1696520017", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Convex CRV", + "symbol": "cvxCRV", + "contractAddress": "0x62B9c7356A2Dc64a1969e19C23e4f579F9810Aa7", + "coingeckoId": "convex-crv", + "imageUrl": "https://assets.coingecko.com/coins/images/15586/large/convex-crv.png?1696515222", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Convex FXS", + "symbol": "cvxFXS", + "contractAddress": "0xFEEf77d3f69374f66429C91d732A244f074bdf74", + "coingeckoId": "convex-fxs", + "imageUrl": "https://coin-images.coingecko.com/coins/images/29001/large/cvxfxs.png?1696527973", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Convex Token", + "symbol": "CVX", + "contractAddress": "0x4e3FBD56CD56c3e72c1403e103b45Db9da5B9D2B", + "coingeckoId": "convex-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/15585/large/convex.png?1696515221", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Cornucopias", + "symbol": "COPI", + "contractAddress": "0x42Baf1f659D765C65ADE5BB7E08eb2C680360d9d", + "coingeckoId": "cornucopias", + "imageUrl": "https://assets.coingecko.com/coins/images/21452/large/g56WwJDA_400x400.jpg?1696520814", + "type": "erc20", + "decimals": 18 + }, + { + "name": "COTI Token", + "symbol": "COTI", + "contractAddress": "0xDDB3422497E61e13543BeA06989C0789117555c5", + "coingeckoId": "coti", + "imageUrl": "https://assets.coingecko.com/coins/images/2962/large/Coti.png?1696503705", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Cratos", + "symbol": "CRTS", + "contractAddress": "0x678e840C640F619E17848045D23072844224dD37", + "coingeckoId": "cratos", + "imageUrl": "https://assets.coingecko.com/coins/images/17322/large/cratos.png?1696516876", + "type": "erc20", + "decimals": 18 + }, + { + "name": "CREDI", + "symbol": "CREDI", + "contractAddress": "0xaE6e307c3Fe9E922E5674DBD7F830Ed49c014c6B", + "coingeckoId": "credefi", + "imageUrl": "https://assets.coingecko.com/coins/images/21396/large/e1QbZ4qQ_400x400.jpg?1696520760", + "type": "erc20", + "decimals": 18 + }, + { + "name": "CRO", + "symbol": "CRO", + "contractAddress": "0xA0b73E1Ff0B80914AB6fe0444E65848C4C34450b", + "coingeckoId": "crypto-com-chain", + "imageUrl": "https://assets.coingecko.com/coins/images/7310/large/cro_token_logo.png?1696507599", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Curve DAO Token", + "symbol": "CRV", + "contractAddress": "0xD533a949740bb3306d119CC777fa900bA034cd52", + "coingeckoId": "curve-dao-token", + "imageUrl": "https://assets.coingecko.com/coins/images/12124/large/Curve.png?1696511967", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Curve.Fi USD Stablecoin", + "symbol": "crvUSD", + "contractAddress": "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E", + "coingeckoId": "crvusd", + "imageUrl": "https://coin-images.coingecko.com/coins/images/30118/large/crvusd.jpeg?1696529040", + "type": "erc20", + "decimals": 18 + }, + { + "name": "CyberConnect", + "symbol": "CYBER", + "contractAddress": "0x14778860E937f509e651192a90589dE711Fb88a9", + "coingeckoId": "cyberconnect", + "imageUrl": "https://assets.coingecko.com/coins/images/31274/large/token.png?1715826754", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Dai Stablecoin", + "symbol": "DAI", + "contractAddress": "0x6B175474E89094C44Da98b954EedeAC495271d0F", + "coingeckoId": "dai", + "imageUrl": "https://assets.coingecko.com/coins/images/9956/large/Badge_Dai.png?1696509996", + "type": "erc20", + "decimals": 18 + }, + { + "name": "DAO Maker", + "symbol": "DAO", + "contractAddress": "0x0f51bb10119727a7e5eA3538074fb341F56B09Ad", + "coingeckoId": "dao-maker", + "imageUrl": "https://assets.coingecko.com/coins/images/13915/large/4.png?1696513656", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Decentraland MANA", + "symbol": "MANA", + "contractAddress": "0x0F5D2fB29fb7d3CFeE444a200298f468908cC942", + "coingeckoId": "decentraland", + "imageUrl": "https://assets.coingecko.com/coins/images/878/large/decentraland-mana.png?1696502010", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Decentralized Insurance Protocol", + "symbol": "DIP", + "contractAddress": "0xc719d010B63E5bbF2C0551872CD5316ED26AcD83", + "coingeckoId": "etherisc", + "imageUrl": "https://coin-images.coingecko.com/coins/images/4586/large/dip.png?1696505164", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Decentralized USD", + "symbol": "USDD", + "contractAddress": "0x0C10bF8FcB7Bf5412187A595ab97a3609160b5c6", + "coingeckoId": "usdd", + "imageUrl": "https://assets.coingecko.com/coins/images/25380/large/UUSD.jpg?1696524513", + "type": "erc20", + "decimals": 18 + }, + { + "name": "DefiPulse Index", + "symbol": "DPI", + "contractAddress": "0x1494CA1F11D487c2bBe4543E90080AeBa4BA3C2b", + "coingeckoId": "defipulse-index", + "imageUrl": "https://coin-images.coingecko.com/coins/images/12465/large/defi_pulse_index_set.png?1696512284", + "type": "erc20", + "decimals": 18 + }, + { + "name": "DeGate Token", + "symbol": "DG", + "contractAddress": "0x53C8395465A84955c95159814461466053DedEDE", + "coingeckoId": "degate", + "imageUrl": "https://assets.coingecko.com/coins/images/14415/large/DG_token_brand_web_rgb_blue.png?1696514106", + "type": "erc20", + "decimals": 18 + }, + { + "name": "DENT", + "symbol": "DENT", + "contractAddress": "0x3597bfD533a99c9aa083587B074434E61Eb0A258", + "coingeckoId": "dent", + "imageUrl": "https://assets.coingecko.com/coins/images/1152/large/gLCEA2G.png?1696502243", + "type": "erc20", + "decimals": 8 + }, + { + "name": "DeversiFi Token", + "symbol": "DVF", + "contractAddress": "0xDDdddd4301A082e62E84e43F474f044423921918", + "coingeckoId": "rhinofi", + "imageUrl": "https://assets.coingecko.com/coins/images/16414/large/rhinologo.png?1697736807", + "type": "erc20", + "decimals": 18 + }, + { + "name": "DEXTF Token", + "symbol": "DEXTF", + "contractAddress": "0x5F64Ab1544D28732F0A24F4713c2C8ec0dA089f0", + "coingeckoId": "dextf", + "imageUrl": "https://coin-images.coingecko.com/coins/images/12634/large/0qgT0aMu_400x400.jpg?1696512442", + "type": "erc20", + "decimals": 18 + }, + { + "name": "DFX Token", + "symbol": "DFX", + "contractAddress": "0x888888435FDe8e7d4c54cAb67f206e4199454c60", + "coingeckoId": "dfx-finance", + "imageUrl": "https://coin-images.coingecko.com/coins/images/14091/large/DFX.png?1696513813", + "type": "erc20", + "decimals": 18 + }, + { + "name": "dHedge DAO Token", + "symbol": "DHT", + "contractAddress": "0xca1207647Ff814039530D7d35df0e1Dd2e91Fa84", + "coingeckoId": "dhedge-dao", + "imageUrl": "https://assets.coingecko.com/coins/images/12508/large/dht.png?1696512323", + "type": "erc20", + "decimals": 18 + }, + { + "name": "digitalbits", + "symbol": "XDB", + "contractAddress": "0xB9EefC4b0d472A44be93970254Df4f4016569d27", + "coingeckoId": "digitalbits", + "imageUrl": "https://assets.coingecko.com/coins/images/8089/large/XDB_CHAIN_LOGO.jpeg?1702723430", + "type": "erc20", + "decimals": 7 + }, + { + "name": "Dogelon", + "symbol": "ELON", + "contractAddress": "0x761D38e5ddf6ccf6Cf7c55759d5210750B5D60F3", + "coingeckoId": "dogelon-mars", + "imageUrl": "https://assets.coingecko.com/coins/images/14962/large/6GxcPRo3_400x400.jpg?1696514622", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Dola USD Stablecoin", + "symbol": "DOLA", + "contractAddress": "0x865377367054516e17014CcdED1e7d814EDC9ce4", + "coingeckoId": "dola-usd", + "imageUrl": "https://assets.coingecko.com/coins/images/14287/large/dola.png?1696513984", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Dopex Governance Token", + "symbol": "DPX", + "contractAddress": "0xEec2bE5c91ae7f8a338e1e5f3b5DE49d07AfdC81", + "coingeckoId": "dopex", + "imageUrl": "https://assets.coingecko.com/coins/images/16652/large/DPX_%281%29.png?1696516213", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Dopex Rebate Token", + "symbol": "rDPX", + "contractAddress": "0x0ff5A8451A839f5F0BB3562689D9A44089738D11", + "coingeckoId": "dopex-rebate-token", + "imageUrl": "https://assets.coingecko.com/coins/images/16659/large/rDPX_200x200_Coingecko.png?1696516221", + "type": "erc20", + "decimals": 18 + }, + { + "name": "dYdX", + "symbol": "DYDX", + "contractAddress": "0x92D6C1e31e14520e676a687F0a93788B716BEff5", + "coingeckoId": "dydx", + "imageUrl": "https://assets.coingecko.com/coins/images/17500/large/hjnIm9bV.jpg?1696517040", + "type": "erc20", + "decimals": 18 + }, + { + "name": "E-RADIX", + "symbol": "eXRD", + "contractAddress": "0x6468e79A80C0eaB0F9A2B574c8d5bC374Af59414", + "coingeckoId": "e-radix", + "imageUrl": "https://assets.coingecko.com/coins/images/13145/large/exrd_logo.png?1696512931", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ekubo Protocol", + "symbol": "EKUBO", + "contractAddress": "0x04C46E830Bb56ce22735d5d8Fc9CB90309317d0f", + "coingeckoId": "ekubo-protocol", + "imageUrl": "https://coin-images.coingecko.com/coins/images/37715/large/135474885.png?1715330450", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ENA", + "symbol": "ENA", + "contractAddress": "0x57e114B691Db790C35207b2e685D4A43181e6061", + "coingeckoId": "ethena", + "imageUrl": "https://assets.coingecko.com/coins/images/36530/large/ethena.png?1711701436", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Enjin Coin", + "symbol": "ENJ", + "contractAddress": "0xF629cBd94d3791C9250152BD8dfBDF380E2a3B9c", + "coingeckoId": "enjincoin", + "imageUrl": "https://assets.coingecko.com/coins/images/1102/large/enjin-coin-logo.png?1696502200", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Epik Prime", + "symbol": "EPIK", + "contractAddress": "0x4da0C48376C277cdBd7Fc6FdC6936DEE3e4AdF75", + "coingeckoId": "epik-prime", + "imageUrl": "https://assets.coingecko.com/coins/images/17907/large/EPIK_Prime_LOGO.jpg?1696517427", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Equilibria Token", + "symbol": "EQB", + "contractAddress": "0xfE80D611c6403f70e5B1b9B722D2B3510B740B2B", + "coingeckoId": "equilibria-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/30645/large/QLLK8pmR_400x400.jpg?1696529516", + "type": "erc20", + "decimals": 18 + }, + { + "name": "EscoinToken", + "symbol": "ELG", + "contractAddress": "0xA2085073878152aC3090eA13D1e41bD69e60Dc99", + "coingeckoId": "escoin-token", + "imageUrl": "https://assets.coingecko.com/coins/images/13566/large/escoin-200.png?1696513320", + "type": "erc20", + "decimals": 18 + }, + { + "name": "eSOV", + "symbol": "eSOV", + "contractAddress": "0xbdab72602e9AD40FC6a6852CAf43258113B8F7a5", + "coingeckoId": "sovryn", + "imageUrl": "https://assets.coingecko.com/coins/images/16248/large/sovryn_logo_orange.png?1709174299", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ether", + "symbol": "ETH", + "contractAddress": null, + "coingeckoId": "ethereum", + "imageUrl": "https://assets.coingecko.com/coins/images/279/large/ethereum.png?1595348880", + "type": "native", + "decimals": 18 + }, + { + "name": "ether.fi ETH", + "symbol": "eETH", + "contractAddress": "0x35fA164735182de50811E8e2E824cFb9B6118ac2", + "coingeckoId": "ether-fi-staked-eth", + "imageUrl": "https://coin-images.coingecko.com/coins/images/33049/large/ether.fi_eETH.png?1700473063", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ether.fi governance token", + "symbol": "ETHFI", + "contractAddress": "0xFe0c30065B384F05761f15d0CC899D4F9F9Cc0eB", + "coingeckoId": "ether-fi", + "imageUrl": "https://assets.coingecko.com/coins/images/35958/large/etherfi.jpeg?1710254562", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ethereum Name Service", + "symbol": "ENS", + "contractAddress": "0xC18360217D8F7Ab5e7c516566761Ea12Ce7F9D72", + "coingeckoId": "ethereum-name-service", + "imageUrl": "https://assets.coingecko.com/coins/images/19785/large/acatxTm8_400x400.jpg?1696519207", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ETHx", + "symbol": "ETHx", + "contractAddress": "0xA35b1B31Ce002FBF2058D22F30f95D405200A15b", + "coingeckoId": "stader-ethx", + "imageUrl": "https://coin-images.coingecko.com/coins/images/30870/large/staderx.png?1696529717", + "type": "erc20", + "decimals": 18 + }, + { + "name": "EURA (previously agEUR)", + "symbol": "EURA", + "contractAddress": "0x1a7e4e63778B4f12a199C062f3eFdD288afCBce8", + "coingeckoId": "ageur", + "imageUrl": "https://assets.coingecko.com/coins/images/19479/large/agEUR.png?1696518915", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Euro Tether", + "symbol": "EURT", + "contractAddress": "0xC581b735A1688071A1746c968e0798D642EDE491", + "coingeckoId": "tether-eurt", + "imageUrl": "https://assets.coingecko.com/coins/images/17385/large/Tether_new.png?1696516934", + "type": "erc20", + "decimals": 6 + }, + { + "name": "Fantom Token", + "symbol": "FTM", + "contractAddress": "0x4E15361FD6b4BB609Fa63C81A2be19d873717870", + "coingeckoId": "wrapped-fantom", + "imageUrl": "https://assets.coingecko.com/coins/images/16036/large/Fantom.png?1696515646", + "type": "erc20", + "decimals": 18 + }, + { + "name": "FEGtoken", + "symbol": "FEG", + "contractAddress": "0x389999216860AB8E0175387A0c90E5c52522C945", + "coingeckoId": "feg-token-2", + "imageUrl": "https://assets.coingecko.com/coins/images/13878/large/F-Icon-FEG-200x200-288dpi-01_%281%29.png?1696513622", + "type": "erc20", + "decimals": 9 + }, + { + "name": "Fei USD", + "symbol": "FEI", + "contractAddress": "0x956F47F50A910163D8BF957Cf5846D573E7f87CA", + "coingeckoId": "fei-usd", + "imageUrl": "https://assets.coingecko.com/coins/images/14570/large/ZqsF51Re_400x400.png?1696514251", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Fetch", + "symbol": "FET", + "contractAddress": "0xaea46A60368A7bD060eec7DF8CBa43b7EF41Ad85", + "coingeckoId": "fetch-ai", + "imageUrl": "https://assets.coingecko.com/coins/images/5681/large/Fetch.jpg?1696506140", + "type": "erc20", + "decimals": 18 + }, + { + "name": "FORE Protocol", + "symbol": "FORE", + "contractAddress": "0xB2ee0aDBe0EF1281025d0676511bB1df14600f4D", + "coingeckoId": "fore-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/31001/large/EXCHANGE_LOGO_FORE.png?1696529839", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Frax", + "symbol": "FRAX", + "contractAddress": "0x853d955aCEf822Db058eb8505911ED77F175b99e", + "coingeckoId": "frax", + "imageUrl": "https://assets.coingecko.com/coins/images/13422/large/FRAX_icon.png?1696513182", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Frax Ether", + "symbol": "frxETH", + "contractAddress": "0x5E8422345238F34275888049021821E8E08CAa1f", + "coingeckoId": "frax-ether", + "imageUrl": "https://assets.coingecko.com/coins/images/28284/large/frxETH_icon.png?1696527284", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Frax Price Index", + "symbol": "FPI", + "contractAddress": "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E", + "coingeckoId": "frax-price-index", + "imageUrl": "https://assets.coingecko.com/coins/images/24945/large/FPI_icon.png?1696524100", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Frax Price Index Share", + "symbol": "FPIS", + "contractAddress": "0xc2544A32872A91F4A553b404C6950e89De901fdb", + "coingeckoId": "frax-price-index-share", + "imageUrl": "https://assets.coingecko.com/coins/images/24944/large/FPIS_icon.png?1696524099", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Frax Share", + "symbol": "FXS", + "contractAddress": "0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0", + "coingeckoId": "frax-share", + "imageUrl": "https://assets.coingecko.com/coins/images/13423/large/Frax_Shares_icon.png?1696513183", + "type": "erc20", + "decimals": 18 + }, + { + "name": "FTT", + "symbol": "FTX Token", + "contractAddress": "0x50D1c9771902476076eCFc8B2A83Ad6b9355a4c9", + "coingeckoId": "ftx-token", + "imageUrl": "https://assets.coingecko.com/coins/images/9026/large/F.png?1696509161", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Function X", + "symbol": "FX", + "contractAddress": "0x8c15Ef5b4B21951d50E53E4fbdA8298FFAD25057", + "coingeckoId": "fx-coin", + "imageUrl": "https://assets.coingecko.com/coins/images/8186/large/47271330_590071468072434_707260356350705664_n.jpg?1696508396", + "type": "erc20", + "decimals": 18 + }, + { + "name": "GAINS", + "symbol": "GAINS", + "contractAddress": "0x056C1D42Fb1326f57da7f19eBB7dDA4673f1FF55", + "coingeckoId": "gains", + "imageUrl": "https://assets.coingecko.com/coins/images/14681/large/200x200.png?1696514354", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Gala", + "symbol": "GALA", + "contractAddress": "0x15D4c048F83bd7e37d49eA4C83a07267Ec4203dA", + "coingeckoId": "gala", + "imageUrl": "https://assets.coingecko.com/coins/images/12493/large/GALA-COINGECKO.png?1696512310", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Game Coin", + "symbol": "GAME", + "contractAddress": "0xD567B5F02b9073aD3a982a099a23Bf019FF11d1c", + "coingeckoId": "gamestarter", + "imageUrl": "https://assets.coingecko.com/coins/images/17604/large/gpMi14-r_400x400.jpg?1696517136", + "type": "erc20", + "decimals": 5 + }, + { + "name": "GateChainToken", + "symbol": "GT", + "contractAddress": "0xE66747a101bFF2dBA3697199DCcE5b743b454759", + "coingeckoId": "gatechain-token", + "imageUrl": "https://assets.coingecko.com/coins/images/8183/large/gate.png?1696508395", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Gemini dollar", + "symbol": "GUSD", + "contractAddress": "0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd", + "coingeckoId": "gemini-dollar", + "imageUrl": "https://assets.coingecko.com/coins/images/5992/large/gemini-dollar-gusd.png?1696506408", + "type": "erc20", + "decimals": 2 + }, + { + "name": "GenomesDAO", + "symbol": "GENE", + "contractAddress": "0x21413c119b0C11C5d96aE1bD328917bC5C8ED67E", + "coingeckoId": "genomesdao", + "imageUrl": "https://assets.coingecko.com/coins/images/20807/large/1637683704200x200.png?1696520200", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Gho Token", + "symbol": "GHO", + "contractAddress": "0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f", + "coingeckoId": "gho", + "imageUrl": "https://coin-images.coingecko.com/coins/images/30663/large/ghoaave.jpeg?1696529533", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Gnosis Token", + "symbol": "GNO", + "contractAddress": "0x6810e776880C02933D47DB1b9fc05908e5386b96", + "coingeckoId": "gnosis", + "imageUrl": "https://assets.coingecko.com/coins/images/662/large/logo_square_simple_300px.png?1696501854", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Golem Network Token", + "symbol": "GLM", + "contractAddress": "0x7DD9c5Cba05E151C895FDe1CF355C9A1D5DA6429", + "coingeckoId": "golem", + "imageUrl": "https://assets.coingecko.com/coins/images/542/large/Golem_Submark_Positive_RGB.png?1696501761", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Goons of Balatroon", + "symbol": "GOB", + "contractAddress": "0x830eB1204380E9c44434Db8700257025358707c6", + "coingeckoId": "goons-of-balatroon", + "imageUrl": "https://assets.coingecko.com/coins/images/27104/large/TokenLogo200x200.png?1702250134", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Governance OHM", + "symbol": "gOHM", + "contractAddress": "0x0ab87046fBb341D058F17CBC4c1133F25a20a52f", + "coingeckoId": "governance-ohm", + "imageUrl": "https://assets.coingecko.com/coins/images/21129/large/token_wsOHM_logo.png?1696520508", + "type": "erc20", + "decimals": 18 + }, + { + "name": "GOVI", + "symbol": "GOVI", + "contractAddress": "0xeEAA40B28A2d1b0B08f6f97bB1DD4B75316c6107", + "coingeckoId": "govi", + "imageUrl": "https://assets.coingecko.com/coins/images/13875/large/GOVI.png?1696513619", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Graph Token", + "symbol": "GRT", + "contractAddress": "0xc944E90C64B2c07662A292be6244BDf05Cda44a7", + "coingeckoId": "the-graph", + "imageUrl": "https://assets.coingecko.com/coins/images/13397/large/Graph_Token.png?1696513159", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Gravity", + "symbol": "G", + "contractAddress": "0x9C7BEBa8F6eF6643aBd725e45a4E8387eF260649", + "coingeckoId": "g-token", + "imageUrl": "https://coin-images.coingecko.com/coins/images/39200/large/gravity.jpg?1721020647", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Guild of Guardians", + "symbol": "GOG", + "contractAddress": "0x9AB7bb7FdC60f4357ECFef43986818A2A3569c62", + "coingeckoId": "guild-of-guardians", + "imageUrl": "https://assets.coingecko.com/coins/images/17362/large/V2QDNoLg_400x400.jpg?1696516913", + "type": "erc20", + "decimals": 18 + }, + { + "name": "HairDAO Token", + "symbol": "HAIR", + "contractAddress": "0x9Ce115f0341ae5daBC8B477b74E83db2018A6f42", + "coingeckoId": "hairdao", + "imageUrl": "https://assets.coingecko.com/coins/images/29620/large/LinkedIn_Logo.jpg?1696528556", + "type": "erc20", + "decimals": 18 + }, + { + "name": "HanChain", + "symbol": "HAN", + "contractAddress": "0x0c90C57aaf95A3A87eadda6ec3974c99D786511F", + "coingeckoId": "hanchain", + "imageUrl": "https://assets.coingecko.com/coins/images/27374/large/logo_200.png?1696526418", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Hegic", + "symbol": "HEGIC", + "contractAddress": "0x584bC13c7D411c00c01A62e8019472dE68768430", + "coingeckoId": "hegic", + "imageUrl": "https://assets.coingecko.com/coins/images/12454/large/new.png?1696512274", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Hermez Network Token", + "symbol": "HEZ", + "contractAddress": "0xEEF9f339514298C6A857EfCfC1A762aF84438dEE", + "coingeckoId": "hermez-network-token", + "imageUrl": "https://assets.coingecko.com/coins/images/12826/large/hermez_logo.png?1696512617", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Heroes of Mavia", + "symbol": "MAVIA", + "contractAddress": "0x24fcFC492C1393274B6bcd568ac9e225BEc93584", + "coingeckoId": "heroes-of-mavia", + "imageUrl": "https://coin-images.coingecko.com/coins/images/33895/large/2023-12-20_21.21.41_%281%29.jpg?1703230771", + "type": "erc20", + "decimals": 18 + }, + { + "name": "HoloToken", + "symbol": "HOT", + "contractAddress": "0x6c6EE5e31d828De241282B9606C8e98Ea48526E2", + "coingeckoId": "holotoken", + "imageUrl": "https://assets.coingecko.com/coins/images/3348/large/Holologo_Profile.png?1696504052", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Hop", + "symbol": "HOP", + "contractAddress": "0xc5102fE9359FD9a28f877a67E36B0F050d81a3CC", + "coingeckoId": "hop-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/25445/large/hop.png?1696524577", + "type": "erc20", + "decimals": 18 + }, + { + "name": "HUMANS", + "symbol": "HEART", + "contractAddress": "0x8FAc8031e079F409135766C7d5De29cf22EF897C", + "coingeckoId": "humans-ai", + "imageUrl": "https://assets.coingecko.com/coins/images/21273/large/h_logo_1x.png?1696520644", + "type": "erc20", + "decimals": 18 + }, + { + "name": "HuobiToken", + "symbol": "HT", + "contractAddress": "0x6f259637dcD74C767781E37Bc6133cd6A68aa161", + "coingeckoId": "huobi-token", + "imageUrl": "https://assets.coingecko.com/coins/images/2822/large/huobi-token-logo.png?1696503584", + "type": "erc20", + "decimals": 18 + }, + { + "name": "HUSD", + "symbol": "HUSD", + "contractAddress": "0xdF574c24545E5FfEcb9a659c229253D4111d87e1", + "coingeckoId": "husd", + "imageUrl": "https://assets.coingecko.com/coins/images/9567/large/HUSD.jpg?1696509647", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Illuvium", + "symbol": "ILV", + "contractAddress": "0x767FE9EDC9E0dF98E07454847909b5E959D7ca0E", + "coingeckoId": "illuvium", + "imageUrl": "https://assets.coingecko.com/coins/images/14468/large/logo-200x200.png?1696514154", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Immutable X", + "symbol": "IMX", + "contractAddress": "0xF57e7e7C23978C3cAEC3C3548E3D615c346e79fF", + "coingeckoId": "immutable-x", + "imageUrl": "https://assets.coingecko.com/coins/images/17233/large/immutableX-symbol-BLK-RGB.png?1696516787", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Injective Token", + "symbol": "INJ", + "contractAddress": "0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30", + "coingeckoId": "injective-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/12882/large/Secondary_Symbol.png?1696512670", + "type": "erc20", + "decimals": 18 + }, + { + "name": "iZUMi Bond USD", + "symbol": "iUSD", + "contractAddress": "0x0A3BB08b3a15A19b4De82F8AcFc862606FB69A2D", + "coingeckoId": "izumi-bond-usd", + "imageUrl": "https://assets.coingecko.com/coins/images/25388/large/iusd-logo-symbol-10k%E5%A4%A7%E5%B0%8F.png?1696524521", + "type": "erc20", + "decimals": 18 + }, + { + "name": "KEEP Token", + "symbol": "KEEP", + "contractAddress": "0x85Eee30c52B0b379b046Fb0F85F4f3Dc3009aFEC", + "coingeckoId": "keep-network", + "imageUrl": "https://assets.coingecko.com/coins/images/3373/large/IuNzUb5b_400x400.jpg?1696504072", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Keep3rV1", + "symbol": "KP3R", + "contractAddress": "0x1cEB5cB57C4D4E2b2433641b95Dd330A33185A44", + "coingeckoId": "keep3rv1", + "imageUrl": "https://assets.coingecko.com/coins/images/12966/large/kp3r_logo.jpg?1696512754", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Koi", + "symbol": "KOI", + "contractAddress": "0x9D14BcE1dADdf408d77295BB1be9b343814f44DE", + "coingeckoId": "koi-3", + "imageUrl": "https://assets.coingecko.com/coins/images/35766/large/Koi_logo.png?1709782399", + "type": "erc20", + "decimals": 18 + }, + { + "name": "KuCoin Token", + "symbol": "KCS", + "contractAddress": "0xf34960d9d60be18cC1D5Afc1A6F012A723a28811", + "coingeckoId": "kucoin-shares", + "imageUrl": "https://assets.coingecko.com/coins/images/1047/large/sa9z79.png?1696502152", + "type": "erc20", + "decimals": 6 + }, + { + "name": "Kyber Network Crystal v2", + "symbol": "KNC", + "contractAddress": "0xdeFA4e8a7bcBA345F687a2f1456F5Edd9CE97202", + "coingeckoId": "kyber-network-crystal", + "imageUrl": "https://assets.coingecko.com/coins/images/14899/large/RwdVsGcw_400x400.jpg?1696514562", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Lambda", + "symbol": "LAMB", + "contractAddress": "0x8971f9fd7196e5cEE2C1032B50F656855af7Dd26", + "coingeckoId": "lambda", + "imageUrl": "https://coin-images.coingecko.com/coins/images/4703/large/lambda_200.png?1696505268", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ledgity Token", + "symbol": "LDY", + "contractAddress": "0x482dF7483a52496F4C65AB499966dfcdf4DDFDbc", + "coingeckoId": "ledgity-token", + "imageUrl": "https://coin-images.coingecko.com/coins/images/35046/large/ldy-token.png?1707204910", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Lido DAO Token", + "symbol": "LDO", + "contractAddress": "0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32", + "coingeckoId": "lido-dao", + "imageUrl": "https://assets.coingecko.com/coins/images/13573/large/Lido_DAO.png?1696513326", + "type": "erc20", + "decimals": 18 + }, + { + "name": "LightLink", + "symbol": "LL", + "contractAddress": "0x0921799CB1d702148131024d18fCdE022129Dc73", + "coingeckoId": "lightlink", + "imageUrl": "https://coin-images.coingecko.com/coins/images/35357/large/lightlink-ticker-200.png?1708362303", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Liquid staked Ether 2.0", + "symbol": "stETH", + "contractAddress": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84", + "coingeckoId": "staked-ether", + "imageUrl": "https://assets.coingecko.com/coins/images/13442/large/steth_logo.png?1696513206", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Lisk", + "symbol": "LSK", + "contractAddress": "0x6033F7f88332B8db6ad452B7C6D5bB643990aE3f", + "coingeckoId": "lisk", + "imageUrl": "https://coin-images.coingecko.com/coins/images/385/large/Lisk_Symbol_-_Blue.png?1696501687", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Livepeer Token", + "symbol": "LPT", + "contractAddress": "0x58b6A8A3302369DAEc383334672404Ee733aB239", + "coingeckoId": "livepeer", + "imageUrl": "https://assets.coingecko.com/coins/images/7137/large/logo-circle-green.png?1696507437", + "type": "erc20", + "decimals": 18 + }, + { + "name": "LooksRare Token", + "symbol": "LOOKS", + "contractAddress": "0xf4d2888d29D722226FafA5d9B24F9164c092421E", + "coingeckoId": "looksrare", + "imageUrl": "https://assets.coingecko.com/coins/images/22173/large/circle-black-256.png?1696521517", + "type": "erc20", + "decimals": 18 + }, + { + "name": "LoopringCoin V2", + "symbol": "LRC", + "contractAddress": "0xBBbbCA6A901c926F240b89EacB641d8Aec7AEafD", + "coingeckoId": "loopring", + "imageUrl": "https://assets.coingecko.com/coins/images/913/large/LRC.png?1696502034", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Lords", + "symbol": "LORDS", + "contractAddress": "0x686f2404e77Ab0d9070a46cdfb0B7feCDD2318b0", + "coingeckoId": "lords", + "imageUrl": "https://assets.coingecko.com/coins/images/22171/large/Frame_1.png?1696521515", + "type": "erc20", + "decimals": 18 + }, + { + "name": "LQTY", + "symbol": "LQTY", + "contractAddress": "0x6DEA81C8171D0bA574754EF6F8b412F2Ed88c54D", + "coingeckoId": "liquity", + "imageUrl": "https://assets.coingecko.com/coins/images/14665/large/200-lqty-icon.png?1696514340", + "type": "erc20", + "decimals": 18 + }, + { + "name": "LUKSO Token", + "symbol": "LYXe", + "contractAddress": "0xA8b919680258d369114910511cc87595aec0be6D", + "coingeckoId": "lukso-token", + "imageUrl": "https://assets.coingecko.com/coins/images/11423/large/LYX.png?1696511335", + "type": "erc20", + "decimals": 18 + }, + { + "name": "LUSD Stablecoin", + "symbol": "LUSD", + "contractAddress": "0x5f98805A4E8be255a32880FDeC7F6728C6568bA0", + "coingeckoId": "liquity-usd", + "imageUrl": "https://assets.coingecko.com/coins/images/14666/large/Group_3.png?1696514341", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Lyra Token", + "symbol": "LYRA", + "contractAddress": "0x01BA67AAC7f75f647D94220Cc98FB30FCc5105Bf", + "coingeckoId": "lyra-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/21490/large/Add-a-heading-26.png?1696520850", + "type": "erc20", + "decimals": 18 + }, + { + "name": "MAGIC", + "symbol": "MAGIC", + "contractAddress": "0xB0c7a3Ba49C7a6EaBa6cD4a96C55a1391070Ac9A", + "coingeckoId": "magic", + "imageUrl": "https://assets.coingecko.com/coins/images/18623/large/magic.png?1696518095", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Magic Internet Money", + "symbol": "MIM", + "contractAddress": "0x99D8a9C45b2ecA8864373A26D1459e3Dff1e17F3", + "coingeckoId": "magic-internet-money", + "imageUrl": "https://assets.coingecko.com/coins/images/16786/large/mimlogopng.png?1696516358", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Maker", + "symbol": "MKR", + "contractAddress": "0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2", + "coingeckoId": "maker", + "imageUrl": "https://assets.coingecko.com/coins/images/1364/large/Mark_Maker.png?1585191826", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Mantle", + "symbol": "MNT", + "contractAddress": "0x3c3a81e81dc49A522A592e7622A7E711c06bf354", + "coingeckoId": "mantle", + "imageUrl": "https://assets.coingecko.com/coins/images/30980/large/token-logo.png?1696529819", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Marlin POND", + "symbol": "POND", + "contractAddress": "0x57B946008913B82E4dF85f501cbAeD910e58D26C", + "coingeckoId": "marlin", + "imageUrl": "https://assets.coingecko.com/coins/images/8903/large/200x200.png?1706115827", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Mask Network", + "symbol": "MASK", + "contractAddress": "0x69af81e73A73B40adF4f3d4223Cd9b1ECE623074", + "coingeckoId": "mask-network", + "imageUrl": "https://assets.coingecko.com/coins/images/14051/large/Mask_Network.jpg?1696513776", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Matic Token", + "symbol": "MATIC", + "contractAddress": "0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0", + "coingeckoId": "matic-network", + "imageUrl": "https://assets.coingecko.com/coins/images/4713/large/polygon.png?1698233745", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Meld", + "symbol": "MELD", + "contractAddress": "0x333000333b26eE30214B4af6419D9ab07a450400", + "coingeckoId": "meld-2", + "imageUrl": "https://assets.coingecko.com/coins/images/30170/large/Twitter.jpg?1696529090", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Merit Circle", + "symbol": "MC", + "contractAddress": "0x949D48EcA67b17269629c7194F4b727d4Ef9E5d6", + "coingeckoId": "merit-circle", + "imageUrl": "https://assets.coingecko.com/coins/images/19304/large/Db4XqML.png?1696518747", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Metal", + "symbol": "MTL", + "contractAddress": "0xF433089366899D83a9f26A773D59ec7eCF30355e", + "coingeckoId": "metal", + "imageUrl": "https://assets.coingecko.com/coins/images/763/large/Metal.png?1696501916", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Metaverse Index", + "symbol": "MVI", + "contractAddress": "0x72e364F2ABdC788b7E918bc238B21f109Cd634D7", + "coingeckoId": "metaverse-index", + "imageUrl": "https://coin-images.coingecko.com/coins/images/14684/large/MVI_logo.png?1696514357", + "type": "erc20", + "decimals": 18 + }, + { + "name": "mETH", + "symbol": "mETH", + "contractAddress": "0xd5F7838F5C461fefF7FE49ea5ebaF7728bB0ADfa", + "coingeckoId": "mantle-staked-ether", + "imageUrl": "https://assets.coingecko.com/coins/images/33345/large/symbol_transparent_bg.png?1701697066", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Metis Token", + "symbol": "Metis", + "contractAddress": "0x9E32b13ce7f2E80A01932B42553652E053D6ed8e", + "coingeckoId": "metis-token", + "imageUrl": "https://assets.coingecko.com/coins/images/15595/large/Metis_Black_Bg.png?1702968192", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Mountain Protocol USD", + "symbol": "USDM", + "contractAddress": "0x59D9356E565Ab3A36dD77763Fc0d87fEaf85508C", + "coingeckoId": "mountain-protocol-usdm", + "imageUrl": "https://assets.coingecko.com/coins/images/31719/large/usdm.png?1696530540", + "type": "erc20", + "decimals": 18 + }, + { + "name": "mswETH", + "symbol": "mswETH", + "contractAddress": "0x32bd822d615A3658A68b6fDD30c2fcb2C996D678", + "coingeckoId": "eigenpie-sweth", + "imageUrl": "https://coin-images.coingecko.com/coins/images/37167/large/mswETH.png?1713507053", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Mute.io", + "symbol": "MUTE", + "contractAddress": "0xA49d7499271aE71cd8aB9Ac515e6694C755d400c", + "coingeckoId": "mute", + "imageUrl": "https://assets.coingecko.com/coins/images/14331/large/MUTE.png?1696514019", + "type": "erc20", + "decimals": 18 + }, + { + "name": "MUX Protocol", + "symbol": "MCB", + "contractAddress": "0x4e352cF164E64ADCBad318C3a1e222E9EBa4Ce42", + "coingeckoId": "mcdex", + "imageUrl": "https://assets.coingecko.com/coins/images/11796/large/mux.jpg?1696511672", + "type": "erc20", + "decimals": 18 + }, + { + "name": "MXCToken", + "symbol": "MXC", + "contractAddress": "0x5Ca381bBfb58f0092df149bD3D243b08B9a8386e", + "coingeckoId": "mxc", + "imageUrl": "https://assets.coingecko.com/coins/images/4604/large/mxc.png?1696505179", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Myria", + "symbol": "MYRIA", + "contractAddress": "0xA0Ef786Bf476fE0810408CaBA05E536aC800ff86", + "coingeckoId": "myria", + "imageUrl": "https://assets.coingecko.com/coins/images/29273/large/myria.png?1696528226", + "type": "erc20", + "decimals": 18 + }, + { + "name": "MYSO Token", + "symbol": "MYT", + "contractAddress": "0x5fDe99e121F3aC02e7d6ACb081dB1f89c1e93C17", + "coingeckoId": "myso-token", + "imageUrl": "https://coin-images.coingecko.com/coins/images/37844/large/av_02_2.jpg?1715754813", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Neutrino USD", + "symbol": "USDN", + "contractAddress": "0x674C6Ad92Fd080e4004b2312b45f796a192D27a0", + "coingeckoId": "neutrino", + "imageUrl": "https://assets.coingecko.com/coins/images/10117/large/USDN_Logo.jpg?1696510143", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Nexo", + "symbol": "NEXO", + "contractAddress": "0xB62132e35a6c13ee1EE0f84dC5d40bad8d815206", + "coingeckoId": "nexo", + "imageUrl": "https://assets.coingecko.com/coins/images/3695/large/nexo.png?1696504370", + "type": "erc20", + "decimals": 18 + }, + { + "name": "NFTrade Token", + "symbol": "NFTD", + "contractAddress": "0x8E0fE2947752BE0d5ACF73aaE77362Daf79cB379", + "coingeckoId": "nftrade", + "imageUrl": "https://assets.coingecko.com/coins/images/18578/large/nftrade.png?1696518055", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Nostra", + "symbol": "NSTR", + "contractAddress": "0x610dBd98A28EbbA525e9926b6aaF88f9159edbfd", + "coingeckoId": "nostra", + "imageUrl": "https://coin-images.coingecko.com/coins/images/28282/large/Nostra_200x200b.png?1719434526", + "type": "erc20", + "decimals": 18 + }, + { + "name": "NuCypher", + "symbol": "NU", + "contractAddress": "0x4fE83213D56308330EC302a8BD641f1d0113A4Cc", + "coingeckoId": "nucypher", + "imageUrl": "https://assets.coingecko.com/coins/images/3318/large/photo1198982838879365035.jpg?1696504026", + "type": "erc20", + "decimals": 18 + }, + { + "name": "NUM Token", + "symbol": "NUM", + "contractAddress": "0x3496B523e5C00a4b4150D6721320CdDb234c3079", + "coingeckoId": "numbers-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/20495/large/NP_Social_media_profile_pic.png?1696519902", + "type": "erc20", + "decimals": 18 + }, + { + "name": "NXM", + "symbol": "NXM", + "contractAddress": "0xd7c49CEE7E9188cCa6AD8FF264C1DA2e69D4Cf3B", + "coingeckoId": "nxm", + "imageUrl": "https://assets.coingecko.com/coins/images/11810/large/NXMmain.png?1696511684", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ocean Token", + "symbol": "OCEAN", + "contractAddress": "0x967da4048cD07aB37855c090aAF366e4ce1b9F48", + "coingeckoId": "ocean-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/3687/large/ocean-protocol-logo.jpg?1696504363", + "type": "erc20", + "decimals": 18 + }, + { + "name": "OKB", + "symbol": "OKB", + "contractAddress": "0x75231F58b43240C9718Dd58B4967c5114342a86c", + "coingeckoId": "okb", + "imageUrl": "https://assets.coingecko.com/coins/images/4463/large/WeChat_Image_20220118095654.png?1696505053", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Olympus", + "symbol": "OHM", + "contractAddress": "0x64aa3364F17a4D01c6f1751Fd97C2BD3D7e7f1D5", + "coingeckoId": "olympus", + "imageUrl": "https://assets.coingecko.com/coins/images/14483/large/token_OHM_%281%29.png?1696514169", + "type": "erc20", + "decimals": 9 + }, + { + "name": "OMGToken", + "symbol": "OMG", + "contractAddress": "0xd26114cd6EE289AccF82350c8d8487fedB8A0C07", + "coingeckoId": "omisego", + "imageUrl": "https://assets.coingecko.com/coins/images/776/large/OMG_Network.jpg?1696501928", + "type": "erc20", + "decimals": 18 + }, + { + "name": "OMI Token", + "symbol": "OMI", + "contractAddress": "0xeD35af169aF46a02eE13b9d79Eb57d6D68C1749e", + "coingeckoId": "ecomi", + "imageUrl": "https://assets.coingecko.com/coins/images/4428/large/ECOMI.png?1696505023", + "type": "erc20", + "decimals": 18 + }, + { + "name": "OpenLeverage Token V2", + "symbol": "OLE", + "contractAddress": "0x1B6e9c73beE68102d9dd4A2627f97bFf4183ab0A", + "coingeckoId": "openleverage", + "imageUrl": "https://coin-images.coingecko.com/coins/images/26098/large/256x256_OLE_Token_Logo.png?1696525189", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Optopia AI", + "symbol": "OPAI", + "contractAddress": "0xF8e57AC2730D3088D98B79209739b0D5Ba085a03", + "coingeckoId": "optopia-ai", + "imageUrl": "https://coin-images.coingecko.com/coins/images/39332/large/OPAI.jpg?1721777150", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ORBOFI", + "symbol": "OBI", + "contractAddress": "0xBb3A8FD6Ec4bF0FDc6Cd2739b1e41192D12B1873", + "coingeckoId": "orbofi-ai", + "imageUrl": "https://assets.coingecko.com/coins/images/30216/large/new_V_test2.png?1696529127", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Orbs", + "symbol": "ORBS", + "contractAddress": "0xff56Cc6b1E6dEd347aA0B7676C85AB0B3D08B0FA", + "coingeckoId": "orbs", + "imageUrl": "https://assets.coingecko.com/coins/images/4630/large/Orbs.jpg?1696505200", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Origin Dollar", + "symbol": "OUSD", + "contractAddress": "0x2A8e1E676Ec238d8A992307B495b45B3fEAa5e86", + "coingeckoId": "origin-dollar", + "imageUrl": "https://assets.coingecko.com/coins/images/12589/large/ousd-logo-200x200.png?1696512399", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Orion Money Token", + "symbol": "ORION", + "contractAddress": "0x727f064A78DC734D33eEc18d5370aef32Ffd46e4", + "coingeckoId": "orion-money", + "imageUrl": "https://assets.coingecko.com/coins/images/18630/large/YtrqPIWc.png?1696518102", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Param", + "symbol": "PARAM", + "contractAddress": "0x69A1e699f562D7Af66Fc6cc473d99f4430C3AcD2", + "coingeckoId": "param", + "imageUrl": "https://coin-images.coingecko.com/coins/images/37697/large/param200.png?1715234889", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Paribus", + "symbol": "PBX", + "contractAddress": "0xD528cf2E081f72908e086F8800977df826B5a483", + "coingeckoId": "paribus", + "imageUrl": "https://assets.coingecko.com/coins/images/18410/large/paribus.PNG?1696517900", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Pax Dollar", + "symbol": "USDP", + "contractAddress": "0x8E870D67F660D95d5be530380D0eC0bd388289E1", + "coingeckoId": "paxos-standard", + "imageUrl": "https://assets.coingecko.com/coins/images/6013/large/Pax_Dollar.png?1696506427", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Paxos Gold", + "symbol": "PAXG", + "contractAddress": "0x45804880De22913dAFE09f4980848ECE6EcbAf78", + "coingeckoId": "pax-gold", + "imageUrl": "https://assets.coingecko.com/coins/images/9519/large/paxgold.png?1696509604", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Peapods", + "symbol": "PEAS", + "contractAddress": "0x02f92800F57BCD74066F5709F1Daa1A4302Df875", + "coingeckoId": "peapods-finance", + "imageUrl": "https://coin-images.coingecko.com/coins/images/33711/large/NAzHgbTW_400x400.png?1702856653", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Pendle", + "symbol": "PENDLE", + "contractAddress": "0x808507121B80c02388fAd14726482e061B8da827", + "coingeckoId": "pendle", + "imageUrl": "https://assets.coingecko.com/coins/images/15069/large/Pendle_Logo_Normal-03.png?1696514728", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Pepe", + "symbol": "PEPE", + "contractAddress": "0x6982508145454Ce325dDbE47a25d4ec3d2311933", + "coingeckoId": "pepe", + "imageUrl": "https://assets.coingecko.com/coins/images/29850/large/pepe-token.jpeg?1696528776", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Perpetual", + "symbol": "PERP", + "contractAddress": "0xbC396689893D065F41bc2C6EcbeE5e0085233447", + "coingeckoId": "perpetual-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/12381/large/60d18e06844a844ad75901a9_mark_only_03.png?1696512205", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Phala", + "symbol": "PHA", + "contractAddress": "0x6c5bA91642F10282b576d91922Ae6448C9d52f4E", + "coingeckoId": "pha", + "imageUrl": "https://assets.coingecko.com/coins/images/12451/large/phala.png?1696512270", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Phantasma Stake", + "symbol": "SOUL", + "contractAddress": "0x79C75E2e8720B39e258F41c37cC4f309E0b0fF80", + "coingeckoId": "phantasma", + "imageUrl": "https://assets.coingecko.com/coins/images/4130/large/phantasma.png?1696504758", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Phemex Token", + "symbol": "PT", + "contractAddress": "0xbBb32f99e6F2Cb29337EeBAA43C5069386DE6e6c", + "coingeckoId": "phemex", + "imageUrl": "https://assets.coingecko.com/coins/images/33314/large/phemex_logo.png?1701959611", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Pirex Ether", + "symbol": "pxETH", + "contractAddress": "0x04C154b66CB340F3Ae24111CC767e0184Ed00Cc6", + "coingeckoId": "dinero-staked-eth", + "imageUrl": "https://coin-images.coingecko.com/coins/images/33608/large/pxETH-icon-transbg_72dpi.png?1702512024", + "type": "erc20", + "decimals": 18 + }, + { + "name": "PlayDapp Token", + "symbol": "PLA", + "contractAddress": "0x3a4f40631a4f906c2BaD353Ed06De7A5D3fCb430", + "coingeckoId": "playdapp", + "imageUrl": "https://assets.coingecko.com/coins/images/14316/large/54023228.png?1696514005", + "type": "erc20", + "decimals": 18 + }, + { + "name": "pNetwork Token", + "symbol": "PNT", + "contractAddress": "0x89Ab32156e46F46D02ade3FEcbe5Fc4243B9AAeD", + "coingeckoId": "pnetwork", + "imageUrl": "https://assets.coingecko.com/coins/images/11659/large/pNetwork.png?1696511550", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Polkamon", + "symbol": "PMON", + "contractAddress": "0x1796ae0b0fa4862485106a0de9b654eFE301D0b2", + "coingeckoId": "polychain-monsters", + "imageUrl": "https://coin-images.coingecko.com/coins/images/14604/large/polkamon.png?1696514282", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Polygon Ecosystem Token", + "symbol": "POL", + "contractAddress": "0x455e53CBB86018Ac2B8092FdCd39d8444aFFC3F6", + "coingeckoId": "polygon-ecosystem-token", + "imageUrl": "https://assets.coingecko.com/coins/images/32440/large/polygon.png?1698233684", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Polymath", + "symbol": "POLY", + "contractAddress": "0x9992eC3cF6A55b00978cdDF2b27BC6882d88D1eC", + "coingeckoId": "polymath", + "imageUrl": "https://assets.coingecko.com/coins/images/2784/large/inKkF01.png?1696503553", + "type": "erc20", + "decimals": 18 + }, + { + "name": "PowerLedger", + "symbol": "POWR", + "contractAddress": "0x595832F8FC6BF59c85C527fEC3740A1b7a361269", + "coingeckoId": "power-ledger", + "imageUrl": "https://assets.coingecko.com/coins/images/1104/large/Powerledger_Northstar_colour_digital_%282%29.png?1706702222", + "type": "erc20", + "decimals": 6 + }, + { + "name": "Premia", + "symbol": "PREMIA", + "contractAddress": "0x6399C842dD2bE3dE30BF99Bc7D1bBF6Fa3650E70", + "coingeckoId": "premia", + "imageUrl": "https://assets.coingecko.com/coins/images/13962/large/apple-touch-icon.png?1696513698", + "type": "erc20", + "decimals": 18 + }, + { + "name": "pSTAKE Finance", + "symbol": "PSTAKE", + "contractAddress": "0xfB5c6815cA3AC72Ce9F5006869AE67f18bF77006", + "coingeckoId": "pstake-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/23931/large/PSTAKE_Dark.png?1696523129", + "type": "erc20", + "decimals": 18 + }, + { + "name": "pTokens TLOS", + "symbol": "TLOS", + "contractAddress": "0x7825e833D495F3d1c28872415a4aee339D26AC88", + "coingeckoId": "wrapped-telos", + "imageUrl": "https://assets.coingecko.com/coins/images/23952/large/TLOS.png?1705598803", + "type": "erc20", + "decimals": 18 + }, + { + "name": "pufETH", + "symbol": "pufETH", + "contractAddress": "0xD9A442856C234a39a81a089C06451EBAa4306a72", + "coingeckoId": "pufeth", + "imageUrl": "https://assets.coingecko.com/coins/images/35176/large/pufETH-200-200-resolution.png?1707753174", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Puff", + "symbol": "Puff", + "contractAddress": "0x18fA05ee5e478EED8925946abb41d09AEc5d34D6", + "coingeckoId": "puff-the-dragon", + "imageUrl": "https://assets.coingecko.com/coins/images/35950/large/photo_2024-03-11_10.18.27.jpeg?1710240090", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Pundi X Token", + "symbol": "PUNDIX", + "contractAddress": "0x0FD10b9899882a6f2fcb5c371E17e70FdEe00C38", + "coingeckoId": "pundi-x-2", + "imageUrl": "https://assets.coingecko.com/coins/images/14571/large/vDyefsXq_400x400.jpg?1696514252", + "type": "erc20", + "decimals": 18 + }, + { + "name": "PYR Token", + "symbol": "PYR", + "contractAddress": "0x430EF9263E76DAE63c84292C3409D61c598E9682", + "coingeckoId": "vulcan-forged", + "imageUrl": "https://assets.coingecko.com/coins/images/14770/large/1617088937196.png?1696514439", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Quant", + "symbol": "QNT", + "contractAddress": "0x4a220E6096B25EADb88358cb44068A3248254675", + "coingeckoId": "quant-network", + "imageUrl": "https://assets.coingecko.com/coins/images/3370/large/5ZOu7brX_400x400.jpg?1696504070", + "type": "erc20", + "decimals": 18 + }, + { + "name": "RabbitX", + "symbol": "RBX", + "contractAddress": "0x3Ba925fdeAe6B46d0BB4d424D829982Cb2F7309e", + "coingeckoId": "rabbitx", + "imageUrl": "https://coin-images.coingecko.com/coins/images/30048/large/RBX.png?1696528970", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Radicle", + "symbol": "RAD", + "contractAddress": "0x31c8EAcBFFdD875c74b94b077895Bd78CF1E64A3", + "coingeckoId": "radicle", + "imageUrl": "https://assets.coingecko.com/coins/images/14013/large/radicle.png?1696513741", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Radio Caca V2", + "symbol": "RACA", + "contractAddress": "0x12BB890508c125661E03b09EC06E404bc9289040", + "coingeckoId": "radio-caca", + "imageUrl": "https://assets.coingecko.com/coins/images/17841/large/ez44_BSs_400x400.jpg?1696517365", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Rai Reflex Index", + "symbol": "RAI", + "contractAddress": "0x03ab458634910AaD20eF5f1C8ee96F1D6ac54919", + "coingeckoId": "rai", + "imageUrl": "https://assets.coingecko.com/coins/images/14004/large/RAI-logo-coin.png?1696513733", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Rally", + "symbol": "RLY", + "contractAddress": "0xf1f955016EcbCd7321c7266BccFB96c68ea5E49b", + "coingeckoId": "rally-2", + "imageUrl": "https://assets.coingecko.com/coins/images/12843/large/image.png?1696512633", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Rari Governance Token", + "symbol": "RGT", + "contractAddress": "0xD291E7a03283640FDc51b121aC401383A46cC623", + "coingeckoId": "rari-governance-token", + "imageUrl": "https://assets.coingecko.com/coins/images/12900/large/Rari_Logo_Transparent.png?1696512688", + "type": "erc20", + "decimals": 18 + }, + { + "name": "RAZOR", + "symbol": "RAZOR", + "contractAddress": "0x50DE6856358Cc35f3A9a57eAAA34BD4cB707d2cd", + "coingeckoId": "razor-network", + "imageUrl": "https://assets.coingecko.com/coins/images/13797/large/icon.png?1696513545", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Reef.finance", + "symbol": "REEF", + "contractAddress": "0xFE3E6a25e6b192A42a44ecDDCd13796471735ACf", + "coingeckoId": "reef", + "imageUrl": "https://assets.coingecko.com/coins/images/13504/large/Group_10572.png?1696513266", + "type": "erc20", + "decimals": 18 + }, + { + "name": "renBTC", + "symbol": "renBTC", + "contractAddress": "0xEB4C2781e4ebA804CE9a9803C67d0893436bB27D", + "coingeckoId": "renbtc", + "imageUrl": "https://assets.coingecko.com/coins/images/11370/large/Bitcoin.jpg?1696511287", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Render Token", + "symbol": "RNDR", + "contractAddress": "0x6De037ef9aD2725EB40118Bb1702EBb27e4Aeb24", + "coingeckoId": "render-token", + "imageUrl": "https://assets.coingecko.com/coins/images/11636/large/rndr.png?1696511529", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Renzo Restaked ETH", + "symbol": "ezETH", + "contractAddress": "0xbf5495Efe5DB9ce00f80364C8B423567e58d2110", + "coingeckoId": "renzo-restaked-eth", + "imageUrl": "https://assets.coingecko.com/coins/images/34753/large/eth_renzo_logo_%281%29.png?1705956747", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Republic Token", + "symbol": "REN", + "contractAddress": "0x408e41876cCCDC0F92210600ef50372656052a38", + "coingeckoId": "republic-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/3139/large/REN.png?1696503862", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Request Token", + "symbol": "REQ", + "contractAddress": "0x8f8221aFbB33998d8584A2B05749bA73c37a938a", + "coingeckoId": "request-network", + "imageUrl": "https://assets.coingecko.com/coins/images/1031/large/Request_icon_green.png?1696502140", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Reserve Rights", + "symbol": "RSR", + "contractAddress": "0x320623b8E4fF03373931769A31Fc52A4E78B5d70", + "coingeckoId": "reserve-rights-token", + "imageUrl": "https://assets.coingecko.com/coins/images/8365/large/rsr.png?1696508558", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Rocket Pool ETH", + "symbol": "rETH", + "contractAddress": "0xae78736Cd615f374D3085123A210448E74Fc6393", + "coingeckoId": "rocket-pool-eth", + "imageUrl": "https://assets.coingecko.com/coins/images/20764/large/reth.png?1696520159", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Rocket Pool Protocol", + "symbol": "RPL", + "contractAddress": "0xD33526068D116cE69F19A9ee46F0bd304F21A51f", + "coingeckoId": "rocket-pool", + "imageUrl": "https://assets.coingecko.com/coins/images/2090/large/rocket_pool_%28RPL%29.png?1696503058", + "type": "erc20", + "decimals": 18 + }, + { + "name": "rsETH", + "symbol": "rsETH", + "contractAddress": "0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7", + "coingeckoId": "kelp-dao-restaked-eth", + "imageUrl": "https://coin-images.coingecko.com/coins/images/33800/large/Icon___Dark.png?1702991855", + "type": "erc20", + "decimals": 18 + }, + { + "name": "RSS3", + "symbol": "RSS3", + "contractAddress": "0xc98D64DA73a6616c42117b582e832812e7B8D57F", + "coingeckoId": "rss3", + "imageUrl": "https://assets.coingecko.com/coins/images/23575/large/RSS3.png?1696522783", + "type": "erc20", + "decimals": 18 + }, + { + "name": "rswETH", + "symbol": "rswETH", + "contractAddress": "0xFAe103DC9cf190eD75350761e95403b7b8aFa6c0", + "coingeckoId": "restaked-swell-eth", + "imageUrl": "https://assets.coingecko.com/coins/images/34489/large/rswETH_Icon.png?1706865484", + "type": "erc20", + "decimals": 18 + }, + { + "name": "SAND", + "symbol": "SAND", + "contractAddress": "0x3845badAde8e6dFF049820680d1F14bD3903a5d0", + "coingeckoId": "the-sandbox", + "imageUrl": "https://assets.coingecko.com/coins/images/12129/large/sandbox_logo.jpg?1696511971", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Savings Dai", + "symbol": "sDAI", + "contractAddress": "0x83F20F44975D03b1b09e64809B757c47f942BEeA", + "coingeckoId": "savings-dai", + "imageUrl": "https://assets.coingecko.com/coins/images/32254/large/sdai.png?1697015278", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Serum", + "symbol": "SRM", + "contractAddress": "0x476c5E26a75bd202a9683ffD34359C0CC15be0fF", + "coingeckoId": "serum", + "imageUrl": "https://assets.coingecko.com/coins/images/11970/large/serum-logo.png?1696511829", + "type": "erc20", + "decimals": 6 + }, + { + "name": "SHIBA INU", + "symbol": "SHIB", + "contractAddress": "0x95aD61b0a150d79219dCF64E1E6Cc01f0B64C4cE", + "coingeckoId": "shiba-inu", + "imageUrl": "https://assets.coingecko.com/coins/images/11939/large/shiba.png?1696511800", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Silo Governance Token", + "symbol": "Silo", + "contractAddress": "0x6f80310CA7F2C654691D1383149Fa1A57d8AB1f8", + "coingeckoId": "silo-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/21454/large/y0iYKZOv_400x400.png?1696520816", + "type": "erc20", + "decimals": 18 + }, + { + "name": "SingularityNET Token", + "symbol": "AGIX", + "contractAddress": "0x5B7533812759B45C2B44C19e320ba2cD2681b542", + "coingeckoId": "singularitynet", + "imageUrl": "https://assets.coingecko.com/coins/images/2138/large/singularitynet.png?1696503103", + "type": "erc20", + "decimals": 8 + }, + { + "name": "SKALE", + "symbol": "SKL", + "contractAddress": "0x00c83aeCC790e8a4453e5dD3B0B4b3680501a7A7", + "coingeckoId": "skale", + "imageUrl": "https://assets.coingecko.com/coins/images/13245/large/SKALE_token_300x300.png?1696513021", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Smooth Love Potion", + "symbol": "SLP", + "contractAddress": "0xCC8Fa225D80b9c7D42F96e9570156c65D6cAAa25", + "coingeckoId": "smooth-love-potion", + "imageUrl": "https://assets.coingecko.com/coins/images/10366/large/SLP.png?1696510368", + "type": "erc20", + "decimals": 0 + }, + { + "name": "Spectrum Staked ETH", + "symbol": "spETH", + "contractAddress": "0xf96d4B1e0a0B129e1471e88dF6f1281b933Bc474", + "coingeckoId": "wrapped-eeth", + "imageUrl": "https://assets.coingecko.com/coins/images/33033/large/weETH.png?1701438396", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Spell Token", + "symbol": "SPELL", + "contractAddress": "0x090185f2135308BaD17527004364eBcC2D37e5F6", + "coingeckoId": "spell-token", + "imageUrl": "https://assets.coingecko.com/coins/images/15861/large/abracadabra-3.png?1696515477", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Stake DAO Token", + "symbol": "SDT", + "contractAddress": "0x73968b9a57c6E53d41345FD57a6E6ae27d6CDB2F", + "coingeckoId": "stake-dao", + "imageUrl": "https://coin-images.coingecko.com/coins/images/13724/large/stakedao_logo.jpg?1696513468", + "type": "erc20", + "decimals": 18 + }, + { + "name": "stake.link", + "symbol": "SDL", + "contractAddress": "0xA95C5ebB86E0dE73B4fB8c47A45B792CFeA28C23", + "coingeckoId": "stake-link", + "imageUrl": "https://coin-images.coingecko.com/coins/images/28406/large/stake.png?1696527404", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Staked FRAX", + "symbol": "sFRAX", + "contractAddress": "0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32", + "coingeckoId": "staked-frax", + "imageUrl": "https://assets.coingecko.com/coins/images/35383/large/sfrax.png?1708445569", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Staked Frax Ether", + "symbol": "sfrxETH", + "contractAddress": "0xac3E018457B222d93114458476f3E3416Abbe38F", + "coingeckoId": "staked-frax-ether", + "imageUrl": "https://assets.coingecko.com/coins/images/28285/large/sfrxETH_icon.png?1696527285", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Staked USDe", + "symbol": "sUSDe", + "contractAddress": "0x9D39A5DE30e57443BfF2A8307A4256c8797A3497", + "coingeckoId": "ethena-staked-usde", + "imageUrl": "https://assets.coingecko.com/coins/images/33669/large/photo_2023-12-14_17-00-20.jpg?1702696035", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Staked USDz", + "symbol": "sUSDz", + "contractAddress": "0x547213367cfB08ab418E7b54d7883b2C2AA27Fd7", + "coingeckoId": "anzen-staked-usdz", + "imageUrl": "https://coin-images.coingecko.com/coins/images/38040/large/susdz-symbol-200x200.png?1716334492", + "type": "erc20", + "decimals": 18 + }, + { + "name": "StakeStone Ether", + "symbol": "STONE", + "contractAddress": "0x7122985656e38BDC0302Db86685bb972b145bD3C", + "coingeckoId": "stakestone-ether", + "imageUrl": "https://assets.coingecko.com/coins/images/33103/large/200_200.png?1702602672", + "type": "erc20", + "decimals": 18 + }, + { + "name": "StargateToken", + "symbol": "STG", + "contractAddress": "0xAf5191B0De278C7286d6C7CC6ab6BB8A73bA2Cd6", + "coingeckoId": "stargate-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/24413/large/STG_LOGO.png?1696523595", + "type": "erc20", + "decimals": 18 + }, + { + "name": "StarkNet Token", + "symbol": "STRK", + "contractAddress": "0xCa14007Eff0dB1f8135f4C25B34De49AB0d42766", + "coingeckoId": "starknet", + "imageUrl": "https://assets.coingecko.com/coins/images/26433/large/starknet.png?1696525507", + "type": "erc20", + "decimals": 18 + }, + { + "name": "StarLink", + "symbol": "STARL", + "contractAddress": "0x8E6cd950Ad6ba651F6DD608Dc70e5886B1AA6B24", + "coingeckoId": "starlink", + "imageUrl": "https://assets.coingecko.com/coins/images/16824/large/ZxJbRWJ.png?1696516393", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Status Network Token", + "symbol": "SNT", + "contractAddress": "0x744d70FDBE2Ba4CF95131626614a1763DF805B9E", + "coingeckoId": "status", + "imageUrl": "https://assets.coingecko.com/coins/images/779/large/status.png?1696501931", + "type": "erc20", + "decimals": 18 + }, + { + "name": "STONE Carnival LP", + "symbol": "cSTONE", + "contractAddress": "0x4d831e22F062b5327dFdB15f0b6a5dF20E2E3dD0", + "coingeckoId": "stakestone-ether", + "imageUrl": "https://assets.coingecko.com/coins/images/33103/large/200_200.png?1702602672", + "type": "erc20", + "decimals": 18 + }, + { + "name": "SuperFarm", + "symbol": "SUPER", + "contractAddress": "0xe53EC727dbDEB9E2d5456c3be40cFF031AB40A55", + "coingeckoId": "superfarm", + "imageUrl": "https://assets.coingecko.com/coins/images/14040/large/SV-Logo-200x200.png?1706880312", + "type": "erc20", + "decimals": 18 + }, + { + "name": "SushiBar", + "symbol": "xSUSHI", + "contractAddress": "0x8798249c2E607446EfB7Ad49eC89dD1865Ff4272", + "coingeckoId": "xsushi", + "imageUrl": "https://assets.coingecko.com/coins/images/13725/large/xsushi.png?1696513469", + "type": "erc20", + "decimals": 18 + }, + { + "name": "SushiToken", + "symbol": "SUSHI", + "contractAddress": "0x6B3595068778DD592e39A122f4f5a5cF09C90fE2", + "coingeckoId": "sushi", + "imageUrl": "https://assets.coingecko.com/coins/images/12271/large/512x512_Logo_no_chop.png?1696512101", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Swipe", + "symbol": "SXP", + "contractAddress": "0x8CE9137d39326AD0cD6491fb5CC0CbA0e089b6A9", + "coingeckoId": "swipe", + "imageUrl": "https://assets.coingecko.com/coins/images/9368/large/swipe.png?1696509466", + "type": "erc20", + "decimals": 18 + }, + { + "name": "SwissBorg Token", + "symbol": "CHSB", + "contractAddress": "0xba9d4199faB4f26eFE3551D490E3821486f135Ba", + "coingeckoId": "swissborg", + "imageUrl": "https://assets.coingecko.com/coins/images/2117/large/YJUrRy7r_400x400.png?1696503083", + "type": "erc20", + "decimals": 8 + }, + { + "name": "SwissBorg Token", + "symbol": "BORG", + "contractAddress": "0x64d0f55Cd8C7133a9D7102b13987235F486F2224", + "coingeckoId": "swissborg", + "imageUrl": "https://assets.coingecko.com/coins/images/2117/large/YJUrRy7r_400x400.png?1696503083", + "type": "erc20", + "decimals": 18 + }, + { + "name": "SX Network", + "symbol": "SX", + "contractAddress": "0xbe9F61555F50DD6167f2772e9CF7519790d96624", + "coingeckoId": "sx-network-2", + "imageUrl": "https://coin-images.coingecko.com/coins/images/34934/large/sx-ntework.jpeg?1706699134", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Symbiosis", + "symbol": "SIS", + "contractAddress": "0xd38BB40815d2B0c2d2c866e0c72c5728ffC76dd9", + "coingeckoId": "symbiosis-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/20805/large/SymbiosisFinance_logo-150x150.jpeg?1696520198", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Synapse", + "symbol": "SYN", + "contractAddress": "0x0f2D719407FdBeFF09D87557AbB7232601FD9F29", + "coingeckoId": "synapse-2", + "imageUrl": "https://assets.coingecko.com/coins/images/18024/large/synapse_social_icon.png?1696517540", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Synthetix Network Token", + "symbol": "SNX", + "contractAddress": "0xC011a73ee8576Fb46F5E1c5751cA3B9Fe0af2a6F", + "coingeckoId": "havven", + "imageUrl": "https://assets.coingecko.com/coins/images/3406/large/SNX.png?1696504103", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Taiko Token", + "symbol": "TAIKO", + "contractAddress": "0x10dea67478c5F8C5E2D90e5E9B26dBe60c54d800", + "coingeckoId": "taiko", + "imageUrl": "https://coin-images.coingecko.com/coins/images/38058/large/icon.png?1717626867", + "type": "erc20", + "decimals": 18 + }, + { + "name": "TaoBank", + "symbol": "TBANK", + "contractAddress": "0x95CcffaE3Eb8767D4a941Ec43280961dde89F4dE", + "coingeckoId": "taobank", + "imageUrl": "https://coin-images.coingecko.com/coins/images/35612/large/200x200.png?1709281616", + "type": "erc20", + "decimals": 18 + }, + { + "name": "tBTC v2", + "symbol": "tBTC", + "contractAddress": "0x18084fbA666a33d37592fA2633fD49a74DD93a88", + "coingeckoId": "tbtc", + "imageUrl": "https://assets.coingecko.com/coins/images/11224/large/0x18084fba666a33d37592fa2633fd49a74dd93a88.png?1696511155", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Telcoin", + "symbol": "TEL", + "contractAddress": "0x467Bccd9d29f223BcE8043b84E8C8B282827790F", + "coingeckoId": "telcoin", + "imageUrl": "https://assets.coingecko.com/coins/images/1899/large/tel.png?1696502892", + "type": "erc20", + "decimals": 2 + }, + { + "name": "Tensorplex Staked TAO", + "symbol": "stTAO", + "contractAddress": "0xB60acD2057067DC9ed8c083f5aa227a244044fD6", + "coingeckoId": "tensorplex-staked-tao", + "imageUrl": "https://coin-images.coingecko.com/coins/images/35330/large/stTAO_Logo.png?1708268881", + "type": "erc20", + "decimals": 9 + }, + { + "name": "Tether Gold", + "symbol": "XAUt", + "contractAddress": "0x68749665FF8D2d112Fa859AA293F07A622782F38", + "coingeckoId": "tether-gold", + "imageUrl": "https://assets.coingecko.com/coins/images/10481/large/Tether_Gold.png?1696510471", + "type": "erc20", + "decimals": 6 + }, + { + "name": "Tether USD", + "symbol": "USDT", + "contractAddress": "0xdAC17F958D2ee523a2206206994597C13D831ec7", + "coingeckoId": "tether", + "imageUrl": "https://assets.coingecko.com/coins/images/325/large/Tether.png?1696501661", + "type": "erc20", + "decimals": 6 + }, + { + "name": "Thales DAO Token", + "symbol": "THALES", + "contractAddress": "0x8947da500Eb47F82df21143D0C01A29862a8C3c5", + "coingeckoId": "thales", + "imageUrl": "https://assets.coingecko.com/coins/images/18388/large/CLVZJN_C_400x400.png?1696517879", + "type": "erc20", + "decimals": 18 + }, + { + "name": "THE TRUTH", + "symbol": "UFO", + "contractAddress": "0x249e38Ea4102D0cf8264d3701f1a0E39C4f2DC3B", + "coingeckoId": "ufo-gaming", + "imageUrl": "https://assets.coingecko.com/coins/images/16801/large/ufo.png?1696516371", + "type": "erc20", + "decimals": 18 + }, + { + "name": "THORChain ETH.RUNE", + "symbol": "RUNE", + "contractAddress": "0x3155BA85D5F96b2d030a4966AF206230e46849cb", + "coingeckoId": "thorchain", + "imageUrl": "https://assets.coingecko.com/coins/images/6595/large/Rune200x200.png?1696506946", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Tokemak", + "symbol": "TOKE", + "contractAddress": "0x2e9d63788249371f1DFC918a52f8d799F4a38C94", + "coingeckoId": "tokemak", + "imageUrl": "https://assets.coingecko.com/coins/images/17495/large/tokemak-avatar-200px-black.png?1696517036", + "type": "erc20", + "decimals": 18 + }, + { + "name": "TOPIA", + "symbol": "TOPIA", + "contractAddress": "0xcccCb68e1A848CBDB5b60a974E07aAE143ed40C3", + "coingeckoId": "hytopia", + "imageUrl": "https://assets.coingecko.com/coins/images/31283/large/HYCHAIN_Avatar_Circle.png?1710500962", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Trace Token", + "symbol": "TRAC", + "contractAddress": "0xaA7a9CA87d3694B5755f213B5D04094b8d0F0A6F", + "coingeckoId": "origintrail", + "imageUrl": "https://assets.coingecko.com/coins/images/1877/large/TRAC.jpg?1696502873", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Trestle", + "symbol": "TRESTLE", + "contractAddress": "0xdE8CD13B812BcD82218754A740b27E76ec1e86aD", + "coingeckoId": "trestle", + "imageUrl": "https://coin-images.coingecko.com/coins/images/34992/large/PNG_-_Logo_-_3485x.png?1706943532", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Tribe", + "symbol": "TRIBE", + "contractAddress": "0xc7283b66Eb1EB5FB86327f08e1B5816b0720212B", + "coingeckoId": "tribe-2", + "imageUrl": "https://assets.coingecko.com/coins/images/14575/large/tribe.PNG?1696514256", + "type": "erc20", + "decimals": 18 + }, + { + "name": "TrueUSD", + "symbol": "TUSD", + "contractAddress": "0x0000000000085d4780B73119b644AE5ecd22b376", + "coingeckoId": "true-usd", + "imageUrl": "https://assets.coingecko.com/coins/images/3449/large/tusd.png?1696504140", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Truflation", + "symbol": "TRUF", + "contractAddress": "0x38C2a4a7330b22788374B8Ff70BBa513C8D848cA", + "coingeckoId": "truflation", + "imageUrl": "https://coin-images.coingecko.com/coins/images/36642/large/TRUF_Token_Logo_Blue.png?1712034385", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Ultra Token", + "symbol": "UOS", + "contractAddress": "0xD13c7342e1ef687C5ad21b27c2b65D772cAb5C8c", + "coingeckoId": "ultra", + "imageUrl": "https://assets.coingecko.com/coins/images/4480/large/Ultra.png?1696505069", + "type": "erc20", + "decimals": 4 + }, + { + "name": "UMA Voting Token v1", + "symbol": "UMA", + "contractAddress": "0x04Fa0d235C4abf4BcF4787aF4CF447DE572eF828", + "coingeckoId": "uma", + "imageUrl": "https://assets.coingecko.com/coins/images/10951/large/UMA.png?1696510900", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Uniswap", + "symbol": "UNI", + "contractAddress": "0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984", + "coingeckoId": "uniswap", + "imageUrl": "https://assets.coingecko.com/coins/images/12504/large/uni.jpg?1696512319", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Universal ETH", + "symbol": "uniETH", + "contractAddress": "0xF1376bceF0f78459C0Ed0ba5ddce976F1ddF51F4", + "coingeckoId": "universal-eth", + "imageUrl": "https://coin-images.coingecko.com/coins/images/28477/large/uniETH_200.png?1696527471", + "type": "erc20", + "decimals": 18 + }, + { + "name": "USD Coin", + "symbol": "USDC", + "contractAddress": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", + "coingeckoId": "usd-coin", + "imageUrl": "https://assets.coingecko.com/coins/images/6319/large/usdc.png?1696506694", + "type": "erc20", + "decimals": 6 + }, + { + "name": "USDe", + "symbol": "USDe", + "contractAddress": "0x4c9EDD5852cd905f086C759E8383e09bff1E68B3", + "coingeckoId": "ethena-usde", + "imageUrl": "https://assets.coingecko.com/coins/images/33613/large/3466ef_3c088c66c7d941e8856339d0bddf33cc_mv2.png?1702514458", + "type": "erc20", + "decimals": 18 + }, + { + "name": "VENT", + "symbol": "VENT", + "contractAddress": "0x5F0bc16D50F72d10b719dBF6845DE2E599eb5624", + "coingeckoId": "vent-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/17925/large/Artboard_29.png?1696517445", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Vertex", + "symbol": "VRTX", + "contractAddress": "0xbbEE07B3e8121227AfCFe1E2B82772246226128e", + "coingeckoId": "vertex-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/27927/large/vrtx.png?1696526947", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Victoria VR", + "symbol": "VR", + "contractAddress": "0x7d5121505149065b562C789A0145eD750e6E8cdD", + "coingeckoId": "victoria-vr", + "imageUrl": "https://assets.coingecko.com/coins/images/21178/large/vr.png?1696520554", + "type": "erc20", + "decimals": 18 + }, + { + "name": "VLX", + "symbol": "VLX", + "contractAddress": "0x8C543AED163909142695f2d2aCd0D55791a9Edb9", + "coingeckoId": "velas", + "imageUrl": "https://assets.coingecko.com/coins/images/9651/large/logo_blue.png?1696509720", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wagmi", + "symbol": "WAGMI", + "contractAddress": "0x92CC36D66e9d739D50673d1f27929a371FB83a67", + "coingeckoId": "wagmi-2", + "imageUrl": "https://assets.coingecko.com/coins/images/31887/large/wagmi_token_logo.png?1696530698", + "type": "erc20", + "decimals": 18 + }, + { + "name": "WAVES", + "symbol": "WAVES", + "contractAddress": "0x1cF4592ebfFd730c7dc92c1bdFFDfc3B9EfCf29a", + "coingeckoId": "waves", + "imageUrl": "https://assets.coingecko.com/coins/images/425/large/waves.png?1696501700", + "type": "erc20", + "decimals": 18 + }, + { + "name": "WECOIN", + "symbol": "WECO", + "contractAddress": "0x54Df3076ac0CdC9bC97fA290AB9c5a88E3D23630", + "coingeckoId": "wecoin", + "imageUrl": "https://coin-images.coingecko.com/coins/images/30644/large/wecoin-logo-200x200.png?1696529515", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wirex Token", + "symbol": "WXT", + "contractAddress": "0xa02120696c7B8fE16C09C749E4598819b2B0E915", + "coingeckoId": "wirex", + "imageUrl": "https://assets.coingecko.com/coins/images/8835/large/Wirex.jpg?1696508988", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wootrade Network", + "symbol": "WOO", + "contractAddress": "0x4691937a7508860F876c9c0a2a617E7d9E945D4B", + "coingeckoId": "woo-network", + "imageUrl": "https://assets.coingecko.com/coins/images/12921/large/WOO_Logos_2023_Profile_Pic_WOO.png?1696512709", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Worldcoin", + "symbol": "WLD", + "contractAddress": "0x163f8C2467924be0ae7B5347228CABF260318753", + "coingeckoId": "worldcoin-wld", + "imageUrl": "https://assets.coingecko.com/coins/images/31069/large/worldcoin.jpeg?1696529903", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped ANC Token", + "symbol": "ANC", + "contractAddress": "0x0F3ADC247E91c3c50bC08721355A41037E89Bc20", + "coingeckoId": "anchor-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/14420/large/anchor_protocol_logo.jpg?1696514111", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped BTC", + "symbol": "WBTC", + "contractAddress": "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599", + "coingeckoId": "wrapped-bitcoin", + "imageUrl": "https://assets.coingecko.com/coins/images/7598/large/wrapped_bitcoin_wbtc.png?1696507857", + "type": "erc20", + "decimals": 8 + }, + { + "name": "Wrapped eETH", + "symbol": "weETH", + "contractAddress": "0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee", + "coingeckoId": "wrapped-eeth", + "imageUrl": "https://assets.coingecko.com/coins/images/33033/large/weETH.png?1701438396", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped Ether", + "symbol": "WETH", + "contractAddress": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", + "coingeckoId": "weth", + "imageUrl": "https://assets.coingecko.com/coins/images/2518/large/weth.png?1696503332", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped liquid staked Ether 2.0", + "symbol": "wstETH", + "contractAddress": "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0", + "coingeckoId": "wrapped-steth", + "imageUrl": "https://assets.coingecko.com/coins/images/18834/large/wstETH.png?1696518295", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped MIR Token", + "symbol": "MIR", + "contractAddress": "0x09a3EcAFa817268f77BE1283176B946C4ff2E608", + "coingeckoId": "mirror-protocol", + "imageUrl": "https://assets.coingecko.com/coins/images/13295/large/mirror_logo_transparent.png?1696513067", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped Mountain Protocol USD", + "symbol": "wUSDM", + "contractAddress": "0x57F5E098CaD7A3D1Eed53991D4d66C45C9AF7812", + "coingeckoId": "mountain-protocol-usdm", + "imageUrl": "https://assets.coingecko.com/coins/images/33785/large/wUSDM_PNG_240px.png?1702981552", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped TIA", + "symbol": "wTIA", + "contractAddress": "0x6aD2d2C22Bb58eA94Be18Cff11EF67e8bb97B652", + "coingeckoId": "trestle-wrapped-tia", + "imageUrl": "https://coin-images.coingecko.com/coins/images/36385/large/trestle.jpeg?1711349480", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Wrapped TON Coin", + "symbol": "TONCOIN", + "contractAddress": "0x582d872A1B094FC48F5DE31D3B73F2D9bE47def1", + "coingeckoId": "the-open-network", + "imageUrl": "https://assets.coingecko.com/coins/images/17980/large/ton_symbol.png?1696517498", + "type": "erc20", + "decimals": 9 + }, + { + "name": "XCAD Token", + "symbol": "XCAD", + "contractAddress": "0x7659CE147D0e714454073a5dd7003544234b6Aa0", + "coingeckoId": "xcad-network", + "imageUrl": "https://assets.coingecko.com/coins/images/15857/large/logoWhiteX.jpg?1696515473", + "type": "erc20", + "decimals": 18 + }, + { + "name": "XSwap", + "symbol": "XSWAP", + "contractAddress": "0x8Fe815417913a93Ea99049FC0718ee1647A2a07c", + "coingeckoId": "xswap-2", + "imageUrl": "https://coin-images.coingecko.com/coins/images/36000/large/XSwap_Icon_%282%29.png?1710320467", + "type": "erc20", + "decimals": 18 + }, + { + "name": "XY Oracle", + "symbol": "XYO", + "contractAddress": "0x55296f69f40Ea6d20E478533C15A6B08B654E758", + "coingeckoId": "xyo-network", + "imageUrl": "https://assets.coingecko.com/coins/images/4519/large/XYO_Network-logo.png?1696505103", + "type": "erc20", + "decimals": 18 + }, + { + "name": "yearn.finance", + "symbol": "YFI", + "contractAddress": "0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e", + "coingeckoId": "yearn-finance", + "imageUrl": "https://assets.coingecko.com/coins/images/11849/large/yearn.jpg?1696511720", + "type": "erc20", + "decimals": 18 + }, + { + "name": "YFX", + "symbol": "YFX", + "contractAddress": "0xF55a93b613D172b86c2Ba3981a849DaE2aeCDE2f", + "coingeckoId": "yfx", + "imageUrl": "https://assets.coingecko.com/coins/images/15654/large/yfx.PNG?1696515285", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Yield Guild Games Token", + "symbol": "YGG", + "contractAddress": "0x25f8087EAD173b73D6e8B84329989A8eEA16CF73", + "coingeckoId": "yield-guild-games", + "imageUrl": "https://assets.coingecko.com/coins/images/17358/large/Shield_Mark_-_Colored_-_Iridescent.png?1696516909", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Zipmex Token", + "symbol": "ZMT", + "contractAddress": "0xaa602dE53347579f86b996D2Add74bb6F79462b2", + "coingeckoId": "zipmex-token", + "imageUrl": "https://assets.coingecko.com/coins/images/13866/large/ZMT_Token.png?1696513611", + "type": "erc20", + "decimals": 18 + }, + { + "name": "zkCRO", + "symbol": "zkCRO", + "contractAddress": "0x28Ff2E4dD1B58efEB0fC138602A28D5aE81e44e2", + "coingeckoId": "cronos-zkevm-cro", + "imageUrl": "https://assets.coingecko.com/coins/images/39734/large/Screenshot_2024-08-16_at_10.42.41%E2%80%AFAM.png?1723776225", + "type": "erc20", + "decimals": 18 + }, + { + "name": "zkLend Token", + "symbol": "ZEND", + "contractAddress": "0xb2606492712D311be8f41d940AFE8CE742A52D44", + "coingeckoId": "zklend-2", + "imageUrl": "https://coin-images.coingecko.com/coins/images/35979/large/zkLend_ZEND_logo_square_transparent_background_%281%29.png?1710306648", + "type": "erc20", + "decimals": 18 + }, + { + "name": "ZKLink", + "symbol": "ZKL", + "contractAddress": "0xfC385A1dF85660a7e041423DB512f779070FCede", + "coingeckoId": "zklink", + "imageUrl": "https://coin-images.coingecko.com/coins/images/34982/large/Logo1.png?1714980729", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Zks", + "symbol": "ZKS", + "contractAddress": "0xe4815AE53B124e7263F08dcDBBB757d41Ed658c6", + "coingeckoId": "zkspace", + "imageUrl": "https://assets.coingecko.com/coins/images/13585/large/image_2024-01-16_172847810.png?1705397359", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Zunami ETH", + "symbol": "zunETH", + "contractAddress": "0xc2e660C62F72c2ad35AcE6DB78a616215E2F2222", + "coingeckoId": "zunami-eth-2", + "imageUrl": "https://coin-images.coingecko.com/coins/images/37835/large/zunETH_200x200.png?1715741123", + "type": "erc20", + "decimals": 18 + }, + { + "name": "Zunami USD", + "symbol": "zunUSD", + "contractAddress": "0x8C0D76C9B18779665475F3E212D9Ca1Ed6A1A0e6", + "coingeckoId": "zunami-usd", + "imageUrl": "https://coin-images.coingecko.com/coins/images/37809/large/zunUSD_200x200.png?1715591997", + "type": "erc20", + "decimals": 18 + } +] diff --git a/packages/metadata/src/providers/githubMetadata.provider.ts b/packages/metadata/src/providers/githubMetadata.provider.ts index 945f00d..42cce6d 100644 --- a/packages/metadata/src/providers/githubMetadata.provider.ts +++ b/packages/metadata/src/providers/githubMetadata.provider.ts @@ -102,7 +102,11 @@ export class GithubMetadataProvider implements IMetadataProvider { const validatedData = z.array(TokenSchema).safeParse(data); if (!validatedData.success) { - this.logger.error(`Invalid Token metadata: ${validatedData.error.errors}`); + this.logger.error( + `Invalid Tokens metadata: ${validatedData.error.errors + .map((e) => `${e.path.join(".")}: ${e.message}`) + .join(", ")}`, + ); throw new InvalidSchema("Invalid Token metadata"); } diff --git a/packages/metadata/src/providers/localFileMetadata.provider.ts b/packages/metadata/src/providers/localFileMetadata.provider.ts index a53e4ec..5eedf5c 100644 --- a/packages/metadata/src/providers/localFileMetadata.provider.ts +++ b/packages/metadata/src/providers/localFileMetadata.provider.ts @@ -82,7 +82,11 @@ export class LocalFileMetadataProvider implements IMetadataProvider { const validatedData = z.array(TokenSchema).safeParse(parsed); if (!validatedData.success) { - this.logger.error(`Invalid Tokens metadata: ${validatedData.error.errors}`); + this.logger.error( + `Invalid Tokens metadata: ${validatedData.error.errors + .map((e) => `${e.path.join(".")}: ${e.message}`) + .join(", ")}`, + ); throw new InvalidSchema("Invalid Tokens metadata"); } diff --git a/packages/metadata/src/schemas/index.ts b/packages/metadata/src/schemas/index.ts index 940a288..d5afc01 100644 --- a/packages/metadata/src/schemas/index.ts +++ b/packages/metadata/src/schemas/index.ts @@ -5,7 +5,6 @@ import { Address } from "@zkchainhub/shared"; export const TokenSchema = z.object({ name: z.string(), symbol: z.string(), - coingeckoId: z.string(), // FIXME: on pricing refactor, this should not be part of the token metadata type: z.union([z.literal("erc20"), z.literal("native")]), contractAddress: z .custom
((val) => { diff --git a/packages/metadata/test/fixtures/metadata.fixtures.ts b/packages/metadata/test/fixtures/metadata.fixtures.ts index 779f2d3..ff23fd9 100644 --- a/packages/metadata/test/fixtures/metadata.fixtures.ts +++ b/packages/metadata/test/fixtures/metadata.fixtures.ts @@ -7,7 +7,6 @@ export const mockTokenData: Token[] = [ name: "Ethereum", symbol: "ETH", contractAddress: null, - coingeckoId: "ethereum", type: "native", imageUrl: "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628", @@ -17,7 +16,6 @@ export const mockTokenData: Token[] = [ name: "Wrapped Ether", symbol: "WETH", contractAddress: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", - coingeckoId: "weth", imageUrl: "https://coin-images.coingecko.com/coins/images/2518/large/weth.png?1696503332", type: "erc20", decimals: 18, @@ -40,7 +38,6 @@ export const mockChainData = [ name: "Ethereum", symbol: "ETH", contractAddress: null, - coingeckoId: "ethereum", type: "native", imageUrl: "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628", @@ -57,7 +54,6 @@ export const mockChainData = [ symbol: "zkCRO", name: "zkCRO", contractAddress: "0x28Ff2E4dD1B58efEB0fC138602A28D5aE81e44e2", - coingeckoId: "unknown", type: "erc20", imageUrl: "https://zkevm.cronos.org/images/chains/zkevm.svg", decimals: 18, diff --git a/packages/metadata/test/unit/providers/githubMetadata.provider.spec.ts b/packages/metadata/test/unit/providers/githubMetadata.provider.spec.ts index ff5d9d4..100c67c 100644 --- a/packages/metadata/test/unit/providers/githubMetadata.provider.spec.ts +++ b/packages/metadata/test/unit/providers/githubMetadata.provider.spec.ts @@ -103,7 +103,6 @@ describe("GithubMetadataProvider", () => { baseToken: { name: "Ethereum", symbol: "ETH", - coingeckoId: "ethereum", type: "native", contractAddress: null, decimals: 18, @@ -146,7 +145,6 @@ describe("GithubMetadataProvider", () => { baseToken: { name: "Ethereum", symbol: "ETH", - coingeckoId: "ethereum", type: "native", contractAddress: null, decimals: 18, @@ -194,7 +192,6 @@ describe("GithubMetadataProvider", () => { baseToken: { name: "Ethereum", symbol: "ETH", - coingeckoId: "ethereum", type: "native", contractAddress: null, decimals: 18, @@ -215,7 +212,6 @@ describe("GithubMetadataProvider", () => { baseToken: { name: "zkCRO", symbol: "zkCRO", - coingeckoId: "unknown", type: "erc20", contractAddress: "0x28Ff2E4dD1B58efEB0fC138602A28D5aE81e44e2", decimals: 18, diff --git a/packages/metrics/src/l1/l1MetricsService.ts b/packages/metrics/src/l1/l1MetricsService.ts index 42fa8e8..93ff3a4 100644 --- a/packages/metrics/src/l1/l1MetricsService.ts +++ b/packages/metrics/src/l1/l1MetricsService.ts @@ -90,34 +90,31 @@ export class L1MetricsService { const tvl: AssetTvl[] = []; for (const token of tokens) { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - const { coingeckoId, ...tokenInfo } = token; - const balance = isNativeToken(token) ? balances.ethBalance - : balances.addressesBalance[ - addresses.indexOf(tokenInfo.contractAddress as Address) - ]; - - assert(balance !== undefined, `Balance for ${tokenInfo.symbol} not found`); - - const price = prices[tokenInfo.contractAddress || ETH_TOKEN_ADDRESS]; - // math is done with bigints for better precision - const tvlValue = price - ? formatUnits( - balance * parseUnits(price.toString(), tokenInfo.decimals), - tokenInfo.decimals * 2, - ) - : undefined; - - const assetTvl: AssetTvl = { - amount: formatUnits(balance, tokenInfo.decimals), - amountUsd: tvlValue, - price: price?.toString(), - ...tokenInfo, - }; - - tvl.push(assetTvl); + : balances.addressesBalance[addresses.indexOf(token.contractAddress as Address)]; + + assert(balance !== undefined, `Balance for ${token.symbol} not found`); + + if (balance > 0n) { + const price = prices[token.contractAddress || ETH_TOKEN_ADDRESS]; + // math is done with bigints for better precision + const tvlValue = price + ? formatUnits( + balance * parseUnits(price.toString(), token.decimals), + token.decimals * 2, + ) + : undefined; + + const assetTvl: AssetTvl = { + amount: formatUnits(balance, token.decimals), + amountUsd: tvlValue, + price: price?.toString(), + ...token, + }; + + tvl.push(assetTvl); + } } // we assume the rounding error is negligible for sorting purposes @@ -402,7 +399,6 @@ export class L1MetricsService { name: "unknown", type: "native", symbol: "unknown", - coingeckoId: "unknown", } : //FIXME: have a map from address to token (which will be main use case) erc20Tokens.find((token) => token.contractAddress === baseToken) || { @@ -411,7 +407,6 @@ export class L1MetricsService { name: "unknown", type: "erc20", symbol: "unknown", - coingeckoId: "unknown", }; }); } diff --git a/packages/metrics/test/unit/l1/l1MetricsService.spec.ts b/packages/metrics/test/unit/l1/l1MetricsService.spec.ts index 26a493a..96f7c89 100644 --- a/packages/metrics/test/unit/l1/l1MetricsService.spec.ts +++ b/packages/metrics/test/unit/l1/l1MetricsService.spec.ts @@ -10,7 +10,6 @@ import { ChainType, ETH_TOKEN_ADDRESS, ILogger, - nativeToken, Token, TokenType, } from "@zkchainhub/shared"; @@ -32,7 +31,6 @@ const mockTokens: Token[] = [ name: "Ethereum", symbol: "ETH", contractAddress: null, - coingeckoId: "ethereum", type: "native", imageUrl: "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628", @@ -42,7 +40,6 @@ const mockTokens: Token[] = [ name: "USDC", symbol: "USDC", contractAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", - coingeckoId: "usd-coin", imageUrl: "https://coin-images.coingecko.com/coins/images/6319/large/usdc.png?1696506694", type: "erc20", decimals: 6, @@ -51,7 +48,6 @@ const mockTokens: Token[] = [ name: "Wrapped BTC", symbol: "WBTC", contractAddress: "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599", - coingeckoId: "wrapped-bitcoin", imageUrl: "https://coin-images.coingecko.com/coins/images/7598/large/wrapped_bitcoin_wbtc.png?1696507857", type: "erc20", @@ -61,7 +57,6 @@ const mockTokens: Token[] = [ name: "Unknown token", symbol: "XYZ", contractAddress: "0x2260fAc5E5542a2a5aa44fBcfeDF7C193bc2c599", - coingeckoId: "", type: "erc20", decimals: 18, }, @@ -176,7 +171,7 @@ describe("l1Metrics", () => { const result = await l1Metrics.l1Tvl(); - expect(result).toHaveLength(4); + expect(result).toHaveLength(3); expect(result).toEqual([ { amount: "123803.824374847279970609", @@ -214,16 +209,6 @@ describe("l1Metrics", () => { type: "erc20", decimals: 8, }, - { - amount: "0", - amountUsd: undefined, - price: undefined, - name: "Unknown token", - symbol: "XYZ", - contractAddress: "0x2260fAc5E5542a2a5aa44fBcfeDF7C193bc2c599", - type: "erc20", - decimals: 18, - }, ]); expect(evmProvider.multicall).toHaveBeenCalledWith({ contracts: [ @@ -290,7 +275,7 @@ describe("l1Metrics", () => { const result = await l1Metrics.l1Tvl(); - expect(result).toHaveLength(4); + expect(result).toHaveLength(3); expect(result).toEqual([ { amount: "123803.824374847279970609", @@ -328,16 +313,6 @@ describe("l1Metrics", () => { type: "erc20", decimals: 8, }, - { - amount: "0", - amountUsd: undefined, - price: undefined, - name: "Unknown token", - symbol: "XYZ", - contractAddress: "0x2260fAc5E5542a2a5aa44fBcfeDF7C193bc2c599", - type: "erc20", - decimals: 18, - }, ]); expect(evmProvider.multicall).not.toHaveBeenCalled(); expect(evmProvider.readContract).toHaveBeenNthCalledWith( @@ -601,7 +576,7 @@ describe("l1Metrics", () => { const result = await l1Metrics.tvl(chainId); - expect(result).toHaveLength(4); + expect(result).toHaveLength(3); expect(result).toEqual([ { amount: "123803.824374847279970609", @@ -639,16 +614,6 @@ describe("l1Metrics", () => { type: "erc20", decimals: 8, }, - { - amount: "0", - amountUsd: undefined, - price: undefined, - name: "Unknown token", - symbol: "XYZ", - contractAddress: "0x2260fAc5E5542a2a5aa44fBcfeDF7C193bc2c599", - type: "erc20", - decimals: 18, - }, ]); expect(evmProvider.multicall).toHaveBeenCalledWith({ contracts: [ @@ -714,7 +679,7 @@ describe("l1Metrics", () => { const result = await l1Metrics.tvl(chainId); - expect(result).toHaveLength(4); + expect(result).toHaveLength(3); expect(result).toEqual([ { amount: "123803.824374847279970609", @@ -752,16 +717,6 @@ describe("l1Metrics", () => { type: "erc20", decimals: 8, }, - { - amount: "0", - amountUsd: undefined, - price: undefined, - name: "Unknown token", - symbol: "XYZ", - contractAddress: "0x2260fAc5E5542a2a5aa44fBcfeDF7C193bc2c599", - type: "erc20", - decimals: 18, - }, ]); expect(evmProvider.multicall).not.toHaveBeenCalled(); expect(evmProvider.readContract).toHaveBeenNthCalledWith( @@ -968,7 +923,7 @@ describe("l1Metrics", () => { mockGetGasPrice.mockRejectedValueOnce(new Error("Failed to get gas price")); const mockGetTokenPrices = vi.spyOn(pricingService, "getTokenPrices"); - mockGetTokenPrices.mockResolvedValueOnce({ [nativeToken.coingeckoId]: 2000 }); // ethPriceInUsd + mockGetTokenPrices.mockResolvedValueOnce({ [ETH_TOKEN_ADDRESS]: 2000 }); // ethPriceInUsd // Call the method and expect it to throw l1MetricsException await expect(l1Metrics.ethGasInfo()).rejects.toThrow(L1MetricsServiceException); @@ -1078,7 +1033,6 @@ describe("l1Metrics", () => { name: "unknown", decimals: 18, type: "erc20", - coingeckoId: "unknown", }, { contractAddress: "0x1234567890123456789012345678901234567345", @@ -1086,7 +1040,6 @@ describe("l1Metrics", () => { name: "unknown", decimals: 18, type: "erc20", - coingeckoId: "unknown", }, ]; @@ -1115,7 +1068,6 @@ describe("l1Metrics", () => { name: "unknown", decimals: 18, type: "erc20", - coingeckoId: "unknown", }, { contractAddress: "0x1234567890123456789012345678901234567345", @@ -1123,7 +1075,6 @@ describe("l1Metrics", () => { name: "unknown", decimals: 18, type: "erc20", - coingeckoId: "unknown", }, ]; diff --git a/packages/pricing/src/mappings/coingecko.mapping.ts b/packages/pricing/src/mappings/coingecko.mapping.ts index fca081d..1802a4c 100644 --- a/packages/pricing/src/mappings/coingecko.mapping.ts +++ b/packages/pricing/src/mappings/coingecko.mapping.ts @@ -3,56 +3,346 @@ import { Address } from "@zkchainhub/shared"; type CoingeckoId = string; export const addressToId: Record = { - // this is the address given to native ETH on L2 chains and we use it as convention - "0x0000000000000000000000000000000000000001": "ethereum", - "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48": "usd-coin", - "0x9D14BcE1dADdf408d77295BB1be9b343814f44DE": "koi-3", - "0xdAC17F958D2ee523a2206206994597C13D831ec7": "tether", - "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599": "wrapped-bitcoin", - "0x77F76483399Dc6328456105B1db23e2Aca455bf9": "hypercomic", - "0xae78736Cd615f374D3085123A210448E74Fc6393": "rocket-pool-eth", - "0xF9c53268e9de692AE1b2ea5216E24e1c3ad7CB1E": "idexo-token", + "0xE41d2489571d322189246DaFA5ebDe1F4699F498": "0x", + "0x7FF4169a6B5122b664c51c95727d87750eC07c84": "tenset", + "0x111111111117dC0aa78b770fA6A738034120C302": "1inch", + "0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9": "aave", + "0x44108f0223A3C3028F5Fe7AEC7f9bb2E66beF82F": "across-protocol", + "0xB528edBef013aff855ac3c50b381f253aF13b997": "aevo-exchange", + "0xBC6DA0FE9aD5f3b0d58160288917AA56653660E9": "alchemix-usd", + "0xEd04915c23f00A313a544955524EB7DBD823143d": "alchemy-pay", + "0xdD0ae774F7E300CdAA4EA371cD55169665Ee6AFe": "aleph-zero", + "0x27702a26126e0B3702af63Ee09aC4d1A084EF628": "aleph", + "0xe7c3755482d0dA522678Af05945062d4427e0923": "alexgo", + "0x8457CA5040ad67fdebbCC8EdCE889A335Bc0fbFB": "altlayer", + "0x1a2EB478FA07125C9935A77b3C03a82470801E30": "amino", + "0xfF20817765cB7f73d4bde2e66e067E58D11095C2": "amp-token", + "0x8290333ceF9e6D528dD5618Fb97a76f268f3EDD4": "ankr", + "0xE95A203B1a91a908F9B9CE46459d101078c2c3cb": "ankreth", + "0x26dcFbFa8Bc267b250432c01C982Eaf81cC5480C": "ankr-reward-earning-matic", + "0xf99d58e463A2E07e5692127302C20A191861b4D6": "anyswap", + "0x4d224452801ACEd8B2F0aebE155379bb5D594381": "apecoin", + "0xEF40B859D21e4d566a3d713e756197c021BffaAa": "apenft", + "0x52A8845DF664D76C69d2EEa607CD793565aF42B8": "apex-token-2", + "0x0b38210ea11411557c13457D4dA7dC6ea731B88a": "api3", + "0xa117000000f279D81A1D3cc75430fAA017FA5A2e": "aragon", + "0xB50721BCf8d664c30412Cfbc6cf7a15145234ad1": "arbitrum", + "0xBA50933C268F567BDC86E1aC131BE072C6B0b71a": "arpa", + "0x18aAA7115705e8be94bfFEBDE57Af9BFc265B998": "audius", + "0xAaAAAA20D9E0e2461697782ef11675f668207961": "aurora-near", + "0xBB0E17EF65F82Ab018d8EDd776e8DD940327B28b": "axie-infinity", + "0xAC57De9C1A09FeC648E93EB98875B212DB0d460B": "baby-doge-coin", + "0x808688c820AB080A6Ff1019F03E5EC227D9b522B": "bag", + "0xba100000625a3754423978a60c9317c58a424e3D": "balancer", + "0x1F573D6Fb3F13d689FF844B4cE37794d79a7FF1C": "bancor", + "0xBA11D00c5f74255f56a5E366F4F77f5A186d7f55": "band-protocol", + "0x0D8775F648430679A709E98d2b0Cb6250d2887EF": "basic-attention-token", + "0xA91ac63D040dEB1b7A5E4d4134aD23eb0ba07e14": "bella-protocol", + "0x94025780a1aB58868D9B2dBBB775f44b32e8E6e5": "betswirl", + "0xF17e65822b568B3903685a7c9F496CF7656Cc6C2": "biconomy", + "0x0c7D5ae016f806603CB1782bEa29AC69471CAb9c": "bifrost", + "0x1A4b46696b2bB4794Eb3D4c26f1c55F9170fa4C5": "bitdao", + "0x2AF5D2aD76741191D15Dfe7bF6aC92d4Bd912Ca3": "leo-token", + "0xC669928185DbCE49d2230CC9B0979BE6DC797957": "bittorrent", + "0x5283D291DBCF85356A21bA090E6db59121208b44": "blur", + "0x42bBFa2e77757C645eeaAd1655E0911a7553Efbc": "boba-network", + "0x4674a4F24C5f63D53F22490Fb3A08eAAAD739ff8": "brokoli", + "0x4Fabb145d64652a948d72533023f6E7A623C7C53": "binance-usd", + "0x491604c0FDF08347Dd1fa4Ee062a822A5DD06B5D": "cartesi", + "0x4F9254C83EB525f9FCf346490bbb3ed28a81C667": "celer-network", + "0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d": "celsius-degree-token", + "0xA2cd3D43c775978A96BdBf12d733D5A1ED94fb18": "chain-2", + "0x514910771AF9Ca656af840dff83E8264EcF986CA": "chainlink", + "0x104F3152D8ebFC3f679392977356962Ff36566aC": "chainport", + "0x3506424F91fD33084466F402d5D97f05F8e3b4AF": "chiliz", + "0x8A2279d4A90B6fe1C4B30fa660cC9f926797bAA2": "chromaway", + "0x41e5560054824eA6B0732E656E3Ad64E20e94E45": "civic", + "0xAE12C5930881c53715B369ceC7606B70d8EB229f": "coin98", + "0xBe9895146f7AF43049ca1c1AE358B0541Ea49704": "coinbase-wrapped-staked-eth", + "0x081F67aFA0cCF8c7B17540767BBe95DF2bA8D97F": "coinex-token", + "0xc00e94Cb662C3520282E6f5717214004A7f26888": "compound-governance-token", + "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643": "cdai", + "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5": "compound-ether", + "0x39AA39c021dfbaE8faC545936693aC917d5E7563": "compound-usd-coin", + "0xccF4429DB6322D5C611ee964527D42E5d685DD6a": "compound-wrapped-btc", + "0xEABB8996eA1662cAd2f7fB715127852cd3262Ae9": "connect-financial", + "0xFE67A4450907459c3e1FFf623aA927dD4e28c67a": "connext", + "0x7A58c0Be72BE218B41C608b7Fe7C5bB630736C71": "constitutiondao", + "0x62B9c7356A2Dc64a1969e19C23e4f579F9810Aa7": "convex-crv", + "0xFEEf77d3f69374f66429C91d732A244f074bdf74": "convex-fxs", + "0x4e3FBD56CD56c3e72c1403e103b45Db9da5B9D2B": "convex-finance", + "0x42Baf1f659D765C65ADE5BB7E08eb2C680360d9d": "cornucopias", + "0xDDB3422497E61e13543BeA06989C0789117555c5": "coti", + "0x678e840C640F619E17848045D23072844224dD37": "cratos", + "0xaE6e307c3Fe9E922E5674DBD7F830Ed49c014c6B": "credefi", + "0xA0b73E1Ff0B80914AB6fe0444E65848C4C34450b": "crypto-com-chain", + "0xD533a949740bb3306d119CC777fa900bA034cd52": "curve-dao-token", + "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E": "crvusd", + "0x14778860E937f509e651192a90589dE711Fb88a9": "cyberconnect", "0x6B175474E89094C44Da98b954EedeAC495271d0F": "dai", + "0x0f51bb10119727a7e5eA3538074fb341F56B09Ad": "dao-maker", + "0x0F5D2fB29fb7d3CFeE444a200298f468908cC942": "decentraland", + "0xc719d010B63E5bbF2C0551872CD5316ED26AcD83": "etherisc", + "0x0C10bF8FcB7Bf5412187A595ab97a3609160b5c6": "usdd", + "0x1494CA1F11D487c2bBe4543E90080AeBa4BA3C2b": "defipulse-index", + "0x53C8395465A84955c95159814461466053DedEDE": "degate", + "0x3597bfD533a99c9aa083587B074434E61Eb0A258": "dent", + "0xDDdddd4301A082e62E84e43F474f044423921918": "rhinofi", "0x5F64Ab1544D28732F0A24F4713c2C8ec0dA089f0": "dextf", + "0x888888435FDe8e7d4c54cAb67f206e4199454c60": "dfx-finance", + "0xca1207647Ff814039530D7d35df0e1Dd2e91Fa84": "dhedge-dao", + "0xB9EefC4b0d472A44be93970254Df4f4016569d27": "digitalbits", + "0x761D38e5ddf6ccf6Cf7c55759d5210750B5D60F3": "dogelon-mars", + "0x865377367054516e17014CcdED1e7d814EDC9ce4": "dola-usd", + "0xEec2bE5c91ae7f8a338e1e5f3b5DE49d07AfdC81": "dopex", + "0x0ff5A8451A839f5F0BB3562689D9A44089738D11": "dopex-rebate-token", + "0x92D6C1e31e14520e676a687F0a93788B716BEff5": "dydx", + "0x6468e79A80C0eaB0F9A2B574c8d5bC374Af59414": "e-radix", + "0x04C46E830Bb56ce22735d5d8Fc9CB90309317d0f": "ekubo-protocol", + "0x57e114B691Db790C35207b2e685D4A43181e6061": "ethena", + "0xF629cBd94d3791C9250152BD8dfBDF380E2a3B9c": "enjincoin", + "0x4da0C48376C277cdBd7Fc6FdC6936DEE3e4AdF75": "epik-prime", + "0xfE80D611c6403f70e5B1b9B722D2B3510B740B2B": "equilibria-finance", + "0xA2085073878152aC3090eA13D1e41bD69e60Dc99": "escoin-token", + "0xbdab72602e9AD40FC6a6852CAf43258113B8F7a5": "sovryn", + // this is the address given to native ETH on L2 chains and we use it as convention + "0x0000000000000000000000000000000000000001": "ethereum", + "0x35fA164735182de50811E8e2E824cFb9B6118ac2": "ether-fi-staked-eth", + "0xFe0c30065B384F05761f15d0CC899D4F9F9Cc0eB": "ether-fi", + "0xC18360217D8F7Ab5e7c516566761Ea12Ce7F9D72": "ethereum-name-service", + "0xA35b1B31Ce002FBF2058D22F30f95D405200A15b": "stader-ethx", + "0x1a7e4e63778B4f12a199C062f3eFdD288afCBce8": "ageur", + "0xC581b735A1688071A1746c968e0798D642EDE491": "tether-eurt", + "0x4E15361FD6b4BB609Fa63C81A2be19d873717870": "wrapped-fantom", + "0x389999216860AB8E0175387A0c90E5c52522C945": "feg-token-2", + "0x956F47F50A910163D8BF957Cf5846D573E7f87CA": "fei-usd", + "0xaea46A60368A7bD060eec7DF8CBa43b7EF41Ad85": "fetch-ai", + "0xB2ee0aDBe0EF1281025d0676511bB1df14600f4D": "fore-protocol", + "0x853d955aCEf822Db058eb8505911ED77F175b99e": "frax", + "0x5E8422345238F34275888049021821E8E08CAa1f": "frax-ether", + "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E": "frax-price-index", + "0xc2544A32872A91F4A553b404C6950e89De901fdb": "frax-price-index-share", + "0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0": "frax-share", + "0x50D1c9771902476076eCFc8B2A83Ad6b9355a4c9": "ftx-token", + "0x8c15Ef5b4B21951d50E53E4fbdA8298FFAD25057": "fx-coin", + "0x056C1D42Fb1326f57da7f19eBB7dDA4673f1FF55": "gains", + "0x15D4c048F83bd7e37d49eA4C83a07267Ec4203dA": "gala", + "0xD567B5F02b9073aD3a982a099a23Bf019FF11d1c": "gamestarter", + "0xE66747a101bFF2dBA3697199DCcE5b743b454759": "gatechain-token", + "0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd": "gemini-dollar", + "0x21413c119b0C11C5d96aE1bD328917bC5C8ED67E": "genomesdao", + "0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f": "gho", + "0x6810e776880C02933D47DB1b9fc05908e5386b96": "gnosis", + "0x7DD9c5Cba05E151C895FDe1CF355C9A1D5DA6429": "golem", + "0x830eB1204380E9c44434Db8700257025358707c6": "goons-of-balatroon", + "0x0ab87046fBb341D058F17CBC4c1133F25a20a52f": "governance-ohm", "0xeEAA40B28A2d1b0B08f6f97bB1DD4B75316c6107": "govi", + "0xc944E90C64B2c07662A292be6244BDf05Cda44a7": "the-graph", + "0x9C7BEBa8F6eF6643aBd725e45a4E8387eF260649": "g-token", + "0x9AB7bb7FdC60f4357ECFef43986818A2A3569c62": "guild-of-guardians", + "0x9Ce115f0341ae5daBC8B477b74E83db2018A6f42": "hairdao", + "0x0c90C57aaf95A3A87eadda6ec3974c99D786511F": "hanchain", + "0x584bC13c7D411c00c01A62e8019472dE68768430": "hegic", + "0xEEF9f339514298C6A857EfCfC1A762aF84438dEE": "hermez-network-token", + "0x24fcFC492C1393274B6bcd568ac9e225BEc93584": "heroes-of-mavia", + "0x6c6EE5e31d828De241282B9606C8e98Ea48526E2": "holotoken", + "0xc5102fE9359FD9a28f877a67E36B0F050d81a3CC": "hop-protocol", + "0x8FAc8031e079F409135766C7d5De29cf22EF897C": "humans-ai", + "0x6f259637dcD74C767781E37Bc6133cd6A68aa161": "huobi-token", + "0xdF574c24545E5FfEcb9a659c229253D4111d87e1": "husd", + "0x767FE9EDC9E0dF98E07454847909b5E959D7ca0E": "illuvium", + "0xF57e7e7C23978C3cAEC3C3548E3D615c346e79fF": "immutable-x", + "0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30": "injective-protocol", + "0x0A3BB08b3a15A19b4De82F8AcFc862606FB69A2D": "izumi-bond-usd", + "0x85Eee30c52B0b379b046Fb0F85F4f3Dc3009aFEC": "keep-network", + "0x1cEB5cB57C4D4E2b2433641b95Dd330A33185A44": "keep3rv1", + "0x9D14BcE1dADdf408d77295BB1be9b343814f44DE": "koi-3", + "0xf34960d9d60be18cC1D5Afc1A6F012A723a28811": "kucoin-shares", + "0xdeFA4e8a7bcBA345F687a2f1456F5Edd9CE97202": "kyber-network-crystal", + "0x8971f9fd7196e5cEE2C1032B50F656855af7Dd26": "lambda", + "0x482dF7483a52496F4C65AB499966dfcdf4DDFDbc": "ledgity-token", + "0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32": "lido-dao", + "0x0921799CB1d702148131024d18fCdE022129Dc73": "lightlink", + "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84": "staked-ether", + "0x6033F7f88332B8db6ad452B7C6D5bB643990aE3f": "lisk", + "0x58b6A8A3302369DAEc383334672404Ee733aB239": "livepeer", + "0xf4d2888d29D722226FafA5d9B24F9164c092421E": "looksrare", + "0xBBbbCA6A901c926F240b89EacB641d8Aec7AEafD": "loopring", + "0x686f2404e77Ab0d9070a46cdfb0B7feCDD2318b0": "lords", + "0x6DEA81C8171D0bA574754EF6F8b412F2Ed88c54D": "liquity", + "0xA8b919680258d369114910511cc87595aec0be6D": "lukso-token", "0x5f98805A4E8be255a32880FDeC7F6728C6568bA0": "liquity-usd", + "0x01BA67AAC7f75f647D94220Cc98FB30FCc5105Bf": "lyra-finance", + "0xB0c7a3Ba49C7a6EaBa6cD4a96C55a1391070Ac9A": "magic", + "0x99D8a9C45b2ecA8864373A26D1459e3Dff1e17F3": "magic-internet-money", + "0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2": "maker", + "0x3c3a81e81dc49A522A592e7622A7E711c06bf354": "mantle", + "0x57B946008913B82E4dF85f501cbAeD910e58D26C": "marlin", + "0x69af81e73A73B40adF4f3d4223Cd9b1ECE623074": "mask-network", + "0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0": "matic-network", + "0x333000333b26eE30214B4af6419D9ab07a450400": "meld-2", + "0x949D48EcA67b17269629c7194F4b727d4Ef9E5d6": "merit-circle", + "0xF433089366899D83a9f26A773D59ec7eCF30355e": "metal", + "0x72e364F2ABdC788b7E918bc238B21f109Cd634D7": "metaverse-index", + "0xd5F7838F5C461fefF7FE49ea5ebaF7728bB0ADfa": "mantle-staked-ether", + "0x9E32b13ce7f2E80A01932B42553652E053D6ed8e": "metis-token", + "0x59D9356E565Ab3A36dD77763Fc0d87fEaf85508C": "mountain-protocol-usdm", + "0x32bd822d615A3658A68b6fDD30c2fcb2C996D678": "eigenpie-sweth", + "0xA49d7499271aE71cd8aB9Ac515e6694C755d400c": "mute", + "0x4e352cF164E64ADCBad318C3a1e222E9EBa4Ce42": "mcdex", + "0x5Ca381bBfb58f0092df149bD3D243b08B9a8386e": "mxc", + "0xA0Ef786Bf476fE0810408CaBA05E536aC800ff86": "myria", + "0x5fDe99e121F3aC02e7d6ACb081dB1f89c1e93C17": "myso-token", + "0x674C6Ad92Fd080e4004b2312b45f796a192D27a0": "neutrino", + "0xB62132e35a6c13ee1EE0f84dC5d40bad8d815206": "nexo", + "0x8E0fE2947752BE0d5ACF73aaE77362Daf79cB379": "nftrade", + "0x610dBd98A28EbbA525e9926b6aaF88f9159edbfd": "nostra", + "0x4fE83213D56308330EC302a8BD641f1d0113A4Cc": "nucypher", + "0x3496B523e5C00a4b4150D6721320CdDb234c3079": "numbers-protocol", + "0xd7c49CEE7E9188cCa6AD8FF264C1DA2e69D4Cf3B": "nxm", + "0x967da4048cD07aB37855c090aAF366e4ce1b9F48": "ocean-protocol", + "0x75231F58b43240C9718Dd58B4967c5114342a86c": "okb", + "0x64aa3364F17a4D01c6f1751Fd97C2BD3D7e7f1D5": "olympus", + "0xd26114cd6EE289AccF82350c8d8487fedB8A0C07": "omisego", + "0xeD35af169aF46a02eE13b9d79Eb57d6D68C1749e": "ecomi", + "0x1B6e9c73beE68102d9dd4A2627f97bFf4183ab0A": "openleverage", + "0xF8e57AC2730D3088D98B79209739b0D5Ba085a03": "optopia-ai", + "0xBb3A8FD6Ec4bF0FDc6Cd2739b1e41192D12B1873": "orbofi-ai", + "0xff56Cc6b1E6dEd347aA0B7676C85AB0B3D08B0FA": "orbs", + "0x2A8e1E676Ec238d8A992307B495b45B3fEAa5e86": "origin-dollar", + "0x727f064A78DC734D33eEc18d5370aef32Ffd46e4": "orion-money", + "0x69A1e699f562D7Af66Fc6cc473d99f4430C3AcD2": "param", + "0xD528cf2E081f72908e086F8800977df826B5a483": "paribus", + "0x8E870D67F660D95d5be530380D0eC0bd388289E1": "paxos-standard", + "0x45804880De22913dAFE09f4980848ECE6EcbAf78": "pax-gold", + "0x02f92800F57BCD74066F5709F1Daa1A4302Df875": "peapods-finance", + "0x808507121B80c02388fAd14726482e061B8da827": "pendle", "0x6982508145454Ce325dDbE47a25d4ec3d2311933": "pepe", - "0xd38BB40815d2B0c2d2c866e0c72c5728ffC76dd9": "symbiosis-finance", - "0xDDdddd4301A082e62E84e43F474f044423921918": "rhinofi", - "0xBe9895146f7AF43049ca1c1AE358B0541Ea49704": "coinbase-wrapped-staked-eth", - "0xBBBbbBBB46A1dA0F0C3F64522c275BAA4C332636": "zkspace", - "0xD31a59c85aE9D8edEFeC411D448f90841571b89c": "sol-wormhole", - "0xB64ef51C888972c908CFacf59B47C1AfBC0Ab8aC": "storj", - "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2": "weth", - "0x582d872A1B094FC48F5DE31D3B73F2D9bE47def1": "the-open-network", - "0xfAC77A24E52B463bA9857d6b758ba41aE20e31FF": "lsdx-finance", - "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E": "crvusd", - "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0": "wrapped-steth", + "0xbC396689893D065F41bc2C6EcbeE5e0085233447": "perpetual-protocol", + "0x6c5bA91642F10282b576d91922Ae6448C9d52f4E": "pha", + "0x79C75E2e8720B39e258F41c37cC4f309E0b0fF80": "phantasma", + "0xbBb32f99e6F2Cb29337EeBAA43C5069386DE6e6c": "phemex", + "0x04C154b66CB340F3Ae24111CC767e0184Ed00Cc6": "dinero-staked-eth", + "0x3a4f40631a4f906c2BaD353Ed06De7A5D3fCb430": "playdapp", + "0x89Ab32156e46F46D02ade3FEcbe5Fc4243B9AAeD": "pnetwork", + "0x1796ae0b0fa4862485106a0de9b654eFE301D0b2": "polychain-monsters", + "0x455e53CBB86018Ac2B8092FdCd39d8444aFFC3F6": "polygon-ecosystem-token", + "0x9992eC3cF6A55b00978cdDF2b27BC6882d88D1eC": "polymath", + "0x595832F8FC6BF59c85C527fEC3740A1b7a361269": "power-ledger", + "0x6399C842dD2bE3dE30BF99Bc7D1bBF6Fa3650E70": "premia", + "0xfB5c6815cA3AC72Ce9F5006869AE67f18bF77006": "pstake-finance", + "0x7825e833D495F3d1c28872415a4aee339D26AC88": "wrapped-telos", + "0xD9A442856C234a39a81a089C06451EBAa4306a72": "pufeth", + "0x18fA05ee5e478EED8925946abb41d09AEc5d34D6": "puff-the-dragon", + "0x0FD10b9899882a6f2fcb5c371E17e70FdEe00C38": "pundi-x-2", + "0x430EF9263E76DAE63c84292C3409D61c598E9682": "vulcan-forged", + "0x4a220E6096B25EADb88358cb44068A3248254675": "quant-network", + "0x3Ba925fdeAe6B46d0BB4d424D829982Cb2F7309e": "rabbitx", + "0x31c8EAcBFFdD875c74b94b077895Bd78CF1E64A3": "radicle", + "0x12BB890508c125661E03b09EC06E404bc9289040": "radio-caca", + "0x03ab458634910AaD20eF5f1C8ee96F1D6ac54919": "rai", + "0xf1f955016EcbCd7321c7266BccFB96c68ea5E49b": "rally-2", + "0xD291E7a03283640FDc51b121aC401383A46cC623": "rari-governance-token", + "0x50DE6856358Cc35f3A9a57eAAA34BD4cB707d2cd": "razor-network", + "0xFE3E6a25e6b192A42a44ecDDCd13796471735ACf": "reef", + "0xEB4C2781e4ebA804CE9a9803C67d0893436bB27D": "renbtc", + "0x6De037ef9aD2725EB40118Bb1702EBb27e4Aeb24": "render-token", + "0xbf5495Efe5DB9ce00f80364C8B423567e58d2110": "renzo-restaked-eth", + "0x408e41876cCCDC0F92210600ef50372656052a38": "republic-protocol", + "0x8f8221aFbB33998d8584A2B05749bA73c37a938a": "request-network", + "0x320623b8E4fF03373931769A31Fc52A4E78B5d70": "reserve-rights-token", + "0xae78736Cd615f374D3085123A210448E74Fc6393": "rocket-pool-eth", + "0xD33526068D116cE69F19A9ee46F0bd304F21A51f": "rocket-pool", + "0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7": "kelp-dao-restaked-eth", + "0xc98D64DA73a6616c42117b582e832812e7B8D57F": "rss3", + "0xFAe103DC9cf190eD75350761e95403b7b8aFa6c0": "restaked-swell-eth", + "0x3845badAde8e6dFF049820680d1F14bD3903a5d0": "the-sandbox", + "0x83F20F44975D03b1b09e64809B757c47f942BEeA": "savings-dai", + "0x476c5E26a75bd202a9683ffD34359C0CC15be0fF": "serum", "0x95aD61b0a150d79219dCF64E1E6Cc01f0B64C4cE": "shiba-inu", - "0xA91ac63D040dEB1b7A5E4d4134aD23eb0ba07e14": "bella-protocol", - "0x111111111117dC0aa78b770fA6A738034120C302": "1inch", - "0xA487bF43cF3b10dffc97A9A744cbB7036965d3b9": "deri-protocol", - "0x163f8C2467924be0ae7B5347228CABF260318753": "worldcoin-wld", - "0x7448c7456a97769F6cD04F1E83A4a23cCdC46aBD": "maverick-protocol", - "0xa41d2f8Ee4F47D3B860A149765A7dF8c3287b7F0": "syncus", - "0xC91a71A1fFA3d8B22ba615BA1B9c01b2BBBf55ad": "zigzag-2", + "0x6f80310CA7F2C654691D1383149Fa1A57d8AB1f8": "silo-finance", + "0x5B7533812759B45C2B44C19e320ba2cD2681b542": "singularitynet", + "0x00c83aeCC790e8a4453e5dD3B0B4b3680501a7A7": "skale", + "0xCC8Fa225D80b9c7D42F96e9570156c65D6cAAa25": "smooth-love-potion", + "0xf96d4B1e0a0B129e1471e88dF6f1281b933Bc474": "wrapped-eeth", + "0x090185f2135308BaD17527004364eBcC2D37e5F6": "spell-token", + "0x73968b9a57c6E53d41345FD57a6E6ae27d6CDB2F": "stake-dao", + "0xA95C5ebB86E0dE73B4fB8c47A45B792CFeA28C23": "stake-link", + "0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32": "staked-frax", + "0xac3E018457B222d93114458476f3E3416Abbe38F": "staked-frax-ether", + "0x9D39A5DE30e57443BfF2A8307A4256c8797A3497": "ethena-staked-usde", + "0x547213367cfB08ab418E7b54d7883b2C2AA27Fd7": "anzen-staked-usdz", + "0x7122985656e38BDC0302Db86685bb972b145bD3C": "stakestone-ether", + "0xAf5191B0De278C7286d6C7CC6ab6BB8A73bA2Cd6": "stargate-finance", + "0xCa14007Eff0dB1f8135f4C25B34De49AB0d42766": "starknet", + "0x8E6cd950Ad6ba651F6DD608Dc70e5886B1AA6B24": "starlink", + "0x744d70FDBE2Ba4CF95131626614a1763DF805B9E": "status", + "0x4d831e22F062b5327dFdB15f0b6a5dF20E2E3dD0": "stakestone-ether", + "0xe53EC727dbDEB9E2d5456c3be40cFF031AB40A55": "superfarm", + "0x8798249c2E607446EfB7Ad49eC89dD1865Ff4272": "xsushi", + "0x6B3595068778DD592e39A122f4f5a5cF09C90fE2": "sushi", + "0x8CE9137d39326AD0cD6491fb5CC0CbA0e089b6A9": "swipe", + "0xba9d4199faB4f26eFE3551D490E3821486f135Ba": "swissborg", + "0x64d0f55Cd8C7133a9D7102b13987235F486F2224": "swissborg", + "0xbe9F61555F50DD6167f2772e9CF7519790d96624": "sx-network-2", + "0xd38BB40815d2B0c2d2c866e0c72c5728ffC76dd9": "symbiosis-finance", + "0x0f2D719407FdBeFF09D87557AbB7232601FD9F29": "synapse-2", + "0xC011a73ee8576Fb46F5E1c5751cA3B9Fe0af2a6F": "havven", + "0x10dea67478c5F8C5E2D90e5E9B26dBe60c54d800": "taiko", + "0x95CcffaE3Eb8767D4a941Ec43280961dde89F4dE": "taobank", "0x18084fbA666a33d37592fA2633fD49a74DD93a88": "tbtc", - "0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7": "kelp-dao-restaked-eth", - "0x0a77eF9bf662D62Fbf9BA4cf861EaA83F9CC4FEC": "x-world-games", - "0x72e364F2ABdC788b7E918bc238B21f109Cd634D7": "metaverse-index", - "0x514910771AF9Ca656af840dff83E8264EcF986CA": "chainlink", - "0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9": "aave", - "0x5C1d9aA868a30795F92fAe903eDc9eFF269044bf": "changer", - "0x88dF592F8eb5D7Bd38bFeF7dEb0fBc02cf3778a0": "tellor", - "0xbf5495Efe5DB9ce00f80364C8B423567e58d2110": "renzo-restaked-eth", - "0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0": "matic-network", + "0x467Bccd9d29f223BcE8043b84E8C8B282827790F": "telcoin", + "0xB60acD2057067DC9ed8c083f5aa227a244044fD6": "tensorplex-staked-tao", + "0x68749665FF8D2d112Fa859AA293F07A622782F38": "tether-gold", + "0xdAC17F958D2ee523a2206206994597C13D831ec7": "tether", + "0x8947da500Eb47F82df21143D0C01A29862a8C3c5": "thales", + "0x249e38Ea4102D0cf8264d3701f1a0E39C4f2DC3B": "ufo-gaming", + "0x3155BA85D5F96b2d030a4966AF206230e46849cb": "thorchain", + "0x2e9d63788249371f1DFC918a52f8d799F4a38C94": "tokemak", + "0xcccCb68e1A848CBDB5b60a974E07aAE143ed40C3": "hytopia", + "0xaA7a9CA87d3694B5755f213B5D04094b8d0F0A6F": "origintrail", + "0xdE8CD13B812BcD82218754A740b27E76ec1e86aD": "trestle", + "0xc7283b66Eb1EB5FB86327f08e1B5816b0720212B": "tribe-2", + "0x0000000000085d4780B73119b644AE5ecd22b376": "true-usd", + "0x38C2a4a7330b22788374B8Ff70BBa513C8D848cA": "truflation", + "0xD13c7342e1ef687C5ad21b27c2b65D772cAb5C8c": "ultra", + "0x04Fa0d235C4abf4BcF4787aF4CF447DE572eF828": "uma", + "0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984": "uniswap", + "0xF1376bceF0f78459C0Ed0ba5ddce976F1ddF51F4": "universal-eth", + "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48": "usd-coin", + "0x4c9EDD5852cd905f086C759E8383e09bff1E68B3": "ethena-usde", + "0x5F0bc16D50F72d10b719dBF6845DE2E599eb5624": "vent-finance", + "0xbbEE07B3e8121227AfCFe1E2B82772246226128e": "vertex-protocol", + "0x7d5121505149065b562C789A0145eD750e6E8cdD": "victoria-vr", + "0x8C543AED163909142695f2d2aCd0D55791a9Edb9": "velas", + "0x92CC36D66e9d739D50673d1f27929a371FB83a67": "wagmi-2", + "0x1cF4592ebfFd730c7dc92c1bdFFDfc3B9EfCf29a": "waves", + "0x54Df3076ac0CdC9bC97fA290AB9c5a88E3D23630": "wecoin", + "0xa02120696c7B8fE16C09C749E4598819b2B0E915": "wirex", "0x4691937a7508860F876c9c0a2a617E7d9E945D4B": "woo-network", - "0x62D0A8458eD7719FDAF978fe5929C6D342B0bFcE": "beam-2", - "0xC9fE6E1C76210bE83DC1B5b20ec7FD010B0b1D15": "fringe-finance", - "0xfFffFffF2ba8F66D4e51811C5190992176930278": "furucombo", - "0xd5F7838F5C461fefF7FE49ea5ebaF7728bB0ADfa": "mantle-staked-ether", - "0xe2353069f71a27bBbe66eEabfF05dE109c7d5E19": "bonsai3", - "0xD33526068D116cE69F19A9ee46F0bd304F21A51f": "rocket-pool", + "0x163f8C2467924be0ae7B5347228CABF260318753": "worldcoin-wld", + "0x0F3ADC247E91c3c50bC08721355A41037E89Bc20": "anchor-protocol", + "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599": "wrapped-bitcoin", + "0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee": "wrapped-eeth", + "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2": "weth", + "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0": "wrapped-steth", + "0x09a3EcAFa817268f77BE1283176B946C4ff2E608": "mirror-protocol", + "0x57F5E098CaD7A3D1Eed53991D4d66C45C9AF7812": "mountain-protocol-usdm", + "0x6aD2d2C22Bb58eA94Be18Cff11EF67e8bb97B652": "trestle-wrapped-tia", + "0x582d872A1B094FC48F5DE31D3B73F2D9bE47def1": "the-open-network", + "0x7659CE147D0e714454073a5dd7003544234b6Aa0": "xcad-network", + "0x8Fe815417913a93Ea99049FC0718ee1647A2a07c": "xswap-2", + "0x55296f69f40Ea6d20E478533C15A6B08B654E758": "xyo-network", + "0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e": "yearn-finance", + "0xF55a93b613D172b86c2Ba3981a849DaE2aeCDE2f": "yfx", + "0x25f8087EAD173b73D6e8B84329989A8eEA16CF73": "yield-guild-games", + "0xaa602dE53347579f86b996D2Add74bb6F79462b2": "zipmex-token", + "0x28Ff2E4dD1B58efEB0fC138602A28D5aE81e44e2": "cronos-zkevm-cro", + "0xb2606492712D311be8f41d940AFE8CE742A52D44": "zklend-2", + "0xfC385A1dF85660a7e041423DB512f779070FCede": "zklink", + "0xe4815AE53B124e7263F08dcDBBB757d41Ed658c6": "zkspace", + "0xc2e660C62F72c2ad35AcE6DB78a616215E2F2222": "zunami-eth-2", + "0x8C0D76C9B18779665475F3E212D9Ca1Ed6A1A0e6": "zunami-usd", }; export const idToAddress: Record = Object.fromEntries( diff --git a/packages/shared/src/metadata/token.ts b/packages/shared/src/metadata/token.ts index 721ee7a..0e4d069 100644 --- a/packages/shared/src/metadata/token.ts +++ b/packages/shared/src/metadata/token.ts @@ -16,7 +16,6 @@ export const nativeToken: Readonly> = { name: "Ethereum", symbol: "ETH", contractAddress: null, - coingeckoId: "ethereum", type: "native", imageUrl: "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628", decimals: 18, @@ -26,7 +25,6 @@ export const WETH: Readonly> = { name: "Wrapped Ether", symbol: "WETH", contractAddress: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", - coingeckoId: "weth", imageUrl: "https://coin-images.coingecko.com/coins/images/2518/large/weth.png?1696503332", type: "erc20", decimals: 18, @@ -37,7 +35,6 @@ export const erc20Tokens: Readonly>> = { name: "USDC", symbol: "USDC", contractAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", - coingeckoId: "usd-coin", imageUrl: "https://coin-images.coingecko.com/coins/images/6319/large/usdc.png?1696506694", type: "erc20", decimals: 6, @@ -46,7 +43,6 @@ export const erc20Tokens: Readonly>> = { name: "Koi", symbol: "KOI", contractAddress: "0x9D14BcE1dADdf408d77295BB1be9b343814f44DE", - coingeckoId: "koi-3", imageUrl: "https://coin-images.coingecko.com/coins/images/35766/large/Koi_logo.png?1709782399", type: "erc20", @@ -56,7 +52,6 @@ export const erc20Tokens: Readonly>> = { name: "Tether USD", symbol: "USDT", contractAddress: "0xdAC17F958D2ee523a2206206994597C13D831ec7", - coingeckoId: "tether", imageUrl: "https://coin-images.coingecko.com/coins/images/325/large/Tether.png?1696501661", type: "erc20", decimals: 6, @@ -65,7 +60,6 @@ export const erc20Tokens: Readonly>> = { name: "Wrapped BTC", symbol: "WBTC", contractAddress: "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599", - coingeckoId: "wrapped-bitcoin", imageUrl: "https://coin-images.coingecko.com/coins/images/7598/large/wrapped_bitcoin_wbtc.png?1696507857", type: "erc20", @@ -75,7 +69,6 @@ export const erc20Tokens: Readonly>> = { name: "HYCO", symbol: "HYCO", contractAddress: "0x77F76483399Dc6328456105B1db23e2Aca455bf9", - coingeckoId: "hypercomic", imageUrl: "https://coin-images.coingecko.com/coins/images/29407/large/coingecko_HYPERCOMIC_LOGO.png?1696528357", type: "erc20", @@ -85,7 +78,6 @@ export const erc20Tokens: Readonly>> = { name: "Rocket Pool ETH", symbol: "rETH", contractAddress: "0xae78736Cd615f374D3085123A210448E74Fc6393", - coingeckoId: "rocket-pool-eth", imageUrl: "https://coin-images.coingecko.com/coins/images/20764/large/reth.png?1696520159", type: "erc20", decimals: 18, @@ -94,7 +86,6 @@ export const erc20Tokens: Readonly>> = { name: "Idexo Token", symbol: "IDO", contractAddress: "0xF9c53268e9de692AE1b2ea5216E24e1c3ad7CB1E", - coingeckoId: "idexo-token", imageUrl: "https://coin-images.coingecko.com/coins/images/18523/large/qOiqm7T8_400x400.jpg?1696518004", type: "erc20", @@ -104,7 +95,6 @@ export const erc20Tokens: Readonly>> = { name: "Dai Stablecoin", symbol: "DAI", contractAddress: "0x6B175474E89094C44Da98b954EedeAC495271d0F", - coingeckoId: "dai", imageUrl: "https://coin-images.coingecko.com/coins/images/9956/large/Badge_Dai.png?1696509996", type: "erc20", @@ -114,7 +104,6 @@ export const erc20Tokens: Readonly>> = { name: "DEXTF Token", symbol: "DEXTF", contractAddress: "0x5F64Ab1544D28732F0A24F4713c2C8ec0dA089f0", - coingeckoId: "dextf", imageUrl: "https://coin-images.coingecko.com/coins/images/12634/large/0qgT0aMu_400x400.jpg?1696512442", type: "erc20", @@ -124,7 +113,6 @@ export const erc20Tokens: Readonly>> = { name: "GOVI", symbol: "GOVI", contractAddress: "0xeEAA40B28A2d1b0B08f6f97bB1DD4B75316c6107", - coingeckoId: "govi", imageUrl: "https://coin-images.coingecko.com/coins/images/13875/large/GOVI.png?1696513619", type: "erc20", decimals: 18, @@ -133,7 +121,6 @@ export const erc20Tokens: Readonly>> = { name: "LUSD Stablecoin", symbol: "LUSD", contractAddress: "0x5f98805A4E8be255a32880FDeC7F6728C6568bA0", - coingeckoId: "liquity-usd", imageUrl: "https://coin-images.coingecko.com/coins/images/14666/large/Group_3.png?1696514341", type: "erc20", @@ -143,7 +130,6 @@ export const erc20Tokens: Readonly>> = { name: "Pepe", symbol: "PEPE", contractAddress: "0x6982508145454Ce325dDbE47a25d4ec3d2311933", - coingeckoId: "pepe", imageUrl: "https://coin-images.coingecko.com/coins/images/29850/large/pepe-token.jpeg?1696528776", type: "erc20", @@ -153,7 +139,6 @@ export const erc20Tokens: Readonly>> = { name: "Symbiosis", symbol: "SIS", contractAddress: "0xd38BB40815d2B0c2d2c866e0c72c5728ffC76dd9", - coingeckoId: "symbiosis-finance", imageUrl: "https://coin-images.coingecko.com/coins/images/20805/large/SymbiosisFinance_logo-150x150.jpeg?1696520198", type: "erc20", @@ -163,7 +148,6 @@ export const erc20Tokens: Readonly>> = { name: "DeversiFi Token", symbol: "DVF", contractAddress: "0xDDdddd4301A082e62E84e43F474f044423921918", - coingeckoId: "rhinofi", imageUrl: "https://coin-images.coingecko.com/coins/images/16414/large/rhinologo.png?1697736807", type: "erc20", @@ -173,7 +157,6 @@ export const erc20Tokens: Readonly>> = { name: "Coinbase Wrapped Staked ETH", symbol: "cbETH", contractAddress: "0xBe9895146f7AF43049ca1c1AE358B0541Ea49704", - coingeckoId: "coinbase-wrapped-staked-eth", imageUrl: "https://coin-images.coingecko.com/coins/images/27008/large/cbeth.png?1709186989", type: "erc20", decimals: 18, @@ -182,7 +165,6 @@ export const erc20Tokens: Readonly>> = { name: "ZKBase", symbol: "ZKB", contractAddress: "0xBBBbbBBB46A1dA0F0C3F64522c275BAA4C332636", - coingeckoId: "zkspace", imageUrl: "https://coin-images.coingecko.com/coins/images/13585/large/image_2024-01-16_172847810.png?1705397359", type: "erc20", @@ -192,7 +174,6 @@ export const erc20Tokens: Readonly>> = { name: "Wrapped SOL (Wormhole)", symbol: "SOL", contractAddress: "0xD31a59c85aE9D8edEFeC411D448f90841571b89c", - coingeckoId: "sol-wormhole", imageUrl: "https://coin-images.coingecko.com/coins/images/22876/large/SOL_wh_small.png?1696522175", type: "erc20", @@ -202,7 +183,6 @@ export const erc20Tokens: Readonly>> = { name: "Storj", symbol: "STORJ", contractAddress: "0xB64ef51C888972c908CFacf59B47C1AfBC0Ab8aC", - coingeckoId: "storj", imageUrl: "https://coin-images.coingecko.com/coins/images/949/large/storj.png?1696502065", type: "erc20", decimals: 18, @@ -211,7 +191,6 @@ export const erc20Tokens: Readonly>> = { name: "Wrapped Ether", symbol: "WETH", contractAddress: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", - coingeckoId: "weth", imageUrl: "https://coin-images.coingecko.com/coins/images/2518/large/weth.png?1696503332", type: "erc20", decimals: 18, @@ -220,7 +199,6 @@ export const erc20Tokens: Readonly>> = { name: "Wrapped TON Coin", symbol: "TONCOIN", contractAddress: "0x582d872A1B094FC48F5DE31D3B73F2D9bE47def1", - coingeckoId: "the-open-network", imageUrl: "https://coin-images.coingecko.com/coins/images/17980/large/ton_symbol.png?1696517498", type: "erc20", @@ -230,7 +208,6 @@ export const erc20Tokens: Readonly>> = { name: "LSD Coin", symbol: "LSD", contractAddress: "0xfAC77A24E52B463bA9857d6b758ba41aE20e31FF", - coingeckoId: "lsdx-finance", imageUrl: "https://coin-images.coingecko.com/coins/images/29519/large/logo.png?1696528462", type: "erc20", decimals: 18, @@ -239,7 +216,6 @@ export const erc20Tokens: Readonly>> = { name: "Curve.Fi USD Stablecoin", symbol: "crvUSD", contractAddress: "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E", - coingeckoId: "crvusd", imageUrl: "https://coin-images.coingecko.com/coins/images/30118/large/0xf939e0a03fb07f59a73314e73794be0e57ac1b4e.png?1721097561", type: "erc20", @@ -249,7 +225,6 @@ export const erc20Tokens: Readonly>> = { name: "Wrapped liquid staked Ether 2.0", symbol: "wstETH", contractAddress: "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0", - coingeckoId: "wrapped-steth", imageUrl: "https://coin-images.coingecko.com/coins/images/18834/large/wstETH.png?1696518295", type: "erc20", @@ -259,7 +234,6 @@ export const erc20Tokens: Readonly>> = { name: "SHIBA INU", symbol: "SHIB", contractAddress: "0x95aD61b0a150d79219dCF64E1E6Cc01f0B64C4cE", - coingeckoId: "shiba-inu", imageUrl: "https://coin-images.coingecko.com/coins/images/11939/large/shiba.png?1696511800", type: "erc20", decimals: 18, @@ -268,7 +242,6 @@ export const erc20Tokens: Readonly>> = { name: "Bella", symbol: "BEL", contractAddress: "0xA91ac63D040dEB1b7A5E4d4134aD23eb0ba07e14", - coingeckoId: "bella-protocol", imageUrl: "https://coin-images.coingecko.com/coins/images/12478/large/Bella.png?1696512296", type: "erc20", decimals: 18, @@ -277,7 +250,6 @@ export const erc20Tokens: Readonly>> = { name: "1INCH Token", symbol: "1INCH", contractAddress: "0x111111111117dC0aa78b770fA6A738034120C302", - coingeckoId: "1inch", imageUrl: "https://coin-images.coingecko.com/coins/images/13469/large/1inch-token.png?1696513230", type: "erc20", @@ -287,7 +259,6 @@ export const erc20Tokens: Readonly>> = { name: "Deri", symbol: "DERI", contractAddress: "0xA487bF43cF3b10dffc97A9A744cbB7036965d3b9", - coingeckoId: "deri-protocol", imageUrl: "https://coin-images.coingecko.com/coins/images/13931/large/200vs200.jpg?1696513670", type: "erc20", @@ -297,7 +268,6 @@ export const erc20Tokens: Readonly>> = { name: "Worldcoin", symbol: "WLD", contractAddress: "0x163f8C2467924be0ae7B5347228CABF260318753", - coingeckoId: "worldcoin-wld", imageUrl: "https://coin-images.coingecko.com/coins/images/31069/large/worldcoin.jpeg?1696529903", type: "erc20", @@ -307,7 +277,6 @@ export const erc20Tokens: Readonly>> = { name: "Maverick Token", symbol: "MAV", contractAddress: "0x7448c7456a97769F6cD04F1E83A4a23cCdC46aBD", - coingeckoId: "maverick-protocol", imageUrl: "https://coin-images.coingecko.com/coins/images/30850/large/MAV_Logo.png?1696529701", type: "erc20", @@ -317,7 +286,6 @@ export const erc20Tokens: Readonly>> = { name: "Syncus", symbol: "SYNC", contractAddress: "0xa41d2f8Ee4F47D3B860A149765A7dF8c3287b7F0", - coingeckoId: "syncus", imageUrl: "https://coin-images.coingecko.com/coins/images/33573/large/Syncus.png?1702450708", type: "erc20", @@ -327,7 +295,6 @@ export const erc20Tokens: Readonly>> = { name: "ZigZag", symbol: "ZZ", contractAddress: "0xC91a71A1fFA3d8B22ba615BA1B9c01b2BBBf55ad", - coingeckoId: "zigzag-2", imageUrl: "https://coin-images.coingecko.com/coins/images/26141/large/zig_zag.?1696525229", type: "erc20", decimals: 18, @@ -336,7 +303,6 @@ export const erc20Tokens: Readonly>> = { name: "tBTC v2", symbol: "tBTC", contractAddress: "0x18084fbA666a33d37592fA2633fD49a74DD93a88", - coingeckoId: "tbtc", imageUrl: "https://coin-images.coingecko.com/coins/images/11224/large/0x18084fba666a33d37592fa2633fd49a74dd93a88.png?1696511155", type: "erc20", @@ -346,7 +312,6 @@ export const erc20Tokens: Readonly>> = { name: "rsETH", symbol: "rsETH", contractAddress: "0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7", - coingeckoId: "kelp-dao-restaked-eth", imageUrl: "https://coin-images.coingecko.com/coins/images/33800/large/Icon___Dark.png?1702991855", type: "erc20", @@ -356,7 +321,6 @@ export const erc20Tokens: Readonly>> = { name: "XWG", symbol: "XWG", contractAddress: "0x0a77eF9bf662D62Fbf9BA4cf861EaA83F9CC4FEC", - coingeckoId: "x-world-games", imageUrl: "https://coin-images.coingecko.com/coins/images/17847/large/200_200_%281%29_%281%29.png?1696790226", type: "erc20", @@ -366,7 +330,6 @@ export const erc20Tokens: Readonly>> = { name: "Metaverse Index", symbol: "MVI", contractAddress: "0x72e364F2ABdC788b7E918bc238B21f109Cd634D7", - coingeckoId: "metaverse-index", imageUrl: "https://coin-images.coingecko.com/coins/images/14684/large/MVI_logo.png?1696514357", type: "erc20", @@ -376,7 +339,6 @@ export const erc20Tokens: Readonly>> = { name: "ChainLink Token", symbol: "LINK", contractAddress: "0x514910771AF9Ca656af840dff83E8264EcF986CA", - coingeckoId: "chainlink", imageUrl: "https://coin-images.coingecko.com/coins/images/877/large/chainlink-new-logo.png?1696502009", type: "erc20", @@ -386,7 +348,6 @@ export const erc20Tokens: Readonly>> = { name: "Aave Token", symbol: "AAVE", contractAddress: "0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9", - coingeckoId: "aave", imageUrl: "https://coin-images.coingecko.com/coins/images/12645/large/aave-token-round.png?1720472354", type: "erc20", @@ -396,7 +357,6 @@ export const erc20Tokens: Readonly>> = { name: "Changer", symbol: "CNG", contractAddress: "0x5C1d9aA868a30795F92fAe903eDc9eFF269044bf", - coingeckoId: "changer", imageUrl: "https://coin-images.coingecko.com/coins/images/21786/large/cng.png?1696521140", type: "erc20", decimals: 18, @@ -405,7 +365,6 @@ export const erc20Tokens: Readonly>> = { name: "Tellor Tributes", symbol: "TRB", contractAddress: "0x88dF592F8eb5D7Bd38bFeF7dEb0fBc02cf3778a0", - coingeckoId: "tellor", imageUrl: "https://coin-images.coingecko.com/coins/images/9644/large/Blk_icon_current.png?1696509713", type: "erc20", @@ -415,7 +374,6 @@ export const erc20Tokens: Readonly>> = { name: "Renzo Restaked ETH", symbol: "Renzo Restaked ETH", contractAddress: "0xbf5495Efe5DB9ce00f80364C8B423567e58d2110", - coingeckoId: "renzo-restaked-eth", imageUrl: "https://coin-images.coingecko.com/coins/images/34753/large/Ezeth_logo_circle.png?1713496404", type: "erc20", @@ -425,7 +383,6 @@ export const erc20Tokens: Readonly>> = { name: "Matic Token", symbol: "MATIC", contractAddress: "0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0", - coingeckoId: "matic-network", imageUrl: "https://coin-images.coingecko.com/coins/images/4713/large/polygon.png?1698233745", type: "erc20", @@ -435,7 +392,6 @@ export const erc20Tokens: Readonly>> = { name: "WOO", symbol: "WOO", contractAddress: "0x4691937a7508860F876c9c0a2a617E7d9E945D4B", - coingeckoId: "woo-network", imageUrl: "https://coin-images.coingecko.com/coins/images/12921/large/WOO_Logos_2023_Profile_Pic_WOO.png?1696512709", type: "erc20", @@ -445,7 +401,6 @@ export const erc20Tokens: Readonly>> = { name: "Beam", symbol: "BEAM", contractAddress: "0x62D0A8458eD7719FDAF978fe5929C6D342B0bFcE", - coingeckoId: "beam-2", imageUrl: "https://coin-images.coingecko.com/coins/images/32417/large/chain-logo.png?1698114384", type: "erc20", @@ -455,7 +410,6 @@ export const erc20Tokens: Readonly>> = { name: "Fringe", symbol: "FRIN", contractAddress: "0xC9fE6E1C76210bE83DC1B5b20ec7FD010B0b1D15", - coingeckoId: "fringe-finance", imageUrl: "https://coin-images.coingecko.com/coins/images/13222/large/frin.png?1696513001", type: "erc20", decimals: 18, @@ -464,7 +418,6 @@ export const erc20Tokens: Readonly>> = { name: "Furucombo", symbol: "COMBO", contractAddress: "0xfFffFffF2ba8F66D4e51811C5190992176930278", - coingeckoId: "furucombo", imageUrl: "https://coin-images.coingecko.com/coins/images/13629/large/COMBO_token_ol.png?1696513377", type: "erc20", @@ -474,7 +427,6 @@ export const erc20Tokens: Readonly>> = { name: "mETH", symbol: "mETH", contractAddress: "0xd5F7838F5C461fefF7FE49ea5ebaF7728bB0ADfa", - coingeckoId: "mantle-staked-ether", imageUrl: "https://coin-images.coingecko.com/coins/images/33345/large/symbol_transparent_bg.png?1701697066", type: "erc20", @@ -484,7 +436,6 @@ export const erc20Tokens: Readonly>> = { name: "Bonsai3", symbol: "SEED", contractAddress: "0xe2353069f71a27bBbe66eEabfF05dE109c7d5E19", - coingeckoId: "bonsai3", imageUrl: "https://coin-images.coingecko.com/coins/images/33162/large/logo-bonsai3200x200.png?1700830408", type: "erc20", @@ -494,7 +445,6 @@ export const erc20Tokens: Readonly>> = { name: "Rocket Pool", symbol: "RPL", contractAddress: "0xD33526068D116cE69F19A9ee46F0bd304F21A51f", - coingeckoId: "rocket-pool", imageUrl: "https://coin-images.coingecko.com/coins/images/2090/large/rocket_pool_%28RPL%29.png?1696503058", type: "erc20", diff --git a/packages/shared/src/metadata/zkchain.ts b/packages/shared/src/metadata/zkchain.ts index 1754995..1bc9abe 100644 --- a/packages/shared/src/metadata/zkchain.ts +++ b/packages/shared/src/metadata/zkchain.ts @@ -1,5 +1,4 @@ import { ZKChainMetadata } from "../internal.js"; -import { nativeToken } from "./index.js"; export const zkChainsMetadata: ZKChainMetadata = new Map([ [ @@ -16,7 +15,15 @@ export const zkChainsMetadata: ZKChainMetadata = new Map([ explorerUrl: "https://explorer.zksync.io/", launchDate: 1679626800, chainType: "Rollup", - baseToken: nativeToken, + baseToken: { + name: "Ether", + symbol: "ETH", + contractAddress: null, + type: "native", + imageUrl: + "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628", + decimals: 18, + }, }, ], [ @@ -25,14 +32,13 @@ export const zkChainsMetadata: ZKChainMetadata = new Map([ chainId: 388n, name: "Cronos", iconUrl: "https://zkevm.cronos.org/images/chains/zkevm.svg", - chainType: "Rollup", + chainType: "Validium", publicRpcs: ["https://mainnet.zkevm.cronos.org"], explorerUrl: "https://explorer.zkevm.cronos.org/", baseToken: { symbol: "zkCRO", name: "zkCRO", contractAddress: "0x28Ff2E4dD1B58efEB0fC138602A28D5aE81e44e2", - coingeckoId: "unknown", type: "erc20", imageUrl: "https://zkevm.cronos.org/images/chains/zkevm.svg", decimals: 18, diff --git a/packages/shared/src/types/token.type.ts b/packages/shared/src/types/token.type.ts index 2849ea1..b808723 100644 --- a/packages/shared/src/types/token.type.ts +++ b/packages/shared/src/types/token.type.ts @@ -4,7 +4,6 @@ export type TokenType = "erc20" | "native"; export type Token = { name: string; symbol: string; - coingeckoId: string; type: T; contractAddress: T extends "erc20" ? Address : null; decimals: number; From 0eced92a89916fddc1500c2243024680b8bf5a59 Mon Sep 17 00:00:00 2001 From: nigiri <168690269+0xnigir1@users.noreply.github.com> Date: Wed, 28 Aug 2024 21:28:48 -0300 Subject: [PATCH 2/2] docs: add metadata readme --- packages/metadata/README.md | 96 +++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 packages/metadata/README.md diff --git a/packages/metadata/README.md b/packages/metadata/README.md new file mode 100644 index 0000000..47369c9 --- /dev/null +++ b/packages/metadata/README.md @@ -0,0 +1,96 @@ +# ZKchainHub - Metadata Package + +## Overview + +This package contains providers for fetching chains and tokens metadata. + +### chains.json + +This file contains an array of Chain metadata. To add a new one, follow the following interface: + +```json +{ + "chainId": 324, //mandatory + "name": "ZKsyncERA", //mandatory + "iconUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/24091.png", //optional + "publicRpcs": [ + "https://mainnet.era.zksync.io", + "https://zksync.drpc.org", + "https://zksync.meowrpc.com" + ], //optional, + "explorerUrl": "https://explorer.zksync.io/", //optional + "launchDate": 1679626800, //mandatory + "chainType": "Rollup", // "Rollup" | "Validium" + "baseToken": { + "name": "Ether", //mandatory + "symbol": "ETH", //mandatory + "type": "native", // "native" | "erc20" + "contractAddress": null, // null if "native", address if "erc20" + "imageUrl": "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628", //optional + "decimals": 18 //mandatory + } +} +``` + +### tokens.json + +This file contains an array of Token metadata. To add a new one, follow the following interface: + +```json +{ + "name": "0x Protocol Token", //mandatory + "symbol": "ZRX", //mandatory + "contractAddress": "0xE41d2489571d322189246DaFA5ebDe1F4699F498", // null if "native", address if "erc20" + "imageUrl": "https://assets.coingecko.com/coins/images/863/large/0x.png?1696501996", //optional + "type": "erc20", // "native" | "erc20" + "decimals": 18 //mandatory +} +``` + +Currently, there are three different providers: + +- `LocalFileMetadataProvider` +- `GithubMetadataProvider` +- `StaticMetadataProvider` + +Inside [examples](./examples/) folder, you'll find json examples. Copy it to your local machine and edit metadata as wanted. Also, you can use it to host your own file on Github (recommended) + +At [ZKchainHub-metadata repository](https://github.com/defi-wonderland/ZKchainHub-metadata) you'll find the latest curated list of tokens. To use it, remember to copy file url as raw content. + +> https://raw.githubusercontent.com/defi-wonderland/ZKchainHub-metadata/79779a6313ab43af055f59861be012bf67bb908d/chains_mainnet.json + +## 📋 Prerequisites + +- Ensure you have `node >= 20.0.0` and `pnpm >= 9.5.0` installed. + +## Installation + +```bash +$ pnpm install +``` + +## Building + +To build the monorepo packages, run: + +```bash +$ pnpm build +``` + +## Test + +```bash +# unit tests +$ pnpm run test + +# test coverage +$ pnpm run test:cov +``` + +## Contributing + +To create a new provider, create it inside [`providers`](./src/providers/) folder and implement the [`IMetadataProvider`](./src/interfaces/metadata.interface.ts) interface. + +Then, write the configuration interface inside [`metadataConfig.interface.ts`](./src/interfaces/metadataConfig.interface.ts) and add the provider to the [`MetadataProviderFactory`](./src/factory/index.ts) class. + +Finally, export the provider and required files in [`external.ts`](./src/external.ts).