firmware: generate coin defs with Mako

pull/25/head
matejcik 6 years ago committed by Pavol Rusnak
parent 4661db1fd4
commit d36038aa1d
No known key found for this signature in database
GPG Key ID: 91F3B339B9A02A3D

@ -1,4 +1,6 @@
coin_info.[ch]
nem_mosaics.[ch]
ethereum_networks.h
ethereum_tokens.[ch]
bl_data.h

@ -115,22 +115,14 @@ CFLAGS += -DUSE_ETHEREUM=1
CFLAGS += -DUSE_NEM=1
CFLAGS += -DUSE_MONERO=0
define GENERATE_CODE
# $(1) - Basename for script and output header file
# $(2) - Dependencies
# $(3) - Additional output files
%:: %.mako defs
@printf " MAKO $@\n"
$(Q)$(PYTHON) ../vendor/trezor-common/tools/cointool.py render $@.mako
$(1).h $(3): $(1).py $(2)
@printf " PYTHON $(1).py\n"
$(Q)$(PYTHON) $(1).py
# Serialize build for parallel Make
$(1).h: $(3)
bl_data.h: bl_data.py ../bootloader/bootloader.bin
@printf " PYTHON bl_data.py\n"
$(Q)$(PYTHON) bl_data.py
clean::
rm -f $(1).h $(3)
endef
$(eval $(call GENERATE_CODE,coin_info,defs,coin_info.c))
$(eval $(call GENERATE_CODE,nem_mosaics,defs/nem/nem_mosaics.json,nem_mosaics.c))
$(eval $(call GENERATE_CODE,bl_data,../bootloader/bootloader.bin))
rm -f bl_data.h
find -maxdepth 1 -name "*.mako" | sed 's/.mako$$//' | xargs rm -f

@ -0,0 +1,51 @@
<%
def signed_message_header(s):
return r'"\x{:02x}" {}'.format(len(s), c_str(s))
def c_bool(b):
return "true" if b else "false"
def c_int(i):
return int(i or 0)
def defined(s):
return c_bool(s is not None)
def hex(x):
return "0x{:08x}".format(c_int(x))
%>\
// This file is automatically generated from coin_info.c.mako
// DO NOT EDIT
#include "coins.h"
#include "curves.h"
#include "secp256k1.h"
const CoinInfo coins[COINS_COUNT] = {
% for c in supported_on("trezor1", bitcoin):
{
.coin_name = ${c_str(c.coin_name)},
.coin_shortcut = ${c_str(" " + c.coin_shortcut)},
.maxfee_kb = ${c_int(c.maxfee_kb)},
.signed_message_header = ${signed_message_header(c.signed_message_header)},
.has_address_type = ${defined(c.address_type)},
.has_address_type_p2sh = ${defined(c.address_type_p2sh)},
.has_segwit = ${c_bool(c.segwit)},
.has_fork_id = ${defined(c.fork_id)},
.force_bip143 = ${c_bool(c.force_bip143)},
.decred = ${c_bool(c.decred)},
.address_type = ${c.address_type},
.address_type_p2sh = ${c.address_type_p2sh},
.xpub_magic = ${hex(c.xpub_magic)},
.xprv_magic = ${hex(c.xprv_magic)},
.fork_id = ${c_int(c.fork_id)},
.version_group_id = ${hex(c.version_group_id)},
.bech32_prefix = ${c_str(c.bech32_prefix)},
.cashaddr_prefix = ${c_str(c.cashaddr_prefix)},
.coin_type = (${c_int(c.slip44)} | 0x80000000),
.curve_name = ${c.curve_name.upper()}_NAME,
.curve = &${c.curve_name}_info,
},
% endfor
};

@ -0,0 +1,14 @@
// This file is automatically generated from coin_info.h.mako
// DO NOT EDIT
#ifndef __COIN_INFO_H__
#define __COIN_INFO_H__
#include "coins.h"
<% coins_list = list(supported_on("trezor1", bitcoin)) %>\
#define COINS_COUNT (${len(coins_list)})
extern const CoinInfo coins[COINS_COUNT];
#endif

@ -1,129 +0,0 @@
#!/usr/bin/env python2
import json
import os
import collections
HEADER_TEMPLATE = """
// This file is automatically generated by coin_info.py -- DO NOT EDIT!
#ifndef __COIN_INFO_H__
#define __COIN_INFO_H__
#include "coins.h"
#define COINS_COUNT ({count})
extern const CoinInfo coins[COINS_COUNT];
#endif
""".lstrip()
CODE_TEMPLATE = """
// This file is automatically generated by coin_info.py -- DO NOT EDIT!
#include "coins.h"
#include "curves.h"
#include "secp256k1.h"
const CoinInfo coins[COINS_COUNT] = {{
{coins}
}};
""".lstrip()
def format_bool(value):
if value:
return "true"
else:
return "false"
def format_number(value):
if value is None:
value = 0
return str(value)
def format_string(value):
if value is None:
return "NULL"
else:
return json.dumps(value)
def format_hex(value):
if value is None:
value = 0
return "0x{:08x}".format(value)
def prepend_varint(string):
assert len(string) < 253
varint = "\"\\x{:02x}\"".format(len(string))
return "{} {}".format(varint, format_string(string))
def coin_to_struct(coin):
return collections.OrderedDict((
("coin_name", format_string(coin["coin_name"])),
("coin_shortcut", format_string(" " + coin["coin_shortcut"])),
("maxfee_kb", format_number(coin["maxfee_kb"])),
("signed_message_header", prepend_varint(coin["signed_message_header"])), # noqa: E501
("has_address_type", format_bool(coin["address_type"] is not None)), # noqa: E501
("has_address_type_p2sh", format_bool(coin["address_type_p2sh"] is not None)), # noqa: E501
("has_segwit", format_bool(coin["segwit"])),
("has_fork_id", format_bool(coin["fork_id"] is not None)),
("force_bip143", format_bool(coin["force_bip143"])),
("decred", format_bool(coin["decred"])),
("address_type", format_number(coin["address_type"])),
("address_type_p2sh", format_number(coin["address_type_p2sh"])),
("xpub_magic", format_hex(coin["xpub_magic"])),
("xprv_magic", format_hex(coin["xprv_magic"])),
("fork_id", format_number(coin["fork_id"])),
("version_group_id", format_hex(coin["version_group_id"])),
("bech32_prefix", format_string(coin["bech32_prefix"])),
("cashaddr_prefix", format_string(coin["cashaddr_prefix"])),
("coin_type", "({} | 0x80000000)".format(format_number(coin["slip44"]))), # noqa: E501
("curve_name", "{}_NAME".format(coin["curve_name"].upper())), # noqa: E501
("curve", "&{}_info".format(coin["curve_name"])),
))
def format_struct(struct):
return "{\n" + "\n".join(
"\t.{0} = {1},".format(member, value)
for member, value in struct.items()
) + "\n}"
def format_coin(coin):
return format_struct(coin_to_struct(coin))
def format_coins(coins):
return "\n".join("{},".format(format_coin(coin)) for coin in coins)
if __name__ == "__main__":
os.chdir(os.path.abspath(os.path.dirname(__file__)))
coins = []
support = json.load(open('defs/support.json', 'r'), object_pairs_hook=collections.OrderedDict)
defs = support['trezor1'].keys()
for c in defs:
name = c.replace(' ', '_').lower()
if name == 'testnet':
name = 'bitcoin_testnet'
data = json.load(open('defs/coins/%s.json' % name, 'r'))
coins.append(data)
with open("coin_info.h", "w+") as f:
f.write(HEADER_TEMPLATE.format(count=len(coins)))
with open("coin_info.c", "w+") as f:
f.write(CODE_TEMPLATE.format(coins=format_coins(coins)))

@ -33,6 +33,7 @@
#include "util.h"
#include "gettext.h"
#include "ethereum_tokens.h"
#include "ethereum_networks.h"
#include "memzero.h"
#include "messages.pb.h"
@ -247,32 +248,7 @@ static void ethereumFormatAmount(const bignum256 *amnt, const TokenType *token,
if (tx_type == 1 || tx_type == 6) {
suffix = " WAN";
} else {
// constants from trezor-common/defs/ethereum/networks.json
switch (chain_id) {
case 1: suffix = " ETH"; break; // Ethereum
case 2: suffix = " EXP"; break; // Expanse
case 3: suffix = " tROP"; break; // Ethereum Testnet Ropsten
case 4: suffix = " tRIN"; break; // Ethereum Testnet Rinkeby
case 8: suffix = " UBQ"; break; // UBIQ
case 20: suffix = " EOSC"; break; // EOS Classic
case 28: suffix = " ETSC"; break; // Ethereum Social
case 30: suffix = " RSK"; break; // RSK
case 31: suffix = " tRSK"; break; // RSK Testnet
case 42: suffix = " tKOV"; break; // Ethereum Testnet Kovan
case 60: suffix = " GO"; break; // GoChain
case 61: suffix = " ETC"; break; // Ethereum Classic
case 62: suffix = " tETC"; break; // Ethereum Classic Testnet
case 64: suffix = " ELLA"; break; // Ellaism
case 820: suffix = " CLO"; break; // Callisto
case 1620: suffix = " ATH"; break; // Atheios
case 1987: suffix = " EGEM"; break; // EtherGem
case 31102: suffix = " ESN"; break; // Ethersocial Network
case 200625: suffix = " AKA"; break; // Akroma
case 1313114: suffix = " ETHO"; break; // Ether-1
case 7762959: suffix = " MUSI"; break; // Musicoin
case 3125659152: suffix = " PIRL"; break; // Pirl
default : suffix = " UNKN"; break; // unknown chain
}
ASSIGN_ETHEREUM_SUFFIX(suffix, chain_id);
}
}
bn_format(amnt, NULL, suffix, decimals, 0, false, buf, buflen);

@ -0,0 +1,34 @@
<%
BKSL = "\\"
networks = list(supported_on("trezor1", eth))
max_chain_id_length = 0
max_suffix_length = 0
for n in networks:
max_chain_id_length = max(len(str(n.chain_id)), max_chain_id_length)
max_suffix_length = max(len(n.shortcut), max_suffix_length)
def align_chain_id(n):
return "{:>{w}}".format(n.chain_id, w=max_chain_id_length)
def align_suffix(n):
cstr = c_str(" " + n.shortcut) + ";"
# we add two quotes, a space and a semicolon. hence +4 chars
return "{:<{w}}".format(cstr, w=max_suffix_length + 4)
%>\
// This file is automatically generated from ethereum_networks.h.mako
// DO NOT EDIT
#ifndef __ETHEREUM_NETWORKS_H__
#define __ETHEREUM_NETWORKS_H__
#define ASSIGN_ETHEREUM_SUFFIX(suffix, chain_id) ${BKSL}
switch (chain_id) { ${BKSL}
% for n in networks:
case ${align_chain_id(n)}: suffix = ${align_suffix(n)} break; /* ${n.name} */ ${BKSL}
% endfor
default: suffix = " UNKN"; break; /* unknown chain */ ${BKSL}
}
#endif

