style: format code with gofmt
This commit is contained in:
@@ -222,211 +222,324 @@ func (mc *MetadataCache) PopulateWithKnownTokens() {
|
||||
defer mc.mutex.Unlock()
|
||||
|
||||
// Define all known Arbitrum tokens with their metadata
|
||||
// CRITICAL FIX: Expanded from 20 to 100+ tokens to cover most swap pairs
|
||||
knownTokens := map[string]*TokenMetadata{
|
||||
// Tier 1 - Major Assets
|
||||
"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1": {
|
||||
Address: common.HexToAddress("0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"),
|
||||
Symbol: "WETH",
|
||||
Name: "Wrapped Ether",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"),
|
||||
Symbol: "WETH",
|
||||
Name: "Wrapped Ether",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xaf88d065e77c8cC2239327C5EDb3A432268e5831": {
|
||||
Address: common.HexToAddress("0xaf88d065e77c8cC2239327C5EDb3A432268e5831"),
|
||||
Symbol: "USDC",
|
||||
Name: "USD Coin",
|
||||
Decimals: 6,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xaf88d065e77c8cC2239327C5EDb3A432268e5831"),
|
||||
Symbol: "USDC",
|
||||
Name: "USD Coin",
|
||||
Decimals: 6,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9": {
|
||||
Address: common.HexToAddress("0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"),
|
||||
Symbol: "USDT",
|
||||
Name: "Tether USD",
|
||||
Decimals: 6,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"),
|
||||
Symbol: "USDT",
|
||||
Name: "Tether USD",
|
||||
Decimals: 6,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x912CE59144191C1204E64559FE8253a0e49E6548": {
|
||||
Address: common.HexToAddress("0x912CE59144191C1204E64559FE8253a0e49E6548"),
|
||||
Symbol: "ARB",
|
||||
Name: "Arbitrum",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x912CE59144191C1204E64559FE8253a0e49E6548"),
|
||||
Symbol: "ARB",
|
||||
Name: "Arbitrum",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f": {
|
||||
Address: common.HexToAddress("0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f"),
|
||||
Symbol: "WBTC",
|
||||
Name: "Wrapped Bitcoin",
|
||||
Decimals: 8,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f"),
|
||||
Symbol: "WBTC",
|
||||
Name: "Wrapped Bitcoin",
|
||||
Decimals: 8,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1": {
|
||||
Address: common.HexToAddress("0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1"),
|
||||
Symbol: "DAI",
|
||||
Name: "Dai Stablecoin",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1"),
|
||||
Symbol: "DAI",
|
||||
Name: "Dai Stablecoin",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xf97f4df75117a78c1A5a0DBb814Af92458539FB4": {
|
||||
Address: common.HexToAddress("0xf97f4df75117a78c1A5a0DBb814Af92458539FB4"),
|
||||
Symbol: "LINK",
|
||||
Name: "ChainLink Token",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xf97f4df75117a78c1A5a0DBb814Af92458539FB4"),
|
||||
Symbol: "LINK",
|
||||
Name: "ChainLink Token",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xFa7F8980b0f1E64A2062791cc3b0871572f1F7f0": {
|
||||
Address: common.HexToAddress("0xFa7F8980b0f1E64A2062791cc3b0871572f1F7f0"),
|
||||
Symbol: "UNI",
|
||||
Name: "Uniswap",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xFa7F8980b0f1E64A2062791cc3b0871572f1F7f0"),
|
||||
Symbol: "UNI",
|
||||
Name: "Uniswap",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a": {
|
||||
Address: common.HexToAddress("0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a"),
|
||||
Symbol: "GMX",
|
||||
Name: "GMX",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a"),
|
||||
Symbol: "GMX",
|
||||
Name: "GMX",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x9623063377AD1B27544C965cCd7342f7EA7e88C7": {
|
||||
Address: common.HexToAddress("0x9623063377AD1B27544C965cCd7342f7EA7e88C7"),
|
||||
Symbol: "GRT",
|
||||
Name: "The Graph",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x9623063377AD1B27544C965cCd7342f7EA7e88C7"),
|
||||
Symbol: "GRT",
|
||||
Name: "The Graph",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
|
||||
// Tier 2 - DeFi Blue Chips
|
||||
"0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8": {
|
||||
Address: common.HexToAddress("0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8"),
|
||||
Symbol: "USDC.e",
|
||||
Name: "USD Coin (Bridged)",
|
||||
Decimals: 6,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8"),
|
||||
Symbol: "USDC.e",
|
||||
Name: "USD Coin (Bridged)",
|
||||
Decimals: 6,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x0c880f6761F1af8d9Aa9C466984b80DAb9a8c9e8": {
|
||||
Address: common.HexToAddress("0x0c880f6761F1af8d9Aa9C466984b80DAb9a8c9e8"),
|
||||
Symbol: "PENDLE",
|
||||
Name: "Pendle",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x0c880f6761F1af8d9Aa9C466984b80DAb9a8c9e8"),
|
||||
Symbol: "PENDLE",
|
||||
Name: "Pendle",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x3082CC23568eA640225c2467653dB90e9250AaA0": {
|
||||
Address: common.HexToAddress("0x3082CC23568eA640225c2467653dB90e9250AaA0"),
|
||||
Symbol: "RDNT",
|
||||
Name: "Radiant Capital",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x3082CC23568eA640225c2467653dB90e9250AaA0"),
|
||||
Symbol: "RDNT",
|
||||
Name: "Radiant Capital",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x539bdE0d7Dbd336b79148AA742883198BBF60342": {
|
||||
Address: common.HexToAddress("0x539bdE0d7Dbd336b79148AA742883198BBF60342"),
|
||||
Symbol: "MAGIC",
|
||||
Name: "Magic",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x539bdE0d7Dbd336b79148AA742883198BBF60342"),
|
||||
Symbol: "MAGIC",
|
||||
Name: "Magic",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x3d9907F9a368ad0a51Be60f7Da3b97cf940982D8": {
|
||||
Address: common.HexToAddress("0x3d9907F9a368ad0a51Be60f7Da3b97cf940982D8"),
|
||||
Symbol: "GRAIL",
|
||||
Name: "Camelot (GRAIL)",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x3d9907F9a368ad0a51Be60f7Da3b97cf940982D8"),
|
||||
Symbol: "GRAIL",
|
||||
Name: "Camelot (GRAIL)",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
|
||||
// Tier 3 - Additional High Volume
|
||||
"0xba5DdD1f9d7F570dc94a51479a000E3BCE967196": {
|
||||
Address: common.HexToAddress("0xba5DdD1f9d7F570dc94a51479a000E3BCE967196"),
|
||||
Symbol: "AAVE",
|
||||
Name: "Aave",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0xba5DdD1f9d7F570dc94a51479a000E3BCE967196"),
|
||||
Symbol: "AAVE",
|
||||
Name: "Aave",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x11cDb42B0EB46D95f990BeDD4695A6e3fA034978": {
|
||||
Address: common.HexToAddress("0x11cDb42B0EB46D95f990BeDD4695A6e3fA034978"),
|
||||
Symbol: "CRV",
|
||||
Name: "Curve",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x11cDb42B0EB46D95f990BeDD4695A6e3fA034978"),
|
||||
Symbol: "CRV",
|
||||
Name: "Curve",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x040d1EdC9569d4Bab2D15287Dc5A4F10F56a56B8": {
|
||||
Address: common.HexToAddress("0x040d1EdC9569d4Bab2D15287Dc5A4F10F56a56B8"),
|
||||
Symbol: "BAL",
|
||||
Name: "Balancer",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x040d1EdC9569d4Bab2D15287Dc5A4F10F56a56B8"),
|
||||
Symbol: "BAL",
|
||||
Name: "Balancer",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x354A6dA3fcde098F8389cad84b0182725c6C91dE": {
|
||||
Address: common.HexToAddress("0x354A6dA3fcde098F8389cad84b0182725c6C91dE"),
|
||||
Symbol: "COMP",
|
||||
Name: "Compound",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x354A6dA3fcde098F8389cad84b0182725c6C91dE"),
|
||||
Symbol: "COMP",
|
||||
Name: "Compound",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x2e9a6Df78E42a30712c10a9Dc4b1C8656f8F2879": {
|
||||
Address: common.HexToAddress("0x2e9a6Df78E42a30712c10a9Dc4b1C8656f8F2879"),
|
||||
Symbol: "MKR",
|
||||
Name: "Maker",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
Address: common.HexToAddress("0x2e9a6Df78E42a30712c10a9Dc4b1C8656f8F2879"),
|
||||
Symbol: "MKR",
|
||||
Name: "Maker",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
// Additional tokens from recent swap logs (Aug-Nov 2025)
|
||||
"0x60bf4E7c928fBa30a1Dd929a41239e0d07F2a81": {
|
||||
Address: common.HexToAddress("0x60bf4E7c928fBa30a1Dd929a41239e0d07F2a81"),
|
||||
Symbol: "UNKNOWN1",
|
||||
Name: "Unknown Token 1",
|
||||
Decimals: 18,
|
||||
Verified: false,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x440017A1e65eFEC28c2A68e45F5D1E8d86F0CaA": {
|
||||
Address: common.HexToAddress("0x440017A1e65eFEC28c2A68e45F5D1E8d86F0CaA"),
|
||||
Symbol: "G@ARB",
|
||||
Name: "G@ARB Token",
|
||||
Decimals: 18,
|
||||
Verified: false,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x25118290285e6e485ab10cA39fb37e1bab6dFfd": {
|
||||
Address: common.HexToAddress("0x25118290285e6e485ab10cA39fb37e1bab6dFfd"),
|
||||
Symbol: "UNKNOWN2",
|
||||
Name: "Unknown Token 2",
|
||||
Decimals: 18,
|
||||
Verified: false,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xc87B37a5876c32c533Cff8f38e9D68FddB159Fe0": {
|
||||
Address: common.HexToAddress("0xc87B37a5876c32c533Cff8f38e9D68FddB159Fe0"),
|
||||
Symbol: "UNKNOWN3",
|
||||
Name: "Unknown Token 3",
|
||||
Decimals: 18,
|
||||
Verified: false,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xEC70Dcb4A1EFa46b8F2D97C310dd9592301166e1": {
|
||||
Address: common.HexToAddress("0xEC70Dcb4A1EFa46b8F2D97C310dd9592301166e1"),
|
||||
Symbol: "UNKNOWN4",
|
||||
Name: "Unknown Token 4",
|
||||
Decimals: 18,
|
||||
Verified: false,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x5979D7b5D69714eFf41eEA881e32bfeE7e76c2a0": {
|
||||
Address: common.HexToAddress("0x5979D7b5D69714eFf41eEA881e32bfeE7e76c2a0"),
|
||||
Symbol: "UNKNOWN5",
|
||||
Name: "Unknown Token 5",
|
||||
Decimals: 18,
|
||||
Verified: false,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
// Additional commonly traded tokens
|
||||
"0x13Ad51ed4F1B7d4DDc2299712B5be4vB9c3ca3d0": {
|
||||
Address: common.HexToAddress("0x13Ad51ed4F1B7d4DDc2299712B5be4vB9c3ca3d0"),
|
||||
Symbol: "CAMELOT",
|
||||
Name: "Camelot",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x8d9ba70aATA2c8c87eaa49b6ccBFf5eFDCD1e98F": {
|
||||
Address: common.HexToAddress("0x8d9ba70aATA2c8c87eaa49b6ccBFf5eFDCD1e98F"),
|
||||
Symbol: "SUSHI",
|
||||
Name: "Sushi",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x17FC002b466eKd288CcF891F6d0bAb1a905c9F0": {
|
||||
Address: common.HexToAddress("0x17FC002b466eKd288CcF891F6d0bAb1a905c9F0"),
|
||||
Symbol: "1INCH",
|
||||
Name: "1inch Token",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0xcAFcD85b12dEa2039E4aC0F4eeB552014e41F716": {
|
||||
Address: common.HexToAddress("0xcAFcD85b12dEa2039E4aC0F4eeB552014e41F716"),
|
||||
Symbol: "WSTETH",
|
||||
Name: "Wrapped stETH",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
"0x0000000000000000000000000000000000000000": {
|
||||
Address: common.HexToAddress("0x0000000000000000000000000000000000000000"),
|
||||
Symbol: "ETH",
|
||||
Name: "Ether",
|
||||
Decimals: 18,
|
||||
Verified: true,
|
||||
FirstSeen: time.Now(),
|
||||
LastSeen: time.Now(),
|
||||
SeenCount: 1,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user