From 95f9ac3afa809c70c4fbf8cb17ac2ef5d4227c95 Mon Sep 17 00:00:00 2001 From: Lefteris Karapetsas Date: Mon, 19 Feb 2024 23:39:30 +0100 Subject: [PATCH 1/3] Add the EVM tokens for 1.33.0 that are in zksync lite bridge Added in the global DB itself here: https://github.com/rotki/rotki/pull/3985 --- updates/23/updates.sql | 2 +- updates/24/updates.sql | 122 +++++++++++++++++++++++++++++++++++++++++ updates/info.json | 2 +- 3 files changed, 124 insertions(+), 2 deletions(-) diff --git a/updates/23/updates.sql b/updates/23/updates.sql index 132e3d1..756e5f0 100644 --- a/updates/23/updates.sql +++ b/updates/23/updates.sql @@ -5,4 +5,4 @@ INSERT INTO assets(identifier, name, type) VALUES("STRK", "Starknet", "W"); INSE INSERT INTO assets(identifier, name, type) VALUES("eip155:100/erc20:0x6C76971f98945AE98dD7d4DFcA8711ebea946eA6", "Wrapped liquid staked Ether 2.0 from Mainnet", "C"); INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES("eip155:100/erc20:0x6C76971f98945AE98dD7d4DFcA8711ebea946eA6", "A", 100, "0x6C76971f98945AE98dD7d4DFcA8711ebea946eA6", 18, NULL); INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES("eip155:100/erc20:0x6C76971f98945AE98dD7d4DFcA8711ebea946eA6", "wstETH", "wrapped-steth", "WSTETH", NULL, 1675777350, NULL); * INSERT INTO assets(identifier, name, type) VALUES("eip155:42161/erc20:0x1509706a6c66CA549ff0cB464de88231DDBe213B", "Aura", "C"); INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES("eip155:42161/erc20:0x1509706a6c66CA549ff0cB464de88231DDBe213B", "A", 42161, "0x1509706a6c66CA549ff0cB464de88231DDBe213B", 18, NULL); INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES("eip155:42161/erc20:0x1509706a6c66CA549ff0cB464de88231DDBe213B", "AURA", "aura-finance", "AURA", NULL, 1686742265, NULL); -* \ No newline at end of file +* diff --git a/updates/24/updates.sql b/updates/24/updates.sql index 8c13a4a..65ad877 100644 --- a/updates/24/updates.sql +++ b/updates/24/updates.sql @@ -1,2 +1,124 @@ INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x3429d03c6F7521AeC737a0BBF2E5ddcef2C3Ae31', 'PIXEL', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x3429d03c6F7521AeC737a0BBF2E5ddcef2C3Ae31', 'A', 1, '0x3429d03c6F7521AeC737a0BBF2E5ddcef2C3Ae31', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x3429d03c6F7521AeC737a0BBF2E5ddcef2C3Ae31', 'PIXEL', 'pixels', '', NULL, 1704937007, NULL); * +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 'Matter Labs Trial Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 'A', 1, '0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 'MLTT', NULL, '', NULL, 1592391357, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'DarkToken', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'A', 1, '0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for)VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'DARK', NULL, '', NULL, 1600246596, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', 'Helysia', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', 'A', 1, '0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', '3LY', NULL, '', NULL, 1596285806, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x15a2B3CfaFd696e1C783FE99eed168b78a3A371e', 'Yearn Lido St. Ether Vault', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x15a2B3CfaFd696e1C783FE99eed168b78a3A371e', 'A', 1, '0x15a2B3CfaFd696e1C783FE99eed168b78a3A371e', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x15a2B3CfaFd696e1C783FE99eed168b78a3A371e', 'yvstETH', NULL, '', NULL, 1608887785, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xbb1EE07d6c7BAeB702949904080eb61f5D5e7732', 'Dogey-Inu', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xbb1EE07d6c7BAeB702949904080eb61f5D5e7732', 'A', 1, '0xbb1EE07d6c7BAeB702949904080eb61f5D5e7732', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xbb1EE07d6c7BAeB702949904080eb61f5D5e7732', 'DINU', 'dogey-inu', 'DINU', NULL, 1619015687, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x72e364F2ABdC788b7E918bc238B21f109Cd634D7', 'Metaverse Index', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x72e364F2ABdC788b7E918bc238B21f109Cd634D7', 'A', 1, '0x72e364F2ABdC788b7E918bc238B21f109Cd634D7', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x72e364F2ABdC788b7E918bc238B21f109Cd634D7', 'MVI', 'metaverse-index', 'MVI', NULL, 1617361351, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x0B498ff89709d3838a063f1dFA463091F9801c2b', 'BTC 2x Flexible Leverage Index', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x0B498ff89709d3838a063f1dFA463091F9801c2b', 'A', 1, '0x0B498ff89709d3838a063f1dFA463091F9801c2b', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x0B498ff89709d3838a063f1dFA463091F9801c2b', 'BTC2x-FLI', 'btc-2x-flexible-leverage-index', '', NULL, 1620238070, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x5F64Ab1544D28732F0A24F4713c2C8ec0dA089f0', 'DEXTF Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x5F64Ab1544D28732F0A24F4713c2C8ec0dA089f0', 'A', 1, '0x5F64Ab1544D28732F0A24F4713c2C8ec0dA089f0', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x5F64Ab1544D28732F0A24F4713c2C8ec0dA089f0', 'DEXTF', 'dextf', 'DEXTF', NULL, 1599265568, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x3fEa51dAab1672d3385f6AF02980e1462cA0687b', 'EVO', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x3fEa51dAab1672d3385f6AF02980e1462cA0687b', 'A', 1, '0x3fEa51dAab1672d3385f6AF02980e1462cA0687b', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x3fEa51dAab1672d3385f6AF02980e1462cA0687b', 'EVO', NULL, '', NULL, 1621912787, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x56cCEA18F8c7c23328Cdfd545c50c7c370f8d263', 'RSCOIN', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x56cCEA18F8c7c23328Cdfd545c50c7c370f8d263', 'A', 1, '0x56cCEA18F8c7c23328Cdfd545c50c7c370f8d263', 8, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x56cCEA18F8c7c23328Cdfd545c50c7c370f8d263', 'RSC', NULL, '', NULL, 1617279981, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x88A7797256E3a2f677235d917A8bf51E4CaB53bF', 'StarTrek', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x88A7797256E3a2f677235d917A8bf51E4CaB53bF', 'A', 1, '0x88A7797256E3a2f677235d917A8bf51E4CaB53bF', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x88A7797256E3a2f677235d917A8bf51E4CaB53bF', 'STREK', NULL, '', NULL, 1627482204, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x035dF12E0F3ac6671126525f1015E47D79dFEDDF', '0xMonero', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x035dF12E0F3ac6671126525f1015E47D79dFEDDF', 'A', 1, '0x035dF12E0F3ac6671126525f1015E47D79dFEDDF', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x035dF12E0F3ac6671126525f1015E47D79dFEDDF', '0xMR', '0xmonero', '', NULL, 1587205060, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x2e2364966267B5D7D2cE6CD9A9B5bD19d9C7C6A9', 'Voice Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x2e2364966267B5D7D2cE6CD9A9B5bD19d9C7C6A9', 'A', 1, '0x2e2364966267B5D7D2cE6CD9A9B5bD19d9C7C6A9', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x2e2364966267B5D7D2cE6CD9A9B5bD19d9C7C6A9', 'nix-bridge-token', NULL, '', NULL, 1603226941, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x10994AA2FB8E6bA5D9FB2BC127FF228c4fe6167F', 'Secure Pad', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x10994AA2FB8E6bA5D9FB2BC127FF228c4fe6167F', 'A', 1, '0x10994AA2FB8E6bA5D9FB2BC127FF228c4fe6167F', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x10994AA2FB8E6bA5D9FB2BC127FF228c4fe6167F', 'SEPA', NULL, 'SEPA', NULL, 1617385105, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xf6832EA221ebFDc2363729721A146E6745354b14', 'FRMx Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xf6832EA221ebFDc2363729721A146E6745354b14', 'A', 1, '0xf6832EA221ebFDc2363729721A146E6745354b14', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xf6832EA221ebFDc2363729721A146E6745354b14', 'FRMX', NULL, '', NULL, 1602874592, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x81f8f0bb1cB2A06649E51913A151F0E7Ef6FA321', 'VitaDAO Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x81f8f0bb1cB2A06649E51913A151F0E7Ef6FA321', 'A', 1, '0x81f8f0bb1cB2A06649E51913A151F0E7Ef6FA321', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x81f8f0bb1cB2A06649E51913A151F0E7Ef6FA321', 'VITA', 'vitadao', '', NULL, 1623977434, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xC40A954BFa12789b3cf7a94a7AcC6854Af446940', 'UM Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xC40A954BFa12789b3cf7a94a7AcC6854Af446940', 'A', 1, '0xC40A954BFa12789b3cf7a94a7AcC6854Af446940', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xC40A954BFa12789b3cf7a94a7AcC6854Af446940', 'UMT', NULL, '', NULL, 1632036382, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x19ebAA7F212b09de2aee2a32D40338553C70e2e3', 'ARTM', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x19ebAA7F212b09de2aee2a32D40338553C70e2e3', 'A', 1, '0x19ebAA7F212b09de2aee2a32D40338553C70e2e3', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x19ebAA7F212b09de2aee2a32D40338553C70e2e3', 'ARTM', NULL, 'ARTM', NULL, 1627654842, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x777E2ae845272a2F540ebf6a3D03734A5a8f618e', 'Ryoshis Vision', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x777E2ae845272a2F540ebf6a3D03734A5a8f618e', 'A', 1, '0x777E2ae845272a2F540ebf6a3D03734A5a8f618e', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x777E2ae845272a2F540ebf6a3D03734A5a8f618e', 'RYOSHI', 'ryoshis-vision', 'RYOSHI', NULL, 1628346899, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x3ADb04E127b9C0a5D36094125669d4603AC52a0c', 'Gro Vault Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x3ADb04E127b9C0a5D36094125669d4603AC52a0c', 'A', 1, '0x3ADb04E127b9C0a5D36094125669d4603AC52a0c', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x3ADb04E127b9C0a5D36094125669d4603AC52a0c', 'GVT', NULL, '', NULL, 1622199928, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xCa76543Cf381ebBB277bE79574059e32108e3E65', 'Wrapped sOHM', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xCa76543Cf381ebBB277bE79574059e32108e3E65', 'A', 1, '0xCa76543Cf381ebBB277bE79574059e32108e3E65', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xCa76543Cf381ebBB277bE79574059e32108e3E65', 'wsOHM', NULL, 'wsOHM', NULL, 1623542030, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x91Af0fBB28ABA7E31403Cb457106Ce79397FD4E6', 'Aergo', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x91Af0fBB28ABA7E31403Cb457106Ce79397FD4E6', 'A', 1, '0x91Af0fBB28ABA7E31403Cb457106Ce79397FD4E6', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x91Af0fBB28ABA7E31403Cb457106Ce79397FD4E6', 'AERGO', 'aergo', 'AERGO', NULL, 1601342441, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x2AdCbeE886D23EFF5ADECC7767Bf102E4A1CE151', 'AyurVeda AG Shares', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x2AdCbeE886D23EFF5ADECC7767Bf102E4A1CE151', 'A', 1, '0x2AdCbeE886D23EFF5ADECC7767Bf102E4A1CE151', 0, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x2AdCbeE886D23EFF5ADECC7767Bf102E4A1CE151', 'VEDA', NULL, '', NULL, 1629448032, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x08389495D7456E1951ddF7c3a1314A4bfb646d8B', 'CRPT', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x08389495D7456E1951ddF7c3a1314A4bfb646d8B', 'A', 1, '0x08389495D7456E1951ddF7c3a1314A4bfb646d8B', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x08389495D7456E1951ddF7c3a1314A4bfb646d8B', 'CRPT', 'crypterium', 'CRPT', NULL, 1601204265, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x8185Bc4757572Da2a610f887561c32298f1A5748', 'Aluna', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x8185Bc4757572Da2a610f887561c32298f1A5748', 'A', 1, '0x8185Bc4757572Da2a610f887561c32298f1A5748', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x8185Bc4757572Da2a610f887561c32298f1A5748', 'ALN', 'aluna', '', NULL, 1614789928, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x4E9e4Ab99Cfc14B852f552f5Fb3Aa68617825B6c', 'SolarCoin on Mainnet', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x4E9e4Ab99Cfc14B852f552f5Fb3Aa68617825B6c', 'A', 1, '0x4E9e4Ab99Cfc14B852f552f5Fb3Aa68617825B6c', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x4E9e4Ab99Cfc14B852f552f5Fb3Aa68617825B6c', 'SLR', 'solarcoin', 'SLR', NULL, 1619174554, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x21ad647b8F4Fe333212e735bfC1F36B4941E6Ad2', 'Squid', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x21ad647b8F4Fe333212e735bfC1F36B4941E6Ad2', 'A', 1, '0x21ad647b8F4Fe333212e735bfC1F36B4941E6Ad2', 9, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x21ad647b8F4Fe333212e735bfC1F36B4941E6Ad2', 'SQUID', NULL, '', NULL, 1635508508, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x0aCe32f6E87Ac1457A5385f8eb0208F37263B415', 'Habitat Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x0aCe32f6E87Ac1457A5385f8eb0208F37263B415', 'A', 1, '0x0aCe32f6E87Ac1457A5385f8eb0208F37263B415', 10, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x0aCe32f6E87Ac1457A5385f8eb0208F37263B415', 'HBT', NULL, 'HBT', NULL, 1615361285, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xDc5864eDe28BD4405aa04d93E05A0531797D9D59', 'Falcon', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xDc5864eDe28BD4405aa04d93E05A0531797D9D59', 'A', 1, '0xDc5864eDe28BD4405aa04d93E05A0531797D9D59', 6, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xDc5864eDe28BD4405aa04d93E05A0531797D9D59', 'FNT', 'falcon-token', '', NULL, 1580335478, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x35A9b440Da4410dD63dF8c54672b728970560328', 'Mana', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x35A9b440Da4410dD63dF8c54672b728970560328', 'A', 1, '0x35A9b440Da4410dD63dF8c54672b728970560328', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x35A9b440Da4410dD63dF8c54672b728970560328', 'MANA', NULL, '', NULL, 1498717633, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xdFC3829b127761a3218bFceE7fc92e1232c9D116', 'Wrapped PRCY', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xdFC3829b127761a3218bFceE7fc92e1232c9D116', 'A', 1, '0xdFC3829b127761a3218bFceE7fc92e1232c9D116', 8, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xdFC3829b127761a3218bFceE7fc92e1232c9D116', 'WPRCY', NULL, '', NULL, 1618139947, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xDa446fAd08277B4D2591536F204E018f32B6831c', 'NZD Stablecoin', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xDa446fAd08277B4D2591536F204E018f32B6831c', 'A', 1, '0xDa446fAd08277B4D2591536F204E018f32B6831c', 6, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xDa446fAd08277B4D2591536F204E018f32B6831c', 'NZDS', NULL, '', NULL, 1613272818, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x47252A63C723889814AeBcAC0683E615624ceC64', 'nil', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x47252A63C723889814AeBcAC0683E615624ceC64', 'A', 1, '0x47252A63C723889814AeBcAC0683E615624ceC64', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x47252A63C723889814AeBcAC0683E615624ceC64', 'NIL', NULL, '', NULL, 1635418545, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x85327583059dcA2BDa3b14D1AFbf3f1042eEbbb3', 'JIMMYCOIN', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x85327583059dcA2BDa3b14D1AFbf3f1042eEbbb3', 'A', 1, '0x85327583059dcA2BDa3b14D1AFbf3f1042eEbbb3', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x85327583059dcA2BDa3b14D1AFbf3f1042eEbbb3', 'JER', NULL, '', NULL, 1635877876, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xbd1848e1491d4308Ad18287A745DD4DB2A4BD55B', 'MOchi MArket', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xbd1848e1491d4308Ad18287A745DD4DB2A4BD55B', 'A', 1, '0xbd1848e1491d4308Ad18287A745DD4DB2A4BD55B', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xbd1848e1491d4308Ad18287A745DD4DB2A4BD55B', 'MOMA', 'mochi-market', 'MOMA', NULL, 1618982932, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x22B6C31c2bEB8f2d0d5373146Eed41Ab9eDe3caf', 'CocktailBar', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x22B6C31c2bEB8f2d0d5373146Eed41Ab9eDe3caf', 'A', 1, '0x22B6C31c2bEB8f2d0d5373146Eed41Ab9eDe3caf', 8, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x22B6C31c2bEB8f2d0d5373146Eed41Ab9eDe3caf', 'COC', 'cocktailbar', '', NULL, 1601023643, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xD33526068D116cE69F19A9ee46F0bd304F21A51f', 'Rocket Pool Protocol', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xD33526068D116cE69F19A9ee46F0bd304F21A51f', 'A', 1, '0xD33526068D116cE69F19A9ee46F0bd304F21A51f', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xD33526068D116cE69F19A9ee46F0bd304F21A51f', 'RPL', 'rocket-pool', 'RPL', NULL, 1632980703, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x02d60b84491589974263d922D9cC7a3152618Ef6', 'Wrapped aDAI', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x02d60b84491589974263d922D9cC7a3152618Ef6', 'A', 1, '0x02d60b84491589974263d922D9cC7a3152618Ef6', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x02d60b84491589974263d922D9cC7a3152618Ef6', 'aDAI', NULL, '', NULL, 1637393794, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xd093fA4Fb80D09bB30817FDcd442d4d02eD3E5de', 'Wrapped aUSDC', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xd093fA4Fb80D09bB30817FDcd442d4d02eD3E5de', 'A', 1, '0xd093fA4Fb80D09bB30817FDcd442d4d02eD3E5de', 6, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xd093fA4Fb80D09bB30817FDcd442d4d02eD3E5de', 'aUSDC', NULL, '', NULL, 1637708250, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xC2C3D431249E64542aDD3172665732e485928Ad3', 'Raptor', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xC2C3D431249E64542aDD3172665732e485928Ad3', 'A', 1, '0xC2C3D431249E64542aDD3172665732e485928Ad3', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xC2C3D431249E64542aDD3172665732e485928Ad3', 'RPTR', NULL, '', NULL, 1639620734, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xf65B5C5104c4faFD4b709d9D60a185eAE063276c', 'Truebit', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xf65B5C5104c4faFD4b709d9D60a185eAE063276c', 'A', 1, '0xf65B5C5104c4faFD4b709d9D60a185eAE063276c', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xf65B5C5104c4faFD4b709d9D60a185eAE063276c', 'TRU', 'truebit-protocol', 'TRUEBIT', NULL, 1618138342, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xBEaB712832112bd7664226db7CD025B153D3af55', 'Bright Union', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xBEaB712832112bd7664226db7CD025B153D3af55', 'A', 1, '0xBEaB712832112bd7664226db7CD025B153D3af55', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xBEaB712832112bd7664226db7CD025B153D3af55', 'BRIGHT', 'bright-union', 'BRIGHTU', NULL, 1627994619, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xbd31EA8212119f94A611FA969881CBa3EA06Fa3d', 'LUNA', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xbd31EA8212119f94A611FA969881CBa3EA06Fa3d', 'A', 1, '0xbd31EA8212119f94A611FA969881CBa3EA06Fa3d', 6, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xbd31EA8212119f94A611FA969881CBa3EA06Fa3d', 'LUNA', NULL, '', NULL, 1634101137, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xD31a59c85aE9D8edEFeC411D448f90841571b89c', 'Wrapped SOL', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xD31a59c85aE9D8edEFeC411D448f90841571b89c', 'A', 1, '0xD31a59c85aE9D8edEFeC411D448f90841571b89c', 9, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xD31a59c85aE9D8edEFeC411D448f90841571b89c', 'SOL', 'wrapped-solana', '', NULL, 1632316757, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x85f138bfEE4ef8e540890CFb48F620571d67Eda3', 'Wrapped AVAX', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x85f138bfEE4ef8e540890CFb48F620571d67Eda3', 'A', 1, '0x85f138bfEE4ef8e540890CFb48F620571d67Eda3', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x85f138bfEE4ef8e540890CFb48F620571d67Eda3', 'WAVAX', 'wrapped-avax', '', NULL, 1640299238, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x70A6395650b47D94A77dE4cFEDF9629f6922e645', 'Wrapped Smart Advertising Transaction Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x70A6395650b47D94A77dE4cFEDF9629f6922e645', 'A', 1, '0x70A6395650b47D94A77dE4cFEDF9629f6922e645', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x70A6395650b47D94A77dE4cFEDF9629f6922e645', 'WSATT', NULL, '', NULL, 1601669654, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x2aF1dF3AB0ab157e1E2Ad8F88A7D04fbea0c7dc6', 'Bankless BED Index', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x2aF1dF3AB0ab157e1E2Ad8F88A7D04fbea0c7dc6', 'A', 1, '0x2aF1dF3AB0ab157e1E2Ad8F88A7D04fbea0c7dc6', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x2aF1dF3AB0ab157e1E2Ad8F88A7D04fbea0c7dc6', 'BED', 'bankless-bed-index', 'BED', NULL, 1626189656, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x33d63Ba1E57E54779F7dDAeaA7109349344cf5F1', 'DATA Economy Index', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x33d63Ba1E57E54779F7dDAeaA7109349344cf5F1', 'A', 1, '0x33d63Ba1E57E54779F7dDAeaA7109349344cf5F1', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x33d63Ba1E57E54779F7dDAeaA7109349344cf5F1', 'DATA', NULL, '', NULL, 1631828214, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x48274307c4884f82CF79CD44698d4Df80e0f397A', 'NETER', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x48274307c4884f82CF79CD44698d4Df80e0f397A', 'A', 1, '0x48274307c4884f82CF79CD44698d4Df80e0f397A', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x48274307c4884f82CF79CD44698d4Df80e0f397A', 'NETER', NULL, '', NULL, 1642522124, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x47110d43175f7f2C2425E7d15792acC5817EB44f', 'Bankless DeFi Innovation Index', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x47110d43175f7f2C2425E7d15792acC5817EB44f', 'A', 1, '0x47110d43175f7f2C2425E7d15792acC5817EB44f', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x47110d43175f7f2C2425E7d15792acC5817EB44f', 'GMI', NULL, '', NULL, 1640749187, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xbc138bD20C98186CC0342C8e380953aF0cb48BA8', 'Candle', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xbc138bD20C98186CC0342C8e380953aF0cb48BA8', 'A', 1, '0xbc138bD20C98186CC0342C8e380953aF0cb48BA8', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xbc138bD20C98186CC0342C8e380953aF0cb48BA8', 'CNDL', NULL, 'CNDL', NULL, 1640836174, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xf1B99e3E573A1a9C5E6B2Ce818b617F0E664E86B', 'Opyn Squeeth', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xf1B99e3E573A1a9C5E6B2Ce818b617F0E664E86B', 'A', 1, '0xf1B99e3E573A1a9C5E6B2Ce818b617F0E664E86B', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xf1B99e3E573A1a9C5E6B2Ce818b617F0E664E86B', 'oSQTH', 'opyn-squeeth', 'OSQTH', NULL, 1641881300, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x6100dd79fCAA88420750DceE3F735d168aBcB771', 'Ethereans', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x6100dd79fCAA88420750DceE3F735d168aBcB771', 'A', 1, '0x6100dd79fCAA88420750DceE3F735d168aBcB771', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x6100dd79fCAA88420750DceE3F735d168aBcB771', 'OS', 'ethereans', 'OS', NULL, 1635425398, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x02e7Ac540409D32C90BfB51114003a9E1fF0249c', 'JPG NFT Index', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x02e7Ac540409D32C90BfB51114003a9E1fF0249c', 'A', 1, '0x02e7Ac540409D32C90BfB51114003a9E1fF0249c', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x02e7Ac540409D32C90BfB51114003a9E1fF0249c', 'JPG', 'jpg-nft-index', '', NULL, 1649559942, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x5988639a14cF138cf0Db1853aD35D8B9584c5A73', 'chimp', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x5988639a14cF138cf0Db1853aD35D8B9584c5A73', 'A', 1, '0x5988639a14cF138cf0Db1853aD35D8B9584c5A73', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x5988639a14cF138cf0Db1853aD35D8B9584c5A73', 'CHIMP', NULL, '', NULL, 1602606834, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xC91a71A1fFA3d8B22ba615BA1B9c01b2BBBf55ad', 'ZigZag', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xC91a71A1fFA3d8B22ba615BA1B9c01b2BBBf55ad', 'A', 1, '0xC91a71A1fFA3d8B22ba615BA1B9c01b2BBBf55ad', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xC91a71A1fFA3d8B22ba615BA1B9c01b2BBBf55ad', 'ZZ', 'zigzag-2', 'ZZ', NULL, 1655163823, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x44108f0223A3C3028F5Fe7AEC7f9bb2E66beF82F', 'Across Protocol Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x44108f0223A3C3028F5Fe7AEC7f9bb2E66beF82F', 'A', 1, '0x44108f0223A3C3028F5Fe7AEC7f9bb2E66beF82F', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x44108f0223A3C3028F5Fe7AEC7f9bb2E66beF82F', 'ACX', 'across-protocol', 'ACX', NULL, 1666277447, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x341c05c0E9b33C0E38d64de76516b2Ce970bB3BE', 'Diversified Staked ETH Index (dsETH)', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x341c05c0E9b33C0E38d64de76516b2Ce970bB3BE', 'A', 1, '0x341c05c0E9b33C0E38d64de76516b2Ce970bB3BE', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x341c05c0E9b33C0E38d64de76516b2Ce970bB3BE', 'dsETH', 'diversified-staked-eth', '', NULL, 1673563415, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xC24F904b9427F7e1d12BF8dfaB8de9388ad74605', 'Bit Gold', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xC24F904b9427F7e1d12BF8dfaB8de9388ad74605', 'A', 1, '0xC24F904b9427F7e1d12BF8dfaB8de9388ad74605', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xC24F904b9427F7e1d12BF8dfaB8de9388ad74605', 'BG', NULL, '', NULL, 1672689707, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x6043A3f2f4Fe127d81896220369F9E9CF5Fdf66F', 'PANDA', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x6043A3f2f4Fe127d81896220369F9E9CF5Fdf66F', 'A', 1, '0x6043A3f2f4Fe127d81896220369F9E9CF5Fdf66F', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x6043A3f2f4Fe127d81896220369F9E9CF5Fdf66F', 'PANDA', NULL, '', NULL, 1679171111, NULL); +* +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0xc30FBa978743a43E736fc32FBeEd364b8A2039cD', 'Money Market Index', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0xc30FBa978743a43E736fc32FBeEd364b8A2039cD', 'A', 1, '0xc30FBa978743a43E736fc32FBeEd364b8A2039cD', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0xc30FBa978743a43E736fc32FBeEd364b8A2039cD', 'icSMMT', NULL, '', NULL, 1682126531, NULL); +* diff --git a/updates/info.json b/updates/info.json index 9115638..1fb54fc 100644 --- a/updates/info.json +++ b/updates/info.json @@ -1 +1 @@ -{"latest": 24, "updates": {"1": {"changes": 249, "max_schema_version": 2, "min_schema_version": 2}, "10": {"changes": 30, "max_schema_version": 2, "min_schema_version": 2}, "11": {"changes": 71, "max_schema_version": 2, "min_schema_version": 2}, "12": {"changes": 174, "max_schema_version": 2, "min_schema_version": 2}, "13": {"changes": 311, "max_schema_version": 2, "min_schema_version": 2}, "14": {"changes": 94, "max_schema_version": 2, "min_schema_version": 2}, "15": {"changes": 116, "max_schema_version": 4, "min_schema_version": 3}, "16": {"changes": 153, "max_schema_version": 6, "min_schema_version": 4}, "17": {"changes": 137, "max_schema_version": 6, "min_schema_version": 4}, "18": {"changes": 189, "max_schema_version": 6, "min_schema_version": 4}, "19": {"changes": 183, "max_schema_version": 6, "min_schema_version": 4}, "20": {"changes": 105, "max_schema_version": 6, "min_schema_version": 4}, "21": {"changes": 46, "max_schema_version": 6, "min_schema_version": 6}, "22": {"changes": 145, "max_schema_version": 6, "min_schema_version": 6}, "23": {"changes": 4, "max_schema_version": 6, "min_schema_version": 6}, "24": {"changes": 1, "max_schema_version": 6, "min_schema_version": 6}, "2": {"changes": 27, "max_schema_version": 2, "min_schema_version": 2}, "3": {"changes": 64, "max_schema_version": 2, "min_schema_version": 2}, "4": {"changes": 23, "max_schema_version": 2, "min_schema_version": 2}, "5": {"changes": 25, "max_schema_version": 2, "min_schema_version": 2}, "6": {"changes": 239, "max_schema_version": 2, "min_schema_version": 2}, "7": {"changes": 34, "max_schema_version": 2, "min_schema_version": 2}, "8": {"changes": 81, "max_schema_version": 2, "min_schema_version": 2}, "9": {"changes": 59, "max_schema_version": 2, "min_schema_version": 2}}} +{"latest": 24, "updates": {"1": {"changes": 249, "max_schema_version": 2, "min_schema_version": 2}, "10": {"changes": 30, "max_schema_version": 2, "min_schema_version": 2}, "11": {"changes": 71, "max_schema_version": 2, "min_schema_version": 2}, "12": {"changes": 174, "max_schema_version": 2, "min_schema_version": 2}, "13": {"changes": 311, "max_schema_version": 2, "min_schema_version": 2}, "14": {"changes": 94, "max_schema_version": 2, "min_schema_version": 2}, "15": {"changes": 116, "max_schema_version": 4, "min_schema_version": 3}, "16": {"changes": 153, "max_schema_version": 6, "min_schema_version": 4}, "17": {"changes": 137, "max_schema_version": 6, "min_schema_version": 4}, "18": {"changes": 189, "max_schema_version": 6, "min_schema_version": 4}, "19": {"changes": 183, "max_schema_version": 6, "min_schema_version": 4}, "20": {"changes": 105, "max_schema_version": 6, "min_schema_version": 4}, "21": {"changes": 46, "max_schema_version": 6, "min_schema_version": 6}, "22": {"changes": 145, "max_schema_version": 6, "min_schema_version": 6}, "23": {"changes": 4, "max_schema_version": 6, "min_schema_version": 6}, "24": {"changes": 62, "max_schema_version": 6, "min_schema_version": 6}, "2": {"changes": 27, "max_schema_version": 2, "min_schema_version": 2}, "3": {"changes": 64, "max_schema_version": 2, "min_schema_version": 2}, "4": {"changes": 23, "max_schema_version": 2, "min_schema_version": 2}, "5": {"changes": 25, "max_schema_version": 2, "min_schema_version": 2}, "6": {"changes": 239, "max_schema_version": 2, "min_schema_version": 2}, "7": {"changes": 34, "max_schema_version": 2, "min_schema_version": 2}, "8": {"changes": 81, "max_schema_version": 2, "min_schema_version": 2}, "9": {"changes": 59, "max_schema_version": 2, "min_schema_version": 2}}} From a3b19d57be927161a65bebc3d17c990cc1ee70b4 Mon Sep 17 00:00:00 2001 From: Lefteris Karapetsas Date: Mon, 26 Feb 2024 22:50:37 +0100 Subject: [PATCH 2/3] Bump requirements, upate tests, update regexes Signed-off-by: Lefteris Karapetsas --- .github/workflows/onpush.yaml | 4 ++-- requirements.txt | 6 +++--- tests/__init__.py | 0 tests/test_correct_entries.py | 9 ++++----- validator/checker.py | 4 +++- validator/utils.py | 16 ++++++++-------- 6 files changed, 20 insertions(+), 19 deletions(-) delete mode 100644 tests/__init__.py diff --git a/.github/workflows/onpush.yaml b/.github/workflows/onpush.yaml index a7732a1..a0c3c48 100644 --- a/.github/workflows/onpush.yaml +++ b/.github/workflows/onpush.yaml @@ -10,7 +10,7 @@ jobs: - name: Set up python uses: actions/setup-python@v2 with: - python-version: '3.10.8' + python-version: '3.11.7' - name: Install dependencies run: | python3 -m pip install --upgrade pip setuptools wheel @@ -22,4 +22,4 @@ jobs: key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} - name: Verify changes run: | - pytest tests + python -m pytest tests diff --git a/requirements.txt b/requirements.txt index 94e521b..e84cd56 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,3 @@ -eth-utils==2.1.0 -pytest==7.1.3 -eth-hash[pycryptodome]==0.5.1 \ No newline at end of file +eth-utils==4.0.0 +pytest==8.0.2 +eth-hash[pycryptodome]==0.6.0 diff --git a/tests/__init__.py b/tests/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/tests/test_correct_entries.py b/tests/test_correct_entries.py index b6eb827..0182be7 100644 --- a/tests/test_correct_entries.py +++ b/tests/test_correct_entries.py @@ -1,13 +1,13 @@ import json +import warnings from pathlib import Path import pytest from eth_utils.address import to_checksum_address -import warnings - from validator.checker import UpdateChecker from validator.utils import get_latest_version + @pytest.fixture(name='schema_versions') def fixture_schema_version(): root_dir = infojson = Path(__file__).parents[1] @@ -51,8 +51,7 @@ def test_valid_identifiers_mappings(version, schema_versions): try: eip_pos = line.index('eip155') except ValueError: - warnings.warn(f'Non evm mapping: {line}') - continue + continue # this is not an evm token, can skip address = line[eip_pos:].split(':')[-1].strip().replace('");', '') - assert to_checksum_address(address) == address \ No newline at end of file + assert to_checksum_address(address) == address diff --git a/validator/checker.py b/validator/checker.py index 3a4d142..2f81f7c 100644 --- a/validator/checker.py +++ b/validator/checker.py @@ -5,7 +5,9 @@ import re from typing import NamedTuple, NewType, Optional, Tuple, Union + from eth_utils import is_checksum_address + from validator.utils import REGEX_ASSETS_V2, REGEX_ASSETS_V3 T_Timestamp = int @@ -252,7 +254,7 @@ def _parse_full_insert(self, insert_text: str, schema_version: int) -> AssetData """ asset_data = self._parse_asset_data(insert_text, schema_version) evm_data = { - 'foked': None, + 'forked': None, 'address': None, 'decimals': None, 'protocol': None, diff --git a/validator/utils.py b/validator/utils.py index ea47802..72bf626 100644 --- a/validator/utils.py +++ b/validator/utils.py @@ -1,6 +1,6 @@ import json -from pathlib import Path import re +from pathlib import Path def get_latest_version(): @@ -13,13 +13,13 @@ def get_latest_version(): REGEX_ASSETS_V2 = { - "assets_re": re.compile(r'.*INSERT +INTO +assets\( *identifier *, *type *, *name *, *symbol *, *started *, *swapped_for *, *coingecko *, *cryptocompare *, *details_reference *\) +VALUES\((.*?),(.*?),(.*?),(.*?),(.*?),(.*?),(.*?),(.*?),(.*?)\).*?'), - "ethereum_tokens_re": re.compile(r'.*INSERT +INTO +ethereum_tokens\( *address *, *decimals *, *protocol *\) +VALUES\((.*?),(.*?),(.*?)\).*'), - "common_asset_details_re": re.compile(r'.*INSERT +INTO +common_asset_details\( *asset_id *, *forked *\) +VALUES\((.*?),(.*?)\).*') + "assets_re": re.compile(r'.*INSERT +INTO +assets\( *identifier *, *type *, *name *, *symbol *, *started *, *swapped_for *, *coingecko *, *cryptocompare *, *details_reference *\) *VALUES\((.*?),(.*?),(.*?),(.*?),(.*?),(.*?),(.*?),(.*?),(.*?)\).*?'), + "ethereum_tokens_re": re.compile(r'.*INSERT +INTO +ethereum_tokens\( *address *, *decimals *, *protocol *\) *VALUES\((.*?),(.*?),(.*?)\).*'), + "common_asset_details_re": re.compile(r'.*INSERT +INTO +common_asset_details\( *asset_id *, *forked *\) *VALUES\((.*?),(.*?)\).*') } REGEX_ASSETS_V3 = { - "assets_re": re.compile(r'.*INSERT +INTO +assets\( *identifier *, *name *, *type *\) +VALUES\(([^\)]*?),([^\)]*?),([^\)]*?)\).*?'), - "ethereum_tokens_re": re.compile(r'.*INSERT +INTO +evm_tokens\( *identifier *, *token_kind *, *chain *, *address *, *decimals *, *protocol *\) +VALUES\(([^\)]*?),([^\)]*?),([^\)]*?),([^\)]*?),([^\)]*?),([^\)]*?)\).*'), - "common_asset_details_re": re.compile(r'.*INSERT +INTO +common_asset_details\( *identifier *, *symbol *, *coingecko *, *cryptocompare *, *forked *, *started *, *swapped_for *\) +VALUES\((.*?),(.*?),(.*?),(.*?),(.*?),([^\)]*?),([^\)]*?)\).*') -} \ No newline at end of file + "assets_re": re.compile(r'.*INSERT +INTO +assets\( *identifier *, *name *, *type *\) *VALUES\(([^,]*?),([^,]*?),([^,]*?)\).*?'), + "ethereum_tokens_re": re.compile(r'.*INSERT +INTO +evm_tokens\( *identifier *, *token_kind *, *chain *, *address *, *decimals *, *protocol *\) *VALUES\(([^,]*?),([^,]*?),([^,]*?),([^,]*?),([^,]*?),([^,]*?)\).*'), + "common_asset_details_re": re.compile(r'.*INSERT +INTO +common_asset_details\( *identifier *, *symbol *, *coingecko *, *cryptocompare *, *forked *, *started *, *swapped_for *\) *VALUES\((.*?),(.*?),(.*?),(.*?),(.*?),([^,]*?),([^,]*?)\).*') +} From 526c1f9ebaacdf045ba42dc2a4034b26e053f724 Mon Sep 17 00:00:00 2001 From: Lefteris Karapetsas Date: Tue, 27 Feb 2024 11:34:11 +0100 Subject: [PATCH 3/3] Add tests for all regexes and sync with main repo Signed-off-by: Lefteris Karapetsas --- tests/test_correct_entries.py | 57 ++++++++++++++++++++++++++++------- updates/24/updates.sql | 2 +- validator/checker.py | 6 ++-- validator/utils.py | 2 +- 4 files changed, 51 insertions(+), 16 deletions(-) diff --git a/tests/test_correct_entries.py b/tests/test_correct_entries.py index 0182be7..0c942c6 100644 --- a/tests/test_correct_entries.py +++ b/tests/test_correct_entries.py @@ -1,5 +1,5 @@ import json -import warnings +import re from pathlib import Path import pytest @@ -35,10 +35,12 @@ def test_valid_sql_sentences(version, schema_versions): @pytest.mark.parametrize('version', range(1, get_latest_version() + 1)) -def test_valid_identifiers_mappings(version, schema_versions): - """Test that identifiers have checksummed addresses in multiassets mappings""" +def test_asset_collection_mappings(version, schema_versions): + """Test that the multiassets mappings update files are valid""" root_dir = Path(__file__).parents[1] upgrade = root_dir / 'updates' / str(version) / 'asset_collections_mappings_updates.sql' + # keep this re in sync with the one in the main repo + multiasset_mappings_re = re.compile(r'.*INSERT +INTO +multiasset_mappings\( *collection_id *, *asset *\) *VALUES +\(([^,]*?), *"([^,]+?)"\).*?') # noqa: E501 if upgrade.exists() is False: return @@ -47,11 +49,44 @@ def test_valid_identifiers_mappings(version, schema_versions): for line in f.readlines(): if '*' in line: continue - print('---', line) - try: - eip_pos = line.index('eip155') - except ValueError: - continue # this is not an evm token, can skip - - address = line[eip_pos:].split(':')[-1].strip().replace('");', '') - assert to_checksum_address(address) == address + + mappings_match = multiasset_mappings_re.match(line) + assert mappings_match is not None + groups = mappings_match.groups() + assert len(groups) == 2 + + lineid = int(groups[0]) + assert lineid >= 0 + + identifier = groups[1] + assert isinstance(identifier, str) + if identifier.startswith('eip155'): + address = identifier.split(':')[-1] + assert to_checksum_address(address) == address + + +@pytest.mark.parametrize('version', range(1, get_latest_version() + 1)) +def test_asset_collections_updates(version, schema_versions): + """Test that the asset collections update files are valid""" + root_dir = Path(__file__).parents[1] + upgrade = root_dir / 'updates' / str(version) / 'asset_collections_updates.sql' + # keep this re in sync with the one in the main repo + assets_collection_re = re.compile(r'.*INSERT +INTO +asset_collections\( *id *, *name *, *symbol *\) *VALUES +\(([^,]*?),([^,]*?),([^,]*?)\).*?') # noqa: E501 + + if upgrade.exists() is False: + return + + with open(upgrade) as f: + for line in f.readlines(): + if '*' in line: + continue + + collections_match = assets_collection_re.match(line) + assert collections_match is not None + groups = collections_match.groups() + assert len(groups) == 3 + + lineid = int(groups[0]) + assert lineid >= 0 + assert isinstance(groups[1], str) # collection name + assert isinstance(groups[2], str) # collection symbol diff --git a/updates/24/updates.sql b/updates/24/updates.sql index 65ad877..e20b682 100644 --- a/updates/24/updates.sql +++ b/updates/24/updates.sql @@ -2,7 +2,7 @@ INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x3429d03c6F75 * INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 'Matter Labs Trial Token', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 'A', 1, '0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x65EcE136b89EBAA72a7F7aa815674946e44ca3F9', 'MLTT', NULL, '', NULL, 1592391357, NULL); * -INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'DarkToken', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'A', 1, '0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for)VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'DARK', NULL, '', NULL, 1600246596, NULL); +INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'DarkToken', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'A', 1, '0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x3108ccFd96816F9E663baA0E8c5951D229E8C6da', 'DARK', NULL, '', NULL, 1600246596, NULL); * INSERT INTO assets(identifier, name, type) VALUES('eip155:1/erc20:0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', 'Helysia', 'C');INSERT INTO evm_tokens(identifier, token_kind, chain, address, decimals, protocol) VALUES('eip155:1/erc20:0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', 'A', 1, '0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', 18, NULL);INSERT INTO common_asset_details(identifier, symbol, coingecko, cryptocompare, forked, started, swapped_for) VALUES('eip155:1/erc20:0x4C7065Bca76FE44AFb0D16C2441B1e6E163354E2', '3LY', NULL, '', NULL, 1596285806, NULL); * diff --git a/validator/checker.py b/validator/checker.py index 2f81f7c..1b832c1 100644 --- a/validator/checker.py +++ b/validator/checker.py @@ -211,7 +211,7 @@ def _parse_asset_data(self, insert_text: str, schema_version: int) -> ParsedAsse 'asset_type': self._parse_str(match.group(3), 'asset type', insert_text), } - def _parse_ethereum_token_data(self, insert_text: str, schema_version: int) -> Tuple[str, Optional[int], Optional[str]]: # noqa: E501 + def _parse_evm_token_data(self, insert_text: str, schema_version: int) -> Tuple[str, Optional[int], Optional[str]]: # noqa: E501 match = self.versions[schema_version]['ethereum_tokens_re'].match(insert_text) if match is None: raise DeserializationError( @@ -262,7 +262,7 @@ def _parse_full_insert(self, insert_text: str, schema_version: int) -> AssetData 'token_kind': None, } if asset_data['asset_type'] == 'C': - evm_data |= self._parse_ethereum_token_data(insert_text, schema_version) + evm_data |= self._parse_evm_token_data(insert_text, schema_version) if schema_version == 2 and asset_data['asset_type'] != 'C': match = self.versions[schema_version]['common_asset_details_re'].match(insert_text) @@ -325,7 +325,7 @@ def check_single_version_update( full_insert = action insert = True - # Use the same regex as in the rotki servers to obtain the assets + # Use the same regex as in the rotki repo to obtain the assets asset_data = self._parse_full_insert(full_insert, schema_version) assert asset_data.cryptocompare is not None or asset_data.coingecko is not None diff --git a/validator/utils.py b/validator/utils.py index 72bf626..34be9e3 100644 --- a/validator/utils.py +++ b/validator/utils.py @@ -18,7 +18,7 @@ def get_latest_version(): "common_asset_details_re": re.compile(r'.*INSERT +INTO +common_asset_details\( *asset_id *, *forked *\) *VALUES\((.*?),(.*?)\).*') } -REGEX_ASSETS_V3 = { +REGEX_ASSETS_V3 = { # Keep these in sync with the main repo ones "assets_re": re.compile(r'.*INSERT +INTO +assets\( *identifier *, *name *, *type *\) *VALUES\(([^,]*?),([^,]*?),([^,]*?)\).*?'), "ethereum_tokens_re": re.compile(r'.*INSERT +INTO +evm_tokens\( *identifier *, *token_kind *, *chain *, *address *, *decimals *, *protocol *\) *VALUES\(([^,]*?),([^,]*?),([^,]*?),([^,]*?),([^,]*?),([^,]*?)\).*'), "common_asset_details_re": re.compile(r'.*INSERT +INTO +common_asset_details\( *identifier *, *symbol *, *coingecko *, *cryptocompare *, *forked *, *started *, *swapped_for *\) *VALUES\((.*?),(.*?),(.*?),(.*?),(.*?),([^,]*?),([^,]*?)\).*')