@ -1,813 +0,0 @@
#include <string.h>
#include "ethereum_tokens.h"
const TokenType tokens[TOKENS_COUNT] = {
{64, "\x99\x1e\x7f\xe4\xb0\x5f\x2b\x3d\xb1\xd7\x88\xe7\x05\x96\x3f\x5d\x64\x7b\x00\x44", " MINING", 18}, // ella / Ella Mining Tokens
{61, "\x08\x5f\xb4\xf2\x40\x31\xea\xed\xbc\x2b\x61\x1a\xa5\x28\xf2\x23\x43\xeb\x52\xdb", " BEC", 8}, // etc / BEC
{61, "\x5a\xce\x17\xf8\x7c\x73\x91\xe5\x79\x2a\x76\x83\x06\x9a\x80\x25\xb8\x3b\xbd\x85", " PLAY", 0}, // etc / Smart Billions
{ 1, "\x4e\x84\xe9\xe5\xfb\x0a\x97\x26\x28\xcf\x45\x68\xc4\x03\x16\x7e\xf1\xd4\x04\x31", " $FFC", 18}, // eth / $Fluzcoin
{ 1, "\xa0\x24\xe8\x05\x7e\xec\x47\x4a\x9b\x23\x56\x83\x37\x07\xdd\x05\x79\xe2\x6e\xf3", " $FXY", 18}, // eth / $FIXY NETWORK
{ 1, "\xcd\xb7\xec\xfd\x34\x03\xee\xf3\x88\x2c\x65\xb7\x61\xef\x9b\x50\x54\x89\x0a\x47", " $HUR", 18}, // eth / $Hurify Token
{ 1, "\x7d\xd7\xf5\x6d\x69\x7c\xc0\xf2\xb5\x2b\xd5\x5c\x05\x7f\x37\x8f\x1f\xe6\xab\x4b", " $TEAK", 18}, // eth / $TEAK
{ 1, "\xb6\xed\x76\x44\xc6\x94\x16\xd6\x7b\x52\x2e\x20\xbc\x29\x4a\x9a\x9b\x40\x5b\x31", " 0xBTC", 8}, // eth / 0xBitcoin
{ 1, "\xaf\x30\xd2\xa7\xe9\x0d\x7d\xc3\x61\xc8\xc4\x58\x5e\x9b\xb7\xd2\xf6\xf1\x5b\xc7", " 1ST", 18}, // eth / FirstBlood
{ 1, "\xfd\xbc\x1a\xdc\x26\xf0\xf8\xf8\x60\x6a\x5d\x63\xb7\xd3\xa3\xcd\x21\xc2\x2b\x23", " 1WO", 8}, // eth / 1WO
{ 1, "\x9f\xc0\x58\x32\x20\xeb\x44\xfa\xee\x9e\x2d\xc1\xe6\x3f\x39\x20\x4d\xdd\x90\x90", " 2DC", 18}, // eth / DualChain
{ 1, "\xae\xc9\x8a\x70\x88\x10\x41\x48\x78\xc3\xbc\xdf\x46\xaa\xd3\x1d\xed\x4a\x45\x57", " 300", 18}, // eth / 300 Token Sparta
{ 1, "\x43\x02\x41\x36\x8c\x1d\x29\x3f\xda\x21\xdb\xa8\xbb\x7a\xf3\x20\x07\xc5\x91\x09", " 3LT", 8}, // eth / TrillionToken
{ 1, "\xbd\xe8\xf7\x82\x0b\x55\x44\xa4\x9d\x34\xf9\xdd\xea\xca\xbe\xdc\x7c\x0b\x5a\xdc", " A18", 0}, // eth / Apollo18
{ 1, "\xb9\x8d\x4c\x97\x42\x5d\x99\x08\xe6\x6e\x53\xa6\xfd\xf6\x73\xac\xca\x0b\xe9\x86", " ABT", 18}, // eth / ArcBlock Token
{ 1, "\x0e\x8d\x6b\x47\x1e\x33\x2f\x14\x0e\x7d\x9d\xbb\x99\xe5\xe3\x82\x2f\x72\x8d\xa6", " ABYSS", 18}, // eth / ABYSS
{ 1, "\x13\xf1\xb7\xfd\xfb\xe1\xfc\x66\x67\x6d\x56\x48\x3e\x21\xb1\xec\xb4\x0b\x58\xe2", " ACC", 18}, // eth / Accelerator Network
{ 1, "\xe6\x9a\x35\x3b\x31\x52\xdd\x7b\x70\x6f\xf7\xdd\x40\xfe\x1d\x18\xb7\x80\x2d\x31", " ADH", 18}, // eth / AdHive Token
{ 1, "\x88\x10\xc6\x34\x70\xd3\x86\x39\x95\x4c\x6b\x41\xaa\xc5\x45\x84\x8c\x46\x48\x4a", " ADI", 18}, // eth / Aditus
{ 1, "\x66\x0e\x71\x48\x37\x85\xf6\x61\x33\x54\x8b\x10\xf6\x92\x6d\xc3\x32\xb0\x6e\x61", " ADL", 18}, // eth / Adelphoi
{ 1, "\x42\x28\x66\xa8\xf0\xb0\x32\xc5\xcf\x1d\xfb\xde\xf3\x1a\x20\xf4\x50\x95\x62\xb0", " ADST", 0}, // eth / AdShares
{ 1, "\xd0\xd6\xd6\xc5\xfe\x4a\x67\x7d\x34\x3c\xc4\x33\x53\x6b\xb7\x17\xba\xe1\x67\xdd", " ADT", 9}, // eth / AdToken
{ 1, "\x44\x70\xbb\x87\xd7\x7b\x96\x3a\x01\x3d\xb9\x39\xbe\x33\x2f\x92\x7f\x2b\x99\x2e", " ADX", 4}, // eth / AdEx Network
{ 1, "\x5c\xa9\xa7\x1b\x1d\x01\x84\x9c\x0a\x95\x49\x0c\xc0\x05\x59\x71\x7f\xcf\x0d\x1d", " AE", 18}, // eth / aeternity
{ 1, "\x8e\xb2\x43\x19\x39\x37\x16\x66\x8d\x76\x8d\xce\xc2\x93\x56\xae\x9c\xff\xe2\x85", " AGI", 8}, // eth / SingularityNET
{ 1, "\x4c\xed\xa7\x90\x6a\x5e\xd2\x17\x97\x85\xcd\x3a\x40\xa6\x9e\xe8\xbc\x99\xc4\x66", " AION", 8}, // eth / Aion
{ 1, "\x27\xdc\xe1\xec\x4d\x3f\x72\xc3\xe4\x57\xcc\x50\x35\x4f\x1f\x97\x5d\xde\xf4\x88", " AIR", 8}, // eth / AirToken
{ 1, "\x10\x63\xce\x52\x42\x65\xd5\xa3\xa6\x24\xf4\x91\x4a\xcd\x57\x3d\xd8\x9c\xe9\x88", " AIX", 18}, // eth / Aigang
{ 1, "\x1c\xa4\x3a\x17\x0b\xad\x61\x93\x22\xe6\xf5\x4d\x46\xb5\x7e\x50\x4d\xb6\x63\xaa", " AKC", 18}, // eth / ARTWOOK COIN
{ 1, "\x18\x1a\x63\x74\x6d\x3a\xdc\xf3\x56\xcb\xc7\x3a\xce\x22\x83\x2f\xfb\xb1\xee\x5a", " ALCO", 8}, // eth / ALCO
{ 1, "\xea\x61\x0b\x11\x53\x47\x77\x20\x74\x8d\xc1\x3e\xd3\x78\x00\x39\x41\xd8\x4f\xab", " ALIS", 18}, // eth / ALIS Token
{ 1, "\x63\x8a\xc1\x49\xea\x8e\xf9\xa1\x28\x6c\x41\xb9\x77\x01\x7a\xa7\x35\x9e\x6c\xfa", " ALTS", 18}, // eth / ALTS Token
{ 1, "\x4d\xc3\x64\x3d\xbc\x64\x2b\x72\xc1\x58\xe7\xf3\xd2\xff\x23\x2d\xf6\x1c\xb6\xce", " AMB", 18}, // eth / Amber Token
{ 1, "\x94\x9b\xed\x88\x6c\x73\x9f\x1a\x32\x73\x62\x9b\x33\x20\xdb\x0c\x50\x24\xc7\x19", " AMIS", 9}, // eth / AMIS
{ 1, "\xca\x0e\x72\x69\x60\x0d\x35\x3f\x70\xb1\x4a\xd1\x18\xa4\x95\x75\x45\x5c\x0f\x2f", " AMLT", 18}, // eth / AMLT
{ 1, "\x73\x7f\x98\xac\x8c\xa5\x9f\x2c\x68\xad\x65\x8e\x3c\x3d\x8c\x89\x63\xe4\x0a\x4c", " AMN", 18}, // eth / Amon
{ 1, "\x38\xc8\x7a\xa8\x9b\x2b\x8c\xd9\xb9\x5b\x73\x6e\x1f\xa7\xb6\x12\xea\x97\x21\x69", " AMO", 18}, // eth / AMO Coin
{ 1, "\x84\x93\x6c\xf7\x63\x0a\xa3\xe2\x7d\xd9\xaf\xf9\x68\xb1\x40\xd5\xae\xe4\x9f\x5a", " AMTC", 8}, // eth / AmberTime Coin
{ 1, "\x96\x0b\x23\x6a\x07\xcf\x12\x26\x63\xc4\x30\x33\x50\x60\x9a\x66\xa7\xb2\x88\xc0", " ANT", 18}, // eth / ANT
{ 1, "\x4c\x0f\xbe\x1b\xb4\x66\x12\x91\x5e\x79\x67\xd2\xc3\x21\x3c\xd4\xd8\x72\x57\xad", " APIS", 18}, // eth / APIS
{ 1, "\x1a\x7a\x8b\xd9\x10\x6f\x2b\x8d\x97\x7e\x08\x58\x2d\xc7\xd2\x4c\x72\x3a\xb0\xdb", " APPC", 18}, // eth / AppCoins
{ 1, "\x23\xae\x3c\x5b\x39\xb1\x2f\x06\x93\xe0\x54\x35\xee\xaa\x1e\x51\xd8\xc6\x15\x30", " APT", 18}, // eth / AIGang
{ 1, "\xac\x70\x9f\xcb\x44\xa4\x3c\x35\xf0\xda\x4e\x31\x63\xb1\x17\xa1\x7f\x37\x70\xf5", " ARC", 18}, // eth / Arcade Token
{ 1, "\x12\x45\xef\x80\xf4\xd9\xe0\x2e\xd9\x42\x53\x75\xe8\xf6\x49\xb9\x22\x1b\x31\xd8", " ARCT", 8}, // eth / ArbitrageCT
{ 1, "\x75\xaa\x7b\x0d\x02\x53\x2f\x38\x33\xb6\x6c\x7f\x0a\xd3\x53\x76\xd3\x73\xdd\xf8", " ARD", 18}, // eth / Accord
{ 1, "\xba\x5f\x11\xb1\x6b\x15\x57\x92\xcf\x3b\x2e\x68\x80\xe8\x70\x68\x59\xa8\xae\xb6", " ARN", 8}, // eth / Aeron Token
{ 1, "\xfe\xc0\xcf\x7f\xe0\x78\xa5\x00\xab\xf1\x5f\x12\x84\x95\x8f\x22\x04\x9c\x2c\x7e", " ART", 18}, // eth / ART
{ 1, "\x77\x05\xfa\xa3\x4b\x16\xeb\x6d\x77\xdf\xc7\x81\x2b\xe2\x36\x7b\xa6\xb0\x24\x8e", " ARX", 8}, // eth / ARX
{ 1, "\xb0\xd9\x26\xc1\xbc\x3d\x78\x06\x4f\x3e\x10\x75\xd5\xbd\x9a\x24\xf3\x5a\xe6\xc5", " ARXT", 18}, // eth / Assistive Reality ARX
{ 1, "\x27\x05\x4b\x13\xb1\xb7\x98\xb3\x45\xb5\x91\xa4\xd2\x2e\x65\x62\xd4\x7e\xa7\x5a", " AST", 4}, // eth / Airswap
{ 1, "\x17\x05\x2d\x51\xe9\x54\x59\x2c\x10\x46\x32\x0c\x23\x71\xab\xab\x6c\x73\xef\x10", " ATH", 18}, // eth / Athenian Warrior Token
{ 1, "\x15\x43\xd0\xf8\x34\x89\xe8\x2a\x13\x44\xdf\x68\x27\xb2\x3d\x54\x1f\x23\x5a\x50", " ATH (AIgatha Token)", 18}, // eth / AIgatha Token
{ 1, "\x78\xb7\xfa\xda\x55\xa6\x4d\xd8\x95\xd8\xc8\xc3\x57\x79\xdd\x8b\x67\xfa\x8a\x05", " ATL", 18}, // eth / ATL
{ 1, "\x97\xae\xb5\x06\x6e\x1a\x59\x0e\x86\x8b\x51\x14\x57\xbe\xb6\xfe\x99\xd3\x29\xf5", " ATMI", 18}, // eth / Atonomi
{ 1, "\x88\x78\x34\xd3\xb8\xd4\x50\xb6\xba\xb1\x09\xc2\x52\xdf\x3d\xa2\x86\xd7\x3c\xe4", " ATT", 18}, // eth / Atmatrix Token
{ 1, "\x63\x39\x78\x4d\x94\x78\xda\x43\x10\x6a\x42\x91\x96\x77\x2a\x02\x9c\x2f\x17\x7d", " ATTN", 18}, // eth / Attention Token
{ 1, "\xed\x24\x79\x80\x39\x6b\x10\x16\x9b\xb1\xd3\x6f\x6e\x27\x8e\xd1\x67\x00\xa6\x0f", " AVA", 4}, // eth / AVA
{ 1, "\x0d\x88\xed\x6e\x74\xbb\xfd\x96\xb8\x31\x23\x16\x38\xb6\x6c\x05\x57\x1e\x82\x4f", " AVT", 18}, // eth / AVT
{ 1, "\xcd\x4b\x4b\x0f\x32\x84\xa3\x3a\xc4\x9c\x67\x96\x1e\xc6\xe1\x11\x70\x83\x18\xcf", " AX1", 5}, // eth / AX1 Mining Token
{ 1, "\x9a\xf2\xc6\xb1\xa2\x8d\x3d\x6b\xc0\x84\xbd\x26\x7f\x70\xe9\x0d\x49\x74\x1d\x5b", " AXP", 8}, // eth / AXP
{ 1, "\xc3\x9e\x62\x6a\x04\xc5\x97\x1d\x77\x0e\x31\x97\x60\xd7\x92\x65\x02\x97\x5e\x47", " AXPR", 18}, // eth / aXpire
{ 1, "\xf8\x7f\x0d\x91\x53\xfe\xa5\x49\xc7\x28\xad\x61\xcb\x80\x15\x95\xa6\x8b\x73\xde", " BANX", 18}, // eth / BANX
{ 1, "\x0d\x87\x75\xf6\x48\x43\x06\x79\xa7\x09\xe9\x8d\x2b\x0c\xb6\x25\x0d\x28\x87\xef", " BAT", 18}, // eth / BAT
{ 1, "\x4a\x60\x58\x66\x6c\xf1\x05\x7e\xac\x3c\xd3\xa5\xa6\x14\x62\x05\x47\x55\x9f\xc9", " BBK", 18}, // eth / BRICKBLOCK TOKEN
{ 1, "\x73\x67\xa6\x80\x39\xd4\x70\x4f\x30\xbf\xbf\x6d\x94\x80\x20\xc3\xb0\x7d\xfc\x59", " BCBC", 18}, // eth / Beercoin
{ 1, "\x1e\x79\x7c\xe9\x86\xc3\xcf\xf4\x47\x2f\x7d\x38\xd5\xc4\xab\xa5\x5d\xfe\xfe\x40", " BCDN", 15}, // eth / BCDN
{ 1, "\xac\xfa\x20\x9f\xb7\x3b\xf3\xdd\x5b\xbf\xb1\x10\x1b\x9b\xc9\x99\xc4\x90\x62\xa5", " BCDT", 18}, // eth / Blockchain Certified Data Token
{ 1, "\xbc\x12\x34\x55\x2e\xbe\xa3\x2b\x51\x21\x19\x03\x56\xbb\xa6\xd3\xbb\x22\x5b\xb5", " BCL", 18}, // eth / BCL
{ 1, "\x1c\x44\x81\x75\x0d\xaa\x5f\xf5\x21\xa2\xa7\x49\x0d\x99\x81\xed\x46\x46\x5d\xbd", " BCPT", 18}, // eth / BCPT
{ 1, "\x10\x14\x61\x3e\x2b\x3c\xbc\x4d\x57\x50\x54\xd4\x98\x2e\x58\x0d\x9b\x99\xd7\xb1", " BCV", 8}, // eth / BitCapitalVendor Token
{ 1, "\x19\x61\xb3\x33\x19\x69\xed\x52\x77\x07\x51\xfc\x71\x8e\xf5\x30\x83\x8b\x6d\xee", " BDG", 18}, // eth / BitDegree Token
{ 1, "\x4d\x8f\xc1\x45\x3a\x0f\x35\x9e\x99\xc9\x67\x59\x54\xe6\x56\xd8\x0d\x99\x6f\xbf", " BEE", 18}, // eth / Bee Token
{ 1, "\x74\xc1\xe4\xb8\xca\xe5\x92\x69\xec\x1d\x85\xd3\xd4\xf3\x24\x39\x60\x48\xf4\xac", " BeerCoin", 0}, // eth / BeerCoin
{ 1, "\x6a\xeb\x95\xf0\x6c\xda\x84\xca\x34\x5c\x2d\xe0\xf3\xb7\xf9\x69\x23\xa4\x4f\x4c", " BERRY", 14}, // eth / Berry
{ 1, "\x8a\xa3\x3a\x78\x99\xfc\xc8\xea\x5f\xbe\x6a\x60\x8a\x10\x9c\x38\x93\xa1\xb8\xb2", " BET", 18}, // eth / BET
{ 1, "\x14\xc9\x26\xf2\x29\x00\x44\xb6\x47\xe1\xbf\x20\x72\xe6\x7b\x49\x5e\xff\x19\x05", " BETHER", 18}, // eth / Bethereum
{ 1, "\x76\x31\x86\xeb\x8d\x48\x56\xd5\x36\xed\x44\x78\x30\x29\x71\x21\x4f\xeb\xc6\xa9", " BETR", 18}, // eth / BETR
{ 1, "\xb2\xbf\xeb\x70\xb9\x03\xf1\xba\xac\x7f\x2b\xa2\xc6\x29\x34\xc7\xe5\xb9\x74\xc4", " BKB", 8}, // eth / BetKing Bankroll Token
{ 1, "\x3c\xf9\xe0\xc3\x85\xa5\xab\xec\x9f\xd2\xa7\x17\x90\xaa\x34\x4c\x4e\x8e\x35\x70", " BKRx", 18}, // eth / BlockRx
{ 1, "\x45\x24\x5b\xc5\x92\x19\xee\xaa\xf6\xcd\x3f\x38\x2e\x07\x8a\x46\x1f\xf9\xde\x7b", " BKX", 18}, // eth / BANKEX
{ 1, "\x10\x7c\x45\x04\xcd\x79\xc5\xd2\x69\x6e\xa0\x03\x0a\x8d\xd4\xe9\x26\x01\xb8\x2e", " BLT", 18}, // eth / Bloom
{ 1, "\x53\x9e\xfe\x69\xbc\xdd\x21\xa8\x3e\xfd\x91\x22\x57\x1a\x64\xcc\x25\xe0\x28\x2b", " BLUE", 8}, // eth / Ethereum Blue
{ 1, "\xce\x59\xd2\x9b\x09\xaa\xe5\x65\xfe\xee\xf8\xe5\x2f\x47\xc3\xcd\x53\x68\xc6\x63", " BLX (Bullion)", 18}, // eth / Bullion Crypto
{ 1, "\xe5\xa7\xc1\x29\x72\xf3\xbb\xfe\x70\xed\x29\x52\x1c\x89\x49\xb8\xaf\x6a\x09\x70", " BLX (Iconomi)", 18}, // eth / Iconomi
{ 1, "\x57\x32\x04\x6a\x88\x37\x04\x40\x4f\x28\x4c\xe4\x1f\xfa\xdd\x5b\x00\x7f\xd6\x68", " BLZ", 18}, // eth / Bluezelle
{ 1, "\xdf\x6e\xf3\x43\x35\x07\x80\xbf\x8c\x34\x10\xbf\x06\x2e\x0c\x01\x5b\x1d\xd6\x71", " BMC", 8}, // eth / Blackmoon Crypto BMC Token
{ 1, "\xf0\x28\xad\xee\x51\x53\x3b\x1b\x47\xbe\xaa\x89\x0f\xeb\x54\xa4\x57\xf5\x1e\x89", " BMT", 18}, // eth / BMT
{ 1, "\x98\x6e\xe2\xb9\x44\xc4\x2d\x01\x7f\x52\xaf\x21\xc4\xc6\x9b\x84\xdb\xea\x35\xd8", " BMX", 18}, // eth / BitMartToken
{ 1, "\xb8\xc7\x74\x82\xe4\x5f\x1f\x44\xde\x17\x45\xf5\x2c\x74\x42\x6c\x63\x1b\xdd\x52", " BNB", 18}, // eth / BNB
{ 1, "\xdd\x6b\xf5\x6c\xa2\xad\xa2\x4c\x68\x3f\xac\x50\xe3\x77\x83\xe5\x5b\x57\xaf\x9f", " BNC", 12}, // eth / BNC
{ 1, "\xda\x2c\x42\x4f\xc9\x8c\x74\x1c\x2d\x4e\xf2\xf4\x28\x97\xce\xfe\xd8\x97\xca\x75", " BNFT", 9}, // eth / Benefits Coin
{ 1, "\x1f\x57\x3d\x6f\xb3\xf1\x3d\x68\x9f\xf8\x44\xb4\xce\x37\x79\x4d\x79\xa7\xff\x1c", " BNT", 18}, // eth / Bancor
{ 1, "\xd2\xd6\x15\x86\x83\xae\xe4\xcc\x83\x80\x67\x72\x72\x09\xa0\xaa\xf4\x35\x9d\xe3", " BNTY", 18}, // eth / Bounty0x Token
{ 1, "\xdf\x34\x79\x11\x91\x0b\x6c\x9a\x42\x86\xba\x8e\x2e\xe5\xea\x4a\x39\xeb\x21\x34", " BOB", 18}, // eth / Bob's repair
{ 1, "\xcc\x34\x36\x6e\x38\x42\xca\x1b\xd3\x6c\x1f\x32\x4d\x15\x25\x79\x60\xfc\xc8\x01", " BON", 18}, // eth / Bonpay
{ 1, "\x7f\x1e\x2c\x7d\x6a\x69\xbf\x34\x82\x4d\x72\xc5\x3b\x45\x50\xe8\x95\xc0\xd8\xc2", " BOP", 8}, // eth / BlockOptiopns Token
{ 1, "\xc2\xc6\x3f\x23\xec\x5e\x97\xef\xbd\x75\x65\xdf\x9e\xc7\x64\xfd\xc7\xd4\xe9\x1d", " BOU", 18}, // eth / Boule Coin
{ 1, "\xe1\xa1\x78\xb6\x81\xbd\x05\x96\x4d\x3e\x3e\xd3\x3a\xe7\x31\x57\x7d\x9d\x96\xdd", " BOX", 18}, // eth / BOX Token
{ 1, "\x32\x76\x82\x77\x9b\xab\x2b\xf4\xd1\x33\x7e\x89\x74\xab\x9d\xe8\x27\x5a\x7c\xa8", " BPT", 18}, // eth / Blockport Token
{ 1, "\x5a\xf2\xbe\x19\x3a\x6a\xbc\xa9\xc8\x81\x70\x01\xf4\x57\x44\x77\x7d\xb3\x07\x56", " BQX", 8}, // eth / Bitquence
{ 1, "\x9e\x77\xd5\xa1\x25\x1b\x6f\x7d\x45\x67\x22\xa6\xea\xc6\xd2\xd5\x98\x0b\xd8\x91", " BRAT", 8}, // eth / BRAT
{ 1, "\x55\x8e\xc3\x15\x2e\x2e\xb2\x17\x49\x05\xcd\x19\xae\xa4\xe3\x4a\x23\xde\x9a\xd6", " BRD", 18}, // eth / Bread
{ 1, "\xf2\x6e\xf5\xe0\x54\x53\x84\xb7\xdc\xc0\xf2\x97\xf2\x67\x41\x89\x58\x68\x30\xdf", " BSDC", 18}, // eth / BSDC
{ 1, "\x50\x9a\x38\xb7\xa1\xcc\x0d\xcd\x83\xaa\x9d\x06\x21\x46\x63\xd9\xec\x7c\x7f\x4a", " BST", 18}, // eth / BlocksquareToken
{ 1, "\x08\x86\x94\x9c\x1b\x8c\x41\x28\x60\xc4\x26\x4c\xeb\x80\x83\xd1\x36\x5e\x86\xcf", " BTCE", 8}, // eth / EthereumBitcoin
{ 1, "\x5a\xcd\x19\xb9\xc9\x1e\x59\x6b\x1f\x06\x2f\x18\xe3\xd0\x2d\xa7\xed\x8d\x1e\x50", " BTCL", 8}, // eth / BTC Lite
{ 1, "\x73\xdd\x06\x9c\x29\x9a\x5d\x69\x1e\x98\x36\x24\x3b\xca\xec\x9c\x8c\x1d\x87\x34", " BTE", 8}, // eth / BTE
{ 1, "\xfa\xd5\x72\xdb\x56\x6e\x52\x34\xac\x9f\xc3\xd5\x70\xc4\xed\xc0\x05\x0e\xaa\x92", " BTH", 18}, // eth / Bytether
{ 1, "\xa0\x2e\x3b\xb9\xce\xbc\x03\x95\x26\x01\xb3\x72\x4b\x49\x40\xe0\x84\x5b\xeb\xcf", " BTHR", 18}, // eth / Bethereum
{ 1, "\xdb\x86\x46\xf5\xb4\x87\xb5\xdd\x97\x9f\xac\x61\x83\x50\xe8\x50\x18\xf5\x57\xd4", " BTK", 18}, // eth / Bitcoin Token
{ 1, "\x2a\xcc\xab\x9c\xb7\xa4\x8c\x3e\x82\x28\x6f\x0b\x2f\x87\x98\xd2\x01\xf4\xec\x3f", " BTL (Battle)", 18}, // eth / BTL (Battle)
{ 1, "\x92\x68\x5e\x93\x95\x65\x37\xc2\x5b\xb7\x5d\x5d\x47\xfc\xa4\x26\x6d\xd6\x28\xb8", " BTL (Bitlle)", 4}, // eth / Bitlle Token
{ 1, "\xcb\x97\xe6\x5f\x07\xda\x24\xd4\x6b\xcd\xd0\x78\xeb\xeb\xd7\xc6\xe6\xe3\xd7\x50", " BTM", 8}, // eth / Bytom
{ 1, "\x16\xb0\xe6\x2a\xc1\x3a\x2f\xae\xd3\x6d\x18\xbc\xe2\x35\x6d\x25\xab\x3c\xfa\xd3", " BTQ", 18}, // eth / Bitcoin Boutique
{ 1, "\x08\x0a\xa0\x7e\x2c\x71\x85\x15\x0d\x7e\x4d\xa9\x88\x38\xa8\xd2\xfe\xac\x3d\xfc", " BTT", 0}, // eth / Bitether
{ 1, "\xfa\x45\x6c\xf5\x52\x50\xa8\x39\x08\x8b\x27\xee\x32\xa4\x24\xd7\xda\xcb\x54\xff", " BTTX", 18}, // eth / Blocktrade.com
{ 1, "\xe5\xf8\x67\xde\x1e\xa8\x13\x46\xdf\x51\x81\xb8\xb4\x8d\xd6\xb0\xbb\x33\x57\xb0", " BTZ", 18}, // eth / BTZ by Bunz
{ 1, "\xca\x3c\x18\xa6\x5b\x80\x2e\xc2\x67\xf8\xf4\x80\x25\x45\xe7\xf5\x3d\x24\xc7\x5e", " BUC", 18}, // eth / BeeUnity Chain
{ 1, "\x26\xe7\x53\x07\xfc\x0c\x02\x14\x72\xfe\xb8\xf7\x27\x83\x95\x31\xf1\x12\xf3\x17", " C20", 18}, // eth / Crypto20's Token
{ 1, "\xd4\x2d\xeb\xe4\xed\xc9\x2b\xd5\xa3\xfb\xb4\x24\x3e\x1e\xcc\xf6\xd6\x3a\x4a\x5d", " C8", 18}, // eth / Carboneum
{ 1, "\x7d\x4b\x8c\xce\x05\x91\xc9\x04\x4a\x22\xee\x54\x35\x33\xb7\x2e\x97\x6e\x36\xc3", " CAG", 18}, // eth / Change Bank
{ 1, "\x1d\x46\x24\x14\xfe\x14\xcf\x48\x9c\x7a\x21\xca\xc7\x85\x09\xf4\xbf\x8c\xd7\xc0", " CAN", 6}, // eth / CAN
{ 1, "\x42\x3e\x43\x22\xcd\xda\x29\x15\x6b\x49\xa1\x7d\xfb\xd2\xac\xc4\xb2\x80\x60\x0d", " CAR", 9}, // eth / Car Sharing Community
{ 1, "\x4d\x9e\x23\xa3\x84\x2f\xe7\xeb\x76\x82\xb9\x72\x5c\xf6\xc5\x07\xc4\x24\xa4\x1b", " CAR (CarBlock)", 18}, // eth / CarBlock
{ 1, "\xa5\x17\xa4\x6b\xaa\xd6\xb0\x54\xa7\x6b\xd1\x9c\x46\x84\x4f\x71\x7f\xe6\x9f\xea", " CARB", 8}, // eth / CarbCoin
{ 1, "\x21\x08\xe6\x2d\x33\x5b\xbd\xc8\x9e\xc3\xe9\xd8\x58\x2f\x18\xdc\xfb\x0c\xdf\xf4", " CARCO", 8}, // eth / CARCO
{ 1, "\x1e\xd2\xb1\xea\xed\x8e\x96\x8b\xc3\x6e\xb9\x0a\x91\x46\x60\xa7\x18\x27\xa5\xe9", " CARD", 0}, // eth / Cardstack Token
{ 1, "\xb0\x7e\xc2\xc2\x88\x34\xb8\x89\xb1\xce\x52\x7c\xa0\xf1\x93\x64\xcd\x38\x93\x5c", " CARD", 0}, // eth / Cardstack Token
{ 1, "\xbf\x18\xf2\x46\xb9\x30\x1f\x23\x1e\x95\x61\xb3\x5a\x38\x79\x76\x9b\xb4\x63\x75", " CARE", 18}, // eth / Token CARE
{ 1, "\xe8\x78\x0b\x48\xbd\xb0\x5f\x92\x86\x97\xa5\xe8\x15\x5f\x67\x2e\xd9\x14\x62\xf7", " CAS", 18}, // eth / Cashaa
{ 1, "\x12\x34\x56\x74\x61\xd3\xf8\xdb\x74\x96\x58\x17\x74\xbd\x86\x9c\x83\xd5\x1c\x93", " CAT (BitClave)", 18}, // eth / CAT (BitClave)
{ 1, "\x56\xba\x2e\xe7\x89\x04\x61\xf4\x63\xf7\xbe\x02\xaa\xc3\x09\x9f\x6d\x58\x11\xa8", " CAT (Blockcat)", 18}, // eth / CAT (Blockcat)
{ 1, "\x68\xe1\x4b\xb5\xa4\x5b\x96\x81\x32\x7e\x16\xe5\x28\x08\x4b\x9d\x96\x2c\x1a\x39", " CATs (BitClave)_Old", 18}, // eth / CATs (BitClave)_Old
{ 1, "\x05\xc3\x61\x7c\xbf\x13\x04\xb9\x26\x0a\xa6\x1e\xc9\x60\xf1\x15\xd6\x7b\xec\xea", " CBIX", 18}, // eth / Cubrix
{ 1, "\xc1\x66\x03\x87\x05\xff\xba\xb3\x79\x41\x85\xb3\xa9\xd9\x25\x63\x2a\x1d\xf3\x7d", " CC3", 18}, // eth / Coal Coin
{ 1, "\xbe\x11\xee\xb1\x86\xe6\x24\xb8\xf2\x6a\x50\x45\x57\x5a\x13\x40\xe4\x05\x45\x52", " CCC (ICONOMI)", 18}, // eth / CCC (ICONOMI)
{ 1, "\xd3\x48\xe0\x7a\x28\x06\x50\x5b\x85\x61\x23\x04\x5d\x27\xae\xed\x90\x92\x4b\x50", " CCLC", 8}, // eth / Christ Coin
{ 1, "\x31\x5c\xe5\x9f\xaf\xd3\xa8\xd5\x62\xb7\xec\x1c\x85\x42\x38\x2d\x27\x10\xb0\x6c", " CCS", 18}, // eth / CacaoShares
{ 1, "\x8a\x95\xca\x44\x8a\x52\xc0\xad\xf0\x05\x4b\xb3\x40\x2d\xc5\xe0\x9c\xd6\xb2\x32", " CDL", 18}, // eth / Confideal
{ 1, "\x17\x7d\x39\xac\x67\x6e\xd1\xc6\x7a\x2b\x26\x8a\xd7\xf1\xe5\x88\x26\xe5\xb0\xaf", " CDT", 18}, // eth / CoinDash
{ 1, "\x6f\xff\x38\x06\xbb\xac\x52\xa2\x0e\x0d\x79\xbc\x53\x8d\x52\x7f\x6a\x22\xc9\x6b", " CDX", 18}, // eth / CDX
{ 1, "\x2c\xb1\x01\xd7\xda\x0e\xba\xa5\x7d\x3f\x2f\xef\x46\xd7\xff\xb7\xbb\x64\x59\x2b", " CDX", 0}, // eth / Carbon Dollar X
{ 1, "\xb0\x56\xc3\x8f\x6b\x7d\xc4\x06\x43\x67\x40\x3e\x26\x42\x4c\xd2\xc6\x06\x55\xe1", " CEEK", 18}, // eth / CEEK VR Token
{ 1, "\xf6\x60\xca\x1e\x22\x8e\x7b\xe1\xfa\x8b\x4f\x55\x83\x14\x5e\x31\x14\x7f\xb5\x77", " CET", 18}, // eth / DICE Money Dicet
{ 1, "\x5d\xff\x89\xa2\xca\xa4\xd7\x6b\xc2\x86\xf7\x4d\x67\xbd\x71\x8e\xb8\x34\xda\x61", " CFC", 18}, // eth / CryptFillCoin
{ 1, "\x12\xfe\xf5\xe5\x7b\xf4\x58\x73\xcd\x9b\x62\xe9\xdb\xd7\xbf\xb9\x9e\x32\xd7\x3e", " CFI", 18}, // eth / Cofound.it
{ 1, "\x69\x56\x98\x3f\x8b\x3c\xe1\x73\xb4\xab\x84\x36\x1a\xa0\xad\x52\xf3\x8d\x93\x6f", " CFTY", 8}, // eth / Crafty Token
{ 1, "\xba\x9d\x41\x99\xfa\xb4\xf2\x6e\xfe\x35\x51\xd4\x90\xe3\x82\x14\x86\xf1\x35\xba", " CHSB", 8}, // eth / CHSB
{ 1, "\x06\x01\x2c\x8c\xf9\x7b\xea\xd5\xde\xae\x23\x70\x70\xf9\x58\x7f\x8e\x7a\x26\x6d", " CK", 0}, // eth / CK
{ 1, "\xb1\xc1\xcb\x8c\x7c\x19\x92\xdb\xa2\x4e\x62\x8b\xf7\xd3\x8e\x71\xda\xd4\x6a\xeb", " CLB", 18}, // eth / Cloudbric
{ 1, "\x3d\xc9\xa4\x2f\xa7\xaf\xe5\x7b\xe0\x3c\x58\xfd\x7f\x44\x11\xb1\xe4\x66\xc5\x08", " CLL", 18}, // eth / CryptoLiveLeak
{ 1, "\x41\x62\x17\x8b\x78\xd6\x98\x54\x80\xa3\x08\xb2\x19\x0e\xe5\x51\x74\x60\x40\x6d", " CLN", 18}, // eth / ColuLocalNetwork
{ 1, "\x7f\xce\x28\x56\x89\x9a\x68\x06\xee\xef\x70\x80\x79\x85\xfc\x75\x54\xc6\x63\x40", " CLP", 9}, // eth / CryptoLending
{ 1, "\x3e\xdd\x23\x5c\x3e\x84\x0c\x1f\x29\x28\x6b\x2e\x39\x37\x0a\x25\x5c\x7b\x6f\xdb", " CMBT", 8}, // eth / CMBToken
{ 1, "\x7e\x66\x75\x25\x52\x1c\xf6\x13\x52\xe2\xe0\x1b\x50\xfa\xaa\xe7\xdf\x39\x74\x9a", " CMC", 18}, // eth / CryptoMart
{ 1, "\xf8\x5f\xee\xa2\xfd\xd8\x1d\x51\x17\x7f\x6b\x8f\x35\xf0\xe6\x73\x4c\xe4\x5f\x5f", " CMT", 18}, // eth / CyberMiles Token
{ 1, "\xeb\xf2\xf9\xe8\xde\x96\x0f\x64\xec\x0f\xdc\xda\x6c\xb2\x82\x42\x31\x33\x34\x7b", " CNB", 8}, // eth / Canabio
{ 1, "\xd4\xc4\x35\xf5\xb0\x9f\x85\x5c\x33\x17\xc8\x52\x4c\xb1\xf5\x86\xe4\x27\x95\xfa", " CND", 18}, // eth / Cindicator
{ 1, "\xb4\xb1\xd2\xc2\x17\xec\x07\x76\x58\x4c\xe0\x8d\x3d\xd9\x8f\x90\xed\xed\xa4\x4b", " CO2", 18}, // eth / Climatecoin
{ 1, "\x57\x4b\x36\xbc\xed\x44\x33\x38\x87\x5d\x17\x1c\xc3\x77\xe6\x91\xf7\xd4\xf8\x87", " CO2Bit", 18}, // eth / CO2Bit
{ 1, "\xb2\xf7\xeb\x1f\x2c\x37\x64\x5b\xe6\x1d\x73\x95\x30\x35\x36\x0e\x76\x8d\x81\xe6", " COB", 18}, // eth / Cobinhood Token
{ 1, "\x31\x36\xef\x85\x15\x92\xac\xf4\x9c\xa4\xc8\x25\x13\x1e\x36\x41\x70\xfa\x32\xb3", " COFI", 18}, // eth / CoinFi Token
{ 1, "\x0c\x91\xb0\x15\xab\xa6\xf7\xb4\x73\x8d\xcd\x36\xe7\x41\x01\x38\xb2\x9a\xdc\x29", " COIL", 8}, // eth / CoinOil
{ 1, "\x5e\x8f\x85\x59\x66\xd6\x38\x13\x5a\x96\x88\x61\xe8\x0d\xda\x72\x22\x91\xb0\x6d", " COIN", 18}, // eth / Coinvest V2 Token
{ 1, "\x72\x5b\x19\x0b\xc0\x77\xff\xde\x17\xcf\x54\x9a\xa8\xba\x25\xe2\x98\x55\x0b\x18", " CORI", 2}, // eth / Corrently Invest Token
{ 1, "\x65\x29\x2e\xea\xdf\x14\x26\xcd\x2d\xf1\xc4\x79\x3a\x3d\x75\x19\xf2\x53\x91\x3b", " COSS", 18}, // eth / Coss Token
{ 1, "\x9e\x96\x60\x44\x45\xec\x19\xff\xed\x9a\x5e\x8d\xd7\xb5\x0a\x29\xc8\x99\xa1\x0c", " COSS", 18}, // eth / Coss Token
{ 1, "\xe2\xfb\x65\x29\xef\x56\x6a\x08\x0e\x6d\x23\xde\x0b\xd3\x51\x31\x10\x87\xd5\x67", " COV", 18}, // eth / Covesting
{ 1, "\xb7\x87\xd4\xea\xc8\x89\x97\x30\xbb\x8c\x57\xfc\x3c\x99\x8c\x49\xc5\x24\x4e\xc0", " CPEX", 8}, // eth / CoinPulseToken
{ 1, "\xf4\x47\x45\xfb\xd4\x1f\x6a\x1b\xa1\x51\xdf\x19\x0d\xb0\x56\x4c\x5f\xcc\x44\x10", " CPY", 18}, // eth / COPYTRACK
{ 1, "\x7f\x58\x5b\x91\x30\xc6\x4e\x9e\x9f\x47\x0b\x61\x8a\x7b\xad\xd0\x3d\x79\xca\x7e", " CR7", 18}, // eth / CR7Coin
{ 1, "\xae\xf3\x8f\xbf\xbf\x93\x2d\x1a\xef\x3b\x80\x8b\xc8\xfb\xd8\xcd\x8e\x1f\x8b\xc5", " CRB", 8}, // eth / CRB
{ 1, "\x67\x2a\x1a\xd4\xf6\x67\xfb\x18\xa3\x33\xaf\x13\x66\x7a\xa0\xaf\x1f\x5b\x5b\xdd", " CRED", 18}, // eth / CRED
{ 1, "\x4e\x06\x03\xe2\xa2\x7a\x30\x48\x0e\x5e\x3a\x4f\xe5\x48\xe2\x9e\xf1\x2f\x64\xbe", " CREDO", 18}, // eth / Credo / Bitbounce
{ 1, "\xf4\x9c\xdd\x50\xad\x40\x8d\x38\x7d\x61\x1f\x88\xa6\x47\x17\x9c\x3d\xe3\x49\x2b", " CRGO", 18}, // eth / CargoCoin
{ 1, "\x92\x38\xbf\xb7\x81\xa5\x5e\xac\xc3\xcf\x05\xf7\xdf\x94\x03\x8c\x19\x8c\xd9\xb9", " CRMT", 8}, // eth / Cremit
{ 1, "\x80\xa7\xe0\x48\xf3\x7a\x50\x50\x03\x51\xc2\x04\xcb\x40\x77\x66\xfa\x3b\xae\x7f", " CRPT", 18}, // eth / CrypteriumToken
{ 1, "\xf0\xda\x11\x86\xa4\x97\x72\x26\xb9\x13\x5d\x06\x13\xee\x72\xe2\x29\xec\x3f\x4d", " CRT", 18}, // eth / CreamtoeCoin
{ 1, "\xe4\xc9\x4d\x45\xf7\xae\xf7\x01\x8a\x5d\x66\xf4\x4a\xf7\x80\xec\x60\x23\x37\x8e", " CryptoCarbon", 6}, // eth / CryptoCarbon
{ 1, "\x45\x45\x75\x0f\x39\xaf\x6b\xe4\xf2\x37\xb6\x86\x9d\x4e\xcc\xa9\x28\xfd\x5a\x85", " CTF", 18}, // eth / CryptoTask
{ 1, "\xc8\x7c\x5d\xd8\x6a\x3d\x56\x7f\xf2\x87\x01\x88\x6f\xb0\x74\x5a\xaa\x89\x8d\xa4", " CTG", 18}, // eth / CT Global Token
{ 1, "\x9e\x7d\x29\xbd\x49\x9b\x6c\x7d\xa2\xa5\xb2\xea\xfc\xf4\xa3\x9d\x3b\xd8\x45\xd1", " CTGC", 18}, // eth / Convenient To Go
{ 1, "\xbf\x4c\xfd\x7d\x1e\xde\xee\xa5\xf6\x60\x08\x27\x41\x1b\x41\xa2\x1e\xb0\x8a\xbd", " CTL", 2}, // eth / CTL
{ 1, "\xe3\xfa\x17\x7a\xce\xcf\xb8\x67\x21\xcf\x6f\x9f\x42\x06\xbd\x3b\xd6\x72\xd7\xd5", " CTT", 18}, // eth / ChainTrade Token
{ 1, "\x66\x2a\xbc\xad\x0b\x7f\x34\x5a\xb7\xff\xb1\xb1\xfb\xb9\xdf\x78\x94\xf1\x8e\x66", " CTX", 18}, // eth / CarTaxi
{ 1, "\xda\x6c\xb5\x8a\x0d\x0c\x01\x61\x0a\x29\xc5\xa6\x5c\x30\x3e\x13\xe8\x85\x88\x7c", " cV", 18}, // eth / carVertical
{ 1, "\x41\xe5\x56\x00\x54\x82\x4e\xa6\xb0\x73\x2e\x65\x6e\x3a\xd6\x4e\x20\xe9\x4e\x45", " CVC", 8}, // eth / CVC
{ 1, "\x21\x34\x05\x7c\x0b\x46\x1f\x89\x8d\x37\x5c\xea\xd6\x52\xac\xae\x62\xb5\x95\x41", " CXC", 18}, // eth / CoxxxCoin
{ 1, "\xb6\xee\x96\x68\x77\x1a\x79\xbe\x79\x67\xee\x29\xa6\x3d\x41\x84\xf8\x09\x71\x43", " CXO", 18}, // eth / CargoX
{ 1, "\x3f\x06\xb5\xd7\x84\x06\xcd\x97\xbd\xf1\x0f\x5c\x42\x0b\x24\x1d\x32\x75\x9c\x80", " CYFM", 18}, // eth / CyberFM
{ 1, "\xda\xb0\xc3\x1b\xf3\x4c\x89\x7f\xb0\xfe\x90\xd1\x2e\xc9\x40\x1c\xaf\x5c\x36\xec", " DAB", 0}, // eth / DAB
{ 1, "\xfb\x2f\x26\xf2\x66\xfb\x28\x05\xa3\x87\x23\x0f\x2a\xa0\xa3\x31\xb4\xd9\x6f\xba", " DADI", 18}, // eth / DADI
{ 1, "\x89\xd2\x4a\x6b\x4c\xcb\x1b\x6f\xaa\x26\x25\xfe\x56\x2b\xdd\x9a\x23\x26\x03\x59", " DAI", 18}, // eth / Dai Stablecoin v1.0
{ 1, "\x07\xd9\xe4\x9e\xa4\x02\x19\x4b\xf4\x8a\x82\x76\xda\xfb\x16\xe4\xed\x63\x33\x17", " DALC", 8}, // eth / DaleCoin
{ 1, "\x9b\x70\x74\x0e\x70\x8a\x08\x3c\x6f\xf3\x8d\xf5\x22\x97\x02\x0f\x5d\xfa\xa5\xee", " DAN", 10}, // eth / DaneelToken
{ 1, "\xbb\x9b\xc2\x44\xd7\x98\x12\x3f\xde\x78\x3f\xcc\x1c\x72\xd3\xbb\x8c\x18\x94\x13", " DAO", 16}, // eth / DAO
{ 1, "\x81\xc9\x15\x1d\xe0\xc8\xba\xfc\xd3\x25\xa5\x7e\x3d\xb5\xa5\xdf\x1c\xeb\xf7\x9c", " DAT", 18}, // eth / Datum Token
{ 1, "\x1b\x5f\x21\xee\x98\xee\xd4\x8d\x29\x2e\x8e\x2d\x3e\xd8\x2b\x40\xa9\x72\x8a\x22", " DATABroker", 18}, // eth / DataBrokerDAO Token
{ 1, "\x0c\xf0\xee\x63\x78\x8a\x08\x49\xfe\x52\x97\xf3\x40\x7f\x70\x1e\x12\x2c\xc0\x23", " DATACoin", 18}, // eth / DATACoin
{ 1, "\xd8\x2d\xf0\xab\xd3\xf5\x14\x25\xeb\x15\xef\x75\x80\xfd\xa5\x57\x27\x87\x5f\x14", " DAV", 18}, // eth / DAV Token
{ 1, "\x61\x72\x5f\x3d\xb4\x00\x4a\xfe\x01\x47\x45\xb2\x1d\xab\x1e\x16\x77\xcc\x32\x8b", " DAXT", 18}, // eth / Digital Asset Exchange Token
{ 1, "\xe8\x14\xae\xe9\x60\xa8\x52\x08\xc3\xdb\x54\x2c\x53\xe7\xd4\xa6\xc8\xd5\xf6\x0f", " DAY", 18}, // eth / ChronoLogic DAY
{ 1, "\x38\x6f\xaa\x47\x03\xa3\x4a\x7f\xdb\x19\xbe\xc2\xe1\x4f\xd4\x27\xc9\x63\x84\x16", " DCA", 18}, // eth / DoBetAcceptBet
{ 1, "\xff\xa9\x3a\xac\xf4\x92\x97\xd5\x1e\x21\x18\x17\x45\x28\x39\x05\x2f\xdf\xb9\x61", " DCC", 18}, // eth / Distributed Credit Chain
{ 1, "\x39\x9a\x0e\x6f\xbe\xb3\xd7\x4c\x85\x35\x74\x39\xf4\xc8\xae\xd9\x67\x8a\x5c\xbf", " DCL", 3}, // eth / DCL
{ 1, "\x08\xd3\x2b\x0d\xa6\x3e\x2c\x3b\xcf\x80\x19\xc9\xc5\xd8\x49\xd7\xa9\xd7\x91\xe6", " DCN", 0}, // eth / Dentacoin
{ 1, "\xcc\x4e\xf9\xee\xaf\x65\x6a\xc1\xa2\xab\x88\x67\x43\xe9\x8e\x97\xe0\x90\xed\x38", " DDF", 18}, // eth / DDF
{ 1, "\x15\x12\x02\xc9\xc1\x8e\x49\x56\x56\xf3\x72\x28\x1f\x49\x3e\xb7\x69\x89\x61\xd5", " DEB", 18}, // eth / DEBITUM
{ 1, "\x07\x5c\x60\xee\x2c\xd3\x08\xff\x47\x87\x3b\x38\xbd\x9a\x0f\xa5\x85\x33\x82\xc4", " DEEZ", 18}, // eth / DeezNuts
{ 1, "\x35\x97\xbf\xd5\x33\xa9\x9c\x9a\xa0\x83\x58\x7b\x07\x44\x34\xe6\x1e\xb0\xa2\x58", " DENT", 8}, // eth / DENT
{ 1, "\x7c\xf2\x71\x96\x6f\x36\x34\x3b\xf0\x15\x0f\x25\xe5\x36\x4f\x79\x61\xc5\x82\x01", " DEPO", 0}, // eth / CRYPTODEPOZIT
{ 1, "\x89\xcb\xea\xc5\xe8\xa1\x3f\x0e\xbb\x4c\x74\xfa\xdf\xc6\x9b\xe8\x1a\x50\x11\x06", " DEPO (Depository Network)", 18}, // eth / DEPO (Depository Network)
{ 1, "\xdd\x94\xde\x9c\xfe\x06\x35\x77\x05\x1a\x5e\xb7\x46\x5d\x08\x31\x7d\x88\x08\xb6", " Devcon2 Token", 0}, // eth / Devcon2 Token
{ 1, "\xe0\xb7\x92\x7c\x4a\xf2\x37\x65\xcb\x51\x31\x4a\x0e\x05\x21\xa9\x64\x5f\x0e\x2a", " DGD", 9}, // eth / Digix DAO
{ 1, "\xf6\xcf\xe5\x3d\x6f\xeb\xae\xea\x05\x1f\x40\x0f\xf5\xfc\x14\xf0\xcb\xbd\xac\xa1", " DGPT", 18}, // eth / DigiPulse
{ 1, "\x6a\xed\xbf\x8d\xff\x31\x43\x72\x20\xdf\x35\x19\x50\xba\x2a\x33\x62\x16\x8d\x1b", " DGS", 8}, // eth / Dragonglass
{ 1, "\x1c\x83\x50\x14\x78\xf1\x32\x09\x77\x04\x70\x08\x49\x6d\xac\xbd\x60\xbb\x15\xef", " DGTX", 18}, // eth / DigitexFutures
{ 1, "\x4f\x3a\xfe\xc4\xe5\xa3\xf2\xa6\xa1\xa4\x11\xde\xf7\xd7\xdf\xe5\x0e\xe0\x57\xbf", " DGX", 9}, // eth / Digix Gold Token
{ 1, "\x55\xb9\xa1\x1c\x2e\x83\x51\xb4\xff\xc7\xb1\x15\x61\x14\x8b\xfa\xc9\x97\x78\x55", " DGX1", 9}, // eth / Digix Gold Token 1.0
{ 1, "\x2e\x07\x1d\x29\x66\xaa\x7d\x8d\xec\xb1\x00\x58\x85\xba\x19\x77\xd6\x03\x8a\x65", " DICE", 16}, // eth / Etheroll
{ 1, "\xc7\x19\xd0\x10\xb6\x3e\x5b\xbf\x2c\x05\x51\x87\x2c\xd5\x31\x6e\xd2\x6a\xcd\x83", " DIP", 18}, // eth / Decentralized Insurance Protocol
{ 1, "\x13\xf1\x1c\x99\x05\xa0\x8c\xa7\x6e\x3e\x85\x3b\xe6\x3d\x4f\x09\x44\x32\x6c\x72", " DIVX", 18}, // eth / DIVX
{ 1, "\xba\x18\x7b\x09\xff\xa8\xdd\xdc\x80\xd2\x57\x1e\xd3\xcb\xc4\xbe\x0a\xf6\x9e\x0c", " DKP", 18}, // eth / Draggin Karma Points
{ 1, "\x07\xe3\xc7\x06\x53\x54\x8b\x04\xf0\xa7\x59\x70\xc1\xf8\x1b\x4c\xbb\xfb\x60\x6f", " DLT", 18}, // eth / Agrello
{ 1, "\x2c\xcb\xff\x3a\x04\x2c\x68\x71\x6e\xd2\xa2\xcb\x0c\x54\x4a\x9f\x1d\x19\x35\xe1", " DMT", 8}, // eth / DMarket Token
{ 1, "\x0a\xbd\xac\xe7\x0d\x37\x90\x23\x5a\xf4\x48\xc8\x85\x47\x60\x3b\x94\x56\x04\xea", " DNT", 18}, // eth / District0x Network Token
{ 1, "\xe4\x3e\x20\x41\xdc\x37\x86\xe1\x66\x96\x1e\xd9\x48\x4a\x55\x39\x03\x3d\x10\xfb", " DNX", 18}, // eth / DenCity
{ 1, "\x76\x97\x4c\x7b\x79\xdc\x8a\x6a\x10\x9f\xd7\x1f\xd7\xce\xb9\xe4\x0e\xff\x53\x82", " DOW", 18}, // eth / DOW
{ 1, "\xee\xf6\xe9\x00\x34\xee\xa8\x9e\x31\xeb\x4b\x8e\xac\xd3\x23\xf2\x8a\x92\xea\xe4", " DOW", 18}, // eth / DOW
{ 1, "\x01\xb3\xec\x4a\xae\x1b\x87\x29\x52\x9b\xeb\x49\x65\xf2\x7d\x00\x87\x88\xb0\xeb", " DPP", 18}, // eth / Digital Assets Power Play
{ 1, "\x41\x9c\x4d\xb4\xb9\xe2\x5d\x6d\xb2\xad\x96\x91\xcc\xb8\x32\xc8\xd9\xfd\xa0\x5e", " DRGN", 18}, // eth / Dragon
{ 1, "\x3c\x75\x22\x65\x55\xfc\x49\x61\x68\xd4\x8b\x88\xdf\x83\xb9\x5f\x16\x77\x1f\x37", " DROP", 0}, // eth / Droplex
{ 1, "\x46\x72\xba\xd5\x27\x10\x74\x71\xcb\x50\x67\xa8\x87\xf4\x65\x6d\x58\x5a\x8a\x31", " DROP (dropil)", 18}, // eth / Dropil
{ 1, "\x27\x99\xd9\x0c\x6d\x44\xcb\x9a\xa5\xfb\xc3\x77\x17\x7f\x16\xc3\x3e\x05\x6b\x82", " DRP", 0}, // eth / Dripcoin
{ 1, "\x62\x1d\x78\xf2\xef\x2f\xd9\x37\xbf\xca\x69\x6c\xab\xaf\x9a\x77\x9f\x59\xb3\xed", " DRP", 2}, // eth / DCorp
{ 1, "\x62\xd4\xc0\x46\x44\x31\x4f\x35\x86\x8b\xa4\xc6\x5c\xc2\x7a\x77\x68\x1d\xe7\xa9", " DRVH", 18}, // eth / Driveholic Token
{ 1, "\x1e\x09\xbd\x8c\xad\xb4\x41\x63\x2e\x44\x1d\xb3\xe1\xd7\x99\x09\xee\x0a\x22\x56", " DSC", 1}, // eth / Digital Safe Coin
{ 1, "\x5a\xdc\x96\x1d\x6a\xc3\xf7\x06\x2d\x2e\xa4\x5f\xef\xb8\xd8\x16\x7d\x44\xb1\x90", " DTH", 18}, // eth / dether
{ 1, "\xd2\x34\xbf\x24\x10\xa0\x00\x9d\xf9\xc3\xc6\x3b\x61\x0c\x09\x73\x8f\x18\xcc\xd7", " DTR", 8}, // eth / DTR
{ 1, "\xf9\xf7\xc2\x9c\xfd\xf1\x9f\xcf\x1f\x2a\xa6\xb8\x4a\xa3\x67\xbc\xf1\xbd\x16\x76", " DTT", 18}, // eth / Delphi Tech Token
{ 1, "\x76\x5f\x0c\x16\xd1\xdd\xc2\x79\x29\x5c\x1a\x7c\x24\xb0\x88\x3f\x62\xd3\x3f\x75", " DTX", 18}, // eth / DaTa eXchange Token
{ 1, "\x82\xfd\xed\xfb\x76\x35\x44\x1a\xa5\xa9\x27\x91\xd0\x01\xfa\x73\x88\xda\x80\x25", " DTx", 18}, // eth / DigitalTicks
{ 1, "\x9c\x6f\xa4\x22\x09\x16\x9b\xce\xa0\x32\xe4\x01\x18\x8a\x6f\xc3\xe9\xc9\xf5\x9c", " DUBI", 18}, // eth / Decentralized Universal Basic Income
{ 1, "\xd4\xcf\xfe\xef\x10\xf6\x0e\xca\x58\x1b\x5e\x11\x46\xb5\xac\xa4\x19\x4a\x4c\x3b", " DUBI", 18}, // eth / Decentralized Universal Basic Income
{ 1, "\x99\x4f\x0d\xff\xdb\xae\x0b\xbf\x09\xb6\x52\xd6\xf1\x1a\x49\x3f\xd3\x3f\x42\xb9", " EAGLE", 18}, // eth / EagleCoin
{ 1, "\xaf\xc3\x97\x88\xc5\x1f\x0c\x1f\xf7\xb5\x53\x17\xf3\xe7\x02\x99\xe5\x21\xff\xf6", " eBCH", 8}, // eth / eBCH
{ 1, "\xeb\x7c\x20\x02\x71\x72\xe5\xd1\x43\xfb\x03\x0d\x50\xf9\x1c\xec\xe2\xd1\x48\x5d", " eBTC", 8}, // eth / eBTC
{ 1, "\xa5\x78\xac\xc0\xcb\x78\x75\x78\x1b\x78\x80\x90\x3f\x45\x94\xd1\x3c\xfa\x8b\x98", " ECN", 2}, // eth / ECN
{ 1, "\x17\xf9\x34\x75\xd2\xa9\x78\xf5\x27\xc3\xf7\xc4\x4a\xbf\x44\xad\xfb\xa6\x0d\x5c", " ECO2", 2}, // eth / EtherCO2
{ 1, "\xae\xa1\xc1\x8a\x99\x29\x84\x83\x10\x02\xd0\xcf\x90\xe2\x91\xfb\x52\xd7\x26\x49", " ECP", 18}, // eth / ECRYPTO COIN
{ 1, "\xfa\x1d\xe2\xee\x97\xe4\xc1\x0c\x94\xc9\x1c\xb2\xb5\x06\x2b\x89\xfb\x14\x0b\x82", " EDC", 6}, // eth / Education Credits
{ 1, "\x08\x71\x1d\x3b\x02\xc8\x75\x8f\x2f\xb3\xab\x4e\x80\x22\x84\x18\xa7\xf8\xe3\x9c", " EDG", 0}, // eth / Edgeless
{ 1, "\xce\xd4\xe9\x31\x98\x73\x4d\xda\xff\x84\x92\xd5\x25\xbd\x25\x8d\x49\xeb\x38\x8e", " EDO", 18}, // eth / Eidoo
{ 1, "\xc5\x28\xc2\x8f\xec\x0a\x90\xc0\x83\x32\x8b\xc4\x5f\x58\x7e\xe2\x15\x76\x0a\x0f", " EDR", 18}, // eth / Endor Protocol Token
{ 1, "\x5b\x26\xc5\xd0\x77\x2e\x5b\xba\xc8\xb3\x18\x2a\xe9\xa1\x3f\x9b\xb2\xd0\x37\x65", " EDU", 8}, // eth / EDU
{ 1, "\x2a\x22\xe5\xcc\xa0\x0a\x3d\x63\x30\x8f\xa3\x9f\x29\x20\x2e\xb1\xb3\x9e\xef\x52", " EDU", 6}, // eth / EDU Token
{ 1, "\xb5\x3a\x96\xbc\xbd\xd9\xcf\x78\xdf\xf2\x0b\xab\x6c\x2b\xe7\xba\xec\x8f\x00\xf8", " eGAS", 8}, // eth / ETH GAS
{ 1, "\x8e\x1b\x44\x8e\xc7\xad\xfc\x7f\xa3\x5f\xc2\xe8\x85\x67\x8b\xd3\x23\x17\x6e\x34", " EGT", 18}, // eth / Egretia Token
{ 1, "\xf9\xf0\xfc\x71\x67\xc3\x11\xdd\x2f\x1e\x21\xe9\x20\x4f\x87\xeb\xa9\x01\x2f\xb2", " EHT", 8}, // eth / EasyHomes
{ 1, "\xbf\x21\x79\x85\x9f\xc6\xd5\xbe\xe9\xbf\x91\x58\x63\x2d\xc5\x16\x78\xa4\x10\x0e", " ELF", 18}, // eth / ELF Token
{ 1, "\xc8\xc6\xa3\x1a\x4a\x80\x6d\x37\x10\xa7\xb3\x8b\x7b\x29\x6d\x2f\xab\xcc\xdb\xa8", " ELIX", 18}, // eth / Elixir Token
{ 1, "\x44\x19\x7a\x4c\x44\xd6\xa0\x59\x29\x7c\xaf\x6b\xe4\xf7\xe1\x72\xbd\x56\xca\xaf", " ELTCOIN", 8}, // eth / ELTCOIN
{ 1, "\xa9\x55\x92\xdc\xff\xa3\xc0\x80\xb4\xb4\x0e\x45\x9c\x5f\x56\x92\xf6\x7d\xb7\xf8", " ELY", 18}, // eth / ELYCOIN
{ 1, "\xb6\x7b\x88\xa2\x57\x08\xa3\x5a\xe7\xc2\xd7\x36\xd3\x98\xd2\x68\xce\x4f\x7f\x83", " EMON", 8}, // eth / Etheremon
{ 1, "\x95\xda\xaa\xb9\x80\x46\x84\x6b\xf4\xb2\x85\x3e\x23\xcb\xa2\x36\xfa\x39\x4a\x31", " EMONT", 8}, // eth / Etheremon Token
{ 1, "\x95\x01\xbf\xc4\x88\x97\xdc\xee\xad\xf7\x31\x13\xef\x63\x5d\x2f\xf7\xee\x4b\x97", " EMT", 18}, // eth / easyMINE Token
{ 1, "\xb8\x02\xb2\x4e\x06\x37\xc2\xb8\x7d\x2e\x8b\x77\x84\xc0\x55\xbb\xe9\x21\x01\x1a", " EMV", 2}, // eth / EMovieVenture
{ 1, "\x03\x9f\x50\x50\xde\x49\x08\xf9\xb5\xdd\xf4\x0a\x4f\x3a\xa3\xf3\x29\x08\x63\x87", " ENC", 18}, // eth / Ethernet.Cash
{ 1, "\xf0\xee\x6b\x27\xb7\x59\xc9\x89\x3c\xe4\xf0\x94\xb4\x9a\xd2\x8f\xd1\x5a\x23\xe4", " ENG", 8}, // eth / Enigma
{ 1, "\xf6\x29\xcb\xd9\x4d\x37\x91\xc9\x25\x01\x52\xbd\x8d\xfb\xdf\x38\x0e\x2a\x3b\x9c", " ENJ", 18}, // eth / ENJIN
{ 1, "\x5b\xc7\xe5\xf0\xab\x8b\x2e\x10\xd2\xd0\xa3\xf2\x17\x39\xfc\xe6\x24\x59\xae\xf3", " ENTRP", 18}, // eth / Hut34 Entropy Token
{ 1, "\x86\xfa\x04\x98\x57\xe0\x20\x9a\xa7\xd9\xe6\x16\xf7\xeb\x3b\x3b\x78\xec\xfd\xb0", " EOS", 18}, // eth / EOS
{ 1, "\x7e\x9e\x43\x1a\x0b\x8c\x4d\x53\x2c\x74\x5b\x10\x43\xc7\xfa\x29\xa4\x8d\x4f\xba", " eosDAC", 18}, // eth / eosDAC
{ 1, "\x35\xba\xa7\x20\x38\xf1\x27\xf9\xf8\xc8\xf9\xb4\x91\x04\x9f\x64\xf3\x77\x91\x4d", " EPX", 4}, // eth / ethPoker.io EPX
{ 1, "\xe8\xa1\xdf\x95\x8b\xe3\x79\x04\x5e\x2b\x46\xa3\x1a\x98\xb9\x3a\x2e\xcd\xfd\xed", " ESZ", 18}, // eth / ESZCoin
{ 1, "\x1b\x97\x43\xf5\x56\xd6\x5e\x75\x7c\x4c\x65\x0b\x45\x55\xba\xf3\x54\xcb\x8b\xd3", " ETBS", 12}, // eth / Ethbits
{ 1, "\xdd\x74\xa7\xa3\x76\x9f\xa7\x25\x61\xb3\xa6\x9e\x65\x96\x8f\x49\x74\x8c\x69\x0c", " ETCH", 18}, // eth / ETCH
{ 1, "\x3a\x26\x74\x6d\xdb\x79\xb1\xb8\xe4\x45\x0e\x3f\x4f\xfe\x32\x85\xa3\x07\x38\x7e", " ETHB", 8}, // eth / EtherBTC
{ 1, "\x69\x27\xc6\x9f\xb4\xda\xf2\x04\x3f\xbb\x1c\xb7\xb8\x6c\x56\x61\x41\x6b\xea\x29", " ETR", 18}, // eth / Etheruem Risen
{ 1, "\xab\xdf\x14\x78\x70\x23\x5f\xcf\xc3\x41\x53\x82\x8c\x76\x9a\x70\xb3\xfa\xe0\x1f", " EURT", 6}, // eth / EUR Tether (erc20)
{ 1, "\x52\x36\x30\x97\x6e\xb6\x14\x76\x21\xb5\xc3\x1c\x78\x1e\xbe\x2e\xc2\xa8\x06\xe0", " eUSD", 18}, // eth / Ether-Backed USD Nomins (erc20)
{ 1, "\x92\x31\x08\xa4\x39\xc4\xe8\xc2\x31\x5c\x4f\x65\x21\xe5\xce\x95\xb4\x4e\x9b\x4c", " EVE", 18}, // eth / EVE
{ 1, "\xd7\x80\xae\x2b\xf0\x4c\xd9\x6e\x57\x7d\x3d\x01\x47\x62\xf8\x31\xd9\x71\x29\xd0", " EVN", 18}, // eth / Envion AG
{ 1, "\xf3\xdb\x5f\xa2\xc6\x6b\x7a\xf3\xeb\x0c\x0b\x78\x25\x10\x81\x6c\xbe\x48\x13\xb8", " EVX", 4}, // eth / EVX Token
{ 1, "\xc9\x8e\x06\x39\xc6\xd2\xec\x03\x7a\x61\x53\x41\xc3\x69\x66\x6b\x11\x0e\x80\xe5", " EXMR", 8}, // eth / eXMRcoin
{ 1, "\x5c\x74\x3a\x35\xe9\x03\xf6\xc5\x84\x51\x4e\xc6\x17\xac\xee\x06\x11\xcf\x44\xf3", " EXY", 18}, // eth / Experty
{ 1, "\x19\x0e\x56\x9b\xe0\x71\xf4\x0c\x70\x4e\x15\x82\x5f\x28\x54\x81\xcb\x74\xb6\xcc", " FAM", 12}, // eth / FAM
{ 1, "\x90\x16\x2f\x41\x88\x6c\x09\x46\xd0\x99\x99\x73\x6f\x1c\x15\xc8\xa1\x05\xa4\x21", " FAN", 18}, // eth / Fan Token
{ 1, "\x7f\x67\x15\xc3\xfc\x47\x40\xa0\x2f\x70\xde\x85\xb9\xfd\x50\xac\x60\x01\xfe\xd9", " FANX", 18}, // eth / FANX Token
{ 1, "\x7d\xcb\x3b\x23\x56\xc8\x22\xd3\x57\x7d\x4d\x06\x0d\x0d\x5d\x78\xc8\x60\x48\x8c", " FANX", 18}, // eth / FANX Token
{ 1, "\x00\x9e\x86\x49\x23\xb4\x92\x63\xc7\xf1\x0d\x19\xb7\xf8\xab\x7a\x9a\x5a\xad\x33", " FKX", 18}, // eth / Knoxstertoken
{ 1, "\xf0\x4a\x8a\xc5\x53\xfc\xed\xb5\xba\x99\xa6\x47\x99\x15\x58\x26\xc1\x36\xb0\xbe", " FLIXX", 18}, // eth / FLIXX
{ 1, "\x04\xcc\x78\x3b\x45\x0b\x8d\x11\xf3\xc7\xd0\x0d\xd0\x3f\xdf\x7f\xb5\x1f\xe9\xf2", " FLMC", 18}, // eth / Filmscoin
{ 1, "\x59\x76\xf7\xda\xc1\x52\x5e\xf3\x27\x78\x36\x04\x3b\xa4\x74\xa3\x5e\x6b\x42\x72", " FLMC", 0}, // eth / Filmscoin
{ 1, "\x3a\x1b\xda\x28\xad\xb5\xb0\xa8\x12\xa7\xcf\x10\xa1\x95\x0c\x92\x0f\x79\xbc\xd3", " FLP", 18}, // eth / FLIP Token
{ 1, "\x9a\xef\xbe\x0b\x3c\x3b\xa9\xea\xb2\x62\xcb\x98\x56\xe8\x15\x7a\xb7\x64\x8e\x09", " FLR", 18}, // eth / Flair Coin
{ 1, "\x95\x4b\x5d\xe0\x9a\x55\xe5\x97\x55\xac\xbd\xa2\x9e\x1e\xb7\x4a\x45\xd3\x01\x75", " FLUZ", 18}, // eth / Fluz Fluz Global
{ 1, "\x70\xb1\x47\xe0\x1e\x92\x85\xe7\xce\x68\xb9\xba\x43\x7f\xe3\xa9\x19\x0e\x75\x6a", " FLX", 18}, // eth / BitFlux
{ 1, "\x4d\xf4\x7b\x49\x69\xb2\x91\x1c\x96\x65\x06\xe3\x59\x2c\x41\x38\x94\x93\x95\x3b", " FND", 18}, // eth / FundRequest
{ 1, "\x0a\xbe\xfb\x76\x11\xcb\x3a\x01\xea\x3f\xad\x85\xf3\x3c\x3c\x93\x4f\x8e\x2c\xf4", " FRD", 18}, // eth / FARAD Cryptoken
{ 1, "\xe6\xf7\x4d\xcf\xa0\xe2\x08\x83\x00\x8d\x8c\x16\xb6\xd9\xa3\x29\x18\x9d\x0c\x30", " FTC", 2}, // eth / FTC
{ 1, "\x20\x23\xdc\xf7\xc4\x38\xc8\xc8\xc0\xb0\xf2\x8d\xba\xe1\x55\x20\xb4\xf3\xee\x20", " FTR", 18}, // eth / Futourist Token
{ 1, "\x2a\xec\x18\xc5\x50\x0f\x21\x35\x9c\xe1\xbe\xa5\xdc\x17\x77\x34\x4d\xf4\xc0\xdc", " FTT", 18}, // eth / FarmaTrust Token
{ 1, "\x41\x87\x5c\x23\x32\xb0\x87\x7c\xdf\xaa\x69\x9b\x64\x14\x02\xb7\xd4\x64\x2c\x32", " FTXT", 8}, // eth / FUTURAX
{ 1, "\x65\xbe\x44\xc7\x47\x98\x8f\xbf\x60\x62\x07\x69\x8c\x94\x4d\xf4\x44\x2e\xfe\x19", " FUCK", 4}, // eth / Finally Usable Crypto Karma
{ 1, "\xab\x16\xe0\xd2\x5c\x06\xcb\x37\x62\x59\xcc\x18\xc1\xde\x4a\xca\x57\x60\x55\x89", " FUCK", 4}, // eth / FinallyUsableCryptoKarma
{ 1, "\xea\x38\xea\xa3\xc8\x6c\x8f\x9b\x75\x15\x33\xba\x2e\x56\x2d\xeb\x9a\xcd\xed\x40", " FUEL", 18}, // eth / Etherparty FUEL
{ 1, "\x41\x9d\x0d\x8b\xdd\x9a\xf5\xe6\x06\xae\x22\x32\xed\x28\x5a\xff\x19\x0e\x71\x1b", " FUN", 8}, // eth / Funfair
{ 1, "\xc9\x2d\x6e\x3e\x64\x30\x2c\x59\xd7\x34\xf3\x29\x2e\x2a\x13\xa1\x3d\x7e\x18\x17", " FXC", 8}, // eth / FUTURAX
{ 1, "\x88\xfc\xfb\xc2\x2c\x6d\x3d\xba\xa2\x5a\xf4\x78\xc5\x78\x97\x83\x39\xbd\xe7\x7a", " FYN", 18}, // eth / Fund Yourself Now
{ 1, "\xf6\x74\x51\xdc\x84\x21\xf0\xe0\xaf\xeb\x52\xfa\xa8\x10\x10\x34\xed\x08\x1e\xd9", " GAM", 8}, // eth / Gambit
{ 1, "\x67\x54\xe2\x1b\x9e\xaa\x05\x3c\x62\xd7\x85\x4d\xd6\x56\x1a\xe4\x51\xb0\xcb\xcf", " GANA", 18}, // eth / GANA
{ 1, "\xc0\xea\x63\x06\xf6\x36\x0f\xe7\xdc\xab\x65\xd1\x6b\xf1\xa3\xaf\x92\xc7\x9a\xa2", " GANA", 18}, // eth / GANA
{ 1, "\x70\x88\x76\xf4\x86\xe4\x48\xee\x89\xeb\x33\x2b\xfb\xc8\xe5\x93\x55\x30\x58\xb9", " GAVEL", 18}, // eth / GAVEL
{ 1, "\x75\x85\xf8\x35\xae\x2d\x52\x27\x22\xd2\x68\x43\x23\xa0\xba\x83\x40\x1f\x32\xf5", " GBT", 18}, // eth / GBT
{ 1, "\x12\xfc\xd6\x46\x3e\x66\x97\x4c\xf7\xbb\xc2\x4f\xfc\x4d\x40\xd6\xbe\x45\x82\x83", " GBX", 18}, // eth / Globitex
{ 1, "\xdb\x0f\x69\x30\x6f\xf8\xf9\x49\xf2\x58\xe8\x3f\x6b\x87\xee\x5d\x05\x2d\x0b\x23", " GCP", 18}, // eth / Globcoin Crypto Platform
{ 1, "\x4f\x4f\x0d\xb4\xde\x90\x3b\x88\xf2\xb1\xa2\x84\x79\x71\xe2\x31\xd5\x4f\x8f\xd3", " GEE", 8}, // eth / Geens NPO
{ 1, "\x24\x08\x3b\xb3\x00\x72\x64\x3c\x3b\xb9\x0b\x44\xb7\x28\x58\x60\xa7\x55\xe6\x87", " GELD", 18}, // eth / GELD
{ 1, "\x54\x3f\xf2\x27\xf6\x4a\xa1\x7e\xa1\x32\xbf\x98\x86\xca\xb5\xdb\x55\xdc\xad\xdf", " GEN", 18}, // eth / DAOstack
{ 1, "\x8a\x85\x42\x88\xa5\x97\x60\x36\xa7\x25\x87\x91\x64\xca\x3e\x91\xd3\x0c\x6a\x1b", " GET", 18}, // eth / GET
{ 1, "\xfc\xd8\x62\x98\x56\x28\xb2\x54\x06\x1f\x7a\x91\x80\x35\xb8\x03\x40\xd0\x45\xd3", " GIF", 18}, // eth / GIFcoin Token
{ 1, "\xae\x4f\x56\xf0\x72\xc3\x4c\x0a\x65\xb3\xae\x3e\x4d\xb7\x97\xd8\x31\x43\x9d\x93", " GIM", 8}, // eth / Gimli
{ 1, "\xb3\xbd\x49\xe2\x8f\x8f\x83\x2b\x8d\x1e\x24\x61\x06\x99\x1e\x54\x6c\x32\x35\x02", " GMT", 18}, // eth / GMT
{ 1, "\x68\x10\xe7\x76\x88\x0c\x02\x93\x3d\x47\xdb\x1b\x9f\xc0\x59\x08\xe5\x38\x6b\x96", " GNO", 18}, // eth / Gnosis
{ 1, "\xa7\x44\x76\x44\x31\x19\xa9\x42\xde\x49\x85\x90\xfe\x1f\x24\x54\xd7\xd4\xac\x0d", " GNT", 18}, // eth / Golem
{ 1, "\xea\xb4\x31\x93\xcf\x06\x23\x07\x3c\xa8\x9d\xb9\xb7\x12\x79\x63\x56\xfa\x74\x14", " GOLDX", 18}, // eth / GOLDX
{ 1, "\x12\xb1\x9d\x3e\x2c\xcc\x14\xda\x04\xfa\xe3\x3e\x63\x65\x2c\xe4\x69\xb3\xf2\xfd", " GRID", 12}, // eth / GRID
{ 1, "\x0a\x9a\x9c\xe6\x00\xd0\x8b\xf9\xb7\x6f\x49\xfa\x4e\x7b\x38\xa6\x7e\xbe\xb1\xe6", " GROW", 8}, // eth / Growchain
{ 1, "\xe5\x30\x44\x1f\x4f\x73\xbd\xb6\xdc\x2f\xa5\xaf\x7c\x3f\xc5\xfd\x55\x1e\xc8\x38", " GSE", 4}, // eth / GSENetwork
{ 1, "\xb7\x08\x35\xd7\x82\x2e\xbb\x94\x26\xb5\x65\x43\xe3\x91\x84\x6c\x10\x7b\xd3\x2c", " GTC", 18}, // eth / GTC Token
{ 1, "\x02\x5a\xba\xd9\xe5\x18\x51\x6f\xda\xaf\xbd\xcd\xb9\x70\x1b\x37\xfb\x7e\xf0\xfa", " GTKT", 0}, // eth / GTKT
{ 1, "\xc5\xbb\xae\x50\x78\x1b\xe1\x66\x93\x06\xb9\xe0\x01\xef\xf5\x7a\x29\x57\xb0\x9d", " GTO", 5}, // eth / Gifto
{ 1, "\x98\x47\x34\x5d\xe8\xb6\x14\xc9\x56\x14\x6b\xbe\xa5\x49\x33\x6d\x9c\x8d\x26\xb6", " GULD", 8}, // eth / GULD ERC20
{ 1, "\xf7\xb0\x98\x29\x8f\x7c\x69\xfc\x14\x61\x0b\xf7\x1d\x5e\x02\xc6\x07\x92\x89\x4c", " GUP", 3}, // eth / GUP
{ 1, "\x10\x3c\x3a\x20\x9d\xa5\x9d\x3e\x7c\x4a\x89\x30\x7e\x66\x52\x1e\x08\x1c\xfd\xf0", " GVT", 18}, // eth / Genesis Vision
{ 1, "\x58\xca\x30\x65\xc0\xf2\x4c\x7c\x96\xae\xe8\xd6\x05\x6b\x5b\x5d\xec\xf9\xc2\xf8", " GXC", 10}, // eth / GXC
{ 1, "\x22\xf0\xaf\x8d\x78\x85\x1b\x72\xee\x79\x9e\x05\xf5\x4a\x77\x00\x15\x86\xb1\x8a", " GXVC", 10}, // eth / Genevieve VC
{ 1, "\x8c\x65\xe9\x92\x29\x7d\x5f\x09\x2a\x75\x6d\xef\x24\xf4\x78\x1a\x28\x01\x98\xff", " GZE", 18}, // eth / GazeCoin
{ 1, "\xe6\x38\xdc\x39\xb6\xad\xbe\xe8\x52\x6b\x5c\x22\x38\x0b\x4b\x45\xda\xf4\x6d\x8e", " GZR", 6}, // eth / Gizer
{ 1, "\x5a\x56\x7e\x28\xdb\xfa\x2b\xbd\x3e\xf1\x3c\x0a\x01\xbe\x11\x47\x45\x34\x96\x57", " HAPPY", 2}, // eth / Happiness
{ 1, "\x90\x02\xd4\x48\x5b\x75\x94\xe3\xe8\x50\xf0\xa2\x06\x71\x3b\x30\x51\x13\xf6\x9e", " HAT", 18}, // eth / Hawala Today
{ 1, "\xc0\x11\xa7\x24\x00\xe5\x8e\xcd\x99\xee\x49\x7c\xf8\x9e\x37\x75\xd4\xbd\x73\x2f", " HAV", 18}, // eth / Havven
{ 1, "\xff\xe8\x19\x6b\xc2\x59\xe8\xde\xdc\x54\x4d\x93\x57\x86\xaa\x47\x09\xec\x3e\x64", " HDG", 18}, // eth / Hedge Crypto
{ 1, "\xe9\xff\x07\x80\x9c\xcf\xf0\x5d\xae\x74\x99\x0e\x25\x83\x1d\x0b\xc5\xcb\xe5\x75", " Hdp", 18}, // eth / HEdpAY
{ 1, "\xba\x21\x84\x52\x0a\x1c\xc4\x9a\x61\x59\xc5\x7e\x61\xe1\x84\x4e\x08\x56\x15\xb6", " HGT", 8}, // eth / HGT
{ 1, "\x9b\xb1\xdb\x14\x45\xb8\x32\x13\xa5\x6d\x90\xd3\x31\x89\x4b\x3f\x26\x21\x8e\x4e", " HIBT", 18}, // eth / HiBTC Token
{ 1, "\xa9\x24\x0f\xbc\xac\x1f\x0b\x9a\x6a\xdf\xb0\x4a\x53\xc8\xe3\xb0\xcc\x1d\x14\x44", " HIG", 18}, // eth / ethereumhigh
{ 1, "\x14\xf3\x7b\x57\x42\x42\xd3\x66\x55\x8d\xb6\x1f\x33\x35\x28\x9a\x50\x35\xc5\x06", " HKG", 3}, // eth / HKG
{ 1, "\x88\xac\x94\xd5\xd1\x75\x13\x03\x47\xfc\x95\xe1\x09\xd7\x7a\xc0\x9d\xbf\x5a\xb7", " HKY", 18}, // eth / Hicky
{ 1, "\xcb\xcc\x0f\x03\x6e\xd4\x78\x8f\x63\xfc\x0f\xee\x32\x87\x3d\x6a\x74\x87\xb9\x08", " HMQ", 8}, // eth / HMQ
{ 1, "\xb4\x5d\x7b\xc4\xce\xbc\xab\x98\xad\x09\xba\xbd\xf8\xc8\x18\xb2\x29\x2b\x67\x2c", " HODL", 18}, // eth / HODLCoin
{ 1, "\x5b\x07\x51\x71\x3b\x25\x27\xd7\xf0\x02\xc0\xc4\xe2\xa3\x7e\x12\x19\x61\x0a\x6b", " HORSE", 18}, // eth / HORSE
{ 1, "\x6c\x6e\xe5\xe3\x1d\x82\x8d\xe2\x41\x28\x2b\x96\x06\xc8\xe9\x8e\xa4\x85\x26\xe2", " HOT", 18}, // eth / HoloToken
{ 1, "\x9a\xf8\x39\x68\x7f\x6c\x94\x54\x2a\xc5\xec\xe2\xe3\x17\xda\xae\x35\x54\x93\xa1", " HOT", 18}, // eth / Hydro Protocol
{ 1, "\x55\x4c\x20\xb7\xc4\x86\xbe\xee\x43\x92\x77\xb4\x54\x0a\x43\x45\x66\xdc\x4c\x02", " HST", 18}, // eth / HST
{ 1, "\xc0\xeb\x85\x28\x5d\x83\x21\x7c\xd7\xc8\x91\x70\x2b\xcb\xc0\xfc\x40\x1e\x2d\x9d", " HVN", 8}, // eth / Hive Project
{ 1, "\xeb\xbd\xf3\x02\xc9\x40\xc6\xbf\xd4\x9c\x6b\x16\x5f\x45\x7f\xdb\x32\x46\x49\xbc", " HYDRO", 18}, // eth / Hydro
{ 1, "\xc1\xe2\x09\x7d\x78\x8d\x33\x70\x1b\xa3\xcc\x27\x73\xbf\x67\x15\x5e\xc9\x3f\xc4", " IAD", 18}, // eth / IADOWR Coin
{ 1, "\x5a\x84\x96\x9b\xb6\x63\xfb\x64\xf6\xd0\x15\xdc\xf9\xf6\x22\xae\xdc\x79\x67\x50", " ICE", 18}, // eth / ICE
{ 1, "\x88\x86\x66\xca\x69\xe0\xf1\x78\xde\xd6\xd7\x5b\x57\x26\xce\xe9\x9a\x87\xd6\x98", " ICN", 18}, // eth / ICN
{ 1, "\xa3\x3e\x72\x9b\xf4\xfd\xeb\x86\x8b\x53\x4e\x1f\x20\x52\x34\x63\xd9\xc4\x6b\xee", " ICO", 10}, // eth / ICO
{ 1, "\x01\x4b\x50\x46\x65\x90\x34\x0d\x41\x30\x7c\xc5\x4d\xce\xe9\x90\xc8\xd5\x8a\xa8", " ICOS", 6}, // eth / ICOS
{ 1, "\xb5\xa5\xf2\x26\x94\x35\x2c\x15\xb0\x03\x23\x84\x4a\xd5\x45\xab\xb2\xb1\x10\x28", " ICX", 18}, // eth / ICON
{ 1, "\x81\x4c\xaf\xd4\x78\x2d\x2e\x72\x81\x70\xfd\xa6\x82\x57\x98\x3f\x03\x32\x1c\x58", " IDEA", 0}, // eth / IDEA Token
{ 1, "\x76\x54\x91\x5a\x1b\x82\xd6\xd2\xd0\xaf\xc3\x7c\x52\xaf\x55\x6e\xa8\x98\x3c\x7e", " IFT", 18}, // eth / InvestFeed
{ 1, "\x16\x66\x2f\x73\xdf\x3e\x79\xe5\x4c\x6c\x59\x38\xb4\x31\x3f\x92\xc5\x24\xc1\x20", " IIC", 18}, // eth / IIC
{ 1, "\x88\xae\x96\x84\x5e\x15\x75\x58\xef\x59\xe9\xff\x90\xe7\x66\xe2\x2e\x48\x03\x90", " IKB", 0}, // eth / IKB
{ 1, "\xe3\x83\x1c\x5a\x98\x2b\x27\x9a\x19\x84\x56\xd5\x77\xcf\xb9\x04\x24\xcb\x63\x40", " IMC", 6}, // eth / Immune Coin
{ 1, "\x22\xe5\xf6\x2d\x0f\xa1\x99\x74\x74\x9f\xaa\x19\x4e\x3d\x3e\xf6\xd8\x9c\x08\xd7", " IMT", 0}, // eth / IMT
{ 1, "\xf8\xe3\x86\xed\xa8\x57\x48\x4f\x5a\x12\xe4\xb5\xda\xa9\x98\x4e\x06\xe7\x37\x05", " IND", 18}, // eth / Indorse
{ 1, "\x48\xe5\x41\x3b\x73\xad\xd2\x43\x4e\x47\x50\x4e\x2a\x22\xd1\x49\x40\xdb\xfe\x78", " INRM", 3}, // eth / Integrated Money
{ 1, "\x5b\x2e\x4a\x70\x0d\xfb\xc5\x60\x06\x1e\x95\x7e\xde\xc8\xf6\xee\xeb\x74\xa3\x20", " INS", 10}, // eth / INS
{ 1, "\xc7\x2f\xe8\xe3\xdd\x5b\xef\x0f\x9f\x31\xf2\x59\x39\x9f\x30\x12\x72\xef\x2a\x2d", " INSTAR", 18}, // eth / Insights Network
{ 1, "\xa8\x00\x6c\x4c\xa5\x6f\x24\xd6\x83\x67\x27\xd1\x06\x34\x93\x20\xdb\x7f\xef\x82", " INXT", 8}, // eth / Internxt
{ 1, "\xfa\x1a\x85\x6c\xfa\x34\x09\xcf\xa1\x45\xfa\x4e\x20\xeb\x27\x0d\xf3\xeb\x21\xab", " IOST", 18}, // eth / IOSToken
{ 1, "\xc3\x4b\x21\xf6\xf8\xe5\x1c\xc9\x65\xc2\x39\x3b\x3c\xcf\xa3\xb8\x2b\xeb\x24\x03", " IoT", 6}, // eth / IoTコイン
{ 1, "\x6f\xb3\xe0\xa2\x17\x40\x7e\xff\xf7\xca\x06\x2d\x46\xc2\x6e\x5d\x60\xa1\x4d\x69", " IOTX", 18}, // eth / IoTeX Network
{ 1, "\x64\xcd\xf8\x19\xd3\xe7\x5a\xc8\xec\x21\x7b\x34\x96\xd7\xce\x16\x7b\xe4\x2e\x80", " IPL", 18}, // eth / InsurePal token
{ 1, "\x00\x1f\x0a\xa5\xda\x15\x58\x5e\x5b\x23\x05\xdb\xab\x2b\xac\x42\x5e\xa7\x10\x07", " IPSX", 18}, // eth / IPSX
{ 1, "\x0d\xb8\xd8\xb7\x6b\xc3\x61\xba\xcb\xb7\x2e\x2c\x49\x1e\x06\x08\x5a\x97\xab\x31", " IQN", 18}, // eth / IQeon
{ 1, "\x0c\xf7\x13\xb1\x1c\x9b\x98\x6e\xc4\x0d\x65\xbd\x4f\x7f\xbd\x50\xf6\xff\x2d\x64", " IST34", 18}, // eth / IST34 Token
{ 1, "\x5e\x6b\x6d\x9a\xba\xd9\x09\x3f\xdc\x86\x1e\xa1\x60\x0e\xba\x1b\x35\x5c\xd9\x40", " ITC", 18}, // eth / IoT Chain
{ 1, "\x0a\xef\x06\xdc\xcc\xc5\x31\xe5\x81\xf0\x44\x00\x59\xe6\xff\xcc\x20\x60\x39\xee", " ITT", 8}, // eth / ITT Token
{ 1, "\xfc\xa4\x79\x62\xd4\x5a\xdf\xdf\xd1\xab\x2d\x97\x23\x15\xdb\x4c\xe7\xcc\xf0\x94", " IXT", 8}, // eth / InsureX
{ 1, "\x0d\x26\x2e\x5d\xc4\xa0\x6a\x0f\x1c\x90\xce\x79\xc7\xa6\x0c\x09\xdf\xc8\x84\xe4", " J8T", 8}, // eth / J8T Token
{ 1, "\x0a\xaf\x56\x1e\xff\x5b\xd9\xc8\xf9\x11\x61\x69\x33\xf8\x41\x66\xa1\x7c\xfe\x0c", " JBX", 0}, // eth / JBX
{ 1, "\x88\x4e\x39\x02\xc4\xd5\xcf\xa8\x6d\xe4\xac\xe7\xa9\x6a\xa9\x1e\xbc\x25\xc0\xff", " JBX", 18}, // eth / JBOX
{ 1, "\x87\x27\xc1\x12\xc7\x12\xc4\xa0\x33\x71\xac\x87\xa7\x4d\xd6\xab\x10\x4a\xf7\x68", " JET", 18}, // eth / JET
{ 1, "\x77\x34\x50\x33\x5e\xd4\xec\x3d\xb4\x5a\xf7\x4f\x34\xf2\xc8\x53\x48\x64\x5d\x39", " JetCoins", 18}, // eth / JetCoins
{ 1, "\xa5\xfd\x1a\x79\x1c\x4d\xfc\xaa\xcc\x96\x3d\x4f\x73\xc6\xae\x58\x24\x14\x9e\xa7", " JNT", 18}, // eth / JNT
{ 1, "\xdd\xe1\x2a\x12\xa6\xf6\x71\x56\xe0\xda\x67\x2b\xe0\x5c\x37\x4e\x1b\x0a\x3e\x57", " JOY", 6}, // eth / JOYSO
{ 1, "\x0d\x6d\xd9\xf6\x8d\x24\xec\x1d\x5f\xe2\x17\x4f\x3e\xc8\xda\xb5\x2b\x52\xba\xf5", " KC", 18}, // eth / KMCC
{ 1, "\x72\xd3\x2a\xc1\xc5\xe6\x6b\xfc\x5b\x08\x80\x62\x71\xf8\xee\xf9\x15\x54\x51\x64", " KEE", 0}, // eth / CryptoKEE
{ 1, "\x4c\xc1\x93\x56\xf2\xd3\x73\x38\xb9\x80\x2a\xa8\xe8\xfc\x58\xb0\x37\x32\x96\xe7", " KEY", 18}, // eth / SelfKey
{ 1, "\x4c\xd9\x88\xaf\xba\xd3\x72\x89\xba\xaf\x53\xc1\x3e\x98\xe2\xbd\x46\xaa\xea\x8c", " KEY", 18}, // eth / BihuKey
{ 1, "\x27\x69\x5e\x09\x14\x9a\xdc\x73\x8a\x97\x8e\x9a\x67\x8f\x99\xe4\xc3\x9e\x9e\xb9", " KICK", 8}, // eth / KICK
{ 1, "\x81\x8f\xc6\xc2\xec\x59\x86\xbc\x6e\x2c\xbf\x00\x93\x9d\x90\x55\x6a\xb1\x2c\xe5", " KIN", 18}, // eth / Kin Foundation
{ 1, "\xdd\x97\x4d\x5c\x2e\x29\x28\xde\xa5\xf7\x1b\x98\x25\xb8\xb6\x46\x68\x6b\xd2\x00", " KNC", 18}, // eth / Kyber Network
{ 1, "\xb5\xc3\x3f\x96\x5c\x88\x99\xd2\x55\xc3\x4c\xdd\x2a\x3e\xfa\x8a\xbc\xbb\x3d\xea", " KPR", 18}, // eth / KPRCoin
{ 1, "\x46\x4e\xbe\x77\xc2\x93\xe4\x73\xb4\x8c\xfe\x96\xdd\xcf\x88\xfc\xf7\xbf\xda\xc0", " KRL", 18}, // eth / Kryll
{ 1, "\x95\x41\xfd\x8b\x9b\x5f\xa9\x73\x81\x78\x37\x83\xce\xbf\x2f\x5f\xa7\x93\xc2\x62", " KZN", 8}, // eth / KaizenCoin
{ 1, "\xe5\x03\x65\xf5\xd6\x79\xcb\x98\xa1\xdd\x62\xd6\xf6\xe5\x8e\x59\x32\x1b\xcd\xdf", " LA", 18}, // eth / LATOKEN
{ 1, "\xfd\x10\x7b\x47\x3a\xb9\x0e\x8f\xbd\x89\x87\x21\x44\xa3\xdc\x92\xc4\x0f\xa8\xc9", " LALA", 18}, // eth / LALA World Token
{ 1, "\x51\x02\x79\x1c\xa0\x2f\xc3\x59\x53\x98\x40\x0b\xfe\x0e\x33\xd7\xb6\xc8\x22\x67", " LDC", 18}, // eth / LEADCOIN
{ 1, "\xd6\xe3\x54\xf0\x73\x19\xe2\x47\x44\x91\xd8\xc7\xc7\x12\x13\x7b\xee\x68\x62\xa2", " LEMO", 0}, // eth / Lemo
{ 1, "\x60\xc2\x44\x07\xd0\x17\x82\xc2\x17\x5d\x32\xfe\x7c\x89\x21\xed\x73\x23\x71\xd1", " LEMO", 18}, // eth / Lemo
{ 1, "\xb5\xae\x84\x8e\xdb\x29\x6c\x21\x25\x9b\x74\x67\x33\x14\x67\xd2\x64\x7e\xec\xdf", " LEMO", 18}, // eth / Lemo
{ 1, "\x80\xfb\x78\x4b\x7e\xd6\x67\x30\xe8\xb1\xdb\xd9\x82\x0a\xfd\x29\x93\x1a\xab\x03", " LEND", 18}, // eth / EHTLend
{ 1, "\xc7\x98\xcd\x1c\x49\xdb\x0e\x29\x73\x12\xe4\xc6\x82\x75\x26\x68\xce\x1d\xb2\xad", " LFR", 5}, // eth / LifeRun Coin
{ 1, "\x12\x3a\xb1\x95\xdd\x38\xb1\xb4\x05\x10\xd4\x67\xa6\xa3\x59\xb2\x01\xaf\x05\x6f", " LGO", 8}, // eth / LGO
{ 1, "\x2e\xb8\x6e\x8f\xc5\x20\xe0\xf6\xbb\x5d\x9a\xf0\x8f\x92\x4f\xe7\x05\x58\xab\x89", " LGR", 8}, // eth / Logarithm
{ 1, "\xeb\x99\x51\x02\x16\x98\xb4\x2e\x43\x99\xf9\xcb\xb6\x26\x7a\xa3\x5f\x82\xd5\x9d", " LIF", 18}, // eth / LIF
{ 1, "\xff\x18\xdb\xc4\x87\xb4\xc2\xe3\x22\x2d\x11\x59\x52\xba\xbf\xda\x8b\xa5\x2f\x5f", " LIFE", 18}, // eth / LIFE
{ 1, "\x51\x49\x10\x77\x1a\xf9\xca\x65\x6a\xf8\x40\xdf\xf8\x3e\x82\x64\xec\xf9\x86\xca", " LINK (Chainlink)", 18}, // eth / LINK Chainlink
{ 1, "\xe2\xe6\xd4\xbe\x08\x6c\x69\x38\xb5\x3b\x22\x14\x48\x55\xee\xf6\x74\x28\x16\x39", " LINK Platform", 18}, // eth / Link Platform
{ 1, "\x24\xa7\x7c\x1f\x17\xc5\x47\x10\x5e\x14\x81\x3e\x51\x7b\xe0\x6b\x00\x40\xaa\x76", " LIVE", 18}, // eth / LIVE Token
{ 1, "\x63\xe6\x34\x33\x0a\x20\x15\x0d\xbb\x61\xb1\x56\x48\xbc\x73\x85\x5d\x6c\xcf\x07", " LNC", 18}, // eth / Lancer Token
{ 1, "\x6b\xeb\x41\x8f\xc6\xe1\x95\x82\x04\xac\x8b\xad\xdc\xf1\x09\xb8\xe9\x69\x49\x66", " LNC (Linker Coin)", 18}, // eth / Linker Coin
{ 1, "\x09\x47\xb0\xe6\xd8\x21\x37\x88\x05\xc9\x59\x82\x91\x38\x5c\xe7\xc7\x91\xa6\xb2", " LND", 18}, // eth / Lendingblock
{ 1, "\x5e\x33\x46\x44\x40\x10\x13\x53\x22\x26\x8a\x46\x30\xd2\xed\x5f\x8d\x09\x44\x6c", " LOC", 18}, // eth / LockChain
{ 1, "\x9c\x23\xd6\x7a\xea\x7b\x95\xd8\x09\x42\xe3\x83\x6b\xcd\xf7\xe7\x08\xa7\x47\xc2", " LOCI", 18}, // eth / LOCIcoin
{ 1, "\xc6\x45\x00\xdd\x7b\x0f\x17\x94\x80\x7e\x67\x80\x2f\x8a\xbb\xf5\xf8\xff\xb0\x54", " LOCUS", 18}, // eth / Locus Chain
{ 1, "\x21\xae\x23\xb8\x82\xa3\x40\xa2\x22\x82\x16\x20\x86\xbc\x98\xd3\xe2\xb7\x30\x18", " LOK", 18}, // eth / LOK
{ 1, "\x25\x3c\x7d\xd0\x74\xf4\xba\xcb\x30\x53\x87\xf9\x22\x22\x5a\x4f\x73\x7c\x08\xbd", " LOOK", 18}, // eth / LookRev
{ 1, "\xa4\xe8\xc3\xec\x45\x61\x07\xea\x67\xd3\x07\x5b\xf9\xe3\xdf\x3a\x75\x82\x3d\xb0", " LOOM", 18}, // eth / LOOM
{ 1, "\x5a\x27\x6a\xeb\x77\xbc\xfd\xac\x8a\xc6\xf3\x1b\xbc\x74\x16\xae\x1a\x85\xee\xf2", " LOVE", 0}, // eth / Love
{ 1, "\x58\xb6\xa8\xa3\x30\x23\x69\xda\xec\x38\x33\x34\x67\x24\x04\xee\x73\x3a\xb2\x39", " LPT", 18}, // eth / Livepeer Token
{ 1, "\xef\x68\xe7\xc6\x94\xf4\x0c\x82\x02\x82\x1e\xdf\x52\x5d\xe3\x78\x24\x58\x63\x9f", " LRC", 18}, // eth / LRC
{ 1, "\x5d\xbe\x29\x6f\x97\xb2\x3c\x4a\x6a\xa6\x18\x3d\x73\xe5\x74\xd0\x2b\xa5\xc7\x19", " LUC", 18}, // eth / LUCToken
{ 1, "\xfb\x12\xe3\xcc\xa9\x83\xb9\xf5\x9d\x90\x91\x2f\xd1\x7f\x8d\x74\x5a\x8b\x29\x53", " LUCK", 0}, // eth / LUCK
{ 1, "\xa8\x9b\x59\x34\x86\x34\x47\xf6\xe4\xfc\x53\xb3\x15\xa9\x3e\x87\x3b\xda\x69\xa3", " LUM", 18}, // eth / Lumino Coin
{ 1, "\xfa\x05\xa7\x3f\xfe\x78\xef\x8f\x1a\x73\x94\x73\xe4\x62\xc5\x4b\xae\x65\x67\xd9", " LUN", 18}, // eth / LUN
{ 1, "\xdd\x41\xfb\xd1\xae\x95\xc5\xd9\xb1\x98\x17\x4a\x28\xe0\x4b\xe6\xb3\xd1\xaa\x27", " LYS", 8}, // eth / Lightyears
{ 1, "\x3f\x4b\x72\x66\x68\xda\x46\xf5\xe0\xe7\x5a\xa5\xd4\x78\xac\xec\x9f\x38\x21\x0f", " M-ETH", 18}, // eth / M-ETH
{ 1, "\x5b\x09\xa0\x37\x1c\x1d\xa4\x4a\x8e\x24\xd3\x6b\xf5\xde\xb1\x14\x1a\x84\xd8\x75", " MAD", 18}, // eth / MAD
{ 1, "\xe2\x5b\xce\xc5\xd3\x80\x1c\xe3\xa7\x94\x07\x9b\xf9\x4a\xdf\x1b\x8c\xcd\x80\x2d", " MAN", 18}, // eth / MAN
{ 1, "\x0f\x5d\x2f\xb2\x9f\xb7\xd3\xcf\xee\x44\x4a\x20\x02\x98\xf4\x68\x90\x8c\xc9\x42", " MANA", 18}, // eth / Decentraland MANA
{ 1, "\xfd\xcc\x07\xab\x60\x66\x0d\xe5\x33\xb5\xad\x26\xe1\x45\x7b\x56\x5a\x9d\x59\xbd", " MART", 18}, // eth / Martcoin
{ 1, "\x38\x64\x67\xf1\xf3\xdd\xbe\x83\x24\x48\x65\x04\x18\x31\x1a\x47\x9e\xec\xfc\x57", " MBRS", 0}, // eth / Embers
{ 1, "\x93\xe6\x82\x10\x7d\x1e\x9d\xef\xb0\xb5\xee\x70\x1c\x71\x70\x7a\x4b\x2e\x46\xbc", " MCAP", 8}, // eth / MCAP
{ 1, "\x13\x8a\x87\x52\x09\x3f\x4f\x9a\x79\xaa\xed\xf4\x8d\x4b\x92\x48\xfa\xb9\x3c\x9c", " MCI", 18}, // eth / Musiconomi
{ 1, "\xb6\x3b\x60\x6a\xc8\x10\xa5\x2c\xca\x15\xe4\x4b\xb6\x30\xfd\x42\xd8\xd1\xd8\x3d", " MCO", 8}, // eth / MCO
{ 1, "\x51\xdb\x5a\xd3\x5c\x67\x1a\x87\x20\x7d\x88\xfc\x11\xd5\x93\xac\x0c\x84\x15\xbd", " MDA", 18}, // eth / MDA
{ 1, "\x01\xf2\xac\xf2\x91\x48\x60\x33\x1c\x1c\xb1\xa9\xac\xec\xda\x74\x75\xe0\x6a\xf8", " MESH", 18}, // eth / Meshbox
{ 1, "\x5b\x8d\x43\xff\xde\x4a\x29\x82\xb9\xa5\x38\x7c\xdf\x21\xd5\x4e\xad\x64\xac\x8d", " MEST", 18}, // eth / Monaco Estate
{ 1, "\x67\x10\xc6\x34\x32\xa2\xde\x02\x95\x4f\xc0\xf8\x51\xdb\x07\x14\x6a\x6c\x03\x12", " MFG", 18}, // eth / SyncFab Smart Manufacturing Blockchain
{ 1, "\xdf\x2c\x72\x38\x19\x8a\xd8\xb3\x89\x66\x65\x74\xf2\xd8\xbc\x41\x1a\x4b\x74\x28", " MFT", 18}, // eth / Mainframe Token
{ 1, "\x05\xd4\x12\xce\x18\xf2\x40\x40\xbb\x3f\xa4\x5c\xf2\xc6\x9e\x50\x65\x86\xd8\xe8", " MFTU", 18}, // eth / Mainstream For The Underground
{ 1, "\x40\x39\x50\x44\xac\x3c\x0c\x57\x05\x19\x06\xda\x93\x8b\x54\xbd\x65\x57\xf2\x12", " MGO", 8}, // eth / MGO
{ 1, "\xe2\x3c\xd1\x60\x76\x1f\x63\xfc\x3a\x1c\xf7\x8a\xa0\x34\xb6\xcd\xf9\x7d\x3e\x0c", " MIT", 18}, // eth / MIT
{ 1, "\xad\x8d\xd4\xc7\x25\xde\x1d\x31\xb9\xe8\xf8\xd1\x46\x08\x9e\x9d\xc6\x88\x20\x93", " MIT (Mychatcoin)", 6}, // eth / Mychatcoin
{ 1, "\x9f\x8f\x72\xaa\x93\x04\xc8\xb5\x93\xd5\x55\xf1\x2e\xf6\x58\x9c\xc3\xa5\x79\xa2", " MKR", 18}, // eth / MakerDAO
{ 1, "\x79\x39\x88\x2b\x54\xfc\xf0\xbc\xae\x6b\x53\xde\xc3\x9a\xd6\xe8\x06\x17\x64\x42", " MKT", 8}, // eth / Mikado
{ 1, "\xbe\xb9\xef\x51\x4a\x37\x9b\x99\x7e\x07\x98\xfd\xcc\x90\x1e\xe4\x74\xb6\xd9\xa1", " MLN", 18}, // eth / Melonport
{ 1, "\x1a\x95\xb2\x71\xb0\x53\x5d\x15\xfa\x49\x93\x2d\xab\xa3\x1b\xa6\x12\xb5\x29\x46", " MNE", 8}, // eth / MNE
{ 1, "\xa9\x87\x7b\x1e\x05\xd0\x35\x89\x91\x31\xdb\xd1\xe4\x03\x82\x51\x66\xd0\x9f\x92", " MNT", 18}, // eth / Media Network Token
{ 1, "\x83\xce\xe9\xe0\x86\xa7\x7e\x49\x2e\xe0\xbb\x93\xc2\xb0\x43\x7a\xd6\xfd\xec\xcc", " MNTP", 18}, // eth / Goldmint MNT Prelaunch Token
{ 1, "\x95\x7c\x30\xab\x04\x26\xe0\xc9\x3c\xd8\x24\x1e\x2c\x60\x39\x2d\x08\xc6\xac\x8e", " MOD", 0}, // eth / Modum
{ 1, "\x82\x12\x5a\xfe\x01\x81\x9d\xff\x15\x35\xd0\xd6\x27\x6d\x57\x04\x52\x91\xb6\xc0", " MRL", 18}, // eth / Marcelo
{ 1, "\x21\xf0\xf0\xfd\x31\x41\xee\x9e\x11\xb3\xd7\xf1\x3a\x10\x28\xcd\x51\x5f\x45\x9c", " MRP", 18}, // eth / MoneyRebel Token
{ 1, "\xab\x6c\xf8\x7a\x50\xf1\x7d\x7f\x5e\x1f\xea\xf8\x1b\x6f\xe9\xff\xbe\x8e\xbf\x84", " MRV", 18}, // eth / MRV
{ 1, "\x68\xaa\x3f\x23\x2d\xa9\xbd\xc2\x34\x34\x65\x54\x57\x94\xef\x3e\xea\x52\x09\xbd", " MSP", 18}, // eth / Mothership
{ 1, "\x90\x5e\x33\x7c\x6c\x86\x45\x26\x3d\x35\x21\x20\x5a\xa3\x7b\xf4\xd0\x34\xe7\x45", " MTC", 18}, // eth / Medical Token Currency
{ 1, "\xdf\xdc\x0d\x82\xd9\x6f\x8f\xd4\x0c\xa0\xcf\xb4\xa2\x88\x95\x5b\xec\xec\x20\x88", " MTC", 18}, // eth / MTC Mesh Network
{ 1, "\xaf\x4d\xce\x16\xda\x28\x77\xf8\xc9\xe0\x05\x44\xc9\x3b\x62\xac\x40\x63\x1f\x16", " MTH", 5}, // eth / Monetha
{ 1, "\xf4\x33\x08\x93\x66\x89\x9d\x83\xa9\xf2\x6a\x77\x3d\x59\xec\x7e\xcf\x30\x35\x5e", " MTL", 8}, // eth / MetalPay
{ 1, "\x41\xdb\xec\xc1\xcd\xc5\x51\x7c\x6f\x76\xf6\xa6\xe8\x36\xad\xbe\xe2\x75\x4d\xe3", " MTN", 18}, // eth / MedToken
{ 1, "\x7f\xc4\x08\x01\x11\x65\x76\x0e\xe3\x1b\xe2\xbf\x20\xda\xf4\x50\x35\x66\x92\xaf", " MTR", 8}, // eth / Mitrav
{ 1, "\x1e\x49\xff\x77\xc3\x55\xa3\xe3\x8d\x66\x51\xce\x84\x04\xaf\x0e\x48\xc5\x39\x5f", " MTRc", 18}, // eth / MTRCToken
{ 1, "\x0a\xf4\x4e\x27\x84\x63\x72\x18\xdd\x1d\x32\xa3\x22\xd4\x4e\x60\x3a\x8f\x0c\x6a", " MTX", 18}, // eth / MTX
{ 1, "\x51\x56\x69\xd3\x08\xf8\x87\xfd\x83\xa4\x71\xc7\x76\x4f\x5d\x08\x48\x86\xd3\x4d", " MUXE", 18}, // eth / MUXE
{ 1, "\x8a\x77\xe4\x09\x36\xbb\xc2\x7e\x80\xe9\xa3\xf5\x26\x36\x8c\x96\x78\x69\xc8\x6d", " MVP", 18}, // eth / Merculet
{ 1, "\x64\x25\xc6\xbe\x90\x2d\x69\x2a\xe2\xdb\x75\x2b\x3c\x26\x8a\xfa\xdb\x09\x9d\x3b", " MWAT", 18}, // eth / RED MWAT
{ 1, "\xf7\xe9\x83\x78\x16\x09\x01\x23\x07\xf2\x51\x4f\x63\xd5\x26\xd8\x3d\x24\xf4\x66", " MYD", 16}, // eth / MYD
{ 1, "\xa6\x45\x26\x4c\x56\x03\xe9\x6c\x3b\x0b\x07\x8c\xda\xb6\x87\x33\x79\x4b\x0a\x71", " MYST", 8}, // eth / Mysterium
{ 1, "\x8d\x80\xde\x8a\x78\x19\x83\x96\x32\x9d\xfa\x76\x9a\xd5\x4d\x24\xbf\x90\xe7\xaa", " NAC", 18}, // eth / Nami ICO
{ 1, "\xff\xe0\x2e\xe4\xc6\x9e\xdf\x1b\x34\x0f\xca\xd6\x4f\xbd\x6b\x37\xa7\xb9\xe2\x65", " NANJ", 8}, // eth / NANJCOIN
{ 1, "\x58\x80\x47\x36\x5d\xf5\xba\x58\x9f\x92\x36\x04\xaa\xc2\x3d\x67\x35\x55\xc6\x23", " NAVI", 18}, // eth / NaviToken
{ 1, "\x17\xf8\xaf\xb6\x3d\xfc\xdc\xc9\x0e\xbe\x6e\x84\xf0\x60\xcc\x30\x6a\x98\x25\x7d", " NBAI", 18}, // eth / NebulaAiToken
{ 1, "\x80\x98\x26\xcc\xea\xb6\x8c\x38\x77\x26\xaf\x96\x27\x13\xb6\x4c\xb5\xcb\x3c\xca", " nCash", 18}, // eth / NucleusVision
{ 1, "\x9e\x46\xa3\x8f\x5d\xaa\xbe\x86\x83\xe1\x07\x93\xb0\x67\x49\xee\xf7\xd7\x33\xd1", " NCT", 18}, // eth / Nectar
{ 1, "\xa5\x4d\xdc\x7b\x3c\xce\x7f\xc8\xb1\xe3\xfa\x02\x56\xd0\xdb\x80\xd2\xc1\x09\x70", " NDC", 18}, // eth / Neverdie
{ 1, "\xcc\x80\xc0\x51\x05\x7b\x77\x4c\xd7\x50\x67\xdc\x48\xf8\x98\x7c\x4e\xb9\x7a\x5e", " NEC", 18}, // eth / Ethfinex Nectar Token
{ 1, "\xcf\xb9\x86\x37\xbc\xae\x43\xc1\x33\x23\xea\xa1\x73\x1c\xed\x2b\x71\x69\x62\xfd", " NET", 18}, // eth / NIMIQ
{ 1, "\xa8\x23\xe6\x72\x20\x06\xaf\xe9\x9e\x91\xc3\x0f\xf5\x29\x50\x52\xfe\x6b\x8e\x32", " NEU", 18}, // eth / NEU Fund
{ 1, "\x72\xdd\x4b\x6b\xd8\x52\xa3\xaa\x17\x2b\xe4\xd6\xc5\xa6\xdb\xec\x58\x8c\xf1\x31", " NGC", 18}, // eth / NAGA Coin
{ 1, "\xe2\x65\x17\xa9\x96\x72\x99\x45\x3d\x3f\x1b\x48\xaa\x00\x5e\x61\x27\xe6\x72\x10", " NIMFA", 18}, // eth / Ninfa Money
{ 1, "\x17\x76\xe1\xf2\x6f\x98\xb1\xa5\xdf\x9c\xd3\x47\x95\x3a\x26\xdd\x3c\xb4\x66\x71", " NMR", 18}, // eth / NMR
{ 1, "\x64\x3b\x68\x70\xbe\xab\xee\x94\x1b\x92\x60\xa0\xa8\x78\xbc\xf4\xa6\x1f\xb0\xf1", " NONE", 0}, // eth / None
{ 1, "\xec\x46\xf8\x20\x7d\x76\x60\x12\x45\x4c\x40\x8d\xe2\x10\xbc\xbc\x22\x43\xe7\x1c", " NOX", 18}, // eth / NOX
{ 1, "\x4c\xe6\xb3\x62\xbc\x77\xa2\x49\x66\xdd\xa9\x07\x8f\x9c\xef\x81\xb3\xb8\x86\xa7", " NPER", 18}, // eth / NPER
{ 1, "\xa1\x5c\x7e\xbe\x1f\x07\xca\xf6\xbf\xf0\x97\xd8\xa5\x89\xfb\x8a\xc4\x9a\xe5\xb3", " NPXS", 18}, // eth / Pundi X Token
{ 1, "\x24\x5e\xf4\x7d\x4d\x05\x05\xec\xf3\xac\x46\x3f\x4d\x81\xf4\x1a\xde\x8f\x1f\xd1", " NUG", 18}, // eth / Nuggets Token
{ 1, "\xb9\x13\x18\xf3\x5b\xdb\x26\x2e\x94\x23\xbc\x7c\x7c\x2a\x3a\x93\xdd\x93\xc9\x2c", " NULS", 18}, // eth / NULS
{ 1, "\x57\xab\x1e\x02\xfe\xe2\x37\x74\x58\x0c\x11\x97\x40\x12\x9e\xac\x70\x81\xe9\xd3", " nUSD", 18}, // eth / Havven-Backed USD Nomins (nUSD)
{ 1, "\x45\xe4\x2d\x65\x9d\x9f\x94\x66\xcd\x5d\xf6\x22\x50\x60\x33\x14\x5a\x9b\x89\xbc", " NxC", 3}, // eth / Nexium
{ 1, "\x76\x27\xde\x4b\x93\x26\x3a\x6a\x75\x70\xb8\xda\xfa\x64\xba\xe8\x12\xe5\xc3\x94", " NXX", 8}, // eth / NXX
{ 1, "\x5c\x61\x83\xd1\x0a\x00\xcd\x74\x7a\x6d\xbb\x5f\x65\x8a\xd5\x14\x38\x3e\x94\x19", " NXX OLD", 8}, // eth / NXX OLD
{ 1, "\x5e\x88\x8b\x83\xb7\x28\x7e\xed\x4f\xb7\xda\x7b\x7d\x0a\x0d\x4c\x73\x5d\x94\xb3", " OAK", 18}, // eth / OAK
{ 1, "\x70\x1c\x24\x4b\x98\x8a\x51\x3c\x94\x59\x73\xde\xfa\x05\xde\x93\x3b\x23\xfe\x1d", " OAX", 18}, // eth / OAX
{ 1, "\x02\x35\xfe\x62\x4e\x04\x4a\x05\xee\xd7\xa4\x3e\x16\xe3\x08\x3b\xc8\xa4\x28\x7a", " OCC", 18}, // eth / Original Crypto Coin
{ 1, "\xbf\x52\xf2\xab\x39\xe2\x6e\x09\x51\xd2\xa0\x2b\x49\xb7\x70\x2a\xbe\x30\x40\x6a", " ODE", 18}, // eth / ODEM Token
{ 1, "\x6f\x53\x9a\x94\x56\xa5\xbc\xb6\x33\x4a\x1a\x41\x20\x7c\x37\x88\xf5\x82\x52\x07", " OHNI", 18}, // eth / Ohni
{ 1, "\x7f\x21\x76\xce\xb1\x6d\xcb\x64\x8d\xc9\x24\xef\xf6\x17\xc3\xdc\x2b\xef\xd3\x0d", " OHNI", 0}, // eth / OHNI
{ 1, "\xbe\xef\x54\x6a\xc8\xa4\xe0\xa8\x0d\xc1\xe2\xd6\x96\x96\x8e\xf5\x41\x38\xf1\xd4", " OJX", 18}, // eth / Ojooo Coin
{ 1, "\xc6\x6e\xa8\x02\x71\x7b\xfb\x98\x33\x40\x02\x64\xdd\x12\xc2\xbc\xea\xa3\x4a\x6d", " OLD_MKR", 18}, // eth / MakerDAO
{ 1, "\x64\xa6\x04\x93\xd8\x88\x72\x8c\xf4\x26\x16\xe0\x34\xa0\xdf\xea\xe3\x8e\xfc\xf0", " OLT", 18}, // eth / OneLedger Token
{ 1, "\xd2\x61\x14\xcd\x6e\xe2\x89\xac\xcf\x82\x35\x0c\x8d\x84\x87\xfe\xdb\x8a\x0c\x07", " OMG", 18}, // eth / OMG
{ 1, "\x04\x71\x87\xe5\x34\x77\xbe\x70\xdb\xe8\xea\x5b\x79\x93\x18\xf2\xe1\x65\x05\x2f", " OMT", 18}, // eth / OTCMAKER Token
{ 1, "\xb2\x3b\xe7\x35\x73\xbc\x7e\x03\xdb\x6e\x5d\xfc\x62\x40\x53\x68\x71\x6d\x28\xa8", " ONEK", 18}, // eth / One K Token
{ 1, "\xd3\x41\xd1\x68\x0e\xee\xe3\x25\x5b\x8c\x4c\x75\xbc\xce\x7e\xb5\x7f\x14\x4d\xae", " onG", 18}, // eth / onG
{ 1, "\x69\xc4\xbb\x24\x0c\xf0\x5d\x51\xee\xab\x69\x85\xba\xb3\x55\x27\xd0\x4a\x8c\x64", " OPEN", 8}, // eth / OPEN
{ 1, "\xe9\xde\x1c\x63\x07\x53\xa1\x5d\x70\x21\xcc\x56\x34\x29\xc2\x1d\x48\x87\x50\x6f", " OPEN", 8}, // eth / OPEN
{ 1, "\x43\x55\xfc\x16\x0f\x74\x32\x8f\x9b\x38\x3d\xf2\xec\x58\x9b\xb3\xdf\xd8\x2b\xa0", " OPT", 18}, // eth / Opus Foundation
{ 1, "\xff\x56\xcc\x6b\x1e\x6d\xed\x34\x7a\xa0\xb7\x67\x6c\x85\xab\x0b\x3d\x08\xb0\xfa", " ORBS", 18}, // eth / Orbs
{ 1, "\x6f\x59\xe0\x46\x1a\xe5\xe2\x79\x9f\x1f\xb3\x84\x7f\x05\xa6\x3b\x16\xd0\xdb\xf8", " ORCA", 18}, // eth / ORCA Token
{ 1, "\x2c\x4e\x8f\x2d\x74\x61\x13\xd0\x69\x6c\xe8\x9b\x35\xf0\xd8\xbf\x88\xe0\xae\xca", " OST", 18}, // eth / Simple Token 'OST'
{ 1, "\x17\x0b\x27\x5c\xed\x08\x9f\xff\xae\xbf\xe9\x27\xf4\x45\xa3\x50\xed\x91\x60\xdc", " OWN", 8}, // eth / OWNDATA
{ 1, "\x65\xa1\x50\x14\x96\x4f\x21\x02\xff\x58\x64\x7e\x16\xa1\x6a\x6b\x9e\x14\xbc\xf6", " Ox Fina", 3}, // eth / Ox Fina
{ 1, "\xfe\xda\xe5\x64\x26\x68\xf8\x63\x6a\x11\x98\x7f\xf3\x86\xbf\xd2\x15\xf9\x42\xee", " PAL", 18}, // eth / PolicyPal Network
{ 1, "\xea\x5f\x88\xe5\x4d\x98\x2c\xbb\x0c\x44\x1c\xde\x4e\x79\xbc\x30\x5e\x5b\x43\xbc", " PARETO", 18}, // eth / PARETO
{ 1, "\x77\x76\x1e\x63\xc0\x5a\xee\x66\x48\xfd\xae\xaa\x9b\x94\x24\x83\x51\xaf\x9b\xcd", " PASS", 18}, // eth / PASS Token
{ 1, "\xbb\x1f\xa4\xfd\xeb\x34\x59\x73\x3b\xf6\x7e\xbc\x6f\x89\x30\x03\xfa\x97\x6a\x82", " PAT", 18}, // eth / Pangea Arbitration Token
{ 1, "\x69\x44\x04\x59\x5e\x30\x75\xa9\x42\x39\x7f\x46\x6a\xac\xd4\x62\xff\x1a\x7b\xd0", " PATENTS", 18}, // eth / PATENTS
{ 1, "\xf8\x13\xf3\x90\x2b\xbc\x00\xa6\xdc\xe3\x78\x63\x4d\x3b\x79\xd8\x4f\x98\x03\xd7", " PATH", 18}, // eth / PATH
{ 1, "\xb9\x70\x48\x62\x8d\xb6\xb6\x61\xd4\xc2\xaa\x83\x3e\x95\xdb\xe1\xa9\x05\xb2\x80", " PAY", 18}, // eth / TenX
{ 1, "\x55\x64\x8d\xe1\x98\x36\x33\x85\x49\x13\x0b\x1a\xf5\x87\xf1\x6b\xea\x46\xf6\x6b", " PBL", 18}, // eth / PBL
{ 1, "\xf4\xc0\x7b\x18\x65\xbc\x32\x6a\x3c\x01\x33\x94\x92\xca\x75\x38\xfd\x03\x8c\xc0", " PBT", 4}, // eth / Primalbase Token (PBT)
{ 1, "\xfc\xac\x7a\x75\x15\xe9\xa9\xd7\x61\x9f\xa7\x7a\x1f\xa7\x38\x11\x1f\x66\x72\x7e", " PCH", 18}, // eth / PITCH
{ 1, "\x36\x18\x51\x6f\x45\xcd\x3c\x91\x3f\x81\xf9\x98\x7a\xf4\x10\x77\x93\x2b\xc4\x0d", " PCL", 8}, // eth / Peculium
{ 1, "\x53\x14\x8b\xb4\x55\x17\x07\xed\xf5\x1a\x1e\x8d\x7a\x93\x69\x8d\x18\x93\x12\x25", " PCLOLD", 8}, // eth / PeculiumOLD
{ 1, "\x8a\xe5\x6a\x68\x50\xa7\xcb\xea\xc3\xc3\xab\x2c\xb3\x11\xe7\x62\x01\x67\xea\xc8", " PEG", 18}, // eth / PEG Network Token
{ 1, "\x58\x84\x96\x9e\xc0\x48\x05\x56\xe1\x1d\x11\x99\x80\x13\x6a\x4c\x17\xed\xde\xd1", " PET", 18}, // eth / PETHEREUM
{ 1, "\xec\x18\xf8\x98\xb4\x07\x6a\x3e\x18\xf1\x08\x9d\x33\x37\x6c\xc3\x80\xbd\xe6\x1d", " PETRO", 18}, // eth / PETRO
{ 1, "\x55\xc2\xa0\xc1\x71\xd9\x20\x84\x35\x60\x59\x4d\xe3\xd6\xee\xcc\x09\xef\xc0\x98", " PEXT", 4}, // eth / PEX-Token
{ 1, "\xe6\x45\x09\xf0\xbf\x07\xce\x2d\x29\xa7\xef\x19\xa8\xa9\xbc\x06\x54\x77\xc1\xb4", " PIPL", 8}, // eth / PIPL Coin
{ 1, "\x8e\xff\xd4\x94\xeb\x69\x8c\xc3\x99\xaf\x62\x31\xfc\xcd\x39\xe0\x8f\xd2\x0b\x15", " PIX", 0}, // eth / PIX
{ 1, "\x59\x41\x6a\x25\x62\x8a\x76\xb4\x73\x0e\xc5\x14\x86\x11\x4c\x32\xe0\xb5\x82\xa1", " PLASMA", 6}, // eth / PLASMA
{ 1, "\xe4\x77\x29\x2f\x1b\x32\x68\x68\x7a\x29\x37\x61\x16\xb0\xed\x27\xa9\xc7\x61\x70", " PLAY", 18}, // eth / HeroCoin
{ 1, "\x0a\xff\xa0\x6e\x7f\xbe\x5b\xc9\xa7\x64\xc9\x79\xaa\x66\xe8\x25\x6a\x63\x1f\x02", " PLBT", 6}, // eth / Polybius
{ 1, "\xe3\x81\x85\x04\xc1\xb3\x2b\xf1\x55\x7b\x16\xc2\x38\xb2\xe0\x1f\xd3\x14\x9c\x17", " PLR", 18}, // eth / Pillar Project
{ 1, "\xe4\x3a\xc1\x71\x4f\x73\x94\x17\x3b\x15\xe7\xcf\xf3\x1a\x63\xd5\x23\xce\x4f\xb9", " PLS", 18}, // eth / DACPLAY Token
{ 1, "\xd8\x91\x2c\x10\x68\x1d\x8b\x21\xfd\x37\x42\x24\x4f\x44\x65\x8d\xba\x12\x26\x4e", " PLU", 18}, // eth / Plutus
{ 1, "\x0e\x09\x89\xb1\xf9\xb8\xa3\x89\x83\xc2\xba\x80\x53\x26\x9c\xa6\x2e\xc9\xb1\x95", " POE", 8}, // eth / Po.et Tokens
{ 1, "\x43\xf6\xa1\xbe\x99\x2d\xee\x40\x87\x21\x74\x84\x90\x77\x2b\x15\x14\x3c\xe0\xa7", " POIN", 0}, // eth / Potatoin
{ 1, "\x99\x92\xec\x3c\xf6\xa5\x5b\x00\x97\x8c\xdd\xf2\xb2\x7b\xc6\x88\x2d\x88\xd1\xec", " POLY", 18}, // eth / Polymath Network
{ 1, "\x77\x9b\x7b\x71\x3c\x86\xe3\xe6\x77\x4f\x50\x40\xd9\xcc\xc2\xd4\x3a\xd3\x75\xf8", " POOL", 8}, // eth / Stake Pool
{ 1, "\xee\x60\x9f\xe2\x92\x12\x8c\xad\x03\xb7\x86\xdb\xb9\xbc\x26\x34\xcc\xdb\xe7\xfc", " POS", 18}, // eth / PoSToken
{ 1, "\x59\x58\x32\xf8\xfc\x6b\xf5\x9c\x85\xc5\x27\xfe\xc3\x74\x0a\x1b\x7a\x36\x12\x69", " POWR", 6}, // eth / PowerLedger
{ 1, "\xc4\x22\x09\xac\xcc\x14\x02\x9c\x10\x12\xfb\x56\x80\xd9\x5f\xbd\x60\x36\xe2\xa0", " PPP", 18}, // eth / PayPie
{ 1, "\xd4\xfa\x14\x60\xf5\x37\xbb\x90\x85\xd2\x2c\x7b\xcc\xb5\xdd\x45\x0e\xf2\x8e\x3a", " PPT", 8}, // eth / Populous
{ 1, "\x88\xa3\xe4\xf3\x5d\x64\xaa\xd4\x1a\x6d\x40\x30\xac\x9a\xfe\x43\x56\xcb\x84\xfa", " PRE", 18}, // eth / Presearch
{ 1, "\x77\x28\xdf\xef\x5a\xbd\x46\x86\x69\xeb\x7f\x9b\x48\xa7\xf7\x0a\x50\x1e\xd2\x9d", " PRG", 6}, // eth / PRG
{ 1, "\x18\x44\xb2\x15\x93\x26\x26\x68\xb7\x24\x8d\x0f\x57\xa2\x20\xca\xab\xa4\x6a\xb9", " PRL", 18}, // eth / Oyster Pearl
{ 1, "\x22\x6b\xb5\x99\xa1\x2c\x82\x64\x76\xe3\xa7\x71\x45\x46\x97\xea\x52\xe9\xe2\x20", " PRO", 8}, // eth / Propy
{ 1, "\xa3\x14\x9e\x0f\xa0\x06\x1a\x90\x07\xfa\xf3\x07\x07\x4c\xdc\xd2\x90\xf0\xe2\xfd", " PRON", 8}, // eth / PronCoin
{ 1, "\x76\x41\xb2\xca\x9d\xdd\x58\xad\xdf\x6e\x33\x81\xc1\xf9\x94\xaa\xc5\xf1\xa3\x2f", " PRPS", 18}, // eth / Purpose
{ 1, "\xd9\x4f\x27\x78\xe2\xb3\x91\x3c\x53\x63\x7a\xe6\x06\x47\x59\x8b\xe5\x88\xc5\x70", " PRPS", 18}, // eth / Purpose
{ 1, "\x16\x37\x33\xbc\xc2\x8d\xbf\x26\xb4\x1a\x8c\xfa\x83\xe3\x69\xb5\xb3\xaf\x74\x1b", " PRS", 18}, // eth / Persians
{ 1, "\x0c\x04\xd4\xf3\x31\xda\x8d\xf7\x5f\x9e\x2e\x27\x1e\x3f\x3f\x14\x94\xc6\x6c\x36", " PRSP", 9}, // eth / PRSP
{ 1, "\x66\x49\x7a\x28\x3e\x0a\x00\x7b\xa3\x97\x4e\x83\x77\x84\xc6\xae\x32\x34\x47\xde", " PT", 18}, // eth / PornToken
{ 1, "\x2a\x8e\x98\xe2\x56\xf3\x22\x59\xb5\xe5\xcb\x55\xdd\x63\xc8\xe8\x91\x95\x06\x66", " PTC", 18}, // eth / ParrotCoin
{ 1, "\x8a\xe4\xbf\x2c\x33\xa8\xe6\x67\xde\x34\xb5\x49\x38\xb0\xcc\xd0\x3e\xb8\xcc\x06", " PTOY", 8}, // eth / PTOY
{ 1, "\x55\x12\xe1\xd6\xa7\xbe\x42\x4b\x43\x23\x12\x6b\x4f\x9e\x86\xd0\x23\xf9\x57\x64", " PTWO", 18}, // eth / PornTokenV2
{ 1, "\xef\x6b\x4c\xe8\xc9\xbc\x83\x74\x4f\xbc\xde\x26\x57\xb3\x2e\xc1\x87\x90\x45\x8a", " PUC", 0}, // eth / Pour Coin
{ 1, "\xe2\x5f\xf6\xeb\x95\x9b\xce\x67\x97\x57\x78\xe4\x6a\x47\x75\x0c\x24\x3b\x6b\x99", " PURC", 18}, // eth / PureCarbon
{ 1, "\xc1\x48\x30\xe5\x3a\xa3\x44\xe8\xc1\x46\x03\xa9\x12\x29\xa0\xb9\x25\xb0\xb2\x62", " PXT", 8}, // eth / Populous XBRL Token (PXT)
{ 1, "\x61\x8e\x75\xac\x90\xb1\x2c\x60\x49\xba\x3b\x27\xf5\xd5\xf8\x65\x1b\x00\x37\xf6", " QASH", 6}, // eth / QASH
{ 1, "\x67\x1a\xbb\xe5\xce\x65\x24\x91\x98\x53\x42\xe8\x54\x28\xeb\x1b\x07\xbc\x6c\x64", " QAU", 8}, // eth / QAU
{ 1, "\x24\x67\xaa\x6b\x5a\x23\x51\x41\x6f\xd4\xc3\xde\xf8\x46\x2d\x84\x1f\xee\xec\xec", " QBX", 18}, // eth / qiibeeToken
{ 1, "\x4a\x22\x0e\x60\x96\xb2\x5e\xad\xb8\x83\x58\xcb\x44\x06\x8a\x32\x48\x25\x46\x75", " QNT", 18}, // eth / Quant
{ 1, "\xff\xaa\x5f\xfc\x45\x5d\x91\x31\xf8\xa2\x71\x3a\x74\x1f\xd1\x96\x03\x30\x50\x8b", " QRG", 18}, // eth / QRG
{ 1, "\x69\x7b\xea\xc2\x8b\x09\xe1\x22\xc4\x33\x2d\x16\x39\x85\xe8\xa7\x31\x21\xb9\x7f", " QRL", 8}, // eth / QRL
{ 1, "\x99\xea\x4d\xb9\xee\x77\xac\xd4\x0b\x11\x9b\xd1\xdc\x4e\x33\xe1\xc0\x70\xb8\x0d", " QSP", 18}, // eth / Quantstamp Token
{ 1, "\x2c\x3c\x1f\x05\x18\x7d\xba\x7a\x5f\x2d\xd4\x7d\xca\x57\x28\x1c\x4d\x4f\x18\x3f", " QTQ", 18}, // eth / TiiQu's Q Token
{ 1, "\x9a\x64\x2d\x6b\x33\x68\xdd\xc6\x62\xca\x24\x4b\xad\xf3\x2c\xda\x71\x60\x05\xbc", " QTUM", 18}, // eth / Qtum
{ 1, "\x45\xed\xb5\x35\x94\x2a\x8c\x84\xd9\xf4\xb5\xd3\x7e\x1b\x25\xf9\x1e\xa4\x80\x4c", " RAO", 18}, // eth / RadioYo
{ 1, "\xfc\x2c\x4d\x8f\x95\x00\x2c\x14\xed\x0a\x7a\xa6\x51\x02\xca\xc9\xe5\x95\x3b\x5e", " RBLX", 18}, // eth / Rublix
{ 1, "\xf9\x70\xb8\xe3\x6e\x23\xf7\xfc\x3f\xd7\x52\xee\xa8\x6f\x8b\xe8\xd8\x33\x75\xa6", " RCN", 18}, // eth / Ripio Credit Network
{ 1, "\x2a\x3a\xa9\xec\xa4\x1e\x72\x0e\xd4\x6b\x5a\x70\xd6\xc3\x7e\xfa\x47\xf7\x68\xac", " RCT", 18}, // eth / RCT
{ 1, "\x25\x5a\xa6\xdf\x07\x54\x0c\xb5\xd3\xd2\x97\xf0\xd0\xd4\xd8\x4c\xb5\x2b\xc8\xe6", " RDN", 18}, // eth / Raiden Network
{ 1, "\x76\x7b\xa2\x91\x5e\xc3\x44\x01\x5a\x79\x38\xe3\xee\xdf\xec\x27\x85\x19\x5d\x05", " REA", 18}, // eth / Realisto
{ 1, "\x5f\x53\xf7\xa8\x07\x56\x14\xb6\x99\xba\xad\x0b\xc2\xc8\x99\xf4\xba\xd8\xfb\xbf", " REBL", 18}, // eth / Rebellious
{ 1, "\x76\x96\x0d\xcc\xd5\xa1\xfe\x79\x9f\x7c\x29\xbe\x9f\x19\xce\xb4\x62\x7a\xeb\x2f", " RED", 18}, // eth / Red Community Token
{ 1, "\xb5\x63\x30\x0a\x3b\xac\x79\xfc\x09\xb9\x3b\x6f\x84\xce\x0d\x44\x65\xa2\xac\x27", " REDC", 18}, // eth / RedCab
{ 1, "\x40\x8e\x41\x87\x6c\xcc\xdc\x0f\x92\x21\x06\x00\xef\x50\x37\x26\x56\x05\x2a\x38", " REN", 18}, // eth / Republic Token
{ 1, "\xe9\x43\x27\xd0\x7f\xc1\x79\x07\xb4\xdb\x78\x8e\x5a\xdf\x2e\xd4\x24\xad\xdf\xf6", " REP", 18}, // eth / Augur
{ 1, "\x19\x85\x36\x5e\x9f\x78\x35\x9a\x9b\x6a\xd7\x60\xe3\x24\x12\xf4\xa4\x45\xe8\x62", " REP", 18}, // eth / Augur
{ 1, "\x8f\x82\x21\xaf\xbb\x33\x99\x8d\x85\x84\xa2\xb0\x57\x49\xba\x73\xc3\x7a\x93\x8a", " REQ", 18}, // eth / Request Network
{ 1, "\xf0\x5a\x93\x82\xa4\xc3\xf2\x9e\x27\x84\x50\x27\x54\x29\x3d\x88\xb8\x35\x10\x9c", " REX", 18}, // eth / REX
{ 1, "\xd0\x92\x9d\x41\x19\x54\xc4\x74\x38\xdc\x1d\x87\x1d\xd6\x08\x1f\x5c\x5e\x14\x9c", " RFR", 4}, // eth / Refereum
{ 1, "\x86\xe5\x6f\x3c\x89\xa1\x45\x28\x85\x8e\x58\xb3\xde\x48\xc0\x74\x53\x8b\xaf\x2c", " RING", 18}, // eth / Evolution Land Global Token
{ 1, "\xdd\x00\x72\x78\xb6\x67\xf6\xbe\xf5\x2f\xd0\xa4\xc2\x36\x04\xaa\x1f\x96\x03\x9a", " RIPT", 8}, // eth / RiptideCoin
{ 1, "\x60\x7f\x4c\x5b\xb6\x72\x23\x0e\x86\x72\x08\x55\x32\xf7\xe9\x01\x54\x4a\x73\x75", " RLC", 9}, // eth / IEx.ec
{ 1, "\xcc\xed\x5b\x82\x88\x08\x6b\xe8\xc3\x8e\x23\x56\x7e\x68\x4c\x37\x40\xbe\x4d\x48", " RLT", 10}, // eth / RLT
{ 1, "\xbe\x99\xb0\x97\x09\xfc\x75\x3b\x09\xbc\xf5\x57\xa9\x92\xf6\x60\x5d\x59\x97\xb0", " RLTY", 8}, // eth / SMARTRealty
{ 1, "\x4a\x42\xd2\xc5\x80\xf8\x3d\xce\x40\x4a\xca\xd1\x8d\xab\x26\xdb\x11\xa1\x75\x0e", " RLX", 18}, // eth / Relex
{ 1, "\x09\x96\xbf\xb5\xd0\x57\xfa\xa2\x37\x64\x0e\x25\x06\xbe\x7b\x4f\x9c\x46\xde\x0b", " RNDR", 18}, // eth / Render Token
{ 1, "\xa4\x01\x06\x13\x4c\x5b\xf4\xc4\x14\x11\x55\x4e\x6d\xb9\x9b\x95\xa1\x5e\xd9\xd8", " ROCK", 18}, // eth / Rocket Token
{ 1, "\xc9\xde\x4b\x7f\x0c\x3d\x99\x1e\x96\x71\x58\xe4\xd4\xbf\xa4\xb5\x1e\xc0\xb1\x14", " ROK", 18}, // eth / Rocketchain
{ 1, "\x49\x93\xcb\x95\xc7\x44\x3b\xdc\x06\x15\x5c\x5f\x56\x88\xbe\x9d\x8f\x69\x99\xa5", " ROUND", 18}, // eth / ROUND
{ 1, "\xb4\xef\xd8\x5c\x19\x99\x9d\x84\x25\x13\x04\xbd\xa9\x9e\x90\xb9\x23\x00\xbd\x93", " RPL", 18}, // eth / Rocket Pool
{ 1, "\x54\xb2\x93\x22\x60\x00\xcc\xbf\xc0\x4d\xf9\x02\xee\xc5\x67\xcb\x4c\x35\xa9\x03", " RTN", 18}, // eth / RiderToken
{ 1, "\x41\xf6\x15\xe2\x4f\xab\xd2\xb0\x97\xa3\x20\xe9\xe6\xc1\xf4\x48\xcb\x40\x52\x1c", " RVL", 18}, // eth / RVL
{ 1, "\x3d\x1b\xa9\xbe\x9f\x66\xb8\xee\x10\x19\x11\xbc\x36\xd3\xfb\x56\x2e\xac\x22\x44", " RVT", 18}, // eth / Rivetz
{ 1, "\x1e\xc8\xfe\x51\xa9\xb6\xa3\xa6\xc4\x27\xd1\x7d\x9e\xcc\x30\x60\xfb\xc4\xa4\x5c", " S-A-PAT", 18}, // eth / S-A-PAT
{ 1, "\x3e\xb9\x1d\x23\x7e\x49\x1e\x0d\xee\x85\x82\xc4\x02\xd8\x5c\xb4\x40\xfb\x6b\x54", " S-ETH", 18}, // eth / S-ETH
{ 1, "\x41\x56\xd3\x34\x2d\x5c\x38\x5a\x87\xd2\x64\xf9\x06\x53\x73\x35\x92\x00\x05\x81", " SALT", 8}, // eth / Salt Lending Token
{ 1, "\x7c\x5a\x0c\xe9\x26\x7e\xd1\x9b\x22\xf8\xca\xe6\x53\xf1\x98\xe3\xe8\xda\xf0\x98", " SAN", 18}, // eth / Santiment
{ 1, "\x78\xfe\x18\xe4\x1f\x43\x6e\x19\x81\xa3\xa6\x0d\x15\x57\xc8\xa7\xa9\x37\x04\x61", " SCANDI", 2}, // eth / Scandiweb Coin
{ 1, "\xd7\x63\x17\x87\xb4\xdc\xc8\x7b\x12\x54\xcf\xd1\xe5\xce\x48\xe9\x68\x23\xde\xe8", " SCL", 8}, // eth / SocialCoin
{ 1, "\x4c\xa7\x41\x85\x53\x2d\xc1\x78\x95\x27\x19\x4e\x5b\x9c\x86\x6d\xd3\x3f\x4e\x82", " SenSatorI", 18}, // eth / SenSatorI Token
{ 1, "\x67\x45\xfa\xb6\x80\x1e\x37\x6c\xd2\x4f\x03\x57\x2b\x9c\x9b\x0d\x4e\xdd\xdc\xcf", " SENSE", 8}, // eth / Sensay
{ 1, "\xe0\x6e\xda\x74\x35\xba\x74\x9b\x04\x73\x80\xce\xd4\x91\x21\xdd\xe9\x33\x34\xae", " SET", 0}, // eth / SET
{ 1, "\x98\xf5\xe9\xb7\xf0\xe3\x39\x56\xc0\x44\x3e\x81\xbf\x7d\xeb\x8b\x5b\x1e\xd5\x45", " SEXY", 18}, // eth / Sexy Token
{ 1, "\xa1\xcc\xc1\x66\xfa\xf0\xe9\x98\xb3\xe3\x32\x25\xa1\xa0\x30\x1b\x1c\x86\x11\x9d", " SGEL", 18}, // eth / SGELDER
{ 1, "\x37\x42\x75\x76\x32\x4f\xe1\xf3\x62\x5c\x91\x02\x67\x47\x72\xd7\xcf\x71\x37\x7d", " SGT", 18}, // eth / SelfieYo Gold Token
{ 1, "\xd2\x48\xb0\xd4\x8e\x44\xaa\xf9\xc4\x9a\xea\x03\x12\xbe\x7e\x13\xa6\xdc\x14\x68", " SGT", 1}, // eth / SGT
{ 1, "\xef\x2e\x99\x66\xeb\x61\xbb\x49\x4e\x53\x75\xd5\xdf\x8d\x67\xb7\xdb\x8a\x78\x0d", " SHIT", 0}, // eth / SHIT
{ 1, "\x8a\x18\x7d\x52\x85\xd3\x16\xbc\xbc\x9a\xda\xfc\x08\xb5\x1d\x70\xa0\xd8\xe0\x00", " SIFT", 0}, // eth / SIFT
{ 1, "\x68\x88\xa1\x6e\xa9\x79\x2c\x15\xa4\xdc\xf2\xf6\xc6\x23\xd0\x55\xc8\xed\xe7\x92", " SIG", 18}, // eth / Signal
{ 1, "\x2b\xdc\x0d\x42\x99\x60\x17\xfc\xe2\x14\xb2\x16\x07\xa5\x15\xda\x41\xa9\xe0\xc5", " SKIN", 6}, // eth / SKIN
{ 1, "\x49\x94\xe8\x18\x97\xa9\x20\xc0\xfe\xa2\x35\xeb\x8c\xed\xee\xd3\xc6\xff\xf6\x97", " SKO1", 18}, // eth / Sikoba
{ 1, "\x4c\x38\x2f\x8e\x09\x61\x5a\xc8\x6e\x08\xce\x58\x26\x6c\xc2\x27\xe7\xd4\xd9\x13", " SKR", 6}, // eth / SKR Token
{ 1, "\x32\x4a\x48\xeb\xcb\xb4\x6e\x61\x99\x39\x31\xef\x9d\x35\xf6\x69\x7c\xd2\x90\x1b", " SKRP", 18}, // eth / Skraps
{ 1, "\x6e\x34\xd8\xd8\x47\x64\xd4\x0f\x6d\x7b\x39\xcd\x56\x9f\xd0\x17\xbf\x53\x17\x7d", " SKRP", 18}, // eth / Skraps
{ 1, "\xfd\xfe\x8b\x7a\xb6\xcf\x1b\xd1\xe3\xd1\x45\x38\xef\x40\x68\x62\x96\xc4\x20\x52", " SKRP", 18}, // eth / Skraps
{ 1, "\x7a\x5f\xf2\x95\xdc\x82\x39\xd5\xc2\x37\x4e\x4d\x89\x42\x02\xaa\xf0\x29\xca\xb6", " SLT", 3}, // eth / Smartlands
{ 1, "\x79\x28\xc8\xab\xf1\xf7\x4e\xf9\xf9\x6d\x4d\x0a\x44\xe3\xb4\x20\x9d\x36\x07\x85", " SLY", 18}, // eth / Selfllery
{ 1, "\x6f\x6d\xeb\x5d\xb0\xc4\x99\x4a\x82\x83\xa0\x1d\x6c\xfe\xeb\x27\xfc\x3b\xbe\x9c", " SMART", 0}, // eth / Smart Billions
{ 1, "\x2d\xcf\xaa\xc1\x1c\x9e\xeb\xd8\xc6\xc4\x21\x03\xfe\x9e\x2a\x6a\xd2\x37\xaf\x27", " SMT", 18}, // eth / Smart Node
{ 1, "\x55\xf9\x39\x85\x43\x1f\xc9\x30\x40\x77\x68\x7a\x35\xa1\xba\x10\x3d\xc1\xe0\x81", " SMT", 18}, // eth / SmartMesh
{ 1, "\x78\xeb\x8d\xc6\x41\x07\x7f\x04\x9f\x91\x06\x59\xb6\xd5\x80\xe8\x0d\xc4\xd2\x37", " SMT", 8}, // eth / Social Media Market
{ 1, "\xf4\x13\x41\x46\xaf\x2d\x51\x1d\xd5\xea\x8c\xdb\x1c\x4a\xc8\x8c\x57\xd6\x04\x04", " SNC", 18}, // eth / SNC
{ 1, "\xf3\x33\xb2\xac\xe9\x92\xac\x2b\xbd\x87\x98\xbf\x57\xbc\x65\xa0\x61\x84\xaf\xba", " SND", 0}, // eth / Sandcoin
{ 1, "\xcf\xd6\xae\x8b\xf1\x3f\x42\xde\x14\x86\x73\x51\xea\xff\x7a\x8a\x3b\x9f\xbb\xe7", " SNG", 8}, // eth / SINERGIA
{ 1, "\xae\xc2\xe8\x7e\x0a\x23\x52\x66\xd9\xc5\xad\xc9\xde\xb4\xb2\xe2\x9b\x54\xd0\x09", " SNGLS", 0}, // eth / SingularDTV
{ 1, "\x44\xf5\x88\xae\xeb\x8c\x44\x47\x14\x39\xd1\x27\x0b\x36\x03\xc6\x6a\x92\x62\xf1", " SNIP", 18}, // eth / SNIP
{ 1, "\x98\x3f\x6d\x60\xdb\x79\xea\x8c\xa4\xeb\x99\x68\xc6\xaf\xf8\xcf\xa0\x4b\x3c\x63", " SNM", 18}, // eth / SNM
{ 1, "\xbd\xc5\xba\xc3\x9d\xbe\x13\x2b\x1e\x03\x0e\x89\x8a\xe3\x83\x00\x17\xd7\xd9\x69", " SNOV", 18}, // eth / SNOV
{ 1, "\x74\x4d\x70\xfd\xbe\x2b\xa4\xcf\x95\x13\x16\x26\x61\x4a\x17\x63\xdf\x80\x5b\x9e", " SNT", 18}, // eth / Status Network Token
{ 1, "\x1f\x54\x63\x8b\x77\x37\x19\x3f\xfd\x86\xc1\x9e\xc5\x19\x07\xa7\xc4\x17\x55\xd8", " SOL", 6}, // eth / Sola Token
{ 1, "\x42\xd6\x62\x2d\xec\xe3\x94\xb5\x49\x99\xfb\xd7\x3d\x10\x81\x23\x80\x6f\x6a\x18", " SPANK", 18}, // eth / SpankChain
{ 1, "\x58\xbf\x7d\xf5\x7d\x9d\xa7\x11\x3c\x4c\xcb\x49\xd8\x46\x3d\x49\x08\xc7\x35\xcb", " SPARC", 18}, // eth / SPARC
{ 1, "\x24\xae\xf3\xbf\x1a\x47\x56\x15\x00\xf9\x43\x0d\x74\xed\x40\x97\xc4\x7f\x51\xf2", " SPARTA", 4}, // eth / SPARTA
{ 1, "\x85\x08\x93\x89\xc1\x4b\xd9\xc7\x7f\xc2\xb8\xf0\xc3\xd1\xdc\x33\x63\xbf\x06\xef", " SPF", 18}, // eth / Sportify
{ 1, "\x20\xf7\xa3\xdd\xf2\x44\xdc\x92\x99\x97\x5b\x4d\xa1\xc3\x9f\x8d\x5d\x75\xf0\x5a", " SPN", 6}, // eth / Sapien
{ 1, "\x68\xd5\x7c\x9a\x1c\x35\xf6\x3e\x2c\x83\xee\x8e\x49\xa6\x4e\x9d\x70\x52\x8d\x25", " SRN", 18}, // eth / Sirin Labs
{ 1, "\xb1\x5f\xe5\xa1\x23\xe6\x47\xba\x59\x4c\xea\x7a\x1e\x64\x86\x46\xf9\x5e\xb4\xaa", " SS", 18}, // eth / Sharder
{ 1, "\xbb\xff\x86\x2d\x90\x6e\x34\x8e\x99\x46\xbf\xb2\x13\x2e\xcb\x15\x7d\xa3\xd4\xb4", " SS", 18}, // eth / Sharder
{ 1, "\x6e\x20\x50\xcb\xfb\x3e\xd8\xa4\xd3\x9b\x64\xcc\x9f\x47\xe7\x11\xa0\x3a\x5a\x89", " SSH", 18}, // eth / StreamShares
{ 1, "\x4a\x89\xcd\x48\x6f\xa9\x96\xad\x50\xc0\xa6\x3c\x35\xc7\x87\x02\xf5\x42\x2a\x50", " STABIT", 3}, // eth / StabitCoin
{ 1, "\x9a\x00\x5c\x9a\x89\xbd\x72\xa4\xbd\x27\x72\x1e\x7a\x09\xa3\xc1\x1d\x2b\x03\xc4", " STAC", 18}, // eth / Starter Coin
{ 1, "\xf7\x0a\x64\x2b\xd3\x87\xf9\x43\x80\xff\xb9\x04\x51\xc2\xc8\x1d\x4e\xb8\x2c\xbc", " STAR", 18}, // eth / Star Token
{ 1, "\x62\x9a\xee\x55\xed\x49\x58\x1c\x33\xab\x27\xf9\x40\x3f\x79\x92\xa2\x89\xff\xd5", " STC", 18}, // eth / StrikeCoin Token
{ 1, "\xae\x73\xb3\x8d\x1c\x9a\x8b\x27\x41\x27\xec\x30\x16\x0a\x49\x27\xc4\xd7\x18\x24", " STK", 18}, // eth / STK Token
{ 1, "\x59\x93\x46\x77\x9e\x90\xfc\x3f\x5f\x99\x7b\x5e\xa7\x15\x34\x98\x20\xf9\x15\x71", " STN", 4}, // eth / Saturn Network
{ 1, "\xb6\x4e\xf5\x1c\x88\x89\x72\xc9\x08\xcf\xac\xf5\x9b\x47\xc1\xaf\xbc\x0a\xb8\xac", " STORJ", 8}, // eth / STORJ
{ 1, "\xd0\xa4\xb8\x94\x6c\xb5\x2f\x06\x61\x27\x3b\xfb\xc6\xfd\x0e\x0c\x75\xfc\x64\x33", " STORM", 18}, // eth / Storm Token
{ 1, "\xec\xd5\x70\xbb\xf7\x47\x61\xb9\x60\xfa\x04\xcc\x10\xfe\x2c\x4e\x86\xff\xda\x36", " STP", 8}, // eth / StashPay
{ 1, "\x5c\x3a\x22\x85\x10\xd2\x46\xb7\x8a\x37\x65\xc2\x02\x21\xcb\xf3\x08\x2b\x44\xa4", " STQ", 18}, // eth / Storiqa
{ 1, "\x46\x49\x24\x73\x75\x5e\x8d\xf9\x60\xf8\x03\x48\x77\xf6\x17\x32\xd7\x18\xce\x96", " STRC", 8}, // eth / STRC
{ 1, "\x00\x6b\xea\x43\xba\xa3\xf7\xa6\xf7\x65\xf1\x4f\x10\xa1\xa1\xb0\x83\x34\xef\x45", " STX", 18}, // eth / StoxToken
{ 1, "\x12\x48\x0e\x24\xeb\x5b\xec\x1a\x9d\x43\x69\xca\xb6\xa8\x0c\xad\x3c\x0a\x37\x7a", " SUB", 2}, // eth / Substratum
{ 1, "\x9e\x88\x61\x34\x18\xcf\x03\xdc\xa5\x4d\x6a\x2c\xf6\xad\x93\x4a\x78\xc7\xa1\x7a", " SWM", 18}, // eth / Swarm Fund Token
{ 1, "\xb9\xe7\xf8\x56\x8e\x08\xd5\x65\x9f\x5d\x29\xc4\x99\x71\x73\xd8\x4c\xdf\x26\x07", " SWT", 18}, // eth / Swarm City Token
{ 1, "\x12\xb3\x06\xfa\x98\xf4\xcb\xb8\xd4\x45\x7f\xdf\xf3\xa0\xa0\xa5\x6f\x07\xcc\xdf", " SXDT", 18}, // eth / Spectre.ai D-Token
{ 1, "\x2c\x82\xc7\x3d\x5b\x34\xaa\x01\x59\x89\x46\x2b\x29\x48\xcd\x61\x6a\x37\x64\x1f", " SXUT", 18}, // eth / Spectre.ai U-Token
{ 1, "\x10\xb1\x23\xfd\xdd\xe0\x03\x24\x31\x99\xaa\xd0\x35\x22\x06\x5d\xc0\x58\x27\xa0", " SYN", 18}, // eth / Synapse
{ 1, "\xe7\x77\x5a\x6e\x9b\xcf\x90\x4e\xb3\x9d\xa2\xb6\x8c\x5e\xfb\x4f\x93\x60\xe0\x8c", " TaaS", 6}, // eth / Token-as-a-Service
{ 1, "\xc2\x7a\x2f\x05\xfa\x57\x7a\x83\xba\x0f\xdb\x4c\x38\x44\x3c\x07\x18\x35\x65\x01", " TAU", 18}, // eth / Lamden Tau
{ 1, "\xfa\xcc\xd5\xfc\x83\xc3\xe4\xc3\xc1\xac\x1e\xf3\x5d\x15\xad\xf0\x6b\xcf\x20\x9c", " TBC2", 8}, // eth / TBC2
{ 1, "\xaf\xe6\x05\x11\x34\x1a\x37\x48\x8d\xe2\x5b\xef\x35\x19\x52\x56\x2e\x31\xfc\xc1", " TBT", 8}, // eth / TBitBot
{ 1, "\xfa\x0e\xf5\xe0\x34\xca\xe1\xae\x75\x2d\x59\xbd\xb8\xad\xcd\xe3\x7e\xd7\xab\x97", " TCA", 18}, // eth / TangguoTao Token
{ 1, "\x2a\x1d\xba\xbe\x65\xc5\x95\xb0\x02\x2e\x75\x20\x8c\x34\x01\x41\x39\xd5\xd3\x57", " TDH", 18}, // eth / TrustedHealth
{ 1, "\x85\xe0\x76\x36\x1c\xc8\x13\xa9\x08\xff\x67\x2f\x9b\xad\x15\x41\x47\x44\x02\xb2", " TEL", 2}, // eth / Telcoin
{ 1, "\xa7\xf9\x76\xc3\x60\xeb\xbe\xd4\x46\x5c\x28\x55\x68\x4d\x1a\xae\x52\x71\xef\xa9", " TFL", 8}, // eth / TrueFlip
{ 1, "\x38\x83\xf5\xe1\x81\xfc\xca\xf8\x41\x0f\xa6\x1e\x12\xb5\x9b\xad\x96\x3f\xb6\x45", " THETA", 18}, // eth / Theta Token
{ 1, "\xfe\x7b\x91\x5a\x0b\xaa\x0e\x79\xf8\x5c\x55\x53\x26\x65\x13\xf7\xc1\xc0\x3e\xd0", " THUG", 18}, // eth / THUG
{ 1, "\xa5\xdb\x1d\x6f\x7a\x0d\x5b\xcc\xc1\x7d\x0b\xfd\x39\xd7\xaf\x32\xd5\xe5\xed\xc6", " TICO", 5}, // eth / Topinvestmentcoin
{ 1, "\x65\x31\xf1\x33\xe6\xde\xeb\xe7\xf2\xdc\xe5\xa0\x44\x1a\xa7\xef\x33\x0b\x4e\x53", " TIME", 8}, // eth / Chronobank
{ 1, "\x80\xbc\x55\x12\x56\x1c\x7f\x85\xa3\xa9\x50\x8c\x7d\xf7\x90\x1b\x37\x0f\xa1\xdf", " TIO", 18}, // eth / TIO
{ 1, "\xea\x1f\x34\x6f\xaf\x02\x3f\x97\x4e\xb5\xad\xaf\x08\x8b\xbc\xdf\x02\xd7\x61\xf4", " TIX", 18}, // eth / Blocktix
{ 1, "\xaa\xaf\x91\xd9\xb9\x0d\xf8\x00\xdf\x4f\x55\xc2\x05\xfd\x69\x89\xc9\x77\xe7\x3a", " TKN", 8}, // eth / TokenCard
{ 1, "\x08\xf5\xa9\x23\x5b\x08\x17\x3b\x75\x69\xf8\x36\x45\xd2\xc7\xfb\x55\xe8\xcc\xd8", " TNT", 8}, // eth / Tierion Network Token
{ 1, "\x8e\xb9\x65\xee\x9c\xcf\xbc\xe7\x6c\x0a\x06\x26\x44\x92\xc0\xaf\xef\xc2\x82\x6d", " TOOR", 18}, // eth / ToorCoin
{ 1, "\xcb\x3f\x90\x2b\xf9\x76\x26\x39\x1b\xf8\xba\x87\x26\x4b\xbc\x3d\xc1\x34\x69\xbe", " TRC", 18}, // eth / The Real Coin
{ 1, "\x56\x6f\xd7\x99\x9b\x1f\xc3\x98\x80\x22\xbd\x38\x50\x7a\x48\xf0\xbc\xf2\x2c\x77", " TRCN", 18}, // eth / The Real Coin
{ 1, "\xcb\x94\xbe\x6f\x13\xa1\x18\x2e\x4a\x4b\x61\x40\xcb\x7b\xf2\x02\x5d\x28\xe4\x1b", " TRST", 6}, // eth / TRST
{ 1, "\xf2\x30\xb7\x90\xe0\x53\x90\xfc\x82\x95\xf4\xd3\xf6\x03\x32\xc9\x3b\xed\x42\xe2", " TRX", 6}, // eth / Tron Lab Token
{ 1, "\x6b\x87\x99\x9b\xe8\x73\x58\x06\x5b\xbd\xe4\x1e\x8a\x0f\xe0\xb7\xb1\xcd\x25\x14", " TSW", 18}, // eth / TeslaWatt
{ 1, "\x2e\xf1\xab\x8a\x26\x18\x7c\x58\xbb\x8a\xae\xb1\x1b\x2f\xc6\xd2\x5c\x5c\x07\x16", " TWN", 18}, // eth / The World News
{ 1, "\xfb\xd0\xd1\xc7\x7b\x50\x17\x96\xa3\x5d\x86\xcf\x91\xd6\x5d\x97\x78\xee\xe6\x95", " TWNKL", 3}, // eth / Twinkle
{ 1, "\x24\x69\x27\x91\xbc\x44\x4c\x5c\xd0\xb8\x1e\x3c\xbc\xab\xa4\xb0\x4a\xcd\x1f\x3b", " UKG", 18}, // eth / UnikoinGold
{ 1, "\x10\x5d\x97\xef\x2e\x72\x3f\x1c\xfb\x24\x51\x9b\xc6\xff\x15\xa6\xd0\x91\xa3\xf1", " UMKA", 4}, // eth / UMKA
{ 1, "\x8e\x5a\xfc\x69\xf6\x22\x7a\x3a\xd7\x5e\xd3\x46\xc8\x72\x3b\xc6\x2c\xe9\x71\x23", " UMKA", 4}, // eth / UMKA
{ 1, "\x89\x20\x5a\x3a\x3b\x2a\x69\xde\x6d\xbf\x7f\x01\xed\x13\xb2\x10\x8b\x2c\x43\xe7", " Unicorn", 0}, // eth / Unicorn
{ 1, "\xd0\x1d\xb7\x3e\x04\x78\x55\xef\xb4\x14\xe6\x20\x20\x98\xc4\xbe\x4c\xd2\x42\x3b", " UQC", 18}, // eth / Uquid Coin
{ 1, "\x93\x16\x84\x13\x9f\x75\x6c\x24\xec\x07\x31\xe9\xf7\x4f\xe5\x0e\x55\x48\xdd\xef", " URB", 18}, // eth / Urbit Data
{ 1, "\xd7\x60\xad\xdf\xb2\x4d\x9c\x01\xfe\x4b\xfe\xa7\x47\x5c\x5e\x36\x36\x68\x40\x58", " USDM", 2}, // eth / Mether (USDM)
{ 1, "\xda\xc1\x7f\x95\x8d\x2e\xe5\x23\xa2\x20\x62\x06\x99\x45\x97\xc1\x3d\x83\x1e\xc7", " USDT", 6}, // eth / USD Tether (erc20)
{ 1, "\x70\xa7\x28\x33\xd6\xbf\x7f\x50\x8c\x82\x24\xce\x59\xea\x1e\xf3\xd0\xea\x3a\x38", " UTK", 18}, // eth / UTK
{ 1, "\x9e\x33\x19\x63\x6e\x21\x26\xe3\xc0\xbc\x9e\x31\x34\xae\xc5\xe1\x50\x8a\x46\xc7", " UTN-P", 18}, // eth / Universa
{ 1, "\x35\x43\x63\x8e\xd4\xa9\x00\x6e\x48\x40\xb1\x05\x94\x42\x71\xbc\xea\x15\x60\x5d", " UUU", 18}, // eth / U Networks
{ 1, "\x57\xc7\x5e\xcc\xc8\x55\x71\x36\xd3\x26\x19\xa1\x91\xfb\xcd\xc8\x85\x60\xd7\x11", " VDG", 0}, // eth / VeriDocGlobal
{ 1, "\x82\xbd\x52\x6b\xdb\x71\x8c\x6d\x4d\xd2\x29\x1e\xd0\x13\xa5\x18\x6c\xae\x2d\xca", " VDOC", 18}, // eth / Duty of Care Token
{ 1, "\x34\x0d\x2b\xde\x5e\xb2\x8c\x1e\xed\x91\xb2\xf7\x90\x72\x3e\x3b\x16\x06\x13\xb7", " VEE", 18}, // eth / BLOCKv
{ 1, "\xd8\x50\x94\x2e\xf8\x81\x1f\x2a\x86\x66\x92\xa6\x23\x01\x1b\xde\x52\xa4\x62\xc1", " VEN", 18}, // eth / Vechain
{ 1, "\xeb\xed\x4f\xf9\xfe\x34\x41\x3d\xb8\xfc\x82\x94\x55\x6b\xbd\x15\x28\xa4\xda\xca", " VENUS", 3}, // eth / VENUS
{ 1, "\x8f\x34\x70\xa7\x38\x8c\x05\xee\x4e\x7a\xf3\xd0\x1d\x8c\x72\x2b\x0f\xf5\x23\x74", " VERI", 18}, // eth / Veritas
{ 1, "\x2c\x97\x4b\x2d\x0b\xa1\x71\x6e\x64\x4c\x1f\xc5\x99\x82\xa8\x9d\xdd\x2f\xf7\x24", " VIB", 18}, // eth / VIB
{ 1, "\x88\x24\x48\xf8\x3d\x90\xb2\xbf\x47\x7a\xf2\xea\x79\x32\x7f\xde\xa1\x33\x5d\x93", " VIBEX", 18}, // eth / VIBEX Exchange Token
{ 1, "\xe8\xff\x5c\x9c\x75\xde\xb3\x46\xac\xac\x49\x3c\x46\x3c\x89\x50\xbe\x03\xdf\xba", " VIBEX", 18}, // eth / VIBEX
{ 1, "\xf0\x3f\x8d\x65\xba\xfa\x59\x86\x11\xc3\x49\x51\x24\x09\x3c\x56\xe8\xf6\x38\xf0", " VIEW", 18}, // eth / Viewly
{ 1, "\x23\xb7\x5b\xc7\xaa\xf2\x8e\x2d\x66\x28\xc3\xf4\x24\xb3\x88\x2f\x8f\x07\x2a\x3c", " VIT", 18}, // eth / Vice Industry Token
{ 1, "\x51\x94\x75\xb3\x16\x53\xe4\x6d\x20\xcd\x09\xf9\xfd\xcf\x3b\x12\xbd\xac\xb4\xf5", " VIU", 18}, // eth / VIU
{ 1, "\x92\x2a\xc4\x73\xa3\xcc\x24\x1f\xd3\xa0\x04\x9e\xd1\x45\x36\x45\x2d\x58\xd7\x3c", " VLD", 18}, // eth / VETRI
{ 1, "\xc3\xbc\x9e\xb7\x1f\x75\xec\x43\x9a\x6b\x6c\x8e\x8b\x74\x6f\xcf\x5b\x62\xf7\x03", " VOC", 18}, // eth / VORMACOIN
{ 1, "\x83\xee\xa0\x0d\x83\x8f\x92\xde\xc4\xd1\x47\x56\x97\xb9\xf4\xd3\x53\x7b\x56\xe3", " VOISE", 8}, // eth / Voise
{ 1, "\xed\xba\xf3\xc5\x10\x03\x02\xdc\xdd\xa5\x32\x69\x32\x2f\x37\x30\xb1\xf0\x41\x6d", " VRS", 5}, // eth / Veros
{ 1, "\x5c\x54\x3e\x7a\xe0\xa1\x10\x4f\x78\x40\x6c\x34\x0e\x9c\x64\xfd\x9f\xce\x51\x70", " VSL", 18}, // eth / Vdice
{ 1, "\x28\x6b\xda\x14\x13\xa2\xdf\x81\x73\x1d\x49\x30\xce\x2f\x86\x2a\x35\xa6\x09\xfe", " WaBi", 18}, // eth / WaBi
{ 1, "\x39\xbb\x25\x9f\x66\xe1\xc5\x9d\x5a\xbe\xf8\x83\x75\x97\x9b\x4d\x20\xd9\x80\x22", " WAX", 8}, // eth / WAX
{ 1, "\x74\x95\x1b\x67\x7d\xe3\x2d\x59\x6e\xe8\x51\xa2\x33\x33\x69\x26\xe6\xa2\xcd\x09", " WBA", 7}, // eth / WeBetCrypto
{ 1, "\x8f\x93\x6f\xe0\xfa\xf0\x60\x4c\x9c\x0e\xf2\x40\x6b\xde\x0a\x65\x36\x55\x15\xd6", " WCN", 18}, // eth / WorldCoinNetwork
{ 1, "\x6a\x0a\x97\xe4\x7d\x15\xaa\xd1\xd1\x32\xa1\xac\x79\xa4\x80\xe3\xf2\x07\x90\x63", " WCT", 18}, // eth / WePower
{ 1, "\xc0\x2a\xaa\x39\xb2\x23\xfe\x8d\x0a\x0e\x5c\x4f\x27\xea\xd9\x08\x3c\x75\x6c\xc2", " WETH", 18}, // eth / WETH
{ 1, "\xf4\xfe\x95\x60\x38\x81\xd0\xe0\x79\x54\xfd\x76\x05\xe0\xe9\xa9\x16\xe4\x2c\x44", " WHEN", 18}, // eth / WHEN Token
{ 1, "\xe2\x00\x64\x18\x90\x77\x2f\xce\x8e\xe6\xed\xc5\x35\x4c\xce\xa3\x0a\xc9\x2f\x49", " WHO", 18}, // eth / WhoHas
{ 1, "\xe9\x33\xc0\xcd\x97\x84\x41\x4d\x5f\x27\x8c\x11\x49\x04\xf5\xa8\x4b\x39\x69\x19", " WHO", 18}, // eth / WhoHas
{ 1, "\x5e\x4a\xbe\x64\x19\x65\x0c\xa8\x39\xce\x5b\xb7\xdb\x42\x2b\x88\x1a\x60\x64\xbb", " WiC", 18}, // eth / Wi Coin
{ 1, "\x62\xcd\x07\xd4\x14\xec\x50\xb6\x8c\x7e\xca\xa8\x63\xa2\x3d\x34\x4f\x2d\x06\x2f", " WIC", 0}, // eth / WickNote
{ 1, "\xd3\xc0\x07\x72\xb2\x4d\x99\x7a\x81\x22\x49\xca\x63\x7a\x92\x1e\x81\x35\x77\x01", " WILD", 18}, // eth / WILD Token
{ 1, "\x66\x70\x88\xb2\x12\xce\x3d\x06\xa1\xb5\x53\xa7\x22\x1e\x1f\xd1\x90\x00\xd9\xaf", " WINGS", 18}, // eth / WINGS
{ 1, "\xbf\xbe\x53\x32\xf1\x72\xd7\x78\x11\xbc\x6c\x27\x28\x44\xf3\xe5\x4a\x7b\x23\xbb", " WMK", 18}, // eth / WemarkToken
{ 1, "\xd7\x3a\x66\xb8\xfb\x26\xbe\x8b\x0a\xcd\x7c\x52\xbd\x32\x50\x54\xac\x7d\x46\x8b", " WNK", 18}, // eth / Woonk
{ 1, "\x72\x87\x81\xe7\x57\x35\xdc\x09\x62\xdf\x3a\x51\xd7\xef\x47\xe7\x98\xa7\x10\x7e", " WOLK", 18}, // eth / WOLK
{ 1, "\xf6\xb5\x5a\xcb\xbc\x49\xf4\x52\x4a\xa4\x8d\x19\x28\x1a\x9a\x77\xc5\x4d\xe1\x0f", " WOLK", 18}, // eth / Wolk Token
{ 1, "\xd1\x8e\x45\x4d\x84\x4e\xb0\x00\x9d\x32\xe0\x7a\x0c\xde\x89\xe1\x8d\x64\xcf\xb4", " WORK", 18}, // eth / workTOKEN
{ 1, "\x62\x08\x72\x45\x08\x71\x25\xd3\xdb\x5b\x9a\x3d\x71\x3d\x78\xe7\xbb\xc3\x1e\x54", " WPC", 18}, // eth / WorldPeaceCoin
{ 1, "\x4c\xf4\x88\x38\x7f\x03\x5f\xf0\x8c\x37\x15\x15\x56\x2c\xba\x71\x2f\x90\x15\xd4", " WPR", 18}, // eth / WePower Token
{ 1, "\x71\xe8\xd7\x4f\xf1\xc9\x23\xe3\x69\xd0\xe7\x0d\xfb\x09\x86\x66\x29\xc4\xdd\x35", " WRK", 18}, // eth / WorkCoin
{ 1, "\xb7\xcb\x1c\x96\xdb\x6b\x22\xb0\xd3\xd9\x53\x6e\x01\x08\xd0\x62\xbd\x48\x8f\x74", " WTC", 18}, // eth / Walton
{ 1, "\xd8\x95\x0f\xde\xaa\x10\x30\x4b\x7a\x7f\xd0\x3a\x2f\xc6\x6b\xc3\x9f\x3c\x71\x1a", " WYS", 18}, // eth / wystoken
{ 1, "\x05\x60\x17\xc5\x5a\xe7\xae\x32\xd1\x2a\xef\x7c\x67\x9d\xf8\x3a\x85\xca\x75\xff", " WYV", 18}, // eth / WyvernToken
{ 1, "\x91\x0d\xfc\x18\xd6\xea\x3d\x6a\x71\x24\xa6\xf8\xb5\x45\x8f\x28\x10\x60\xfa\x4c", " X8X", 18}, // eth / X8X
{ 1, "\x4d\xf8\x12\xf6\x06\x4d\xef\x1e\x5e\x02\x9f\x1c\xa8\x58\x77\x7c\xc9\x8d\x2d\x81", " XAUR", 8}, // eth / Xaurum
{ 1, "\x28\xde\xe0\x1d\x53\xfe\xd0\xed\xf5\xf6\xe3\x10\xbf\x8e\xf9\x31\x15\x13\xae\x40", " XBP", 18}, // eth / BlitzPredict
{ 1, "\x4d\x82\x9f\x8c\x92\xa6\x69\x1c\x56\x30\x0d\x02\x0c\x9e\x0d\xb9\x84\xcf\xe2\xba", " XCC", 18}, // eth / CoinCrowd
{ 1, "\x16\xaf\x5b\xfb\x4a\xe7\xe4\x75\xb9\xad\xc3\xbf\x5c\xb2\xf1\xe6\xa5\x0d\x79\x40", " XFS", 8}, // eth / Fanship
{ 1, "\xf6\xb6\xaa\x0e\xf0\xf5\xed\xc2\xc1\xc5\xd9\x25\x47\x7f\x97\xea\xf6\x63\x03\xe7", " XGG", 8}, // eth / Going Gems
{ 1, "\x53\x3e\xf0\x98\x4b\x2f\xaa\x22\x7a\xcc\x62\x0c\x67\xcc\xe1\x2a\xa3\x9c\xd8\xcd", " XGM", 8}, // eth / XGM
{ 1, "\x30\xf4\xa3\xe0\xab\x7a\x76\x73\x3d\x8b\x60\xb8\x9d\xd9\x3c\x3d\x0b\x4c\x9e\x2f", " XGT", 18}, // eth / XGT
{ 1, "\xb1\x10\xec\x7b\x1d\xcb\x8f\xab\x8d\xed\xbf\x28\xf5\x3b\xc6\x3e\xa5\xbe\xdd\x84", " XID", 8}, // eth / XID
{ 1, "\xbc\x86\x72\x7e\x77\x0d\xe6\x8b\x10\x60\xc9\x1f\x6b\xb6\x94\x5c\x73\xe1\x03\x88", " XNK", 18}, // eth / Ink Protocol
{ 1, "\xab\x95\xe9\x15\xc1\x23\xfd\xed\x5b\xdf\xb6\x32\x5e\x35\xef\x55\x15\xf1\xea\x69", " XNN", 18}, // eth / XENON
{ 1, "\x57\x2e\x6f\x31\x80\x56\xba\x0c\x5d\x47\xa4\x22\x65\x31\x13\x84\x3d\x25\x06\x91", " XNT", 0}, // eth / XNT
{ 1, "\xb2\x47\x54\xbe\x79\x28\x15\x53\xdc\x1a\xdc\x16\x0d\xdf\x5c\xd9\xb7\x43\x61\xa4", " XRL", 9}, // eth / XRL
{ 1, "\x0f\x51\x3f\xfb\x49\x26\xff\x82\xd7\xf6\x0a\x05\x06\x90\x47\xac\xa2\x95\xc4\x13", " XSC", 18}, // eth / XSC
{ 1, "\x6f\x7a\x4b\xac\x33\x15\xb5\x08\x2f\x79\x31\x61\xa2\x2e\x26\x66\x6d\x22\x71\x7f", " YEED", 18}, // eth / YEED
{ 1, "\xca\x27\x96\xf9\xf6\x1d\xc7\xb2\x38\xaa\xb0\x43\x97\x1e\x49\xc6\x16\x4d\xf3\x75", " YEED", 18}, // eth / YGGDRASH
{ 1, "\xd9\xa1\x2c\xde\x03\xa8\x6e\x80\x04\x96\x46\x98\x58\xde\x85\x81\xd3\xa5\x35\x3d", " YUP", 18}, // eth / YUP
{ 1, "\x0f\x33\xbb\x20\xa2\x82\xa7\x64\x9c\x7b\x3a\xff\x64\x4f\x08\x4a\x93\x48\xe9\x33", " YUPIE", 18}, // eth / YUPIE
{ 1, "\x67\x81\xa0\xf8\x4c\x7e\x9e\x84\x6d\xcb\x84\xa9\xa5\xbd\x49\x33\x30\x67\xb1\x04", " ZAP", 18}, // eth / ZAP
{ 1, "\x7a\x41\xe0\x51\x7a\x5e\xca\x4f\xdb\xc7\xfb\xeb\xa4\xd4\xc4\x7b\x9f\xf6\xdc\x63", " ZCS", 18}, // eth / Zeusshield
{ 1, "\x05\xf4\xa4\x2e\x25\x1f\x2d\x52\xb8\xed\x15\xe9\xfe\xda\xac\xfc\xef\x1f\xad\x27", " ZIL", 12}, // eth / Zilliqa
{ 1, "\x55\x4f\xfc\x77\xf4\x25\x1a\x9f\xb3\xc0\xe3\x59\x0a\x6a\x20\x5f\x8d\x4e\x06\x7d", " ZMN", 18}, // eth / ZMINE
{ 1, "\xe4\x1d\x24\x89\x57\x1d\x32\x21\x89\x24\x6d\xaf\xa5\xeb\xde\x1f\x46\x99\xf4\x98", " ZRX", 18}, // eth / 0x Project
{ 1, "\xe3\x86\xb1\x39\xed\x37\x15\xca\x4b\x18\xfd\x52\x67\x1b\xdc\xea\x1c\xdf\xe4\xb1", " ZST", 8}, // eth / Zeus Exchange
{42, "\x86\x67\x55\x92\x54\x24\x1d\xde\xd4\xd1\x13\x92\xf8\x68\xd7\x20\x92\x76\x53\x67", " Aeternity", 18}, // kov / Aeternity
{42, "\xc4\x37\x5b\x7d\xe8\xaf\x5a\x38\xa9\x35\x48\xeb\x84\x53\xa4\x98\x22\x2c\x4f\xf2", " DAI", 18}, // kov / RadarRelay test Dai Stablecoin v1.0
{42, "\xee\xe3\x87\x06\x57\xe4\x71\x66\x70\xf1\x85\xdf\x08\x65\x2d\xd8\x48\xfe\x8f\x7e", " DGD", 18}, // kov / RadarRelay test Digix DAO Token
{42, "\xef\x7f\xff\x64\x38\x9b\x81\x4a\x94\x6f\x3e\x92\x10\x55\x13\x70\x5c\xa6\xb9\x90", " GNT", 18}, // kov / RadarRelay test Golem Network Token
{42, "\x3c\x67\xf7\xd4\xde\xcf\x77\x95\x22\x5f\x51\xb5\x41\x34\xf8\x11\x37\x38\x5f\x83", " GUP", 3}, // kov / GUP
{42, "\x1d\xad\x47\x83\xcf\x3f\xe3\x08\x5c\x14\x26\x15\x7a\xb1\x75\xa6\x11\x9a\x04\xba", " MKR", 18}, // kov / RadarRelay test MakerDAO
{42, "\x32\x3b\x5d\x4c\x32\x34\x5c\xed\x77\x39\x3b\x35\x30\xb1\xee\xd0\xf3\x46\x42\x9d", " MLN", 18}, // kov / RadarRelay test Melon Tokens
{42, "\xb1\x88\x45\xc2\x60\xf6\x80\xd5\xb9\xd8\x46\x49\x63\x88\x13\xe3\x42\xe4\xf8\xc9", " REP", 18}, // kov / RadarRelay test Augur Reputation Token
{42, "\x6f\xf6\xc0\xff\x1d\x68\xb9\x64\x90\x1f\x98\x6d\x4c\x9f\xa3\xac\x68\x34\x65\x70", " ZRX", 18}, // kov / RadarRelay test 0x Protocol Token
{ 4, "\x39\x8a\x7a\x69\xf3\xc5\x91\x81\xa1\xff\xe3\x4b\xed\x11\xdc\xb5\xdf\x86\x3a\x8a", " AETH", 18}, // rin / AKASHA Tokens
{ 4, "\xe2\x78\x26\xee\x77\x8b\x6f\x78\xa4\x9a\x68\x6d\xa7\xd6\x4f\x6e\x7b\x08\x4a\x4f", " BHNT", 0}, // rin / Berlin Hack&Tell winner token
{ 4, "\x8b\x65\xd4\xb7\xee\x3f\xff\xa9\x86\xc5\x77\xf0\xf4\xb7\x0a\x21\xba\xe3\xdd\x54", " CTGA", 18}, // rin / Convenient To Go
{ 4, "\x27\x5a\x5b\x34\x65\x99\xb5\x69\x17\xe7\xb1\xc9\xde\x01\x9d\xcf\x9e\xad\x86\x1a", " KC", 18}, // rin / Karma Token
{ 4, "\x64\x75\xa7\xfa\x6e\xd2\xd5\x18\x0f\x0e\x0a\x07\xc2\xd9\x51\xd1\x2c\x0e\xdb\x91", " NONE", 0}, // rin / None
{ 4, "\x12\xfe\x17\x4c\x09\x7f\x6b\x3e\x87\x6b\x3b\x06\x0c\x90\x61\xf4\xb9\xde\xbb\x80", " PPD", 18}, // rin / PP Donation
{ 4, "\x36\x15\x75\x70\x11\x11\x25\x60\x52\x15\x36\x25\x8c\x1e\x73\x25\xae\x3b\x48\xae", " RDN", 18}, // rin / Raiden
{ 4, "\x0a\x05\x7a\x87\xce\x9c\x56\xd7\xe3\x36\xb4\x17\xc7\x9c\xf3\x0e\x8d\x27\x86\x0b", " WALL", 15}, // rin / WALLETH Community-Token
{ 3, "\x95\xd7\x32\x1e\xdc\xe5\x19\x41\x9b\xa1\xdb\xc6\x0a\x89\xba\xfb\xf5\x5e\xac\x0d", " PLASMA", 6}, // rop / *PLASMA
{ 3, "\x6f\x95\xa3\xb6\x82\xf8\xe9\xaa\xcc\x86\xd0\x57\xa6\xdf\x88\xa0\xe6\x81\x45\xa8", " ILSC", 2}, // rop / IsraCoin
{ 3, "\xfd\x5a\x69\xa1\x30\x95\x95\xff\x51\x21\x55\x3f\x52\xc8\xa5\xb2\xb1\xb3\x10\x31", " NONE", 0}, // rop / None
{ 8, "\xff\x3b\xf0\x57\xad\xf3\xb0\xe0\x15\xb6\x46\x53\x31\xa6\x23\x6e\x55\x68\x82\x74", " BEER", 0}, // ubq / BEER
{ 8, "\x08\x53\x3d\x6a\x06\xce\x36\x52\x98\xb1\x2e\xf9\x2e\xb4\x07\xcb\xa8\xaa\x82\x73", " CEFS", 8}, // ubq / CEFS
{ 8, "\x94\xad\x7e\x41\xc1\xd4\x40\x22\xc4\xf4\x7c\xb1\xba\x01\x9f\xd1\xa0\x22\xc5\x36", " DOT", 8}, // ubq / DOT
{ 8, "\x4b\x48\x99\xa1\x0f\x3e\x50\x7d\xb2\x07\xb0\xee\x24\x26\x02\x9e\xfa\x16\x8a\x67", " QWARK", 8}, // ubq / QWARK
{ 8, "\x5e\x17\x15\xbb\x79\x80\x5b\xd6\x72\x72\x97\x60\xb3\xf7\xf3\x4d\x6f\x48\x50\x98", " RICKS", 8}, // ubq / RICKS
};
const TokenType *UnknownToken = (const TokenType *)1;
const TokenType *tokenByChainAddress(uint32_t chain_id, const uint8_t *address)
{
if (!address) return 0;
for (int i = 0; i < TOKENS_COUNT; i++) {
if (chain_id == tokens[i].chain_id && memcmp(address, tokens[i].address, 20) == 0) {
return &(tokens[i]);
}
}
return UnknownToken;
}

