From 17fa6ab4ec08f098c8320f2598b1467d4d034065 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Mon, 15 Feb 2021 14:39:38 +0100 Subject: [PATCH] chore(common): update chains+tokens --- common/defs/duplicity_overrides.json | 10 +- common/defs/ethereum/chains | 2 +- common/defs/ethereum/tokens | 2 +- common/defs/support.json | 236 ++++++++++++++++++++++- common/tools/coin_info.py | 5 +- core/src/apps/ethereum/networks.py | 278 ++++++++++++++++++++++++++- core/src/apps/ethereum/tokens.py | 58 +++++- 7 files changed, 565 insertions(+), 26 deletions(-) diff --git a/common/defs/duplicity_overrides.json b/common/defs/duplicity_overrides.json index 12d6a2b50..d62a1758c 100644 --- a/common/defs/duplicity_overrides.json +++ b/common/defs/duplicity_overrides.json @@ -6,5 +6,13 @@ "erc20:eth:Hdp": true, "erc20:eth:Hdp.ф": true, "misc:BNB": false, - "eth:BNB": false + "eth:BNB": false, + "eth:ONE:1666600000": false, + "eth:ONE:1666600001": false, + "eth:ONE:1666600002": false, + "eth:ONE:1666600003": false, + "eth:tGOR:5": false, + "eth:tGOR:420": false, + "eth:tCELO:44787": false, + "eth:tCELO:62320": false } diff --git a/common/defs/ethereum/chains b/common/defs/ethereum/chains index 1c01eda5b..143a38eee 160000 --- a/common/defs/ethereum/chains +++ b/common/defs/ethereum/chains @@ -1 +1 @@ -Subproject commit 1c01eda5bf54675711370305af299c83c42f19d6 +Subproject commit 143a38eee7f5d7072969d25e7cf37760a2503b41 diff --git a/common/defs/ethereum/tokens b/common/defs/ethereum/tokens index 73f500fc6..c0fd515d2 160000 --- a/common/defs/ethereum/tokens +++ b/common/defs/ethereum/tokens @@ -1 +1 @@ -Subproject commit 73f500fc62a9c12c275c255566c01ab81eaddc32 +Subproject commit c0fd515d273adf532e9751ca7310e1e1b74975ad diff --git a/common/defs/support.json b/common/defs/support.json index 8c5405057..54d025550 100644 --- a/common/defs/support.json +++ b/common/defs/support.json @@ -180,6 +180,8 @@ "erc20:eth:ADST": "1.6.2", "erc20:eth:ADT": "1.6.2", "erc20:eth:ADX": "1.6.2", + "erc20:eth:ADX-LOYALTY": "1.9.5", + "erc20:eth:ADXL": "1.9.5", "erc20:eth:AE": "1.6.2", "erc20:eth:AEUR": "1.9.0", "erc20:eth:AFA": "1.8.0", @@ -192,6 +194,7 @@ "erc20:eth:AIX": "1.6.2", "erc20:eth:AKC": "1.6.3", "erc20:eth:ALCO": "1.6.2", + "erc20:eth:ALEPH": "1.9.5", "erc20:eth:ALI": "1.8.0", "erc20:eth:ALIS": "1.6.2", "erc20:eth:ALTS": "1.6.2", @@ -203,20 +206,24 @@ "erc20:eth:AMN": "1.6.2", "erc20:eth:AMO": "1.6.2", "erc20:eth:AMON": "1.9.0", + "erc20:eth:AMP": "1.9.5", "erc20:eth:AMPL": "1.8.4", "erc20:eth:AMTC": "1.6.2", "erc20:eth:ANIME": "1.9.0", "erc20:eth:ANJ": "1.9.0", "erc20:eth:AOA": "1.8.0", + "erc20:eth:API3": "1.9.5", "erc20:eth:APIS": "1.6.2", "erc20:eth:APPC": "1.6.2", "erc20:eth:APT": "1.6.2", + "erc20:eth:AQT": "1.9.5", "erc20:eth:ARB": "1.8.0", "erc20:eth:ARC": "1.6.2", "erc20:eth:ARCT": "1.6.2", "erc20:eth:ARD": "1.6.2", "erc20:eth:ARE": "1.9.0", "erc20:eth:ARN": "1.6.2", + "erc20:eth:ARNX": "1.9.5", "erc20:eth:ART": "1.6.2", "erc20:eth:ARX": "1.6.2", "erc20:eth:ARXT": "1.6.2", @@ -244,6 +251,7 @@ "erc20:eth:BAC": "1.8.4", "erc20:eth:BAL": "1.9.3", "erc20:eth:BALI": "1.9.0", + "erc20:eth:BAMBOO": "1.9.5", "erc20:eth:BANCA": "1.8.0", "erc20:eth:BANX": "1.6.2", "erc20:eth:BAR": "1.9.0", @@ -275,6 +283,7 @@ "erc20:eth:BFT": "1.8.4", "erc20:eth:BHPC": "1.8.0", "erc20:eth:BHR": "1.8.0", + "erc20:eth:BID": "1.9.5", "erc20:eth:BIT": "1.8.0", "erc20:eth:BITCAR": "1.8.0", "erc20:eth:BITPARK": "1.8.0", @@ -389,6 +398,7 @@ "erc20:eth:CLL": "1.6.2", "erc20:eth:CLN": "1.6.2", "erc20:eth:CLP": "1.6.2", + "erc20:eth:CLT": "1.9.5", "erc20:eth:CMBT": "1.6.2", "erc20:eth:CMC": "1.6.2", "erc20:eth:CMCT": "1.8.0", @@ -404,6 +414,7 @@ "erc20:eth:COMP": "1.9.3", "erc20:eth:CORI": "1.6.3", "erc20:eth:COSM": "1.8.0", + "erc20:eth:COTI": "1.9.5", "erc20:eth:COV": "1.6.2", "erc20:eth:CPAL": "1.8.4", "erc20:eth:CPAY": "1.8.0", @@ -463,6 +474,7 @@ "erc20:eth:DAY": "1.6.2", "erc20:eth:DBET": "1.8.0", "erc20:eth:DCA": "1.6.2", + "erc20:eth:DCB": "1.9.5", "erc20:eth:DCC": "1.6.3", "erc20:eth:DCL": "1.6.2", "erc20:eth:DCN": "1.6.2", @@ -488,6 +500,7 @@ "erc20:eth:DLT": "1.6.2", "erc20:eth:DMT": "1.6.2", "erc20:eth:DNA": "1.8.0", + "erc20:eth:DNA:deprecated": "1.9.5", "erc20:eth:DNT": "1.6.2", "erc20:eth:DNX": "1.6.2", "erc20:eth:DOCK": "1.8.0", @@ -606,6 +619,7 @@ "erc20:eth:FLUZ": "1.6.2", "erc20:eth:FLX": "1.6.2", "erc20:eth:FMF": "1.8.0", + "erc20:eth:FMTA": "1.9.5", "erc20:eth:FND": "1.6.2", "erc20:eth:FNKOS": "1.8.0", "erc20:eth:FNTB": "1.8.0", @@ -657,6 +671,7 @@ "erc20:eth:GET": "1.6.2", "erc20:eth:GFN": "1.9.0", "erc20:eth:GGC": "1.8.4", + "erc20:eth:GHX": "1.9.5", "erc20:eth:GIF": "1.6.2", "erc20:eth:GIM": "1.6.2", "erc20:eth:GIRL": "1.8.4", @@ -669,11 +684,14 @@ "erc20:eth:GNY": "1.8.0", "erc20:eth:GOLDX": "1.6.2", "erc20:eth:GOT": "1.8.0", + "erc20:eth:GOVI": "1.9.5", + "erc20:eth:GR": "1.9.5", "erc20:eth:GRG": "1.9.0", "erc20:eth:GRID": "1.6.2", "erc20:eth:GRMD": "1.8.0", "erc20:eth:GROO": "1.8.0", "erc20:eth:GROW": "1.6.2", + "erc20:eth:GRT": "1.9.5", "erc20:eth:GSC": "1.8.0", "erc20:eth:GSE": "1.6.3", "erc20:eth:GST2": "1.9.0", @@ -724,6 +742,7 @@ "erc20:eth:HST": "1.6.2", "erc20:eth:HT": "1.8.0", "erc20:eth:HTX": "1.9.0", + "erc20:eth:HUB": "1.9.5", "erc20:eth:HUBS": "1.8.4", "erc20:eth:HUR": "1.9.0", "erc20:eth:HUSL": "1.9.0", @@ -768,11 +787,13 @@ "erc20:eth:ITC": "1.6.2", "erc20:eth:ITO": "1.9.0", "erc20:eth:ITO:deprecated": "1.9.1", + "erc20:eth:ITR": "1.9.5", "erc20:eth:ITT": "1.6.2", "erc20:eth:IVY": "1.8.0", "erc20:eth:IXT": "1.6.2", "erc20:eth:IoT": "1.6.2", "erc20:eth:J8T": "1.6.2", + "erc20:eth:JASMY": "1.9.5", "erc20:eth:JBD": "1.9.0", "erc20:eth:JBX": "1.9.0", "erc20:eth:JC": "1.8.0", @@ -861,7 +882,9 @@ "erc20:eth:MCO": "1.6.2", "erc20:eth:MDA": "1.6.2", "erc20:eth:MDT": "1.8.0", + "erc20:eth:MDX": "1.9.5", "erc20:eth:MEDX": "1.8.0", + "erc20:eth:MEME": "1.9.5", "erc20:eth:MESG": "1.8.4", "erc20:eth:MEST": "1.6.2", "erc20:eth:MET": "1.8.0", @@ -881,6 +904,7 @@ "erc20:eth:MLN (new)": "1.8.0", "erc20:eth:MLN (old):deprecated": "1.8.0", "erc20:eth:MNE": "1.6.2", + "erc20:eth:MNL": "1.9.5", "erc20:eth:MNT": "1.6.2", "erc20:eth:MNTP": "1.6.2", "erc20:eth:MOC": "1.8.0", @@ -893,13 +917,13 @@ "erc20:eth:MRP": "1.6.2", "erc20:eth:MRV": "1.6.2", "erc20:eth:MSP": "1.6.2", + "erc20:eth:MTA": "1.9.5", "erc20:eth:MTH": "1.6.2", "erc20:eth:MTL": "1.6.2", "erc20:eth:MTN": "1.6.2", "erc20:eth:MTR": "1.6.2", "erc20:eth:MTRc": "1.6.2", "erc20:eth:MTX": "1.6.2", - "erc20:eth:MUSD": "1.9.0", "erc20:eth:MUXE": "1.6.2", "erc20:eth:MVG": "1.8.4", "erc20:eth:MVL": "1.8.0", @@ -907,6 +931,7 @@ "erc20:eth:MWAT": "1.6.2", "erc20:eth:MYD": "1.6.2", "erc20:eth:MYST": "1.6.2", + "erc20:eth:MYST:deprecated": "1.9.5", "erc20:eth:NAC": "1.6.2", "erc20:eth:NAMTC": "1.9.0", "erc20:eth:NAMTT": "1.9.0", @@ -916,6 +941,7 @@ "erc20:eth:NBAI": "1.6.2", "erc20:eth:NBC": "1.8.0", "erc20:eth:NCASH": "1.8.0", + "erc20:eth:NCR": "1.9.5", "erc20:eth:NCT": "1.6.2", "erc20:eth:NDC": "1.6.2", "erc20:eth:NDX": "1.8.0", @@ -941,6 +967,7 @@ "erc20:eth:NRM": "1.8.4", "erc20:eth:NTO": "1.8.0", "erc20:eth:NTWK": "1.8.0", + "erc20:eth:NU": "1.9.5", "erc20:eth:NUG": "1.6.3", "erc20:eth:NUKE": "1.9.0", "erc20:eth:NULS": "1.6.2", @@ -951,12 +978,16 @@ "erc20:eth:OAK": "1.6.2", "erc20:eth:OAX": "1.6.2", "erc20:eth:OCC": "1.6.2", + "erc20:eth:OCEAN": "1.9.5", + "erc20:eth:OCEAN:deprecated": "1.9.5", "erc20:eth:OCN": "1.8.0", + "erc20:eth:OCTO": "1.9.5", "erc20:eth:ODE": "1.6.3", "erc20:eth:OGK": "1.9.0", "erc20:eth:OGN": "1.9.0", "erc20:eth:OIKOS": "1.8.4", "erc20:eth:OJX": "1.6.2", + "erc20:eth:OKB": "1.9.5", "erc20:eth:OLDPCL": "1.9.0", "erc20:eth:OLD_MKR": "1.6.2", "erc20:eth:OLE": "1.8.0", @@ -964,7 +995,6 @@ "erc20:eth:OMG": "1.6.2", "erc20:eth:OMT": "1.6.3", "erc20:eth:OMX": "1.8.0", - "erc20:eth:ONE": "1.8.0", "erc20:eth:ONEK": "1.6.2", "erc20:eth:ONG": "1.8.0", "erc20:eth:ONL": "1.8.0", @@ -984,6 +1014,7 @@ "erc20:eth:OTN": "1.8.0", "erc20:eth:OTO": "1.9.0", "erc20:eth:OTO:deprecated": "1.9.1", + "erc20:eth:OUSD": "1.9.5", "erc20:eth:OWN": "1.6.3", "erc20:eth:OWT": "1.9.0", "erc20:eth:OXT": "1.9.0", @@ -1014,9 +1045,11 @@ "erc20:eth:PEXT": "1.6.2", "erc20:eth:PFR": "1.8.0", "erc20:eth:PHI": "1.8.0", + "erc20:eth:PICKLE": "1.9.5", "erc20:eth:PIPL": "1.6.2", "erc20:eth:PIT": "1.8.0", "erc20:eth:PIX": "1.6.2", + "erc20:eth:PIXIE": "1.9.5", "erc20:eth:PKG": "1.8.0", "erc20:eth:PKT": "1.8.0", "erc20:eth:PLA": "1.9.0", @@ -1089,6 +1122,7 @@ "erc20:eth:REBL": "1.6.2", "erc20:eth:RED": "1.6.2", "erc20:eth:REDC": "1.6.3", + "erc20:eth:REEF": "1.9.5", "erc20:eth:REF": "1.8.0", "erc20:eth:REM": "1.8.0", "erc20:eth:REMI": "1.8.0", @@ -1149,6 +1183,7 @@ "erc20:eth:SENSE": "1.6.2", "erc20:eth:SENT": "1.8.0", "erc20:eth:SET": "1.6.2", + "erc20:eth:SETS": "1.9.5", "erc20:eth:SEXY": "1.6.2", "erc20:eth:SGA": "1.9.0", "erc20:eth:SGEL": "1.6.2", @@ -1227,6 +1262,7 @@ "erc20:eth:SUB": "1.6.2", "erc20:eth:SUB (old):deprecated": "1.9.0", "erc20:eth:SUR": "1.8.0", + "erc20:eth:SUSHI": "1.9.5", "erc20:eth:SVD": "1.8.0", "erc20:eth:SVG": "1.9.0", "erc20:eth:SWAP": "1.9.0", @@ -1237,6 +1273,7 @@ "erc20:eth:SXR": "1.9.0", "erc20:eth:SXUT": "1.6.2", "erc20:eth:SYN": "1.6.2", + "erc20:eth:SYSX": "1.9.5", "erc20:eth:SenSatorI": "1.6.2", "erc20:eth:TALAO": "1.8.0", "erc20:eth:TAN": "1.9.0", @@ -1246,6 +1283,7 @@ "erc20:eth:TBC": "1.8.4", "erc20:eth:TBC2": "1.6.2", "erc20:eth:TBT": "1.6.2", + "erc20:eth:TBTC": "1.9.5", "erc20:eth:TBX": "1.8.0", "erc20:eth:TCA": "1.7.1", "erc20:eth:TCAD": "1.9.0", @@ -1311,6 +1349,8 @@ "erc20:eth:UCN": "1.8.0", "erc20:eth:UFR": "1.8.0", "erc20:eth:UKG": "1.6.2", + "erc20:eth:UMB": "1.9.5", + "erc20:eth:UNI": "1.9.5", "erc20:eth:UP": "1.8.0", "erc20:eth:UPP": "1.8.0", "erc20:eth:UQC": "1.6.2", @@ -1324,6 +1364,7 @@ "erc20:eth:USDT": "1.8.0", "erc20:eth:USDx": "1.9.0", "erc20:eth:UTK": "1.6.2", + "erc20:eth:UTK:deprecated": "1.9.5", "erc20:eth:UTNP": "1.8.0", "erc20:eth:UTT": "1.8.0", "erc20:eth:UUU": "1.6.2", @@ -1371,6 +1412,7 @@ "erc20:eth:WAY": "1.8.4", "erc20:eth:WBA": "1.6.2", "erc20:eth:WBTC": "1.8.0", + "erc20:eth:WBX": "1.9.5", "erc20:eth:WCK": "1.9.0", "erc20:eth:WCN": "1.6.2", "erc20:eth:WCT": "1.6.2", @@ -1378,6 +1420,7 @@ "erc20:eth:WETH": "1.6.2", "erc20:eth:WHEN": "1.6.2", "erc20:eth:WIB": "1.9.0", + "erc20:eth:WILC": "1.9.5", "erc20:eth:WILD": "1.6.2", "erc20:eth:WIN": "1.8.0", "erc20:eth:WINGS": "1.6.2", @@ -1430,8 +1473,14 @@ "erc20:eth:XSC": "1.6.2", "erc20:eth:XSGD": "1.9.1", "erc20:eth:XYO": "1.8.0", + "erc20:eth:YAM": "1.9.5", + "erc20:eth:YAMv2": "1.9.5", "erc20:eth:YEE": "1.8.0", + "erc20:eth:YFI": "1.9.5", + "erc20:eth:YFII": "1.9.5", + "erc20:eth:YFV": "1.9.5", "erc20:eth:YNN": "1.9.0", + "erc20:eth:YOUC": "1.9.5", "erc20:eth:YOYOW": "1.8.0", "erc20:eth:YTRO": "1.8.4", "erc20:eth:ZAP": "1.6.2", @@ -1679,11 +1728,13 @@ "erc20:eth:univ2BATETH": "1.9.3", "erc20:eth:univ2BIZETH": "1.9.3", "erc20:eth:univ2BNTETH": "1.9.3", + "erc20:eth:univ2BOOSTETH": "1.9.5", "erc20:eth:univ2BPTETH": "1.9.3", "erc20:eth:univ2CAMOETH": "1.9.3", "erc20:eth:univ2CELETH": "1.9.3", "erc20:eth:univ2CHIETH": "1.9.3", "erc20:eth:univ2COMPETH": "1.9.3", + "erc20:eth:univ2CREAMETH": "1.9.5", "erc20:eth:univ2DAI2KEY": "1.9.3", "erc20:eth:univ2DAIALEPH": "1.9.3", "erc20:eth:univ2DAIETH": "1.9.3", @@ -1713,6 +1764,7 @@ "erc20:eth:univ2ETHENJ": "1.9.3", "erc20:eth:univ2ETHESH": "1.9.3", "erc20:eth:univ2ETHFRM": "1.9.3", + "erc20:eth:univ2ETHFSW": "1.9.5", "erc20:eth:univ2ETHHEX2T": "1.9.3", "erc20:eth:univ2ETHKNC": "1.9.3", "erc20:eth:univ2ETHNEC": "1.9.3", @@ -1721,9 +1773,11 @@ "erc20:eth:univ2ETHPDS": "1.9.3", "erc20:eth:univ2ETHPOWER": "1.9.3", "erc20:eth:univ2ETHSHIP": "1.9.3", + "erc20:eth:univ2ETHSWAP": "1.9.5", "erc20:eth:univ2ETHUBOMB": "1.9.3", "erc20:eth:univ2ETHUNC": "1.9.3", "erc20:eth:univ2ETHUSDT": "1.9.3", + "erc20:eth:univ2ETHXAMP": "1.9.5", "erc20:eth:univ2ETHZRX": "1.9.3", "erc20:eth:univ2EWTBETH": "1.9.3", "erc20:eth:univ2FMAETH": "1.9.3", @@ -1732,8 +1786,10 @@ "erc20:eth:univ2FXCETH": "1.9.3", "erc20:eth:univ2GENETH": "1.9.3", "erc20:eth:univ2GHOSTETH": "1.9.3", + "erc20:eth:univ2GHSTETH": "1.9.5", "erc20:eth:univ2H3XETH": "1.9.3", "erc20:eth:univ2HEXETH": "1.9.3", + "erc20:eth:univ2HKMTUSDT": "1.9.5", "erc20:eth:univ2HXBETH": "1.9.3", "erc20:eth:univ2IDXTETH": "1.9.3", "erc20:eth:univ2JRTETH": "1.9.3", @@ -1747,6 +1803,7 @@ "erc20:eth:univ2MANAETH": "1.9.3", "erc20:eth:univ2MATHETH": "1.9.3", "erc20:eth:univ2MCBETH": "1.9.3", + "erc20:eth:univ2MEMEETH": "1.9.5", "erc20:eth:univ2MKRETH": "1.9.3", "erc20:eth:univ2MKRMLN": "1.9.3", "erc20:eth:univ2MKRUSDC": "1.9.3", @@ -1754,8 +1811,11 @@ "erc20:eth:univ2MRDNETH": "1.9.3", "erc20:eth:univ2NMRETH": "1.9.3", "erc20:eth:univ2OCEANETH": "1.9.3", + "erc20:eth:univ2OCEANETH:deprecated:8fd3": "1.9.5", + "erc20:eth:univ2OCEANETH:deprecated:f063": "1.9.5", "erc20:eth:univ2OGNETH": "1.9.3", "erc20:eth:univ2PAXGETH": "1.9.3", + "erc20:eth:univ2PICKLEETH": "1.9.5", "erc20:eth:univ2PLRETH": "1.9.3", "erc20:eth:univ2PNKETH": "1.9.3", "erc20:eth:univ2PODETH": "1.9.3", @@ -1767,17 +1827,21 @@ "erc20:eth:univ2RLCETH": "1.9.3", "erc20:eth:univ2RPLETH": "1.9.3", "erc20:eth:univ2RSRETH": "1.9.3", + "erc20:eth:univ2SAKEETH": "1.9.5", "erc20:eth:univ2SHUFETH": "1.9.3", "erc20:eth:univ2SNXETH": "1.9.3", "erc20:eth:univ2STAETH": "1.9.3", "erc20:eth:univ2STAKEETH": "1.9.3", "erc20:eth:univ2STONKETH": "1.9.3", "erc20:eth:univ2STORJETH": "1.9.3", + "erc20:eth:univ2SoETHETH": "1.9.5", "erc20:eth:univ2TRACETH": "1.9.3", + "erc20:eth:univ2TRADEETH": "1.9.5", "erc20:eth:univ2TRBDAI": "1.9.3", "erc20:eth:univ2TRBETH": "1.9.3", "erc20:eth:univ2UBTETH": "1.9.3", "erc20:eth:univ2UMAETH": "1.9.3", + "erc20:eth:univ2UNIETH": "1.9.5", "erc20:eth:univ2UNIUSDETH": "1.9.3", "erc20:eth:univ2USDCBUIDL": "1.9.3", "erc20:eth:univ2USDCETH": "1.9.3", @@ -1793,10 +1857,13 @@ "erc20:eth:univ2XNSETH": "1.9.3", "erc20:eth:univ2XORETH": "1.9.3", "erc20:eth:univ2XRTETH": "1.9.3", + "erc20:eth:univ2YFIETH": "1.9.5", + "erc20:eth:univ2YFIIETH": "1.9.5", "erc20:eth:univ2sETHETH": "1.9.3", "erc20:eth:univ2sUSDETH": "1.9.3", "erc20:eth:univ2sXAUUSDC": "1.9.3", "erc20:eth:univ2uTOPIAETH": "1.9.3", + "erc20:eth:univ2wNXMETH": "1.9.5", "erc20:eth:usBAT": "1.9.0", "erc20:eth:usBAT2x": "1.9.0", "erc20:eth:usBAT3x": "1.9.0", @@ -1867,13 +1934,17 @@ "erc20:ubq:QWARK": "1.6.2", "erc20:ubq:RICKS": "1.6.2", "eth:0xF": "1.9.4", + "eth:420": "1.9.5", + "eth:ACA": "1.9.5", "eth:AKA": "1.6.3", "eth:AQUA": "1.8.2", "eth:ATS": "1.8.0", "eth:AUX": "1.8.4", + "eth:AVAX": "1.9.5", "eth:BNB": "1.9.4", + "eth:CELO": "1.9.5", "eth:CLO": "1.6.2", - "eth:DIO": "1.9.4", + "eth:DIODE": "1.9.5", "eth:EGEM": "1.6.2", "eth:ELA": "1.9.4", "eth:ELLA": "1.6.2", @@ -1885,60 +1956,94 @@ "eth:EWT": "1.9.4", "eth:EXP": "1.6.2", "eth:FIN": "1.9.4", + "eth:FLR": "1.9.5", "eth:FTM": "1.9.4", "eth:FUSE": "1.9.4", "eth:GO": "1.6.2", "eth:HPB": "1.8.2", + "eth:HT": "1.9.5", "eth:ILT": "1.9.4", "eth:IPOS": "1.9.4", + "eth:JOYS": "1.9.5", + "eth:KAR": "1.9.5", + "eth:KLAY": "1.9.5", "eth:LISINSKI": "1.9.4", + "eth:MATH": "1.9.5", "eth:MATIC": "1.9.4", "eth:META": "1.8.2", "eth:MIX": "1.7.2", + "eth:MTR": "1.9.5", "eth:MUSIC": "1.6.3", "eth:NEAR": "1.9.4", + "eth:NEW": "1.9.5", "eth:NRG": "1.9.4", "eth:OETH": "1.9.4", + "eth:OKT": "1.9.5", + "eth:ONE:1666600000": "1.9.5", + "eth:ONE:1666600001": "1.9.5", + "eth:ONE:1666600002": "1.9.5", + "eth:ONE:1666600003": "1.9.5", "eth:PHT": "1.9.4", "eth:PIRL": "1.6.3", "eth:POA": "1.9.4", "eth:RBD": "1.9.4", "eth:RBTC": "1.6.2", + "eth:RUPX": "1.9.5", "eth:SKL": "1.9.4", + "eth:SOTER": "1.9.5", "eth:TAO": "1.9.4", + "eth:TBG": "1.9.5", "eth:TCH": "1.9.4", "eth:TCLO": "1.9.4", "eth:TETC": "1.9.4", + "eth:TFI": "1.9.5", + "eth:TOKT": "1.9.5", "eth:TOMO": "1.9.4", + "eth:TOYS": "1.9.5", "eth:TPEP": "1.9.4", "eth:TSF": "1.9.4", "eth:TST": "1.9.4", "eth:TT": "1.9.4", "eth:TUBQ": "1.9.4", + "eth:TXDC": "1.9.5", "eth:U+25B3": "1.9.4", "eth:UBQ": "1.6.2", "eth:VAL": "1.9.4", "eth:WEB": "1.9.4", + "eth:XDC": "1.9.5", "eth:XERO": "1.9.4", "eth:YETI": "1.9.4", + "eth:bNEAR": "1.9.5", + "eth:peggle": "1.9.5", "eth:tATS": "1.8.0", + "eth:tAVAX": "1.9.5", "eth:tBNB": "1.9.4", + "eth:tCELO:44787": "1.9.5", + "eth:tCELO:62320": "1.9.5", + "eth:tCFLR": "1.9.5", "eth:tDBM": "1.9.4", "eth:tELA": "1.9.4", - "eth:tGOR": "1.8.2", + "eth:tGOR:420": "1.9.5", + "eth:tGOR:5": "1.9.5", "eth:tKAL": "1.9.4", + "eth:tKLAY": "1.9.5", + "eth:tKOR": "1.9.5", "eth:tKOT": "1.9.4", "eth:tKOV": "1.6.2", + "eth:tMATH": "1.9.5", "eth:tMATIC": "1.9.4", "eth:tMETC": "1.9.4", "eth:tNEAR": "1.9.4", + "eth:tNEW": "1.9.5", "eth:tNRG": "1.9.4", "eth:tPHT": "1.9.4", "eth:tRBTC": "1.6.2", "eth:tRIN": "1.6.2", "eth:tROP": "1.6.2", "eth:tVT": "1.9.4", - "eth:tsDIO": "1.9.4", + "eth:thtt": "1.9.5", + "eth:tmACA": "1.9.5", + "eth:tsDIODE": "1.9.5", "eth:xDAI": "1.9.4", "misc:LSK": "1.7.1", "misc:MAID": "1.7.2", @@ -2078,6 +2183,7 @@ "erc20:eth:MTC:195f": "(AUTO) duplicate key", "erc20:eth:MTC:905e": "(AUTO) duplicate key", "erc20:eth:MTC:dfdc": "(AUTO) duplicate key", + "erc20:eth:MUSD": "(AUTO) duplicate key", "erc20:eth:NCC:5d48": "(AUTO) duplicate key", "erc20:eth:NCC:9344": "(AUTO) duplicate key", "erc20:eth:NIO:5554": "(AUTO) duplicate key", @@ -2087,6 +2193,7 @@ "erc20:eth:NXX OLD": "(AUTO) duplicate key", "erc20:eth:OHNI:6f53": "(AUTO) duplicate key", "erc20:eth:OHNI:7f21": "(AUTO) duplicate key", + "erc20:eth:ONE": "Duplicate key with Harmony ONE", "erc20:eth:OPEN:69c4": "(AUTO) duplicate key", "erc20:eth:OPEN:e9de": "(AUTO) duplicate key", "erc20:eth:ORME:516e": "(AUTO) duplicate key", @@ -2175,6 +2282,7 @@ "erc20:eth:iETH:f53b": "(AUTO) duplicate key", "erc20:eth:iLINK:1d49": "(AUTO) duplicate key", "erc20:eth:iLINK:3ddf": "(AUTO) duplicate key", + "erc20:eth:mUSD": "(AUTO) duplicate key", "erc20:eth:sETH:5e74": "(AUTO) duplicate key", "erc20:eth:sETH:d81a": "(AUTO) duplicate key", "erc20:eth:sUSD:289e": "(AUTO) duplicate key", @@ -2293,6 +2401,8 @@ "erc20:eth:ADST": "2.0.7", "erc20:eth:ADT": "2.0.7", "erc20:eth:ADX": "2.0.7", + "erc20:eth:ADX-LOYALTY": "2.3.7", + "erc20:eth:ADXL": "2.3.7", "erc20:eth:AE": "2.0.7", "erc20:eth:AEUR": "2.3.0", "erc20:eth:AFA": "2.0.10", @@ -2305,6 +2415,7 @@ "erc20:eth:AIX": "2.0.7", "erc20:eth:AKC": "2.0.8", "erc20:eth:ALCO": "2.0.7", + "erc20:eth:ALEPH": "2.3.7", "erc20:eth:ALI": "2.0.10", "erc20:eth:ALIS": "2.0.7", "erc20:eth:ALTS": "2.0.7", @@ -2316,20 +2427,24 @@ "erc20:eth:AMN": "2.0.7", "erc20:eth:AMO": "2.0.7", "erc20:eth:AMON": "2.3.0", + "erc20:eth:AMP": "2.3.7", "erc20:eth:AMPL": "2.1.8", "erc20:eth:AMTC": "2.0.7", "erc20:eth:ANIME": "2.3.0", "erc20:eth:ANJ": "2.3.0", "erc20:eth:AOA": "2.0.10", + "erc20:eth:API3": "2.3.7", "erc20:eth:APIS": "2.0.7", "erc20:eth:APPC": "2.0.7", "erc20:eth:APT": "2.0.7", + "erc20:eth:AQT": "2.3.7", "erc20:eth:ARB": "2.0.10", "erc20:eth:ARC": "2.0.7", "erc20:eth:ARCT": "2.0.7", "erc20:eth:ARD": "2.0.7", "erc20:eth:ARE": "2.3.0", "erc20:eth:ARN": "2.0.7", + "erc20:eth:ARNX": "2.3.7", "erc20:eth:ART": "2.0.7", "erc20:eth:ARX": "2.0.7", "erc20:eth:ARXT": "2.0.7", @@ -2357,6 +2472,7 @@ "erc20:eth:BAC": "2.1.8", "erc20:eth:BAL": "2.3.3", "erc20:eth:BALI": "2.3.0", + "erc20:eth:BAMBOO": "2.3.7", "erc20:eth:BANCA": "2.0.10", "erc20:eth:BANX": "2.0.7", "erc20:eth:BAR": "2.3.0", @@ -2388,6 +2504,7 @@ "erc20:eth:BFT": "2.1.8", "erc20:eth:BHPC": "2.0.10", "erc20:eth:BHR": "2.0.10", + "erc20:eth:BID": "2.3.7", "erc20:eth:BIT": "2.0.11", "erc20:eth:BITCAR": "2.0.10", "erc20:eth:BITPARK": "2.0.10", @@ -2502,6 +2619,7 @@ "erc20:eth:CLL": "2.0.7", "erc20:eth:CLN": "2.0.7", "erc20:eth:CLP": "2.0.7", + "erc20:eth:CLT": "2.3.7", "erc20:eth:CMBT": "2.0.7", "erc20:eth:CMC": "2.0.7", "erc20:eth:CMCT": "2.0.10", @@ -2517,6 +2635,7 @@ "erc20:eth:COMP": "2.3.3", "erc20:eth:CORI": "2.0.8", "erc20:eth:COSM": "2.0.10", + "erc20:eth:COTI": "2.3.7", "erc20:eth:COV": "2.0.7", "erc20:eth:CPAL": "2.1.8", "erc20:eth:CPAY": "2.0.10", @@ -2576,6 +2695,7 @@ "erc20:eth:DAY": "2.0.7", "erc20:eth:DBET": "2.0.10", "erc20:eth:DCA": "2.0.7", + "erc20:eth:DCB": "2.3.7", "erc20:eth:DCC": "2.0.8", "erc20:eth:DCL": "2.0.7", "erc20:eth:DCN": "2.0.7", @@ -2601,6 +2721,7 @@ "erc20:eth:DLT": "2.0.7", "erc20:eth:DMT": "2.0.7", "erc20:eth:DNA": "2.0.10", + "erc20:eth:DNA:deprecated": "2.3.7", "erc20:eth:DNT": "2.0.7", "erc20:eth:DNX": "2.0.7", "erc20:eth:DOCK": "2.0.10", @@ -2719,6 +2840,7 @@ "erc20:eth:FLUZ": "2.0.7", "erc20:eth:FLX": "2.0.7", "erc20:eth:FMF": "2.0.11", + "erc20:eth:FMTA": "2.3.7", "erc20:eth:FND": "2.0.7", "erc20:eth:FNKOS": "2.0.10", "erc20:eth:FNTB": "2.0.10", @@ -2770,6 +2892,7 @@ "erc20:eth:GET": "2.0.7", "erc20:eth:GFN": "2.3.0", "erc20:eth:GGC": "2.1.8", + "erc20:eth:GHX": "2.3.7", "erc20:eth:GIF": "2.0.7", "erc20:eth:GIM": "2.0.7", "erc20:eth:GIRL": "2.1.8", @@ -2782,11 +2905,14 @@ "erc20:eth:GNY": "2.0.10", "erc20:eth:GOLDX": "2.0.7", "erc20:eth:GOT": "2.0.10", + "erc20:eth:GOVI": "2.3.7", + "erc20:eth:GR": "2.3.7", "erc20:eth:GRG": "2.3.0", "erc20:eth:GRID": "2.0.7", "erc20:eth:GRMD": "2.0.10", "erc20:eth:GROO": "2.0.10", "erc20:eth:GROW": "2.0.7", + "erc20:eth:GRT": "2.3.7", "erc20:eth:GSC": "2.0.10", "erc20:eth:GSE": "2.0.8", "erc20:eth:GST2": "2.3.0", @@ -2837,6 +2963,7 @@ "erc20:eth:HST": "2.0.7", "erc20:eth:HT": "2.0.10", "erc20:eth:HTX": "2.3.0", + "erc20:eth:HUB": "2.3.7", "erc20:eth:HUBS": "2.1.8", "erc20:eth:HUR": "2.3.0", "erc20:eth:HUSL": "2.3.0", @@ -2881,11 +3008,13 @@ "erc20:eth:ITC": "2.0.7", "erc20:eth:ITO": "2.3.0", "erc20:eth:ITO:deprecated": "2.3.1", + "erc20:eth:ITR": "2.3.7", "erc20:eth:ITT": "2.0.7", "erc20:eth:IVY": "2.0.10", "erc20:eth:IXT": "2.0.7", "erc20:eth:IoT": "2.0.7", "erc20:eth:J8T": "2.0.7", + "erc20:eth:JASMY": "2.3.7", "erc20:eth:JBD": "2.3.0", "erc20:eth:JBX": "2.3.0", "erc20:eth:JC": "2.0.10", @@ -2974,7 +3103,9 @@ "erc20:eth:MCO": "2.0.7", "erc20:eth:MDA": "2.0.7", "erc20:eth:MDT": "2.0.10", + "erc20:eth:MDX": "2.3.7", "erc20:eth:MEDX": "2.0.10", + "erc20:eth:MEME": "2.3.7", "erc20:eth:MESG": "2.1.8", "erc20:eth:MEST": "2.0.7", "erc20:eth:MET": "2.0.10", @@ -2994,6 +3125,7 @@ "erc20:eth:MLN (new)": "2.0.11", "erc20:eth:MLN (old):deprecated": "2.0.11", "erc20:eth:MNE": "2.0.7", + "erc20:eth:MNL": "2.3.7", "erc20:eth:MNT": "2.0.7", "erc20:eth:MNTP": "2.0.7", "erc20:eth:MOC": "2.0.10", @@ -3006,13 +3138,13 @@ "erc20:eth:MRP": "2.0.7", "erc20:eth:MRV": "2.0.7", "erc20:eth:MSP": "2.0.7", + "erc20:eth:MTA": "2.3.7", "erc20:eth:MTH": "2.0.7", "erc20:eth:MTL": "2.0.7", "erc20:eth:MTN": "2.0.7", "erc20:eth:MTR": "2.0.7", "erc20:eth:MTRc": "2.0.7", "erc20:eth:MTX": "2.0.7", - "erc20:eth:MUSD": "2.3.0", "erc20:eth:MUXE": "2.0.7", "erc20:eth:MVG": "2.1.8", "erc20:eth:MVL": "2.0.10", @@ -3020,6 +3152,7 @@ "erc20:eth:MWAT": "2.0.7", "erc20:eth:MYD": "2.0.7", "erc20:eth:MYST": "2.0.7", + "erc20:eth:MYST:deprecated": "2.3.7", "erc20:eth:NAC": "2.0.7", "erc20:eth:NAMTC": "2.3.0", "erc20:eth:NAMTT": "2.3.0", @@ -3029,6 +3162,7 @@ "erc20:eth:NBAI": "2.0.7", "erc20:eth:NBC": "2.0.10", "erc20:eth:NCASH": "2.0.11", + "erc20:eth:NCR": "2.3.7", "erc20:eth:NCT": "2.0.7", "erc20:eth:NDC": "2.0.7", "erc20:eth:NDX": "2.0.11", @@ -3054,6 +3188,7 @@ "erc20:eth:NRM": "2.1.8", "erc20:eth:NTO": "2.0.10", "erc20:eth:NTWK": "2.0.10", + "erc20:eth:NU": "2.3.7", "erc20:eth:NUG": "2.0.8", "erc20:eth:NUKE": "2.3.0", "erc20:eth:NULS": "2.0.7", @@ -3064,12 +3199,16 @@ "erc20:eth:OAK": "2.0.7", "erc20:eth:OAX": "2.0.7", "erc20:eth:OCC": "2.0.7", + "erc20:eth:OCEAN": "2.3.7", + "erc20:eth:OCEAN:deprecated": "2.3.7", "erc20:eth:OCN": "2.0.10", + "erc20:eth:OCTO": "2.3.7", "erc20:eth:ODE": "2.0.8", "erc20:eth:OGK": "2.3.0", "erc20:eth:OGN": "2.3.0", "erc20:eth:OIKOS": "2.1.8", "erc20:eth:OJX": "2.0.7", + "erc20:eth:OKB": "2.3.7", "erc20:eth:OLDPCL": "2.3.0", "erc20:eth:OLD_MKR": "2.0.7", "erc20:eth:OLE": "2.0.10", @@ -3077,7 +3216,6 @@ "erc20:eth:OMG": "2.0.7", "erc20:eth:OMT": "2.0.8", "erc20:eth:OMX": "2.0.10", - "erc20:eth:ONE": "2.0.11", "erc20:eth:ONEK": "2.0.7", "erc20:eth:ONG": "2.0.11", "erc20:eth:ONL": "2.0.10", @@ -3097,6 +3235,7 @@ "erc20:eth:OTN": "2.0.10", "erc20:eth:OTO": "2.3.0", "erc20:eth:OTO:deprecated": "2.3.1", + "erc20:eth:OUSD": "2.3.7", "erc20:eth:OWN": "2.0.8", "erc20:eth:OWT": "2.3.0", "erc20:eth:OXT": "2.3.0", @@ -3127,9 +3266,11 @@ "erc20:eth:PEXT": "2.0.7", "erc20:eth:PFR": "2.0.10", "erc20:eth:PHI": "2.0.10", + "erc20:eth:PICKLE": "2.3.7", "erc20:eth:PIPL": "2.0.7", "erc20:eth:PIT": "2.0.11", "erc20:eth:PIX": "2.0.7", + "erc20:eth:PIXIE": "2.3.7", "erc20:eth:PKG": "2.0.10", "erc20:eth:PKT": "2.0.10", "erc20:eth:PLA": "2.3.0", @@ -3202,6 +3343,7 @@ "erc20:eth:REBL": "2.0.7", "erc20:eth:RED": "2.0.7", "erc20:eth:REDC": "2.0.8", + "erc20:eth:REEF": "2.3.7", "erc20:eth:REF": "2.0.10", "erc20:eth:REM": "2.0.10", "erc20:eth:REMI": "2.0.11", @@ -3262,6 +3404,7 @@ "erc20:eth:SENSE": "2.0.7", "erc20:eth:SENT": "2.0.10", "erc20:eth:SET": "2.0.7", + "erc20:eth:SETS": "2.3.7", "erc20:eth:SEXY": "2.0.7", "erc20:eth:SGA": "2.3.0", "erc20:eth:SGEL": "2.0.7", @@ -3340,6 +3483,7 @@ "erc20:eth:SUB": "2.0.7", "erc20:eth:SUB (old):deprecated": "2.3.0", "erc20:eth:SUR": "2.0.10", + "erc20:eth:SUSHI": "2.3.7", "erc20:eth:SVD": "2.0.10", "erc20:eth:SVG": "2.3.0", "erc20:eth:SWAP": "2.3.0", @@ -3350,6 +3494,7 @@ "erc20:eth:SXR": "2.3.0", "erc20:eth:SXUT": "2.0.7", "erc20:eth:SYN": "2.0.7", + "erc20:eth:SYSX": "2.3.7", "erc20:eth:SenSatorI": "2.0.7", "erc20:eth:TALAO": "2.0.10", "erc20:eth:TAN": "2.3.0", @@ -3359,6 +3504,7 @@ "erc20:eth:TBC": "2.1.8", "erc20:eth:TBC2": "2.0.7", "erc20:eth:TBT": "2.0.7", + "erc20:eth:TBTC": "2.3.7", "erc20:eth:TBX": "2.0.10", "erc20:eth:TCA": "2.0.8", "erc20:eth:TCAD": "2.3.0", @@ -3424,6 +3570,8 @@ "erc20:eth:UCN": "2.0.10", "erc20:eth:UFR": "2.0.10", "erc20:eth:UKG": "2.0.7", + "erc20:eth:UMB": "2.3.7", + "erc20:eth:UNI": "2.3.7", "erc20:eth:UP": "2.0.10", "erc20:eth:UPP": "2.0.10", "erc20:eth:UQC": "2.0.7", @@ -3437,6 +3585,7 @@ "erc20:eth:USDT": "2.0.10", "erc20:eth:USDx": "2.3.0", "erc20:eth:UTK": "2.0.7", + "erc20:eth:UTK:deprecated": "2.3.7", "erc20:eth:UTNP": "2.0.11", "erc20:eth:UTT": "2.0.10", "erc20:eth:UUU": "2.0.7", @@ -3484,6 +3633,7 @@ "erc20:eth:WAY": "2.1.8", "erc20:eth:WBA": "2.0.7", "erc20:eth:WBTC": "2.0.11", + "erc20:eth:WBX": "2.3.7", "erc20:eth:WCK": "2.3.0", "erc20:eth:WCN": "2.0.7", "erc20:eth:WCT": "2.0.7", @@ -3491,6 +3641,7 @@ "erc20:eth:WETH": "2.0.7", "erc20:eth:WHEN": "2.0.7", "erc20:eth:WIB": "2.3.0", + "erc20:eth:WILC": "2.3.7", "erc20:eth:WILD": "2.0.7", "erc20:eth:WIN": "2.0.10", "erc20:eth:WINGS": "2.0.7", @@ -3543,8 +3694,14 @@ "erc20:eth:XSC": "2.0.7", "erc20:eth:XSGD": "2.3.1", "erc20:eth:XYO": "2.0.10", + "erc20:eth:YAM": "2.3.7", + "erc20:eth:YAMv2": "2.3.7", "erc20:eth:YEE": "2.0.10", + "erc20:eth:YFI": "2.3.7", + "erc20:eth:YFII": "2.3.7", + "erc20:eth:YFV": "2.3.7", "erc20:eth:YNN": "2.3.0", + "erc20:eth:YOUC": "2.3.7", "erc20:eth:YOYOW": "2.0.10", "erc20:eth:YTRO": "2.1.8", "erc20:eth:ZAP": "2.0.7", @@ -3792,11 +3949,13 @@ "erc20:eth:univ2BATETH": "2.3.3", "erc20:eth:univ2BIZETH": "2.3.3", "erc20:eth:univ2BNTETH": "2.3.3", + "erc20:eth:univ2BOOSTETH": "2.3.7", "erc20:eth:univ2BPTETH": "2.3.3", "erc20:eth:univ2CAMOETH": "2.3.3", "erc20:eth:univ2CELETH": "2.3.3", "erc20:eth:univ2CHIETH": "2.3.3", "erc20:eth:univ2COMPETH": "2.3.3", + "erc20:eth:univ2CREAMETH": "2.3.7", "erc20:eth:univ2DAI2KEY": "2.3.3", "erc20:eth:univ2DAIALEPH": "2.3.3", "erc20:eth:univ2DAIETH": "2.3.3", @@ -3826,6 +3985,7 @@ "erc20:eth:univ2ETHENJ": "2.3.3", "erc20:eth:univ2ETHESH": "2.3.3", "erc20:eth:univ2ETHFRM": "2.3.3", + "erc20:eth:univ2ETHFSW": "2.3.7", "erc20:eth:univ2ETHHEX2T": "2.3.3", "erc20:eth:univ2ETHKNC": "2.3.3", "erc20:eth:univ2ETHNEC": "2.3.3", @@ -3834,9 +3994,11 @@ "erc20:eth:univ2ETHPDS": "2.3.3", "erc20:eth:univ2ETHPOWER": "2.3.3", "erc20:eth:univ2ETHSHIP": "2.3.3", + "erc20:eth:univ2ETHSWAP": "2.3.7", "erc20:eth:univ2ETHUBOMB": "2.3.3", "erc20:eth:univ2ETHUNC": "2.3.3", "erc20:eth:univ2ETHUSDT": "2.3.3", + "erc20:eth:univ2ETHXAMP": "2.3.7", "erc20:eth:univ2ETHZRX": "2.3.3", "erc20:eth:univ2EWTBETH": "2.3.3", "erc20:eth:univ2FMAETH": "2.3.3", @@ -3845,8 +4007,10 @@ "erc20:eth:univ2FXCETH": "2.3.3", "erc20:eth:univ2GENETH": "2.3.3", "erc20:eth:univ2GHOSTETH": "2.3.3", + "erc20:eth:univ2GHSTETH": "2.3.7", "erc20:eth:univ2H3XETH": "2.3.3", "erc20:eth:univ2HEXETH": "2.3.3", + "erc20:eth:univ2HKMTUSDT": "2.3.7", "erc20:eth:univ2HXBETH": "2.3.3", "erc20:eth:univ2IDXTETH": "2.3.3", "erc20:eth:univ2JRTETH": "2.3.3", @@ -3860,6 +4024,7 @@ "erc20:eth:univ2MANAETH": "2.3.3", "erc20:eth:univ2MATHETH": "2.3.3", "erc20:eth:univ2MCBETH": "2.3.3", + "erc20:eth:univ2MEMEETH": "2.3.7", "erc20:eth:univ2MKRETH": "2.3.3", "erc20:eth:univ2MKRMLN": "2.3.3", "erc20:eth:univ2MKRUSDC": "2.3.3", @@ -3867,8 +4032,11 @@ "erc20:eth:univ2MRDNETH": "2.3.3", "erc20:eth:univ2NMRETH": "2.3.3", "erc20:eth:univ2OCEANETH": "2.3.3", + "erc20:eth:univ2OCEANETH:deprecated:8fd3": "2.3.7", + "erc20:eth:univ2OCEANETH:deprecated:f063": "2.3.7", "erc20:eth:univ2OGNETH": "2.3.3", "erc20:eth:univ2PAXGETH": "2.3.3", + "erc20:eth:univ2PICKLEETH": "2.3.7", "erc20:eth:univ2PLRETH": "2.3.3", "erc20:eth:univ2PNKETH": "2.3.3", "erc20:eth:univ2PODETH": "2.3.3", @@ -3880,17 +4048,21 @@ "erc20:eth:univ2RLCETH": "2.3.3", "erc20:eth:univ2RPLETH": "2.3.3", "erc20:eth:univ2RSRETH": "2.3.3", + "erc20:eth:univ2SAKEETH": "2.3.7", "erc20:eth:univ2SHUFETH": "2.3.3", "erc20:eth:univ2SNXETH": "2.3.3", "erc20:eth:univ2STAETH": "2.3.3", "erc20:eth:univ2STAKEETH": "2.3.3", "erc20:eth:univ2STONKETH": "2.3.3", "erc20:eth:univ2STORJETH": "2.3.3", + "erc20:eth:univ2SoETHETH": "2.3.7", "erc20:eth:univ2TRACETH": "2.3.3", + "erc20:eth:univ2TRADEETH": "2.3.7", "erc20:eth:univ2TRBDAI": "2.3.3", "erc20:eth:univ2TRBETH": "2.3.3", "erc20:eth:univ2UBTETH": "2.3.3", "erc20:eth:univ2UMAETH": "2.3.3", + "erc20:eth:univ2UNIETH": "2.3.7", "erc20:eth:univ2UNIUSDETH": "2.3.3", "erc20:eth:univ2USDCBUIDL": "2.3.3", "erc20:eth:univ2USDCETH": "2.3.3", @@ -3906,10 +4078,13 @@ "erc20:eth:univ2XNSETH": "2.3.3", "erc20:eth:univ2XORETH": "2.3.3", "erc20:eth:univ2XRTETH": "2.3.3", + "erc20:eth:univ2YFIETH": "2.3.7", + "erc20:eth:univ2YFIIETH": "2.3.7", "erc20:eth:univ2sETHETH": "2.3.3", "erc20:eth:univ2sUSDETH": "2.3.3", "erc20:eth:univ2sXAUUSDC": "2.3.3", "erc20:eth:univ2uTOPIAETH": "2.3.3", + "erc20:eth:univ2wNXMETH": "2.3.7", "erc20:eth:usBAT": "2.3.0", "erc20:eth:usBAT2x": "2.3.0", "erc20:eth:usBAT3x": "2.3.0", @@ -3980,13 +4155,17 @@ "erc20:ubq:QWARK": "2.0.7", "erc20:ubq:RICKS": "2.0.7", "eth:0xF": "2.3.5", + "eth:420": "2.3.7", + "eth:ACA": "2.3.7", "eth:AKA": "2.0.8", "eth:AQUA": "2.1.1", "eth:ATS": "2.0.11", "eth:AUX": "2.1.6", + "eth:AVAX": "2.3.7", "eth:BNB": "2.3.5", + "eth:CELO": "2.3.7", "eth:CLO": "2.0.7", - "eth:DIO": "2.3.5", + "eth:DIODE": "2.3.7", "eth:EGEM": "2.0.7", "eth:ELA": "2.3.5", "eth:ELLA": "2.0.7", @@ -3998,60 +4177,94 @@ "eth:EWT": "2.3.5", "eth:EXP": "2.0.7", "eth:FIN": "2.3.5", + "eth:FLR": "2.3.7", "eth:FTM": "2.3.5", "eth:FUSE": "2.3.5", "eth:GO": "2.0.7", "eth:HPB": "2.1.1", + "eth:HT": "2.3.7", "eth:ILT": "2.3.5", "eth:IPOS": "2.3.5", + "eth:JOYS": "2.3.7", + "eth:KAR": "2.3.7", + "eth:KLAY": "2.3.7", "eth:LISINSKI": "2.3.5", + "eth:MATH": "2.3.7", "eth:MATIC": "2.3.5", "eth:META": "2.1.1", "eth:MIX": "2.0.10", + "eth:MTR": "2.3.7", "eth:MUSIC": "2.0.8", "eth:NEAR": "2.3.5", + "eth:NEW": "2.3.7", "eth:NRG": "2.3.5", "eth:OETH": "2.3.5", + "eth:OKT": "2.3.7", + "eth:ONE:1666600000": "2.3.7", + "eth:ONE:1666600001": "2.3.7", + "eth:ONE:1666600002": "2.3.7", + "eth:ONE:1666600003": "2.3.7", "eth:PHT": "2.3.5", "eth:PIRL": "2.0.8", "eth:POA": "2.3.5", "eth:RBD": "2.3.5", "eth:RBTC": "2.0.7", + "eth:RUPX": "2.3.7", "eth:SKL": "2.3.5", + "eth:SOTER": "2.3.7", "eth:TAO": "2.3.5", + "eth:TBG": "2.3.7", "eth:TCH": "2.3.5", "eth:TCLO": "2.3.5", "eth:TETC": "2.3.5", + "eth:TFI": "2.3.7", + "eth:TOKT": "2.3.7", "eth:TOMO": "2.3.5", + "eth:TOYS": "2.3.7", "eth:TPEP": "2.3.5", "eth:TSF": "2.3.5", "eth:TST": "2.3.5", "eth:TT": "2.3.5", "eth:TUBQ": "2.3.5", + "eth:TXDC": "2.3.7", "eth:U+25B3": "2.3.5", "eth:UBQ": "2.0.7", "eth:VAL": "2.3.5", "eth:WEB": "2.3.5", + "eth:XDC": "2.3.7", "eth:XERO": "2.3.5", "eth:YETI": "2.3.5", + "eth:bNEAR": "2.3.7", + "eth:peggle": "2.3.7", "eth:tATS": "2.0.11", + "eth:tAVAX": "2.3.7", "eth:tBNB": "2.3.5", + "eth:tCELO:44787": "2.3.7", + "eth:tCELO:62320": "2.3.7", + "eth:tCFLR": "2.3.7", "eth:tDBM": "2.3.5", "eth:tELA": "2.3.5", - "eth:tGOR": "2.1.1", + "eth:tGOR:420": "2.3.7", + "eth:tGOR:5": "2.3.7", "eth:tKAL": "2.3.5", + "eth:tKLAY": "2.3.7", + "eth:tKOR": "2.3.7", "eth:tKOT": "2.3.5", "eth:tKOV": "2.0.7", + "eth:tMATH": "2.3.7", "eth:tMATIC": "2.3.5", "eth:tMETC": "2.3.5", "eth:tNEAR": "2.3.5", + "eth:tNEW": "2.3.7", "eth:tNRG": "2.3.5", "eth:tPHT": "2.3.5", "eth:tRBTC": "2.0.7", "eth:tRIN": "2.0.7", "eth:tROP": "2.0.7", "eth:tVT": "2.3.5", - "eth:tsDIO": "2.3.5", + "eth:thtt": "2.3.7", + "eth:tmACA": "2.3.7", + "eth:tsDIODE": "2.3.7", "eth:xDAI": "2.3.5", "misc:ADA": "2.0.8", "misc:BNB": "2.1.5", @@ -4199,6 +4412,7 @@ "erc20:eth:MTC:195f": "(AUTO) duplicate key", "erc20:eth:MTC:905e": "(AUTO) duplicate key", "erc20:eth:MTC:dfdc": "(AUTO) duplicate key", + "erc20:eth:MUSD": "(AUTO) duplicate key", "erc20:eth:NCC:5d48": "(AUTO) duplicate key", "erc20:eth:NCC:9344": "(AUTO) duplicate key", "erc20:eth:NIO:5554": "(AUTO) duplicate key", @@ -4208,6 +4422,7 @@ "erc20:eth:NXX OLD": "(AUTO) duplicate key", "erc20:eth:OHNI:6f53": "(AUTO) duplicate key", "erc20:eth:OHNI:7f21": "(AUTO) duplicate key", + "erc20:eth:ONE": "Duplicate key with Harmony ONE", "erc20:eth:OPEN:69c4": "(AUTO) duplicate key", "erc20:eth:OPEN:e9de": "(AUTO) duplicate key", "erc20:eth:ORME:516e": "(AUTO) duplicate key", @@ -4296,6 +4511,7 @@ "erc20:eth:iETH:f53b": "(AUTO) duplicate key", "erc20:eth:iLINK:1d49": "(AUTO) duplicate key", "erc20:eth:iLINK:3ddf": "(AUTO) duplicate key", + "erc20:eth:mUSD": "(AUTO) duplicate key", "erc20:eth:sETH:5e74": "(AUTO) duplicate key", "erc20:eth:sETH:d81a": "(AUTO) duplicate key", "erc20:eth:sUSD:289e": "(AUTO) duplicate key", diff --git a/common/tools/coin_info.py b/common/tools/coin_info.py index 5f3772e2c..beb34a0d9 100755 --- a/common/tools/coin_info.py +++ b/common/tools/coin_info.py @@ -225,7 +225,10 @@ def _load_ethereum_networks(): """Load ethereum networks from `ethereum/networks.json`""" chains_path = DEFS_DIR / "ethereum" / "chains" / "_data" / "chains" networks = [] - for chain in sorted(chains_path.glob("*.json"), key=lambda x: int(x.stem)): + for chain in sorted( + chains_path.glob("eip155-*.json"), + key=lambda x: int(x.stem.replace("eip155-", "")), + ): chain_data = load_json(chain) shortcut = chain_data["nativeCurrency"]["symbol"] is_testnet = "testnet" in chain_data["name"].lower() diff --git a/core/src/apps/ethereum/networks.py b/core/src/apps/ethereum/networks.py index 4fbfdcbcd..d187286f1 100644 --- a/core/src/apps/ethereum/networks.py +++ b/core/src/apps/ethereum/networks.py @@ -123,6 +123,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Ubiq Network Testnet", rskip60=False, ) + yield NetworkInfo( + chain_id=10, + slip44=60, + shortcut="OETH", + name="Optimistic Ethereum", + rskip60=False, + ) yield NetworkInfo( chain_id=11, slip44=916, @@ -140,17 +147,38 @@ def _networks_iterator() -> Iterator[NetworkInfo]: yield NetworkInfo( chain_id=13, slip44=1, - shortcut="tsDIO", + shortcut="tsDIODE", name="Diode Testnet Staging", rskip60=False, ) + yield NetworkInfo( + chain_id=14, + slip44=554, + shortcut="FLR", + name="Flare Mainnet", + rskip60=False, + ) yield NetworkInfo( chain_id=15, slip44=60, - shortcut="DIO", + shortcut="DIODE", name="Diode Prenet", rskip60=False, ) + yield NetworkInfo( + chain_id=16, + slip44=1, + shortcut="tCFLR", + name="Flare Testnet Coston", + rskip60=False, + ) + yield NetworkInfo( + chain_id=17, + slip44=60, + shortcut="TFI", + name="ThaiChain 2.0 ThaiFi", + rskip60=False, + ) yield NetworkInfo( chain_id=18, slip44=1, @@ -186,6 +214,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="RSK Testnet", rskip60=False, ) + yield NetworkInfo( + chain_id=35, + slip44=60, + shortcut="TBG", + name="TBWG Chain", + rskip60=False, + ) yield NetworkInfo( chain_id=38, slip44=538, @@ -200,6 +235,20 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Ethereum Testnet Kovan", rskip60=False, ) + yield NetworkInfo( + chain_id=50, + slip44=60, + shortcut="XDC", + name="XinFin Network Mainnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=51, + slip44=1, + shortcut="TXDC", + name="XinFin Apothem Testnet", + rskip60=False, + ) yield NetworkInfo( chain_id=56, slip44=60, @@ -242,6 +291,20 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Ellaism", rskip60=False, ) + yield NetworkInfo( + chain_id=65, + slip44=1, + shortcut="TOKT", + name="OKExChain Testnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=66, + slip44=60, + shortcut="OKT", + name="OKExChain Mainnet", + rskip60=False, + ) yield NetworkInfo( chain_id=67, slip44=1, @@ -249,6 +312,20 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="DBChain Testnet", rskip60=False, ) + yield NetworkInfo( + chain_id=68, + slip44=60, + shortcut="SOTER", + name="SoterOne Mainnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=69, + slip44=1, + shortcut="tKOR", + name="Optimistic Ethereum Testnet Kovan", + rskip60=False, + ) yield NetworkInfo( chain_id=76, slip44=76, @@ -263,6 +340,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="POA Network Sokol", rskip60=False, ) + yield NetworkInfo( + chain_id=82, + slip44=60, + shortcut="MTR", + name="Meter Mainnet", + rskip60=False, + ) yield NetworkInfo( chain_id=88, slip44=60, @@ -312,6 +396,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Fuse Mainnet", rskip60=False, ) + yield NetworkInfo( + chain_id=128, + slip44=60, + shortcut="HT", + name="Huobi ECO Chain Mainnet", + rskip60=False, + ) yield NetworkInfo( chain_id=137, slip44=60, @@ -342,7 +433,7 @@ def _networks_iterator() -> Iterator[NetworkInfo]: ) yield NetworkInfo( chain_id=246, - slip44=60, + slip44=246, shortcut="EWT", name="Energy Web Chain", rskip60=False, @@ -354,6 +445,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Fantom Opera", rskip60=False, ) + yield NetworkInfo( + chain_id=256, + slip44=1, + shortcut="thtt", + name="Huobi ECO Chain Testnet", + rskip60=False, + ) yield NetworkInfo( chain_id=269, slip44=269, @@ -370,9 +468,16 @@ def _networks_iterator() -> Iterator[NetworkInfo]: ) yield NetworkInfo( chain_id=420, - slip44=60, - shortcut="OETH", - name="Optimistic Ethereum", + slip44=1, + shortcut="tGOR", + name="Optimistic Ethereum Testnet Goerli", + rskip60=False, + ) + yield NetworkInfo( + chain_id=499, + slip44=499, + shortcut="RUPX", + name="Rupaya", rskip60=False, ) yield NetworkInfo( @@ -382,6 +487,27 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Tao Network", rskip60=False, ) + yield NetworkInfo( + chain_id=595, + slip44=1, + shortcut="tmACA", + name="Acala Mandala Testnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=686, + slip44=686, + shortcut="KAR", + name="Karura Network", + rskip60=False, + ) + yield NetworkInfo( + chain_id=787, + slip44=787, + shortcut="ACA", + name="Acala Network", + rskip60=False, + ) yield NetworkInfo( chain_id=820, slip44=820, @@ -403,6 +529,41 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Nepal Blockchain Network", rskip60=False, ) + yield NetworkInfo( + chain_id=1001, + slip44=1, + shortcut="tKLAY", + name="Klaytn Testnet Baobab", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1007, + slip44=1, + shortcut="tNEW", + name="Newton Testnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1012, + slip44=60, + shortcut="NEW", + name="Newton", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1139, + slip44=60, + shortcut="MATH", + name="MathChain", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1140, + slip44=1, + shortcut="tMATH", + name="MathChain Testnet", + rskip60=False, + ) yield NetworkInfo( chain_id=1856, slip44=60, @@ -417,6 +578,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="EtherGem", rskip60=False, ) + yield NetworkInfo( + chain_id=2020, + slip44=60, + shortcut="420", + name="420coin", + rskip60=False, + ) yield NetworkInfo( chain_id=5869, slip44=60, @@ -424,6 +592,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Wegochain Rubidium Mainnet", rskip60=False, ) + yield NetworkInfo( + chain_id=8217, + slip44=8217, + shortcut="KLAY", + name="Klaytn Mainnet Cypress", + rskip60=False, + ) yield NetworkInfo( chain_id=8995, slip44=60, @@ -452,6 +627,41 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Energi Mainnet", rskip60=False, ) + yield NetworkInfo( + chain_id=42069, + slip44=60, + shortcut="peggle", + name="pegglecoin", + rskip60=False, + ) + yield NetworkInfo( + chain_id=42220, + slip44=60, + shortcut="CELO", + name="Celo Mainnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=43113, + slip44=1, + shortcut="tAVAX", + name="Avalanche Fuji Testnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=43114, + slip44=60, + shortcut="AVAX", + name="Avalanche Mainnet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=44787, + slip44=1, + shortcut="tCELO", + name="Celo Alfajores Testnet", + rskip60=False, + ) yield NetworkInfo( chain_id=49797, slip44=1, @@ -459,6 +669,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Energi Testnet", rskip60=False, ) + yield NetworkInfo( + chain_id=62320, + slip44=1, + shortcut="tCELO", + name="Celo Baklava Testnet", + rskip60=False, + ) yield NetworkInfo( chain_id=73799, slip44=1, @@ -543,6 +760,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Auxilium Network Mainnet", rskip60=False, ) + yield NetworkInfo( + chain_id=35855456, + slip44=60, + shortcut="JOYS", + name="Joys Digital Mainnet", + rskip60=False, + ) yield NetworkInfo( chain_id=61717561, slip44=61717561, @@ -550,6 +774,13 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="Aquachain", rskip60=False, ) + yield NetworkInfo( + chain_id=99415706, + slip44=1, + shortcut="TOYS", + name="Joys Digital TestNet", + rskip60=False, + ) yield NetworkInfo( chain_id=1122334455, slip44=60, @@ -571,6 +802,41 @@ def _networks_iterator() -> Iterator[NetworkInfo]: name="NEAR TestNet", rskip60=False, ) + yield NetworkInfo( + chain_id=1313161556, + slip44=60, + shortcut="bNEAR", + name="NEAR BetaNet", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1666600000, + slip44=60, + shortcut="ONE", + name="Harmony Mainnet Shard 0", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1666600001, + slip44=60, + shortcut="ONE", + name="Harmony Mainnet Shard 1", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1666600002, + slip44=60, + shortcut="ONE", + name="Harmony Mainnet Shard 2", + rskip60=False, + ) + yield NetworkInfo( + chain_id=1666600003, + slip44=60, + shortcut="ONE", + name="Harmony Mainnet Shard 3", + rskip60=False, + ) yield NetworkInfo( chain_id=3125659152, slip44=164, diff --git a/core/src/apps/ethereum/tokens.py b/core/src/apps/ethereum/tokens.py index 04f39f00e..971484ebe 100644 --- a/core/src/apps/ethereum/tokens.py +++ b/core/src/apps/ethereum/tokens.py @@ -68,6 +68,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "ADT", 9) # eth / AdToken elif address == b"\xad\xe0\x0c\x28\x24\x4d\x5c\xe1\x7d\x72\xe4\x03\x30\xb1\xc3\x18\xcd\x12\xb7\xc3": return (chain_id, address, "ADX", 18) # eth / AdEx Network + elif address == b"\xd9\xa4\xcb\x9d\xc9\x29\x6e\x11\x1c\x66\xdf\xac\xab\x8b\xe0\x34\xee\x2e\x1c\x2c": + return (chain_id, address, "ADX-LOYALTY", 18) # eth / AdEx Loyalty elif address == b"\x44\x70\xbb\x87\xd7\x7b\x96\x3a\x01\x3d\xb9\x39\xbe\x33\x2f\x92\x7f\x2b\x99\x2e": return (chain_id, address, "ADXL", 4) # eth / AdEx Network (legacy) elif address == b"\x5c\xa9\xa7\x1b\x1d\x01\x84\x9c\x0a\x95\x49\x0c\xc0\x05\x59\x71\x7f\xcf\x0d\x1d": @@ -100,6 +102,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "ALCO", 8) # eth / ALCO elif address == b"\xf1\x24\x36\xd7\x71\x66\xf0\x80\x1f\xb7\xbb\xda\xfa\xf1\x48\x2a\x75\x77\xfd\xaa": return (chain_id, address, "aLEND", 18) # eth / Aave Interest bearing LEND + elif address == b"\x27\x70\x2a\x26\x12\x6e\x0b\x37\x02\xaf\x63\xee\x09\xac\x4d\x1a\x08\x4e\xf6\x28": + return (chain_id, address, "ALEPH", 18) # eth / Aleph.im elif address == b"\x42\x89\xc0\x43\xa1\x23\x92\xf1\x02\x73\x07\xfb\x58\x27\x2d\x8e\xbd\x85\x39\x12": return (chain_id, address, "ALI", 18) # eth / AiLink Token elif address == b"\xc3\x02\x9a\x06\x6b\x20\xdc\x87\x12\xcb\xd2\x09\x3e\xb1\xe7\xf5\x8b\xc4\x9d\x83": @@ -138,12 +142,16 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "ANJ", 18) # eth / Aragon Network Juror elif address == b"\x9a\xb1\x65\xd7\x95\x01\x9b\x6d\x8b\x3e\x97\x1d\xda\x91\x07\x14\x21\x30\x5e\x5a": return (chain_id, address, "AOA", 18) # eth / Aurora + elif address == b"\x0b\x38\x21\x0e\xa1\x14\x11\x55\x7c\x13\x45\x7d\x4d\xa7\xdc\x6e\xa7\x31\xb8\x8a": + return (chain_id, address, "API3", 18) # eth / API3 elif address == b"\x4c\x0f\xbe\x1b\xb4\x66\x12\x91\x5e\x79\x67\xd2\xc3\x21\x3c\xd4\xd8\x72\x57\xad": return (chain_id, address, "APIS", 18) # eth / APIS elif address == b"\x1a\x7a\x8b\xd9\x10\x6f\x2b\x8d\x97\x7e\x08\x58\x2d\xc7\xd2\x4c\x72\x3a\xb0\xdb": return (chain_id, address, "APPC", 18) # eth / AppCoins elif address == b"\x23\xae\x3c\x5b\x39\xb1\x2f\x06\x93\xe0\x54\x35\xee\xaa\x1e\x51\xd8\xc6\x15\x30": return (chain_id, address, "APT", 18) # eth / AIGang + elif address == b"\x2a\x9b\xdc\xff\x37\xab\x68\xb9\x5a\x53\x43\x5a\xdf\xd8\x89\x2e\x86\x08\x4f\x93": + return (chain_id, address, "AQT", 18) # eth / AlphaQuarkToken elif address == b"\xaf\xbe\xc4\xd6\x5b\xc7\xb1\x16\xd8\x51\x07\xfd\x05\xd9\x12\x49\x10\x29\xbf\x46": return (chain_id, address, "ARB", 18) # eth / ARBITRAGE elif address == b"\xac\x70\x9f\xcb\x44\xa4\x3c\x35\xf0\xda\x4e\x31\x63\xb1\x17\xa1\x7f\x37\x70\xf5": @@ -222,6 +230,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "BAL", 18) # eth / Balancer elif address == b"\x01\x3a\x06\x55\x8f\x07\xd9\xe6\xf9\xa0\x0c\x95\xa3\x3f\x3a\x0e\x02\x55\x17\x6b": return (chain_id, address, "BALI", 18) # eth / BALI COIN + elif address == b"\xf5\x68\x42\xaf\x3b\x56\xfd\x72\xd1\x7c\xb1\x03\xf9\x2d\x02\x7b\xba\x91\x2e\x89": + return (chain_id, address, "BAMBOO", 18) # eth / BambooDeFi elif address == b"\x99\x8b\x3b\x82\xbc\x9d\xba\x17\x39\x90\xbe\x7a\xfb\x77\x27\x88\xb5\xac\xb8\xbd": return (chain_id, address, "BANCA", 18) # eth / Banca elif address == b"\xf8\x7f\x0d\x91\x53\xfe\xa5\x49\xc7\x28\xad\x61\xcb\x80\x15\x95\xa6\x8b\x73\xde": @@ -520,6 +530,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "CLN", 18) # eth / ColuLocalNetwork elif address == b"\x7f\xce\x28\x56\x89\x9a\x68\x06\xee\xef\x70\x80\x79\x85\xfc\x75\x54\xc6\x63\x40": return (chain_id, address, "CLP", 9) # eth / CryptoLending + elif address == b"\x20\x01\xf2\xa0\xcf\x80\x1e\xcf\xda\x62\x2f\x6c\x28\xfb\x6e\x10\xd8\x03\xd9\x69": + return (chain_id, address, "CLT", 8) # eth / CoinLoan elif address == b"\x3e\xdd\x23\x5c\x3e\x84\x0c\x1f\x29\x28\x6b\x2e\x39\x37\x0a\x25\x5c\x7b\x6f\xdb": return (chain_id, address, "CMBT", 8) # eth / CMBToken elif address == b"\x7e\x66\x75\x25\x52\x1c\xf6\x13\x52\xe2\xe0\x1b\x50\xfa\xaa\xe7\xdf\x39\x74\x9a": @@ -550,6 +562,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "CORI", 2) # eth / Corrently Invest Token elif address == b"\xc4\xbc\xd6\x4c\xb2\x16\xd4\x9f\xd3\xc6\x43\xa3\x27\x62\xf3\x46\x26\xb4\x5a\x1a": return (chain_id, address, "COSM", 18) # eth / Cosmo Coin + elif address == b"\xdd\xb3\x42\x24\x97\xe6\x1e\x13\x54\x3b\xea\x06\x98\x9c\x07\x89\x11\x75\x55\xc5": + return (chain_id, address, "COTI", 18) # eth / COTI elif address == b"\xe2\xfb\x65\x29\xef\x56\x6a\x08\x0e\x6d\x23\xde\x0b\xd3\x51\x31\x10\x87\xd5\x67": return (chain_id, address, "COV", 18) # eth / Covesting elif address == b"\x31\x91\x0a\xff\x55\x45\x78\x47\x55\x97\x0a\xe1\xfb\xe7\xfe\x65\xd5\xf0\xee\xa2": @@ -680,6 +694,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "DBET", 18) # eth / DecentBet elif address == b"\x38\x6f\xaa\x47\x03\xa3\x4a\x7f\xdb\x19\xbe\xc2\xe1\x4f\xd4\x27\xc9\x63\x84\x16": return (chain_id, address, "DCA", 18) # eth / DoBetAcceptBet + elif address == b"\x2d\x8e\x1d\xd4\x83\x00\x8c\x68\x43\xb9\xcf\x64\x4b\xad\x7f\xb2\x5b\xf5\x2b\x84": + return (chain_id, address, "DCB", 18) # eth / Digital Coin elif address == b"\xff\xa9\x3a\xac\xf4\x92\x97\xd5\x1e\x21\x18\x17\x45\x28\x39\x05\x2f\xdf\xb9\x61": return (chain_id, address, "DCC", 18) # eth / Distributed Credit Chain elif address == b"\x39\x9a\x0e\x6f\xbe\xb3\xd7\x4c\x85\x35\x74\x39\xf4\xc8\xae\xd9\x67\x8a\x5c\xbf": @@ -768,8 +784,10 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "dLZRX4x", 18) # eth / bZx Perpetual Short BAT elif address == b"\x2c\xcb\xff\x3a\x04\x2c\x68\x71\x6e\xd2\xa2\xcb\x0c\x54\x4a\x9f\x1d\x19\x35\xe1": return (chain_id, address, "DMT", 8) # eth / DMarket Token - elif address == b"\x82\xb0\xe5\x04\x78\xee\xaf\xde\x39\x2d\x45\xd1\x25\x9e\xd1\x07\x1b\x6f\xda\x81": + elif address == b"\xef\x63\x44\xde\x1f\xcf\xc5\xf4\x8c\x30\x23\x4c\x16\xc1\x38\x9e\x8c\xdc\x57\x2c": return (chain_id, address, "DNA", 18) # eth / EncrypGen + elif address == b"\x82\xb0\xe5\x04\x78\xee\xaf\xde\x39\x2d\x45\xd1\x25\x9e\xd1\x07\x1b\x6f\xda\x81": + return (chain_id, address, "[deprecated] DNA", 18) # eth / EncrypGen (old) elif address == b"\x0a\xbd\xac\xe7\x0d\x37\x90\x23\x5a\xf4\x48\xc8\x85\x47\x60\x3b\x94\x56\x04\xea": return (chain_id, address, "DNT", 18) # eth / District0x Network Token elif address == b"\xe4\x3e\x20\x41\xdc\x37\x86\xe1\x66\x96\x1e\xd9\x48\x4a\x55\x39\x03\x3d\x10\xfb": @@ -1001,7 +1019,7 @@ def token_by_chain_address(chain_id, address): elif address == b"\x44\x2d\x98\x5e\xfe\xbc\x63\x3b\x8b\xfd\x14\xff\x99\xe8\x60\xa5\x60\x9a\x64\x84": return (chain_id, address, "EVO", 18) # eth / Ethavo elif address == b"\xf3\xdb\x5f\xa2\xc6\x6b\x7a\xf3\xeb\x0c\x0b\x78\x25\x10\x81\x6c\xbe\x48\x13\xb8": - return (chain_id, address, "EVX", 4) # eth / EVX Token + return (chain_id, address, "EVX", 4) # eth / Everex elif address == b"\x44\x49\x97\xb7\xe7\xfc\x83\x0e\x20\x08\x9a\xfe\xa3\x07\x8c\xd5\x18\xfc\xf2\xa2": return (chain_id, address, "EWO", 18) # eth / EWO Token elif address == b"\x0d\x9a\x65\x3f\x68\x11\x68\xf4\x10\xd1\x4d\x19\xb7\x74\x3c\x04\x1e\xaf\xc5\x8a": @@ -1168,6 +1186,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "GFN", 8) # eth / GameFanz elif address == b"\x7f\x96\x9c\x4d\x38\x8c\xa0\xae\x39\xa4\xfd\xdb\x1a\x6f\x89\x87\x8c\xa2\xfb\xf8": return (chain_id, address, "GGC", 18) # eth / GGCOIN + elif address == b"\x72\x8f\x30\xfa\x2f\x10\x07\x42\xc7\x94\x9d\x19\x61\x80\x4f\xa8\xe0\xb1\x38\x7d": + return (chain_id, address, "GHX", 18) # eth / GamerCoin elif address == b"\xfc\xd8\x62\x98\x56\x28\xb2\x54\x06\x1f\x7a\x91\x80\x35\xb8\x03\x40\xd0\x45\xd3": return (chain_id, address, "GIF", 18) # eth / GIFcoin Token elif address == b"\xae\x4f\x56\xf0\x72\xc3\x4c\x0a\x65\xb3\xae\x3e\x4d\xb7\x97\xd8\x31\x43\x9d\x93": @@ -1192,6 +1212,10 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "GOLDX", 18) # eth / GOLDX elif address == b"\x42\x3b\x5f\x62\xb3\x28\xd0\xd6\xd4\x48\x70\xf4\xee\xe3\x16\xbe\xfa\x0b\x2d\xf5": return (chain_id, address, "GOT", 18) # eth / GoNetwork + elif address == b"\xee\xaa\x40\xb2\x8a\x2d\x1b\x0b\x08\xf6\xf9\x7b\xb1\xdd\x4b\x75\x31\x6c\x61\x07": + return (chain_id, address, "GOVI", 18) # eth / GOVI + elif address == b"\xce\x59\x3a\x29\x90\x59\x51\xe8\xfc\x57\x9b\xc0\x92\xec\xa7\x25\x77\xda\x57\x5c": + return (chain_id, address, "GR", 6) # eth / GROM elif address == b"\x4f\xbb\x35\x00\x52\xbc\xa5\x41\x75\x66\xf1\x88\xeb\x2e\xbc\xe5\xb1\x9b\xc9\x64": return (chain_id, address, "GRG", 18) # eth / Rigo Token elif address == b"\x12\xb1\x9d\x3e\x2c\xcc\x14\xda\x04\xfa\xe3\x3e\x63\x65\x2c\xe4\x69\xb3\xf2\xfd": @@ -1202,6 +1226,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "GROO", 18) # eth / Groocoin elif address == b"\x0a\x9a\x9c\xe6\x00\xd0\x8b\xf9\xb7\x6f\x49\xfa\x4e\x7b\x38\xa6\x7e\xbe\xb1\xe6": return (chain_id, address, "GROW", 8) # eth / Growchain + elif address == b"\xc9\x44\xe9\x0c\x64\xb2\xc0\x76\x62\xa2\x92\xbe\x62\x44\xbd\xf0\x5c\xda\x44\xa7": + return (chain_id, address, "GRT", 18) # eth / Graph Token elif address == b"\x22\x8b\xa5\x14\x30\x9f\xfd\xf0\x3a\x81\xa2\x05\xa6\xd0\x40\xe4\x29\xd6\xe8\x0c": return (chain_id, address, "GSC", 18) # eth / Global Social Chain elif address == b"\xe5\x30\x44\x1f\x4f\x73\xbd\xb6\xdc\x2f\xa5\xaf\x7c\x3f\xc5\xfd\x55\x1e\xc8\x38": @@ -1302,6 +1328,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "HT", 18) # eth / Huobi Token elif address == b"\x46\xae\x26\x4b\xf6\xd9\xdc\x6d\xd8\x4c\x31\x06\x45\x51\xf9\x61\xc6\x7a\x75\x5c": return (chain_id, address, "HTX", 18) # eth / HOT + elif address == b"\xba\x35\x8b\x6f\x5b\x4c\x02\x15\x65\x04\x44\xb8\xc3\x0d\x87\x0b\x55\x05\x0d\x2d": + return (chain_id, address, "HUB", 18) # eth / HubToken elif address == b"\x00\x1f\xc4\xa7\xf2\xf5\x86\x59\x63\x08\x09\x1c\x7b\x29\x6d\x45\x35\xa2\x5a\x90": return (chain_id, address, "HUBS", 18) # eth / Hubscop elif address == b"\xcd\xb7\xec\xfd\x34\x03\xee\xf3\x88\x2c\x65\xb7\x61\xef\x9b\x50\x54\x89\x0a\x47": @@ -1414,6 +1442,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "ITO", 18) # eth / InTime elif address == b"\x5e\x5b\xc2\x36\xd0\x24\xcd\x26\xbe\x78\x08\x02\xaa\xf1\xe0\xdc\x11\x8f\xc4\x84": return (chain_id, address, "[deprecated] ITO", 18) # eth / InTime + elif address == b"\x6e\xf5\xfe\xbb\xd2\xa5\x6f\xab\x23\xf1\x8a\x69\xd3\xfb\x9f\x4e\x2a\x70\x44\x0b": + return (chain_id, address, "ITR", 18) # eth / Intercoin elif address == b"\x40\x65\x55\xdb\xf0\x2e\x9e\x4d\xf9\xad\xea\xec\x9d\xa7\x6a\xbe\xed\x8c\x1b\xc3": return (chain_id, address, "iTRX", 18) # eth / Synth TRX elif address == b"\x0a\xef\x06\xdc\xcc\xc5\x31\xe5\x81\xf0\x44\x00\x59\xe6\xff\xcc\x20\x60\x39\xee": @@ -1434,6 +1464,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "iZRX", 18) # eth / bZx ZRX iToken elif address == b"\x0d\x26\x2e\x5d\xc4\xa0\x6a\x0f\x1c\x90\xce\x79\xc7\xa6\x0c\x09\xdf\xc8\x84\xe4": return (chain_id, address, "J8T", 8) # eth / J8T Token + elif address == b"\x74\x20\xb4\xb9\xa0\x11\x0c\xdc\x71\xfb\x72\x09\x08\x34\x0c\x03\xf9\xbc\x03\xec": + return (chain_id, address, "JASMY", 18) # eth / JasmyCoin elif address == b"\x9a\x36\x19\x49\x98\x25\xfb\xae\x63\x32\x9a\xa8\xbc\xb3\xf1\x0c\xd5\x95\x8e\x1c": return (chain_id, address, "JBD", 10) # eth / Jubilee Dollar elif address == b"\x88\x4e\x39\x02\xc4\xd5\xcf\xa8\x6d\xe4\xac\xe7\xa9\x6a\xa9\x1e\xbc\x25\xc0\xff": @@ -1610,6 +1642,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "MDA", 18) # eth / Moeda Loyalty Points elif address == b"\x81\x4e\x09\x08\xb1\x2a\x99\xfe\xcf\x5b\xc1\x01\xbb\x5d\x0b\x8b\x5c\xdf\x7d\x26": return (chain_id, address, "MDT", 18) # eth / Measurable Data Token + elif address == b"\x94\x7a\xeb\x02\x30\x43\x91\xf8\xfb\xe5\xb2\x5d\x7d\x98\xd6\x49\xb5\x7b\x17\x88": + return (chain_id, address, "MDX", 18) # eth / Mandala Exchange Token elif address == b"\xfd\x1e\x80\x50\x8f\x24\x3e\x64\xce\x23\x4e\xa8\x8a\x5f\xd2\x82\x7c\x71\xd4\xb7": return (chain_id, address, "MEDX", 8) # eth / MediBloc [ERC20] elif address == b"\xd5\x52\x5d\x39\x78\x98\xe5\x50\x20\x75\xea\x5e\x83\x0d\x89\x14\xf6\xf0\xaf\xfe": @@ -1678,6 +1712,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "MRV", 18) # eth / MRV elif address == b"\x68\xaa\x3f\x23\x2d\xa9\xbd\xc2\x34\x34\x65\x54\x57\x94\xef\x3e\xea\x52\x09\xbd": return (chain_id, address, "MSP", 18) # eth / Mothership + elif address == b"\xa3\xbe\xd4\xe1\xc7\x5d\x00\xfa\x6f\x4e\x5e\x69\x22\xdb\x72\x61\xb5\xe9\xac\xd2": + return (chain_id, address, "MTA", 18) # eth / mStable Meta elif address == b"\xaf\x4d\xce\x16\xda\x28\x77\xf8\xc9\xe0\x05\x44\xc9\x3b\x62\xac\x40\x63\x1f\x16": return (chain_id, address, "MTH", 5) # eth / Monetha elif address == b"\xf4\x33\x08\x93\x66\x89\x9d\x83\xa9\xf2\x6a\x77\x3d\x59\xec\x7e\xcf\x30\x35\x5e": @@ -1690,8 +1726,6 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "MTRc", 18) # eth / MTRCToken elif address == b"\x0a\xf4\x4e\x27\x84\x63\x72\x18\xdd\x1d\x32\xa3\x22\xd4\x4e\x60\x3a\x8f\x0c\x6a": return (chain_id, address, "MTX", 18) # eth / Matryx - elif address == b"\xa5\x23\x83\xb6\x65\xb9\x1d\xce\x42\xdd\x4b\x6d\x1e\x0f\xb3\x7d\x3e\xff\xe4\x89": - return (chain_id, address, "MUSD", 18) # eth / MASTER USD elif address == b"\x51\x56\x69\xd3\x08\xf8\x87\xfd\x83\xa4\x71\xc7\x76\x4f\x5d\x08\x48\x86\xd3\x4d": return (chain_id, address, "MUXE", 18) # eth / MUXE elif address == b"\x71\x39\x6a\x64\x10\x24\x97\x25\xc5\x60\x96\x46\xc4\xe4\x49\xc6\xc4\xd4\x1e\x27": @@ -1818,6 +1852,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "OIKOS", 2) # eth / OIKOS elif address == b"\xbe\xef\x54\x6a\xc8\xa4\xe0\xa8\x0d\xc1\xe2\xd6\x96\x96\x8e\xf5\x41\x38\xf1\xd4": return (chain_id, address, "OJX", 18) # eth / Ojooo Coin + elif address == b"\x75\x23\x1f\x58\xb4\x32\x40\xc9\x71\x8d\xd5\x8b\x49\x67\xc5\x11\x43\x42\xa8\x6c": + return (chain_id, address, "OKB", 18) # eth / OKB elif address == b"\x36\x18\x51\x6f\x45\xcd\x3c\x91\x3f\x81\xf9\x98\x7a\xf4\x10\x77\x93\x2b\xc4\x0d": return (chain_id, address, "OLDPCL", 8) # eth / OLDPeculium elif address == b"\xc6\x6e\xa8\x02\x71\x7b\xfb\x98\x33\x40\x02\x64\xdd\x12\xc2\xbc\xea\xa3\x4a\x6d": @@ -1832,8 +1868,6 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "OMT", 18) # eth / OTCMAKER Token elif address == b"\xb5\xdb\xc6\xd3\xcf\x38\x00\x79\xdf\x3b\x27\x13\x56\x64\xb6\xbc\xf4\x5d\x18\x69": return (chain_id, address, "OMX", 8) # eth / Shivom - elif address == b"\x4d\x80\x75\x09\xae\xce\x24\xc0\xfa\x5a\x10\x2b\x6a\x3b\x05\x9e\xc6\xe1\x43\x92": - return (chain_id, address, "ONE", 18) # eth / Menlo One elif address == b"\xb2\x3b\xe7\x35\x73\xbc\x7e\x03\xdb\x6e\x5d\xfc\x62\x40\x53\x68\x71\x6d\x28\xa8": return (chain_id, address, "ONEK", 18) # eth / One K Token elif address == b"\xd3\x41\xd1\x68\x0e\xee\xe3\x25\x5b\x8c\x4c\x75\xbc\xce\x7e\xb5\x7f\x14\x4d\xae": @@ -1944,6 +1978,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "PIT", 18) # eth / Paypite v2 elif address == b"\x8e\xff\xd4\x94\xeb\x69\x8c\xc3\x99\xaf\x62\x31\xfc\xcd\x39\xe0\x8f\xd2\x0b\x15": return (chain_id, address, "PIX", 0) # eth / Lampix + elif address == b"\x93\x18\x10\x54\x60\x62\x6e\x7f\xa5\x83\x08\xfa\x4b\xce\x40\xe4\x61\x6f\x35\x65": + return (chain_id, address, "PIXIE", 18) # eth / Pixie Dust elif address == b"\x02\xf2\xd4\xa0\x4e\x6e\x01\xac\xe8\x8b\xd2\xcd\x63\x28\x75\x54\x3b\x2e\xf5\x77": return (chain_id, address, "PKG", 18) # eth / PKG Token elif address == b"\x26\x04\xfa\x40\x6b\xe9\x57\xe5\x42\xbe\xb8\x9e\x67\x54\xfc\xde\x68\x15\xe8\x3f": @@ -2090,6 +2126,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "RED", 18) # eth / Red Community Token elif address == b"\xb5\x63\x30\x0a\x3b\xac\x79\xfc\x09\xb9\x3b\x6f\x84\xce\x0d\x44\x65\xa2\xac\x27": return (chain_id, address, "REDC", 18) # eth / RedCab + elif address == b"\xfe\x3e\x6a\x25\xe6\xb1\x92\xa4\x2a\x44\xec\xdd\xcd\x13\x79\x64\x71\x73\x5a\xcf": + return (chain_id, address, "REEF", 18) # eth / Reef Finance elif address == b"\x89\x30\x35\x00\xa7\xab\xfb\x17\x8b\x27\x4f\xd8\x9f\x24\x69\xc2\x64\x95\x1e\x1f": return (chain_id, address, "REF", 8) # eth / RefToken elif address == b"\x83\x98\x4d\x61\x42\x93\x4b\xb5\x35\x79\x3a\x82\xad\xb0\xa4\x6e\xf0\xf6\x6b\x6d": @@ -2224,6 +2262,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "SENT", 8) # eth / SENTinel elif address == b"\xe0\x6e\xda\x74\x35\xba\x74\x9b\x04\x73\x80\xce\xd4\x91\x21\xdd\xe9\x33\x34\xae": return (chain_id, address, "SET", 0) # eth / SET + elif address == b"\x04\xe0\xaf\x0a\xf1\xb7\xf0\x02\x3c\x6b\x12\xaf\x5a\x94\xdf\x59\xb0\xe8\xcf\x59": + return (chain_id, address, "SETS", 18) # eth / Sensitrust Token elif address == b"\x68\x47\x3d\xc4\xb7\xa4\xb0\x86\x7f\xd7\xc5\xb9\xa9\x82\xfe\xa4\x07\xda\xd3\x20": return (chain_id, address, "sEUR", 18) # eth / Synth sEUR elif address == b"\x98\xf5\xe9\xb7\xf0\xe3\x39\x56\xc0\x44\x3e\x81\xbf\x7d\xeb\x8b\x5b\x1e\xd5\x45": @@ -2610,6 +2650,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "uLZRX3x", 6) # eth / bZx Perpetual Long ZRX 3x elif address == b"\x39\x2b\x9f\xae\x89\x65\x94\x58\x6b\x4e\x6b\x08\x09\x16\xc6\x87\x2e\x74\xd4\x4f": return (chain_id, address, "uLZRX4x", 6) # eth / bZx Perpetual Long ZRX 4x + elif address == b"\x6f\xc1\x3e\xac\xe2\x65\x90\xb8\x0c\xcc\xab\x1b\xa5\xd5\x18\x90\x57\x7d\x83\xb2": + return (chain_id, address, "UMB", 18) # eth / Umbrella elif address == b"\x1f\x98\x40\xa8\x5d\x5a\xf5\xbf\x1d\x17\x62\xf9\x25\xbd\xad\xdc\x42\x01\xf9\x84": return (chain_id, address, "UNI", 18) # eth / Uniswap elif address == b"\x70\x15\x64\xaa\x6e\x26\x81\x61\x47\xd4\xfa\x21\x1a\x07\x79\xf1\xb7\x74\xbb\x9b": @@ -3276,6 +3318,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "WHEN", 18) # eth / WHEN Token elif address == b"\x3f\x17\xdd\x47\x6f\xaf\x0a\x48\x55\x57\x2f\x0b\x6e\xd5\x11\x5d\x9b\xba\x22\xad": return (chain_id, address, "WIB", 18) # eth / Wibson Token + elif address == b"\xc9\x8a\x91\x0e\xde\x52\xe7\xd5\x30\x85\x25\x84\x5f\x19\xe1\x74\x70\xdb\xcc\xf7": + return (chain_id, address, "WILC", 8) # eth / Wrapped ILCOIN elif address == b"\xd3\xc0\x07\x72\xb2\x4d\x99\x7a\x81\x22\x49\xca\x63\x7a\x92\x1e\x81\x35\x77\x01": return (chain_id, address, "WILD", 18) # eth / WILD Token elif address == b"\x89\x93\x38\xb8\x4d\x25\xac\x50\x5a\x33\x2a\xdc\xe7\x40\x2d\x69\x7d\x94\x74\x94": @@ -3414,6 +3458,8 @@ def token_by_chain_address(chain_id, address): return (chain_id, address, "YFV", 18) # eth / YFValue elif address == b"\x1b\xc7\xc1\xde\x0a\xc6\xef\x4f\xde\xc3\x5c\x05\x30\x30\xd9\x0c\xf5\x4c\x7e\x9a": return (chain_id, address, "YNN", 18) # eth / YANG + elif address == b"\x3d\x37\x14\x13\xdd\x54\x89\xf3\xa0\x4c\x07\xc0\xc2\xce\x36\x9c\x20\x98\x6c\xeb": + return (chain_id, address, "YOUC", 10) # eth / yOUcash elif address == b"\xcb\xea\xec\x69\x94\x31\x85\x7f\xdb\x4d\x37\xad\xdb\xbd\xc2\x0e\x13\x2d\x49\x03": return (chain_id, address, "YOYOW", 18) # eth / YOYOW elif address == b"\x53\x45\x46\xc4\x90\xa4\xed\x2a\x9d\x0c\x35\x55\x44\x7b\xb9\xb4\xb0\x1b\xcb\x9e":