From 8e6e37bc136745d8c19e019f15902181bb126b8b Mon Sep 17 00:00:00 2001 From: VibeNL Date: Mon, 28 Aug 2023 11:19:00 +0200 Subject: [PATCH] Add coinbase (#24) --- ConsoleHelper/Program.cs | 10 +- .../Coinbase/CoinbaseParserTests.cs | 157 + .../FileImporter/DeGiro/DeGiroParserTests.cs | 6 +- .../FileImporter/FileImporterTaskTests.cs | 1 + .../ScalableCapitalParserTests.cs | 30 +- .../TestFiles/Coinbase/Example1/Example1.csv | 9 + .../TestFiles/Coinbase/Example2/Example2.csv | 12 + .../Trading212/Trading212Tests.cs | 12 +- .../GhostfolioSidekick.UnitTests.csproj | 6 + GhostfolioSidekick.sln | 1 + GhostfolioSidekick/ConfigurationSettings.cs | 8 +- GhostfolioSidekick/Crypto/CryptoOrderType.cs | 19 + GhostfolioSidekick/Crypto/CryptoTranslate.cs | 36 + .../Crypto/cryptocurrencies.json | 8604 +++++++++++++++++ .../FileImporter/Coinbase/CoinbaseParser.cs | 186 + .../FileImporter/Coinbase/CoinbaseRecord.cs | 39 + .../FileImporter/DeGiro/DeGiroParser.cs | 6 +- .../FileImporter/RecordBaseImporter.cs | 46 +- .../ScalableCaptial/BaaderBankRKKRecord.cs | 7 +- .../ScalableCaptial/BaaderBankWUMRecord.cs | 7 +- .../ScalableCaptial/ScalableCapitalParser.cs | 1 - .../Trading212/Trading212Parser.cs | 6 +- GhostfolioSidekick/Ghostfolio/API/Asset.cs | 6 + .../Ghostfolio/API/AssetList.cs | 7 + .../Ghostfolio/API/GhostfolioAPI.cs | 37 +- .../Ghostfolio/API/IGhostfolioAPI.cs | 4 +- .../Ghostfolio/API/OrderType.cs | 12 +- GhostfolioSidekick/GhostfolioSidekick.csproj | 6 + GhostfolioSidekick/Program.cs | 12 +- README.md | 1 + 30 files changed, 9182 insertions(+), 112 deletions(-) create mode 100644 GhostfolioSidekick.UnitTests/FileImporter/Coinbase/CoinbaseParserTests.cs create mode 100644 GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example1/Example1.csv create mode 100644 GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example2/Example2.csv create mode 100644 GhostfolioSidekick/Crypto/CryptoOrderType.cs create mode 100644 GhostfolioSidekick/Crypto/CryptoTranslate.cs create mode 100644 GhostfolioSidekick/Crypto/cryptocurrencies.json create mode 100644 GhostfolioSidekick/FileImporter/Coinbase/CoinbaseParser.cs create mode 100644 GhostfolioSidekick/FileImporter/Coinbase/CoinbaseRecord.cs create mode 100644 GhostfolioSidekick/Ghostfolio/API/AssetList.cs diff --git a/ConsoleHelper/Program.cs b/ConsoleHelper/Program.cs index c746b9a4..57b9ee57 100644 --- a/ConsoleHelper/Program.cs +++ b/ConsoleHelper/Program.cs @@ -1,5 +1,6 @@ using GhostfolioSidekick; using GhostfolioSidekick.FileImporter; +using GhostfolioSidekick.FileImporter.Coinbase; using GhostfolioSidekick.FileImporter.DeGiro; using GhostfolioSidekick.FileImporter.ScalableCaptial; using GhostfolioSidekick.FileImporter.Trading212; @@ -23,14 +24,15 @@ static void Main(string[] args) } var cs = new ConfigurationSettings(); - MemoryCache memoryCache = new MemoryCache(new MemoryCacheOptions { }); - GhostfolioAPI api = new GhostfolioAPI(memoryCache, logger); + MemoryCache memoryCache = new MemoryCache(new MemoryCacheOptions { }); + GhostfolioAPI api = new GhostfolioAPI(memoryCache, logger); var t = new FileImporterTask(logger, api, cs, new IFileImporter[] { new ScalableCapitalParser(api), new DeGiroParser(api), - new Trading212Parser(api) + new Trading212Parser(api), + new CoinbaseParser(api) }); t.DoWork().Wait(); - } + } } } \ No newline at end of file diff --git a/GhostfolioSidekick.UnitTests/FileImporter/Coinbase/CoinbaseParserTests.cs b/GhostfolioSidekick.UnitTests/FileImporter/Coinbase/CoinbaseParserTests.cs new file mode 100644 index 00000000..12597b62 --- /dev/null +++ b/GhostfolioSidekick.UnitTests/FileImporter/Coinbase/CoinbaseParserTests.cs @@ -0,0 +1,157 @@ +using AutoFixture; +using FluentAssertions; +using GhostfolioSidekick.FileImporter.Coinbase; +using GhostfolioSidekick.Ghostfolio.API; +using Moq; + +namespace GhostfolioSidekick.UnitTests.FileImporter.Coinbase +{ + public class CoinbaseParserTests + { + readonly Mock api; + + public CoinbaseParserTests() + { + api = new Mock(); + } + + [Fact] + public async Task CanConvertOrders_Example1_True() + { + // Arrange + var parser = new CoinbaseParser(api.Object); + + // Act + var canParse = await parser.CanConvertOrders(new[] { "./FileImporter/TestFiles/Coinbase/Example1/Example1.csv" }); + + // Assert + canParse.Should().BeTrue(); + } + + [Fact] + public async Task ConvertToOrders_Example1_Converted() + { + // Arrange + var parser = new CoinbaseParser(api.Object); + var fixture = new Fixture(); + + var asset1 = fixture.Build().With(x => x.Currency, "EUR").Create(); + + var account = fixture.Create(); + + api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); + api.Setup(x => x.FindSymbolByISIN("Bitcoin", It.IsAny, Asset>>())).ReturnsAsync(asset1); + + // Act + var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/Coinbase/Example1/Example1.csv" }); + + // Assert + orders.Should().BeEquivalentTo(new[] + { + new Order { + AccountId = account.Id, + Asset = asset1, + Comment = "Transaction Reference: [SELL_BTC_638280626190000000]", + Currency = asset1.Currency, + FeeCurrency = asset1.Currency, + Date = new DateTime(2023,08,19,17,23,39, DateTimeKind.Utc), + Fee = 0, + Quantity = 0.00205323M, + Type = OrderType.SELL, + UnitPrice = 24073.28M, + ReferenceCode = "SELL_BTC_638280626190000000" + }}); + } + + [Fact] + public async Task ConvertToOrders_Example2_Converted() + { + // Arrange + var parser = new CoinbaseParser(api.Object); + var fixture = new Fixture(); + + var asset1 = fixture.Build().With(x => x.Currency, "EUR").Create(); + var asset2 = fixture.Build().With(x => x.Currency, "EUR").Create(); + var asset3 = fixture.Build().With(x => x.Currency, "EUR").Create(); + + var account = fixture.Create(); + + api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); + api.Setup(x => x.FindSymbolByISIN("Bitcoin", It.IsAny, Asset>>())).ReturnsAsync(asset1); + api.Setup(x => x.FindSymbolByISIN("Ethereum", It.IsAny, Asset>>())).ReturnsAsync(asset2); + api.Setup(x => x.FindSymbolByISIN("Cosmos", It.IsAny, Asset>>())).ReturnsAsync(asset3); + + // Act + var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/Coinbase/Example2/Example2.csv" }); + + // Assert + orders.Should().BeEquivalentTo(new[] + { + new Order { + AccountId = account.Id, + Asset = asset1, // BTC + Comment = "Transaction Reference: [SELL_BTC_638280626190000000]", + Currency = asset1.Currency, + FeeCurrency = asset1.Currency, + Date = new DateTime(2023,08,19,17,23,39, DateTimeKind.Utc), + Fee = 0, + Quantity = 0.00205323M, + Type = OrderType.SELL, + UnitPrice = 24073.28M, + ReferenceCode = "SELL_BTC_638280626190000000" + }, + new Order { + AccountId = account.Id, + Asset = asset2, // ETH + Comment = "Transaction Reference: [BUY_ETH_638175603400000000]", + Currency = asset2.Currency, + FeeCurrency = asset2.Currency, + Date = new DateTime(2023,04,20,4,5,40, DateTimeKind.Utc), + Fee = 0.990000M, + Quantity = 0.00213232M, + Type = OrderType.BUY, + UnitPrice =1810.23M, + ReferenceCode = "BUY_ETH_638175603400000000" + }, + new Order { + AccountId = account.Id, + Asset = asset2, // ETH + Comment = "Transaction Reference: [BUY_ETH_638177414840000000]", + Currency = asset2.Currency, + FeeCurrency = asset2.Currency, + Date = new DateTime(2023,4,22,6,24,44, DateTimeKind.Utc), + Fee = 0, + Quantity = 1.0e-08M, + Type = OrderType.BUY, + UnitPrice =1689.10M, + ReferenceCode = "BUY_ETH_638177414840000000" + }, + new Order { + AccountId = account.Id, + Asset = asset2, // ETH -> ATOM + Comment = "Transaction Reference: [SELL_ETH_638181135820000000]", + Currency = asset2.Currency, + FeeCurrency = asset2.Currency, + Date = new DateTime(2023,04,26,13,46,22, DateTimeKind.Utc), + Fee = 0.020000M, + Quantity = 0.00052203M, + Type = OrderType.SELL, + UnitPrice = 1762.35M, + ReferenceCode = "SELL_ETH_638181135820000000" + }, + new Order { + AccountId = account.Id, + Asset = asset3, // ETH -> ATOM + Comment = "Transaction Reference: [BUY_ATOM_638181135820000000]", + Currency = asset3.Currency, + FeeCurrency = asset3.Currency, + Date = new DateTime(2023,04,26,13,46,22, DateTimeKind.Utc), + Fee = 0, + Quantity = 0.087842M, + Type = OrderType.BUY, + UnitPrice = 10.473344988729764804990778898M, + ReferenceCode = "BUY_ATOM_638181135820000000" + }}); + } + } +} \ No newline at end of file diff --git a/GhostfolioSidekick.UnitTests/FileImporter/DeGiro/DeGiroParserTests.cs b/GhostfolioSidekick.UnitTests/FileImporter/DeGiro/DeGiroParserTests.cs index ce24f47f..53522359 100644 --- a/GhostfolioSidekick.UnitTests/FileImporter/DeGiro/DeGiroParserTests.cs +++ b/GhostfolioSidekick.UnitTests/FileImporter/DeGiro/DeGiroParserTests.cs @@ -52,7 +52,7 @@ public async Task ConvertToOrders_TestFileSingleOrder_Converted() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("IE00B3XXRP09")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("IE00B3XXRP09", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/DeGiro/Example1/TestFileSingleOrder.csv" }); @@ -86,8 +86,8 @@ public async Task ConvertToOrders_TestFileMuitpleOrders_Converted() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("IE00B3XXRP09")).ReturnsAsync(asset1); - api.Setup(x => x.FindSymbolByISIN("NL0009690239")).ReturnsAsync(asset2); + api.Setup(x => x.FindSymbolByISIN("IE00B3XXRP09", null)).ReturnsAsync(asset1); + api.Setup(x => x.FindSymbolByISIN("NL0009690239", null)).ReturnsAsync(asset2); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/DeGiro/Example3/TestFileMultipleOrders.csv" }); diff --git a/GhostfolioSidekick.UnitTests/FileImporter/FileImporterTaskTests.cs b/GhostfolioSidekick.UnitTests/FileImporter/FileImporterTaskTests.cs index 2f974c48..f86b3b0a 100644 --- a/GhostfolioSidekick.UnitTests/FileImporter/FileImporterTaskTests.cs +++ b/GhostfolioSidekick.UnitTests/FileImporter/FileImporterTaskTests.cs @@ -29,6 +29,7 @@ public async Task LoadAccounts() await task.DoWork(); // Assert + testImporter.Verify(x => x.ConvertToOrders("Coinbase", It.Is>(y => y.Count() == 2)), Times.Once); testImporter.Verify(x => x.ConvertToOrders("DeGiro", It.Is>(y => y.Count() == 3)), Times.Once); testImporter.Verify(x => x.ConvertToOrders("ScalableCapital", It.Is>(y => y.Count() == 5)), Times.Once); testImporter.Verify(x => x.ConvertToOrders("Trading212", It.Is>(y => y.Count() == 8)), Times.Once); diff --git a/GhostfolioSidekick.UnitTests/FileImporter/ScalableCapital/ScalableCapitalParserTests.cs b/GhostfolioSidekick.UnitTests/FileImporter/ScalableCapital/ScalableCapitalParserTests.cs index e38c7107..dfe463ab 100644 --- a/GhostfolioSidekick.UnitTests/FileImporter/ScalableCapital/ScalableCapitalParserTests.cs +++ b/GhostfolioSidekick.UnitTests/FileImporter/ScalableCapital/ScalableCapitalParserTests.cs @@ -52,7 +52,7 @@ public async Task ConvertToOrders_Example1_OrderOnly() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("IE00077FRP95")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("IE00077FRP95", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/ScalableCapital/Example1/WUMExample1.csv" }); @@ -70,7 +70,7 @@ public async Task ConvertToOrders_Example1_OrderOnly() Type = OrderType.BUY, UnitPrice = 8.685M, ReferenceCode = "SCALQbWiZnN9DtQ" - } }); + } }); } [Fact] @@ -84,7 +84,7 @@ public async Task ConvertToOrders_Example1_DividendOnly() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("US92343V1044")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("US92343V1044", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/ScalableCapital/Example1/RKKExample1.csv" }); @@ -102,7 +102,7 @@ public async Task ConvertToOrders_Example1_DividendOnly() Type = OrderType.DIVIDEND, UnitPrice = 0.5057142857142857142857142857M, ReferenceCode = "WWEK 16100100" - } }); + } }); } [Fact] @@ -117,8 +117,8 @@ public async Task ConvertToOrders_Example1_Both() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("IE00077FRP95")).ReturnsAsync(asset1); - api.Setup(x => x.FindSymbolByISIN("US92343V1044")).ReturnsAsync(asset2); + api.Setup(x => x.FindSymbolByISIN("IE00077FRP95", null)).ReturnsAsync(asset1); + api.Setup(x => x.FindSymbolByISIN("US92343V1044", null)).ReturnsAsync(asset2); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { @@ -138,8 +138,8 @@ public async Task ConvertToOrders_Example1_Both() Quantity = 5, Type = OrderType.BUY, UnitPrice = 8.685M, - ReferenceCode = "SCALQbWiZnN9DtQ" - }, + ReferenceCode = "SCALQbWiZnN9DtQ" + }, new Order { AccountId = account.Id, Asset = asset2, @@ -151,8 +151,8 @@ public async Task ConvertToOrders_Example1_Both() Quantity = 14, Type = OrderType.DIVIDEND, UnitPrice = 0.5057142857142857142857142857M, - ReferenceCode = "WWEK 16100100" - } }); + ReferenceCode = "WWEK 16100100" + } }); } [Fact] @@ -167,8 +167,8 @@ public async Task ConvertToOrders_Example2_NotDuplicateFeesAndDividend() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("IE00077FRP95")).ReturnsAsync(asset1); - api.Setup(x => x.FindSymbolByISIN("US92343V1044")).ReturnsAsync(asset2); + api.Setup(x => x.FindSymbolByISIN("IE00077FRP95", null)).ReturnsAsync(asset1); + api.Setup(x => x.FindSymbolByISIN("US92343V1044", null)).ReturnsAsync(asset2); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { @@ -190,7 +190,7 @@ public async Task ConvertToOrders_Example2_NotDuplicateFeesAndDividend() Type = OrderType.BUY, UnitPrice = 8.685M, ReferenceCode = "SCALQbWiZnN9DtQ" - }, + }, new Order { AccountId = account.Id, Asset = asset2, @@ -202,8 +202,8 @@ public async Task ConvertToOrders_Example2_NotDuplicateFeesAndDividend() Quantity = 14, Type = OrderType.DIVIDEND, UnitPrice = 0.5057142857142857142857142857M, - ReferenceCode = "WWEK 16100100" - } }); + ReferenceCode = "WWEK 16100100" + } }); } } } diff --git a/GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example1/Example1.csv b/GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example1/Example1.csv new file mode 100644 index 00000000..b7da6d08 --- /dev/null +++ b/GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example1/Example1.csv @@ -0,0 +1,9 @@ +"You can use this transaction report to inform your likely tax obligations. For US customers, Sells, Converts, Rewards Income, Learning Rewards, and Donations are taxable events. For final tax obligations, please consult your tax advisor." + + + +Transactions +User,some@email.com,0000000000000000000000 + +Timestamp,Transaction Type,Asset,Quantity Transacted,Spot Price Currency,Spot Price at Transaction,Subtotal,Total (inclusive of fees and/or spread),Fees and/or Spread,Notes +2023-08-19T17:23:39Z,Sell,BTC,0.00205323,EUR,24073.28,"","","",Sent 0.00205323 BTC to 39ADd6pNpeuwjcweLLS5JiJPFjNPJnf4xY diff --git a/GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example2/Example2.csv b/GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example2/Example2.csv new file mode 100644 index 00000000..3f50b6cd --- /dev/null +++ b/GhostfolioSidekick.UnitTests/FileImporter/TestFiles/Coinbase/Example2/Example2.csv @@ -0,0 +1,12 @@ +"You can use this transaction report to inform your likely tax obligations. For US customers, Sells, Converts, Rewards Income, Learning Rewards, and Donations are taxable events. For final tax obligations, please consult your tax advisor." + + + +Transactions +User,some@email.com,0000000000000000000000 + +Timestamp,Transaction Type,Asset,Quantity Transacted,Spot Price Currency,Spot Price at Transaction,Subtotal,Total (inclusive of fees and/or spread),Fees and/or Spread,Notes +2023-08-19T17:23:39Z,Send,BTC,0.00205323,EUR,24073.28,"","","",Sent 0.00205323 BTC to 39ADd6pNpeuwjcweLLS5JiJPFjNPJnf4xY +2023-04-20T04:05:40Z,Buy,ETH,0.00213232,EUR,1810.23,3.86,4.85,0.990000,Bought 0.00213232 ETH for €4.85 EUR +2023-04-22T06:24:44Z,Receive,ETH,1.0e-08,EUR,1689.10,"","","",Received 0.00000001 ETH from Vweeter Limited +2023-04-26T13:46:22Z,Convert,ETH,0.00052203,EUR,1762.35,0.900000,0.920000,0.020000,Converted 0.00052203 ETH to 0.087842 ATOM diff --git a/GhostfolioSidekick.UnitTests/FileImporter/Trading212/Trading212Tests.cs b/GhostfolioSidekick.UnitTests/FileImporter/Trading212/Trading212Tests.cs index 07790885..7ed4f0ef 100644 --- a/GhostfolioSidekick.UnitTests/FileImporter/Trading212/Trading212Tests.cs +++ b/GhostfolioSidekick.UnitTests/FileImporter/Trading212/Trading212Tests.cs @@ -39,7 +39,7 @@ public async Task ConvertToOrders_TestFileSingleOrder_Converted() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("US67066G1040")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("US67066G1040", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/Trading212/Example1/TestFileSingleOrder.csv" }); @@ -71,7 +71,7 @@ public async Task ConvertToOrders_TestFileMultipleOrdersUS_Converted() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("US67066G1040")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("US67066G1040", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/Trading212/Example2/TestFileMultipleOrdersUS.csv" }); @@ -117,7 +117,7 @@ public async Task ConvertToOrders_TestFileSingleOrderUK_Converted() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("GB0007188757")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("GB0007188757", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/Trading212/Example3/TestFileSingleOrderUK.csv" }); @@ -149,7 +149,7 @@ public async Task ConvertToOrders_TestFileSingleDividend_Converted() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("US0378331005")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("US0378331005", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/Trading212/Example4/TestFileSingleDividend.csv" }); @@ -181,7 +181,7 @@ public async Task ConvertToOrders_TestFileSingleOrderUKNativeCurrency_Converted( var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("GB0007188757")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("GB0007188757", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { "./FileImporter/TestFiles/Trading212/Example5/TestFileSingleOrderUKNativeCurrency.csv" }); @@ -213,7 +213,7 @@ public async Task ConvertToOrders_TestFileSingleOrderMultipleTimes_Converted() var account = fixture.Create(); api.Setup(x => x.GetAccountByName(account.Name)).ReturnsAsync(account); - api.Setup(x => x.FindSymbolByISIN("US67066G1040")).ReturnsAsync(asset); + api.Setup(x => x.FindSymbolByISIN("US67066G1040", null)).ReturnsAsync(asset); // Act var orders = await parser.ConvertToOrders(account.Name, new[] { diff --git a/GhostfolioSidekick.UnitTests/GhostfolioSidekick.UnitTests.csproj b/GhostfolioSidekick.UnitTests/GhostfolioSidekick.UnitTests.csproj index 0d1cef25..b5cd62c3 100644 --- a/GhostfolioSidekick.UnitTests/GhostfolioSidekick.UnitTests.csproj +++ b/GhostfolioSidekick.UnitTests/GhostfolioSidekick.UnitTests.csproj @@ -29,6 +29,12 @@ + + Always + + + Always + Always diff --git a/GhostfolioSidekick.sln b/GhostfolioSidekick.sln index eb923235..0454e8c8 100644 --- a/GhostfolioSidekick.sln +++ b/GhostfolioSidekick.sln @@ -12,6 +12,7 @@ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SolutionItems", "SolutionItems", "{56B3F201-0E55-45FB-90CA-24F16BE6CCED}" ProjectSection(SolutionItems) = preProject .editorconfig = .editorconfig + README.md = README.md EndProjectSection EndProject Global diff --git a/GhostfolioSidekick/ConfigurationSettings.cs b/GhostfolioSidekick/ConfigurationSettings.cs index ea4fa312..a1f70c89 100644 --- a/GhostfolioSidekick/ConfigurationSettings.cs +++ b/GhostfolioSidekick/ConfigurationSettings.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace GhostfolioSidekick +namespace GhostfolioSidekick { public class ConfigurationSettings : IConfigurationSettings { diff --git a/GhostfolioSidekick/Crypto/CryptoOrderType.cs b/GhostfolioSidekick/Crypto/CryptoOrderType.cs new file mode 100644 index 00000000..31231d3c --- /dev/null +++ b/GhostfolioSidekick/Crypto/CryptoOrderType.cs @@ -0,0 +1,19 @@ +namespace GhostfolioSidekick.Crypto +{ + internal enum CryptoOrderType + { + Buy, + + Sell, + + Send, + + Receive, + + Convert, + + LearningReward, + + StakingReward + } +} diff --git a/GhostfolioSidekick/Crypto/CryptoTranslate.cs b/GhostfolioSidekick/Crypto/CryptoTranslate.cs new file mode 100644 index 00000000..7e80ef5a --- /dev/null +++ b/GhostfolioSidekick/Crypto/CryptoTranslate.cs @@ -0,0 +1,36 @@ +using Newtonsoft.Json.Linq; +using System.Reflection; + +namespace GhostfolioSidekick.Crypto +{ + public class CryptoTranslate + { + public static readonly CryptoTranslate Instance = new CryptoTranslate(); + private readonly JObject dictionary; + + public CryptoTranslate() + { + var assembly = Assembly.GetExecutingAssembly(); + var resourceName = "GhostfolioSidekick.Crypto.cryptocurrencies.json"; + + using (Stream stream = assembly.GetManifestResourceStream(resourceName)) + { + using (StreamReader reader = new StreamReader(stream)) + { + string jsonFile = reader.ReadToEnd(); + dictionary = JObject.Parse(jsonFile); + } + } + } + + public string TranslateToken(string source) + { + if (dictionary.ContainsKey(source)) + { + return dictionary[source].ToString(); + } + + throw new NotSupportedException($"Crypto unknown {source}"); + } + } +} diff --git a/GhostfolioSidekick/Crypto/cryptocurrencies.json b/GhostfolioSidekick/Crypto/cryptocurrencies.json new file mode 100644 index 00000000..390d2c68 --- /dev/null +++ b/GhostfolioSidekick/Crypto/cryptocurrencies.json @@ -0,0 +1,8604 @@ +{ + "42": "42 Coin", + "300": "300 token", + "365": "365Coin", + "404": "404Coin", + "433": "433 Token", + "611": "SixEleven", + "808": "808", + "888": "Octocoin", + "1337": "EliteCoin", + "1717": "1717 Masonic Commemorative Token", + "2015": "2015 coin", + "$MAID": "MaidCoin", + "$ROPE": "Rope", + "$TIME": "Madagascar Token", + "$TREAM": "World Stream Finance", + "00": "ZER0ZER0", + "007": "007 coin", + "0XBTC": "0xBitcoin", + "0xDIARY": "The 0xDiary Token", + "1-UP": "1-UP", + "10SET": "Tenset", + "1ART": "ArtWallet", + "1CR": "1Credit", + "1EARTH": "EarthFund", + "1ECO": "1eco", + "1GOLD": "1irstGold", + "1INCH": "1inch", + "1IRST": "1irstcoin", + "1PECO": "1peco", + "1SG": "1SG", + "1SOL": "1Sol", + "1ST": "FirstBlood", + "1TRC": "1TRONIC", + "1UP": "Uptrennd", + "1WO": "1World", + "2022M": "2022MOON", + "2BACCO": "2BACCO Coin", + "2BASED": "2Based Finance", + "2CRZ": "2crazyNFT", + "2GCC": "2G Carbon Coin", + "2GIVE": "2GiveCoin", + "2GT": "2GETHER", + "2KEY": "2key.network", + "2LC": "2local", + "2TF": "2TF", + "300F": "300FIT", + "32BIT": "32Bitcoin", + "37C": "37Protocol", + "3DES": "3DES", + "3FT": "ThreeFold Token", + "3ULL": "3ULL Coin", + "3XD": "3DChain", + "420CHAN": "420chan", + "4ART": "4ART Coin", + "4CHAN": "4Chan", + "4JNET": "4JNET", + "77G": "GraphenTech", + "7E": "7ELEVEN", + "88MPH": "88mph", + "8BIT": "8BIT Coin", + "8BT": "8 Circuit Studios", + "8PAY": "8Pay", + "8X8": "8X8 Protocol", + "9GAG": "9GAG", + "A5T": "Alpha5", + "AAA": "Moon Rabbit", + "AAB": "AAX Token", + "AAC": "Double-A Chain", + "AAG": "AAG Ventures", + "AAPX": "AMPnet", + "AART": "ALL.ART", + "AAT": "Agricultural Trade Chain", + "AAVE": "Aave", + "ABA": "EcoBall", + "ABBC": "ABBC Coin", + "ABC": "ABC Chain", + "ABCC": "ABCC Token", + "ABEY": "Abey", + "ABIC": "Arabic", + "ABJ": "Abjcoin", + "ABL": "Airbloc", + "ABT": "ArcBlock", + "ABX": "Arbidex", + "ABY": "ArtByte", + "ABYSS": "Abyss Finance", + "AC": "Asia Coin", + "AC3": "AC3", + "ACA": "Acala", + "ACAT": "Alphacat", + "ACCEL": "Accel Defi", + "ACCN": "Accelerator Network", + "ACD": "Alliance Cargo Direct", + "ACDC": "Volt", + "ACE": "Acent", + "ACES": "AcesCoin", + "ACET": "Acet", + "ACETH": "Acether", + "ACH": "Alchemy Pay", + "ACHC": "AchieveCoin", + "ACID": "AcidCoin", + "ACK": "Arcade Kingdoms", + "ACM": "AC Milan Fan Token", + "ACN": "AvonCoin", + "ACOIN": "ACoin", + "ACP": "Anarchists Prime", + "ACQ": "Acquire.Fi", + "ACS": "Access Protocol", + "ACT": "Achain", + "ACTIN": "Actinium", + "ACTN": "Action Coin", + "ACU": "ACU Platform", + "ACX": "Across Protocol", + "ACXT": "ACDX Exchange Token", + "ACYC": "All Coins Yield Capital", + "ADA": "Cardano", + "ADAB": "Adab Solutions", + "ADAI": "Aave DAI", + "ADAO": "ADADao", + "ADAPAD": "ADAPad", + "ADAT": "Adadex Tools", + "ADAX": "ADAX", + "ADB": "Adbank", + "ADC": "AudioCoin", + "ADD": "ADD.xyz", + "ADEL": "Akropolis Delphi", + "ADH": "Adhive", + "ADI": "Aditus", + "ADK": "Aidos Kuneen", + "ADL": "Adel", + "ADM": "ADAMANT Messenger", + "ADN": "Aladdin", + "ADNT": "Aiden", + "ADP": "Adappter Token", + "ADRX": "Adrenaline Chain", + "ADS": "Adshares", + "ADT": "AdToken", + "ADUX": "Adult X Token", + "ADX": "Ambire AdEx", + "ADXX": "AnonyDoxx", + "ADZ": "Adzcoin", + "AE": "Aeternity", + "AEC": "AcesCoin", + "AEGIS": "Aegis", + "AEN": "Aenco", + "AENS": "AEN Smart", + "AENT": "AEN", + "AEON": "AEON", + "AER": "Aeryus", + "AERGO": "AERGO", + "AERM": "Aerium", + "AERO": "Aero Coin", + "AES": "Artis Aes Evolution", + "AET": "AfterEther", + "AETH": "Aave ETH", + "AETHC": "Ankr Reward-Bearing Staked ETH", + "AETHERV2": "AetherV2", + "AEVO": "Always Evolving", + "AFC": "Arsenal Fan Token", + "AFCT": "Allforcrypto", + "AFEN": "AFEN Blockchain", + "AFFC": "Affil Coin", + "AFIN": "Asian Fintech", + "AFIT": "Actifit", + "AFK": "AFKDAO", + "AFO": "AllForOneBusiness", + "AFTT": "Africa Trading Chain", + "AFX": "Afrix", + "AG8": "ATROMG8", + "AGET": "Agetron", + "AGEUR": "agEUR", + "AGF": "Augmented Finance", + "AGI": "SingularityNET", + "AGLA": "Angola", + "AGLD": "Adventure Gold", + "AGM": "Argoneum", + "AGPC": "AGPC", + "AGRO": "Bit Agro", + "AGRS": "Agoras Token", + "AGS": "Aegis", + "AGT": "aGifttoken", + "AGV": "Astra Guild Ventures", + "AGVC": "AgaveCoin", + "AGX": "Agricoin", + "AHOO": "Ahoolee", + "AHT": "AhaToken", + "AI": "AiDoge", + "AIB": "AdvancedInternetBlock", + "AIBB": "AiBB", + "AIBK": "AIB Utility Token", + "AIC": "AI Crypto", + "AICO": "AICON", + "AID": "AidCoin", + "AIDI": "Aidi Inu", + "AIDOC": "AI Doctor", + "AIDT": "AIDUS TOKEN", + "AIDUS": "AIDUS Token", + "AILINK": "AiLink Token", + "AIM": "ModiHost", + "AIMS": "HighCastle Token", + "AIMX": "Aimedis", + "AIN": "AI Network", + "AION": "Aion", + "AIOT": "AIOT Token", + "AIOZ": "AIOZ Network", + "AIPE": "AI Prediction Ecosystem", + "AIR": "Altair", + "AIRE": "Tokenaire", + "AIRT": "Aircraft", + "AIRTOKEN": "AirToken", + "AIRX": "Aircoins", + "AIT": "AIChain Token", + "AITECH": "Artificial Intelligence Utility Token", + "AITHEON": "Aitheon", + "AITT": "AITrading", + "AIX": "Aigang", + "AKA": "Akroma", + "AKITA": "Akita Inu", + "AKN": "Akoin", + "AKNC": "Aave KNC v1", + "AKRO": "Akropolis", + "AKT": "Akash Network", + "AKTIO": "AKTIO Coin", + "ALA": "ALA", + "ALBT": "AllianceBlock", + "ALC": "Arab League Coin", + "ALCAZAR": "Alcazar", + "ALCE": "Alcedo", + "ALCH": "Alchemy", + "ALCHE": "Alchemist", + "ALCX": "Alchemix", + "ALD": "AladdinDAO", + "ALEPH": "Aleph.im", + "ALEX": "Alexandrite", + "ALF": "AlphaCoin", + "ALG": "Algory", + "ALGO": "Algorand", + "ALGOBLK": "AlgoBlocks", + "ALH": "AlloHash", + "ALI": "Alethea Artificial Liquid Intelligence Token", + "ALIAS": "Alias", + "ALIC": "AliCoin", + "ALICE": "My Neighbor Alice", + "ALIEN": "AlienCoin", + "ALINK": "Aave LINK v1", + "ALIS": "ALISmedia", + "ALITA": "Alita Network", + "ALIX": "AlinX", + "ALKI": "Alkimi", + "ALLBI": "ALL BEST ICO", + "ALLEY": "NFT Alley", + "ALLIN": "All in", + "ALN": "Aluna", + "ALOHA": "Aloha", + "ALP": "Alphacon", + "ALPA": "Alpaca", + "ALPACA": "Alpaca Finance", + "ALPH": "Alephium", + "ALPHA": "Alpha Finance Lab", + "ALPHAC": "Alpha Coin", + "ALPHR": "Alphr", + "ALPINE": "Alpine F1 Team Fan Token", + "ALPS": "Alpenschillling", + "ALT": "Alitas", + "ALTA": "Alta Finance", + "ALTB": "Altbase", + "ALTCOIN": "ALTcoin", + "ALTCOM": "AltCommunity Coin", + "ALTOCAR": "AltoCar", + "ALU": "Altura", + "ALUSD": "Alchemix USD", + "ALUX": "Alux Bank", + "ALV": "Allive", + "ALX": "ALAX", + "ALY": "Ally", + "AM": "AeroMe", + "AMA": "MrWeb", + "AMAL": "AMAL", + "AMATEN": "Amaten", + "AMB": "AirDAO", + "AMBER": "AmberCoin", + "AMBT": "AMBT Token", + "AMDC": "Allmedi Coin", + "AMDG": "AMDG", + "AME": "Amepay", + "AMERICANCOIN": "AmericanCoin", + "AMIO": "Amino Network", + "AMIS": "AMIS", + "AMKT": "Alongside Crypto Market Index", + "AMLT": "AMLT", + "AMM": "MicroMoney", + "AMMO": "Ammo Rewards", + "AMN": "Amon", + "AMO": "AMO Coin", + "AMON": "AmonD", + "AMOS": "Amos", + "AMP": "Amp", + "AMPL": "Ampleforth", + "AMPLIFI": "AmpliFi", + "AMS": "Amsterdam Coin", + "AMT": "Acumen", + "AMX": "Amero", + "AMY": "Amygws", + "AMZE": "The Amaze World", + "ANA": "Nirvana ANA", + "ANAL": "AnalCoin", + "ANB": "Angryb", + "ANC": "Anchor Protocol", + "ANCP": "Anacrypt", + "ANCT": "Anchor", + "AND": "AndromedaCoin", + "ANDC": "Android chain", + "ANDROTTWEILER": "Androttweiler Token", + "ANDX": "Arrano", + "ANGEL": "Crypto Angel", + "ANGL": "Angel Token", + "ANGLE": "ANGLE", + "ANI": "Animecoin", + "ANJ": "Aragon Court", + "ANJI": "Anji", + "ANK": "AlphaLink", + "ANKA.BITCI": "Ankaragücü Fan Token", + "ANKORUS": "Ankorus Token", + "ANKR": "Ankr Network", + "ANKRETH": "Ankr Staked ETH", + "ANML": "Animal Concerts", + "ANN": "Annex Finance", + "ANON": "ANON", + "ANONCOIN": "Anoncoin", + "ANRX": "AnRKey X", + "ANS": "ANS Crypto Coin", + "ANSR": "Answerly", + "ANT": "Aragon", + "ANTC": "AntiLitecoin", + "ANTE": "ANTE", + "ANTEX": "Antex", + "ANTI": "Anti Bitcoin", + "ANTIS": "Antis Inu", + "ANTS": "ANTS Reloaded", + "ANV": "Aniverse", + "ANW": "Anchor Neural World", + "ANY": "Anyswap", + "AOG": "AgeOfGods", + "AOK": "AOK", + "AOP": "Averopay", + "AOS": "AOS", + "APAD": "Anypad", + "APC": "AlpaCoin", + "APE": "ApeCoin", + "APECOIN": "Asia Pacific Electronic Coin", + "APED": "Baddest Alpha Ape Bundle", + "APEX": "ApeX Protocol", + "APEXCOIN": "ApexCoin", + "APH": "Aphelion", + "API": "Application Programming Interface", + "API3": "API3", + "APIS": "APIS", + "APIX": "APIX", + "APL": "Apollo Currency", + "APM": "apM Coin", + "APN": "Apron", + "APOD": "AirPod", + "APOLLO": "Apollo Crypto", + "APP": "SappChat", + "APPC": "AppCoins", + "APRICOT": "Apricot Finance", + "APRIL": "April", + "APS": "APRES", + "APT": "Aptos", + "APTCOIN": "Aptcoin", + "APW": "APWine", + "APX": "ApolloX", + "APXP": "APEX Protocol", + "APXT": "ApolloX", + "APXVENTURES": "Apx", + "APY": "APY.Finance", + "APYS": "APYSwap", + "APZ": "Alprockz", + "AQT": "Alpha Quark Token", + "AQU": "aQuest", + "AQUA": "Aquarius", + "AQUAC": "Aquachain", + "AQUAGOAT": "Aqua Goat", + "AQUAP": "Planet Finance", + "AQUARI": "Aquari", + "AR": "Arweave", + "ARA": "Ara Token", + "ARATA": "Arata", + "ARAW": "Araw", + "ARB": "Arbitrum", + "ARBI": "Arbi", + "ARBIT": "Arbit Coin", + "ARBT": "ARBITRAGE", + "ARC": "ArcticCoin", + "ARCA": "Arca", + "ARCANE": "Arcane Token", + "ARCH": "ArchCoin", + "ARCO": "AquariusCoin", + "ARCONA": "Arcona", + "ARCT": "ArbitrageCT", + "ARCX": "ARC Governance", + "ARDR": "Ardor", + "ARDX": "ArdCoin", + "ARE": "Aurei", + "AREN": "Arenon", + "ARENA": "Arena", + "AREPA": "Arepacoin", + "ARES": "Ares Protocol", + "ARG": "Argentine Football Association Fan Token", + "ARGENTUM": "Argentum", + "ARGO": "ArGoApp", + "ARGON": "Argon", + "ARGUS": "ArgusCoin", + "ARI": "AriCoin", + "ARIA": "Legends of Aria", + "ARIA20": "Arianee", + "ARIX": "Arix", + "ARK": "ARK", + "ARKER": "Arker", + "ARKM": "Arkham", + "ARKN": "Ark Rivals", + "ARM": "Armory Coin", + "ARMOR": "ARMOR", + "ARMR": "ARMR", + "ARMS": "2Acoin", + "ARNA": "ARNA Panacea", + "ARNM": "Arenum", + "ARNO": "ARNO", + "ARNX": "Aeron", + "ARNXM": "Armor NXM", + "ARO": "Arionum", + "ARPA": "ARPA Chain", + "ARPAC": "ArpaCoin", + "ARQ": "ArQmA", + "ARR": "ARROUND", + "ARRR": "Pirate Chain", + "ART": "Maecenas", + "ARTC": "Artcoin", + "ARTDECO": "ARTDECO", + "ARTE": "Artemine", + "ARTEM": "Artem", + "ARTEON": "Arteon", + "ARTEQ": "artèQ", + "ARTEX": "Artex", + "ARTF": "Artfinity Token", + "ARTG": "Goya Giant Token", + "ARTH": "ARTH", + "ARTI": "Arti Project", + "ARTII": "ARTII Token", + "ARTL": "ARTL", + "ARTM": "ARTM", + "ARTP": "ArtPro", + "ARTY": "Artyfact", + "ARV": "Ariva", + "ARW": "Arowana Token", + "ARX": "ARCS", + "ARY": "Block Array", + "AS": "AmaStar", + "ASA": "ASA Coin", + "ASAFE2": "Allsafe", + "ASD": "AscendEX Token", + "ASG": "Asgard", + "ASGC": "ASG", + "ASH": "ASH", + "ASIA": "Asia Coin", + "ASIMI": "ASIMI", + "ASK": "Permission Coin", + "ASKO": "Asko", + "ASM": "Assemble Protocol", + "ASN": "Ascension Coin", + "ASP": "Aspire", + "ASPO": "ASPO Shards", + "ASQT": "ASQ Protocol", + "ASR": "AS Roma Fan Token", + "ASS": "Australian Safe Shepherd", + "ASSA": "AssaPlay", + "ASSARA": "ASSARA", + "ASST": "AssetStream", + "AST": "AirSwap", + "ASTA": "ASTA", + "ASTO": "Altered State Token", + "ASTON": "Aston", + "ASTR": "Astar", + "ASTRAFER": "Astrafer", + "ASTRAL": "Astral", + "ASTRO": "AstroSwap", + "ASTROC": "Astroport Classic", + "ASTROLION": "AstroLion", + "ASTRONAUT": "Astronaut", + "ASUNA": "Asuna Hentai", + "ASY": "ASYAGRO", + "AT": "AWARE", + "ATA": "Automata", + "ATB": "ATB coin", + "ATC": "AutoBlock", + "ATCC": "ATC Coin", + "ATD": "A2DAO", + "ATFS": "ATFS Project", + "ATH": "All Time High Vodka", + "ATHE": "Atheios", + "ATK": "Attack Wagon", + "ATKN": "A-Token", + "ATL": "ATLANT", + "ATLAS": "Star Atlas", + "ATM": "Atletico de Madrid Fan Token", + "ATMC": "Autumncoin", + "ATMCHAIN": "ATMChain", + "ATMI": "Atonomi", + "ATMOS": "Novusphere", + "ATN": "ATN", + "ATOLO": "RIZON", + "ATOM": "Cosmos", + "ATON": "Further Network", + "ATOZ": "Race Kingdom", + "ATP": "Atlas Protocol", + "ATR": "Ather", + "ATRI": "Atari Token", + "ATS": "Atlas DEX", + "ATT": "Attila", + "ATTR": "Attrace", + "ATX": "ArtexCoin", + "AU": "AutoCrypto", + "AUA": "ArubaCoin", + "AUC": "Auctus", + "AUCO": "Advanced United Continent", + "AUCTION": "Bounce", + "AUDC": "Aussie Digital", + "AUDIO": "Audius", + "AUDX": "eToro Australian Dollar", + "AUK": "Aukcecoin", + "AUN": "Authoreon", + "AUNIT": "Aunit", + "AUPC": "Authpaper", + "AUR": "AUREO", + "AURO": "Aurora", + "AURORA": "Aurora", + "AURORAC": "Auroracoin", + "AUROS": "AurusGOLD", + "AURS": "Aureus", + "AURUM": "Aurum", + "AURY": "Aurory", + "AUSCM": "Auric Network", + "AUSD": "Appeal dollar", + "AUSDC": "Aave USDC v1", + "AUT": "Autoria", + "AUTHORSHIP": "Authorship", + "AUTO": "Auto", + "AUTON": "Autonio", + "AUX": "Auxilium", + "AV": "Avatar Coin", + "AVA": "Travala", + "AVAL": "Avaluse", + "AVALON": "Avalon", + "AVAT": "AVATA Network", + "AVAX": "Avalanche", + "AVAXIOU": "Avalanche IOU", + "AVDO": "AvocadoCoin", + "AVE": "Avesta", + "AVG": "Avocado DAO", + "AVH": "Animation Vision Cash", + "AVINOC": "AVINOC", + "AVL": "Aston Villa Fan Token", + "AVN": "AVNRich", + "AVO": "Avoteo", + "AVT": "Aventus", + "AVXL": "Avaxlauncher", + "AWAX": "AWAX", + "AWC": "Atomic Wallet Coin", + "AWNEX": "AWNEX token", + "AWO": "AiWork", + "AWORK": "Aworker", + "AWR": "Award", + "AWS": "AurusSILVER", + "AWT": "Airdrop World", + "AWX": "AurusX", + "AX": "AlphaX", + "AXC": "AXIA Coin", + "AXE": "Axe", + "AXEL": "AXEL", + "AXIAL": "AXiaL", + "AXIAV3": "Axia", + "AXIOM": "Axiom Coin", + "AXIS": "Axis DeFi", + "AXL": "Axelar", + "AXLINU": "AXL INU", + "AXN": "Axion", + "AXNT": "Axentro", + "AXPR": "aXpire", + "AXR": "AXRON", + "AXS": "Axie Infinity Shards", + "AXT": "AIX", + "AXYS": "Axys", + "AYA": "Aryacoin", + "AZ": "Azbit", + "AZA": "Kaliza", + "AZART": "Azart", + "AZBI": "AZBI CORE", + "AZERO": "Aleph Zero", + "AZU": "Azultec", + "AZUKI": "Azuki", + "AZUM": "Azuma Coin", + "AZY": "Amazy", + "B": "BankCoin", + "B20": "B20", + "B21": "B21", + "B26": "B26 Finance", + "B2G": "Bitcoiin2Gen", + "B2M": "Bit2Me", + "B2X": "SegWit2x", + "B3": "B3 Coin", + "B91": "B91", + "BAAS": "BaaSid", + "BABL": "Babylon Finance", + "BABY": "BabySwap", + "BABYCUBAN": "Baby Cuban", + "BABYDOGE": "BabyDoge", + "BABYELON": "BabyElon", + "BABYFB": "Baby Floki Billionaire", + "BABYFLOKI": "BabyFloki", + "BABYSAITAMA": "Baby Saitama", + "BABYTK": "Baby Tiger King", + "BAC": "Basis Cash", + "BACK": "DollarBack", + "BACOIN": "BACoin", + "BACON": "BaconDAO (BACON)", + "BAD": "Bad Idea AI", + "BADGER": "Badger DAO", + "BAG": "BondAppetit", + "BAGS": "Basis Gold Share", + "BAK": "BaconCoin", + "BAKE": "BakeryToken", + "BAKED": "Baked", + "BAKT": "Backed Protocol", + "BAL": "Balancer", + "BALPHA": "bAlpha", + "BAMBOO": "BambooDeFi", + "BAN": "Banano", + "BANANA": "ApeSwap", + "BANC": "Babes and Nerds", + "BANCA": "BANCA", + "BAND": "Band Protocol", + "BANDEX": "Banana Index", + "BANK": "Float Protocol", + "BANKETH": "BankEth", + "BANNER": "BannerCoin", + "BAO": "Bao Finance", + "BAOE": "Business Age of Empires", + "BAR": "FC Barcelona Fan Token", + "BARK": "Bored Ark", + "BART": "BarterTrade", + "BAS": "Basis Share", + "BASE": "Base Protocol", + "BASED": "Based Money", + "BASH": "LuckChain", + "BASHC": "BashCoin", + "BASHOS": "Bashoswap", + "BASIC": "BASIC", + "BASID": "Basid Coin", + "BASIS": "Basis", + "BASK": "BasketDAO", + "BAST": "Bast", + "BAT": "Basic Attention Token", + "BATH": "Battle Hero", + "BATS": "Batcoin", + "BAX": "BABB", + "BAXS": "BoxAxis", + "BAY": "BitBay", + "BB": "Baby Bali", + "BB1": "Bitbond", + "BBADGER": "Badger Sett Badger", + "BBANK": "BlockBank", + "BBC": "BigBang Core", + "BBCC": "BaseballCardCoin", + "BBCT": "TraDove B2BCoin", + "BBDT": "BBD Token", + "BBF": "Bubblefong", + "BBFT": "Block Busters Tech Token", + "BBG": "BigBang", + "BBGC": "BigBang Game", + "BBI": "BelugaPay", + "BBK": "BitBlocks", + "BBN": "BBNCOIN", + "BBO": "Bigbom", + "BBOS": "Blackbox Foundation", + "BBP": "BiblePay", + "BBR": "Boolberry", + "BBS": "BBSCoin", + "BBT": "BitBook", + "BBTC": "BlakeBitcoin", + "BC": "Bitcoin Confidential", + "BCA": "Bitcoin Atom", + "BCAC": "Business Credit Alliance Chain", + "BCAP": "Blockchain Capital", + "BCAT": "BitClave", + "BCB": "BCB Blockchain", + "BCCOIN": "BitConnect Coin", + "BCD": "Bitcoin Diamond", + "BCDN": "BlockCDN", + "BCDT": "EvidenZ", + "BCEO": "bitCEO", + "BCF": "BitcoinFast", + "BCH": "Bitcoin Cash", + "BCHA": "Bitcoin Cash ABC", + "BCHC": "BitCherry", + "BCHT": "Blockchain Terminal", + "BCI": "Bitcoin Interest", + "BCIO": "Blockchain.io", + "BCMC": "Blockchain Monster Hunt", + "BCMC1": "BeforeCoinMarketCap", + "BCN": "ByteCoin", + "BCNA": "BitCanna", + "BCNT": "Bincentive", + "BCNX": "BCNEX", + "BCO": "BridgeCoin", + "BCOIN": "Bombcrypto", + "BCP": "BitcashPay", + "BCPT": "BlockMason Credit Protocol", + "BCR": "BitCredit", + "BCS": "Business Credit Substitute", + "BCT": "Toucan Protocol: Base Carbon Tonne", + "BCUG": "Blockchain Cuties Universe Governance", + "BCV": "BitCapitalVendor", + "BCVB": "BCV Blue Chip", + "BCX": "BitcoinX", + "BCY": "BitCrystals", + "BCZERO": "Buggyra Coin Zero", + "BDAY": "Birthday Cake", + "BDB": "Big Data Block", + "BDC": "Based", + "BDCC": "BDCC COIN", + "BDG": "BitDegree", + "BDL": "Bitdeal", + "BDOG": "Bulldog Token", + "BDOT": "Binance Wrapped DOT", + "BDP": "Big Data Protocol", + "BDPI": "Interest Bearing Defi Pulse Index", + "BDR": "BlueDragon", + "BDX": "Beldex", + "BDY": "Buddy DAO", + "BEACH": "BeachCoin", + "BEAI": "BeNFT Solutions", + "BEAM": "Beam", + "BEAN": "BeanCash", + "BEAST": "CryptoBeast", + "BEAT": "BEAT Token", + "BEC": "Betherchip", + "BECH": "Beauty Chain", + "BED": "Bankless BED Index", + "BEE": "Herbee", + "BEER": "BEER Coin", + "BEETLE": "Beetle Coin", + "BEETOKEN": "Bee Token", + "BEETS": "Beethoven X", + "BEL": "Bella Protocol", + "BELA": "Bela", + "BELR": "Belrium", + "BELT": "Belt", + "BEN": "BitCOEN", + "BEND": "BendDao", + "BENJACOIN": "Benjacoin", + "BENJI": "BenjiRolls", + "BENT": "Bent Finance", + "BENX": "BlueBenx", + "BENZI": "Ben Zi Token", + "BEP": "Blucon", + "BEPR": "Blockchain Euro Project", + "BEPRO": "BEPRO Network", + "BERN": "BERNcash", + "BERRY": "Berry", + "BEST": "Bitpanda Ecosystem Token", + "BESTC": "BestChain", + "BETA": "Beta Finance", + "BETACOIN": "BetaCoin", + "BETF": "Betform", + "BETH": "Beacon ETH", + "BETHER": "Bethereum", + "BETR": "BetterBetting", + "BETT": "Bettium", + "BETU": "Betu", + "BEX": "BEX token", + "BEY": "Beyond Finance", + "BEYOND": "Beyond Protocol", + "BEZ": "Bezop", + "BEZOGE": "Bezoge Earth", + "BF": "BitForex Token", + "BFC": "Bifrost", + "BFCH": "Big Fun Chain", + "BFDT": "Befund", + "BFEX": "BFEX", + "BFHT": "BeFaster Holder Token", + "BFI": "BitDefi", + "BFIC": "Bficoin", + "BFLOKI": "BurnFloki", + "BFLY": "Butterfly Protocol", + "BFT": "BF Token", + "BFT.BITCI": "Brazil Fan Token", + "BFX": "BitFinex Tokens", + "BGBP": "Binance GBP Stable Coin", + "BGC": "Bee Token", + "BGG": "BGG Token", + "BGLD": "Based Gold", + "BGONE": "BigONE Token", + "BGS": "Battle of Guardians Share", + "BHAO": "Bithao", + "BHAX": "Bithashex", + "BHC": "BillionHappiness", + "BHEROES": "BombHeroes coin", + "BHIRE": "BitHIRE", + "BHIVE": "Hive", + "BHO": "Bholdus Token", + "BHP": "Blockchain of Hash Power", + "BHPC": "BHPCash", + "BIBL": "Biblecoin", + "BIC": "Bikercoins", + "BICO": "Biconomy", + "BID": "TopBidder", + "BIDAO": "Bidao", + "BIDCOM": "Bidcommerce", + "BIDI": "Bidipass", + "BIDR": "Binance IDR Stable Coin", + "BIFI": "Beefy.Finance", + "BIFIF": "BiFi", + "BIG": "Big Eyes", + "BIGHAN": "BighanCoin", + "BIGSB": "BigShortBets", + "BIGUP": "BigUp", + "BIH": "BitHostCoin", + "BIHU": "Key", + "BIKI": "BIKI", + "BILL": "TillBilly", + "BIM": "BitminerCoin", + "BIND": "Compendia", + "BINEM": "Binemon", + "BINGO": "Tomorrowland", + "BINS": "Bitsense", + "BINTEX": "Bintex Futures", + "BIO": "BITONE", + "BIOB": "BioBar", + "BIOC": "BioCrypt", + "BIOCOIN": "Biocoin", + "BIOFI": "Biometric Financial", + "BIOS": "BiosCrypto", + "BIOT": "Bio Passport", + "BIP": "Minter", + "BIPC": "BipCoin", + "BIPX": "Bispex", + "BIRD": "Bird.Money", + "BIRDCHAIN": "Birdchain", + "BIS": "Bismuth", + "BIST": "Bistroo", + "BIT": "BitDAO", + "BIT16": "16BitCoin", + "BITAIR": "Bitair", + "BITASEAN": "BitAsean", + "BITBOOST": "BitBoost", + "BITC": "BitCash", + "BITCAR": "BitCar", + "BITCCA": "Bitcci Cash", + "BITCI": "Bitcicoin", + "BITCM": "Bitcomo", + "BITCNY": "bitCNY", + "BITCOINC": "Bitcoin Classic", + "BITCOINV": "BitcoinV", + "BITCRATIC": "Bitcratic Token", + "BITF": "Bit Financial", + "BITG": "Bitcoin Green", + "BITGOLD": "bitGold", + "BITHER": "Bither", + "BITL": "BitLux", + "BITM": "BitMoney", + "BITN": "Bitcoin Nova", + "BITNEW": "BitNewChain", + "BITOK": "BitOKX", + "BITREWARDS": "BitRewards", + "BITROLIUM": "Bitrolium", + "BITRUE": "Bitrue Coin", + "BITS": "BitstarCoin", + "BITSD": "Bits Digit", + "BITSILVER": "bitSilver", + "BITSPACE": "Bitspace", + "BITSZ": "Bitsz", + "BITT": "BiTToken", + "BITTO": "BITTO", + "BITUSD": "bitUSD", + "BITVOLT": "BitVolt", + "BITX": "BitScreener", + "BITZ": "Bitz Coin", + "BIUT": "Bit Trust System", + "BIVE": "BIZVERSE", + "BIX": "BiboxCoin", + "BIXB": "BIXBCOIN", + "BIZZ": "BIZZCOIN", + "BKBT": "BeeKan", + "BKC": "Balkancoin", + "BKING": "King Arthur", + "BKK": "BKEX Token", + "BKN": "Brickken", + "BKR": "Balkari Token", + "BKRW": "Binance KRW", + "BKS": "Barkis Network", + "BKT": "Blocktrade token", + "BKX": "BANKEX", + "BLA": "BlaBlaGame", + "BLACK": "BLACKHOLE PROTOCOL", + "BLADE": "BladeWarrior", + "BLANK": "Blank Token", + "BLAS": "BlakeStar", + "BLAST": "BLAST", + "BLAZR": "BlazerCoin", + "BLC": "BlakeCoin", + "BLCT": "Bloomzed Loyalty Club Ticket", + "BLD": "Agoric", + "BLES": "Blind Boxes", + "BLHC": "BlackholeCoin", + "BLIN": "Blin Metaverse", + "BLINK": "BlockMason Link", + "BLINU": "Baby Lambo Inu", + "BLITZ": "BlitzCoin", + "BLITZP": "BlitzPredict", + "BLK": "BlackCoin", + "BLKC": "BlackHat Coin", + "BLKD": "Blinked", + "BLKS": "Blockshipping", + "BLN": "Bulleon", + "BLNM": "Bolenum", + "BLOC": "Blockcloud", + "BLOCK": "Blockasset", + "BLOCKIFY": "Blockify.Games", + "BLOCKN": "BlockNet", + "BLOCKPAY": "BlockPay", + "BLOCKS": "BLOCKS", + "BLOCKSTAMP": "BlockStamp", + "BLOCM": "BLOC.MONEY", + "BLOK": "Bloktopia", + "BLOODY": "Bloody Token", + "BLOOMT": "Bloom Token", + "BLP": "BullPerks", + "BLRY": "BillaryCoin", + "BLS": "Blocks Space", + "BLST": "Crypto Legions Bloodstone", + "BLT": "Blocto Token", + "BLTG": "Block-Logic", + "BLTV": "BLTV Token", + "BLU": "BlueCoin", + "BLUE": "Ethereum Blue", + "BLUESPARROW": "BlueSparrow Token", + "BLUESPARROWOLD": "BlueSparrowToken", + "BLUR": "Blur", + "BLURT": "Blurt", + "BLUT": "Bluetherium", + "BLV": "Blockvest", + "BLV3": "Crypto Legions V3", + "BLWA": "BlockWarrior", + "BLX": "Balloon-X", + "BLXM": "bloXmove Token", + "BLY": "Blocery", + "BLZ": "Bluzelle", + "BLZD": "Blizzard.money", + "BM": "BitMoon", + "BMARS": "Binamars", + "BMC": "Blackmoon Crypto", + "BME": "BitcoMine", + "BMEX": "BitMEX", + "BMG": "Borneo", + "BMH": "BlockMesh", + "BMI": "Bridge Mutual", + "BMIC": "Bitmic", + "BMK": "Benchmark", + "BMON": "Binamon", + "BMP": "Brother Music Platform", + "BMT": "BMChain", + "BMX": "BitMart Token", + "BMXT": "Bitmxittz", + "BMXX": "Multiplier", + "BNA": "BananaTok", + "BNANA": "Chimpion", + "BNB": "Binance Coin", + "BNBCH": "BNB Cash", + "BNBH": "BnbHeroes Token", + "BNC": "Bifrost Native Coin", + "BND": "Bened", + "BNF": "BonFi", + "BNIX": "BNIX Token", + "BNK": "Bankera", + "BNN": "Banyan Network", + "BNP": "BenePit", + "BNPL": "BNPL Pay", + "BNR": "BiNeuro", + "BNRTX": "BnrtxCoin", + "BNS": "BNS token", + "BNSD": "BNSD Finance", + "BNSOLD": "BNS token ", + "BNT": "Bancor Network Token", + "BNTE": "Bountie", + "BNTN": "Blocnation", + "BNTY": "Bounty0x", + "BNX": "BinaryX", + "BOA": "BOSAGORA", + "BOAT": "Doubloon", + "BOBA": "Boba Network", + "BOBC": "Bobcoin", + "BOBS": "Bob's Repair", + "BOBT": "BOB Token", + "BODHI": "Bodhi Network", + "BODYP": "Body Profile", + "BOE": "Bodhi", + "BOG": "Bogged Finance", + "BOGCOIN": "Bogcoin", + "BOJI": "BOJI Token", + "BOK": "Blockium", + "BOLD": "Bold", + "BOLI": "BolivarCoin", + "BOLT": "Bolt", + "BOLTT": "BolttCoin", + "BOMB": "BOMB", + "BOMBC": "BombCoin", + "BOMBM": "Bomb Money", + "BON": "Bonpay", + "BONA": "Bonafi", + "BOND": "BarnBridge", + "BONDLY": "Bondly", + "BONE": "Bone ShibaSwap", + "BONES": "BonesCoin", + "BONIX": "Blockonix", + "BONK": "Bonk", + "BONO": "Bonorum Coin", + "BONTE": "Bontecoin", + "BONUSCAKE": "Bonus Cake", + "BOO": "Spookyswap", + "BOOB": "BooBank", + "BOOM": "Boom Token", + "BOONS": "BOONSCoin", + "BOOST": "Boost", + "BOOSTO": "BOOSTO", + "BOR": "BoringDAO", + "BORA": "BORA", + "BORED": "Bored Museum", + "BORING": "BoringDAO", + "BORUTO": "Boruto Inu", + "BOS": "BOScoin", + "BOSE": "Bitbose", + "BOSON": "Boson Protocol", + "BOSONC": "BosonCoin", + "BOSS": "BitBoss", + "BOST": "BoostCoin", + "BOSU": "Bosu Inu", + "BOT": "Bot Planet", + "BOTC": "BotChain", + "BOTS": "ArkDAO", + "BOTTO": "Botto", + "BOTX": "BOTXCOIN", + "BOU": "Boulle", + "BOUNCE": "Bounce Token", + "BOUTS": "BoutsPro", + "BOX": "ContentBox", + "BOXT": "BOX Token", + "BOXX": "Blockparty", + "BOXY": "BoxyCoin", + "BP": "BunnyPark", + "BPAD": "BlokPad", + "BPAY": "BNBPay", + "BPL": "BlockPool", + "BPLC": "BlackPearl Token", + "BPN": "beepnow", + "BPRIVA": "Privapp Network", + "BPRO": "BitCloud Pro", + "BPS": "BitcoinPoS", + "BPT": "BlackPool Token", + "BPTC": "Business Platform Tomato Coin", + "BPX": "Black Phoenix", + "BQ": "Bitqy", + "BQC": "BQCoin", + "BQQQ": "Bitsdaq Token", + "BQT": "Blockchain Quotations Index Token", + "BQTX": "BQT", + "BRAIN": "BrainCoin", + "BRAND": "BrandProtect", + "BRAT": "BROTHER", + "BRAZ": "Brazio", + "BRC": "Baer Chain", + "BRCP": "BRCP Token", + "BRD": "Bread token", + "BRDD": "BeardDollars", + "BRDG": "Bridge Protocol", + "BREE": "CBDAO", + "BREED": "BreederDAO", + "BREW": "CafeSwap Token", + "BRG": "Bridge Oracle", + "BRGX": "Bridge$", + "BRI": "Baroin", + "BRIA": "Briacoin", + "BRIC": "BrightCoin", + "BRICK": "Brickchain FInance", + "BRIGHT": "Bright Token", + "BRIGHTU": "Bright Union", + "BRIK": "BrikBit", + "BRISE": "Bitgert", + "BRIT": "BritCoin", + "BRITTO": "Britto", + "BRIX": "OpenBrix", + "BRK": "BreakoutCoin", + "BRKL": "Brokoli Token", + "BRMV": "BRMV Token", + "BRN": "BRN Metaverse", + "BRNK": "Brank", + "BRNX": "Bronix", + "BRO": "Bitradio", + "BROCK": "Bitrock", + "BRONZ": "BitBronze", + "BRT": "Bikerush", + "BRTR": "Barter", + "BRTX": "Bertinity", + "BRWL": "Blockchain Brawlers", + "BRX": "Breakout Stake", + "BRY": "Berry Data", + "BRYLL": "Bryllite", + "BRZ": "Brazilian Digital Token", + "BRZE": "Breezecoin", + "BRZN": "Brayzin", + "BS": "BlackShadowCoin", + "BSAFE": "BlockSafe", + "BSATOSHI": "BabySatoshi", + "BSC": "BowsCoin", + "BSCGIRL": "Binance Smart Chain Girl", + "BSCH": "BitSchool", + "BSCM": "BSC MemePad", + "BSCPAD": "BSCPAD", + "BSCS": "BSC Station", + "BSCV": "Bscview", + "BSE": "BitSerial", + "BSEND": "BitSend", + "BSGG": "Betswap.gg", + "BSGS": "Basis Gold Share", + "BSI": "Bali Social Integrated", + "BSKT": "BasketCoin", + "BSL": "BankSocial", + "BSOV": "BitcoinSoV", + "BSP": "BallSwap", + "BSPM": "Bitcoin Supreme", + "BSR": "BitSoar Coin", + "BST": "Beshare Token", + "BSTAR": "Blackstar", + "BSTK": "BattleStake", + "BSTN": "BitStation", + "BSTY": "GlobalBoost", + "BSV": "Bitcoin SV", + "BSW": "Biswap", + "BSX": "Basilisk", + "BSYS": "BSYS", + "BT": "BT.Finance", + "BT1": "Bitfinex Bitcoin Future", + "BT2": "Bitcoin SegWit2X", + "BTA": "Bata", + "BTB": "BitBar", + "BTBL": "Bitball", + "BTBS": "BitBase Token", + "BTC": "Bitcoin", + "BTC2": "Bitcoin 2", + "BTCA": "BITCOIN ADDITIONAL", + "BTCAS": "BitcoinAsia", + "BTCB": "Bitcoin BEP2", + "BTCBR": "Bitcoin BR", + "BTCC": "Bitcoin Core", + "BTCD": "BitcoinDark", + "BTCE": "EthereumBitcoin", + "BTCEX": "BtcEX", + "BTCF": "BitcoinFile", + "BTCGO": "BitcoinGo", + "BTCH": "Bitcoin Hush", + "BTCHD": "Bitcoin HD", + "BTCK": "Bitcoin Turbo Koin", + "BTCL": "BTC Lite", + "BTCM": "BTCMoon", + "BTCN": "BitcoiNote", + "BTCP": "Bitcoin Private", + "BTCPAY": "Bitcoin Pay", + "BTCPX": "BTC Proxy", + "BTCR": "BitCurrency", + "BTCRED": "Bitcoin Red", + "BTCRY": "BitCrystal", + "BTCS": "Bitcoin Scrypt", + "BTCST": "BTC Standard Hashrate Token", + "BTCT": "Bitcoin Token", + "BTCUS": "Bitcoinus", + "BTCV": "Bitcoin Vault", + "BTCZ": "BitcoinZ", + "BTD": "Bitcloud", + "BTDX": "Bitcloud 2.0", + "BTE": "BTEcoin", + "BTF": "Blockchain Traded Fund", + "BTFA": "Banana Task Force Ape", + "BTG": "Bitcoin Gold", + "BTH": "Bithereum", + "BTK": "Bostoken", + "BTL": "Bitlocus", + "BTLC": "BitLuckCoin", + "BTM": "Bytom", + "BTMG": "Bitcademy Football", + "BTMI": "BitMiles", + "BTMK": "BitMark", + "BTMXBULL": "3X Long BitMax Token Token", + "BTN": "Bittron", + "BTNT": "BitNautic", + "BTNYX": "BitOnyx Token", + "BTO": "Bottos", + "BTPL": "Bitcoin Planet", + "BTQ": "BitQuark", + "BTR": "BTRIPS", + "BTRFLY": "Redacted Cartel", + "BTRM": "Betrium Token", + "BTRN": "Biotron", + "BTRS": "Bitball Treasure", + "BTRST": "Braintrust", + "BTS": "Bitshares", + "BTSC": "BTS Chain", + "BTSE": "BTSE Token", + "BTSG": "BitSong", + "BTT": "BitTorrent", + "BTTF": "Coin to the Future", + "BTTOLD": "BitTorrent", + "BTTR": "BitTiger", + "BTU": "BTU Protocol", + "BTV": "Bitvote", + "BTW": "BitWhite", + "BTX": "BitCore", + "BTXC": "Bettex coin", + "BTY": "Bityuan", + "BTZ": "BitzCoin", + "BTZC": "BeatzCoin", + "BTZN": "Bitzon", + "BU": "BUMO", + "BUBO": "Budbo", + "BUC": "Beau Cat", + "BUCKS": "SwagBucks", + "BUD": "Buddy", + "BUFF": "Buffalo Swap", + "BUFFDOGE": "Buff Doge", + "BUGG": "Bugg Inu", + "BUILDIN": "Buildin Token", + "BUILDTEAM": "BuildTeam", + "BUK": "CryptoBuk", + "BULL": "Bullieverse", + "BULLC": "BuySell", + "BULLION": "BullionFX", + "BULLS": "Bull Coin", + "BULLSH": "Bullshit Inu", + "BUMN": "BUMooN", + "BUMP": "Bumper", + "BUN": "BunnyCoin", + "BUNNY": "Pancake Bunny", + "BUNNYROCKET": "BunnyRocket", + "BURGER": "Burger Swap", + "BURN": "Bitburn", + "BURNDOGE": "BurnDoge", + "BURP": "CoinBurp", + "BUSD": "Binance USD", + "BUSDC": "BUSD", + "BUSY": "Busy DAO", + "BUT": "BitUP Token", + "BUX": "BUX", + "BUXCOIN": "Buxcoin", + "BUY": "Burency", + "BUYI": "Buying.com", + "BUZZ": "BuzzCoin", + "BVC": "BeaverCoin", + "BVND": "Binance VND", + "BVO": "BRAVO Pay", + "BWB": "Bit World Token", + "BWF": "Beowulf", + "BWK": "Bulwark", + "BWN": "BitWings", + "BWO": "Battle World", + "BWS": "BitcoinWSpectrum", + "BWT": "Bittwatt", + "BWT2": "Bitwin 2.0", + "BWX": "Blue Whale", + "BX": "BlockXpress", + "BXA": "Blockchain Exchange Alliance", + "BXC": "BonusCloud", + "BXF": "BlackFort Token", + "BXH": "BXH", + "BXK": "Bitbook Gambling", + "BXT": "BitTokens", + "BXTB": "BXTB Foundation", + "BXX": "Baanx", + "BXY": "Beaxy", + "BYC": "ByteCent", + "BYTHER": "Bytether ", + "BYTS": "Bytus", + "BYTZ": "BYTZ", + "BZ": "Bit-Z", + "BZENIQ": "Wrapped Zeniq (BNB)", + "BZKY": "Bizkey", + "BZL": "BZLCoin", + "BZNT": "Bezant", + "BZRX": "bZx Protocol", + "BZX": "Bitcoin Zero", + "BZZ": "Swarmv", + "BZZONE": "Bzzone", + "BamitCoin": "BAM", + "C2": "Coin.2", + "C20": "Crypto20", + "C25": "C25 Coin", + "C2X": "C2X", + "C3": "Charli3", + "C98": "Coin98", + "CAAVE": "cAAVE", + "CAB": "CabbageUnit", + "CABS": "CryptoABS", + "CACH": "Cachecoin", + "CACHE": "Cache", + "CACHEGOLD": "CACHE Gold", + "CADN": "Content and AD Network", + "CADX": "eToro Canadian Dollar", + "CAG": "Change", + "CAI": "Cai Token", + "CAID": "ClearAid", + "CAIX": "CAIx", + "CAIZ": "Caizcoin", + "CAKE": "PancakeSwap", + "CAKEMOON": "CakeMoon", + "CALC": "CaliphCoin", + "CALI": "CaliCoin", + "CALL": "Global Crypto Alliance", + "CALO": "Calo", + "CAM": "Consumption Avatar Matrix", + "CAMC": "Camcoin", + "CAMP": "Camp", + "CAN": "Channels", + "CAND": "Canary Dollar", + "CANDY": "UnicornGo Candy", + "CANN": "CannabisCoin", + "CANTI": "Cantina Royale", + "CANYA": "CanYaCoin", + "CAP": "BottleCaps", + "CAPD": "Capdax", + "CAPP": "Cappasity", + "CAPRICOIN": "CapriCoin", + "CAPS": "Ternoa", + "CAPT": "Bitcoin Captain", + "CAPTAINPLANET": "Captain Planet", + "CAR": "CarBlock", + "CARAT": "Carats Token", + "CARBON": "Carboncoin", + "CARD": "Cardstack", + "CARDS": "Cardstarter", + "CARE": "Carebit", + "CARES": "CareCoin", + "CARPE": "CarpeDiemCoin", + "CARR": "Carnomaly", + "CARROT": "CarrotSwap", + "CART": "CryptoArt.Ai", + "CARTAXI": "CarTaxi", + "CARTERCOIN": "CarterCoin", + "CAS": "Cashaa", + "CASH": "CashCoin", + "CASHT": "Cash Tech", + "CASIO": "CasinoXMetaverse", + "CASPER": "Casper DeFi", + "CAST": "Castello Coin", + "CASTLE": "bitCastle", + "CAT": "Cat Token", + "CATC": "Catcoin", + "CATCOIN": "CatCoin Cash", + "CATE": "CateCoin", + "CATGIRL": "Catgirl", + "CATHEON": "Catheon Gaming", + "CATS": "CatCoin Token", + "CATT": "Catex", + "CATX": "CAT.trade Protocol", + "CATZ": "CatzCoin", + "CAVA": "Cavapoo", + "CAVO": "Excavo Finance", + "CAW": "A Hunters Dream", + "CB": "COINBIG", + "CBANK": "Crypto Bank", + "CBAT": "Compound Basic Attention Token", + "CBC": "Casino Betting Coin", + "CBD": "CBD Crystals", + "CBDC": "CannaBCoin", + "CBE": "The Chain of Business Entertainment", + "CBETH": "Coinbase Wrapped Staked ETH", + "CBFT": "CoinBene Future Token", + "CBG": "Chainbing", + "CBK": "Cobak Token", + "CBM": "CryptoBonusMiles", + "CBNT": "Create Breaking News Together", + "CBOT": "C-BOT", + "CBP": "ComBox", + "CBRL": "Crypto BRL", + "CBRT": "Cybereits Token", + "CBS": "Cerberus", + "CBSN": "BlockSwap Network", + "CBT": "CommerceBlock Token", + "CBUCKS": "CRYPTOBUCKS", + "CBUK": "CurveBlock", + "CBX": "CropBytes", + "CC": "CloudChat", + "CC10": "Cryptocurrency Top 10 Tokens Index", + "CCA": "CCA", + "CCAKE": "CheeseCake Swap", + "CCAR": "CryptoCars", + "CCC": "CCCoin", + "CCCX": "Clipper Coin Capital", + "CCD": "Concordium", + "CCE": "CloudCoin", + "CCH": "Coinchase", + "CCI": "Cyber Capital Invest", + "CCIN": "Cryptocoin Insurance", + "CCL": "CyClean", + "CCN": "CannaCoin", + "CCO": "Ccore", + "CCOIN": "Creditcoin", + "CCOMM": "Crypto Commonwealth", + "CCOMP": "cCOMP", + "CCOS": "CrowdCoinage", + "CCP": "CryptoCoinPay", + "CCRB": "CryptoCarbon", + "CCT": "Carbon Credit", + "CCTN": "Connectchain", + "CCX": "Conceal", + "CCXC": "CoolinDarkCoin", + "CCXX": "CounosX", + "CDAI": "Compound Dai", + "CDEX": "Cryptodex", + "CDL": "CoinDeal Token", + "CDN": "Canada eCoin", + "CDPT": "Creditor Data Platform", + "CDRX": "CDRX", + "CDX": "CDX Network", + "CDY": "Bitcoin Candy", + "CEDEX": "CEDEX Coin", + "CEEK": "CEEK Smart VR Token", + "CEFS": "CryptopiaFeeShares", + "CEJI": "Ceji", + "CEL": "Celsius Network", + "CELEB": "CELEBPLUS", + "CELL": "Cellframe", + "CELO": "Celo", + "CELOUSD": "Celo Dollar", + "CELR": "Celer Network", + "CELT": "Celestial", + "CEM": "Crypto Emergency", + "CEN": "Coinsuper Ecosystem Network", + "CENNZ": "Centrality Token", + "CENT": "CENTERCOIN", + "CENTRA": "Centra", + "CENX": "Centcex", + "CERE": "Cere Network", + "CESC": "Crypto Escudo", + "CET": "CoinEx Token", + "CETH": "Compound Ethereum", + "CETI": "CETUS Coin", + "CEUR": "Celo Euro", + "CF": "Californium", + "CFC": "CoinField Coin", + "CFD": "Confido", + "CFF": "Coffe", + "CFG": "Centrifuge", + "CFI": "Cofound.it", + "CFL365": "CFL365 Finance", + "CFLASH": "Flash", + "CFLO": "Chain Flowers", + "CFT": "CryptoForecast", + "CFTY": "Crafty", + "CFX": "Conflux Network", + "CFXQ": "CFX Quantum", + "CFXT": "Chainflix", + "CFun": "CFun", + "CGA": "Cryptographic Anomaly", + "CGG": "Chain Guardians", + "CGLD": "Celo Gold", + "CGO": "Comtech Gold", + "CGPT": "ChainGPT", + "CGS": "Crypto Gladiator Shards", + "CGT": "Coin Gabbar Token", + "CGU": "Crypto Gaming United", + "CHA": "Charity Coin", + "CHADS": "CHADS VC", + "CHAIN": "Chain Games", + "CHAINCADE": "ChainCade", + "CHAL": "Chalice Finance", + "CHAMP": "NFT Champions", + "CHAN": "ChanCoin", + "CHANGE": "ChangeX", + "CHAO": "23 Skidoo", + "CHARIZARD": "Charizard Inu", + "CHARM": "Charm Coin", + "CHARS": "CHARS", + "CHART": "BetOnChart", + "CHASH": "CleverHash", + "CHAT": "OpenChat", + "CHBR": "CryptoHub", + "CHC": "ChainCoin", + "CHECK": "Paycheck", + "CHECKR": "CheckerChain", + "CHECOIN": "CheCoin", + "CHEDDA": "Chedda", + "CHEEL": "Cheelee", + "CHEESE": "CHEESE", + "CHEESUS": "Cheesus", + "CHEQ": "CHEQD Network", + "CHER": "Cherry Network", + "CHERRY": "CherrySwap", + "CHESS": "Tranchess", + "CHESSCOIN": "ChessCoin", + "CHEX": "Chintai", + "CHFN": "NOKU CHF", + "CHFT": "Crypto Holding", + "CHFX": "eToro Swiss Franc", + "CHI": "Chi Gastoken", + "CHICKS": "SolChicks", + "CHIEF": "TheChiefCoin", + "CHIHUA": "Chihua Token", + "CHILD": "ChildCoin", + "CHINU": "Chubby Inu", + "CHIP": "Chip", + "CHIPS": "CHIPS", + "CHIRP": "Chirp", + "CHIWAWA": "Chiwawa", + "CHK": "Chek", + "CHLT": "Chellitcoin", + "CHMB": "Chumbi Valley", + "CHN": "Chain", + "CHNG": "Chainge Finance", + "CHO": "Choise", + "CHONK": "Chonk", + "CHOOF": "ChoofCoin", + "CHOPPER": "Chopper Inu", + "CHOW": "Chow Chow Finance", + "CHP": "CoinPoker Token", + "CHR": "Chroma", + "CHRP": "Chirpley", + "CHS": "Chainsquare", + "CHSB": "SwissBorg", + "CHT": "Countinghouse Fund", + "CHVF": "Chives Finance", + "CHW": "Chrysalis Coin", + "CHX": "Own", + "CHY": "Concern Poverty Chain", + "CHZ": "Chiliz", + "CIC": "Crazy Internet Coin", + "CICHAIN": "CIChain", + "CIF": "Crypto Improvement Fund", + "CIM": "COINCOME", + "CIN": "CinderCoin", + "CIND": "Cindrum", + "CINNI": "CINNICOIN", + "CINU": "CHEEMS INU", + "CINX": "CINDX", + "CIPHC": "Cipher Core Token", + "CIR": "CircuitCoin", + "CIRC": "CryptoCircuits", + "CIRUS": "Cirus", + "CITY": "Manchester City Fan Token", + "CIV": "Civilization", + "CIVIT": "Civitas Protocol", + "CIX": "Cryptonetix", + "CIX100": "Cryptoindex", + "CJ": "CryptoJacks", + "CJC": "CryptoJournal", + "CJR": "Conjure", + "CJT": "ConnectJob Token", + "CKB": "Nervos Network", + "CKC": "Clockcoin", + "CKEK": "CryptoKek", + "CKT": "Caketools", + "CKUSD": "CKUSD", + "CL": "CoinLancer", + "CLAM": "CLAMS", + "CLB": "Cloudbric", + "CLD": "Cloud", + "CLDX": "Cloverdex", + "CLEARPOLL": "ClearPoll", + "CLEG": "Chain of Legends", + "CLEVERCOIN": "CleverCoin", + "CLH": "ClearDAO", + "CLICK": "Clickcoin", + "CLIFF": "Clifford Inu", + "CLIN": "Clinicoin", + "CLINK": "cLINK", + "CLINT": "Clinton", + "CLIQ": "DefiCliq", + "CLIST": "Chainlist", + "CLM": "CoinClaim", + "CLN": "Colu Local Network", + "CLNY": "Colony", + "CLO": "Callisto Network", + "CLOAK": "CloakCoin", + "CLOUD": "Metacloud", + "CLOUT": "BitClout", + "CLOUTIO": "Clout", + "CLPX": "Chynge.net", + "CLR": "CopperLark", + "CLRTY": "Clarity", + "CLS": "Coldstack", + "CLT": "CoinLoan", + "CLU": "CluCoin", + "CLUB": "ClubCoin", + "CLUD": "CludCoin", + "CLV": "Clover Finance", + "CLVA": "Clever DeFi", + "CLVX": "Calvex", + "CLY": "Colony", + "CMA": "Crypto Market Ads", + "CMC": "CosmosCoin", + "CMCT": "Crowd Machine", + "CMCX": "CORE MultiChain", + "CMERGE": "CoinMerge", + "CMK": "Credmark", + "CMKR": "cMKR", + "CML": "Camelcoin", + "CMM": "Commercium", + "CMN": "Crypto Media Network", + "CMOS": "CoinMerge OS", + "CMP": "Caduceus", + "CMPCO": "CampusCoin", + "CMQ": "Communique", + "CMS": "COMSA", + "CMSN": "The Commission", + "CMT": "CyberMiles", + "CMTC": "CometCoin", + "CMZ": "CRYPTOMAGZ", + "CNAB": "Cannabium", + "CNB": "Coinsbit Token", + "CNBC": "Cash & Back Coin", + "CNC": "ChinaCoin", + "CNCT": "CONNECT", + "CND": "Cindicator", + "CNDL": "Candle", + "CNFI": "Connect Financial", + "CNG": "Changer", + "CNHT": "Tether CNH", + "CNL": "ConcealCoin", + "CNMT": "Coinomat", + "CNN": "Content Neutrality Network", + "CNNS": "CNNS", + "CNO": "Coino", + "CNRG": "CryptoEnergy", + "CNS": "Centric Cash", + "CNT": "Centurion", + "CNTM": "Connectome", + "CNTR": "Centaur", + "CNUS": "CoinUs", + "CNX": "Cryptonex", + "CNYT": "CNY Tether", + "CNYX": "eToro Chinese Yuan", + "CO2": "CO2 Token", + "COAL": "BitCoal", + "COB": "Cobinhood", + "COC": "Coin of the champions", + "COCK": "Shibacock", + "CODEO": "Codeo Token", + "CODEX": "CODEX Finance", + "CODI": "Codi Finance", + "CODY": "Coindy", + "COE": "CoEval", + "COFFEECOIN": "CoffeeCoin", + "COFI": "CoinFi", + "COFIX": "CoFIX", + "COG": "Cognitio", + "COGE": "Cogecoin", + "COGEN": "Cogenero", + "COGS": "Cogmento", + "COI": "Coinnec", + "COINDEFI": "Coin", + "COING": "Coingrid", + "COINLION": "CoinLion", + "COINSCOPE": "Coinscope", + "COINSL": "CoinsLoot", + "COINVEST": "Coinvest", + "COKE": "Cocaine Cowboy Shards", + "COL": "Clash of Lilliput", + "COLA": "Cola", + "COLL": "Collateral Pay", + "COLLG": "Collateral Pay Governance", + "COLR": "colR Coin", + "COLX": "ColossusCoinXT", + "COM": "Coliseum", + "COMB": "Combo", + "COMBO": "COMBO", + "COMFI": "CompliFi", + "COMM": "Community Coin", + "COMMUNITYCOIN": "Community Coin", + "COMP": "Compound Governance Token", + "COMPCOIN": "Compcoin", + "COMPD": "Compound Coin", + "COMT": "Community Token", + "CONDENSATE": "Condensate", + "CONG": "The Conglomerate Capital", + "CONI": "CoinBene", + "CONS": "ConSpiracy Coin", + "CONSENTIUM": "Consentium", + "CONUN": "CONUN", + "CONV": "Convergence", + "COOK": "Cook", + "COOL": "CoolCoin", + "COOP": "Coop Network", + "COPE": "Cope", + "COPI": "Cornucopias", + "COPS": "Cops Finance", + "COR": "Corion", + "CORAL": "CoralPay", + "CORE": "Core", + "COREDAO": "coreDAO", + "COREG": "Core Group Asset", + "COREUM": "Coreum", + "CORGI": "Corgi Inu", + "CORN": "CORN", + "CORX": "CorionX", + "COS": "Contentos", + "COSHI": "CoShi Inu", + "COSM": "CosmoChain", + "COSMIC": "CosmicSwap", + "COSP": "Cosplay Token", + "COSS": "COS", + "COSX": "Cosmecoin", + "COT": "CoTrader", + "COTI": "COTI", + "COU": "Couchain", + "COUNOS": "Counos Coin", + "COV": "Covesting", + "COVA": "COVA", + "COVAL": "Circuits of Value", + "COVER": "Cover Protocol", + "COVEROLD": " Cover Protocol (old)", + "COVEX": "CoVEX", + "COVIDTOKEN": "Covid Token", + "COVIR": "COVIR", + "COVN": "Covenant", + "COW": "CoW Protocol", + "COX": "CobraCoin", + "COY": "Coin Analyst", + "COZP": "COZPlus", + "CP": "CoPuppy", + "CPAD": "Cronospad", + "CPAN": "CryptoPlanes", + "CPAY": "CryptoPay", + "CPC": "CPChain", + "CPCOIN": "CPCoin", + "CPD": "CoinsPaid", + "CPEX": "CoinPulseToken", + "CPH": "Cypherium", + "CPI": "Crypto Price Index", + "CPL": "CoinPlace Token", + "CPLO": "Cpollo", + "CPN": "CompuCoin", + "CPO": "Cryptopolis", + "CPOOL": "Clearpool", + "CPROP": "CPROP", + "CPRX": "Crypto Perx", + "CPS": "Cryptostone", + "CPT": "Cryptaur", + "CPU": "CPUcoin", + "CPX": "Apex Token", + "CPY": "COPYTRACK", + "CQST": "ConquestCoin", + "CQT": "Covalent", + "CR": "CryptoRiyal", + "CR8": "Crazy8Token", + "CRA": "Crabada", + "CRAB": "CrabCoin", + "CRACK": "CrackCoin", + "CRADLE": "Cradle of Sins", + "CRAFT": "TaleCraft", + "CRAFTCOIN": "Craftcoin", + "CRAIG": "CraigsCoin", + "CRAMER": "Cramer Coin", + "CRANEPAY": "Cranepay", + "CRAVE": "CraveCoin", + "CRB": "Creditbit", + "CRBN": "Carbon", + "CRC": "CryCash", + "CRD": "CRD Network", + "CRDN": "Cardence", + "CRDNC": "Credence Coin", + "CRDS": "Credits", + "CRDT": "CRDT", + "CRDTS": "Credits", + "CRE": "Carry", + "CREA": "CreativeChain", + "CREAM": "Cream", + "CREATIVE": "Creative Token", + "CRED": "Verify", + "CREDI": "Credefi", + "CREDIT": "Credit", + "CREDITS": "Credits", + "CREDO": "Credo", + "CREED": "Thecreed", + "CREO": "Creo Engine", + "CREP": "Compound Augur", + "CRES": "Cresio", + "CREV": "CryptoRevolution", + "CREVA": "Creva Coin", + "CRF": "Crafting Finance", + "CRFI": "CrossFi", + "CRGO": "CargoCoin", + "CRIME": "Crime Gold", + "CRL": "Cryptelo Coin", + "CRM": "Cream", + "CRNK": "CrankCoin", + "CRO": "Cronos", + "CROAT": "Croat", + "CROGE": "Crogecoin", + "CRON": "Cryptocean", + "CROPPER": "CropperFinance", + "CROWD": "CrowdCoin", + "CROWDWIZ": "Crowdwiz", + "CRP": "Crypton", + "CRPS": "CryptoPennies", + "CRPT": "Crypterium", + "CRS": "CRYSTALS", + "CRSP": "CryptoSpots", + "CRT": "Carr.Finance", + "CRTM": "Cryptum", + "CRTS": "Cratos", + "CRU": "Crust Network", + "CRV": "Curve DAO Token", + "CRVUSD": "crvUSD", + "CRW": "Crown Coin", + "CRWD": "CRWD Network", + "CRWNY": "Crowny Token", + "CRX": "ChronosCoin", + "CRYP": "CrypticCoin", + "CRYPT": "CryptCoin", + "CRYPTOBULLION": "CryptoBullion", + "CRYPTOE": "Cryptoenter", + "CRYPTONITE": "Cryptonite", + "CRYPTOPRO": "CryptoProfile", + "CRYSTALCLEAR": "Crystal Clear Token", + "CSAC": "Credit Safe Application Chain", + "CSAI": "Compound SAI", + "CSC": "CasinoCoin", + "CSEN": "Consensus", + "CSH": "CashOut", + "CSM": "Crust Shadow", + "CSMIC": "Cosmic", + "CSNO": "BitDice", + "CSNP": "CrowdSale Network", + "CSOV": "Crown Sovereign", + "CSP": "Caspian", + "CSPN": "Crypto Sports", + "CSPR": "Casper Network", + "CSQ": "cosquare", + "CSR": "Cashera", + "CSS": "CoinSwap Token", + "CSTC": "CryptosTribe", + "CSTL": "Castle", + "CSTR": "CoreStarter", + "CSUSHI": "cSUSHI", + "CSWAP": "CardSwap", + "CSX": "Coinstox", + "CTAG": "CTAGtoken", + "CTASK": "CryptoTask", + "CTC": "Creditcoin", + "CTCN": "Contracoin", + "CTE": "Crypto Tron", + "CTF": "CyberTime Finance", + "CTI": "ClinTex CTi", + "CTIC": "Coinmatic", + "CTK": "Shentu", + "CTKN": "Curaizon", + "CTL": "Citadel", + "CTLX": "Cash Telex", + "CTN": "Continuum Finance", + "CTO": "Crypto", + "CTP": "Ctomorrow Platform", + "CTPL": "Cultiplan", + "CTPT": "Contents Protocol", + "CTR": "Creator Platform", + "CTS": "Citrus", + "CTSI": "Cartesi", + "CTT": "Castweet", + "CTW": "Citowise", + "CTX": "Cryptex", + "CTXC": "Cortex", + "CTY": "Connecty", + "CUBE": "Cube Network", + "CUBEAUTO": "Cube", + "CUDOS": "Cudos", + "CUE": "CUE Protocol", + "CUEX": "Cuex", + "CULT": "Cult DAO", + "CUMMIES": "CumRocket", + "CUNI": "Compound Uni", + "CURA": "Cura Network", + "CURE": "Curecoin", + "CURI": "Curium", + "CURIO": "Curio Governance", + "CURRY": "CurrySwap", + "CUSD": "Carbon", + "CUSDC": "Compound USD Coin", + "CUSDT": "cUSDT", + "CUSDTBULL": "3X Long Compound USDT Token", + "CUST": "Custody Token", + "CUT": "CUTcoin", + "CUTE": "Blockchain Cuties Universe", + "CUZ": "Cool Cousin", + "CV": "CarVertical", + "CVA": "Crypto Village Accelerator", + "CVAG": "Crypto Village Accelerator CVAG", + "CVAULT": "cVault.finance", + "CVC": "Civic", + "CVCC": "CryptoVerificationCoin", + "CVCOIN": "Crypviser", + "CVNC": "CovenCoin", + "CVNG": "Crave-NG", + "CVNT": "Conscious Value Network", + "CVP": "PowerPool Concentrated Voting Power", + "CVPT": "Concentrated Voting Power", + "CVR": "Polkacover", + "CVS": "CoinVisa", + "CVT": "CyberVein", + "CVTC": "CavatCoin", + "CVX": "Convex Finance", + "CVXCRV": "Convex CRV", + "CW": "CardWallet", + "CWAR": "Cryowar Token", + "CWBTC": "Compound Wrapped BTC", + "CWD": "CROWD", + "CWEB": "Coinweb", + "CWEX": "Crypto Wine Exchange", + "CWIS": "Crypto Wisdom Coin", + "CWN": "CryptoWorldNews", + "CWR": "Cowrium", + "CWS": "Crowns", + "CWT": "CrossWallet", + "CWV": "CryptoWave", + "CWX": "Crypto-X", + "CWXT": "CryptoWorldXToken", + "CXA": "CryptovationX", + "CXC": "CheckCoin", + "CXCELL": "CAPITAL X CELL", + "CXG": "Coinxes", + "CXO": "CargoX", + "CXP": "Caixa Pay", + "CXPAD": "CoinxPad", + "CXT": "Coinonat", + "CYBER": "CyberWay", + "CYBERC": "CyberCoin", + "CYBERD": "Cyber Doge", + "CYBR": "CYBR", + "CYC": "Cyclone Protocol", + "CYCE": "Crypto Carbon Energy", + "CYCLUB": "Cyclub", + "CYDER": "Cyder Coin", + "CYFI": "cYFI", + "CYG": "Cygnus", + "CYL": "Crystal Token", + "CYOP": "CyOp Protocol", + "CYP": "CypherPunkCoin", + "CYRS": "Cyrus Token", + "CYS": "BlooCYS", + "CYT": "Cryptokenz", + "CZC": "Crazy Coin", + "CZR": "CanonChain", + "CZRX": "Compound 0x", + "CZZ": "ClassZZ", + "D": "Denarius", + "D11": "DeFi11", + "D4RK": "DarkPayCoin", + "DAB": "DABANKING", + "DAC": "Davinci Coin", + "DACASH": "DACash", + "DACC": "Decentralized Accessible Content Chain", + "DACC2": "DACC2", + "DACH": "DACH Coin", + "DACS": "Dacsee", + "DACXI": "Dacxi", + "DAD": "DAD", + "DADDYDOGE": "Daddy Doge", + "DADI": "Edge", + "DAF": "DaFIN", + "DAFI": "Dafi Protocol", + "DAFT": "DaftCoin", + "DAG": "Constellation", + "DAGO": "Dago Mining", + "DAGT": "Digital Asset Guarantee Token", + "DAI": "Dai", + "DAILY": "Coindaily", + "DAIN": "Dain Token", + "DAIQ": "Daiquilibrium", + "DAL": "DAOLaunch", + "DALI": "Dalichain", + "DAM": "Datamine", + "DAMEX": "DAMEX", + "DAMO": "Coinzen", + "DAN": "Daneel", + "DANA": "Ardana", + "DANK": "DarkKush", + "DAO": "DAO Maker", + "DAOACT": "ACT", + "DAOB": "DAOBet", + "DAOVC": "DAO.VC", + "DAOX": "Daox", + "DAPP": "LiquidApps", + "DAPPT": "Dapp Token", + "DAPPX": "dAppstore", + "DAPS": "DAPS Coin", + "DAR": "Mines of Dalarnia", + "DARA": "Immutable", + "DARB": "Darb Token", + "DARC": "Konstellation", + "DARCRUS": "Darcrus", + "DARICO": "Darico", + "DARK": "Dark", + "DARKEN": "Dark Energy Crystals", + "DART": "dART Insurance", + "DARX": "Bitdaric", + "DAS": "DAS", + "DASC": "DasCoin", + "DASH": "Dash", + "DASHD": "Dash Diamond", + "DAT": "Datum", + "DATA": "Streamr", + "DATAWALLET": "DataWallet", + "DATX": "DATx", + "DAV": "DAV", + "DAVP": "Davion", + "DAWGS": "SpaceDawgs", + "DAWN": "Dawn Protocol", + "DAX": "DAEX", + "DAXX": "DaxxCoin", + "DAY": "Chronologic", + "DAYTA": "Dayta", + "DB": "DarkBit", + "DBA": "Digital Bank of Africa", + "DBC": "DeepBrain Chain", + "DBCCOIN": "Datablockchain", + "DBD": "Day By Day", + "DBEAR": "DBear Coin", + "DBET": "Decent.bet", + "DBIC": "DubaiCoin", + "DBIX": "DubaiCoin", + "DBL": "Doubloon", + "DBOX": "DefiBox", + "DBR": "Düber", + "DBTC": "DebitCoin", + "DBTN": "Universa Native token", + "DBUND": "DarkBundles", + "DBUY": "Doont Buy", + "DBX": "DBX", + "DBY": "Dobuy", + "DBZ": "Diamond Boyz Coin", + "DC": "Dogechain", + "DCASH": "Diabolo", + "DCB": "Decubate", + "DCC": "Distributed Credit Chain", + "DCCT": "DocuChain", + "DCIP": "Decentralized Community Investment Protocol", + "DCK": "DickCoin", + "DCN": "Dentacoin", + "DCNT": "Decanect", + "DCR": "Decred", + "DCRE": "DeltaCredits", + "DCS.": "deCLOUDs", + "DCT": "Decent", + "DCX": "DeCEX", + "DCY": "Dinastycoin", + "DDAM": "DDAM", + "DDD": "Scry.info", + "DDDD": "People's Punk", + "DDF": "Digital Developers Fund", + "DDIM": "DuckDaoDime", + "DDK": "DDKoin", + "DDL": "Donocle", + "DDN": "Den Domains", + "DDOS": "disBalancer", + "DDR": "Digi Dinar", + "DDRST": "DigiDinar StableToken", + "DDRT": "DigiDinar Token", + "DDS": "DDS.Store", + "DDX": "DerivaDAO", + "DEA": "Degas Coin", + "DEAL": "iDealCash", + "DEB": "Debitum Token", + "DEBASE": "Debase", + "DEBT": "The Debt Box", + "DEC": "Decentr", + "DEEP": "DeepCloud AI", + "DEEPG": "Deep Gold", + "DEEX": "DEEX", + "DEEZ": "DEEZ NUTS", + "DEFI": "Defi", + "DEFI5": "DEFI Top 5 Tokens Index", + "DEFIL": "DeFIL", + "DEFIT": "Digital Fitness", + "DEFLA": "Defla", + "DEFLCT": "Deflect", + "DEFLY": "Deflyball", + "DEFT": "DeFi Factory Token", + "DEFY": "DEFY", + "DEG": "Degis", + "DEGO": "Dego Finance", + "DEGOV": "Degov", + "DEHUB": "DeHub", + "DEI": "Deimos", + "DEK": "DekBox", + "DEL": "Decimal", + "DELCHAIN": "DelChain", + "DELFI": "DeltaFi", + "DELTA": "Delta Financial", + "DELTAC": "DeltaChain", + "DEM": "eMark", + "DEMOS": "DEMOS", + "DENT": "Dent", + "DEOR": "Decentralized Oracle", + "DEP": "DEAPCOIN", + "DEPO": "Depo", + "DEPTH": "Depth Token", + "DEQ": "Dequant", + "DERC": "DeRace", + "DERI": "Deri Protocol", + "DERO": "Dero", + "DES": "DeSpace Protocol", + "DESI": "Desico", + "DESO": "Decentralized Social", + "DESTINY": "Destiny", + "DETH": "DarkEther", + "DEUR": "DigiEuro", + "DEUS": "DEUS Finance", + "DEV": "Deviant Coin", + "DEVCOIN": "DevCoin", + "DEVO": "DeVolution", + "DEVT": "DeHorizon", + "DEVX": "Developeo", + "DEX": "DEX", + "DEXA": "DEXA COIN", + "DEXE": "DeXe", + "DEXG": "Dextoken Governance", + "DEXM": "Dexmex", + "DEXT": "DEXTools", + "DEXTF": "DEXTF", + "DF": "dForce", + "DFA": "DeFine", + "DFBT": "DentalFix", + "DFC": "DeFiScale", + "DFD": "DefiDollar DAO", + "DFG": "Defigram", + "DFGL": "DeFi Gold", + "DFI": "DeFiChain", + "DFIAT": "DeFiato", + "DFIO": "DeFi Omega", + "DFIS": "DfiStarter", + "DFL": "DeFi Land", + "DFND": "dFund", + "DFP": "Digital Fund Coin", + "DFSG": "DFSocial Gaming", + "DFSOCIAL": "DefiSocial (OLD)", + "DFSPORTS": "Digital Fantasy Sports", + "DFT": "Draftcoin", + "DFX": "DFX Finance", + "DFXT": "DigiFinexToken", + "DFY": "Defi For You", + "DFYN": "Dfyn Network", + "DG": "Decentral Games", + "DGB": "DigiByte", + "DGC": "Digitalcoin", + "DGCL": "DigiCol Token", + "DGD": "Digix DAO", + "DGDC": "DarkGold", + "DGLD": "Digital Gold", + "DGM": "DigiMoney", + "DGMS": "Digigems", + "DGN": "Diagon", + "DGORE": "DogeGoreCoin", + "DGP": "DGPayment", + "DGPT": "DigiPulse", + "DGTX": "Digitex Token", + "DGVC": "DegenVC", + "DGX": "Digix Gold token", + "DHR": "DeHR Network", + "DHS": "Dirham Crypto", + "DHT": "dHedge DAO", + "DHV": "DeHive", + "DIA": "DIA", + "DIAM": "Diamond", + "DIAMND": "Projekt Diamond", + "DIC": "Daikicoin", + "DICE": "Etheroll", + "DICEM": "DICE Money", + "DICETRX": "TRONbetDice", + "DID": "Didcoin", + "DIE": "Die Protocol", + "DIEM": "Facebook Diem", + "DIESEL": "Diesel", + "DIFX": "Digital Financial Exchange", + "DIG": "DIEGO", + "DIGG": "DIGG", + "DIGIC": "DigiCube", + "DIGIF": "DigiFel", + "DIGITAL": "Digital Reserve Currency", + "DIGNITY": "Dignity", + "DIGS": "Diggits", + "DIKO": "Arkadiko", + "DILI": "D Community", + "DIM": "DIMCOIN", + "DIME": "DimeCoin", + "DIMO": "DIMO", + "DIN": "Dinero", + "DINGER": "Dinger Token", + "DINGO": "Dingocoin", + "DINO": "DinoSwap", + "DINU": "Dogey-Inu", + "DIO": "Decimated", + "DIONE": "Dione", + "DIP": "Etherisc", + "DIS": "TosDis", + "DISCOVERY": "DiscoveryIoT", + "DISK": "Dark Lisk", + "DIT": "Ditcoin", + "DIVER": "Divergence Protocol", + "DIVI": "Divi Project", + "DIVO": "DIVO Token", + "DIVX": "Divi Exchange Token", + "DIW": "DIWtoken", + "DKA": "dKargo", + "DKC": "DarkKnightCoin", + "DKD": "Dekado", + "DKEY": "DKEY Bank", + "DKKT": "DKK Token", + "DKS": "DarkShield", + "DLA": "Dolla", + "DLC": "Diamond Launch", + "DLISK": "Dlisk", + "DLO": "Delio", + "DLPD": "DLP Duck Token", + "DLPT": "Deliverers Power Token", + "DLR": "DollarOnline", + "DLT": "Agrello Delta", + "DLX": "DAppLinks", + "DLXV": "Delta-X", + "DMC": "Dream21", + "DMCH": "DARMA Cash", + "DMD": "DMD", + "DMG": "DMM: Governance", + "DMGBULL": "3X Long DMM Governance Token", + "DML": "Decentralized Machine Learning", + "DMLG": "Demole", + "DMOD": "Demodyfi Token", + "DMS": "Documentchain", + "DMT": "DMarket", + "DMTC": "Demeter Chain", + "DMTR": "Dimitra", + "DMX": "Dymmax", + "DN8": "Pldgr", + "DNA": "Metaverse", + "DNET": "DeNet", + "DNF": "DNFT Protocol", + "DNFT": "DareNFT", + "DNN": "DNN Token", + "DNO": "Denaro", + "DNOTES": "Dnotes", + "DNS": "BitDNS", + "DNT": "district0x", + "DNTX": "DNAtix", + "DNXC": "DinoX", + "DNZ.BITCI": "Denizlispor Fan Token", + "DOBO": "DogeBonk", + "DOC": "Dochain", + "DOCC": "Doc Coin", + "DOCK": "Dock.io", + "DOCT": "DocTailor", + "DODI": "DoubleDice", + "DODO": "DODO", + "DOE": "Dogs Of Elon", + "DOG": "The Doge NFT", + "DOGA": "Dogami", + "DOGACOIN": "DogaCoin", + "DOGBOSS": "Dog Boss", + "DOGDEFI": "DogDeFiCoin", + "DOGE": "Dogecoin", + "DOGE20": "Doge 2.0", + "DOGEBNB": "DogeBNB", + "DOGEC": "DogeCash", + "DOGECEO": "Doge CEO", + "DOGECOIN": "Buff Doge Coin", + "DOGECOLA": "DogeCola", + "DOGECUBE": "DogeCube", + "DOGED": "DogeCoinDark", + "DOGEDAO": "DogeDao", + "DOGEDASH": "Doge Dash", + "DOGEGF": "DogeGF", + "DOGEMETA": "Dogemetaverse", + "DOGESWAP": "Dogeswap Token (HECO)", + "DOGETH": "EtherDoge", + "DOGEX": "DogeHouse Capital", + "DOGEZILLA": "DogeZilla", + "DOGGY": "Doggy", + "DOGIRA": "Dogira", + "DOGO": "DogemonGo", + "DOGY": "DogeYield", + "DOGZ": "Dogz", + "DOKI": "Doki Doki Finance", + "DOLA": "Dola USD Stablecoin", + "DOLLARCOIN": "DollarCoin", + "DOLZ": "DOLZ", + "DOME": "Everdome", + "DOMI": "Domi", + "DON": "Donnie Finance", + "DONATION": "DonationCoin", + "DONK": "Don-key", + "DONTBUYMEME": "Meme", + "DOOH": "Bidooh", + "DOOR": "DOOR", + "DOPE": "DopeCoin", + "DOR": "Dorado", + "DORA": "Dora Factory", + "DOS": "DOS Network", + "DOSE": "DOSE", + "DOT": "Polkadot", + "DOTC": "Dotcoin", + "DOTR": "Cydotori", + "DOUGH": "PieDAO v2 (DOUGH)", + "DOV": "DOVU", + "DOWS": "Shadows", + "DP": "DigitalPrice", + "DPAY": "DelightPay", + "DPET": "My DeFi Pet", + "DPI": "DeFiPulse Index", + "DPIE": "DeFiPie", + "DPN": "DIPNET", + "DPP": "Digital Assets Power Play", + "DPR": "Deeper Network", + "DPS": "DEEPSPACE", + "DPT": "Diamond Platform Token", + "DPX": "Dopex", + "DPY": "Delphy", + "DRA": "DraculaCoin", + "DRACO": "DT Token", + "DRACOO": "DracooMaster", + "DRAGONMA": "Dragon Mainland Shards", + "DRC": "DRC Mobility", + "DRCT": "Ally Direct", + "DRE": "DoRen", + "DREAM": "DREAM", + "DREAMS": "Dreams Quest", + "DREP": "DREP", + "DRF": "Drife", + "DRG": "Dragon Coin", + "DRGN": "Dragonchain", + "DRINK": "DrinkChain", + "DRIP": "Drip Network", + "DRIV": "DRIVEZ", + "DRIVECRYPTO": "Drive Crypto", + "DRKC": "DarkCash", + "DRKT": "DarkTron", + "DRM": "DoDreamChain", + "DRM8": "Dream8Coin", + "DRONE": "Drone Coin", + "DROP": "Dropil", + "DROPS": "Drops", + "DRP": "DCORP", + "DRPU": "DRP Utility", + "DRS": "Digital Rupees", + "DRT": "DomRaider", + "DRXNE": "Droxne", + "DRZ": "Droidz", + "DS": "DeStorage", + "DSB": "DarkShibe", + "DSC": "Dash Cash", + "DSCP": "Dreamscape", + "DSCVR": "DSCVR.Finance", + "DSD": "Dynamic Set Dollar", + "DSG": "Dinosaureggs", + "DSH": "Dashcoin", + "DSLA": "DSLA Protocol", + "DSR": "Desire", + "DSTR": "Dynamic Supply Tracker", + "DT": "DarkToken", + "DT1": "Dollar Token 1", + "DTA": "Data", + "DTB": "Databits", + "DTC": "Data Transaction", + "DTCT": "DetectorToken", + "DTEM": "Dystem", + "DTEP": "DECOIN", + "DTH": "Dether", + "DTN": "Datareum", + "DTO": "DotOracle", + "DTOP": "DTOP Token", + "DTR": "Dotori", + "DTRC": "Datarius", + "DTX": "DataBroker DAO", + "DUB": "DubCoin", + "DUBI": "Decentralized Universal Basic Income", + "DUC": "DucatusCoin", + "DUCATO": "Ducato Protocol Token", + "DUCK": "Unit Protocol New", + "DUCKD": "DuckDuckCoin", + "DUEL": "Duel Network", + "DUELERS": "Block Duelers", + "DUET": "Duet Protocol", + "DUK+": "Dukascoin", + "DUKE": "Duke Inu", + "DUN": "Dune", + "DUO": "ParallelCoin", + "DUOT": "DUO Network", + "DUSK": "Dusk Network", + "DUST": "DUST Protocol", + "DUX": "DuxCoin", + "DV": "Dreamverse", + "DVC": "DragonVein", + "DVDX": "Derived", + "DVF": "Rhino.fi", + "DVG": "DAOventures", + "DVI": "Dvision Network", + "DVP": "Decentralized Vulnerability Platform", + "DVPN": "Sentinel", + "DVRS": "DaoVerse", + "DVS": "Davies", + "DVT": "DeVault", + "DVTC": "DivotyCoin", + "DVX": "Derivex", + "DWC": "Digital Wallet", + "DWZ": "DeFi Wizard", + "DX": "DxChain Token", + "DXB": "DefiXBet", + "DXC": "DixiCoin", + "DXCT": "DNAxCAT", + "DXD": "DXdao", + "DXF": "Dexfin", + "DXG": "DexAge", + "DXH": "Daxhund", + "DXN": "DEXON", + "DXO": "Dextro", + "DXR": "DEXTER", + "DXT": "Dexit Finance", + "DYC": "Dycoin", + "DYDX": "dYdX", + "DYN": "Dynamic", + "DYNAMICTRADING": "Dynamic Trading Rights", + "DYNCOIN": "Dyncoin", + "DYNMT": "Dynamite", + "DYNO": "DYNO", + "DYP": "Dypius", + "DYT": "DoYourTip", + "DZAR": "Digital Rand", + "DZCC": "DZCC", + "DZI": "DeFinition", + "Dow": "DowCoin", + "E21": "E21 Coin", + "E2C": "Electronic Energy Coin", + "EA": "EagleCoin", + "EAC": "Education Assessment Cult", + "EAGS": "EagsCoin", + "EAI": "Edain", + "EARN": "EarnGuild", + "EARTH": "Earth Token", + "EARTHCOIN": "EarthCoin", + "EASYF": "EasyFeedback", + "EAT": "EDGE Activity Token", + "EAURIC": "Eauric", + "EB3": "EB3coin", + "EBASE": "EURBASE", + "EBC": "EBCoin", + "EBET": "EthBet", + "EBIT": "eBit", + "EBK": "Ebakus", + "EBOX": "Ethbox Token", + "EBS": "EbolaShare", + "EBSC": "EarlyBSC", + "EBST": "eBoost", + "EBTC": "eBitcoin", + "EBZ": "Ebitz", + "EC": "Echoin", + "ECA": "Electra", + "ECASH": "Ethereum Cash", + "ECC": "Etherconnect", + "ECD": "Echidna", + "ECELL": "Consensus Cell Network", + "ECH": "EthereCash", + "ECHT": "e-Chat", + "ECLIP": "Eclipse", + "ECO": "Ormeus Ecosystem", + "ECOB": "EcoBit", + "ECOC": "ECOcoin", + "ECOCH": "ECOChain", + "ECOFI": "EcoFi", + "ECOIN": "Ecoin", + "ECOM": "Omnitude", + "ECOREAL": "Ecoreal Estate", + "ECOX": "ECOx", + "ECP": "ECP+ Technology", + "ECR": "EcoVerse", + "ECT": "SuperEdge", + "ECTE": "EurocoinToken", + "ECU": "ECOSC", + "EDC": "EDC Blockchain", + "EDDA": "EDDASwap", + "EDDIE": "Eddie coin", + "EDEN": "EDEN", + "EDEXA": "edeXa Security Token", + "EDG": "Edgeless", + "EDGE": "EDGE", + "EDGEW": "Edgeware", + "EDGT": "Edgecoin", + "EDN": "EdenChain", + "EDR": "Endor Protocol Token", + "EDRC": "EDRCoin", + "EDT": "E-Drive Token", + "EDU": "EduCoin", + "EDUC": "EducoinV", + "EER": "Ethereum eRush", + "EFFT": "Effort Economy ", + "EFI": "Efinity", + "EFIL": "Ethereum Wrapped Filecoin", + "EFK": "ReFork", + "EFL": "E-Gulden", + "EFX": "The Effect.ai", + "EGAME": "Every Game", + "EGAS": "ETHGAS", + "EGC": "EverGrowCoin", + "EGCC": "Engine", + "EGDC": "EasyGuide", + "EGEM": "EtherGem", + "EGG": "Goose Finance", + "EGGC": "EggCoin", + "EGGP": "Eggplant Finance", + "EGI": "eGame", + "EGLD": "eGold", + "EGO": "EGOcoin", + "EGR": "Egoras Rights", + "EGS": "EdgeSwap", + "EGT": "Egretia", + "EGX": "Enegra", + "EHASH": "EHash", + "EHIVE": "eHive", + "EHRT": "Eight Hours Token", + "EIFI": "EIFI FINANCE", + "EJAC": "EJA Coin", + "EJS": "Enjinstarter", + "EKG": "Ekon Gold", + "EKN": "Elektron", + "EKO": "EchoLink", + "EKT": "EDUCare", + "EKTA": "Ekta", + "EL": "ELYSIA", + "ELA": "Elastos", + "ELAC": "ELA Coin", + "ELAD": "ELAD Network", + "ELAMA": "Elamachain", + "ELAND": "Etherland", + "ELC": "Elacoin", + "ELCASH": "Electric Cash", + "ELD": "Electrum Dark", + "ELE": "Elementrem", + "ELEC": "Electrify.Asia", + "ELEMENTS": "Elements", + "ELEN": "Everlens", + "ELES": "Elements Estates", + "ELF": "aelf", + "ELG": "EscoinToken", + "ELI": "GoCrypto", + "ELIC": "Elicoin", + "ELITE": "EthereumLite", + "ELIX": "Elixir", + "ELLA": "Ellaism", + "ELLI": "ElliotCoin", + "ELM": "Elements Play", + "ELON": "Dogelon Mars", + "ELONCAT": "ELON CAT COIN", + "ELONGD": "Elongate Deluxe", + "ELONGT": "Elon GOAT", + "ELONONE": "AstroElon", + "ELP": "Ellerium", + "ELS": "Elysium", + "ELT": "Element Black", + "ELTC2": "eLTC", + "ELTCOIN": "ELTCOIN", + "ELU": "Elumia", + "ELV": "Elvantis", + "ELVN": "11Minutes", + "ELX": "Energy Ledger", + "ELY": "Elysian", + "EM": "Eminer", + "EMANATE": "EMANATE", + "EMAR": "EmaratCoin", + "EMAX": "EthereumMax", + "EMB": "Overline Emblem", + "EMBER": "EmberCoin", + "EMBR": "Embr", + "EMC": "Emercoin", + "EMC2": "Einsteinium", + "EMD": "Emerald", + "EMIGR": "EmiratesGoldCoin", + "EML": "EML Protocol", + "EMN.CUR": "Eastman Chemical", + "EMON": "Ethermon", + "EMOT": "Sentigraph.io", + "EMPC": "EmporiumCoin", + "EMPH": "Emphy", + "EMPIRE": "Empire Token", + "EMPR": "empowr", + "EMRX": "Emirex Token", + "EMT": "EasyMine", + "EMU": "eMusic", + "EMV": "Ethereum Movie Venture", + "EMX": "EMX", + "ENC": "Encores Token", + "ENCD": "Encircled", + "ENCN": "EndChain", + "ENCRYPG": "EncrypGen", + "ENCX": "Encrybit", + "ENDLESS": "Endless Board Game", + "ENE": "EneCoin", + "ENEDEX": "Enedex", + "ENERGYX": "Safe Energy", + "ENG": "Enigma", + "ENGT": "Engagement Token", + "ENJ": "Enjin Coin", + "ENK": "Enkidu", + "ENNO": "ENNO Cash", + "ENO": "Enotoken", + "ENQ": "Enecuum", + "ENRG": "EnergyCoin", + "ENS": "Ethereum Name Service", + "ENT": "Eternity", + "ENTC": "EnterButton", + "ENTER": "EnterCoin", + "ENTR": "EnterDAO", + "ENTRC": "ENTER COIN", + "ENTRP": "Hut34 Project", + "ENTRY": "ENTRY", + "ENTT": "Presale Ventures", + "ENU": "Enumivo", + "ENV": "ENVOY", + "ENVIENTA": "Envienta", + "ENVION": "Envion", + "ENX": "ENEX", + "EOC": "EveryonesCoin", + "EON": "Exscudo", + "EONC": "Dimension", + "EOS": "EOS", + "EOSBLACK": "eosBLACK", + "EOSC": "EOSForce", + "EOSDAC": "eosDAC", + "EOSDT": "EOSDT", + "EOX": "EXTRA ORDINARY", + "EPAN": "Paypolitan Token", + "EPANUS": "Epanus", + "EPIC": "Epic Cash", + "EPIK": "EPIK Token", + "EPK": "EpiK Protocol", + "EPS": "Ellipsis (OLD)", + "EPTT": "Evident Proof Transaction Token", + "EPX": "Ellipsis X", + "EPY": "Empyrean", + "EQ": "Equilibrium", + "EQC": "Ethereum Qchain Token", + "EQL": "EQUAL", + "EQM": "Equilibrium Coin", + "EQO": "EQO", + "EQT": "EquiTrader", + "EQUAD": "Quadrant Protocol", + "EQUAL": "EqualCoin", + "EQUI": "EQUI", + "EQUITOKEN": "EQUI Token", + "EQX": "EQIFi", + "EQZ": "Equalizer", + "ERA": "ETHA", + "ERA7": "Era Token", + "ERB": "ERBCoin", + "ERC": "EuropeCoin", + "ERC20": "ERC20", + "ERD": "Elrond", + "ERE": "Erecoin", + "EREAL": "eREAL", + "ERG": "Ergo", + "ERIS": "Eristica", + "ERK": "Eureka Coin", + "ERO": "Eroscoin", + "ERON": "ERON", + "EROTICA": "Erotica", + "ERR": "Coinerr", + "ERROR": "484 Fund", + "ERRORCOIN": "ErrorCoin", + "ERSDL": "UnFederalReserve", + "ERT": "Esports.com", + "ERTH": "Erth Point", + "ERTHA": "Ertha", + "ERW": "ZeLoop Eco Reward", + "ERY": "Eryllium", + "ES": "Era Swap Token", + "ESBC": "ESBC", + "ESD": "Empty Set Dollar", + "ESES.BITCI": "Eskişehir Fan Tokens", + "ESG": "ESG", + "ESGC": "ESG Chain", + "ESH": "Switch", + "ESN": "Ethersocial", + "ESNC": "Galaxy Arena Metaverse", + "ESP": "Espers", + "ESS": "Essentia", + "EST": "ESports Chain", + "ESTATE": "AgentMile", + "ESW": "eSwitch®", + "ESZ": "EtherSportz", + "ET": "ENDO", + "ET4": "Eticket4", + "ETALON": "Etalon", + "ETBS": "EthBits", + "ETBT": "Ethereum Black", + "ETC": "Ethereum Classic", + "ETE": "EXTRADECOIN", + "ETERNAL": "CryptoMines Eternal", + "ETERNALC": "Eternal Coin", + "ETERNALT": "Eternal Token", + "ETG": "Ethereum Gold", + "ETGP": "Ethereum Gold Project", + "ETH": "Ethereum", + "ETH2": "Eth 2.0 Staking by Pool-X", + "ETH2X-FLI": "ETH 2x Flexible Leverage Index", + "ETHA": "ETHA Lend", + "ETHAX": "ETHAX", + "ETHB": "EtherBTC", + "ETHBN": "EtherBone", + "ETHD": "Ethereum Dark", + "ETHER": "Etherparty", + "ETHERDELTA": "EtherDelta", + "ETHERKING": "Ether Kingdoms Token", + "ETHERNITY": "Ethernity Chain", + "ETHF": "EthereumFair", + "ETHIX": "EthicHub", + "ETHM": "Ethereum Meta", + "ETHO": "The Etho Protocol", + "ETHOS": "Ethos Project", + "ETHP": "ETHPlus", + "ETHPAD": "ETHPad", + "ETHPLO": "ETHplode", + "ETHPOS": "ETHPoS", + "ETHPOW": "ETHPoW", + "ETHPR": "Ethereum Premium", + "ETHPY": "Etherpay", + "ETHS": "EthereumScrypt", + "ETHSHIB": "Eth Shiba", + "ETHV": "Ethverse", + "ETHW": "Ethereum PoW", + "ETHX": "Stader ETHx", + "ETHY": "Ethereum Yield", + "ETI": "EtherInc", + "ETK": "Energi Token", + "ETKN": "EasyToken", + "ETL": "EtherLite", + "ETM": "En-Tan-Mo", + "ETN": "Electroneum", + "ETNA": "ETNA Network", + "ETNY": "Ethernity Cloud", + "ETP": "Metaverse", + "ETR": "Electric Token", + "ETRNT": "Eternal Trusts", + "ETS": "ETH Share", + "ETSC": "Ether star blockchain", + "ETT": "EncryptoTel", + "ETY": "Ethereum Cloud", + "ETZ": "EtherZero", + "EUC": "Eurocoin", + "EUCOIN": "EU Coin", + "EUCX": "EUCX", + "EUL": "Euler", + "EUM": "Elitium", + "EUNO": "EUNO", + "EURN": "NOKU EUR", + "EUROC": "Euro Coin", + "EUROE": "EUROe Stablecoin", + "EURS": "STASIS EURS", + "EURT": "Euro Tether", + "EURU": "Upper Euro", + "EURX": "eToro Euro", + "EUSD": "Egoras Dollar", + "EVA": "Evanesco Network", + "EVAULT": "EthereumVault", + "EVC": "Eventchain", + "EVCC": "Eco Value Coin", + "EVCOIN": "EverestCoin", + "EVE": "Devery", + "EVED": "Evedo", + "EVENC": "EvenCoin", + "EVENT": "Event Token", + "EVER": "Everscale", + "EVEREST": "Everest", + "EVERGREEN": "EverGreenCoin", + "EVERLIFE": "EverLife.AI", + "EVIL": "EvilCoin", + "EVMOS": "Evmos", + "EVN": "Evn Token", + "EVO": "EvoVerses", + "EVOL": "EVOL NETWORK", + "EVOS": "EVOS", + "EVR": "Everus", + "EVRICE": "Evrice", + "EVRY": "Evrynet", + "EVT": "EveriToken", + "EVU": "Evulus Token", + "EVX": "Everex", + "EVY": "EveryCoin", + "EVZ": "Electric Vehicle Zone", + "EWC": "Erugo World Coin", + "EWT": "Energy Web Token", + "EWTT": "Ecowatt", + "EXB": "ExaByte (EXB)", + "EXC": "Eximchain", + "EXCC": "ExchangeCoin", + "EXCHANGEN": "ExchangeN", + "EXCL": "Exclusive Coin", + "EXE": "ExeCoin", + "EXFI": "Flare Finance", + "EXIP": "EXIP", + "EXIT": "ExitCoin", + "EXLT": "ExtraLovers", + "EXM": "EXMO Coin", + "EXMR": "EXMR FDN", + "EXN": "Exeno", + "EXO": "Exosis", + "EXP": "Expanse", + "EXRD": "Radix", + "EXRN": "EXRNchain", + "EXTN": "Extensive Coin", + "EXTP": "TradePlace", + "EXY": "Experty", + "EXZO": "ExzoCoin 2.0", + "EYE": "MEDIA EYE", + "EYES": "Eyes Protocol", + "EYETOKEN": "EYE Token", + "EZ": "EasyFi V2", + "EZC": "EZCoin", + "EZM": "EZMarket", + "EZT": "EZToken", + "F16": "F16Coin", + "F2C": "Ftribe Fighters", + "F2K": "Farm2Kitchen", + "F7": "Five7", + "F9": "Falcon Nine", + "FAB": "FABRK Token", + "FABA": "Faba Invest", + "FABRIC": "MetaFabric", + "FACE": "FaceDAO", + "FACETER": "Faceter", + "FACTOM": "Factom", + "FADO": "FADO Go", + "FAG": "PoorFag", + "FAI": "Fairum", + "FAIR": "FairCoin", + "FAIRC": "Faireum Token", + "FAIRG": "FairGame", + "FAKE": "FAKE COIN", + "FAKT": "Medifakt", + "FALCONS": "Falcon Swaps", + "FAME": "Fame MMA", + "FAMEC": "FameCoin", + "FAMILY": "The Bitcoin Family", + "FAN": "Fanadise", + "FAN360": "Fan360", + "FANC": "fanC", + "FANV": "FanVerse", + "FANZ": "FanChain", + "FAR": "Farmland Protocol", + "FARA": "FaraLand", + "FARM": "Harvest Finance", + "FARMA": "FarmaTrust", + "FARMC": "FARM Coin", + "FAST": "PodFast", + "FASTMOON": "FastMoon", + "FASTSWAP": "Fastswap", + "FAT": "Fatcoin", + "FATCAKE": "FatCake", + "FAYRE": "Fayre", + "FAZZ": "FazzCoin", + "FB": "Fenerbahçe Token", + "FBB": "FilmBusinessBuster", + "FBN": "Five balance", + "FBNB": "ForeverBNB", + "FBX": "Finance Blocks", + "FC": "Facecoin", + "FC2": "Fuel2Coin", + "FCD": "FreshCut Diamond", + "FCF": "French Connection Finance", + "FCH": "Freecash", + "FCL": "Fractal", + "FCN": "FantomCoin", + "FCOIN": "FCoin", + "FCON": "SpaceFalcon", + "FCQ": "Fortem Capital", + "FCS": "CryptoFocus", + "FCT": "FirmaChain", + "FCTC": "FaucetCoin", + "FDC": "Fidance", + "FDLS": "FIDELIS", + "FDM": "Fandom", + "FDO": "Firdaos", + "FDR": "French Digital Reserve", + "FDT": "Frutti Dino", + "FDX": "fidentiaX", + "FDZ": "Friendz", + "FEAR": "Fear", + "FEED": "Feeder Finance", + "FEENIXV2": "ProjectFeenixv2", + "FEG": "FEG Token", + "FEI": "Fei Protocol", + "FEN": "First Ever NFT", + "FENOMY": "Fenomy", + "FER": "Ferro", + "FERC": "FairERC20", + "FERMA": "Ferma", + "FESS": "Fesschain", + "FET": "Fetch.AI", + "FEVR": "RealFevr", + "FEX": "FEX Token", + "FEY": "Feyorra", + "FF": "Forefront", + "FF1": "Two Prime FF1 Token", + "FFA": "Cryptofifa", + "FFC": "FireflyCoin", + "FFCT": "FortFC", + "FFM": "Files.fm Library", + "FFN": "Fairy Forest", + "FFUEL": "getFIFO", + "FFYI": "Fiscus FYI", + "FGD": "Freedom God DAO", + "FGZ": "Free Game Zone", + "FIBRE": "FIBRE", + "FIC": "Filecash", + "FIDA": "Bonfida", + "FIDLE": "Fidlecoin", + "FIELD": "Fieldcoin", + "FIFTY": "FIFTYONEFIFTY", + "FIG": "FlowCom", + "FIH": "Fidelity House", + "FIII": "Fiii", + "FIL": "FileCoin", + "FILDA": "Filda", + "FILL": "Fillit", + "FILM": "Filmpass", + "FILST": "Filecoin Standard Hashrate Token", + "FIN": "DeFiner", + "FINA": "Defina Finance", + "FIND": "FindCoin", + "FINE": "Refinable", + "FINOM": "Finom FIN Token", + "FINU": "Formula Inu", + "FIO": "FIO Protocol", + "FIRE": "FireCoin", + "FIRO": "Firo", + "FIRU": "Firulais Finance", + "FIS": "Stafi", + "FIST": "FistBump", + "FIT": "Financial Investment Token", + "FITC": "Fitcoin", + "FITFI": "Step App", + "FIU": "beFITTER", + "FIWA": "Defi Warrior", + "FJB": "Freedom. Jobs. Business.", + "FJC": "FujiCoin", + "FJT": "Fuji FJT", + "FK": "FK Coin", + "FKX": "FortKnoxster", + "FL": "Freeliquid", + "FLAG": "Flag Network", + "FLAME": "FireStarter", + "FLAP": "Flappy Coin", + "FLAS": "Flas Exchange Token", + "FLASH": "Flashstake", + "FLASHC": "FLASH coin", + "FLC": "FlowChainCoin", + "FLD": "FluidAI", + "FLDC": "Folding Coin", + "FLDT": "FairyLand", + "FLETA": "FLETA", + "FLEX": "FLEX Coin", + "FLG": "Folgory Coin", + "FLIC": "Skaflic", + "FLIK": "FLiK", + "FLIP": "BitFlip", + "FLIXX": "Flixxo", + "FLLW": "Follow Coin", + "FLM": "Flamingo", + "FLMC": "FOLM coin", + "FLO": "Flo", + "FLOAT": "Float Protocol", + "FLOKI": "Floki Inu", + "FLOOR": "FloorDAO", + "FLOT": "FireLotto", + "FLOVM": "FLOV MARKET", + "FLOW": "Flow", + "FLOWP": "Flow Protocol", + "FLP": "Gameflip", + "FLR": "Flare", + "FLRS": "Flourish Coin", + "FLS": "Flits", + "FLT": "FlutterCoin", + "FLURRY": "Flurry Finance", + "FLUX": "Flux", + "FLUXT": "Flux Token", + "FLUZ": "FluzFluz", + "FLVR": "FlavorCoin", + "FLX": "Reflexer Ungovernance Token", + "FLY": "Franklin", + "FLYCOIN": "FlyCoin", + "FLZ": "Fellaz", + "FME": "FME", + "FMEX": "FMex", + "FMG": "FM Gallery", + "FML": "FormulA", + "FMT": "Finminity", + "FN": "Filenet", + "FNB": "FNB protocol", + "FNC": "Fancy Games", + "FNCY": "Fancy That", + "FND": "Rare FND", + "FNDZ": "FNDZ Token", + "FNF": "FunFi", + "FNK": "FunKeyPay", + "FNL": "Finlocale", + "FNO": "Fonero", + "FNP": "FlipNpik", + "FNTB": "FinTab", + "FNX": "FinNexus", + "FO": "FIBOS", + "FOAM": "Foam", + "FOC": "TheForce Trade", + "FOCV": "FOCV", + "FODL": "Fodl Finance", + "FOF": "Future Of Fintech", + "FOGE": "Fat Doge", + "FOIN": "Foin", + "FOL": "Folder Protocol", + "FOLD": "Manifold Finance", + "FONE": "Fone", + "FONT": "Font", + "FONZ": "FonzieCoin", + "FOOD": "FoodCoin", + "FOODC": "Food Club", + "FOPA": "Fopacoin", + "FOR": "ForTube", + "FORCE": "TriForce Tokens", + "FORCEC": "Force Coin", + "FORESTPLUS": "The Forbidden Forest", + "FOREVER": "Forever Coin", + "FOREVERFOMO": "ForeverFOMO", + "FOREVERPUMP": "Forever Pump", + "FOREVERUP": "ForeverUp", + "FOREX": "handle.fi", + "FOREXCOIN": "FOREXCOIN", + "FORK": "Gastro Advisor Token", + "FORM": "Formation FI", + "FORT": "Forta", + "FORTH": "Ampleforth Governance Token", + "FORTHB": "ForthBox", + "FORTUNA": "Fortuna", + "FORTUNE": "Fortune", + "FOTA": "Fight Of The Ages", + "FOTO": "Unique Photo", + "FOUNTAIN": "Fountain", + "FOUR": "4THPILLAR TECHNOLOGIES", + "FOX": "ShapeShift FOX Token", + "FOXD": "Foxdcoin", + "FOXF": "Fox Finance", + "FOXT": "Fox Trading", + "FOXV2": "FoxFinanceV2", + "FPC": "Futurepia", + "FPIS": "Frax Price Index Share", + "FR": "Freedom Reserve", + "FRA": "Findora", + "FRAC": "FractalCoin", + "FRAX": "Frax", + "FRAZ": "FrazCoin", + "FRC": "FireRoosterCoin", + "FRD": "Farad", + "FRDX": "Frodo Tech", + "FRE": "FreeCoin", + "FREC": "Freyrchain", + "FRECNX": "FreldoCoinX", + "FRED": "FREDEnergy", + "FREE": "FREE coin", + "FREEROSS": "FreeRossDAO", + "FREL": "Freela", + "FREN": "FREN", + "FRIN": "Fringe Finance", + "FRK": "Franko", + "FRM": "Ferrum Network", + "FRN": "Francs", + "FRNT": "Final Frontier", + "FROG": "FrogSwap", + "FROGE": "Froge Finance", + "FRONT": "Frontier", + "FROYO": "Froyo Games", + "FRP": "Fame Reward Plus", + "FRR": "Frontrow", + "FRSP": "Forkspot", + "FRST": "FirstCoin", + "FRTS": "Fruits", + "FRV": "Fitrova", + "FRWC": "Frankywillcoin", + "FRZSS": "Frz Solar System", + "FSBT": "Forty Seven Bank", + "FSC": "FriendshipCoin", + "FSHN": "Fashion Coin", + "FSN": "Fusion", + "FST": "Futureswap", + "FSTC": "FastCoin", + "FSW": "Falconswap", + "FT": "Fracton Protocol", + "FTB": "Fit&Beat", + "FTC": "FeatherCoin", + "FTG": "fantomGO", + "FTI": "FansTime", + "FTK": "FToken", + "FTM": "Fantom", + "FTN": "Fasttoken", + "FTO": "FuturoCoin", + "FTP": "FuturePoints", + "FTR": "FactR", + "FTRB": "Faith Tribe", + "FTRC": "FutureCoin", + "FTS": "Fortress Lending", + "FTT": "FTX Token", + "FTUM": "Fatum", + "FTW": "FutureWorks", + "FTX": "FintruX", + "FUCK": "Fuck Token", + "FUD": "FUD.finance", + "FUEL": "Jetfuel Finance", + "FUJIN": "Fujinto", + "FUKU": "Furukuru", + "FUMO": "Alien Milady Fumo", + "FUN": "FUN Token", + "FUNC": "FunCoin", + "FUND": "Unification", + "FUNDC": "FUNDChains", + "FUNDP": "Fund Platform", + "FUNDREQUEST": "FundRequest", + "FUNDYOUR": "FundYourselfNow", + "FUNDZ": "FundFantasy", + "FUNK": "Cypherfunks Coin", + "FUR": "Furio", + "FURU": "Furucombo", + "FURY": "Engines of Fury", + "FUS": "Fus", + "FUSE": "Fuse Network Token", + "FUTC": "FutCoin", + "FUTURE": "FutureCoin", + "FUZZ": "Fuzzballs", + "FVT": "Finance Vote", + "FWB": "Friends With Benefits Pro", + "FWC": "Qatar 2022", + "FWT": "Freeway Token", + "FWW": "Farmers World Wood", + "FX": "Function X", + "FXC": "Flexacoin", + "FXF": "Finxflo", + "FXP": "FXPay", + "FXS": "Frax Share", + "FXT": "FuzeX", + "FXY": "Floxypay", + "FYN": "Affyn", + "FYP": "FlypMe", + "FYZ": "Fyooz", + "FYZNFT": "Fyooz NFT", + "G": "GRN Grid", + "G1X": "GoldFinX", + "G50": "G50", + "G999": "G999", + "GAD": "Green App Development", + "GAFI": "GameFi", + "GAI": "GraphGrail AI", + "GAIA": "Gaia Everworld", + "GAIAPLATFORM": "GAIA Platform", + "GAIN": "Gainfy", + "GAINS": "Gains", + "GAKH": "GAKHcoin", + "GAL": "Galxe", + "GALA": "Gala", + "GALATA": "Galatasaray Fan Token", + "GALAX": "Galaxy Finance", + "GALAXY": "GalaxyCoin", + "GALEON": "Galeon", + "GALI": "Galilel", + "GALT": "Galtcoin", + "GAM": "Gambit coin", + "GAMB": "GAMB", + "GAME": "Gamestarter", + "GAMEC": "Game", + "GAMECRED": "GameCredits", + "GAMEFI": "GameFi Token", + "GAMEIN": "Game Infinity", + "GAMESTARS": "Game Stars", + "GAMEX": "GameX", + "GAMI": "GAMI World", + "GAMINGSHIBA": "GamingShiba", + "GAMMA": "Gamma Strategies", + "GAN": "Galactic Arena: The NFTverse", + "GANA": "GANA", + "GAP": "Gaps Chain", + "GAPC": "Gapcoin", + "GARD": "Hashgard", + "GARI": "Gari Network", + "GARK": "Game Ark", + "GART": "Griffin Art", + "GARTS": "Glink Arts Share", + "GARUDA": "GarudaSwap", + "GAS": "Gas", + "GASDAO": "Gas DAO", + "GASG": "Gasgains", + "GASP": "gAsp", + "GASTRO": "GastroCoin", + "GAT": "GATCOIN", + "GATE": "GATENet", + "GATEWAY": "Gateway Protocol", + "GAYPEPE": "Gay Pepe", + "GAZE": "GazeTV", + "GB": "GoldBlocks", + "GBA": "Geeba", + "GBCR": "Gold BCR", + "GBD": "Great Bounty Dealer", + "GBE": "Godbex", + "GBEX": "Globiance Exchange", + "GBG": "Golos Gold", + "GBIT": "GravityBit", + "GBK": "Goldblock", + "GBO": "Gabro.io", + "GBPT": "poundtoken", + "GBRC": "GBR Coin", + "GBT": "GameBetCoin", + "GBTC": "GigTricks", + "GBX": "GoByte", + "GBXT": "Globitex Token", + "GBYTE": "Obyte", + "GC": "Gric Coin", + "GCAKE": "Pancake Games", + "GCC": "GuccioneCoin", + "GCN": "gCn Coin", + "GCOIN": "Galaxy Fight Club", + "GCR": "Global Currency Reserve", + "GDAO": "Governor DAO", + "GDC": "Global Digital Content", + "GDDY": "Giddy", + "GDE": "Golden Eagle", + "GDL": "GodlyCoin", + "GDO": "GroupDao", + "GDOGE": "Golden Doge", + "GDR": "Guider.Travel", + "GDS": "Grat Deal Coin", + "GDSC": "Golden Safety Coin", + "GDT": "Globe Derivative Exchange", + "GDX": "VanEck Vectors Gold Miners Etf", + "GE": "GEchain", + "GEA": "Goldea", + "GEAR": "MetaGear", + "GEC": "Geco.one", + "GEEQ": "Geeq", + "GEIST": "Geist Finance", + "GELATO": "Gelato", + "GEM": "Gems", + "GEMA": "Gemera", + "GEMG": "GemGuardian", + "GEMS": "Carbon GEMS", + "GEMZ": "Gemz Social", + "GEN": "DAOstack", + "GENE": "Genopets", + "GENIE": "The Genie", + "GENIX": "Genix", + "GENS": "Genshiro", + "GENSTAKE": "Genstake", + "GENX": "Genx Token", + "GENXNET": "Genesis Network", + "GEO": "GeoCoin", + "GEODB": "GeoDB", + "GEOJ": "Geojam", + "GEON": "Geon", + "GEP": "Gaia", + "GER": "GermanCoin", + "GERA": "Gera Coin", + "GERO": "GeroWallet", + "GES": "Galaxy eSolutions", + "GESE": "Gese", + "GET": "Guaranteed Entrance Token", + "GETH": "Guarded Ether", + "GETX": "Guaranteed Ethurance Token Extra", + "GEX": "Gexan", + "GF": "GuildFi", + "GFARM2": "Gains V2", + "GFCE": "GFORCE", + "GFCS": "Global Funeral Care", + "GFI": "Goldfinch", + "GFN": "Graphene", + "GFT": "Gifto", + "GFUN": "GoldFund", + "GFX": "GamyFi Token", + "GGC": "Global Game Coin", + "GGG": "Good Games Guild", + "GGM": "Monster Galaxy", + "GGOLD": "GramGold Coin", + "GGP": "GGPro", + "GGR": "GGRocket", + "GGS": "Gilgam", + "GHC": "Galaxy Heroes Coin", + "GHCOLD": "Galaxy Heroes Coin", + "GHD": "Giftedhands", + "GHNY": "Grizzly Honey", + "GHO": "GHO", + "GHOST": "GhostbyMcAfee", + "GHOSTCOIN": "GhostCoin", + "GHOSTM": "GhostMarket", + "GHOUL": "Ghoul Coin", + "GHST": "Aavegotchi", + "GHT": "Global Human Trust", + "GHX": "GamerCoin", + "GIB": "Bible Coin", + "GIC": "Giant", + "GIF": "Gift Token", + "GIFT": "GiftNet", + "GIG": "GigaCoin", + "GIGA": "GigaSwap", + "GIGX": "GigXCoin", + "GIM": "Gimli", + "GIMMER": "Gimmer", + "GIN": "GINcoin", + "GINUX": "Green Shiba Inu", + "GIO": "Graviocoin", + "GIOT": "Giotto Coin", + "GIVE": "GiveCoin", + "GIZ": "GIZMOcoin", + "GJC": "Global Jobcoin", + "GKI": "GKi", + "GLA": "Gladius", + "GLC": "GoldCoin", + "GLCH": "Glitch", + "GLD": "Goldario", + "GLDR": "Golder Coin", + "GLDS": "Gdigit", + "GLDX": "Goldex", + "GLDY": "Buzzshow", + "GLEEC": "Gleec Coin", + "GLM": "Golem Network Token", + "GLMR": "Moonbeam", + "GLN": "Galion Token", + "GLOBAL": "GlobalCoin", + "GLOBE": "Global", + "GLOS": "GLOS", + "GLOWSHA": "GlowShares", + "GLQ": "GraphLinq Protocol", + "GLS": "Glass Chain", + "GLT": "GlobalToken", + "GLX": "GalaxyCoin", + "GLYPH": "GlyphCoin", + "GM": "GM", + "GMA": "Goldchip Mining Asset", + "GMAT": "GoWithMi", + "GMB": "GMB", + "GMC": "Gridmaster", + "GMCN": "GambleCoin", + "GMCOIN": "GMCoin", + "GMEE": "GAMEE", + "GMEX": "Game Coin", + "GMI": "GamiFi", + "GML": "GameLeagueCoin", + "GMM": "Gamium", + "GMMT": "Green Mining Movement Token", + "GMPD": "GamesPad", + "GMR": "GAMER", + "GMS": "Gemstra", + "GMT": "STEPN", + "GMTT": "GMT Token", + "GMX": "GMX", + "GN": "GN", + "GNBT": "Genebank Token", + "GNC": "Greencoin", + "GNJ": "GanjaCoin V2", + "GNNX": "Gennix", + "GNO": "Gnosis", + "GNR": "Gainer", + "GNS": "Gains Network", + "GNT": "GreenTrust", + "GNTO": "GoldeNugget Token", + "GNX": "Genaro Network", + "GNY": "GNY", + "GO": "GoChain", + "GOA": "GoaCoin", + "GOAL": "GOAL token", + "GOALBON": "Goal Bonanza", + "GOALS": "UnitedFans", + "GOAT": "Goat", + "GOC": "GoCrypto", + "GOD": "Bitcoin God", + "GODE": "Gode Chain", + "GODL": "GODL", + "GODS": "Gods Unchained", + "GODZ": "Cryptogodz", + "GOF": "Golff", + "GOFF": "Gift Off Token", + "GOFX": "GooseFX", + "GOG": "Guild of Guardians", + "GOGO": "GOGO Finance", + "GOKU": "Goku", + "GOL": "GogolCoin", + "GOLC": "GOLCOIN", + "GOLD": "CyberDragon Gold", + "GOLDENG": "Golden Goose", + "GOLDMIN": "GoldMiner", + "GOLDPIECES": "GoldPieces", + "GOLDX": "eToro Gold", + "GOLF": "GolfCoin", + "GOLOS": "Golos", + "GOLOSBLOCKCHAIN": "Golos Blockchain", + "GOM": "Gomics", + "GOM2": "GoMoney2", + "GOMA": "GOMA Finance", + "GOMT": "GoMeat", + "GOOD": "Goodomy", + "GOON": "Goonies", + "GOPX": "GOPX Token", + "GOREC": "GoRecruit", + "GORILLA": "Gorilla Diamond", + "GORILLAINU": "Gorilla Inu", + "GOS": "Gosama", + "GOSS": "GOSSIP-Coin", + "GOST": "SoulCoin", + "GOT": "ParkinGo", + "GOTEM": "gotEM", + "GOTG": "Got Guaranteed", + "GOTX": "GothicCoin", + "GOVI": "Govi", + "GOVT": "The Government Network", + "GOZ": "Göztepe S.K. Fan Token", + "GP": "Wizards And Dragons", + "GPBP": "Genius Playboy Billionaire Philanthropist", + "GPKR": "Gold Poker", + "GPL": "Gold Pressed Latinum", + "GPPT": "Pluto Project Coin", + "GPS": "Triffic", + "GPT": "Grace Period Token", + "GPU": "GPU Coin", + "GPX": "GPEX", + "GQ": "Galactic Quadrant", + "GR": "GROM", + "GRAIL": "Camelot Token", + "GRANDCOIN": "GrandCoin", + "GRAV": "Graviton", + "GRAVITYF": "Gravity Finance", + "GRAYLL": "GRAYLL", + "GRBE": "Green Beli", + "GRBT": "Grinbit", + "GRC": "GreenCoin.AI", + "GRE": "GreenCoin", + "GREARN": "GrEarn", + "GREEN": "GreenX", + "GREENT": "Greentoken", + "GREXIT": "GrexitCoin", + "GREY": "Grey Token", + "GRFT": "Graft Blockchain", + "GRID": "Grid+", + "GRIDCOIN": "GridCoin", + "GRIDZ": "GridZone.io", + "GRIMEX": "SpaceGrime", + "GRIN": "Grin", + "GRLC": "Garlicoin", + "GRM": "GridMaster", + "GRMD": "GreenMed", + "GRN": "GreenPower", + "GRO": "Gro DAO Token", + "GRON": "Gron Digital", + "GROW": "GrownCoin", + "GROWTH": "GROWTH DeFi", + "GRPL": "Golden Ratio Per Liquidity", + "GRS": "Groestlcoin", + "GRT": "The Graph", + "GRUMPY": "Grumpy Finance", + "GRV": "Grove", + "GRVE": "Grave", + "GRW": "GrowthCoin", + "GRWI": "Growers International", + "GRX": "Gold Reward Token", + "GS": "Genesis Shards", + "GSC": "Global Social Chain", + "GSE": "GSENetwork", + "GSHIBA": "Gambler Shiba", + "GSI": "Globex SCI", + "GSM": "GSM Coin", + "GSPI": "GSPI", + "GSR": "GeyserCoin", + "GST": "Green Satoshi Token (SOL)", + "GSTBSC": "Green Satoshi Token (BSC)", + "GSTC": "GSTCOIN", + "GSTETH": "Green Satoshi Token (ETH)", + "GSTS": "Gunstar Metaverse", + "GSTT": "GSTT", + "GSWAP": "Gameswap", + "GSX": "Gold Secured Currency", + "GSY": "GenesysCoin", + "GT": "Gatechain Token", + "GTC": "Gitcoin", + "GTCOIN": "Game Tree", + "GTFO": "DumpBuster", + "GTH": "Gath3r", + "GTIB": "Global Trust Coin", + "GTK": "GoToken", + "GTN": "GlitzKoin", + "GTON": "GTON Capital", + "GTR": "Gturbo", + "GTSE": "Global Tourism Sharing Ecology", + "GTX": "GALLACTIC", + "GUAR": "Guarium", + "GUE": "GuerillaCoin", + "GUESS": "Peerguess", + "GUILD": "BlockchainSpace", + "GULF": "GulfCoin", + "GUM": "Gourmet Galaxy", + "GUN": "GunCoin", + "GUNS": "GeoFunders", + "GUP": "Guppy", + "GUSD": "Gemini Dollar", + "GUSDT": "Global Utility Smart Digital Token", + "GVE": "Globalvillage Ecosystem", + "GVR": "Grove [OLD]", + "GVT": "Genesis Vision", + "GWT": "Galaxy War", + "GX": "GameX", + "GXA": "Galaxia", + "GXC": "GXChain", + "GXT": "Gem Exchange And Trading", + "GYEN": "GYEN", + "GYM": "GYM Token", + "GYMNET": "Gym Network", + "GYMREW": "Gym Rewards", + "GZB": "Gigzi", + "GZE": "GazeCoin", + "GZIL": "governance ZIL", + "GZLR": "Guzzler", + "GZONE": "GameZone", + "GZX": "GreenZoneX", + "H2O": "H2O Dao", + "H2ON": "H2O Securities", + "H3O": "Hydrominer", + "HAC": "Hackspace Capital", + "HACHIKO": "Hachiko Inu Token", + "HAI": "Hacken Token", + "HAKA": "TribeOne", + "HAKKA": "Hakka Finance", + "HAL": "Halcyon", + "HALF": "0.5X Long Bitcoin Token", + "HALFSHIT": "0.5X Long Shitcoin Index Token", + "HALLO": "Halloween Coin", + "HALO": "Halo Coin", + "HALOPLATFORM": "Halo Platform", + "HAM": "Hamster", + "HAMS": "HamsterCoin", + "HANA": "Hanacoin", + "HAND": "ShowHand", + "HANDY": "Handy", + "HANU": "Hanu Yokia", + "HAO": "HistoryDAO", + "HAPI": "HAPI", + "HARAMBE": "Harambe", + "HARD": "Kava Lend", + "HART": "HARA", + "HASH": "Provenance Blockchain", + "HASHT": "HASH Token", + "HAT": "Hawala.Exchange", + "HATI": "Hati", + "HAUS": "DAOhaus", + "HAWK": "Hawksight", + "HAZ": "Hazza", + "HAZE": "HazeCoin", + "HB": "HeartBout", + "HBAR": "Hedera Hashgraph", + "HBB": "Hubble", + "HBC": "HBTC Captain Token", + "HBD": "Hive Dollar", + "HBE": "healthbank", + "HBN": "HoboNickels", + "HBO": "Hash Bridge Oracle", + "HBOT": "Hummingbot", + "HBRS": "HubrisOne", + "HBT": "Habitat", + "HBTC": "Huobi BTC", + "HBX": "Hyperbridge", + "HC": "HyperCash", + "HCC": "HappyCreatorCoin", + "HCT": "HurricaneSwap Token", + "HCXP": "HCX PAY", + "HD": "HubDao", + "HDAC": "Hdac", + "HDAO": "Hkd.com Dao", + "HDG": "Hedge Token", + "HDRN": "Hedron", + "HDV": "Hydraverse", + "HDX": "HydraDX", + "HE": "Heroes & Empires", + "HEAL": "Etheal", + "HEART": "Humans", + "HEARTBOUT": "HeartBout Pay", + "HEARTR": "Heart Rate", + "HEAT": "Heat Ledger", + "HEC": "Hector Finance", + "HECTA": "Hectagon", + "HEDG": "HedgeTrade", + "HEDGE": "Hedgecoin", + "HEEL": "HeelCoin", + "HEGIC": "Hegic", + "HELIOS": "Mission Helios", + "HELL": "HELL COIN", + "HELLO": "HELLO", + "HELMET": "Helmet Insure", + "HELPS": "HelpSeed", + "HEP": "Health Potion", + "HER": "Hero Node", + "HERA": "Hero Arena", + "HERB": "HerbCoin", + "HERO": "Metahero", + "HEROES": "Dehero Community Token", + "HEROESC": "HeroesChained", + "HET": "HavEther", + "HETA": "HetaChain", + "HETH": "Huobi Ethereum", + "HEX": "HEX", + "HEXC": "HexCoin", + "HEZ": "Hermez Network Token", + "HFI": "Holder Finance", + "HFIL": "Huobi Fil", + "HFT": "Hashflow", + "HGET": "Hedget", + "HGO": "HireGo", + "HGOLD": "HollyGold", + "HGS": "HashGains", + "HGT": "Hello Gold", + "HH": "Holyheld", + "HHEM": "Healthureum", + "HI": "hi Dollar", + "HIBAYC": "hiBAYC", + "HIBIKI": "Hibiki Finance", + "HIBS": "Hiblocks", + "HID": "Hypersign Identity", + "HIDU": "H-Education World", + "HIENS4": "hiENS4", + "HIFI": "Hifi Finance", + "HIGH": "Highstreet", + "HIH": "HiHealth", + "HILL": "President Clinton", + "HINA": "Hina Inu", + "HINT": "Hintchain", + "HIPPO": "HIPPO", + "HIRE": "HireMatch", + "HIT": "HitChain", + "HITBTC": "HitBTC Token", + "HITOP": "Hitop", + "HIVE": "Hive", + "HIX": "HELIX Orange", + "HKC": "HK Coin", + "HKDX": "eToro Hong Kong Dollar", + "HKG": "Hacker Gold", + "HKN": "Hacken", + "HLC": "HalalChain", + "HLD": "HyperLending", + "HLDY": "HOLIDAY", + "HLM": "Helium", + "HLP": "Purpose Coin", + "HLPT": "HLP Token", + "HLT": "HyperLoot", + "HLX": "Helex", + "HMC": "Hi Mutual Society", + "HMD": "Homelend", + "HMN": "Harvest Masternode Coin", + "HMP": "HempCoin", + "HMQ": "Humaniq", + "HMR": "Homeros", + "HMRN": "Homerun", + "HMST": "Hamster Marketplace Token", + "HMT": "HUMAN Token", + "HNB": "HashNet BitEco", + "HNC": "Hellenic Coin", + "HNCN": "Huncoin", + "HNS": "Handshake", + "HNST": "Honest", + "HNT": "Helium", + "HNTR": "Hunter", + "HNY": "Honey", + "HNZO": "Hanzo Inu", + "HOBO": "HOBO THE BEAR", + "HOD": "HoDooi.com", + "HODL": "HOdlcoin", + "HOGE": "Hoge Finance", + "HOKK": "Hokkaidu Inu", + "HOLD": "HOLD", + "HOLY": "Holy Trinity", + "HOMI": "HOMIHELP", + "HONEY": "Honey", + "HONOR": "HonorLand", + "HOOK": "Hooked Protocol", + "HOP": "Hop Protocol", + "HOPR": "HOPR", + "HORD": "Hord", + "HORSE": "Ethorse", + "HORUS": "HorusPay", + "HOSKY": "Hosky", + "HOT": "Holo", + "HOTCROSS": "Hot Cross", + "HOTN": "HotNow", + "HOTT": "HOT Token", + "HOWL": "Coyote", + "HP": "HeroPark", + "HPAD": "HarmonyPad", + "HPAY": "HedgePay", + "HPB": "High Performance Blockchain", + "HPC": "HappyCoin", + "HPL": "HappyLand (HPL)", + "HPN": "HyperonChain", + "HPT": "Huobi Pool Token", + "HPX": "HUPAYX", + "HQT": "HyperQuant", + "HQX": "HOQU", + "HRB": "Harbour DAO", + "HRBE": "Harambee Token", + "HRD": "Hoard", + "HRDG": "HRDGCOIN", + "HRO": "HEROIC.com", + "HRTS": "YellowHeart Protocol", + "HSC": "HashCoin", + "HSF": "Hillstone Finance", + "HSN": "Hyper Speed Network", + "HSP": "Horse Power", + "HSS": "Hashshare", + "HST": "Decision Token", + "HT": "Huobi Token", + "HTA": "Historia", + "HTB": "Hotbit", + "HTC": "Hitcoin", + "HTDF": "Orient Walt", + "HTER": "Biogen", + "HTML": "HTML Coin", + "HTN": "Heart Number", + "HTO": "Heavenland HTO", + "HTR": "Hathor", + "HTT": "Hello Art", + "HUB": "Hub Token", + "HUBII": "Hubii Network", + "HUC": "HunterCoin", + "HUGE": "BigCoin", + "HUM": "Humanscape", + "HUNNY": "Pancake Hunny", + "HUNT": "HUNT", + "HUR": "Hurify", + "HUS": "HUSSY", + "HUSD": "HUSD", + "HUSH": "Hush", + "HUSKY": "Husky", + "HUSL": "Hustle Token", + "HVC": "HeavyCoin", + "HVCO": "High Voltage Coin", + "HVE": "UHIVE", + "HVE2": "Uhive", + "HVN": "Hiveterminal Token", + "HVNT": "HiveNet Token", + "HVT": "HyperVerse", + "HWC": "HollyWoodCoin", + "HXC": "HexanCoin", + "HXRO": "Hxro", + "HXT": "HextraCoin", + "HXX": "HexxCoin", + "HYBN": "Hey Bitcoin", + "HYBRID": "Hybrid Bank Cash", + "HYC": "HYCON", + "HYDRA": "Hydra", + "HYDRO": "Hydro", + "HYDROMINER": "Hydrominer", + "HYDROP": "Hydro Protocol", + "HYGH": "HYGH", + "HYN": "Hyperion", + "HYP": "HyperStake", + "HYPE": "Hype", + "HYPER": "HyperChainX", + "HYPERCOIN": "HyperCoin", + "HYPERD": "HyperDAO", + "HYPERS": "HyperSpace", + "HYS": "Heiss Shares", + "HYT": "HoryouToken", + "HYVE": "Hyve", + "HZ": "Horizon", + "HZM": "HZM Coin", + "HZN": "Horizon Protocol", + "HZT": "HazMatCoin", + "I0C": "I0coin", + "I7": "ImpulseVen", + "I9C": "i9 Coin", + "IAG": "IAGON", + "IAM": "IAME Identity", + "IB": "Iron Bank", + "IBANK": "iBankCoin", + "IBAT": "Battle Infinity", + "IBETH": "Interest Bearing ETH", + "IBEUR": "Iron Bank EURO", + "IBFR": "iBuffer Token", + "IBG": "iBG Token", + "IBNB": "iBNB", + "IBP": "Innovation Blockchain Payment", + "IBS": "Irbis Network", + "IC": "Ignition", + "ICA": "Icarus Network", + "ICAP": "ICAP Token", + "ICASH": "ICASH", + "ICB": "IceBergCoin", + "ICC": "Insta Cash Coin", + "ICE": "Decentral Games ICE", + "ICH": "IdeaChain", + "ICHI": "ICHI", + "ICHN": "i-chain", + "ICHX": "IceChain", + "ICN": "Iconomi", + "ICOB": "Icobid", + "ICOM": "iCommunity", + "ICON": "Iconic", + "ICONS": "SportsIcon", + "ICOO": "ICO OpenLedger", + "ICOS": "ICOBox", + "ICP": "Internet Computer", + "ICSA": "Icosa", + "ICST": "ICST", + "ICT": "Intrachain", + "ICX": "ICON Project", + "ID": "SPACE", + "IDAC": "IDAC", + "IDAP": "IDAP", + "IDC": "IdealCoin", + "IDEA": "Ideaology", + "IDEFI": "Inverse DeFi Index", + "IDEX": "IDEX", + "IDH": "IndaHash", + "IDHUB": "IDHUB", + "IDIA": "Impossible Finance Launchpad", + "IDICE": "iDice", + "IDK": "IDK", + "IDLE": "IDLE", + "IDM": "IDM", + "IDNA": "Idena", + "IDO": "Idexo", + "IDORU": "Vip2Fan", + "IDRT": "Rupiah Token", + "IDT": "InvestDigital", + "IDTT": "Identity", + "IDV": "Idavoll DAO", + "IDX": "Index Chain", + "IDXM": "IDEX Membership", + "IDXS": "In-Dex Sale", + "IEC": "IvugeoEvolutionCoin", + "IETH": "iEthereum", + "IFC": "Infinite Coin", + "IFLT": "InflationCoin", + "IFT": "InvestFeed", + "IFUM": "Infleum", + "IFUND": "Unifund", + "IFX": "IdeaFeX", + "IG": "IG Token ", + "IGCH": "IG-Crypto Holding", + "IGG": "IG Gold", + "IGI": "Igi", + "IGNIS": "Ignis", + "IGTT": "IGT", + "IGU": "IguVerse", + "IHC": "Inflation Hedging Coin", + "IHF": "Invictus Hyperion Fund", + "IHT": "I-House Token", + "IIC": "Intelligent Investment Chain", + "IJC": "IjasCoin", + "IJZ": "iinjaz", + "ILA": "Infinite Launch", + "ILC": "ILCOIN", + "ILCT": "ILCoin Token", + "ILK": "Inlock", + "ILT": "iOlite", + "ILV": "Illuvium", + "IMBTC": "The Tokenized Bitcoin", + "IMC": "i Money Crypto", + "IME": "Imperium Empires", + "IMG": "ImageCoin", + "IMGZ": "Imigize", + "IMI": "Influencer", + "IML": "IMMLA", + "IMP": "CoinIMP", + "IMPACT": "Impact", + "IMPACTXP": "ImpactXP", + "IMPCH": "Impeach", + "IMPCN": "Brain Space", + "IMPER": "Impermax", + "IMPS": "Impulse Coin", + "IMPT": "IMPT", + "IMPULSE": "IMPULSE by FDR", + "IMS": "Independent Money System", + "IMST": "Imsmart", + "IMT": "IMOV", + "IMU": "imusify", + "IMVR": "ImmVRse", + "IMX": "Immutable X", + "IN": "InCoin", + "INARI": "Inari", + "INB": "Insight Chain", + "INC": "Incrementum", + "INCAKE": "InfinityCAKE", + "INCNT": "Incent", + "INCP": "InceptionCoin", + "IND": "Indorse", + "INDEX": "Index Cooperative", + "INDI": "IndiGG", + "INDIA": "Indiacoin", + "INDICOIN": "IndiCoin", + "INE": "IntelliShare", + "INERY": "Inery", + "INES": "Inescoin", + "INET": "Insure Network", + "INF": "Infinium", + "INFC": "Influence Chain", + "INFI": "Insured Finance", + "INFINI": "Infinity Economics", + "INFLR": "Inflr", + "INFO": "Infomatix", + "INFT": "Infinito", + "INFTT": "iNFT Token", + "INFX": "Influxcoin", + "ING": "Infinity Games", + "INJ": "Injective", + "INK": "Ink", + "INN": "Innova", + "INNBC": "Innovative Bioresearch Coin", + "INNOU": "Innou", + "INO": "Ino Coin", + "INRT": "INRToken", + "INS": "Insolar (Old Chain)", + "INSANE": "InsaneCoin", + "INSN": "Insane Coin", + "INST": "Instadapp", + "INSTAMINE": "Instamine Nuggets", + "INSTAR": "Insights Network", + "INSUR": "InsurAce", + "INSURC": "InsurChain Coin", + "INT": "Internet Node token", + "INTER": "Inter Milan Fan Token", + "INTO": "Influ Token", + "INTR": "Interlay", + "INU": "INU Token", + "INUYASHA": "Inuyasha", + "INV": "Inverse Finance", + "INVC": "Invacio", + "INVESTEL": "Investelly token", + "INVI": "INVI Token", + "INVIC": "Invictus", + "INVOX": "Invox Finance", + "INVX": "Investx", + "INX": "Insight Protocol", + "INXM": "InMax", + "INXT": "Internxt", + "INXTOKEN": "INX Token", + "IOC": "IOCoin", + "IOEN": "Internet of Energy Network", + "IOEX": "ioeX", + "IOI": "IOI Token", + "ION": "Ionomy", + "IONC": "IONChain", + "IONX": "Charged Particles", + "IONZ": "IONZ", + "IOP": "Internet of People", + "IOST": "IOS token", + "IOTW": "IOTW", + "IOTX": "IoTeX Network", + "IOU": "IOU1", + "IOUX": "IOU", + "IOV": "Starname", + "IOVT": "IOV", + "IOWN": "iOWN Token", + "IP3": "Cripco", + "IPAD": "Infinity Pad", + "IPC": "IPChain", + "IPDN": "IPDnetwork", + "IPL": "VouchForMe", + "IPSX": "IP Exchange", + "IPT": "Crypt-ON", + "IPUX": "IPUX", + "IPV": "IPVERSE", + "IPX": "InpulseX", + "IQ": "IQ", + "IQC": "IQ.cash", + "IQN": "IQeon", + "IQQ": "Iqoniq", + "IRC": "IRONCOIN", + "IRIS": "IRIS Network", + "IRL": "IrishCoin", + "IRON": "Iron BSC", + "IRT": "Infinity Rocket", + "ISA": "Islander", + "ISDT": "ISTARDUST", + "ISG": "ISG", + "ISH": "Interstellar Holdings", + "ISHND": "StrongHands Finance", + "ISIKC": "Isiklar Coin", + "ISKY": "Infinity Skies", + "ISL": "IslaCoin", + "ISLAMI": "ISLAMICOIN", + "ISP": "Ispolink", + "ISR": "Insureum", + "ISRG.CUR": "Intuitive Surgical, Inc.", + "ISTEP": "iSTEP", + "ITA": "Italian National Football Team Fan Token", + "ITALOCOIN": "Italocoin", + "ITAM": "ITAM Games", + "ITAMCUBE": "CUBE", + "ITC": "IoT Chain", + "ITEM": "ITEMVERSE", + "ITF": "Intelligent Trading", + "ITG": "iTrust Governance", + "ITGR": "Integral", + "ITL": "Italian Lira", + "ITM": "intimate.io", + "ITOC": "ITOChain", + "ITR": "INTRO", + "ITU": "iTrue", + "ITZ": "Interzone", + "IUNGO": "Iungo", + "IUX": "GeniuX", + "IVAR": "Ivar Coin", + "IVC": "Investy Coin", + "IVN": "IVN Security", + "IVY": "IvyKoin", + "IVZ": "InvisibleCoin", + "IW": "iWallet", + "IWT": "IwToken", + "IX": "X-Block", + "IXC": "IXcoin", + "IXP": "IMPACTXPRIME", + "IXS": "IX Swap", + "IXT": "iXledger", + "IZA": "Inzura", + "IZE": "IZE", + "IZER": "IZEROIUM", + "IZI": "Izumi Finance", + "IZICHAIN": "IZIChain", + "IZX": "IZX", + "IZZY": "Izzy", + "InBit": "PrepayWay", + "J": "JoinCoin", + "J8T": "JET8", + "J9BC": "J9CASINO", + "JACS": "JACS", + "JACY": "JACY", + "JADE": "Jade Protocol", + "JADEC": "Jade Currency", + "JAM": "Tune.Fm", + "JANE": "JaneCoin", + "JAR": "Jarvis+", + "JARED": "Jared From Subway", + "JASMY": "JasmyCoin", + "JBS": "JumBucks Coin", + "JBX": "Juicebox", + "JC": "JesusCoin", + "JCB": "Wine Chain", + "JCC": "Junca Cash", + "JCG": "JustCarbon Governance", + "JCR": "JustCarbon Removal", + "JCT": "Japan Content Token", + "JDC": "JustDatingSite", + "JED": "JEDSTAR", + "JEFF": "Jeff in Space", + "JEJUDOGE": "Jejudoge", + "JEM": "Jem", + "JET": "Jet Protocol", + "JETCOIN": "Jetcoin", + "JEW": "Shekel", + "JEWEL": "DeFi Kingdoms", + "JEX": "JEX Token", + "JFI": "JackPool.finance", + "JFIN": "JFIN Coin", + "JGN": "Juggernaut", + "JIAOZI": "Jiaozi", + "JIB": "Jibbit", + "JIF": "JiffyCoin", + "JINDOGE": "Jindoge", + "JIO": "JIO Token", + "JKC": "JunkCoin", + "JM": "JustMoney", + "JMC": "Junson Ming Chan Coin", + "JMPT": "JumpToken", + "JMT": "JMTIME", + "JNS": "Janus", + "JNT": "Jibrel Network Token", + "JOB": "Jobchain", + "JOBS": "JobsCoin", + "JOE": "JOE", + "JOINT": "Joint Ventures", + "JOK": "JokerCoin", + "JONES": "Jones DAO", + "JOY": "Joycoin", + "JOYS": "JOYS", + "JOYT": "JoyToken", + "JP": "JP", + "JPAW": "Jpaw Inu", + "JPEG": "JPEG'd", + "JPYC": "JPYC", + "JPYX": "eToro Japanese Yen", + "JRIT": "JERITEX", + "JRT": "Jarvis Reward Token", + "JSE": "JSEcoin", + "JST": "JUST", + "JT": "Jubi Token", + "JTS": "Jetset", + "JTX": "Project J", + "JUDGE": "JudgeCoin", + "JUI": "Juiice", + "JUL": "Joule", + "JULB": "JustLiquidity Binance", + "JULD": "JulSwap", + "JUMBO": "Jumbo Exchange", + "JUMP": "Jumpcoin", + "JUN": "Jun \"M\" Coin", + "JUNO": "JUNO", + "JUP": "Jupiter", + "JUR": "Jur", + "JUSTICE": "AssangeDAO", + "JUV": "Juventus Fan Token", + "JVY": "Javvy", + "JWL": "Jewels", + "K21": "K21", + "K2G": "Kasko2go", + "KAAS": "KAASY.AI", + "KAC": "KACO Finance", + "KAI": "KardiaChain", + "KAIKEN": "Kaiken Shiba", + "KAINET": "KAINET", + "KAL": "Kaleido", + "KALA": "Kalata Protocol", + "KALAM": "Kalamint", + "KALI": "Kalissa", + "KALLY": "Polkally", + "KALM": "KALM", + "KALYCOIN": "KalyCoin", + "KAM": "BitKAM", + "KAN": "Bitkan", + "KAPU": "Kapu", + "KAR": "Karura", + "KARATE": "Karate Combat", + "KAREN": "KarenCoin", + "KARMA": "Karma", + "KARMAD": "Karma DAO", + "KART": "Dragon Kart", + "KAS": "Kaspa", + "KASSIAHOME": "Kassia Home", + "KASTA": "Kasta", + "KAT": "Kambria", + "KATA": "Katana Inu", + "KATANA": "Katana Finance", + "KATZ": "KATZcoin", + "KAVA": "Kava", + "KAWA": "Kawakami Inu", + "KAYI": "Kayı", + "KB3": "B3Coin", + "KBC": "Karatgold coin", + "KBD": "Kyberdyne", + "KBOND": "Klondike Bond", + "KBOT": "Korbot", + "KBOX": "The Killbox", + "KBR": "Kubera Coin", + "KBT": "Kartblock", + "KBTC": "Klondike BTC", + "KBX": "KuBitX", + "KC": "Kernalcoin", + "KCAL": "Phantasma Energy", + "KCASH": "Kcash", + "KCCM": "KCC MemePad", + "KCCPAD": "KCCPad", + "KCH": "Keep Calm and Hodl", + "KCS": "KuCoin Token", + "KCT": "Konnect", + "KDA": "Kadena", + "KDAG": "King DAG", + "KDC": "Klondike Coin", + "KDG": "Kingdom Game 4.0", + "KDIA": "KDIA COIN", + "KDOGE": "KingDoge", + "KEANU": "Keanu Inu", + "KEC": "KEYCO", + "KED": "Klingon Empire Darsek", + "KEEP": "Keep Network", + "KEES": "Korea Entertainment Education & Shopping", + "KEI": "Keisuke Inu", + "KEK": "KekCoin", + "KEL": "KelVPN", + "KELPIE": "Kelpie Inu", + "KEN": "Kencoin", + "KEP": "Kepler", + "KETAN": "Ketan", + "KEX": "Kira Network", + "KEXCOIN": "KexCoin", + "KEY": "SelfKey", + "KEYC": "KeyCoin", + "KEYFI": "KeyFi", + "KFC": "Chicken", + "KFI": "Klever Finance", + "KFT": "Knit Finance", + "KGC": "Krypton Galaxy Coin", + "KGO": "Kiwigo", + "KHM": "Kohima", + "KIAN": "Porta", + "KIBA": "Kiba Inu", + "KICK": "Kick", + "KICKS": "GetKicks", + "KIF": "KittenFinance", + "KILLER": "Fat Cat Killer", + "KILT": "KILT Protocol", + "KIM": "King Money", + "KIMCHI": "KIMCHI.finance", + "KIN": "Kin", + "KIND": "Kind Ads", + "KINE": "Kine Protocol", + "KING": "KING", + "KING93": "King93", + "KINGDOMQUEST": "Kingdom Quest", + "KINGF": "King Finance", + "KINGSHIB": "King Shiba", + "KINGSWAP": "KingSwap", + "KINT": "Kintsugi", + "KIRBY": "Kirby Inu", + "KIRBYRELOADED": "Kirby Reloaded", + "KIRO": "Kirobo", + "KISC": "Kaiser", + "KISHIMOTO": "Kishimoto Inu", + "KISHU": "Kishu Inu", + "KITA": "KITA INU", + "KITSU": "Kitsune Inu", + "KITTY": "Kitty Inu", + "KKO": "Kineko", + "KKT": "Kingdom Karnage", + "KLAP": "Klap Finance", + "KLAY": "Klaytn", + "KLC": "KiloCoin", + "KLEE": "KleeKai", + "KLK": "Klickzie", + "KLKS": "Kalkulus", + "KLO": "Kalao", + "KLON": "Klondike Finance", + "KLP": "Kulupu", + "KLV": "Klever", + "KMA": "Calamari Network", + "KMD": "Komodo", + "KMON": "Kryptomon", + "KMX": "KiMex", + "KNC": "Kyber Network Crystal v2", + "KNCL": "Kyber Network Crystal Legacy", + "KNG": "BetKings", + "KNGN": "KingN Coin", + "KNOT": "Karmaverse", + "KNOW": "KNOW", + "KNT": "Knekted", + "KNW": "Knowledge", + "KOBE": "Shabu Shabu", + "KOBO": "KoboCoin", + "KODACHI": "Kodachi Token", + "KOI": "Koi Network", + "KOIN": "Koinos", + "KOK": "KOK Coin", + "KOKO": "KokoSwap", + "KOL": "Kollect", + "KOLION": "Kolion", + "KOM": "Kommunitas", + "KOMP": "Kompass", + "KON": "KonPay", + "KONO": "Konomi Network", + "KORE": "KORE Vault", + "KOREC": "Kore", + "KOTO": "Koto", + "KOZ": "Kozjin", + "KP3R": "Keep3rV1", + "KP4R": "Keep4r", + "KPAD": "KickPad", + "KPC": "KEEPs Coin", + "KPL": "Kepple", + "KPOP": "KPOP Coin", + "KRAK": "Kraken", + "KRATOS": "KRATOS", + "KRB": "Karbo", + "KRC": "KRCoin", + "KRD": "Krypton DAO", + "KREDS": "KREDS", + "KRIPTO": "Kripto", + "KRL": "Kryll", + "KRM": "Karma", + "KRN": "KRYZA Network", + "KRO": "Betoken", + "KROM": "Kromatika", + "KRONE": "Kronecoin", + "KRP": "Kryptoin", + "KRRX": "Kyrrex", + "KRT": "TerraKRW", + "KRU": "Kingaru", + "KRUGERCOIN": "KrugerCoin", + "KRX": "RAVN Korrax", + "KS2": "Kingdomswap", + "KSC": "KStarCoin", + "KSH": "Kahsh", + "KSHIB": "Kilo Shiba Inu", + "KSK.BITCI": "Karsiyaka Taraftar Token", + "KSM": "Kusama", + "KSP": "KlaySwap Protocol", + "KSS": "Krosscoin", + "KST": "StarKST", + "KSTT.BITCI": "Kocaelispor Fan Token", + "KSYS": "K-Systems", + "KT": "Kuai Token", + "KTK": "KryptCoin", + "KTN": "Kattana", + "KTO": "Kounotori", + "KTON": "Darwinia Commitment Token", + "KTS": "Klimatas", + "KTT": "K-Tune", + "KTX": "KwikTrust", + "KUB": "Bitkub Coin", + "KUBE": "KubeCoin", + "KUBO": "KUBO", + "KUBOS": "KubosCoin", + "KUE": "Kuende", + "KUJI": "Kujira", + "KUMA": "Kuma Inu", + "KUNCI": "Kunci Coin", + "KUR": "Kuro", + "KURT": "Kurrent", + "KUSA": "Kusa Inu", + "KUSD": "Kowala", + "KUSH": "KushCoin", + "KUV": "Kuverit", + "KVERSE": "KEEPs Coin", + "KVI": "KVI Chain", + "KVNT": "KVANT", + "KVT": "Kinesis Velocity Token", + "KWATT": "4New", + "KWD": "KIWI DEFI", + "KWENTA": "Kwenta", + "KWH": "KWHCoin", + "KWIK": "KwikSwap", + "KWS": "Knight War Spirits", + "KXUSD": "kxUSD", + "KYCC": "KYCCOIN", + "KYL": "Kylin Network", + "KYOKO": "Kyoko", + "KYTE": "Kambria Yield Tuning Engine", + "KZC": "KZCash", + "KZEN": "Kaizen", + "L": "L inu", + "L3P": "Lepricon", + "LA": "LATOKEN", + "LAB": "Labrys", + "LABRA": "LabraCoin", + "LABS": "LABS Group", + "LABX": "Stakinglab", + "LACCOIN": "LocalAgro", + "LACE": "Lovelace World", + "LADYS": "Milady Meme Coin", + "LAEEB": "LaEeb", + "LAELAPS": "Laelaps", + "LAIKA": "Laika Protocol", + "LALA": "LaLa World", + "LAMB": "Lambda", + "LANA": "LanaCoin", + "LANC": "Lanceria", + "LAND": "Landshare", + "LANDB": "LandBox", + "LANE": "LaneAxis", + "LAO": "LC Token", + "LAR": "LinkArt", + "LARIX": "Larix", + "LAS": "LNAsolution Coin", + "LAT": "PlatON Network", + "LATTE": "LatteSwap", + "LATX": "Latium", + "LAVA": "Lavaswap", + "LAVAX": "LavaX Labs", + "LAW": "Law Token", + "LAX": "LAPO", + "LAYER": "UniLayer", + "LAZ": "Lazarus", + "LAZIO": "Lazio Fan Token", + "LBA": "Cred", + "LBC": "LBRY Credits", + "LBK": "LBK", + "LBL": "LABEL Foundation", + "LBLOCK": "Lucky Block", + "LBR": "LaborCrypto", + "LBTC": "LiteBitcoin", + "LBXC": "LUX BIO EXCHANGE COIN", + "LC": "Lotus Capital", + "LC4": "LEOcoin", + "LCASH": "LitecoinCash", + "LCC": "LitecoinCash", + "LCG": "LCG", + "LCK": "Luckbox", + "LCMG": "ElysiumG", + "LCMS": "LCMS", + "LCP": "Litecoin Plus", + "LCR": "Lucre", + "LCS": "LocalCoinSwap", + "LCT": "LendConnect", + "LCWP": "LiteCoinW Plus", + "LCX": "LCX", + "LDC": "LeadCoin", + "LDFI": "LenDeFi Token", + "LDM": "Ludum token", + "LDN": "Ludena Protocol", + "LDO": "Lido DAO", + "LDOGE": "LiteDoge", + "LDX": "Litedex", + "LEA": "LeaCoin", + "LEAF": "LeafCoin", + "LEAG": "LeagueDAO Governance Token", + "LEAN": "Lean Management", + "LEASH": "Doge Killer", + "LED": "LEDGIS", + "LEDU": "Education Ecosystem", + "LEGO": "Lego Coin", + "LELE": "Lelecoin", + "LEMC": "LemonChain", + "LEMD": "Lemond", + "LEMO": "LemoChain", + "LEMON": "LemonCoin", + "LEN": "Liqnet", + "LEND": "Aave", + "LENDA": "Lenda", + "LENIN": "LeninCoin", + "LEO": "LEO Token", + "LEOPARD": "Leopard", + "LEOS": "Leonicorn Swap", + "LEOX": "Galileo", + "LEPA": "Lepasa", + "LEPEN": "LePenCoin", + "LESS": "Less Network", + "LET": "LinkEye", + "LEU": "CryptoLEU", + "LEV": "Levante U.D. Fan Token", + "LEVER": "LeverFi", + "LEVERJ": "Leverj", + "LEVL": "Levolution", + "LEX": "Elxis", + "LEXI": "LEXIT", + "LEZ": "Peoplez", + "LF": "Linkflow", + "LFC": "BigLifeCoin", + "LFT": "Lend Flare Dao", + "LFW": "Linked Finance World", + "LGBTQ": "LGBTQoin", + "LGCY": "LGCY Network", + "LGD": "Legends Cryptocurrency", + "LGO": "Legolas Exchange", + "LGOT": "LGO Token", + "LGR": "Logarithm", + "LGX": "Legion Network", + "LHB": "Lendhub", + "LHC": "LHCoin", + "LHD": "LitecoinHD", + "LHT": "LHT Coin", + "LIB": "Libellum", + "LIBERA": "Libera Financial", + "LIBERO": "Libero Financial", + "LIBFX": "Libfx", + "LIC": "Ligercoin", + "LID": "Liquidity Dividends Protocol", + "LIDER": "Lider Token", + "LIEN": "Lien", + "LIF": "Winding Tree", + "LIFE": "Life Crypto", + "LIFETOKEN": "LIFE", + "LIGER": "Ligercoin", + "LIGHT": "LightChain", + "LIKE": "Only1", + "LIKEC": "LikeCoin", + "LILFLOKI": "Lil Floki", + "LIME": "iMe Lab", + "LIMX": "LimeCoinX", + "LINA": "Linear", + "LINANET": "Lina", + "LINDA": "Metrix", + "LING": "Lingose", + "LINK": "Chainlink", + "LINKA": "LINKA", + "LINKC": "LINKCHAIN", + "LINU": "Luna Inu", + "LINX": "Linx", + "LION": "Lion Token", + "LIPC": "LIpcoin", + "LIPS": "LipChain", + "LIQ": "LIQ Protocol", + "LIQUI": "Liquidus", + "LIR": "Let it Ride", + "LIST": "KList Protocol", + "LIT": "Litentry", + "LITENETT": "Litenett", + "LITH": "Lithium Finance", + "LITHIUM": "Lithium", + "LITHO": "Lithosphere", + "LITION": "Lition", + "LIV": "LiviaCoin", + "LIVE": "TRONbetLive", + "LIVESTARS": "Live Stars", + "LIZ": "Lizus Payment", + "LK": "Liker", + "LK7": "Lucky7Coin", + "LKC": "LuckyCoin", + "LKD": "LinkDao", + "LKK": "Lykke", + "LKN": "LinkCoin Token", + "LKT": "Locklet", + "LKU": "Lukiu", + "LKY": "LuckyCoin", + "LLAND": "Lyfe Land", + "LLG": "Loligo", + "LLION": "Lydian Lion", + "LM": "LeisureMeta", + "LMAO": "LMAO Finance", + "LMC": "LomoCoin", + "LMCH": "Latamcash", + "LMCSWAP": "LimoCoin SWAP", + "LMR": "Lumerin", + "LMT": "Lympo Market Token", + "LMTOKEN": "LM Token", + "LMXC": "LimonX", + "LMY": "Lunch Money", + "LN": "LINK", + "LNC": "Blocklancer", + "LND": "Lendingblock", + "LNK": "Ethereum.Link", + "LNKC": "Linker Coin", + "LNL": "LunarLink", + "LNR": "Lunar", + "LNT": "Lottonation", + "LNX": "Lunox Token", + "LOA": "League of Ancients", + "LOAN": "Lendoit", + "LOBS": "Lobstex", + "LOC": "LockTrip", + "LOCC": "Low Orbit Crypto Cannon", + "LOCG": "LOCGame", + "LOCI": "LociCoin", + "LOCK": "Contracto", + "LOCO": "Loco", + "LOCUS": "Locus Chain", + "LOF": "Land of Fantasy", + "LOG": "Wood Coin", + "LOIS": "Lois Token", + "LOKA": "League of Kingdoms", + "LOKR": "Polkalokr", + "LOL": "EMOGI Network", + "LOLC": "LOL Coin", + "LON": "Tokenlon", + "LONG": "Longdrink Finance", + "LOOK": "LookCoin", + "LOOKS": "LooksRare", + "LOOM": "Loom Network", + "LOON": "Loon Network", + "LOOP": "ARCADE", + "LOOT": "NFTLootBox", + "LOOTEX": "Lootex", + "LORD": "Overlord", + "LORDS": "LORDS", + "LORDZ": "Meme Lordz", + "LOT": "Lukki Operating Token", + "LOTES": "Loteo", + "LOTEU": "Loteo", + "LOTTO": "LottoCoin", + "LOUD": "Loud Market", + "LOV": "LoveChain", + "LOVE": "Deesse", + "LOVELY": "Lovely Inu finance", + "LOWB": "Loser Coin", + "LOX": "Lox Network", + "LPC": "Little Phil", + "LPI": "LPI DAO", + "LPK": "Kripton", + "LPNT": "Luxurious Pro Network Token", + "LPOOL": "Launchpool", + "LPT": "Livepeer", + "LPY": "LeisurePay", + "LQ8": "Liquid8", + "LQBTC": "Liquid Bitcoin", + "LQD": "Liquid", + "LQDN": "Liquidity Network", + "LQDR": "LiquidDriver", + "LQR": "Laqira Protocol", + "LQTY": "Liquity", + "LRC": "Loopring", + "LRG": "Largo Coin", + "LRN": "Loopring [NEO]", + "LSD": "LightSpeedCoin", + "LSETH": "Liquid Staked ETH", + "LSK": "Lisk", + "LSP": "Lumenswap", + "LSS": "Lossless", + "LST": "Lendroid Support Token", + "LT": "Loctite Assets Token", + "LTA": "Litra", + "LTB": "Litebar", + "LTBC": "LTBCoin", + "LTBTC": "Lightning Bitcoin", + "LTBX": "Litbinex Coin", + "LTC": "Litecoin", + "LTCC": "Listerclassic Coin", + "LTCD": "LitecoinDark", + "LTCH": "Litecoin Cash", + "LTCP": "LitecoinPro", + "LTCR": "LiteCreed", + "LTCU": "LiteCoin Ultra", + "LTCX": "LitecoinX", + "LTD": "Limited Coin", + "LTE": "Local Token Exchange", + "LTEX": "Ltradex", + "LTG": "LiteCoin Gold", + "LTH": "Lathaan", + "LTHN": "Lethean", + "LTK": "LinkToken", + "LTNM": "Bitcoin Latinum", + "LTO": "LTO Network", + "LTPC": "Lightpaycoin", + "LTR": "LogiTron", + "LTRBT": "Little Rabbit", + "LTS": "Litestar Coin", + "LTX": "Lattice Token", + "LTZ": "Litecoinz", + "LUA": "Lua Token", + "LUC": "Play 2 Live", + "LUCA": "LUCA", + "LUCKY": "Lucky Lion", + "LUCKYB": "LuckyBlocks", + "LUCY": "Lucy", + "LUDO": "Ludo", + "LUFC": "Leeds United Fan Token", + "LUFFY": "Luffy", + "LUFFYOLD": "Luffy", + "LUM": "Illuminates", + "LUMA": "LUMA Token", + "LUMI": "LUMI Credits", + "LUN": "Lunyr", + "LUNA": "Terra", + "LUNAT": "Lunatics", + "LUNC": "Terra Classic", + "LUNCH": "LunchDAO", + "LUNE": "Luneko", + "LUNES": "Lunes", + "LUNG": "LunaGens", + "LUNR": "Lunr Token", + "LUS": "Luna Rush", + "LUSD": "Liquity USD", + "LUT": "Cinemadrom", + "LUTETIUM": "Lutetium Coin", + "LUX": "LUXCoin", + "LUXO": "Luxo", + "LUXY": "Luxy", + "LVG": "Leverage Coin", + "LVIP": "Limitless VIP", + "LVN": "LivenPay", + "LVX": "Level01", + "LWF": "Local World Forwarders", + "LX": "Moonlight", + "LXC": "LibrexCoin", + "LXF": "LuxFi", + "LXT": "LITEX", + "LXTO": "LuxTTO", + "LYB": "LyraBar", + "LYC": "LycanCoin", + "LYFE": "Lyfe", + "LYK": "Loyakk Vega", + "LYL": "LoyalCoin", + "LYM": "Lympo", + "LYN": "LYNCHPIN Token", + "LYNK": "Lynked.World", + "LYNX": "Lynx", + "LYO": "LYO Credit", + "LYQD": "eLYQD", + "LYRA": "Scrypta", + "LYTX": "LYTIX", + "LYXE": "LUKSO", + "LZ": "LaunchZone", + "M1": "SupplyShock", + "M2O": "M2O Token", + "MAC": "MachineCoin", + "MADANA": "MADANA", + "MADC": "MadCoin", + "MADOG": "MarvelDoge", + "MAEP": "Maester Protocol", + "MAG": "Magnet", + "MAGIC": "Magic", + "MAGICF": "MagicFox", + "MAHA": "MahaDAO", + "MAI": "Mindsync", + "MAID": "MaidSafe Coin", + "MAKE": "MAKE", + "MAKI": "MakiSwap", + "MALLY": "Malamute Finance", + "MAN": "Matrix AI Network", + "MANA": "Decentraland", + "MANC": "Mancium", + "MANDALA": "Mandala Exchange Token", + "MANDOX": "MandoX", + "MANGA": "Manga Token", + "MANNA": "Manna", + "MANTLE": "Mantle", + "MAP": "MAP Protocol", + "MAPC": "MapCoin", + "MAPE": "Mecha Morphing", + "MAPR": "Maya Preferred 223", + "MAPS": "MAPS", + "MARGINLESS": "Marginless", + "MARI": "MarijuanaCoin", + "MARK": "Benchmark Protocol", + "MARLEY": "Marley Token", + "MARO": "Maro", + "MARS": "MarsCoin", + "MARS4": "MARS4", + "MARSC": "MarsCoin", + "MARSH": "Unmarshal", + "MARSRISE": "MarsRise", + "MART": "Monart", + "MARV": "Marvelous", + "MARX": "MarX", + "MARXCOIN": "MarxCoin", + "MARYJ": "MaryJane Coin", + "MAS": "Midas Protocol", + "MASK": "Mask Network", + "MASP": "Market.space", + "MASQ": "MASQ", + "MASS": "MASS", + "MASTER": "Mastercoin", + "MASTERCOIN": "MasterCoin", + "MASTERMINT": "MasterMint", + "MAT": "MiniApps", + "MATH": "MATH", + "MATIC": "Polygon", + "MATPAD": "MaticPad", + "MATTER": "AntiMatter", + "MAV": "Maverick Protocol", + "MAX": "MaxCoin", + "MAXR": "Max Revive", + "MAY": "Theresa May Coin", + "MAYACOIN": "MayaCoin", + "MAZC": "MyMazzu", + "MB": "MineBee", + "MB8": "MB8 Coin", + "MBASE": "Minebase", + "MBCASH": "MBCash", + "MBCC": "Blockchain-Based Distributed Super Computing Platform", + "MBET": "MoonBet", + "MBF": "MoonBear.Finance", + "MBI": "Monster Byte Inc", + "MBIT": "Mbitbooks", + "MBL": "MovieBloc", + "MBLC": "Mont Blanc", + "MBM": "MobileBridge Momentum", + "MBN": "Mobilian Coin", + "MBONK": "megaBonk", + "MBOX": "MOBOX", + "MBP": "MobiPad", + "MBRS": "Embers", + "MBS": "MonkeyBall", + "MBT": "Metablackout", + "MBTC": "MicroBitcoin", + "MBTX": "MinedBlock", + "MBX": "Marblex", + "MC": "Merit Circle", + "MCAP": "MCAP", + "MCAR": "MasterCar", + "MCASH": "Monsoon Finance", + "MCAT20": "Wrapped Moon Cats", + "MCAU": "Meld Gold", + "MCB": "MCDEX", + "MCC": "Magic Cube Coin", + "MCD": "CDbio", + "MCF": "MCFinance", + "MCG": "MicroChains Gov Token", + "MCH": "Meconcash", + "MCI": "Musiconomi", + "MCN": "mCoin", + "MCO": "Crypto.com", + "MCO2": "Moss Carbon Credit", + "MCONTENT": "MContent", + "MCP": "My Crypto Play", + "MCRC": "MyCreditChain", + "MCRN": "MacronCoin", + "MCRT": "MagicCraft", + "MCS": "MCS Token", + "MCT": "MyConstant", + "MCU": "MediChain", + "MCV": "MCV Token", + "MDA": "Moeda", + "MDAO": "MarsDAO", + "MDB": "Million Dollar Baby", + "MDC": "MedicCoin", + "MDCL": "Medicalchain", + "MDF": "MatrixETF", + "MDH": "Telemedicoin", + "MDICE": "Multidice", + "MDM": "Medium", + "MDN": "Modicoin", + "MDS": "MediShares", + "MDT": "Measurable Data Token", + "MDU": "MDUKEY", + "MDX": "Mdex (BSC)", + "MDXH": "Mdex (HECO)", + "ME": "All.me", + "MEAN": "Meanfi", + "MEC": "MegaCoin", + "MED": "Medibloc", + "MEDI": "MediBond", + "MEDIA": "Media Network", + "MEDIC": "MedicCoin", + "MEDICO": "Mediconnect", + "MEDIT": "MediterraneanCoin", + "MEE": "Medieval Empires", + "MEED": "Meeds DAO", + "MEET": "CoinMeet", + "MEETONE": "MEET.ONE", + "MEGA": "MegaFlash", + "MEL": "MELX", + "MELD": "Melodity", + "MELI": "Meli Games", + "MELLO": "Mello Token", + "MELOS": "Melos Studio", + "MELT": "Defrost Finance", + "MEM": "Memecoin", + "MEME": "Memetic", + "MEMEINU": "Meme Inu", + "MEMORYCOIN": "MemoryCoin", + "MENGO": "Flamengo Fan Token", + "MENLO": "Menlo One", + "MEPAD": "MemePad", + "MER": "Mercurial Finance", + "MERCE": "MetaMerce", + "MERCU": "Merculet", + "MERCURY": "Mercury", + "MERI": "Merebel", + "MERIDIAN": "Meridian Network LOCK", + "MERKLE": "Merkle Network", + "MESA": "MetaVisa", + "MESG": "MESG", + "MESH": "MeshBox", + "MESSI": "MESSI COIN", + "MET": "Metronome", + "META": "Metadium", + "METAC": "Metacoin", + "METACAT": "MetaCat", + "METADOGEV2": "MetaDoge V2", + "METAF": "MetaFastest", + "METAG": "MetagamZ", + "METAL": "Metal Blockchain", + "METALCOIN": "MetalCoin", + "METAN": "Metan Evolutions", + "METAPK": "Metapocket", + "METAS": "Metaseer", + "METAV": "MetaVPad", + "METAVIE": "Metavie", + "METAX": "MetaverseX", + "METEOR": "Meteorite Network", + "METER": "Meter Stable", + "METFI": "MetFi", + "METH": "Farming Bad", + "METI": "Metis", + "METIS": "Metis Token", + "METM": "MetaMorph", + "METO": "Metafluence", + "METOLD": "Metronome", + "MEV": "MEVerse", + "MEVR": "Metaverse VR", + "MEWTWO": "Mewtwo Inu", + "MEX": "MEX", + "MEXC": "MEXC Token", + "MEXP": "MOJI Experience Points", + "MF": "MetaFighter", + "MF1": "Meta Finance", + "MFC": "MFCoin", + "MFG": "SyncFab", + "MFI": "Marginswap", + "MFS": "Moonbase File System", + "MFT": "Hifi Finance (Old)", + "MFUND": "Memefund", + "MFX": "MFChain", + "MG": "MinerGate Token", + "MGAMES": "Meme Games", + "MGD": "MassGrid", + "MGG": "MetaGaming Guild", + "MGGT": "Maggie Token", + "MGLD": "Metallurgy", + "MGN": "MagnaCoin", + "MGO": "MobileGo", + "MGP": "MangoChain", + "MGPT": "MotoGP Fan Token", + "MGT": "Megatech", + "MGUL": "Mogul Coin", + "MGX": "MargiX", + "MHC": "MetaHash", + "MHLX": "HelixNetwork", + "MHP": "MedicoHealth", + "MHT": "Mouse Haunt", + "MHUNT": "MetaShooter", + "MI": "XiaoMiCoin", + "MIA": "MiamiCoin", + "MIB": "Mobile Integrated Blockchain", + "MIBO": "miBoodle", + "MIC": "Mithril Cash", + "MIDAS": "Midas", + "MIDASDOLLAR": "Midas Dollar Share", + "MIDN": "Midnight", + "MIE": "MIE Network", + "MIG": "Migranet", + "MIININGNFT": "MiningNFT", + "MIKS": "MIKS COIN", + "MIL": "Milllionaire Coin", + "MILC": "MIcro Licensing Coin", + "MILK": "Milkshake Swap", + "MILK2": "Spaceswap MILK2", + "MILLI": "Million", + "MILO": "Milo Inu", + "MILOCOIN": "MiloCoin", + "MIM": "Magic Internet Money", + "MIMATIC": "MAI", + "MIMI": "MIMI Money", + "MIMIR": "Mimir", + "MIMO": "MIMO Parallel Governance Token", + "MIN": "MINDOL", + "MINA": "Mina Protocol", + "MINC": "MinCoin", + "MINDCOIN": "MindCoin", + "MINDEX": "Mindexcoin", + "MINDGENE": "Mind Gene", + "MINDS": "Minds", + "MINE": "SpaceMine", + "MINEX": "Minex", + "MINI": "Mini", + "MINIDOGE": "MiniDOGE", + "MINIFOOTBALL": "Minifootball", + "MINISHIB": "miniSHIB ETH", + "MINRL": "Minerals Coin", + "MINT": "Mint Club", + "MINTCOIN": "MintCoin", + "MINTME": "MintMe.com Coin", + "MINTYS": "MintySwap", + "MINUTE": "MINUTE Vault (NFTX)", + "MINX": "InnovaMinex", + "MIO": "Miner One token", + "MIODIO": "MIODIOCOIN", + "MIOTA": "IOTA", + "MIR": "Mirror Protocol", + "MIRACLE": "MIRACLE", + "MIRC": "MIR COIN", + "MIS": "Mithril Share", + "MISA": "Sangkara", + "MISCOIN": "MIScoin", + "MISHKA": "Mishka Token", + "MISS": "MISS", + "MIST": "Mist", + "MIT": "Galaxy Blitz", + "MITC": "MusicLife", + "MITH": "Mithril", + "MITX": "Morpheus Infrastructure Token", + "MIV": "MakeItViral", + "MIVRS": "Minionverse", + "MIX": "MIXMARVEL", + "MJT": "MojitoSwap", + "MKEY": "MEDIKEY", + "MKR": "Maker", + "ML": "Market Ledger", + "MLA": "Moola", + "MLGC": "Marshal Lion Group Coin", + "MLITE": "MeLite", + "MLK": "MiL.k", + "MLN": "Enzyme", + "MLS": "CPROP", + "MLT": "MultiGames", + "MLTC": "MultiWallet Coin", + "MM": "Millimeter", + "MMAI": "MetamonkeyAi", + "MMAPS": "MapMetrics", + "MMC": "Monopoly Millionaire Control", + "MMETA": "Duckie Land Multi Metaverse", + "MMF": "MMFinance", + "MMG": "Monopoly Millionaire Game", + "MMNXT": "MMNXT", + "MMO": "MMOCoin", + "MMPRO": "Market Making Pro", + "MMT": "Master MIX Token", + "MMTM": "Momentum", + "MMUI": "MetaMUI", + "MMXIV": "MaieutiCoin", + "MMXVI": "MMXVI", + "MN": "Cryptsy Mining Contract", + "MNB": "MoneyBag", + "MNC": "MainCoin", + "MND": "Mound Token", + "MNDCC": "Mondo Community Coin", + "MNDE": "Marinade", + "MNE": "Minereum", + "MNET": "MINE Network", + "MNFT": "Marvelous NFTs", + "MNG": "Moon Nation Game", + "MNGO": "Mango protocol", + "MNM": "Mineum", + "MNR": "Mineral", + "MNRB": "MoneyRebel", + "MNS": "Monnos", + "MNST": "MoonStarter", + "MNTC": "Manet Coin", + "MNTG": "Monetas", + "MNTL": "AssetMantle", + "MNTP": "GoldMint", + "MNV": "MonetaVerde", + "MNVM": "Novam", + "MNW": "Morpheus Network", + "MNX": "MinexCoin", + "MNY": "MoonieNFT", + "MNZ": "Menzy", + "MO": "Morality", + "MOAC": "MOAC", + "MOAR": "Moar Finance", + "MOAT": "Mother Of All Tokens", + "MOB": "MobileCoin", + "MOBI": "Mobius", + "MOBIE": "MobieCoin", + "MOBU": "MOBU", + "MOC": "Mossland", + "MOCHI": "Mochiswap", + "MOCO": "MoCo", + "MOD": "Modefi", + "MODA": "MODA DAO", + "MODEX": "MODEX Token", + "MODUM": "Modum", + "MOF": "Molecular Future (TRC20)", + "MOFI": "MobiFi", + "MOFOLD": "Molecular Future (ERC20)", + "MOG": "Mog Coin", + "MOGU": "Mogu", + "MOGX": "Mogu", + "MOI": "MyOwnItem", + "MOIN": "MoinCoin", + "MOJO": "Mojocoin", + "MOK": "MocktailSwap", + "MOL": "Molecule", + "MOLA": "MoonLana", + "MOLK": "Mobilink Token", + "MOM": "Mother of Memes", + "MOMA": "Mochi Market", + "MON": "Medamon", + "MONA": "MonaCoin", + "MONAIZE": "Monaize", + "MONARCH": "TRUEMONARCH", + "MONAV": "Monavale", + "MONETA": "Moneta", + "MONEY": "MoneyCoin", + "MONEYBYTE": "MoneyByte", + "MONEYIMT": "MoneyToken", + "MONF": "Monfter", + "MONG": "MongCoin", + "MONG20": "Mongoose 2.0", + "MONI": "Monsta Infinite", + "MONK": "Monkey Project", + "MONKEY": "Monkey", + "MONKEYS": "Monkeys Token", + "MONO": "MonoX", + "MONONOKEINU": "Mononoke Inu", + "MONS": "Monsters Clan", + "MONST": "Monstock", + "MONT": "Monarch Token", + "MOO": "MooMonster", + "MOOI": "Moonai", + "MOOLYA": "moolyacoin", + "MOON": "r/CryptoCurrency Moons", + "MOONARCH": "Moonarch", + "MOONC": "MoonCoin", + "MOOND": "Dark Moon", + "MOONDAY": "Moonday Finance", + "MOONER": "CoinMooner", + "MOONEY": "Moon DAO", + "MOONLIGHT": "Moonlight Token", + "MOONSHOT": "Moonshot", + "MOOO": "Hashtagger", + "MOOV": "dotmoovs", + "MOOX": "Moox Protocol", + "MOPS": "Mops", + "MORA": "Meliora", + "MORE": "More Coin", + "MOS": "MOS Coin", + "MOT": "Olympus Labs", + "MOTG": "MetaOctagon", + "MOTI": "Motion", + "MOTO": "Motocoin", + "MOV": "MovieCoin", + "MOVD": "MOVE Network", + "MOVE": "MarketMove", + "MOVEY": "Movey", + "MOVEZ": "MoveZ", + "MOVON": "MovingOn Finance", + "MOVR": "Moonriver", + "MOWA": "Moniwar", + "MOZ": "Mozik", + "MP": "Membership Placeholders", + "MP3": "MP3", + "MPAY": "Menapay", + "MPC": "Metaplace", + "MPD": "Metapad", + "MPG": "Max Property Group", + "MPH": "Morpher", + "MPL": "Maple", + "MPLUS": "M+Plus", + "MPLX": "Metaplex", + "MPM": "Monopoly Meta", + "MPRO": "MediumProject", + "MPT": "Meetple", + "MPXT": "Myplacex", + "MQL": "MiraQle", + "MQST": "MonsterQuest", + "MR": "Meta Ruffy", + "MRCH": "MerchDAO", + "MRCR": "Mercor Finance", + "MRF": "Moonradar.finance", + "MRFOX": "Mr.FOX Token", + "MRHB": "MarhabaDeFi", + "MRI": "Marshall Inu", + "MRK": "MARK.SPACE", + "MRN": "Mercoin", + "MRNA": "Moderna", + "MRP": "MorpheusCoin", + "MRS": "Metars Genesis", + "MRSA": "MrsaCoin", + "MRT": "MinersReward", + "MRV": "Macroverse", + "MRXB": "Wrapped Metrix", + "MRY": "MurrayCoin", + "MSA": "My Shiba Academia", + "MSB": "Misbloc", + "MSC": "Miningwatchdog Smartchain", + "MSD": "MSD", + "MSN": "Manson Coin", + "MSOL": "Marinade Staked SOL", + "MSOT": "BTour Chain", + "MSP": "Mothership", + "MSQ": "MSquare Global", + "MSR": "Masari", + "MST": "Idle Mystic", + "MSTO": "Millennium Sapphire", + "MSU": "MetaSoccer", + "MSWAP": "MoneySwap", + "MT": "MyToken", + "MTA": "Meta", + "MTB": "MetaBridge", + "MTBC": "Metabolic", + "MTC": "MEDICAL TOKEN CURRENCY", + "MTCMN": "MTC Mesh", + "MTCN": "Multiven", + "MTD": "Minted", + "MTEL": "MEDoctor", + "MTG": "MagnetGold", + "MTH": "Monetha", + "MTHD": "Method Finance", + "MTK": "Moya Token", + "MTL": "Metal", + "MTLM3": "Metal Music v3", + "MTLX": "Mettalex", + "MTN": "TrackNetToken", + "MTR": "MasterTraderCoin", + "MTRC": "ModulTrade", + "MTRG": "Meter", + "MTRM": "Materium", + "MTRX": "Metarix", + "MTS": "Metastrike", + "MTSH": "Mitoshi", + "MTT": "MulTra", + "MTTCOIN": "Money of Tommorow, Today", + "MTV": "MultiVAC", + "MTX": "Matryx", + "MTXLT": "Tixl", + "MTZ": "Monetizr", + "MU": "Miracle Universe", + "MUDRA": "MudraCoin", + "MUE": "MonetaryUnit", + "MULTI": "Multichain", + "MULTIBOT": "Multibot", + "MULTIV": "Multiverse", + "MUN": "MUNcoin", + "MUNCH": "Munch Token", + "MUSD": "mStable USD", + "MUSDCOIN": "MUSDcoin", + "MUSE": "Muse DAO", + "MUSIC": "Musicoin", + "MUSK": "Musk", + "MUST": "MUST Protocol", + "MUSTANGC": "MustangCoin", + "MUT": "Mutual Coin", + "MUTE": "Mute", + "MUU": "MilkCoin", + "MV": "GensoKishi Metaverse", + "MVC": "MileVerse", + "MVD": "Metavault", + "MVDG": "MetaVerse Dog", + "MVEDA": "MedicalVeda", + "MVI": "Metaverse Index", + "MVL": "MVL", + "MVP": "MVP Coin", + "MVRS": "Meta MVRS", + "MVU": "meVu", + "MW": "MasterWin Coin", + "MWAR": "MemeWars (MWAR)", + "MWAT": "RED MegaWatt", + "MWC": "MimbleWimbleCoin", + "MX": "MX Token", + "MXC": "Machine Xchange Coin", + "MXM": "Maximine", + "MXT": "MixTrust", + "MXTC": "MartexCoin", + "MXW": "Maxonrow", + "MXX": "Multiplier", + "MYB": "MyBit", + "MYC": "Mycelium", + "MYCE": "MY Ceremonial Event", + "MYCELIUM": "Mycelium Token", + "MYDFS": "MyDFS", + "MYID": "My Identity Coin", + "MYL": "MyLottoCoin", + "MYNE": "ITSMYNE", + "MYO": "Mycro", + "MYOBU": "Myōbu", + "MYRA": "Mytheria", + "MYST": "Mysterium", + "MYT": "Mytrade", + "MYTH": "Mythos", + "MYTHT": "Myth Token", + "MYTV": "MyTVchain", + "MZC": "MazaCoin", + "MZG": "Moozicore", + "MZK": "Muzika Network", + "MZX": "Mosaic Network", + "N0031": "nYFI", + "N1": "NFTify", + "N3DR": "NeorderDAO ", + "N7": "Number7", + "N8V": "NativeCoin", + "NABOX": "Nabox", + "NAFT": "Nafter", + "NAH": "Strayacoin", + "NAKA": "Nakamoto Games", + "NAM": "Namacoin", + "NAME": "PolkaDomain", + "NAMEC": "Name Change Token", + "NAMI": "Tsunami finance", + "NAMO": "NamoCoin", + "NAN": "NanoToken", + "NANAS": "BananaBits", + "NANJ": "NANJCOIN", + "NANO": "Nano", + "NAOS": "NAOS Finance", + "NAP": "Napoli Fan Token", + "NAS": "Nebulas", + "NAS2": "Nas2Coin", + "NASADOGE": "Nasa Doge", + "NASH": "NeoWorld Cash", + "NASSR": "Alnassr FC Fan Token", + "NAT": "Natmin", + "NATION": "Nation3", + "NAUSICAA": "Nausicaa-Inu", + "NAUT": "Nautilus Coin", + "NAV": "NavCoin", + "NAVC": "NavC token", + "NAVI": "NaviAddress", + "NAVIB": "Navibration", + "NAWA": "Narwhale.finance", + "NAX": "NextDAO", + "NBAI": "Nebula AI", + "NBAR": "NOBAR", + "NBC": "Niobium", + "NBIT": "NetBit", + "NBL": "Nobility", + "NBNG": "Nobunaga Token", + "NBOT": "Naka Bodhi Token", + "NBOX": "Unboxed", + "NBP": "NFTBomb", + "NBR": "Niobio Cash", + "NBS": "New BitShares", + "NBT": "NanoByte", + "NC": "Nayuta Coin", + "NCASH": "Nucleus Vision", + "NCC": "NeuroChain", + "NCDT": "Nuco.Cloud", + "NCOV": "CoronaCoin", + "NCP": "Newton Coin", + "NCR": "Neos Credits", + "NCT": "PolySwarm", + "NDAU": "ndau", + "NDC": "NeverDie", + "NDLC": "NeedleCoin", + "NDN": "NDN Link", + "NDOGE": "NinjaDoge", + "NDR": "Node Runners", + "NDX": "Indexed Finance", + "NEAL": "Coineal Token", + "NEAR": "Near", + "NEBL": "Neblio", + "NEBU": "Nebuchadnezzar", + "NEC": "Nectar", + "NEER": "Metaverse.Network Pioneer", + "NEET": "NEET Finance", + "NEETCOIN": "Neetcoin", + "NEF": "NefariousCoin", + "NEFTIPEDIA": "NEFTiPEDiA", + "NEKI": "Neki Token", + "NEKO": "The Neko", + "NEO": "NEO", + "NEOG": "NEO Gold", + "NEOM": "New Earth Order Money", + "NEOS": "NeosCoin", + "NERVE": "NERVE", + "NEST": "Nest Protocol", + "NESTREE": "Nestree", + "NET": "NetCoin", + "NETC": "NetworkCoin", + "NETCOIN": "Netcoincapital", + "NETKO": "Netko", + "NEU": "Neumark", + "NEURALINK": "Neuralink", + "NEUTRO": "Neutro Protocol", + "NEVA": "NevaCoin", + "NEW": "Newton", + "NEWB": "Newbium", + "NEWO": "New Order", + "NEWOS": "NewsToken", + "NEWS": "NewsTokens", + "NEWTON": "Newtonium", + "NEX": "Nash Exchange", + "NEXBT": "Native XBTPro Exchange Token", + "NEXM": "Nexum", + "NEXO": "NEXO", + "NEXT": "Next.exchange Token", + "NEXXO": "Nexxo", + "NFCR": "NFCore", + "NFD": "Feisty Doge NFT", + "NFN": "Nafen", + "NFT": "APENFT", + "NFTART": "NFT Art Finance", + "NFTB": "NFTb", + "NFTD": "NFTrade", + "NFTI": "NFT Index", + "NFTL": "NFTLaunch", + "NFTP": "NFT", + "NFTT": "NFT", + "NFTX": "NFTX", + "NFTXHI": "NFTX Hashmasks Index", + "NFTY": "NFTY Token", + "NFTYP": "NFTY DeFi Protocol", + "NFUP": "Natural Farm Union Protocol", + "NFXC": "NFX Coin", + "NFY": "Non-Fungible Yearn", + "NGC": "NagaCoin", + "NGIN": "Ngin", + "NGL": "Gold Fever", + "NGM": "e-Money", + "NHCT": "Nano Healthcare Token", + "NIC": "NewInvestCoin", + "NICE": "Nice", + "NICEC": "NiceCoin", + "NIF": "Unifty", + "NIFT": "Niftify", + "NIFTSY": "Envelop", + "NII": "nahmii", + "NIIFI": "NiiFi", + "NIM": "Nimiq", + "NIMFA": "Nimfamoney", + "NIN": "Next Innovation", + "NINKY": "Ninky", + "NINO": "Ninneko", + "NIOX": "Autonio", + "NIT": "Nesten", + "NITRO": "Nitro League", + "NITROG": "Nitro", + "NIX": "NIX", + "NKA": "IncaKoin", + "NKC": "Nukecoinz", + "NKCLC": "NKCL Classic", + "NKN": "NKN", + "NKT": "NakomotoDark", + "NLC": "NoLimitCoin", + "NLC2": "NoLimitCoin", + "NLG": "Gulden", + "NLX": "Nullex", + "NMB": "Nimbus Coin", + "NMC": "Namecoin", + "NMH": "Namahe", + "NMK": "Namek", + "NMR": "Numeraire", + "NMS": "Numus", + "NMT": "NFTMart Token", + "NMX": "Nominex Token", + "NNB": "NNB Token", + "NNC": "NEO Name Credit", + "NNI": "NeoNomad Exchange", + "NNN": "Novem Gold", + "NOA": "NOA PLAY", + "NOAH": "NOAHCOIN", + "NOBL": "NobleCoin", + "NOBS": "No BS Crypto", + "NODE": "Whole Network", + "NODIS": "Nodis", + "NODL": "Nodle Network", + "NOIA": "Syntropy", + "NOIZ": "NOIZ", + "NOKU": "NOKU Master token", + "NOM": "Finom NOM Token", + "NOO": "Noocoin", + "NOR": "Noir", + "NORA": "SnowCrash Token", + "NORD": "Nord Finance", + "NOS": "Nosana", + "NOSN": "nOS", + "NOTE": "Notional Finance", + "NOVA": "Nova Finance", + "NOW": "NOW Token", + "NOX": "NITRO", + "NOXB": "Noxbox", + "NPAS": "New Paradigm Assets Solution", + "NPC": "NPCcoin", + "NPER": "NPER", + "NPLC": "Plus Coin", + "NPT": "Neopin", + "NPX": "Napoleon X", + "NPXS": "Pundi X", + "NPXSXEM": "Pundi X NEM", + "NR1.BITCI": "Number 1 Token", + "NRB": "NoirBits", + "NRC": "Neurocoin", + "NRFB": "NuriFootBall", + "NRG": "Energi", + "NRGY": "NRGY Defi", + "NRM": "Neuromachine", + "NRN": "Doc.ai Neuron", + "NRO": "Neuro", + "NRP": "Neural Protocol", + "NRS": "NoirShares", + "NRV": "Nerve Finance", + "NRVE": "Narrative", + "NRX": "Neironix", + "NS2DRP": "New Silver Series 2 DROP", + "NSBT": "Neutrino Token", + "NSD": "Nasdacoin", + "NSDX": "NASDEX", + "NSFW": "xxxNifty", + "NSP": "NOMAD.space", + "NSR": "NuShares", + "NSS": "NSS Coin", + "NSTE": "NewSolution 2.0", + "NSUR": "NSUR Coin", + "NSURE": "Nsure Network", + "NT": "NEXTYPE Finance", + "NTB": "TokenAsset", + "NTBC": "Note Blockchain", + "NTC": "NineElevenTruthCoin", + "NTCC": "NeptuneClassic", + "NTK": "Neurotoken", + "NTM": "NetM", + "NTO": "Neton", + "NTR": "Nether", + "NTRN": "Neutron", + "NTS": "Notarised", + "NTVRK": "Netvrk", + "NTWK": "Network Token", + "NTX": "NitroEX", + "NTY": "Nexty", + "NU": "NuCypher", + "NUA": "Neulaut Token", + "NUBIS": "NubisCoin", + "NUKE": "NukeCoin", + "NULS": "Nuls", + "NUM": "Numbers Protocol", + "NUMBERS": "NumbersCoin", + "NUMI": "Numitor", + "NUNET": "NuNet", + "NUSD": "Nomin USD", + "NUT": "Native Utility Token", + "NUTS": "Squirrel Finance", + "NUX": "Peanut", + "NVA": "Neeva Defi", + "NVC": "NovaCoin", + "NVDX": "Nodvix", + "NVIR": "NvirWorld", + "NVL": "Nevula", + "NVOY": "Envoy", + "NVST": "NVO", + "NVT": "NerveNetwork", + "NVX": "Novax Coin", + "NVZN": "INVIZION", + "NWC": "Newscrypto Coin", + "NWCN": "NowCoin", + "NWP": "NWPSolution", + "NXC": "Nexium", + "NXD": "Nexus Dubai", + "NXE": "NXEcoin", + "NXM": "Nexus Mutual", + "NXMC": "NextMindCoin", + "NXRA": "AllianceBlock Nexera", + "NXS": "Nexus", + "NXT": "Nxt", + "NXTI": "NXTI", + "NXTT": "Next Earth", + "NXTTY": "NXTTY", + "NYAN": "NyanCoin", + "NYANTE": "Nyantereum International", + "NYBBLE": "Nybble", + "NYC": "NewYorkCoin", + "NYCREC": "NYCREC", + "NYE": "NewYork Exchange", + "NYEX": "Nyerium", + "NYM": "Nym Token", + "NYN": "NYNJA", + "NYX": "NYXCOIN", + "NYZO": "Nyzo", + "NZC": "NewZealandCoin", + "NZDX": "eToro New Zealand Dollar", + "NZE": "Nagezeni", + "NZL": "Zealium", + "NZO": "NonZero", + "O3": "O3 Swap", + "OAK": "Acorn Collective", + "OASC": "Oasis City", + "OATH": "OATH Protocol", + "OAX": "Oax", + "OBITS": "Obits Coin", + "OBOT": "Obortech", + "OBROK": "OBRok", + "OBS": "One Basis Cash", + "OBSCURE": "Obscurebay", + "OBSR": "OBSERVER Coin", + "OBX": "OpenBlox", + "OC": "OrangeCoin", + "OCB": "BLOCKMAX", + "OCC": "OccamFi", + "OCE": "OceanEX Token", + "OCEAN": "Ocean Protocol", + "OCEANT": "Poseidon Foundation", + "OCL": "Oceanlab", + "OCN": "Odyssey", + "OCT": "Octopus Network", + "OCTA": "OctaSpace", + "OCTAX": "OctaX", + "OCTI": "Oction", + "OCTO": "OctoFi", + "OCTOC": "OctoCoin", + "OCTOIN": "Octoin Coin", + "OCX": "Original Crypto Coin", + "ODC": "Overseas Direct Certification", + "ODDZ": "Oddz", + "ODE": "ODEM", + "ODMC": "ODMCoin", + "ODN": "Obsidian", + "ODNT": "Old Dogs New Tricks", + "ODX": "ODX Token", + "OF": "OFCOIN", + "OFBC": "OneFinBank Coin", + "OFC": "$OFC Coin", + "OFCR": "CryptoPolice", + "OG": "OG Fan Token", + "OGN": "Origin Protocol", + "OGO": "Origo", + "OGOD": "GOTOGOD", + "OGSP": "OriginSport", + "OGT": "One Game", + "OGV": "Origin Dollar Governance", + "OH": "Oh! Finance", + "OHM": "Olympus", + "OHMV2": "Olympus v2", + "OICOIN": "Osmium Investment Coin", + "OIL": "Oiler", + "OILD": "OilWellCoin", + "OIN": "OIN Finance", + "OIO": "Online", + "OJA": "Ojamu", + "OJX": "Ojooo", + "OK": "OKCash", + "OKB": "OKB", + "OKG": "Ookeenga", + "OKOIN": "OKOIN", + "OKS": "Oikos", + "OKSE": "Okse", + "OKT": "OKT Chain", + "OLAND": "Oceanland", + "OLDSF": "OldSafeCoin", + "OLE": "OpenLeverage", + "OLIVE": "Olive", + "OLOID": "OLOID", + "OLT": "OneLedger", + "OLV": "OldV", + "OLXA": "OLXA", + "OLY": "Olyseum", + "OLYMP": "OlympCoin", + "OM": "MANTRA", + "OMA": "OmegaCoin", + "OMAX": "Omax", + "OMC": "Omchain", + "OMEGA": "OMEGA", + "OMG": "OMG Network", + "OMGC": "OmiseGO Classic", + "OMI": "ECOMI", + "OMIC": "Omicron", + "OMNI": "Omni", + "OMNIA": "OmniaVerse", + "OMNICRON": "OmniCron", + "OMT": "Mars Token", + "OMX": "Project Shivom", + "ON": "OFIN Token", + "ONAM": "ONAM", + "ONC": "One Cash", + "ONE": "Harmony", + "ONES": "OneSwap DAO", + "ONEX": "ONE TECH", + "ONG": "SoMee.Social", + "ONGAS": "Ontology Gas", + "ONI": "ONINO", + "ONION": "DeepOnion", + "ONIT": "ONBUFF", + "ONL": "On.Live", + "ONLY": "OnlyCam", + "ONLYCUMIES": "OnlyCumies", + "ONOT": "ONO", + "ONS": "One Share", + "ONSTON": "Onston", + "ONT": "Ontology", + "ONUS": "ONUS", + "ONX": "Onix", + "OOE": "OpenOcean", + "OOGI": "OOGI", + "OOKI": "Ooki", + "OOT": "Utrum", + "OOW": "OPP Open WiFi", + "OP": "Optimism", + "OPA": "Option Panda Platform", + "OPC": "OP Coin", + "OPCT": "Opacity", + "OPEN": "Open Platform", + "OPENDAO": "OpenDAO", + "OPENGO": "OPEN Governance Token", + "OPENRI": "Open Rights Exchange", + "OPES": "Opes", + "OPET": "ÕpetFoundation", + "OPEX": "Optherium Token", + "OPIUM": "Opium", + "OPNN": "Opennity", + "OPP": "Opporty", + "OPS": "Octopus Protocol", + "OPSC": "OpenSourceCoin", + "OPT": "Opus", + "OPTC": "Open Predict Token", + "OPTCM": "Optimus", + "OPTION": "OptionCoin", + "OPU": "Opu Coin", + "OPUL": "Opulous", + "OPV": "OpenLive NFT", + "ORACLECHAIN": "OracleChain", + "ORAI": "Oraichain Token", + "ORAO": "ORAO Network", + "ORB": "KlayCity ORB", + "ORBIS": "Orbis", + "ORBITCOIN": "Orbitcoin", + "ORBR": "Orbler", + "ORBS": "Orbs", + "ORC": "Orbit Chain", + "ORCA": "Orca", + "ORE": "Galactrum", + "ORET": "ORET Token", + "ORGA": "Organicco", + "ORGT": "Organic Token", + "ORI": "Origami", + "ORIGIN": "Origin Foundation", + "ORLY": "OrlyCoin", + "ORM": "ORIUM", + "ORME": "Ormeus Coin", + "ORN": "Orion Protocol", + "ORO": "Operon Origins", + "OROC": "Orocrypt", + "OROCOIN": "OroCoin", + "OROP": "ORO", + "OROX": "Cointorox", + "ORS": "ORS Group", + "ORT": "Omni Real Estate Token", + "ORV": "Orvium", + "ORYX": "OryxCoin", + "OS76": "OsmiumCoin", + "OSA": "OSA Token", + "OSC": "iOscar", + "OSF": "One Solution", + "OSMO": "Osmosis", + "OSQTH": "Opyn Squeeth", + "OST": "OST", + "OSWAP": "OpenSwap", + "OTHR": "OtherDAO", + "OTN": "Open Trading Network", + "OTO": "OTOCASH", + "OTX": "Octanox", + "OUD": "OUD", + "OUR": "Our Pay", + "OUSD": "Origin Dollar", + "OUT": "Netscouters", + "OVC": "OVCODE", + "OVO": "Ovato", + "OVR": "Ovr", + "OWC": "Oduwa", + "OWD": "Owlstand", + "OWL": "OWL Token", + "OWN": "Ownly", + "OWNDATA": "OWNDATA", + "OX": "betbox", + "OXB": "Oxbull Tech", + "OXD": "0xDAO", + "OXEN": "Oxen", + "OXT": "Orchid Protocol", + "OXY": "Oxygen", + "OXY2": "Cryptoxygen", + "OXYC": "Oxycoin", + "OYS": "Oyster Platform", + "OZG": "Ozagold", + "OZP": "OZAPHYRE", + "P202": "Project 202", + "P2PS": "P2P Solutions Foundation", + "PAAL": "PAAL AI", + "PAC": "PAC Protocol", + "PACOCA": "Pacoca", + "PAD": "NearPad", + "PAF": "Pacific", + "PAI": "Project Pai", + "PAID": "PAID Network", + "PAINT": "MurAll", + "PAK": "Pakcoin", + "PAL": "PolicyPal Network", + "PALLA": "Pallapay", + "PALM": "PalmPay", + "PAMP": "PAMP Network", + "PAN": "Pantos", + "PAND": "Panda Finance", + "PANDA": "PandaDAO", + "PANDO": "Pando", + "PANDOP": "PandoProject", + "PANGEA": "PANGEA", + "PAPADOGE": "Papa Doge", + "PAPER": "Dope Wars Paper", + "PAPUSHA": "Papusha", + "PAR": "Parachute", + "PARA": "Paralink Network", + "PARAB": "Parabolic", + "PARAL": "Parallel", + "PARALL": "Parallel Finance", + "PARANOIA": "ParanoiaCoin", + "PARAW": "Para", + "PARETO": "Pareto Network Token", + "PARKGENE": "PARKGENE", + "PARLAY": "Parlay", + "PARMA": "PARMA Fan Token", + "PARQ": "PARQ", + "PART": "Particl", + "PAS": "Passive Coin", + "PASC": "Pascal Coin", + "PASL": "Pascal Lite", + "PASS": "Blockpass", + "PAT": "PATRON", + "PATH": "PathDAO", + "PAVO": "Pavocoin", + "PAXEX": "PAXEX", + "PAXG": "PAX Gold", + "PAXW": "pax.world", + "PAY": "TenX", + "PAYCON": "Paycon", + "PAYP": "PayPeer", + "PAYT": "PayAccept", + "PAZZI": "Paparazzi", + "PBASE": "Polkabase", + "PBC": "PabyosiCoin", + "PBET": "PBET", + "PBL": "Pebbles", + "PBLK": "PayBlock", + "PBQ": "PUBLIQ", + "PBR": "PolkaBridge", + "PBT": "Primalbase", + "PBTC35A": "pBTC35A", + "PBX": "Paribus", + "PC": "Promotion Coin", + "PCC": "PCORE", + "PCCM": "Poseidon Chain", + "PCE": "PEACE COIN", + "PCH": "POPCHAIN", + "PCHS": "Peaches.Finance", + "PCI": "PayProtocol Paycoin", + "PCL": "Peculium", + "PCM": "Procom", + "PCN": "PeepCoin", + "PCNT": "Playcent", + "PCO": "Pecunio", + "PCOIN": "Pioneer Coin", + "PCR": "Paycer Protocol", + "PCS": "Pabyosi Coin", + "PCX": "ChainX", + "PDATA": "PDATA", + "PDC": "Project Decorum", + "PDEX": "Polkadex", + "PDF": "Port of DeFi Network", + "PDOG": "Polkadog", + "PDOGE": "PolkaDoge", + "PDT": "ParagonsDAO", + "PDX": "PDX Coin", + "PEA": "Pea Farm", + "PEAK": "PEAKDEFI", + "PEARL": "Pearl Finance", + "PEC": "PeaceCoin", + "PEEL": "Meta Apes", + "PEEPA": "Peepa", + "PEEPS": "The People’s Coin", + "PEG": "PegNet", + "PEGS": "PegShares", + "PEKC": "Peacock Coin", + "PEL": "Propel Token", + "PENC": "PenCoin", + "PENDLE": "Pendle", + "PENG": "PENG", + "PENTA": "Penta", + "PEOPLE": "ConstitutionDAO", + "PEOS": "pEOS", + "PEPE": "Pepe", + "PEPE20": "Pepe 2.0", + "PEPECASH": "Pepe Cash", + "PEPPER": "Pepper Token", + "PEPS": "PEPS Coin", + "PERA": "Pera Finance", + "PERC": "Perion", + "PERI": "PERI Finance", + "PERL": "PERL.eco", + "PERMIAN": "Permian", + "PERP": "Perpetual Protocol", + "PERU": "PeruCoin", + "PERX": "PeerEx Network", + "PESA": "Credible", + "PESOBIT": "PesoBit", + "PET": "Hello Pets", + "PETG": "Pet Games", + "PETL": "Petlife", + "PETN": "Pylon Eco Token", + "PETO": "Petoverse", + "PETT": "Pett Network", + "PEX": "Pexcoin", + "PFID": "Pofid Dao", + "PFL": "Professional Fighters League Fan Token", + "PFR": "PayFair", + "PFT": "Pitch Finance Token", + "PFY": "Portify", + "PGALA": "pGALA", + "PGC": "Pegascoin", + "PGF7T": "PGF500", + "PGL": "Prospectors", + "PGN": "Pigeoncoin", + "PGT": "Polyient Games Governance Token", + "PGTS": "Puregold token", + "PGU": "Polyient Games Unity", + "PGX": "Pegaxy Stone", + "PHA": "Phala Network", + "PHAE": "Phaeton", + "PHALA": "Phalanx", + "PHB": "Phoenix Global [v2]", + "PHBD": "Polygon HBD", + "PHC": "Profit Hunters Coin", + "PHCR": "PhotoChromic", + "PHI": "PHI Token", + "PHIBA": "Papa Shiba", + "PHIGOLD": "PhiGold Coin", + "PHL": "Philcoin", + "PHM": "Phomeum", + "PHN": "Phayny", + "PHNX": "PhoenixDAO", + "PHO": "Photon", + "PHONON": "Phonon DAO ", + "PHOON": "Typhoon Cash", + "PHORE": "Phore", + "PHR": "Phreak", + "PHS": "PhilosophersStone", + "PHT": "Photon Token", + "PHTC": "Photochain", + "PHV": "PATHHIVE", + "PI": "Plian", + "PIAS": "PIAS", + "PIB": "Pibble", + "PICA": "PicaArtMoney", + "PICKLE": "Pickle Finance", + "PICO": "PicoGo", + "PIE": "Persistent Information Exchange", + "PIG": "Pig Finance", + "PIGGY": "Piggy", + "PIGGYCOIN": "Piggy Coin", + "PIKACHU": "Pikachu Inu", + "PILOT": "Unipilot", + "PIN": "Pin", + "PING": "CryptoPing", + "PINK": "PinkCoin", + "PINKX": "PantherCoin", + "PINMO": "Pinmo", + "PINO": "Pinocchu", + "PINU": "Piccolo Inu", + "PIO": "Pioneershares", + "PIPI": "Pippi Finance", + "PIPL": "PiplCoin", + "PIPT": "Power Index Pool Token", + "PIRATE": "PirateCash", + "PIRL": "Pirl", + "PIS": "Polkainsure Finance", + "PIST": "Pist Trust", + "PIT": "Pitbull", + "PITCH": "PITCH", + "PIVX": "Private Instant Verified Transaction", + "PIX": "Lampix", + "PIXEL": "PixelVerse", + "PIZA": "Half Pizza", + "PIZZA": "PizzaSwap", + "PIZZACOIN": "PizzaCoin", + "PJM": "Pajama.Finance", + "PKB": "ParkByte", + "PKC": "Pikciochain", + "PKD": "PetKingdom", + "PKF": "PolkaFoundry", + "PKN": "Poken", + "PKOIN": "Pocketcoin", + "PKT": "PKT", + "PLA": "PlayDapp", + "PLAAS": "PLAAS FARMERS TOKEN", + "PLAC": "PLANET", + "PLACE": "PlaceWar Governance", + "PLAI": "Plair", + "PLAN": "Plancoin", + "PLANET": "PlanetCoin", + "PLANETS": "PlanetWatch", + "PLASTIK": "Plastiks", + "PLAT": "BitGuild PLAT", + "PLATC": "PlatinCoin", + "PLATINUM": "Platinum", + "PLATO": "Plato Game", + "PLAY": "HEROcoin", + "PLAYC": "PlayChip", + "PLAYCOIN": "PlayCoin", + "PLAYKEY": "Playkey", + "PLBT": "Polybius", + "PLC": "PlusCoin", + "PLCU": "PLC Ultima", + "PLD": "Plutonian DAO", + "PLE": "Plethori", + "PLEO": "Empleos", + "PLEX": "PLEX", + "PLF": "PlayFuel", + "PLG": "Pledgecamp", + "PLGR": "Pledge Finance", + "PLI": "Plugin", + "PLM": "Plasmonics", + "PLMT": "Pallium", + "PLNC": "PLNCoin", + "PLNX": "Planumex", + "PLOT": "PlotX", + "PLQ": "Planq", + "PLR": "Pillar", + "PLS": "Pulsechain", + "PLSD": "PulseDogecoin", + "PLSPAD": "PulsePad", + "PLSX": "PulseX", + "PLT": "Poollotto.finance", + "PLTC": "PlatonCoin", + "PLTX": "PlutusX", + "PLTXYZ": "Add.xyz", + "PLU": "Pluton", + "PLUG": "PL^Gnet", + "PLUGCN": "Plug Chain", + "PLURA": "PluraCoin", + "PLUS1": "PlusOneCoin", + "PLUTUS": "PlutusDAO", + "PLX": "PlexCoin", + "PLY": "Aurigami", + "PMA": "PumaPay", + "PMEER": "Qitmeer", + "PMGT": "Perth Mint Gold Token", + "PMNT": "Paymon", + "PMON": "Polkamon", + "PMTN": "Peer Mountain", + "PNC": "PlatiniumCoin", + "PND": "PandaCoin", + "PNFT": "Pawn My NFT", + "PNG": "Pangolin", + "PNGN": "SpacePenguin", + "PNK": "Kleros", + "PNL": "True PNL", + "PNODE": "Pinknode", + "PNT": "pNetwork Token", + "PNX": "PhantomX", + "PNY": "Peony Coin", + "POA": "Poa Network", + "POC": "POC Blockchain", + "POCC": "POC Chain", + "POCKET": "XPocket", + "POCO": "Pocoland", + "POD": "Podo Point", + "PODIUM": "Smart League", + "POE": "Po.et", + "POG": "PolygonumOnline", + "POINTS": "Cryptsy Points", + "POK": "Pokmonsters", + "POKEM": "Pokemonio", + "POKEMON": "Pokemon", + "POKER": "PokerCoin", + "POKT": "Pocket Network", + "POL": "Pool-X", + "POLA": "Polaris Share", + "POLAR": "Polaris", + "POLC": "Polka City", + "POLI": "Polinate", + "POLIS": "Star Atlas DAO", + "POLISPLAY": "PolisPay", + "POLK": "Polkamarkets", + "POLKER": "Polker", + "POLL": "Pollchain", + "POLNX": "eToro Polish Zloty", + "POLS": "Polkastarter", + "POLVEN": "Polka Ventures", + "POLX": "Polylastic", + "POLY": "Polymath Network", + "POLYDOGE": "PolyDoge", + "POLYPAD": "PolyPad", + "POLYX": "Polymesh", + "PON": "Ponder", + "POND": "Marlin", + "PONYO": "Ponyo Impact", + "PONZU": "Ponzu Inu", + "POO": "POOMOON", + "POODL": "Poodl", + "POOL": "PoolTogether", + "POOLZ": "Poolz Finance", + "POP": "PopularCoin", + "POP!": "POP", + "POPC": "PopChest", + "POPK": "POPKON", + "POPSICLE": "Popsicle Finance", + "POR": "Portugal National Team Fan Token", + "PORT": "Port Finance", + "PORTAL": "Portal", + "PORTO": "FC Porto", + "PORTU": "Portuma", + "POS": "PoSToken", + "POSEX": "PosEx", + "POSI": "Position Token", + "POSQ": "Poseidon Quark", + "POSS": "Posschain", + "POST": "InterPlanetary Search Engine", + "POSTC": "PostCoin", + "POT": "PotCoin", + "POTS": "Moonpot", + "POWER": "UniPower", + "POWR": "Power Ledger", + "PP": "ProducePay Chain", + "PPAD": "PlayPad", + "PPALPHA": "Phoenix Protocol", + "PPAY": "Plasma Finance", + "PPBLZ": "Pepemon Pepeballs", + "PPC": "PeerCoin", + "PPI": "Primpy", + "PPN": "Puppies Network", + "PPOVR": "POVR", + "PPP": "PayPie", + "PPR": "Papyrus", + "PPS": "PopulStay", + "PPT": "Populous", + "PPY": "Peerplays", + "PQT": "Prediqt", + "PRA": "ProChain", + "PRARE": "Polkarare", + "PRC": "ProsperCoin", + "PRCM": "Precium", + "PRDS": "Brise Paradise", + "PRDX": "ParamountDax Token", + "PRE": "Presearch", + "PREM": "Premium", + "PREMIA": "Premia", + "PRES": "President Trump", + "PRFT": "Proof Suite Token", + "PRG": "Paragon", + "PRI": "PRIVATEUM INITIATIVE", + "PRIA": "PRIA", + "PRIDE": "Nomad Exiles", + "PRIMATE": "Primate", + "PRIME": "Echelon Prime", + "PRIMECHAIN": "PrimeChain", + "PRINT": "Printer.Finance", + "PRINTERIUM": "Printerium", + "PRINTS": "FingerprintsDAO", + "PRISM": "Prism", + "PRIX": "Privatix", + "PRL": "Oyster Pearl", + "PRM": "PrismChain", + "PRMX": "PREMA", + "PRNT": "Prime Numbers", + "PRO": "Propy", + "PROB": "ProBit Token", + "PROBIN": "Probinex", + "PROC": "ProCurrency", + "PROD": "Productivist", + "PROGE": "Protector Roge", + "PROM": "Prometeus", + "PROOF": "PROVER", + "PROP": "Propeller", + "PROPS": "Props", + "PROS": "Prosper", + "PROT": "PROT", + "PROTO": "Protocon", + "PROTON": "Proton", + "PROUD": "PROUD Money", + "PROXI": "PROXI", + "PRP": "Pepe Prime", + "PRPS": "Purpose", + "PRPT": "Purple Token", + "PRQ": "PARSIQ", + "PRS": "PressOne", + "PRT": "Parrot Protocol", + "PRTG": "Pre-Retogeum", + "PRV": "PrivacySwap", + "PRVS": "Previse", + "PRX": "Parex", + "PRXY": "Proxy", + "PRY": "PRIMARY", + "PSB": "Planet Sandbox", + "PSC": "PSC Token", + "PSD": "Poseidon", + "PSEUD": "PseudoCash", + "PSF": "Prime Shipping Foundation", + "PSG": "Paris Saint-Germain Fan Token", + "PSI": "PSIcoin", + "PSILOC": "Psilocybin", + "PSK": "Pool of Stake", + "PSL": "Pastel", + "PSLIP": "Pinkslip Finance", + "PSM": "Prasm", + "PSOL": "Parasol Finance", + "PSP": "ParaSwap", + "PST": "Primas", + "PSTAKE": "pSTAKE Finance", + "PSTN": "Piston", + "PSWAP": "Polkaswap", + "PSY": "PsyOptions", + "PTA": "PentaCoin", + "PTC": "PesetaCoin", + "PTD": "Pilot", + "PTERIA": "Pteria", + "PTF": "PowerTrade Fuel", + "PTI": "Paytomat", + "PTN": "PalletOneToken", + "PTO": "Patentico", + "PTON": "Foresting", + "PTOY": "Patientory", + "PTP": "Platypus Finance", + "PTR": "Petro", + "PTT": "Pink Taxi Token", + "PTU": "Pintu Token", + "PTX": "PlatinX", + "PUGL": "PugLife", + "PULI": "Puli", + "PULSE": "Pulse", + "PUMLX": "PUMLx", + "PUNDIX": "Pundi X", + "PUNK": "SteamPunk", + "PUPA": "PupaCoin", + "PURA": "Pura", + "PURE": "Puriever", + "PUREALT": "Pure", + "PUSD": "PegsUSD", + "PUSH": "Ethereum Push Notification Service", + "PUSHI": "Pushi", + "PUSSY": "Pussy Financial", + "PUT": "PutinCoin", + "PUX": "pukkamex", + "PVP": "PVPChain", + "PVT": "Pivot Token", + "PVU": "Plant vs Undead Token", + "PWAR": "PolkaWar", + "PWON": "Personal Wager", + "PWR": "PWR Coin", + "PX": "PXcoin", + "PXB": "PixelBit", + "PXC": "PhoenixCoin", + "PXG": "PlayGame", + "PXI": "Prime-X1", + "PXL": "PIXEL", + "PXP": "PointPay", + "PYC": "PayCoin", + "PYE": "CreamPYE", + "PYLNT": "Pylon Network", + "PYLON": "Pylon Finance", + "PYM": "Playermon", + "PYN": "Paycent", + "PYP": "PayPro", + "PYQ": "PolyQuity", + "PYR": "Vulcan Forged", + "PYRAM": "Pyram Token", + "PYRK": "Pyrk", + "PYT": "Payther", + "PYUSD": "PayPal USD", + "PZM": "Prizm", + "Q1S": "Quantum1Net", + "Q2C": "QubitCoin", + "QA": "Quantum Assets", + "QAC": "Quasarcoin", + "QANX": "QANplatform", + "QARK": "QANplatform", + "QASH": "Quoine Liquid", + "QAU": "Quantum", + "QBAO": "Qbao", + "QBC": "Quebecoin", + "QBIT": "Project Quantum", + "QBK": "QuBuck Coin", + "QBT": "Cubits", + "QBU": "Quannabu", + "QBX": "qiibee foundation", + "QBZ": "QUEENBEE", + "QC": "Qcash", + "QCH": "QChi", + "QCN": "Quazar Coin", + "QCO": "Qravity", + "QCX": "QuickX Protocol", + "QDX": "Quidax", + "QFI": "QFinance", + "QI": "BENQI", + "QIE": "QI Blockchain", + "QISWAP": "QiSwap", + "QKC": "QuarkChain", + "QLC": "Kepple [OLD]", + "QLINDO": "QLINDO", + "QMALL": "QMALL TOKEN", + "QNT": "Quant", + "QNTR": "Quantor", + "QNTU": "Quanta", + "QNX": "QueenDex Coin", + "QOBI": "Qobit", + "QOM": "Shiba Predator", + "QOOB": "QOOBER", + "QORA": "QoraCoin", + "QQBC": "QQBC IPFS BLOCKCHAIN", + "QQQ": "Poseidon Network", + "QQQF": "Standard Crypto Fund", + "QRDO": "Qredo", + "QRK": "QuarkCoin", + "QRL": "Quantum Resistant Ledger", + "QRP": "Cryptics", + "QRX": "QuiverX", + "QSLV": "Quicksilver coin", + "QSP": "Quantstamp", + "QTC": "Qitcoin", + "QTCON": "Quiztok", + "QTF": "Quantfury", + "QTL": "Quatloo", + "QTUM": "QTUM", + "QTZ": "Quartz", + "QUA": "Quantum Tech", + "QUACK": "Rich Quack", + "QUAM": "Quam Network", + "QUANT": "Quant Finance", + "QUARASHI": "Quarashi Network", + "QUARTZ": "Sandclock", + "QUASA": "Quasacoin", + "QUB": "Qubism", + "QUBE": "Qube", + "QUBITICA": "Qubitica", + "QUICK": "Quickswap", + "QUICKOLD": "Quickswap", + "QUIDD": "Quidd", + "QUINT": "Quint", + "QUIZ": "Quizando", + "QUROZ": "Qfora", + "QUSD": "QUSD", + "QVT": "Qvolta", + "QWARK": "Qwark", + "QWC": "Qwertycoin", + "R1": "Recast1", + "R34P": "R34P", + "R3FI": "r3fi.finance", + "RABBIT": "Rabbit Finance", + "RAC": "RAcoin", + "RACA": "Radio Caca", + "RACEFI": "RaceFi", + "RAD": "Radworks", + "RADAR": "DappRadar", + "RADI": "RadicalCoin", + "RADIO": "RadioShack", + "RADR": "CoinRadr", + "RAI": "Rai Reflex Index", + "RAIDER": "Crypto Raiders", + "RAIF": "RAI Finance", + "RAIL": "Railgun", + "RAIN": "Rainmaker Games", + "RAINBOW": "Rainbow Token", + "RAINC": "RainCheck", + "RAINI": "Rainicorn", + "RAISE": "Raise Token", + "RAIZER": "RAIZER", + "RAKU": "RAKUN", + "RAM": "Ramifi Protocol", + "RAMP": "RAMP", + "RANKER": "RankerDao", + "RAP": "Philosoraptor", + "RAPDOGE": "RapDoge", + "RARE": "SuperRare", + "RARI": "Rarible", + "RATECOIN": "Ratecoin", + "RATING": "DPRating", + "RATIO": "Ratio", + "RAVE": "Ravendex", + "RAVELOUS": "Ravelous", + "RAVEN": "Raven Protocol", + "RAVENCOINC": "Ravencoin Classic", + "RAWG": "RAWG", + "RAY": "Raydium", + "RAYS": "Rays Network", + "RAZE": "Raze Network", + "RAZOR": "Razor Network", + "RB": "REBorn", + "RBC": "Rubic", + "RBD": "Rubidium", + "RBDT": "RoBust Defense Token", + "RBIES": "Rubies", + "RBIF": "Robo Inu Finance", + "RBIS": "ArbiSmart", + "RBIT": "ReturnBit", + "RBLS": "Rebel Bots", + "RBN": "Ribbon Finance", + "RBR": "Ribbit Rewards", + "RBT": "Rabet", + "RBTC": "Smart Bitcoin", + "RBUNNY": "Rocket Bunny", + "RBW": "Crypto Unicorns Rainbow", + "RBX": "RiptoBuX", + "RBXS": "RBXSamurai", + "RBY": "RubyCoin", + "RC": "Russiacoin", + "RC20": "RoboCalls", + "RCC": "Reality Clash", + "RCCC": "RCCC", + "RCG": "Recharge", + "RCH": "Rich", + "RCN": "Ripio", + "RCOIN": "RCoin", + "RCT": "RealChain", + "RCX": "RedCrowCoin", + "RD": "Round Dollar", + "RDC": "Ordocoin", + "RDD": "Reddcoin", + "RDN": "Raiden Network Token", + "RDNT": "Radiant Capital", + "RDPX": "Dopex Rebate Token", + "RDR": "Rise of Defenders", + "RDS": "Reger Diamond", + "RDT": "Ridotto", + "RDX": "Redux Protocol", + "REA": "Realisto", + "REAL": "RealLink", + "REALM": "Realm", + "REALMS": "Realms of Ethernity", + "REALPLATFORM": "REAL", + "REALY": "Realy Metaverse", + "REAP": "ReapChain", + "REBL": "REBL", + "REC": "Rec Token (REC)", + "RECKOON": "Reckoon", + "RECOM": "Recom", + "RED": "RED TOKEN", + "REDC": "RedCab", + "REDCO": "Redcoin", + "REDDIT": "Reddit", + "REDI": "REDi", + "REDLANG": "RED", + "REDLC": "Redlight Chain", + "REDN": "Reden", + "REE": "ReeCoin", + "REEF": "Reef", + "REF": "Ref Finance", + "REFI": "Realfinance Network", + "REFLECTO": "Reflecto", + "REFTOKEN": "RefToken", + "REGALCOIN": "Regalcoin", + "REHAB": "NFT Rehab", + "REI": "REI Network", + "REINDEER": "Reindeer", + "REL": "Reliance", + "RELAY": "Relay Token", + "RELI": "Relite Finance", + "RELOADED": "Doge Reloaded", + "RELVT": "Relevant", + "REM": "REMME", + "REMCO": "Remco", + "REME": "REME-Coin", + "REN": "REN", + "RENA": "Warena", + "RENBTC": "renBTC", + "RENC": "RENC", + "RENDOGE": "renDOGE", + "RENS": "Rens", + "RENTBE": "Rentberry", + "REP": "Augur", + "REPO": "Repo Coin", + "REPUX": "Repux", + "REQ": "Request Network", + "RES": "Resistance", + "REST": "Restore", + "RET": "RealTract", + "RETAIL": "Retail.Global", + "RETH": "Rocket Pool ETH", + "RETH2": "rETH2", + "RETIRE": "Retire Token", + "REU": "REUCOIN", + "REV": "Revain", + "REVA": "Revault Network", + "REVE": "Revenu", + "REVO": "Revomon", + "REVOLAND": "Revoland Governance Token", + "REVON": "RevoNetwork", + "REVU": "Revuto", + "REVV": "REVV", + "REW": "Review.Network", + "REX": "Imbrex", + "RF": "Raido Financial", + "RFCTR": "Reflector.Finance", + "RFG": "Refugees Token", + "RFI": "reflect.finance", + "RFL": "RAFL", + "RFOX": "RedFOX Labs", + "RFR": "Refereum", + "RFT": "Rangers Fan Token", + "RFUEL": "Rio DeFi", + "RGC": "RG Coin", + "RGP": "Rigel Protocol", + "RGT": "Rari Governance Token", + "RHEA": "Rhea", + "RHINO": "RHINO", + "RHOC": "RChain", + "RHP": "Rhypton Club", + "RIC": "Riecoin", + "RICE": "RiceFarm", + "RICECOIN": "RiceCoin", + "RICH": "Richie", + "RICKMORTY": "Rick And Morty", + "RIDE": "Holoride", + "RIDEMY": "Ride My Car", + "RIF": "RIF Token", + "RIFI": "Rikkei Finance", + "RIGEL": "Rigel Finance", + "RIL": "Rilcoin", + "RIMBIT": "Rimbit", + "RIN": "Aldrin", + "RING": "Darwinia Network", + "RINGX": "RING X PLATFORM", + "RIO": "Realio Network", + "RIP": "Fantom Doge", + "RIPAX": "RipaEx", + "RIPO": "RipOffCoin", + "RIPT": "RiptideCoin", + "RISE": "EverRise", + "RISEP": "Rise Protocol", + "RISEVISION": "Rise", + "RITE": "ritestream", + "RIYA": "Etheriya", + "RKC": "Royal Kingdom Coin", + "RKN": "RAKON", + "RKT": "Rock Token", + "RLC": "iExec", + "RLOOP": "rLoop", + "RLT": "Runner Land", + "RLX": "Relex", + "RLY": "Rally", + "RMC": "Russian Mining Coin", + "RMESH": "RightMesh", + "RMOB": "RewardMob", + "RMPL": "RMPL", + "RMRK": "RMRK.app", + "RMS": "Resumeo Shares", + "RMT": "SureRemit", + "RNB": "Rentible", + "RNBW": "Rainbow Token", + "RNC": "ReturnCoin", + "RND": "The RandomDAO", + "RNDR": "Render Token", + "RNS": "RenosCoin", + "RNT": "OneRoot Network", + "RNTB": "BitRent", + "RNX": "ROONEX", + "ROAD": "ROAD", + "ROAR": "Alpha DEX", + "ROBET": "RoBet", + "ROC": "Rasputin Online Coin", + "ROCK": "Bedrock", + "ROCK2": "Ice Rock Mining", + "ROCKETCOIN": "RocketCoin", + "ROCKI": "Rocki", + "ROCO": "ROCO FINANCE", + "ROE": "Rover Coin", + "ROG": "ROGin AI", + "ROI": "ROIcoin", + "ROK": "Rockchain", + "RONCOIN": "RON", + "RONIN": "Ronin", + "ROOBEE": "ROOBEE", + "ROOK": "KeeperDAO", + "ROOM": "OptionRoom", + "ROOT": "RootCoin", + "ROOTS": "RootProject", + "ROS": "ROS Coin", + "ROSE": "Oasis Labs", + "ROSN": "Roseon Finance", + "ROT": "Rotten", + "ROUND": "RoundCoin", + "ROUTE": "Router Protocol", + "ROWAN": "Sifchain", + "ROX": "Robotina", + "ROYA": "Royale", + "ROYAL": "RoyalCoin", + "RPB": "Republia", + "RPC": "RonPaulCoin", + "RPD": "Rapids", + "RPL": "RocketPool", + "RPM": "Render Payment", + "RPS": "Rps League", + "RPT": "Rug Proof", + "RPUT": "Robin8 Profile Utility Token", + "RPZX": "Rapidz", + "RRB": "Renrenbit", + "RRC": "Recycling Regeneration Chain", + "RRT": "Recovery Right Tokens", + "RSC": "Ronaldinho Soccer Coin", + "RSF": "Royal Sting", + "RSIN": "Roketsin", + "RSR": "Reserve Rights", + "RSS3": "RSS3", + "RST": "REGA Risk Sharing Token", + "RSUN": "RisingSun", + "RSV": "Reserve", + "RT2": "RotoCoin", + "RTB": "AB-CHAIN", + "RTC": "Reltime", + "RTE": "Rate3", + "RTH": "Rotharium", + "RTM": "Raptoreum", + "RTT": "Restore Truth Token", + "RUBIT": "Rublebit", + "RUBX": "eToro Russian Ruble", + "RUBY": "Rubius", + "RUBYEX": "Ruby.Exchange", + "RUC": "Rush", + "RUFF": "Ruff", + "RUG": "Rug", + "RUGZ": "pulltherug.finance", + "RULER": "Ruler Protocol", + "RUNE": "Thorchain", + "RUP": "Rupee", + "RUPX": "Rupaya", + "RUSH": "RUSH COIN", + "RUST": "RustCoin", + "RUSTBITS": "Rustbits", + "RUX": "Gacrux NFT", + "RVC": "Revenue Coin", + "RVF": "RocketX exchange", + "RVLNG": "RevolutionGames", + "RVLT": "Revolt 2 Earn", + "RVN": "Ravencoin", + "RVO": "AhrvoDEEX", + "RVP": "Revolution Populi", + "RVR": "Revolution VR", + "RVST": "Revest Finance", + "RVT": "Rivetz", + "RVX": "Rivex", + "RWD": "Reward Vision", + "RWE": "Real-World Evidence", + "RWN": "Rowan Token", + "RWS": "Robonomics Web Services", + "RXD": "Radiant", + "RXT": "RIMAUNANGIS", + "RYC": "RoyalCoin", + "RYCN": "RoyalCoin 2.0", + "RYO": "Ryo", + "RYOMA": "Ryoma", + "RYOSHI": "Ryoshis Vision", + "RYZ": "Anryze", + "RZR": "RazorCoin", + "S2K": "Sports 2K75", + "S4F": "S4FE", + "S8C": "S88 Coin", + "SABR": "SABR Coin", + "SAC1": "Sable Coin", + "SAF": "Safinus", + "SAFE": "SafeCoin", + "SAFEBTC": "SafeBTC", + "SAFEBULL": "SafeBull", + "SAFEHAMSTERS": "SafeHamsters", + "SAFEMARS": "Safemars", + "SAFEMOON": "SafeMoon", + "SAFES": "SafeSwap", + "SAFESTAR": "Safe Star", + "SAFEX": "SafeExchangeCoin", + "SAFUU": "SAFUU", + "SAGA": "SagaCoin", + "SAI": "SAI", + "SAITAMA": "Saitama Inu", + "SAITAMAV1": "Saitama v1", + "SAITANOBI": "Saitanobi", + "SAITO": "Saito", + "SAK": "SharkCoin", + "SAKATA": "Sakata Inu", + "SAKE": "SakeToken", + "SAL": "SalPay", + "SALE": "DxSale Network", + "SALMON": "Salmon", + "SALT": "Salt Lending", + "SAMO": "Samoyedcoin", + "SAN": "Santiment", + "SANA": "Storage Area Network Anywhere", + "SAND": "The Sandbox", + "SANDG": "Save and Gain", + "SANDWICH": " Sandwich Network", + "SANSHU": "Sanshu Inu", + "SANTOS": "Santos FC Fan Token", + "SAO": "Sator", + "SAP": "SwapAll", + "SAPP": "Sapphire", + "SAR": "Saren", + "SARCO": "Sarcophagus", + "SAS": "Stand Share", + "SASHIMI": "Sashimi", + "SAT": "Satisfaction Token", + "SAT2": "Saturn2Coin", + "SATA": "Signata", + "SATS": "Satoshi", + "SATT": "SaTT", + "SATX": "SatoExchange Token", + "SAUNA": "SaunaFinance Token", + "SAV3": "SAV3", + "SAVG": "SAVAGE", + "SB": "DragonSB", + "SBA": "simplyBrand", + "SBC": "StableCoin", + "SBCC": "Smart Block Chain City", + "SBE": "Sombe", + "SBGO": "Bingo Share", + "SBR": "Saber", + "SBRT": "SaveBritney", + "SBSC": "Subscriptio", + "SBT": "SOLBIT", + "SBTC": "Super Bitcoin", + "SC": "Siacoin", + "SCA": "SiaClassic", + "SCAM": "Scam Coin", + "SCAP": "SafeCapital", + "SCAR": "Velhalla", + "SCASH": "SpaceCash", + "SCAT": "Sad Cat Token", + "SCC": "StockChain Coin", + "SCDS": "Shrine Cloud Storage Network", + "SCH": "SoccerHub", + "SCIA": "Stem Cell", + "SCIX": "Scientix", + "SCL": "Sociall", + "SCLP": "Scallop", + "SCN": "Swiscoin", + "SCNSOL": "Socean Staked Sol", + "SCO": "SCOPE", + "SCOIN": "ShinCoin", + "SCONE": "Sportcash One", + "SCOOBY": "Scooby coin", + "SCOR": "Scorista", + "SCORE": "Scorecoin", + "SCOT": "Scotcoin", + "SCP": "ScPrime", + "SCREAM": "Scream", + "SCRIBE": "Scribe Network", + "SCRIV": "SCRIV", + "SCRL": "Scroll", + "SCRM": "Scorum", + "SCROOGE": "Scrooge", + "SCRPT": "ScryptCoin", + "SCRT": "Secret", + "SCT": "ScryptToken", + "SCTK": "SharesChain", + "SCY": "Synchrony", + "SD": "Stader", + "SDA": "SDChain", + "SDAO": "SingularityDAO", + "SDC": "ShadowCash", + "SDL": "Saddle Finance", + "SDN": "Shiden Network", + "SDOG": "Small Doge", + "SDP": "SydPakCoin", + "SDRN": "Senderon", + "SDS": "Alchemint Standards", + "SDT": "TerraSDT", + "SDUSD": "SDUSD", + "SDX": "SwapDEX", + "SEA": "Second Exchange Alliance", + "SEAL": "Seal Finance", + "SEALN": "Seal Network", + "SEAT": "SeatlabNFT", + "SEC": "SecureCryptoPayments", + "SECO": "Serum Ecosystem Token", + "SECRT": "SecretCoin", + "SEED": "Superbloom", + "SEEDS": "SeedShares", + "SEEDV": "Seed Venture", + "SEELE": "Seele", + "SEEN": "SEEN", + "SEER": "SEER", + "SEI": "Sei", + "SEL": "SelenCoin", + "SELF": "SELFCrypto", + "SEM": "Semux", + "SEN": "Sentaro", + "SENATE": "SENATE", + "SENC": "Sentinel Chain", + "SEND": "Social Send", + "SENNO": "SENNO", + "SENSE": "Sense Token", + "SENSO": "SENSO", + "SENT": "Sentinel", + "SEON": "Seedon", + "SEOR": "SEOR Network", + "SEOS": "Smart Eye Operating System", + "SEPA": "Secure Pad", + "SEQ": "Sequence", + "SERG": "Seiren Games Network", + "SERO": "Super Zero", + "SERV": "Serve", + "SESSIA": "SESSIA", + "SETH": "sETH", + "SETH2": "sETH2", + "SETHER": "Sether", + "SETS": "Sensitrust", + "SFC": "Solarflarecoin", + "SFD": "SafeDeal", + "SFG": "S.Finance", + "SFI": "Saffron.finance", + "SFL": "Sunflower Land", + "SFM": "SafeMoon V2", + "SFP": "SafePal", + "SFR": "SaffronCoin", + "SFT": "SportsFix", + "SFU": "Saifu", + "SFUEL": "SparkPoint Fuel", + "SFUND": "Seedify.fund", + "SFX": "SUBX FINANCE LAB", + "SG": "SocialGood", + "SGB": "Songbird", + "SGDX": "eToro Singapore Dollar", + "SGE": "Society of Galactic Exploration", + "SGLY": "Singularity", + "SGN": "Signals Network", + "SGO": "SafuuGO", + "SGOLD": "SpaceGold", + "SGP": "SGPay", + "SGR": "Sogur Currency", + "SGT": "SharedStake Governance Token", + "SHA": "Safe Haven", + "SHACOIN": "Shacoin", + "SHADE": "ShadeCoin", + "SHAKE": "Spaceswap SHAKE", + "SHAMAN": "Shaman King Inu", + "SHARD": "ShardCoin", + "SHARE": "Seigniorage Shares", + "SHARECHAIN": "ShareChain", + "SHARPE": "Sharpe Capital", + "SHB4": "Super Heavy Booster 4", + "SHD": "ShardingDAO", + "SHE": "Shine Chain", + "SHEESH": "Sheesh it is bussin bussin", + "SHEESHA": "Sheesha Finance", + "SHELL": "Shell Token", + "SHERA": "Shera Tokens", + "SHFL": "SHUFFLE!", + "SHFT": "Shyft Network", + "SHI": "Shirtum", + "SHIB": "Shiba Inu", + "SHIB05": "Half Shiba Inu", + "SHIBACASH": "ShibaCash", + "SHIBAMOM": "Shiba Mom", + "SHIBDOGE": "ShibaDoge", + "SHIBELON": "ShibElon", + "SHIBMERICAN": "Shibmerican", + "SHIBO": "ShiBonk", + "SHIBTC": "Shibabitcoin", + "SHIELD": "Crypto Shield", + "SHIELDNET": "Shield Network", + "SHIFT": "Shift", + "SHIH": "Shih Tzu", + "SHILL": "SHILL Token", + "SHINJA": "Shibnobi", + "SHIP": "ShipChain", + "SHIRYOINU": "Shiryo-Inu", + "SHIT": "I will poop it NFT", + "SHL": "Oyster Shell", + "SHLD": "ShieldCoin", + "SHND": "StrongHands", + "SHO": "Showcase Token", + "SHOE": "ShoeFy", + "SHON": "ShonToken", + "SHOP": "Shoppi Coin", + "SHOPX": "Splyt", + "SHORTY": "ShortyCoin", + "SHOW": "ShowCoin", + "SHPING": "Shping Coin", + "SHR": "ShareToken", + "SHREK": "ShrekCoin", + "SHROOM": "Shroom.Finance", + "SHROOMFOX": "Magic Shroom", + "SHS": "SHEESH", + "SHX": "Stronghold Token", + "SI": "Siren", + "SIB": "SibCoin", + "SIC": "Swisscoin", + "SIDUS": "Sidus", + "SIERRA": "Sierracoin", + "SIFT": "Smart Investment Fund Token", + "SIFU": "SIFU", + "SIG": "Signal", + "SIGN": "Signin", + "SIGNA": "Signa", + "SIGNAT": "SignatureChain", + "SIGT": "Signatum", + "SIGU": "Singular", + "SIL": "SIL Finance Token V2", + "SILK": "SilkCoin", + "SILKR": "SilkRoadCoin", + "SILKT": "SilkChain", + "SILO": "Silo Finance", + "SILVERWAY": "Silverway", + "SIMPLE": "SimpleChain", + "SIN": "Sinverse", + "SINE": "Sinelock", + "SINGLE": "Single Finance", + "SINS": "SafeInsure", + "SINX": "SINX Token", + "SIP": "Space SIP", + "SIPHER": "Sipher", + "SIS": "Symbiosis Finance", + "SISA": "Strategic Investments in Significant Areas", + "SISHI": "Sishi Finance", + "SIX": "SIX Network", + "SJCX": "StorjCoin", + "SKB": "SkullBuzz", + "SKC": "Skeincoin", + "SKEB": "Skeb", + "SKET": "Sketch coin", + "SKEY": "SmartKey", + "SKI": "Skillchain", + "SKILL": "CryptoBlades", + "SKIN": "Skincoin", + "SKL": "SKALE Network", + "SKLAY": "sKLAY", + "SKM": "Skrumble Network", + "SKR": "Sakuracoin", + "SKRB": "Sakura Bloom", + "SKRP": "Skraps", + "SKRT": "Skrilla Token", + "SKT": "Sukhavati Network", + "SKU": "Sakura", + "SKULL": "Pirate Blocks", + "SKY": "Skycoin", + "SKYFT": "SKYFchain", + "SKYM": "SkyMap", + "SKYRIM": "Skyrim Finance", + "SLA": "SUPERLAUNCH", + "SLAM": "Slam Token", + "SLC": "Solice", + "SLEEP": "Sleep Ecosystem", + "SLEEPEE": "SleepFuture", + "SLG": "Land Of Conquest", + "SLICE": "Tranche Finance", + "SLICEC": "SLICE", + "SLIM": "Solanium", + "SLING": "Sling Coin", + "SLINK": "Soft Link", + "SLM": "SlimCoin", + "SLND": "Solend", + "SLNV2": "SLNV2", + "SLOKI": "Super Floki", + "SLP": "Smooth Love Potion", + "SLR": "SolarCoin", + "SLRR": "Solarr", + "SLRS": "Solrise Finance", + "SLS": "SaluS", + "SLST": "SmartLands", + "SLT": "Social Lending Network", + "SLVX": "eToro Silver", + "SLX": "Slate", + "SMAC": "Social Media Coin", + "SMART": "SmartCash", + "SMARTCREDIT": "SmartCredit Token", + "SMARTLOX": "SmartLOX", + "SMARTNFT": "SmartNFT", + "SMARTSHARE": "Smartshare", + "SMARTUP": "Smartup", + "SMAT": "Smathium", + "SMBR": "Sombra", + "SMBSWAP": "SimbCoin Swap", + "SMC": "SmartCoin", + "SMCW": "Space Misfits", + "SMD": "SMD Coin", + "SMETA": "StarkMeta", + "SMF": "SmurfCoin", + "SMG": "Smaugs NFT", + "SMI": "SafeMoon Inu", + "SMILE": "Smile Token", + "SML": "Saltmarble", + "SMLY": "SmileyCoin", + "SMOKE": "Smoke", + "SMON": "StarMon", + "SMOON": "SaylorMoon", + "SMPL": "SMPL Foundation", + "SMR": "Shimmer", + "SMRAT": "Secured MoonRat", + "SMSR": "Samsara Coin", + "SMT": "SmartMesh", + "SMTF": "SmartFi", + "SMTY": "Smoothy", + "SNACK": "Crypto Snack", + "SNAP": "SnapEx", + "SNB": "SynchroBitcoin", + "SNC": "SunContract", + "SND": "Sandcoin", + "SNE": "StrongNode", + "SNEK": "Snek", + "SNET": "Snetwork", + "SNFT.BITCI": "Spanish National Team Fan Token", + "SNGLS": "SingularDTV", + "SNIP": "LyrnAI", + "SNK": "Snake Token", + "SNL": "Sport and Leisure", + "SNM": "SONM", + "SNOOP": "SnoopDAO", + "SNOV": "Snovio", + "SNOW": "Snowswap", + "SNPC": "SnapCoin", + "SNRG": "Synergy", + "SNS": "Synesis One", + "SNT": "Status Network Token", + "SNTR": "Silent Notary", + "SNTVT": "Sentivate", + "SNX": "Synthetix", + "SNY": "Synthetify ", + "SOAK": "Soak Token", + "SOAR": "Soarcoin", + "SOBA": "SOBA Token", + "SOC": "All Sports Coin", + "SOCC": "SocialCoin", + "SOCKS": "Unisocks", + "SODA": "SODA Coin", + "SOFI": "RAI Finance", + "SOIL": "SoilCoin", + "SOJ": "Sojourn Coin", + "SOKU": "Soku Swap", + "SOL": "Solana", + "SOLA": "Sola", + "SOLAR": "Solar", + "SOLARDAO": "Solar DAO", + "SOLARFARM": "SolarFarm", + "SOLARIX": "SOLARIX", + "SOLE": "SoleCoin", + "SOLID": "Solidified", + "SOLO": "Sologenic", + "SOLR": "SolRazr", + "SOLVE": "SOLVE", + "SOM": "Souls of Meta", + "SOMA": "Soma", + "SOMNIUM": "Somnium Space CUBEs", + "SON": "Simone", + "SONAR": "SonarWatch", + "SONG": "Song Coin", + "SOON": "Soonaverse", + "SOONCOIN": "SoonCoin", + "SOP": "SoPay", + "SORA": "Sora Validator Token", + "SOSNOVKINO": "Sosnovkino", + "SOTA": "SOTA Finance", + "SOUL": "Phantasma", + "SOULS": "Soulsaver", + "SOUND": "Sound Coin", + "SOURCE": "ReSource Protocol", + "SOV": "Sovryn", + "SOVE": "Soverain", + "SOY": "Soy Finance", + "SP": "Sex Pistols", + "SPA": "Sperax", + "SPACE": "Spacelens", + "SPACECOIN": "SpaceCoin", + "SPACEPI": "SpacePi", + "SPAIN": "SpainCoin", + "SPANK": "SpankChain", + "SPARTA": "Spartan Protocol Token", + "SPAT": "Meta Spatial", + "SPAY": "SpaceY 2025", + "SPC": "SpaceChain ERC20", + "SPC.QRC": "SpaceChain (QRC-20)", + "SPCIE": "Specie", + "SPD": "Stipend", + "SPDR": "SpiderDAO", + "SPE": "SavePlanetEarth", + "SPEC": "SpecCoin", + "SPELL": "Spell Token", + "SPELLFIRE": "Spellfire", + "SPEND": "Spend", + "SPENDC": "SpendCoin", + "SPF": "SportyCo", + "SPG": "Space Crypto", + "SPH": "Spheroid Universe", + "SPHR": "Sphere Coin", + "SPHRI": "Spherium", + "SPHTX": "SophiaTX", + "SPHYNX": "Sphynx Token", + "SPI": "Shopping.io", + "SPICE": "Spice", + "SPIKE": "Spiking", + "SPIN": "SPIN Protocol", + "SPIRIT": "SpiritSwap", + "SPK": "SparksPay", + "SPKL": "SpokLottery", + "SPKTR": "Ghost Coin", + "SPLA": "SmartPlay", + "SPM": "Supreme", + "SPN": "Sapien Network", + "SPND": "Spindle", + "SPO": "Spores Network", + "SPOK": "Spock", + "SPOOL": "Spool DAO Token", + "SPORE": "Enoki Finance", + "SPORT": "SportsCoin", + "SPOTS": "Spots", + "SPRKL": "Sparkle Loyalty", + "SPRT": "Sportium", + "SPRTS": "Sprouts", + "SPRTZ": "SpritzCoin", + "SPS": "Splinterlands", + "SPT": "SPECTRUM", + "SPUME": "Spume", + "SPWN": "Bitspawn", + "SPX": "Sp8de", + "SPXC": "SpaceXCoin", + "SPY": "Smarty Pay", + "SQAT": "Syndiqate", + "SQG": "Squid Token", + "SQL": "Squall Coin", + "SQR": "Squeezer", + "SQUAWK": "Squawk", + "SQUID": "Squid Game", + "SQUIDGROW": "SquidGrow", + "SRC": "SecureCoin", + "SRCOIN": "SRCoin", + "SREUR": "SocialRemit", + "SRK": "SparkPoint", + "SRLTY": "SaitaRealty", + "SRM": "Serum", + "SRN": "SirinLabs", + "SRNT": "Serenity", + "SRP": "Starpunk", + "SRT": "Smart Reward Token", + "SRWD": "ShibRWD", + "SRX": "StorX", + "SS": "Sharder", + "SSC": "SelfSell", + "SSD": "Sonic Screw Driver Coin", + "SSG": "Surviving Soldiers", + "SSGT": "Safeswap", + "SSH": "StreamSpace", + "SSS": "StarSharks", + "SST": "SIMBA Storage Token", + "SSTC": "SunShotCoin", + "SSV": "ssv.network", + "SSVCOIN": "SSVCoin", + "SSX": "SOMESING", + "ST": "Skippy Token", + "STA": "Defi STOA", + "STAC": "STAC", + "STACK": "StackOS", + "STACS": "STACS Token", + "STAK": "Jigstack", + "STAKE": "xDai Chain", + "STAKEDETH": "StakeHound Staked Ether", + "STALIN": "StalinCoin", + "STAMP": "SafePost", + "STANDARD": "Stakeborg DAO", + "STAR": "FileStar", + "STARBASE": "Starbase", + "STARC": "StarChain", + "STARL": "StarLink", + "STARLAUNCH": "StarLaunch", + "STARLY": "Starly", + "STARP": "Star Pacific Coin", + "STARS": "Mogul Productions", + "STARSH": "StarShip Token", + "START": "StartCoin", + "STARTA": "Starta", + "STASH": "BitStash", + "STAT": "STAT", + "STATER": "Stater", + "STATERA": "Statera", + "STAX": "Staxcoin", + "STBU": "Stobox Token", + "STC": "Satoshi Island", + "STCN": "Stakecoin", + "STEEM": "Steem", + "STEEMD": "Steem Dollars", + "STEEP": "SteepCoin", + "STEN": "Steneum Coin", + "STEP": "Step Finance", + "STEPH": "Step Hero", + "STEPR": "Step", + "STEPS": "Steps", + "STERLINGCOIN": "SterlingCoin", + "STETH": "Staked Ether", + "STEWIE": "Stewie Coin", + "STEX": "STEX", + "STF": "Structure Finance", + "STFX": "STFX", + "STG": "Stargate Finance", + "STHR": "Stakerush", + "STI": "Seek Tiger", + "STING": "Sting", + "STK": "STK Token", + "STKAAVE": "Staked Aave", + "STKATOM": "pSTAKE Staked ATOM", + "STKK": "Streakk", + "STKXPRT": "pSTAKE Staked XPRT", + "STMAN": "Stickman Battleground", + "STMX": "StormX", + "STN": "Stone Token", + "STND": "Standard Protocol", + "STO": "Save The Ocean", + "STOGE": "Stoner Doge Finance", + "STON": "Ston", + "STONK": "STONK", + "STOP": "SatoPay", + "STOR": "Self Storage Coin", + "STORE": "Bit Store", + "STORJ": "Storj", + "STORM": "Storm", + "STOS": "Stratos", + "STOX": "Stox", + "STP": "StashPay", + "STPL": "Stream Protocol", + "STPT": "STP Network", + "STQ": "Storiqa Token", + "STR": "Sourceless", + "STRAKS": "Straks", + "STRAX": "Stratis", + "STRAY": "Stray Dog", + "STREAM": "STREAMIT COIN", + "STRIP": "Stripto", + "STRK": "Strike", + "STRM": "StreamCoin", + "STRNGR": "Stronger", + "STRONG": "Strong", + "STRP": "Strips Finance", + "STRS": "STARS", + "STRX": "StrikeX", + "STS": "SBank", + "STSOL": "Lido Staked SOL", + "STSR": "SatelStar", + "STU": "BitJob", + "STUDENTC": "Student Coin", + "STV": "Sativa Coin", + "STX": "Stacks", + "STZ": "99Starz", + "STZEN": "StakedZEN", + "SUB": "Substratum Network", + "SUCR": "Sucre", + "SUDO": "sudoswap", + "SUGAR": "Sugar Exchange", + "SUI": "Sui", + "SUKU": "SUKU", + "SUM": "SumSwap", + "SUMO": "Sumokoin", + "SUN": "Sun Token", + "SUNC": "Sunrise", + "SUNEX": "The Sun Exchange", + "SUNI": "SUNI", + "SUNNY": "Sunny Aggregator", + "SUNOLD": "Sun Token", + "SUP": "Supcoin", + "SUP8EME": "SUP8EME Token", + "SUPE": "Supe Infinity", + "SUPER": "SuperVerse", + "SUPERBID": "SuperBid", + "SUPERC": "SuperCoin", + "SUPERTX": "SuperTX", + "SUR": "Suretly", + "SURE": "inSure", + "SURF": "Surf.Finance", + "SURV": "Survival Game Online", + "SUSD": "sUSD", + "SUSHI": "Sushi", + "SUTER": "Suterusu", + "SUZUME": "Shita-kiri Suzume", + "SVD": "savedroid", + "SVS": "GivingToServices SVS", + "SVT": "Solvent", + "SVX": "Savix", + "SWA": "Swace", + "SWACH": "Swachhcoin", + "SWAG": "SWAG Finance", + "SWAP": "Trustswap", + "SWAPP": "SWAPP Protocol", + "SWAPZ": "SWAPZ.app", + "SWARM": "SwarmCoin", + "SWASH": "Swash", + "SWAY": "Sway Social", + "SWC": "Scanetchain Token", + "SWD": "SW DAO", + "SWDAO": "Super Whale DAO", + "SWEAT": "Sweat Economy", + "SWEET": "SweetStake", + "SWFL": "Swapfolio", + "SWFTC": "SWFTCoin", + "SWIFT": "BitSwift", + "SWING": "SwingCoin", + "SWINGBY": "Swingby", + "SWISE": "StakeWise", + "SWM": "Swarm Fund", + "SWOP": "Swop", + "SWP": "Kava Swap", + "SWRV": "Swerve", + "SWT": "Swarm City Token", + "SWTH": "Carbon", + "SWYFTT": "SWYFT", + "SX": "SX Network", + "SXC": "SexCoin", + "SXDT": "SPECTRE Dividend Token", + "SXP": "SXP", + "SXUT": "SPECTRE Utility Token", + "SYBC": "SYB Coin", + "SYBTC": "sBTC", + "SYC": "SynchroCoin", + "SYL": "XSL Labs", + "SYLO": "Sylo", + "SYM": "SymVerse", + "SYN": "Synapse", + "SYNC": "Sync Network", + "SYNCC": "SyncCoin", + "SYNCO": "Synco", + "SYNLEV": "SynLev", + "SYNR": "MOBLAND", + "SYNX": "Syndicate", + "SYPOOL": "Sypool", + "SYS": "SysCoin", + "T": "Threshold Network Token", + "TAAS": "Token as a Service", + "TAB": "MollyCoin", + "TABOO": "Taboo Token", + "TAC": "Traceability Chain", + "TACHYON": "Tachyon Protocol", + "TAD": "Tadpole Finance", + "TAF": "TAF", + "TAGR": "Think And Get Rich Coin", + "TAI": "tBridge Token", + "TAIYO": "Taiyo", + "TAJ": "TajCoin", + "TAK": "TakCoin", + "TAKI": "Taki", + "TALAO": "Talao", + "TALK": "Talken", + "TAMA": "Tamadoge", + "TAN": "Taklimakan", + "TANGO": "keyTango", + "TANK": "CryptoTanks", + "TAO": "Fusotao", + "TAP": "TAP FANTASY", + "TAPC": "Tap Coin", + "TAPPINGCOIN": "TappingCoin", + "TAPT": "Tortuga Staked Aptos", + "TARA": "Taraxa", + "TARI": "Tari World", + "TAROT": "Tarot", + "TARP": "Totally A Rug Pull", + "TAS": "TARUSH", + "TASH": "Smart Trip Platform", + "TASTE": "TasteNFT", + "TAT": "Tatcoin", + "TAU": "Lamden Tau", + "TAUC": "Taurus Coin", + "TAUM": "Orbitau Taureum", + "TAUR": "Marnotaur", + "TAVA": "ALTAVA", + "TBAC": "BlockAura", + "TBAR": "Titanium BAR", + "TBB": "Trade Butler Bot", + "TBC": "Ten Best Coins", + "TBCC": "TBCC", + "TBCX": "TrashBurn", + "TBE": "TrustBase", + "TBIS": "TBIS token", + "TBL": "Tombola", + "TBT": "T-BOT", + "TBTC": "tBTC", + "TBX": "Tokenbox", + "TCANDY": "TripCandy", + "TCAP": "Total Crypto Market Cap", + "TCC": "The ChampCoin", + "TCG2": "TCG Coin 2.0", + "TCH": "Thorecash", + "TCHAIN": "Tchain", + "TCHB": "Teachers Blockchain", + "TCHTRX": "ThoreCashTRX", + "TCNX": "Tercet Network", + "TCO": "ThinkCoin", + "TCP": "The Crypto Prophecies", + "TCR": "Tracer DAO", + "TCT": "TokenClub", + "TCX": "T-Coin", + "TCY": "The Crypto You", + "TD": "Trade Chain", + "TDE": "Trade Ecology Token", + "TDFB": "TDFB", + "TDFY": "Tidefi", + "TDP": "TrueDeck", + "TDROP": "ThetaDrop", + "TDS": "TokenDesk", + "TDX": "Tidex Token", + "TEAM": "TeamUP", + "TEC": "TeCoin", + "TECH": "TechCoin", + "TECRA": "TecraCoin", + "TEDDY": "Teddy Doge", + "TEER": "Integritee", + "TEK": "TekCoin", + "TEL": "Telcoin", + "TELE": "Miracle Tele", + "TELL": "Tellurion", + "TELOS": "Teloscoin", + "TEM": "Temtum", + "TEMCO": "TEMCO", + "TEN": "Tokenomy", + "TEND": "Tendies", + "TENDIE": "TendieSwap", + "TENFI": "TEN", + "TENNET": "Tennet", + "TENSHI": "Tenshi", + "TENT": "TENT", + "TEP": "Tepleton", + "TER": "TerraNovaCoin", + "TERA": "TERA", + "TERADYNE": "Teradyne", + "TERAR": "Terareum", + "TERAWATT": "Terawatt", + "TERN": "Ternio", + "TERN.ETH": "Ternio ERC20", + "TES": "TeslaCoin", + "TESLA": "TeslaCoilCoin", + "TESTA": "Testa", + "TETRA": "Tetra", + "TFBX": "Truefeedback Token", + "TFC": "The Freedom Coin", + "TFI": "TrustFi Network Token", + "TFL": "True Flip Lottery", + "TFLOW": "TradeFlow", + "TFS": "TFS Token", + "TFT": "The Famous Token", + "TFUEL": "Theta Fuel", + "TGAME": "TrueGame", + "TGC": "TigerCoin", + "TGCC": "TheGCCcoin", + "TGR": "Tegro", + "TGT": "TargetCoin", + "THALES": "Thales", + "THC": "The Hempcoin", + "THECITADEL": "The Citadel", + "THEDAO": "The DAO", + "THEMIS": "Themis", + "THEOS": "Theos", + "THETA": "Theta Network", + "THEX": "Thore Exchange", + "THG": "Thetan Arena", + "THN": "Throne", + "THNX": "ThankYou", + "THO": "Athero", + "THOR": "THORSwap", + "THP": "TurboHigh Performance", + "THR": "Thorecoin", + "THRT": "ThriveToken", + "THRY": "THEORY", + "THS": "TechShares", + "THT": "Thought", + "THUNDER": "ThunderStake", + "THX": "Thorenext", + "TIA": "Tianhe", + "TIC": "TrueInvestmentCoin", + "TIDAL": "Tidal Finance", + "TIE": "Ties Network", + "TIFI": "TiFi Token", + "TIG": "Tigereum", + "TIGER": "JungleKing TigerCoin", + "TIIM": "TriipMiles", + "TIKI": "Tiki Token", + "TIKTOKEN": "TikToken", + "TIME": "Chrono.tech", + "TIMI": "Timicoin", + "TINC": "Tiny Coin", + "TINKU": "TinkuCoin", + "TINU": "Telegram Inu", + "TIOX": "TIOx", + "TIP": "Tip Blockchain", + "TIPS": "FedoraCoin", + "TIT": "TittieCoin", + "TITA": "Titan Hunters", + "TITAN": "TitanSwap", + "TITANO": "Titano", + "TITC": "TitCoin", + "TIX": "Blocktix", + "TKA": "Tokia", + "TKC": "TurkeyChain", + "TKG": "Takamaka Green Coin", + "TKING": "Tiger King", + "TKINU": "Tsuki Inu", + "TKMN": "Tokemon", + "TKN": "Monolith", + "TKO": "Tokocrypto", + "TKP": "TOKPIE", + "TKR": "CryptoInsight", + "TKS": "Tokes", + "TKT": "Crypto Tickets", + "TKY": "THEKEY Token", + "TLM": "Alien Worlds", + "TLN": "Trustlines Network", + "TLOS": "Telos", + "TLP": "TulipCoin", + "TME": "Timereum", + "TMED": "MDsquare", + "TMN": "TranslateMe", + "TMON": "Two Monkey Juice Bar", + "TMT": "Tamy Token", + "TMTG": "The Midas Touch Gold", + "TN": "TurtleNetwork", + "TNB": "Time New Bank", + "TNC": "TNC Coin", + "TNS": "Transcodium", + "TNT": "Tierion", + "TOA": "TOA Coin", + "TOC": "TouchCon", + "TODAY": "TodayCoin", + "TOK": "Tokenplace", + "TOKAU": "Tokyo AU", + "TOKC": "Tokyo Coin", + "TOKE": "Tokemak", + "TOKEN": "Chainswap", + "TOKENSTARS": "TokenStars", + "TOKKI": "CRYPTOKKI", + "TOKO": "ToKoin", + "TOKU": "TokugawaCoin", + "TOL": "Tolar", + "TOM": "TOM Finance", + "TOMAHAWKCOIN": "Tomahawkcoin", + "TOMB": "Tomb", + "TOMI": "tomiNet", + "TOMO": "TomoChain", + "TOMOE": "TomoChain ERC20", + "TOMS": "TomTomCoin", + "TON": "Tokamak Network", + "TONCOIN": "The Open Network", + "TONE": "TE-FOOD", + "TONIC": "Tectonic", + "TONTOKEN": "TONToken", + "TOOB": "Toobcoin", + "TOOLS": "TOOLS", + "TOON": "Pontoon", + "TOPC": "Topchain", + "TOPG": "Tate Token", + "TOPN": "TOP Network", + "TOR": "TOR", + "TORG": "TORG", + "TORII": "Torii Finance", + "TORN": "Tornado Cash", + "TOS": "ThingsOperatingSystem", + "TOSC": "T.OS", + "TOT": "TotCoin", + "TOTM": "Totem", + "TOWER": "Tower", + "TOWN": "Town Star", + "TOX": "INTOverse", + "TOZ": "Tozex", + "TP": "Token Swap", + "TPAD": "TrustPad", + "TPAY": "TokenPay", + "TPC": "Techpay", + "TPCASH": "TPCash", + "TPG": "Troll Payment", + "TPT": "Token Pocket", + "TPY": "Thrupenny", + "TR3": "Tr3zor", + "TRA": "Trabzonspor Fan Token", + "TRAC": "OriginTrail", + "TRACE": "Trace Network Labs", + "TRADE": "Polytrade", + "TRAID": "Traid", + "TRAK": "TrakInvest", + "TRAT": "Tratok", + "TRAVA": "Trava Finance", + "TRAXIA": "Traxia Membership Token", + "TRAXX": "Traxx", + "TRB": "Tellor", + "TRBT": "Tribute", + "TRC": "TerraCoin", + "TRCB": "TRCB Chain", + "TRCL": "Treecle", + "TRCT": "Tracto", + "TRDC": "Traders Coin", + "TRDL": "Strudel Finance", + "TRDS": "Traders Token", + "TRDT": "Trident", + "TRECENTO": "Trecento Blockchain Capital", + "TREE": "HyperionX", + "TREEB": "Retreeb", + "TRET": "Tourist Review", + "TRGI": "The Real Golden Inu", + "TRI": "Triangles Coin", + "TRIA": "Triaconta", + "TRIAS": "Trias", + "TRIBE": "Tribe", + "TRIBETOKEN": "TribeToken", + "TRIBL": "Tribal Token", + "TRICK": "TrickyCoin", + "TRICKLE": "Trickle", + "TRIG": "Trigger", + "TRINI": "Trinity Network Credit", + "TRIO": "Tripio", + "TRIPAD": "TripAdvisor, Inc.", + "TRIX": "TriumphX", + "TRK": "TruckCoin", + "TRL": "Triall", + "TRNDZ": "Trendsy", + "TROLL": "Trollcoin", + "TRONPAD": "TRONPAD", + "TROP": "Interop", + "TROY": "Troy", + "TRP": "Tronipay", + "TRR": "Terran Coin", + "TRST": "TrustCoin", + "TRTL": "TurtleCoin", + "TRTT": "Trittium", + "TRU": "TrueFi", + "TRUE": "True Chain", + "TRUEBIT": "Truebit Protocol", + "TRUMP": "TrumpCoin", + "TRUST": "TrustDAO", + "TRV": "TrustVerse", + "TRVC": "Trivechain", + "TRVL": "DTravel", + "TRX": "TRON", + "TRXDICE": "TRONdice", + "TRXWIN": "TronWin", + "TRYB": "BiLira", + "TRYC": "TRYC", + "TRYX": "eToro Turkish Lira", + "TSA": "Teaswap Art", + "TSC": "TrusterCoin", + "TSCT": "Transient", + "TSD": "True Seigniorage Dollar", + "TSE": "TattooCoin", + "TSF": "Transaction Service Fee", + "TSG": "The Soldiers Gold", + "TSHP": "12Ships", + "TSL": "Energo", + "TSR": "Tesra", + "TSUKA": "Dejitaru Tsuka", + "TSX": "TradeStars", + "TT": "ThunderCore", + "TTC": "TTC PROTOCOL", + "TTK": "The Three Kingdoms", + "TTM": "To The Moon", + "TTN": "Titan Coin", + "TTT": "The Transfer Token", + "TTU": "TaTaTu", + "TTV": "TV-TWO", + "TUBE": "BitTube", + "TUDA": "Tutor's Diary", + "TULIP": "Tulip Protocol", + "TUP": "Tenup", + "TUR": "Turron", + "TURBO": "Turbo Wallet", + "TUSD": "True USD", + "TUT": "Tutellus", + "TVK": "Terra Virtua Kolect", + "TWC": "Twilight", + "TWD": "Terra World Token", + "TWEE": "TWEEBAA", + "TWEP": "The Web3 Project", + "TWIN": "Twinci", + "TWIST": "TwisterCoin", + "TWLV": "Twelve Coin", + "TWT": "Trust Wallet Token", + "TXA": "TXA", + "TXL": "Tixl", + "TXT": "TuneTrade", + "TYC": "Tycoon", + "TYCOON": "CryptoTycoon", + "TYPE": "Typerium", + "TYRANT": "Fable Of The Dragon", + "TYT": "Tianya Token", + "TZC": "TrezarCoin", + "TZKI": "Tsuzuki Inu", + "U": "Unidef", + "U8D": "Universal Dollar", + "UAEC": "United Arab Emirates Coin", + "UAT": "UltrAlpha", + "UBA": "Unbox.Art", + "UBC": "Ubcoin", + "UBEX": "Ubex", + "UBI": "Universal Basic Income", + "UBIQ": "Ubiqoin", + "UBQ": "Ubiq", + "UBT": "UniBright", + "UBTC": "UnitedBitcoin", + "UBX": "UBIX Network", + "UBXS": "UBXS", + "UBXT": "UpBots", + "UC": "YouLive Coin", + "UCA": "UCA Coin", + "UCAP": "Unicap.finance", + "UCASH": "U.CASH", + "UCG": "Universe Crystal Gene", + "UCH": "UChain", + "UCN": "UC Coin", + "UCO": "Uniris", + "UCOIN": "Ucoin", + "UCT": "UnitedCrowd", + "UDO": "Unido", + "UDOO": "Hyprr", + "UDT": "Unlock Protocol", + "UEC": "United Emirates Coin", + "UEDC": "United Emirate Decentralized Coin", + "UENC": "UniversalEnergyChain", + "UET": "Useless Ethereum Token", + "UETL": "Useless Eth Token Lite", + "UFC": "Union Fair Coin", + "UFFYI": "Unlimited FiscusFYI", + "UFI": "PureFi", + "UFO": "UFO Gaming", + "UFOC": "Unknown Fair Object", + "UFOCOIN": "Uniform Fiscal Object", + "UFR": "Upfiring", + "UFT": "UniLend Finance", + "UGAS": "Ultrain", + "UGC": "ugChain", + "UGT": "Universal Games Token", + "UHP": "Ulgen Hash Power", + "UIN": "Alliance Chain", + "UIP": "UnlimitedIP", + "UIS": "Unitus", + "UKG": "UnikoinGold", + "ULT": "Ultiledger", + "ULTC": "Umbrella", + "ULTGG": "UltimoGG", + "ULTRA": "Ultra", + "UM": "UncleMine", + "UMA": "UMA", + "UMAD": "MADworld", + "UMAMI": "Umami", + "UMB": "Umbrella Network", + "UMBR": "Umbria Network", + "UMC": "Umbrella Coin", + "UMEE": "Umee", + "UMI": "Universal Money Instrument", + "UMK": "UMKA", + "UMO": "Universal Molecule", + "UMX": "UniMex Network", + "UNAT": "Unattanium", + "UNB": "Unbound Finance", + "UNBNK": "Unbanked", + "UNBREAKABLE": "UnbreakableCoin", + "UNC": "UnCoin", + "UNCL": "UNCL", + "UNCX": "UniCrypt", + "UND": "United Network Distribution", + "UNDB": "unibot.cash", + "UNDEAD": "Undead Blocks", + "UNDG": "UniDexGas", + "UNF": "Unfed Coin", + "UNFI": "Unifi Protocol DAO", + "UNI": "Uniswap Protocol Token", + "UNIC": "Unicly", + "UNICORN": "UNICORN Token", + "UNIDX": "UniDex", + "UNIFY": "Unify", + "UNIM": "Unicorn Milk", + "UNIQ": "Uniqredit", + "UNIQUE": "Unique One", + "UNISTAKE": "Unistake", + "UNIT": "Universal Currency", + "UNITED": "UnitedCoins", + "UNITRADE": "UniTrade", + "UNITS": "GameUnits", + "UNITY": "SuperNET", + "UNIVRS": "Universe", + "UNIX": "UniX", + "UNLEASH": "UnleashClub", + "UNN": "UNION Protocol Governance Token", + "UNO": "Unobtanium", + "UNORE": "UnoRe", + "UNQ": "UNQ", + "UNQT": "Unique Utility Token", + "UNR": "Unirealchain", + "UNRC": "UniversalRoyalCoin", + "UNW": "UniWorld", + "UOP": "Utopia Genesis Foundation", + "UOS": "UOS", + "UP": "UpToken", + "UPCG": "Upcomings", + "UPCO2": "Universal Carbon", + "UPCOIN": "UPcoin", + "UPEUR": "Universal Euro", + "UPI": "Pawtocol", + "UPO": "UpOnly", + "UPP": "Sentinel Protocol", + "UPR": "Upfire", + "UPT": "Universal Protocol Token", + "UPUNK": "Unicly CryptoPunks Collection", + "UPUSD": "Universal US Dollar", + "UPX": "uPlexa", + "UQC": "Uquid Coin", + "UR": "UR", + "URAC": "Uranus", + "URALS": "Urals Coin", + "URO": "UroCoin", + "URQA": "UREEQA", + "URUS": "Urus Token", + "URX": "URANIUMX", + "USAT": "USAT", + "USC": "Ultimate Secure Cash", + "USCC": "USC", + "USCOIN": "USCoin", + "USDA": "USDA", + "USDAP": "Bond Appetite USD", + "USDC": "USD Coin", + "USDD": "USDD", + "USDE": "UnitaryStatus Dollar", + "USDEX": "eToro US Dollar", + "USDFL": "USDFreeLiquidity", + "USDG": "USDG", + "USDH": "HonestCoin", + "USDI": "Interest Protocol USDi", + "USDJ": "USDJ", + "USDK": "USDK", + "USDN": "Neutrino USD", + "USDP": "Pax Dollar", + "USDQ": "USDQ", + "USDS": "StableUSD", + "USDSB": "USDSB", + "USDT": "Tether", + "USDU": "Upper Dollar", + "USDX": "USDX Stablecoin", + "USDZ": "Zedxion USDZ", + "USE": "Usechain Token", + "USG": "USGold", + "USHIBA": "American Shiba", + "USNBT": "NuBits", + "USNOTA": "NOTA", + "USTC": "TerraClassicUSD", + "USX": "USX Quantum", + "UT": "Ulord", + "UTC": "UltraCoin", + "UTH": "Uther", + "UTI": "Unicorn Technology International", + "UTIL": "Utility Coin", + "UTK": "Utrust", + "UTNP": "Universa", + "UTT": "United Traders Token", + "UTU": "UTU Protocol", + "UUU": "U Network", + "UWU": "uwu", + "UZUMAKI": "Uzumaki Inu", + "VAB": "Vabble", + "VADER": "Vader Protocol", + "VAI": "Vai", + "VAIOT": "VAIOT", + "VAL": "Validity", + "VALID": "Validator Token", + "VALOR": "Valor Token", + "VALORBIT": "Valorbit", + "VALUE": "Value Liquidity", + "VANT": "Vanta Network", + "VANY": "Vanywhere", + "VAPOR": "Vaporcoin", + "VARIUS": "Varius", + "VBG": "Vibing", + "VBIT": "Valobit", + "VBK": "VeriBlock", + "VBSC": "Votechain", + "VBT": "VB Token", + "VCF": "Valencia CF Fan Token", + "VCG": "VCGamers", + "VCK": "28VCK", + "VCORE": "VCORE", + "VDG": "VeriDocGlobal", + "VDL": "Vidulum", + "VDO": "VidioCoin", + "VDR": "Vodra", + "VDV": "VDV Token", + "VDX": "Vodi X", + "VEC2": "VectorCoin 2.0", + "VEE": "BLOCKv", + "VEED": "VEED", + "VEEN": "LIVEEN", + "VEG": "BitVegan", + "VEGA": "Vega Protocol", + "VEIL": "VEIL", + "VELA": "Vela Token", + "VELO": "Velo", + "VELOD": "Velodrome Finance", + "VELOX": "Velox", + "VELOXPROJECT": "Velox", + "VEMP": "vEmpire DDAO", + "VEN": "VeChain Old", + "VENA": "Vena Network", + "VENT": "Vent Finance", + "VENTION": "Vention", + "VENUS": "VenusEnergy", + "VEO": "Amoveo", + "VER": "VersalNFT", + "VERA": "Vera", + "VERI": "Veritaseum", + "VERSA": "Versa Token", + "VERSE": "Verse", + "VERTEX": "Vertex", + "VEST": "VestChain", + "VESTA": "Vestarin", + "VET": "VeChain", + "VEX": "Vexanium", + "VFOX": "VFOX", + "VGO": "Vagabond", + "VGX": "Voyager Token", + "VHC": "Vault Hill City", + "VI": "Vid", + "VIA": "ViaCoin", + "VIB": "Viberate", + "VIBE": "VIBEHub", + "VIBLO": "VIBLO", + "VIC": "Victorium", + "VICA": "ViCA Token", + "VICEX": "ViceToken", + "VID": "VideoCoin", + "VIDT": "VIDT Datalink", + "VIDY": "Vidy", + "VIDYA": "Vidya", + "VIDYX": "VidyX", + "VIDZ": "PureVidz", + "VIEW": "Viewly", + "VIG": "TheVig", + "VIN": "VinChain", + "VINCI": "VINCI", + "VINU": "Vita Inu", + "VIOR": "ViorCoin", + "VIP": "VIP Tokens", + "VIPS": "Vipstar Coin", + "VIRAL": "Viral Coin", + "VISIO": "Visio", + "VISION": "VisionGame", + "VISR": "Visor", + "VIT": "Vision Industry Token", + "VITAE": "Vitae", + "VITE": "VITE", + "VIU": "Viuly", + "VIVID": "Vivid Coin", + "VIVO": "VIVO Coin", + "VKNF": "VKENAF", + "VLC": "Volcano Uni", + "VLS": "Veles", + "VLT": "Veltor", + "VLTC": "VaultCoin", + "VLTX": "Volentix", + "VLTY": "Vaulty", + "VLX": "Velas", + "VLXPAD": "VelasPad", + "VMC": "VirtualMining Coin", + "VME": "TrueVett", + "VNDC": "VNDC", + "VNES": "Vanesse", + "VNM": "Venom", + "VNT": "VNT Chain", + "VNTW": "Value Network Token", + "VNX": "VisionX", + "VNXAU": "VNX Gold", + "VNXLU": "VNX Exchange", + "VOCO": "Provoco", + "VODKA": "Vodka Token", + "VOISE": "Voise", + "VOL": "Volume Network", + "VOLLAR": "Vollar", + "VOLR": "Volare Network", + "VOLT": "Volt Inu", + "VOLTOLD": "Volt Inu (Old)", + "VOOT": "VootCoin", + "VOT": "Votecoin", + "VOW": "Vow", + "VOX": "Vox.Finance", + "VOXEL": "Voxies", + "VOY": "enVoy DeFi", + "VOYA": "Voyacoin", + "VPAD": "VLaunch", + "VPP": "Virtue Poker Points", + "VPRC": "VapersCoin", + "VR": "Victoria", + "VRA": "Verasity", + "VRC": "VeriCoin", + "VRGW": "Virtual Reality Game World", + "VRM": "Verium", + "VRN": "Varen", + "VRO": "VeraOne", + "VRP": "Prosense.tv", + "VRS": "Veros", + "VRSC": "Verus Coin", + "VRT": "Venus Reward Token", + "VRTY": "Verity", + "VRX": "Verox", + "VSD": "Value Set Dollar", + "VSL": "vSlice", + "VSO": "Verso", + "VSP": "Vesper Finance", + "VST": "VentiSwap", + "VSX": "Vsync", + "VSYS": "V Systems", + "VTC": "Vertcoin", + "VTG": "Victory Gem", + "VTHO": "VeChainThor", + "VTL": "Vertical", + "VTM": "Victorieum", + "VTN": "Voltroon", + "VTOS": "VTOS", + "VTS": "Veritise", + "VTX": "Vortex DeFi", + "VTY": "Victoriouscoin", + "VUC": "Virta Unique Coin", + "VULC": "Vulcano", + "VVI": "VV Coin", + "VVS": "VVS Finance", + "VXL": "Voxel X Network", + "VXV": "Vectorspace AI", + "VYBE": "Vybe", + "VYNC": "VYNK Chain", + "VZT": "Vezt", + "W1": "W1", + "W12": "W12 Protocol", + "W3C": "W3Coin", + "WAB": "WABnetwork", + "WABI": "WABI", + "WACO": "Waste Digital Coin", + "WAG": "WagyuSwap", + "WAGE": "Digiwage", + "WAGG": "Waggle Network", + "WAGMIGAMES": "WAGMI Game", + "WAI": "Wanaka Farm WAIRERE Token", + "WAIF": "Waifu Token", + "WAL": "The Wasted Lands", + "WALLET": "Ambire Wallet", + "WALV": "Alvey Chain", + "WAM": "Wam", + "WAMPL": "Wrapped Ampleforth", + "WAN": "Wanchain", + "WANA": "Wanaka Farm", + "WANATHA": "Wrapped ANATHA", + "WAND": "WandX", + "WAR": "WeStarter", + "WARP": "WarpCoin", + "WARS": "MetaWars", + "WAS": "Wasder", + "WASABI": "WasabiX", + "WASH": "WashingtonCoin", + "WAVES": "Waves", + "WAXE": "WAXE", + "WAXL": "Wrapped Axelar", + "WAXP": "Worldwide Asset eXchange", + "WAY": "WayCoin", + "WBB": "Wild Beast Coin", + "WBBC": "Wibcoin", + "WBET": "Wavesbet", + "WBIND": "Wrapped BIND", + "WBNB": "Wrapped BNB", + "WBT": "WhiteBIT Token", + "WBTC": "Wrapped Bitcoin", + "WBX": "WiBX", + "WCC": "Wincash Coin", + "WCCX": "Wrapped Conceal", + "WCELO": "Wrapped Celo", + "WCFG": "Wrapped Centrifuge", + "WCG": "World Crypto Gold", + "WCOIN": "WCoin", + "WCS": "Weecoins", + "WCSOV": "Wrapped CrownSterling", + "WCT": "Waves Community Token", + "WCUSD": "Wrapped Celo Dollar", + "WDC": "WorldCoin", + "WDR": "Wider Coin", + "WDX": "WeiDex", + "WE": "WeBuy", + "WEALTH": "WealthCoin", + "WEAR": "MetaWear", + "WEB": "Webcoin", + "WEB3": "WEB3 Inu", + "WEBC": "Webchain", + "WEC": "Whole Earth Coin", + "WEGEN": "WeGen Platform", + "WELD": "Weld", + "WELL": "Moonwell", + "WELLTOKEN": "Well", + "WELT": "Fabwelt", + "WELUPS": "Welups Blockchain", + "WEMIX": "WEMIX", + "WENLAMBO": "Wenlambo", + "WEST": "Waves Enterprise", + "WET": "WeShow Token", + "WETH": "WETH", + "WEVE": "veDAO", + "WEX": "WaultSwap", + "WFIL": "Wrapped Filecoin", + "WFLOW": "Wrapped Flow", + "WFX": "WebFlix", + "WGC": "Green Climate World", + "WGL": "Wiggly Finance", + "WGO": "WavesGO", + "WGP": "W Green Pay", + "WGR": "Wagerr", + "WGRT": "WaykiChain Governance Coin", + "WHALE": "WHALE", + "WHEAT": "Wheat Token", + "WHEEL": "Wheelers", + "WHEN": "WhenHub", + "WHIRL": "Whirl Finance", + "WHITE": "Whiteheart", + "WHL": "WhaleCoin", + "WHO": "Truwho", + "WIB": "Wibson", + "WIC": "Wi Coin", + "WICC": "WaykiChain", + "WIFEDOGE": "Wifedoge", + "WIFI": "Wifi Coin", + "WIKEN": "Project WITH", + "WIKI": "Wiki Token", + "WILC": "Wrapped ILCOIN", + "WILD": "Wilder World", + "WILDC": "Wild Crypto", + "WIN": "WINk", + "WINE": "WineCoin", + "WING": "Wing Finance", + "WINGS": "Wings DAO", + "WINK": "Wink", + "WINR": "JustBet", + "WINRY": "Winry Inu", + "WINT": "WinToken", + "WIRTUAL": "Wirtual", + "WIS": "Experty Wisdom Token", + "WISC": "WisdomCoin", + "WISE": "Wise Token", + "WISH": "MyWish", + "WIT": "Witnet", + "WITCH": "Witch", + "WITCOIN": "Witcoin", + "WIX": "Wixlar", + "WIZ": "WIZ Protocol", + "WKD": "Wakanda Inu", + "WLD": "Worldcoin", + "WLF": "Wolfs Group", + "WLITI": "wLITI", + "WLK": "Wolk", + "WLKN": "Walken", + "WLO": "WOLLO", + "WLUNA": "Wrapped LUNA Token", + "WLXT": "Wallex Token", + "WMATIC": "Wrapped Matic", + "WMB": "WatermelonBlock", + "WMC": "WMCoin", + "WMEMO": "Wonderful Memories", + "WMF": "Whale Maker Fund", + "WMINIMA": "Wrapped Minima", + "WMT": "World Mobile Token", + "WNCG": "Wrapped NCG", + "WND": "WonderHero", + "WNDR": "Wonderman Nation", + "WNET": "Wavesnode.net", + "WNK": "The Winkyverse", + "WNRZ": "WinPlay", + "WNXM": "Wrapped NXM", + "WNYC": "Wrapped NewYorkCoin", + "WNZ": "Winerz", + "WOA": "Wrapped Origin Axie", + "WOD": "World of Defish", + "WOID": "WORLD ID", + "WOJ": "Wojak Finance", + "WOLF": "Insanity Coin", + "WOLFILAND": "Wolfiland", + "WOLFY": "WOLFY", + "WOLVERINU": "WOLVERINU", + "WOM": "WOM", + "WOMB": "Wombat Exchange", + "WOMBAT": "Wombat", + "WOMEN": "WomenCoin", + "WOMI": "Wrapped ECOMI", + "WON": "WeBlock", + "WONDER": "Wonderland", + "WOO": "WOO Network", + "WOOF": "Shibance Token", + "WOOFY": "Woofy", + "WOOL": "Wolf Game Wool", + "WOONK": "Woonkly", + "WOOO": "wooonen", + "WOOP": "Woonkly Power", + "WOP": "WorldPay", + "WORLD": "World Token", + "WORM": "HealthyWorm", + "WORX": "Worx", + "WOW": "WOWswap", + "WOWS": "Wolves of Wall Street", + "WOZX": "Efforce", + "WPC": "WePiggy Coin", + "WPE": "OPES (Wrapped PE)", + "WPLS": "Wrapped Pulse", + "WPP": "Green Energy Token", + "WPR": "WePower", + "WQT": "Work Quest", + "WRC": "Worldcore", + "WRK": "BlockWRK", + "WRLD": "NFT Worlds", + "WRT": "WRTcoin", + "WRX": "WazirX", + "WRZ": "Weriz", + "WSB": "WallStreetBets DApp", + "WSBABY": "Wall Street Baby", + "WSCRT": "Secret ERC20", + "WSDOGE": "Doge of Woof Street", + "WSG": "Wall Street Games", + "WSI": "WeSendit", + "WSIENNA": "Sienna ERC20", + "WSTETH": "Lido wstETH", + "WSTR": "Wrapped Star", + "WSX": "WeAreSatoshi", + "WT": "WeToken", + "WTC": "Waltonchain", + "WTF": "Waterfall Governance", + "WTFT": "WTF Token", + "WTK": "WadzPay Token", + "WTL": "Welltrado", + "WTN": "Wateenswap", + "WTON": "Wrapped TON Crystal", + "WTT": "Giga Watt", + "WUST": "Wrapped UST Token", + "WWB": "Wowbit", + "WWDOGE": "Wrapped WDOGE", + "WWY": "WeWay", + "WXDAI": "Wrapped XDAI", + "WXT": "WXT", + "WXTZ": "Wrapped Tezos", + "WYS": "Wysker", + "WZEC": "Wrapped Zcash", + "WZENIQ": "Wrapped Zeniq (ETH)", + "WZRD": "Wizardia", + "X": "AI-X", + "X2": "X2Coin", + "X2Y2": "X2Y2", + "X42": "X42 Protocol", + "X7DAO": "X7DAO", + "X7R": "X7R", + "X8X": "X8Currency", + "XACT": "XactToken", + "XAEAXII": "XAEA-Xii Token", + "XAI": "SideShift Token", + "XAMP": "Antiample", + "XANK": "Xank", + "XAP": "Apollon", + "XAS": "Asch", + "XAT": "ShareAt", + "XAU": "XauCoin", + "XAUR": "Xaurum", + "XAUT": "Tether Gold", + "XAVA": "Avalaunch", + "XAYA": "XAYA", + "XBASE": "ETERBASE", + "XBB": "BrickBlock", + "XBC": "BitcoinPlus", + "XBE": "XBE Token", + "XBG": "BitGrin", + "XBI": "Bitcoin Incognito", + "XBL": "Billionaire Token", + "XBN": "Elastic BNB", + "XBOND": "Bitacium", + "XBOT": "SocialXbotCoin", + "XBP": "Black Pearl Coin", + "XBS": "Bitstake", + "XBT": "Xbit", + "XBTS": "Beats", + "XBX": "BiteX", + "XBY": "XTRABYTES", + "XC": "X11 Coin", + "XCAD": "XCAD Network", + "XCASH": "X-CASH", + "XCE": "Cerium", + "XCEL": "XcelTrip", + "XCF": "Cenfura Token", + "XCG": "Xchange", + "XCH": "Chia", + "XCHF": "CryptoFranc", + "XCI": "Cannabis Industry Coin", + "XCLR": "ClearCoin", + "XCM": "CoinMetro", + "XCN": "Onyxcoin", + "XCO": "XCoin", + "XCONSOL": "X-Consoles", + "XCP": "CounterParty", + "XCPO": "Copico", + "XCR": "Crypti", + "XCRE": "Creatio", + "XCT": "C-Bits", + "XCUR": "Curate", + "XCV": "XCarnival", + "XCXT": "CoinonatX", + "XD": "Data Transaction Token", + "XDAG": "Dagger", + "XDAI": "XDAI", + "XDATA": "Streamr XDATA", + "XDB": "DragonSphere", + "XDC": "Xinfin Network", + "XDCE": "XinFin Coin", + "XDEF2": "Xdef Finance", + "XDEFI": "XDEFI", + "XDEN": "Xiden", + "XDGB": "DigitalBits", + "XDN": "DigitalNote", + "XDNA": "XDNA", + "XDOGE": "Xdoge", + "XDOT": "DotBased", + "XDP": "DogeParty", + "XDQ": "Dirac Coin", + "XEC": "eCash", + "XED": "Exeedme", + "XEL": "Xel", + "XELS": "XELS Coin", + "XEM": "NEM", + "XEN": "XEN Crypto", + "XEND": "Xend Finance", + "XENIX": "XenixCoin", + "XENO": "Xenoverse", + "XEP": "Electra Protocol", + "XES": "Proxeus", + "XET": "Xfinite Entertainment Token", + "XETA": "Xana", + "XETH": "Xplosive Ethereum", + "XFC": "Football Coin", + "XFI": "Xfinance", + "XFIT": "Xfit", + "XFT": "Fantasy Cash", + "XFTC": "Offshift", + "XFUND": "xFund", + "XFYI": "XCredit", + "XG": "XG Sports", + "XGB": "GoldenBird", + "XGLI": "Glitter Finance", + "XGOX": "Go!", + "XGR": "GoldReserve", + "XGT": "Xion Finance", + "XHI": "HiCoin", + "XHT": "HollaEx", + "XHV": "Haven Protocol", + "XI": "Xi", + "XIASI": "Xiasi Inu", + "XID": "Sphre AIR", + "XIDO": "Xido Finance", + "XIL": "Xillion", + "XIN": "Mixin", + "XIO": "Blockzero Labs", + "XIOS": "Xios", + "XIOT": "Xiotri", + "XIV": "Project Inverse", + "XJO": "JouleCoin", + "XKI": "Ki", + "XLA": "Scala", + "XLAB": "Xceltoken Plus", + "XLB": "LibertyCoin", + "XLC": "LeviarCoin", + "XLD": "Xcel Defi", + "XLM": "Stellar", + "XLQ": "Alqo", + "XLR": "Solaris", + "XLT": "Nexalt", + "XMARK": "xMARK", + "XMC": "Monero Classic", + "XMCC": "Monoeci", + "XMG": "Coin Magi", + "XMN": "Motion", + "XMO": "Monero Original", + "XMON": "XMON", + "XMP": "Mapt.Coin", + "XMR": "Monero", + "XMRG": "Monero Gold", + "XMS": "Megastake", + "XMT": "MetalSwap", + "XMV": "MoneroV", + "XMX": "XMax", + "XMY": "MyriadCoin", + "XNA": "DeOxyRibose", + "XNB": "Xeonbit", + "XNC": "Xenios", + "XNFT": "xNFT Protocol", + "XNG": "Enigma", + "XNK": "Ink Protocol", + "XNL": "Chronicle", + "XNN": "Xenon", + "XNO": "Xeno Token", + "XNS": "Insolar", + "XNT": "Exenium", + "XNX": "XanaxCoin", + "XODEX": "Xodex", + "XOR": "Sora", + "XOT": "Okuru", + "XOV": "XOVBank", + "XP": "Experience Points", + "XPAT": "Bitnation Pangea", + "XPAY": "Wallet Pay", + "XPB": "Pebble Coin", + "XPC": "eXPerience Chain", + "XPD": "PetroDollar", + "XPH": "PharmaCoin", + "XPL": "Exclusive Platform", + "XPLA": "XPLA", + "XPM": "PrimeCoin", + "XPN": "PANTHEON X", + "XPNET": "XP Network", + "XPO": "Opair", + "XPOKE": "PokeChain", + "XPR": "Proton", + "XPRESS": "CryptoXpress", + "XPRO": "ProCoin", + "XPROT": "X Protocol", + "XPRT": "Persistence", + "XPS": "PoisonIvyCoin", + "XPST": "PokerSports", + "XPT": "Cryptobuyer", + "XPTX": "PlatinumBAR", + "XPX": "ProximaX", + "XPY": "PayCoin", + "XQC": "Quras Token", + "XQN": "Quotient", + "XQR": "Qredit", + "XRA": "Xriba", + "XRC": "xRhodium", + "XRD": "Radix", + "XRE": "RevolverCoin", + "XRL": "Rialto.AI", + "XRP": "XRP", + "XRT": "Robonomics Network", + "XRUN": "XRun", + "XRUNE": "Thorstarter", + "XSC": "Hyperspace", + "XSD": "SounDAC", + "XSEED": "BitSeeds", + "XSGD": "XSGD", + "XSH": "SHIELD", + "XSI": "Stability Shares", + "XSN": "StakeNet", + "XSP": "XSwap", + "XSPC": "SpectreSecurityCoin", + "XSPEC": "Spectre", + "XSPECTAR": "xSPECTAR", + "XSPT": "PoolStamp", + "XSR": "Xensor", + "XST": "StealthCoin", + "XSTAR": "StarCurve", + "XSTC": "Safe Trade Coin", + "XSUSHI": "xSUSHI", + "XT": "XT.com Token", + "XT3": "Xt3ch", + "XTAG": "xHashtag", + "XTAL": "XTAL", + "XTC": "TileCoin", + "XTK": "xToken", + "XTM": "TORUM", + "XTO": "Tao", + "XTP": "Tap", + "XTRA": "ExtraCredit", + "XTREME": "ExtremeCoin", + "XTUSD": "XT Stablecoin XTUSD", + "XTX": "Xtock", + "XTZ": "Tezos", + "XUC": "Exchange Union", + "XUN": "UltraNote", + "XUP": "UPGRADE", + "XVC": "Vcash", + "XVE": "The Vegan Initiative", + "XVG": "Verge", + "XVP": "VirtacoinPlus", + "XVS": "Venus", + "XWC": "WhiteCoin", + "XWG": "X World Games", + "XWIN": "xWIN Finance", + "XWP": "Swap", + "XWT": "World Trade Funds", + "XXA": "Ixinium", + "XXX": "XXXCoin", + "XY": "XY Finance", + "XYM": "Symbol", + "XYO": "XY Oracle", + "XYZ": "Universe.XYZ", + "YAC": "YAcCoin", + "YAE": "Cryptonovae", + "YAG": "Yaki Gold", + "YAM": "YAM", + "YAMV1": "YAM v1", + "YAMV2": "YAM v2", + "YAP": "Yap Stone", + "YARL": "Yarloo", + "YAXIS": "yAxis", + "YAY": "YAY Games", + "YAYCOIN": "YAYcoin", + "YBC": "YbCoin", + "YCC": "Yuan Chain Coin", + "YCE": "MYCE", + "YCO": "Y Coin", + "YCT": "Youclout", + "YDF": "Yieldification", + "YDR": "YDragon", + "YEC": "Ycash", + "YEE": "Yeeco", + "YEED": "Yggdrash", + "YEFI": "YeFi", + "YEL": "Yel.Finance", + "YEON": "Yeon", + "YES": "Yes World", + "YESCOIN": "YesCoin", + "YETI": "Yeti Finance", + "YETU": "Yetucoin", + "YFARM": "YFARM Token", + "YFBETA": "yfBeta", + "YFBT": "Yearn Finance Bit", + "YFDAI": "YfDAI.finance", + "YFF": "YFF.Finance", + "YFFC": "yffc.finance", + "YFFI": "yffi finance", + "YFFII": "YFFII Finance", + "YFI": "yearn.finance", + "YFIE": "YFIEXCHANGE.FINANCE", + "YFII": "DFI.money", + "YFIII": "Dify.Finance", + "YFIVE": "YFIVE FINANCE", + "YFL": "YF Link", + "YFO": "YFIONE", + "YFPRO": "YFPRO Finance", + "YFTE": "YFTether", + "YFV": "YFValue", + "YFX": "Your Futures Exchange", + "YGG": "Yield Guild Games", + "YIELD": "Yield Protocol", + "YIN": "YIN Finance", + "YINBI": "Yinbi", + "YLD": "YIELD App", + "YLDY": "Yieldly", + "YMC": "YamahaCoin", + "YO": "Yobit Token", + "YOC": "YoCoin", + "YOCO": "YocoinYOCO", + "YOOSHI": "YooShi", + "YOP": "Yield Optimization Platform & Protocol", + "YOU": "YOU Chain", + "YOUC": "yOUcash", + "YOVI": "YobitVirtualCoin", + "YOYOW": "Yoyow", + "YPIE": "PieDAO Yearn Ecosystem Pie", + "YSAFE": "yieldfarming.insure", + "YSEC": "Yearn Secure", + "YSR": "Ystar", + "YTA": "YottaChain", + "YTN": "YENTEN", + "YUANG": "Yuang Coin", + "YUCJ": "Yu Coin", + "YUCT": "Yucreat", + "YUDI": "Yudi", + "YUM": "Yumerium", + "YUMMY": "Yummy", + "YUP": "Crowdholding", + "YVBOOST": "Yearn Compounding veCRV yVault", + "YVS": "YVS.Finance", + "YYE": "YYE Energy", + "YYFI": "YYFI.Protocol", + "ZABAKU": "Zabaku Inu", + "ZAI": "Zero Collateral Dai", + "ZAIF": "Zaif Token", + "ZAM": "Zamio", + "ZAMZAM": "ZAMZAM", + "ZANO": "Zano", + "ZAP": "Zap", + "ZARX": "eToro South African Rand", + "ZASH": "ZIMBOCASH", + "ZAT": "ZatGo", + "ZB": "ZB", + "ZBC": "Zebec Protocol", + "ZCC": "ZCC Coin", + "ZCC1": "ZeroCarbon", + "ZCG": "ZCashGOLD", + "ZCHN": "Zichain", + "ZCL": "ZClassic", + "ZCN": "Züs", + "ZCO": "Zebi Coin", + "ZCON": "Zcon Protocol", + "ZCOR": "Zrocor", + "ZCR": "ZCore", + "ZCX": "Unizen", + "ZDEX": "Zeedex", + "ZDR": "Zloadr", + "ZEC": "ZCash", + "ZECD": "ZCashDarkCoin", + "ZED": "ZedCoins", + "ZEDTOKEN": "Zed Token", + "ZEDXION": "Zedxion", + "ZEE": "ZeroSwap", + "ZEFU": "Zenfuse", + "ZEIT": "ZeitCoin", + "ZEL": "Zelcash", + "ZEN": "Horizen", + "ZENI": "Zennies", + "ZENIQ": "Zeniq Coin", + "ZENITH": "Zenith Chain", + "ZEON": "Zeon Network", + "ZEP": "Zeppelin Dao", + "ZEPH": "Zeph", + "ZER": "Zero", + "ZERO": "Zero Tech", + "ZEROB": "ZeroBank", + "ZEROEX": "0.exchange", + "ZEST": "ZestCoin", + "ZET": "ZetaCoin", + "ZET2": "Zeta2Coin", + "ZEUM": "Colizeum", + "ZFL": "Zuflo Coin", + "ZFM": "ZFMCOIN", + "ZGD": "ZambesiGold", + "ZIG": "Zignaly", + "ZIK": "Ziktalk", + "ZIL": "Zilliqa", + "ZILBERCOIN": "Zilbercoin", + "ZINC": "ZINC", + "ZINU": "Zombie Inu", + "ZIP": "Zipper", + "ZIPT": "Zippie", + "ZIRVE": "Zirve Coin", + "ZIX": "ZIX Token", + "ZJLT": "ZJLT Distributed Factoring Network", + "ZKBOB": "BOB", + "ZKP": "Panther Protocol", + "ZKS": "ZKSpace", + "ZKT": "zkTube", + "ZLA": "Zilla", + "ZLDA": "Zelda Inu", + "ZLK": "Zenlink Network", + "ZLOT": "zLOT Finance", + "ZLQ": "ZLiteQubit", + "ZLW": "Zelwin", + "ZMBE": "RugZombie", + "ZMN": "ZMINE", + "ZMT": "Zipmex Token", + "ZND": "Zenad", + "ZNE": "ZoneCoin", + "ZNN": "Zenon", + "ZNT": "Zenith Finance", + "ZNY": "BitZeny", + "ZNZ": "ZENZO", + "ZOC": "01coin", + "ZODI": "Zodium", + "ZOE": "Zoe Cash", + "ZOI": "Zoin", + "ZONE": "Zone", + "ZONO": "Zono Swap", + "ZONX": "METAZONX", + "ZOOM": "ZoomCoin", + "ZOON": "CryptoZoon", + "ZOOT": "Zoo Token", + "ZORA": "Zoracles", + "ZORT": "Zort", + "ZP": "Zen Protocol", + "ZPAE": "ZelaaPayAE", + "ZPAY": "ZoidPay", + "ZPR": "ZPER", + "ZPT": "Zeepin", + "ZPTC": "Zeptacoin", + "ZRC": "ZrCoin", + "ZRX": "0x", + "ZSC": "Zeusshield", + "ZSE": "ZSEcoin", + "ZT": "ZBG Token", + "ZTC": "ZeTo", + "ZUC": "Zeux", + "ZUKI": "Zuki Moba", + "ZUM": "ZumCoin", + "ZUNA": "ZUNA", + "ZUR": "Zurcoin", + "ZURR": "ZURRENCY", + "ZUSD": "ZUSD", + "ZUT": "Zero Utility Token", + "ZVC": "ZVCHAIN", + "ZWAP": "ZilSwap", + "ZXC": "Oxcert", + "ZXT": "Zcrypt", + "ZYD": "ZayedCoin", + "ZYN": "Zynecoin", + "ZYR": "Zyrri", + "ZYRO": "Zyro", + "ZYTARA": "Zytara dollar", + "ZZ": "ZigZag", + "ZZC": "ZudgeZury", + "ZZZ": "zzz.finance", + "eFIC": "FIC Network", + "ePRX": "eProxy", + "gOHM": "Governance OHM", + "redBUX": "redBUX", + "sOHM": "Staked Olympus", + "wsOHM": "Wrapped Staked Olympus" +} diff --git a/GhostfolioSidekick/FileImporter/Coinbase/CoinbaseParser.cs b/GhostfolioSidekick/FileImporter/Coinbase/CoinbaseParser.cs new file mode 100644 index 00000000..f23cd5d8 --- /dev/null +++ b/GhostfolioSidekick/FileImporter/Coinbase/CoinbaseParser.cs @@ -0,0 +1,186 @@ +using CsvHelper.Configuration; +using GhostfolioSidekick.Crypto; +using GhostfolioSidekick.Ghostfolio.API; +using System.Globalization; + +namespace GhostfolioSidekick.FileImporter.Coinbase +{ + public class CoinbaseParser : RecordBaseImporter + { + private IGhostfolioAPI api; + private NumberStyles numberStyle = NumberStyles.AllowExponent | NumberStyles.AllowDecimalPoint; + + public CoinbaseParser(IGhostfolioAPI api) : base(api) + { + this.api = api; + } + + protected override async Task> ConvertOrders(CoinbaseRecord record, Account account, IEnumerable allRecords) + { + var orderTypeCrypto = GetOrderTypeCrypto(record); + var orderType = Convert(orderTypeCrypto); + if (orderType == null) + { + return Array.Empty(); + } + + var assetName = record.Asset; + var asset = await api.FindSymbolByISIN(CryptoTranslate.Instance.TranslateToken(assetName), x => + ParseResult(CryptoTranslate.Instance.TranslateToken(assetName), assetName, x)); + + var refCode = $"{orderType}_{assetName}_{record.Timestamp.ToUniversalTime().Ticks}"; + + var orders = new List(); + + var order = new Order + { + AccountId = account.Id, + Asset = asset, + Currency = record.Currency, + Date = record.Timestamp.ToUniversalTime(), + Comment = $"Transaction Reference: [{refCode}]", + Fee = record.Fee ?? 0, + FeeCurrency = record.Currency, + Quantity = record.Quantity, + Type = orderType.Value, + UnitPrice = await GetCorrectUnitPrice(record.UnitPrice, asset, record.Timestamp.ToUniversalTime()), + ReferenceCode = refCode, + }; + orders.Add(order); + + // Convert is a SELL / BUY. SELL in the default operation so we need another BUY + if (orderTypeCrypto.GetValueOrDefault() == CryptoOrderType.Convert) + { + var buyRecord = ParseComment4Convert(record); + var assetBuy = await api.FindSymbolByISIN(CryptoTranslate.Instance.TranslateToken(buyRecord.Asset), x => + ParseResult(CryptoTranslate.Instance.TranslateToken(buyRecord.Asset), buyRecord.Asset, x)); + + var refCodeBuy = $"{OrderType.BUY}_{buyRecord.Asset}_{record.Timestamp.ToUniversalTime().Ticks}"; + var orderBuy = new Order + { + AccountId = account.Id, + Asset = assetBuy, + Currency = record.Currency, + Date = record.Timestamp.ToUniversalTime(), + Comment = $"Transaction Reference: [{refCodeBuy}]", + Fee = 0, + FeeCurrency = record.Currency, + Quantity = buyRecord.Quantity, + Type = OrderType.BUY, + UnitPrice = await GetCorrectUnitPrice(buyRecord.UnitPrice, assetBuy, record.Timestamp.ToUniversalTime()), + ReferenceCode = refCodeBuy, + }; + orders.Add(orderBuy); + } + + return orders; + } + + private async Task GetCorrectUnitPrice(decimal? originalUnitPrice, Asset? symbol, DateTime date) + { + if (originalUnitPrice > 0) + { + return originalUnitPrice.Value; + } + + // GetPrice from Ghostfolio + var price = await api.GetMarketPrice(symbol, date); + return price; + } + + private Asset? ParseResult(string assetName, string symbol, IEnumerable assets) + { + var cryptoOnly = assets.Where(x => x.AssetSubClass == "CRYPTOCURRENCY"); + var asset = cryptoOnly.FirstOrDefault(x => assetName == x.Name); + if (asset != null) + { + return asset; + } + + asset = cryptoOnly.FirstOrDefault(x => symbol == x.Symbol); + if (asset != null) + { + return asset; + } + + asset = cryptoOnly + .OrderBy(x => x.Symbol.Length) + .FirstOrDefault(); + + return asset; + } + + private (decimal Quantity, decimal UnitPrice, string Asset) ParseComment4Convert(CoinbaseRecord record) + { + // Converted 0.00052203 ETH to 0.087842 ATOM + var comment = record.Notes.Split(" "); + var quantity = decimal.Parse(comment[4], numberStyle, CultureInfo.InvariantCulture); + + var unitPrice = (record.UnitPrice * record.Quantity) / quantity; + return (quantity, unitPrice.Value, comment[5]); + } + + private OrderType? Convert(CryptoOrderType? value) + { + if (value is null) + { + return null; + } + + return value switch + { + CryptoOrderType.Buy => (OrderType?)OrderType.BUY, + CryptoOrderType.Sell => (OrderType?)OrderType.SELL, + CryptoOrderType.Send => (OrderType?)OrderType.SELL, + CryptoOrderType.Receive => (OrderType?)OrderType.BUY, + CryptoOrderType.Convert => (OrderType?)OrderType.SELL, + CryptoOrderType.LearningReward or CryptoOrderType.StakingReward => null, + _ => throw new NotSupportedException(), + }; + } + + protected override CsvConfiguration GetConfig() + { + return new CsvConfiguration(CultureInfo.InvariantCulture) + { + HasHeaderRecord = true, + CacheFields = true, + Delimiter = ",", + }; + } + + protected override StreamReader GetStreamReader(string file) + { + var sr = base.GetStreamReader(file); + + for (var i = 0; i < 7; i++) + { + sr.ReadLine(); + } + + return sr; + } + + private CryptoOrderType? GetOrderTypeCrypto(CoinbaseRecord record) + { + switch (record.Order) + { + case "Buy": + return CryptoOrderType.Buy; + case "Receive": + return CryptoOrderType.Receive; + case "Send": + return CryptoOrderType.Send; + case "Sell": + return CryptoOrderType.Sell; + case "Convert": + return CryptoOrderType.Convert; + case "Rewards Income": + return CryptoOrderType.StakingReward; + case "Learning Reward": + return CryptoOrderType.LearningReward; + default: throw new NotSupportedException($"{record.Order}"); + } + } + } +} diff --git a/GhostfolioSidekick/FileImporter/Coinbase/CoinbaseRecord.cs b/GhostfolioSidekick/FileImporter/Coinbase/CoinbaseRecord.cs new file mode 100644 index 00000000..127f4136 --- /dev/null +++ b/GhostfolioSidekick/FileImporter/Coinbase/CoinbaseRecord.cs @@ -0,0 +1,39 @@ +using CsvHelper.Configuration.Attributes; +using System.Globalization; + +namespace GhostfolioSidekick.FileImporter.Coinbase +{ + [Delimiter(",")] + public class CoinbaseRecord + { + // Timestamp,Transaction Type,Asset,Quantity Transacted,Spot Price Currency,Spot Price at Transaction,Subtotal,Total (inclusive of fees and/or spread),Fees and/or Spread,Notes + + [Format("yyyy-MM-ddTHH:mm:ssZ")] + public DateTime Timestamp { get; set; } + + [Name("Transaction Type")] + public string Order { get; set; } + + public string Asset { get; set; } + + [Name("Quantity Transacted")] + [NumberStyles(NumberStyles.Number | NumberStyles.AllowExponent)] + public decimal Quantity { get; set; } + + [Name("Spot Price Currency")] + public string Currency { get; set; } + + [Name("Spot Price at Transaction")] + public decimal? UnitPrice { get; set; } + + public decimal? Subtotal { get; set; } + + [Name("Total (inclusive of fees and/or spread)")] + public decimal? Total { get; set; } + + [Name("Fees and/or Spread")] + public decimal? Fee{ get; set; } + + public string Notes { get; set; } + } +} diff --git a/GhostfolioSidekick/FileImporter/DeGiro/DeGiroParser.cs b/GhostfolioSidekick/FileImporter/DeGiro/DeGiroParser.cs index f38407b0..46625abb 100644 --- a/GhostfolioSidekick/FileImporter/DeGiro/DeGiroParser.cs +++ b/GhostfolioSidekick/FileImporter/DeGiro/DeGiroParser.cs @@ -11,12 +11,12 @@ public DeGiroParser(IGhostfolioAPI api) : base(api) { } - protected override async Task ConvertOrder(DeGiroRecord record, Account account, IEnumerable allRecords) + protected override async Task> ConvertOrders(DeGiroRecord record, Account account, IEnumerable allRecords) { var orderType = GetOrderType(record); if (orderType == null) { - return null; + return Array.Empty(); } var asset = await api.FindSymbolByISIN(record.ISIN); @@ -37,7 +37,7 @@ public DeGiroParser(IGhostfolioAPI api) : base(api) ReferenceCode = record.OrderId, }; - return order; + return new[] { order }; } protected override CsvConfiguration GetConfig() diff --git a/GhostfolioSidekick/FileImporter/RecordBaseImporter.cs b/GhostfolioSidekick/FileImporter/RecordBaseImporter.cs index 71649f70..1bb19f69 100644 --- a/GhostfolioSidekick/FileImporter/RecordBaseImporter.cs +++ b/GhostfolioSidekick/FileImporter/RecordBaseImporter.cs @@ -20,9 +20,8 @@ public virtual async Task CanConvertOrders(IEnumerable filenames) { CsvConfiguration csvConfig = GetConfig(); - using var streamReader = File.OpenText(file); + using var streamReader = GetStreamReader(file); using var csvReader = new CsvReader(streamReader, csvConfig); - csvReader.Read(); csvReader.ReadHeader(); @@ -41,43 +40,42 @@ public virtual async Task CanConvertOrders(IEnumerable filenames) public async Task> ConvertToOrders(string accountName, IEnumerable filenames) { - var account = await api.GetAccountByName(accountName); - if (account == null) - { - throw new NotSupportedException(); - } - + var account = await api.GetAccountByName(accountName) ?? throw new NotSupportedException($"Account not found {accountName}"); CsvConfiguration csvConfig = GetConfig(); var list = new ConcurrentDictionary(); await Parallel.ForEachAsync(filenames, async (filename, c1) => { - using (var streamReader = File.OpenText(filename)) + using var streamReader = GetStreamReader(filename); + using var csvReader = new CsvReader(streamReader, csvConfig); + csvReader.Read(); + csvReader.ReadHeader(); + var records = csvReader.GetRecords().ToList(); + + await Parallel.ForEachAsync(records, async (record, c) => { - using (var csvReader = new CsvReader(streamReader, csvConfig)) - { - csvReader.Read(); - csvReader.ReadHeader(); - var records = csvReader.GetRecords().ToList(); + var orders = await ConvertOrders(record, account, records); - await Parallel.ForEachAsync(records, async (record, c) => + if (orders != null) + { + foreach (var order in orders) { - var order = await ConvertOrder(record, account, records); - - if (order != null) - { - list.TryAdd(order.ReferenceCode, order); - } - }); + list.TryAdd(order.ReferenceCode, order); + } } - } + }); }); return list.Values; } - protected abstract Task ConvertOrder(T record, Account account, IEnumerable allRecords); + protected abstract Task> ConvertOrders(T record, Account account, IEnumerable allRecords); protected abstract CsvConfiguration GetConfig(); + + protected virtual StreamReader GetStreamReader(string file) + { + return File.OpenText(file); + } } } diff --git a/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankRKKRecord.cs b/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankRKKRecord.cs index 36763210..853b1533 100644 --- a/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankRKKRecord.cs +++ b/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankRKKRecord.cs @@ -1,13 +1,8 @@ using CsvHelper.Configuration.Attributes; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace GhostfolioSidekick.FileImporter.ScalableCaptial { - public class BaaderBankRKKRecord + public class BaaderBankRKKRecord { [Name("XXX-UMART")] public string OrderType { get; set; } diff --git a/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankWUMRecord.cs b/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankWUMRecord.cs index fdc8fb48..b0d536bb 100644 --- a/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankWUMRecord.cs +++ b/GhostfolioSidekick/FileImporter/ScalableCaptial/BaaderBankWUMRecord.cs @@ -1,13 +1,8 @@ using CsvHelper.Configuration.Attributes; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace GhostfolioSidekick.FileImporter.ScalableCaptial { - public class BaaderBankWUMRecord + public class BaaderBankWUMRecord { [Name("XXX-BUDAT")] [Format("yyyyMMdd")] diff --git a/GhostfolioSidekick/FileImporter/ScalableCaptial/ScalableCapitalParser.cs b/GhostfolioSidekick/FileImporter/ScalableCaptial/ScalableCapitalParser.cs index 3011a4a1..3f1f87b8 100644 --- a/GhostfolioSidekick/FileImporter/ScalableCaptial/ScalableCapitalParser.cs +++ b/GhostfolioSidekick/FileImporter/ScalableCaptial/ScalableCapitalParser.cs @@ -2,7 +2,6 @@ using CsvHelper; using GhostfolioSidekick.Ghostfolio.API; using System.Globalization; -using System.Collections.Generic; using System.Collections.Concurrent; namespace GhostfolioSidekick.FileImporter.ScalableCaptial diff --git a/GhostfolioSidekick/FileImporter/Trading212/Trading212Parser.cs b/GhostfolioSidekick/FileImporter/Trading212/Trading212Parser.cs index 22b22c99..31d425e2 100644 --- a/GhostfolioSidekick/FileImporter/Trading212/Trading212Parser.cs +++ b/GhostfolioSidekick/FileImporter/Trading212/Trading212Parser.cs @@ -10,12 +10,12 @@ public Trading212Parser(IGhostfolioAPI api) : base(api) { } - protected override async Task ConvertOrder(Trading212Record record, Account account, IEnumerable allRecords) + protected override async Task> ConvertOrders(Trading212Record record, Account account, IEnumerable allRecords) { var orderType = GetOrderType(record); if (orderType == null) { - return null; + return Array.Empty(); } var asset = await api.FindSymbolByISIN(record.ISIN); @@ -42,7 +42,7 @@ public Trading212Parser(IGhostfolioAPI api) : base(api) ReferenceCode = record.Id, }; - return order; + return new[] { order }; } protected override CsvConfiguration GetConfig() diff --git a/GhostfolioSidekick/Ghostfolio/API/Asset.cs b/GhostfolioSidekick/Ghostfolio/API/Asset.cs index 53787efc..253c8c1e 100644 --- a/GhostfolioSidekick/Ghostfolio/API/Asset.cs +++ b/GhostfolioSidekick/Ghostfolio/API/Asset.cs @@ -6,6 +6,12 @@ public class Asset public string Symbol { get; set; } + public string Name { get; set; } + public string DataSource { get; set; } + + public string AssetSubClass { get; set; } + + public string AssetClass { get; set; } } } \ No newline at end of file diff --git a/GhostfolioSidekick/Ghostfolio/API/AssetList.cs b/GhostfolioSidekick/Ghostfolio/API/AssetList.cs new file mode 100644 index 00000000..4ea8a18c --- /dev/null +++ b/GhostfolioSidekick/Ghostfolio/API/AssetList.cs @@ -0,0 +1,7 @@ +namespace GhostfolioSidekick.Ghostfolio.API +{ + public class AssetList + { + public Asset[] Items { get; set; } + } +} \ No newline at end of file diff --git a/GhostfolioSidekick/Ghostfolio/API/GhostfolioAPI.cs b/GhostfolioSidekick/Ghostfolio/API/GhostfolioAPI.cs index 97077e9e..8c48d52a 100644 --- a/GhostfolioSidekick/Ghostfolio/API/GhostfolioAPI.cs +++ b/GhostfolioSidekick/Ghostfolio/API/GhostfolioAPI.cs @@ -68,36 +68,26 @@ public async Task UpdateOrders(IEnumerable orders) } } - public async Task GetMarketPrice(string symbol, DateTime date) + public async Task GetMarketPrice(Asset asset, DateTime date) { - var content = await restCall.DoRestGet($"api/v1/admin/market-data/YAHOO/{symbol}", CacheDuration.Short()); + var content = await restCall.DoRestGet($"api/v1/admin/market-data/{asset.DataSource}/{asset.Symbol}", CacheDuration.Short()); var market = JsonConvert.DeserializeObject(content); - - foreach (var item in market.MarketData) - { - if (item.Date == date.Date) - { - return (decimal)item.MarketPrice; - } - } - - return 0; + return (decimal)(market.MarketData.FirstOrDefault(x => x.Date == date.Date)?.MarketPrice ?? 0); } - public async Task FindSymbolByISIN(string? identifier) + public async Task FindSymbolByISIN(string? identifier, Func, Asset> selector) { identifier = mapper.MapIdentifier(identifier); var content = await restCall.DoRestGet($"api/v1/symbol/lookup?query={identifier.Trim()}", CacheDuration.Long()); - dynamic stuff = JsonConvert.DeserializeObject(content); - var asset = new Asset + var assetList = JsonConvert.DeserializeObject(content); + + if (selector == null) { - Symbol = stuff.items[0].symbol, - Currency = stuff.items[0].currency, - DataSource = stuff.items[0].dataSource, - }; + return assetList.Items[0]; + } - return asset; + return selector(assetList.Items); } public async Task GetExchangeRate(string sourceCurrency, string targetCurrency, DateTime date) @@ -126,8 +116,13 @@ public async Task GetAccountByName(string name) return account.Accounts.SingleOrDefault(x => string.Equals(x.Name, name, StringComparison.InvariantCultureIgnoreCase)); } - private async Task WriteOrder(Order? order) + private async Task WriteOrder(Order order) { + if (order.UnitPrice == 0 && order.Quantity == 0) + { + logger.LogDebug($"Skipping empty transaction {order.Date} {order.Asset.Symbol} {order.Quantity} {order.Type}"); + } + var r = await restCall.DoRestPost($"api/v1/import", await ConvertToBody(order)); bool emptyResponse = false; if (!r.IsSuccessStatusCode || (emptyResponse = r.Content.Equals("{\"activities\":[]}"))) diff --git a/GhostfolioSidekick/Ghostfolio/API/IGhostfolioAPI.cs b/GhostfolioSidekick/Ghostfolio/API/IGhostfolioAPI.cs index 665a2bf5..142e6ed2 100644 --- a/GhostfolioSidekick/Ghostfolio/API/IGhostfolioAPI.cs +++ b/GhostfolioSidekick/Ghostfolio/API/IGhostfolioAPI.cs @@ -2,11 +2,11 @@ { public interface IGhostfolioAPI { - Task FindSymbolByISIN(string? identifier); + Task FindSymbolByISIN(string? identifier, Func, Asset> selector = null); Task GetExchangeRate(string sourceCurrency, string targetCurrency, DateTime date); - Task GetMarketPrice(string symbol, DateTime date); + Task GetMarketPrice(Asset asset, DateTime date); Task GetAccountByName(string name); diff --git a/GhostfolioSidekick/Ghostfolio/API/OrderType.cs b/GhostfolioSidekick/Ghostfolio/API/OrderType.cs index c06d069f..38adf025 100644 --- a/GhostfolioSidekick/Ghostfolio/API/OrderType.cs +++ b/GhostfolioSidekick/Ghostfolio/API/OrderType.cs @@ -1,11 +1,11 @@ namespace GhostfolioSidekick.Ghostfolio.API { - public enum OrderType - { - BUY, + public enum OrderType + { + BUY, - SELL, + SELL, - DIVIDEND - } + DIVIDEND + } } \ No newline at end of file diff --git a/GhostfolioSidekick/GhostfolioSidekick.csproj b/GhostfolioSidekick/GhostfolioSidekick.csproj index 5636f3ce..7b3aeb23 100644 --- a/GhostfolioSidekick/GhostfolioSidekick.csproj +++ b/GhostfolioSidekick/GhostfolioSidekick.csproj @@ -6,6 +6,12 @@ enable Linux + + + + + + diff --git a/GhostfolioSidekick/Program.cs b/GhostfolioSidekick/Program.cs index 7bf9b419..d24378b2 100644 --- a/GhostfolioSidekick/Program.cs +++ b/GhostfolioSidekick/Program.cs @@ -1,4 +1,5 @@ using GhostfolioSidekick.FileImporter; +using GhostfolioSidekick.FileImporter.Coinbase; using GhostfolioSidekick.FileImporter.DeGiro; using GhostfolioSidekick.FileImporter.ScalableCaptial; using GhostfolioSidekick.FileImporter.Trading212; @@ -10,11 +11,11 @@ using Microsoft.Extensions.Logging; namespace GhostfolioSidekick - { +{ internal class Program - { + { static async Task Main(string[] args) - { + { var hostBuilder = new HostBuilder() .ConfigureAppConfiguration((hostContext, configBuilder) => { @@ -42,9 +43,10 @@ static async Task Main(string[] args) services.AddScoped(); services.AddScoped(); services.AddScoped(); + services.AddScoped(); }); await hostBuilder.RunConsoleAsync(); - } } - } \ No newline at end of file + } +} \ No newline at end of file diff --git a/README.md b/README.md index f6caeda0..55f172e7 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,7 @@ IDENTIFIER,ATOM-USD,Cosmos USD | Trading 212 | Export of transaction history | X | X | X | | De Giro | Export of transaction history | X | - | - | | Scalable Capital | The CSV files of the Baader bank. Type WUM and RKK | X | X | X | +| Coinbase (Experimental) | Export of transaction history | X | X | - | ## Run in Docker The docker image is: vibenl/ghostfoliosidekick