@ -0,0 +1,24 @@
// This file is automatically generated from ethereum_tokens.c.mako
// DO NOT EDIT
#include <string.h>
#include "ethereum_tokens.h"
const TokenType tokens[TOKENS_COUNT] = {
% for t in supported_on("trezor1", erc20):
{${"{:>2}".format(t.chain_id)}, ${c_str(t.address_bytes)}, " ${ascii(t.symbol)}", ${t.decimals}}, // ${t.chain} / ${t.name}
% endfor
};
const TokenType *UnknownToken = (const TokenType *)1;
const TokenType *tokenByChainAddress(uint32_t chain_id, const uint8_t *address)
{
if (!address) return 0;
for (int i = 0; i < TOKENS_COUNT; i++) {
if (chain_id == tokens[i].chain_id && memcmp(address, tokens[i].address, 20) == 0) {
return &(tokens[i]);
}
}
return UnknownToken;
}

@ -1,40 +0,0 @@
/*
* This file is part of the TREZOR project, https://trezor.io/
*
* Copyright (C) 2014 Pavol Rusnak <stick@satoshilabs.com>
*
* This library is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __ETHEREUM_TOKENS_H__
#define __ETHEREUM_TOKENS_H__
#include <stdint.h>
#define TOKENS_COUNT 795
typedef struct {
uint32_t chain_id;
const char * const address;
const char * const ticker;
int decimals;
} TokenType;
extern const TokenType tokens[TOKENS_COUNT];
extern const TokenType *UnknownToken;
const TokenType *tokenByChainAddress(uint32_t chain_id, const uint8_t *address);
#endif

@ -0,0 +1,25 @@
// This file is automatically generated from ethereum_tokens.h.mako
// DO NOT EDIT
#ifndef __ETHEREUM_TOKENS_H__
#define __ETHEREUM_TOKENS_H__
#include <stdint.h>
<% erc20_list = list(supported_on("trezor1", erc20)) %>\
#define TOKENS_COUNT ${len(erc20_list)}
typedef struct {
uint32_t chain_id;
const char * const address;
const char * const ticker;
int decimals;
} TokenType;
extern const TokenType tokens[TOKENS_COUNT];
extern const TokenType *UnknownToken;
const TokenType *tokenByChainAddress(uint32_t chain_id, const uint8_t *address);
#endif

@ -0,0 +1,36 @@
<%
ATTRIBUTES = (
("name", c_str),
("ticker", lambda s: c_str(" " + s) if s else "NULL"),
("namespace", c_str),
("mosaic", c_str),
("divisibility", int),
("levy", lambda s: "NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition_NEMMosaicLevy_" + s),
("fee", int),
("levy_namespace", c_str),
("levy_mosaic", c_str),
)
%>\
// This file is automatically generated from nem_mosaics.c.mako
// DO NOT EDIT
#include "nem_mosaics.h"
const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition NEM_MOSAIC_DEFINITIONS[NEM_MOSAIC_DEFINITIONS_COUNT] = {
% for m in supported_on("trezor1", nem):
{
% for attr, func in ATTRIBUTES:
% if attr in m:
.has_${attr} = true,
.${attr} = ${func(m[attr])},
% endif
% endfor
% if "networks" in m:
.networks_count = ${len(m["networks"])},
.networks = { ${", ".join(map(str, m["networks"]))} },
% endif
},
% endfor
};
const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition *NEM_MOSAIC_DEFINITION_XEM = NEM_MOSAIC_DEFINITIONS;

@ -0,0 +1,15 @@
// This file is automatically generated from nem_mosaics.h.mako
// DO NOT EDIT
#ifndef __NEM_MOSAICS_H__
#define __NEM_MOSAICS_H__
#include "messages-nem.pb.h"
<% nem_list = list(supported_on("trezor1", nem)) %>\
#define NEM_MOSAIC_DEFINITIONS_COUNT (${len(nem_list)})
extern const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition NEM_MOSAIC_DEFINITIONS[NEM_MOSAIC_DEFINITIONS_COUNT];
extern const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition *NEM_MOSAIC_DEFINITION_XEM;
#endif

@ -1,122 +0,0 @@
#!/usr/bin/env python
import json
import os
import sys
import collections
import itertools
import numbers
from google.protobuf import json_format
try:
basestring
except NameError:
basestring = (str, bytes)
HEADER_TEMPLATE = """
// This file is automatically generated by nem_mosaics.py -- DO NOT EDIT!
#ifndef __NEM_MOSAICS_H__
#define __NEM_MOSAICS_H__
#include "messages-nem.pb.h"
#define NEM_MOSAIC_DEFINITIONS_COUNT ({count})
extern const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition NEM_MOSAIC_DEFINITIONS[NEM_MOSAIC_DEFINITIONS_COUNT];
extern const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition *NEM_MOSAIC_DEFINITION_XEM;
#endif
""".lstrip() # noqa: E501
CODE_TEMPLATE = """
// This file is automatically generated by nem_mosaics.py -- DO NOT EDIT!
#include "nem_mosaics.h"
const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition NEM_MOSAIC_DEFINITIONS[NEM_MOSAIC_DEFINITIONS_COUNT] = {code};
const NEMSignTx_NEMMosaicCreation_NEMMosaicDefinition *NEM_MOSAIC_DEFINITION_XEM = NEM_MOSAIC_DEFINITIONS;
""".lstrip() # noqa: E501
def format_primitive(value):
if isinstance(value, bool):
return ("false", "true")[value]
elif isinstance(value, numbers.Number):
return str(value)
elif isinstance(value, basestring):
return json.dumps(value)
elif isinstance(value, collections.Sequence):
return "{ " + ", ".join(
format_primitive(item) for item in value
) + " }"
else:
raise TypeError
def format_struct(struct):
return "{\n" + "\n".join(
"\t.{0} = {1},".format(member, value)
for member, value in struct.items()
) + "\n}"
def format_field(field, value):
if field.message_type is not None:
raise TypeError
elif field.enum_type:
type_name = field.enum_type.full_name.replace('.', '_')
enum_name = field.enum_type.values_by_number[value].name
return "{0}_{1}".format(type_name, enum_name)
elif hasattr(value, "_values"):
return format_primitive(value._values)
else:
return format_primitive(value)
def field_to_meta(field, value):
if field.label == field.LABEL_REPEATED:
return ("{}_count".format(field.name), format_primitive(len(value)))
else:
return ("has_{}".format(field.name), format_primitive(True))
def message_to_struct(_message, proto):
message = json_format.ParseDict(_message, proto())
return collections.OrderedDict(itertools.chain.from_iterable(
(
field_to_meta(field, value),
(field.name, format_field(field, value)),
) for field, value in message.ListFields()
))
def format_message(message, proto):
return format_struct(message_to_struct(message, proto))
def format_messages(messages, proto):
return "{" + ",\n".join(
format_message(message, proto) for message in messages
) + "}"
if __name__ == "__main__":
os.chdir(os.path.abspath(os.path.dirname(__file__)))
sys.path.insert(0, "protob")
import messages_nem_pb2
messages = json.load(open("defs/nem/nem_mosaics.json"))
with open("nem_mosaics.h", "w+") as f:
f.write(HEADER_TEMPLATE.format(
count=format_primitive(len(messages)))
)
with open("nem_mosaics.c", "w+") as f:
f.write(CODE_TEMPLATE.format(
code=format_messages(messages, messages_nem_pb2.NEMSignTx.NEMMosaicCreation.NEMMosaicDefinition))
)

@ -1 +1 @@
Subproject commit e0108d34bf4b741d9ddcf1e7b423e799a3a04b77
Subproject commit d37abab57d6a03d611f4008af0cbfc1d5d872bd7
Loading…
Cancel
Save