diff --git a/exchanges/Makefile b/exchanges/Makefile deleted file mode 100644 index b7e6dfc35..000000000 --- a/exchanges/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -.PHONY: regen fetch test - -regen: - go run cmd/main.go --from-json-file=exchanges.json - gofmt -w exchanges.go - -fetch: - go run cmd/main.go - gofmt -w exchanges.go - -test: - go test -v -cover ./... diff --git a/exchanges/cmd/exchanges.txt b/exchanges/cmd/exchanges.txt deleted file mode 100644 index 500aa52f5..000000000 --- a/exchanges/cmd/exchanges.txt +++ /dev/null @@ -1,89 +0,0 @@ -package exchanges - -/*--------------------------------+ -| Code generated by exchanges | -| DO NOT EDIT | -+--------------------------------*/ - -import ( - "fmt" - - "github.com/ethereum/go-ethereum/common" -) - -type Exchange struct { - code string - name string - symbol string - logo string - addresses []common.Address -} - -func (e *Exchange) Code() string { return e.code } - -func (e *Exchange) Name() string { return e.name } - -func (e *Exchange) Symbol() string { return e.symbol } - -func (e *Exchange) Logo() string { return e.logo } - -func (e *Exchange) Addresses() []common.Address { return e.addresses } - -// Get returns an exchange struct if the provided -// code is contained within the valid codes. Otherwise -// an error will be returned -func GetCentralizedExchangeWithCode(code string) (*Exchange, error) { - if Valid(code) { - val, ok := centralizedExchangesByCode[code] - if ok { - return val, nil - } - } - return nil, fmt.Errorf("exchange: could not find exchange with code: %q", code) -} - -// Get returns an exchange struct which owns the given -// address. If the address does not belong to any exchange, -// nil will be returned -func GetCentralizedExchangeWithAddress(address common.Address) (*Exchange) { - return centralizedExchangesByAddress[address.String()] -} - -// Valid checks if a provided code is contained -// inside the provided ValidCodes slice -func Valid(code string) bool { - for _, c := range ValidCodes { - if c == code { - return true - } - } - return false -} - -// Following are all the structs containing exchange data -var ( - {{ range $k, $v := . -}} - // {{$v.Code}} Exchange struct - {{toVariableName $v.Code}} = Exchange{ code: "{{$v.Code}}", name: "{{$v.Name}}", symbol: "{{$v.Symbol}}", logo: "{{$v.Logo}}", addresses: []common.Address{ {{addressesJoin $v.Addresses}} } } - {{ end }} -) - -var centralizedExchangesByCode = map[string]*Exchange{ - {{ range $k, $v := . -}} - "{{$v.Code}}": &{{toVariableName $v.Code}}, - {{ end }} -} - -var centralizedExchangesByAddress = map[string]*Exchange{ - {{ range $k, $v := . -}} - {{ range $i, $a := $v.Addresses}} - "{{$a}}": &{{toVariableName $v.Code}}, - {{ end }} - {{ end }} -} - -var ValidCodes = []string{ - {{ range $k, $v := . -}} - "{{$v.Code}}", - {{ end }} -} diff --git a/exchanges/cmd/main.go b/exchanges/cmd/main.go deleted file mode 100644 index 09c6ed485..000000000 --- a/exchanges/cmd/main.go +++ /dev/null @@ -1,351 +0,0 @@ -package main - -import ( - "bytes" - "encoding/json" - "flag" - "fmt" - "go/format" - "io" - "io/ioutil" - "log" - "net/http" - "net/url" - "os" - "strconv" - "strings" - "text/template" - "time" - - "github.com/ethereum/go-ethereum/common" - "github.com/status-im/status-go/exchanges/cmd/scaffold" -) - -const ( - templateFile = "cmd/exchanges.txt" // must include the cmd prefix because this code is called from the Makefile - outputGoFile = "exchanges.go" - outputJsonFile = "exchanges.json" - - baseUrl = "https://sapi.coincarp.com/api" - walletUrl = baseUrl + "/v1/market/walletscreen/coin/wallet" - walletAddressUrl = baseUrl + "/v1/market/walletscreen/coin/walletaddress" - iconBaseUrl = "https://s1.coincarp.com" - - ethereumCode = "ethereum" - mainnetChainType = "" - initialPageSize = 30 - - maxRetries = 10 - - requestWaitTime = 1000 * time.Millisecond - requestTimeout = 5 * time.Second - - zeroAddress = "0x0000000000000000000000000000000000000000" -) - -func main() { - log.SetFlags(log.Lshortfile | log.LstdFlags) - - var fromJsonFile string - - flag.StringVar(&fromJsonFile, "from-json-file", "", "Path to JSON file to use instead of remote source") - flag.Parse() - - var exchangesData []exchangeData - if fromJsonFile == "" { - log.Println("Fetching from external service...") - exchangesData = getExchangesData() - } else { - log.Println("Fetching from JSON file...") - exchangesData = loadExchangesDataFromJson(fromJsonFile) - } - - log.Println("Generating files...") - for _, gen := range generators { - gen(exchangesData) - } -} - -func doRequest(url string) ([]byte, error) { - req, err := http.NewRequest(http.MethodGet, url, nil) - if err != nil { - return nil, err - } - - req.Header.Set("Content-Type", "application/json") - req.Header.Set("User-Agent", "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0") - - // Ensure wait time between requests - time.Sleep(requestWaitTime) - - client := http.Client{ - Timeout: requestTimeout, - } - - res, err := client.Do(req) - if err != nil { - log.Fatal(err) - } - - statusCode := res.StatusCode - if statusCode != http.StatusOK { - err := fmt.Errorf("unsuccessful request: %s - %d %s", url, statusCode, http.StatusText(statusCode)) - log.Fatal(err) - } - - b, err := ioutil.ReadAll(res.Body) - if err != nil { - log.Fatal(err) - } - defer res.Body.Close() - - var dataInfo scaffold.DataInfo - if err = json.Unmarshal(b, &dataInfo); err != nil { - fmt.Println("unmarshall error: ", url) - log.Fatal(err) - } - - if dataInfo.Code != http.StatusOK { - err := fmt.Errorf("inconsistent response: %s - %d %s", url, dataInfo.Code, dataInfo.Msg) - return nil, err - } - - return b, nil -} - -func getExchangesData() []exchangeData { - log.Println("Fetching exchanges list...") - exchanges, err := getLatestExchangeList() - if err != nil { - log.Fatalf("could not get list of exchanges: %v", err) - } - - exchangesData := make([]exchangeData, 0, 128) - for _, exchange := range exchanges { - log.Println("Fetching address list for exchange:", exchange.Name) - addresses, err := getLatestExchangeAddresses(exchange.Code) - if err != nil { - log.Fatalf("could not get list of addresses: %v", err) - } - exchangeData := buildExchangeData(exchange, addresses) - exchangesData = append(exchangesData, exchangeData) - } - - if len(exchangesData) == 0 { - log.Fatalf("could not build exchanges list") - } - - return exchangesData -} - -func loadExchangesDataFromJson(filePath string) []exchangeData { - file, err := ioutil.ReadFile(filePath) - if err != nil { - log.Fatal(err) - } - - var data []exchangeData - err = json.Unmarshal(file, &data) - if err != nil { - log.Fatalf("cannot unmarshal data: %v", err) - } - - return data -} - -func getLatestExchangeList() ([]*scaffold.Exchange, error) { - page := 1 - pageSize := initialPageSize - retries := 0 - exchanges := make([]*scaffold.Exchange, 0, 128) - - for { - queryParams := url.Values{ - "code": {ethereumCode}, - "chainType": {mainnetChainType}, - "page": {strconv.Itoa(page)}, - "pageSize": {strconv.Itoa(pageSize)}, - "isexchange": {"false"}, - "lang": {"en-US"}, - } - - url := walletUrl + "?" + queryParams.Encode() - - b, err := doRequest(url) - if err != nil { - fmt.Println("request error:", err) - if retries < maxRetries { - page = 1 - pageSize++ - retries++ - exchanges = nil - fmt.Println("retry", retries) - continue - } - log.Fatal(err) - } - - var data scaffold.ExchangesData - if err = json.Unmarshal(b, &data); err != nil { - fmt.Println("unmarshall error: ", url) - log.Fatal(err) - } - - exchanges = append(exchanges, data.Entries.List...) - - if page >= data.Entries.TotalPages { - break - } - - page++ - } - - return exchanges, nil -} - -func getLatestExchangeAddresses(exchangeCode string) ([]*scaffold.ExchangeAddress, error) { - page := 1 - pageSize := initialPageSize - retries := 0 - addresses := make([]*scaffold.ExchangeAddress, 0, 128) - - for { - queryParams := url.Values{ - "code": {ethereumCode}, - "exchangecode": {exchangeCode}, - "chainType": {mainnetChainType}, - "page": {strconv.Itoa(page)}, - "pageSize": {strconv.Itoa(pageSize)}, - "lang": {"en-US"}, - } - - url := walletAddressUrl + "?" + queryParams.Encode() - - b, err := doRequest(url) - if err != nil { - fmt.Println("request error:", err) - if retries < maxRetries { - page = 1 - pageSize++ - retries++ - addresses = nil - fmt.Println("retry", retries) - continue - } - log.Fatal(err) - } - - var data scaffold.ExchangeAddressesData - if err = json.Unmarshal(b, &data); err != nil { - fmt.Println("unmarshall error: ", url) - log.Fatal(err) - } - - addresses = append(addresses, data.Entries.List...) - - if page >= data.Entries.TotalPages { - break - } - - page++ - } - - return addresses, nil -} - -type exchangeData struct { - Code string `json:"code"` - Name string `json:"name"` - Symbol string `json:"symbol"` - Logo string `json:"logo"` - Addresses []common.Address `json:"addresses"` -} - -func buildExchangeData(exchange *scaffold.Exchange, addresses []*scaffold.ExchangeAddress) exchangeData { - data := exchangeData{ - Code: exchange.Code, - Name: exchange.Name, - Symbol: exchange.Symbol, - Logo: iconBaseUrl + exchange.Logo, - Addresses: []common.Address{}, - } - - for _, exchangeAddress := range addresses { - address := common.HexToAddress(exchangeAddress.Address) - if address.Hex() == zeroAddress { - continue - } - data.Addresses = append(data.Addresses, address) - } - - return data -} - -type generatorFunc func(exchangesData []exchangeData) - -var generators = []generatorFunc{ - generateJsonFile, - generateGoPackage, -} - -func generateJsonFile(exchangesData []exchangeData) { - file, err := json.MarshalIndent(exchangesData, "", " ") - if err != nil { - log.Fatalf("cannot marshal data: %v", err) - } - - err = ioutil.WriteFile(outputJsonFile, file, 0644) - if err != nil { - log.Fatal(err) - } -} - -func toVariableName(input string) string { - return "exchange_" + strings.ToLower(strings.Replace(input, "-", "_", -1)) -} - -func addressesJoin(addresses []common.Address) string { - list := make([]string, 0, len(addresses)) - - for _, address := range addresses { - list = append(list, "common.HexToAddress(\""+address.String()+"\")") - } - - return strings.Join(list, ", ") -} - -func generateGoPackage(exchangesData []exchangeData) { - tpl, err := ioutil.ReadFile(templateFile) - if err != nil { - log.Fatalf("cannot open template file: %v", err) - } - - funcMap := template.FuncMap{ - "toVariableName": toVariableName, - "addressesJoin": addressesJoin, - } - - t := template.Must(template.New("go").Funcs(funcMap).Parse(string(tpl))) - buf := new(bytes.Buffer) - err = t.Execute(buf, exchangesData) - if err != nil { - log.Fatal(err) - } - - formatted, err := format.Source(buf.Bytes()) - if err != nil { - log.Fatal(err) - } - buf = bytes.NewBuffer(formatted) - - to, err := os.Create(outputGoFile) - if err != nil { - log.Fatal(err) - } - defer to.Close() - - _, err = io.Copy(to, buf) - if err != nil { - log.Fatal(err) - } -} diff --git a/exchanges/cmd/scaffold/list.go b/exchanges/cmd/scaffold/list.go deleted file mode 100644 index 3098a9114..000000000 --- a/exchanges/cmd/scaffold/list.go +++ /dev/null @@ -1,44 +0,0 @@ -package scaffold - -type DataInfo struct { - Code int `json:"code"` - Msg string `json:"msg"` -} - -type EntriesInfo struct { - TotalCount int `json:"total_count"` - TotalPages int `json:"total_pages"` - Page int `json:"page"` -} - -type Exchange struct { - Code string `json:"code"` - Name string `json:"name"` - Symbol string `json:"symbol"` - Logo string `json:"logo"` -} - -type ExchangesEntries struct { - EntriesInfo - List []*Exchange `json:"list"` -} - -type ExchangesData struct { - DataInfo - Entries *ExchangesEntries `json:"data"` -} - -type ExchangeAddress struct { - Address string `json:"address"` - Flag string `json:"flag"` -} - -type ExchangesAddressesEntries struct { - EntriesInfo - List []*ExchangeAddress `json:"list"` -} - -type ExchangeAddressesData struct { - DataInfo - Entries *ExchangesAddressesEntries `json:"data"` -} diff --git a/exchanges/exchanges.go b/exchanges/exchanges.go deleted file mode 100644 index 51b5590f1..000000000 --- a/exchanges/exchanges.go +++ /dev/null @@ -1,1396 +0,0 @@ -package exchanges - -/*--------------------------------+ -| Code generated by exchanges | -| DO NOT EDIT | -+--------------------------------*/ - -import ( - "fmt" - - "github.com/ethereum/go-ethereum/common" -) - -type Exchange struct { - code string - name string - symbol string - logo string - addresses []common.Address -} - -func (e *Exchange) Code() string { return e.code } - -func (e *Exchange) Name() string { return e.name } - -func (e *Exchange) Symbol() string { return e.symbol } - -func (e *Exchange) Logo() string { return e.logo } - -func (e *Exchange) Addresses() []common.Address { return e.addresses } - -// Get returns an exchange struct if the provided -// code is contained within the valid codes. Otherwise -// an error will be returned -func GetCentralizedExchangeWithCode(code string) (*Exchange, error) { - if Valid(code) { - val, ok := centralizedExchangesByCode[code] - if ok { - return val, nil - } - } - return nil, fmt.Errorf("exchange: could not find exchange with code: %q", code) -} - -// Get returns an exchange struct which owns the given -// address. If the address does not belong to any exchange, -// nil will be returned -func GetCentralizedExchangeWithAddress(address common.Address) *Exchange { - return centralizedExchangesByAddress[address.String()] -} - -// Valid checks if a provided code is contained -// inside the provided ValidCodes slice -func Valid(code string) bool { - for _, c := range ValidCodes { - if c == code { - return true - } - } - return false -} - -// Following are all the structs containing exchange data -var ( - // binance Exchange struct - exchange_binance = Exchange{code: "binance", name: "Binance", symbol: "", logo: "https://s1.coincarp.com/logo/2/binance.png?style=36", addresses: []common.Address{common.HexToAddress("0xBE0eB53F46cd790Cd13851d5EFf43D12404d33E8"), common.HexToAddress("0xF977814e90dA44bFA03b6295A0616a897441aceC"), common.HexToAddress("0x47ac0Fb4F2D84898e4D9E7b4DaB3C24507a6D503"), common.HexToAddress("0x28C6c06298d514Db089934071355E5743bf21d60"), common.HexToAddress("0x5a52E96BAcdaBb82fd05763E25335261B270Efcb"), common.HexToAddress("0x9696f59E4d72E237BE84fFD425DCaD154Bf96976"), common.HexToAddress("0x06a0048079ec6571Cd1b537418869CDE6191d42D"), common.HexToAddress("0x21a31Ee1afC51d94C2eFcCAa2092aD1028285549"), common.HexToAddress("0x56Eddb7aa87536c09CCc2793473599fD21A8b17F"), common.HexToAddress("0xDFd5293D8e347dFe59E90eFd55b2956a1343963d"), common.HexToAddress("0x4976A4A02f38326660D17bf34b431dC6e2eb2327"), common.HexToAddress("0x8B99F3660622e21f2910ECCA7fBe51d654a1517D"), common.HexToAddress("0x4D9fF50EF4dA947364BB9650892B2554e7BE5E2B"), common.HexToAddress("0xB8c77482e45F1F44dE1745F52C74426C631bDD52"), common.HexToAddress("0x564286362092D8e7936f0549571a803B203aAceD"), common.HexToAddress("0x3666019b9e801FA9c6f73FdBC952052eBe35c059"), common.HexToAddress("0x708396f17127c42383E3b9014072679b2F60B82f"), common.HexToAddress("0x8894E0a0c962CB723c1976a4421c95949bE2D4E3"), common.HexToAddress("0x3f5CE5FBFe3E9af3971dD833D26bA9b5C936f0bE"), common.HexToAddress("0x001866Ae5B3de6cAa5a51543FD9fB64f524F5478"), common.HexToAddress("0xa344c7aDA83113B3B56941F6e85bf2Eb425949f3"), common.HexToAddress("0x4E9ce36E442e55EcD9025B9a6E0D88485d628A67"), common.HexToAddress("0x8f12f14A09D80051dE4315808Df57af19D80caD4"), common.HexToAddress("0xfE9e8709d3215310075d67E3ed32A380CCf451C8"), common.HexToAddress("0xE0F0CfDe7Ee664943906f17F7f14342E76A5CeC7"), common.HexToAddress("0x0681d8Db095565FE8A346fA0277bFfdE9C0eDBBF"), common.HexToAddress("0x328366Da5A4C5F669172a716955E3adf93A26705"), common.HexToAddress("0x6Aa8F871908F0A2A9AEFB4786b344707CB5D7e26"), common.HexToAddress("0xc365c3315cF926351CcAf13fA7D19c8C4058C8E1"), common.HexToAddress("0x8F22F2063D253846B53609231eD80FA571Bc0C8F"), common.HexToAddress("0xD551234Ae421e3BCBA99A0Da6d736074f22192FF"), common.HexToAddress("0x614B2aD34E7b3146314c352Ae02b4a9b19DeB685"), common.HexToAddress("0xf88c022F7EbfF09A76bf895eb5782a1d92F25Fc7"), common.HexToAddress("0x92D2A1D125C09b2b8192DDc111a5f61857037508"), common.HexToAddress("0xC3C8E0A39769e2308869f7461364ca48155D1d9E"), common.HexToAddress("0x410ed1cbceA3B3990A3f27362c06C3C5D1E75d08"), common.HexToAddress("0xCff79eB669a69bDe08eFce9eE8E37e601dF02F32"), common.HexToAddress("0x15aB2321d7E83d00C015048b567f4F6AadC1B022"), common.HexToAddress("0x4Fabb145d64652a948d72533023f6E7A623C7C53"), common.HexToAddress("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"), common.HexToAddress("0xdAC17F958D2ee523a2206206994597C13D831ec7")}} - // kraken Exchange struct - exchange_kraken = Exchange{code: "kraken", name: "Kraken", symbol: "", logo: "https://s1.coincarp.com/logo/2/kraken.png?style=36", addresses: []common.Address{common.HexToAddress("0xDA9dfA130Df4dE4673b89022EE50ff26f6EA73Cf"), common.HexToAddress("0x267be1C1D684F78cb4F6a176C4911b741E4Ffdc0"), common.HexToAddress("0xe9f7eCAe3A53D2A67105292894676b00d1FaB785"), common.HexToAddress("0xc6bed363b30DF7F35b601a5547fE56cd31Ec63DA"), common.HexToAddress("0x29728D0efd284D85187362fAA2d4d76C2CfC2612"), common.HexToAddress("0x66c57bF505A85A74609D2C83E94Aabb26d691E1F"), common.HexToAddress("0x43984D578803891dfa9706bDEee6078D80cFC79E"), common.HexToAddress("0xAe2D4617c862309A3d75A0fFB358c7a5009c673F"), common.HexToAddress("0xE853c56864A2ebe4576a807D26Fdc4A0adA51919"), common.HexToAddress("0x2910543Af39abA0Cd09dBb2D50200b3E800A63D2"), common.HexToAddress("0x53d284357ec70cE289D6D64134DfAc8E511c8a3D"), common.HexToAddress("0x0A869d79a7052C7f1b55a8EbAbbEa3420F0D1E13"), common.HexToAddress("0x7f4eDDa6C8646580E68b93041B5476348eEf0406"), common.HexToAddress("0xFa52274DD61E1643d2205169732f29114BC240b3")}} - // okex Exchange struct - exchange_okex = Exchange{code: "okex", name: "OKX(OKEx)", symbol: "", logo: "https://s1.coincarp.com/logo/2/okex.png?style=36&v=1642493710", addresses: []common.Address{common.HexToAddress("0x98EC059Dc3aDFBdd63429454aEB0c990FBA4A128"), common.HexToAddress("0x868daB0b8E21EC0a48b726A1ccf25826c78C6d7F"), common.HexToAddress("0x539C92186f7C6CC4CbF443F26eF84C595baBBcA1"), common.HexToAddress("0xbFbBFacCD1126A11b8F84C60b09859F80f3BD10F"), common.HexToAddress("0xBf94F0AC752C739F623C463b5210a7fb2cbb420B"), common.HexToAddress("0xf51cD688b8744b1bfD2FBa70D050dE85EC4fb9Fb"), common.HexToAddress("0xe95f6604A591F6ba33aCCB43a8a885C9c272108c"), common.HexToAddress("0xf7858Da8a6617f7C6d0fF2bcAFDb6D2eeDF64840"), common.HexToAddress("0xc3AE71FE59f5133BA180cbBd76536a70Dec23d40"), common.HexToAddress("0x4E7b110335511F662FDBB01bf958A7844118c0D4"), common.HexToAddress("0xA7EFAe728D2936e78BDA97dc267687568dD593f3"), common.HexToAddress("0x4b4e14a3773Ee558b6597070797fd51EB48606e5"), common.HexToAddress("0xCbffCB2c38ecd19468d366D392AC0c1DC7F04Bb6"), common.HexToAddress("0x2c8FBB630289363Ac80705A1a61273f76fD5a161"), common.HexToAddress("0x6cC5F688a315f3dC28A7781717a9A798a59fDA7b"), common.HexToAddress("0x7eb6c83AB7D8D9B8618c0Ed973cbEF71d1921EF2"), common.HexToAddress("0x313Eb1C5e1970EB5CEEF6AEbad66b07c7338d369"), common.HexToAddress("0xBDa23B750dD04F792ad365B5F2a6F1d8593796f2"), common.HexToAddress("0x96FDC631F02207B72e5804428DeE274cF2aC0bCD"), common.HexToAddress("0x9723b6d608D4841eB4Ab131687a5D4764eb30138"), common.HexToAddress("0x5041ed759Dd4aFc3a72b8192C143F72f4724081A"), common.HexToAddress("0x06d3a30cBb00660B85a30988D197B1c282c6dCB6"), common.HexToAddress("0x276cdBa3a39aBF9cEdBa0F1948312c0681E6D5Fd"), common.HexToAddress("0x68841a1806fF291314946EebD0cdA8b348E73d6D"), common.HexToAddress("0x3D55CCb2a943d88D39dd2E62DAf767C69fD0179F"), common.HexToAddress("0x07cff3c78Dc9bD2378b89b92f01254703861c2E4"), common.HexToAddress("0x236F9F97e0E62388479bf9E5BA4889e46B0273C3"), common.HexToAddress("0x59FAE149A8f8EC74d5bC038F8b76D25b136b9573"), common.HexToAddress("0x75231F58b43240C9718Dd58B4967c5114342a86c")}} - // Bitfinex Exchange struct - exchange_bitfinex = Exchange{code: "Bitfinex", name: "Bitfinex", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitfinex.png?style=36&v=1642558568", addresses: []common.Address{common.HexToAddress("0xC61b9BB3A7a0767E3179713f3A5c7a9aeDCE193C"), common.HexToAddress("0x36a85757645E8e8AeC062a1dEE289c7d615901Ca"), common.HexToAddress("0x1B8766d041567EeD306940c587e21C06aB968663"), common.HexToAddress("0x5a710a3cDF2AF218740384c52a10852D8870626A"), common.HexToAddress("0x4fdd5Eb2FB260149A3903859043e962Ab89D8ED4"), common.HexToAddress("0x28140CB1AC771d4Add91eE23788E50249C10263d"), common.HexToAddress("0xC56fEFd1028B0534bfaDCdB580d3519b5586246E"), common.HexToAddress("0x77134cbC06cB00b66F4c7e623D5fdBF6777635EC"), common.HexToAddress("0x0b73F67A49273fc4B9A65DBD25D7d0918E734E63"), common.HexToAddress("0x742d35Cc6634C0532925a3b844Bc454e4438f44e"), common.HexToAddress("0x53B36141490c419fa27ecabFEB8Be1ecAdc82431"), common.HexToAddress("0x0cD76cD43992C665FdC2d8aC91B935CA3165E782"), common.HexToAddress("0x1151314c646Ce4E0eFD76d1aF4760aE66a9Fe30F"), common.HexToAddress("0x876EabF441B2EE5B5b0554Fd502a8E0600950cFa"), common.HexToAddress("0x5754284f345afc66a98fbB0a0Afe71e0F007B949"), common.HexToAddress("0x87a32492dA96069115A12E27fF5e378f03A8eDF7"), common.HexToAddress("0xC6CDE7C39eB2f0F0095F41570af89eFC2C1Ea828"), common.HexToAddress("0xdcD0272462140D0A3cEd6C4bf970c7641f08CD2c"), common.HexToAddress("0x7727E5113D1d161373623e5f49FD568B4F543a9E")}} - // gemini Exchange struct - exchange_gemini = Exchange{code: "gemini", name: "Gemini", symbol: "", logo: "https://s1.coincarp.com/logo/2/gemini.png?style=36", addresses: []common.Address{common.HexToAddress("0x61EDCDf5bb737ADffE5043706e7C5bb1f1a56eEA"), common.HexToAddress("0xd24400ae8BfEBb18cA49Be86258a3C749cf46853"), common.HexToAddress("0x5f65f7b609678448494De4C87521CdF6cEf1e932"), common.HexToAddress("0x6Fc82a5fe25A5cDb58bc74600A40A69C065263f8")}} - // crypto-com-exchange Exchange struct - exchange_crypto_com_exchange = Exchange{code: "crypto-com-exchange", name: "Crypto.com Exchange", symbol: "", logo: "https://s1.coincarp.com/logo/2/crypto-com-exchange.png?style=36", addresses: []common.Address{common.HexToAddress("0xCFFAd3200574698b78f32232aa9D63eABD290703"), common.HexToAddress("0x6262998Ced04146fA42253a5C0AF90CA02dfd2A3"), common.HexToAddress("0x46340b20830761efd32832A74d7169B29FEB9758"), common.HexToAddress("0x72A53cDBBcc1b9efa39c834A540550e23463AAcB"), common.HexToAddress("0x7758E507850dA48cd47df1fB5F875c23E3340c50"), common.HexToAddress("0x55c005713BAb8824efd9f5B41C55F8bbC815abCd"), common.HexToAddress("0xA8e330039b67Be5573AfB388Dc35214481C5cf81")}} - // bithumb Exchange struct - exchange_bithumb = Exchange{code: "bithumb", name: "Bithumb", symbol: "", logo: "https://s1.coincarp.com/logo/2/bithumb.png?style=36", addresses: []common.Address{common.HexToAddress("0x558553D54183a8542F7832742e7B4Ba9c33Aa1E6"), common.HexToAddress("0x3fBE1f8Fc5dDb27d428aA60f661EAAaB0d2000ce"), common.HexToAddress("0x3052cD6BF951449A984fe4B5a38B46AEF9455c8E"), common.HexToAddress("0x8FA8aF91C675452200e49b4683a33Ca2E1A34e42"), common.HexToAddress("0x2140eFD7Ba31169c69dfff6CDC66C542f0211825"), common.HexToAddress("0x090bA5aF8284eBE16Fccfc6C0BE8FbEFcf23D365"), common.HexToAddress("0x15878e87c685f866edFaF454BE6Dc06Fa517B35B"), common.HexToAddress("0x186549a4aE594fc1F70bA4CFFDAc714b405bE3F9"), common.HexToAddress("0x31D03f07178BcD74F9099AfeBD23B0AE30184ab5"), common.HexToAddress("0x88D34944cF554e9CCCf4a24292D891f620e9c94F"), common.HexToAddress("0xA0Ff1e0F30b5DDA2dc01e7e828290Bc72b71E57d"), common.HexToAddress("0xc1dA8F69e4881efe341600620268934ef01a3E63"), common.HexToAddress("0xd273Bd546b11Bd60214A2F9d71f22A088AAfe31B"), common.HexToAddress("0xed48DC0628789c2956B1E41726d062a86ec45bFF")}} - // kucoin Exchange struct - exchange_kucoin = Exchange{code: "kucoin", name: "KuCoin", symbol: "", logo: "https://s1.coincarp.com/logo/2/kucoin.png?style=36", addresses: []common.Address{common.HexToAddress("0xD6216fC19DB775Df9774a6E33526131dA7D19a2c"), common.HexToAddress("0xb8e6D31e7B212b2b7250EE9c26C56cEBBFBe6B23"), common.HexToAddress("0x1692E170361cEFD1eb7240ec13D048Fd9aF6d667"), common.HexToAddress("0xcaD621da75a66c7A8f4FF86D30A2bF981Bfc8FdD"), common.HexToAddress("0xd89350284c7732163765b23338f2ff27449E0Bf5"), common.HexToAddress("0x88Bd4D3e2997371BCEEFE8D9386c6B5B4dE60346"), common.HexToAddress("0xeC30d02f10353f8EFC9601371f56e808751f396F"), common.HexToAddress("0x738cF6903E6c4e699D1C2dd9AB8b67fcDb3121eA"), common.HexToAddress("0xf16E9B0D03470827A95CDfd0Cb8a8A3b46969B91"), common.HexToAddress("0xa1D8d972560C2f8144AF871Db508F0B0B10a3fBf"), common.HexToAddress("0x2B5634C42055806a59e9107ED44D43c426E58258"), common.HexToAddress("0x689C56AEf474Df92D44A1B70850f808488F9769C"), common.HexToAddress("0xFf651EAD42b8EeA0B9cB88EDc92704ef6af372Ce"), common.HexToAddress("0x899B5d52671830f567BF43A14684Eb14e1f945fe"), common.HexToAddress("0x14EA40648fC8C1781D19363F5B9Cc9A877ac2469"), common.HexToAddress("0x2a8c8b09bD77c13980495A959B26c1305166A57f"), common.HexToAddress("0x5dB0E46744A321f7Fe7e2E4A9EE0df2F5dD0c3E3"), common.HexToAddress("0xF43D7EbaaD1Efefb3e4df0c9d5766a112DcE7Dec")}} - // bybit Exchange struct - exchange_bybit = Exchange{code: "bybit", name: "Bybit", symbol: "", logo: "https://s1.coincarp.com/logo/2/bybit.png?style=36&v=1642060058", addresses: []common.Address{common.HexToAddress("0x1Db92e2EeBC8E0c075a02BeA49a2935BcD2dFCF4"), common.HexToAddress("0xee5B5B923fFcE93A870B3104b7CA09c3db80047A"), common.HexToAddress("0xf89d7b9c864f589bbF53a82105107622B35EaA40"), common.HexToAddress("0xA7A93fd0a276fc1C0197a5B5623eD117786eeD06")}} - // gate-io Exchange struct - exchange_gate_io = Exchange{code: "gate-io", name: "gate.io", symbol: "", logo: "https://s1.coincarp.com/logo/2/gate-io.png?style=36&v=1654130549", addresses: []common.Address{common.HexToAddress("0xC882b111A75C0c657fC507C04FbFcD2cC984F071"), common.HexToAddress("0x1C4b70a3968436B9A0a9cf5205c787eb81Bb558c"), common.HexToAddress("0x0D0707963952f2fBA59dD06f2b425ace40b492Fe"), common.HexToAddress("0xD793281182A0e3E023116004778F45c29fc14F19"), common.HexToAddress("0x7793cD85c11a924478d358D49b05b37E91B5810F"), common.HexToAddress("0x5d8f42503ea6E7807DaF04047aA749E43847bE09"), common.HexToAddress("0x127481c5Ce4f9bB7cbDB6F8681eF27b21E953bd1"), common.HexToAddress("0x249C4677896D969e2fec3AD2c405FB4be3baD4D2"), common.HexToAddress("0x6DF6d4610e12Fd9033f8c8329F443f201BD36aE1"), common.HexToAddress("0xeb1d60A831a9B689a67f314aFbF0D7f9E6ac911d"), common.HexToAddress("0xE7872ffEDDAC12fB4B8579fBf390553415A99028"), common.HexToAddress("0x7049e4343cE902240cAeDFd093559250Ff890Cef"), common.HexToAddress("0xfF5566497750058C1b9A35229Ab7ca8f50811912"), common.HexToAddress("0xe134A754345582b113962cFA51b0DC036a1B04C5"), common.HexToAddress("0x4ADd38EE5bf1e232707c543C880F34c61c158EA9"), common.HexToAddress("0xDb13fEA8aFd91f66Bb99595AA2801599da1aed3F"), common.HexToAddress("0x020142aCd7f25281C0C5e0e90B6CCe6ddaEa3cD8"), common.HexToAddress("0xE35973b0C5C831A7423342DBaEbF555946FDEd4c"), common.HexToAddress("0xc9B8ded010dDb547e334410fC04BB82420EaFF06"), common.HexToAddress("0xfeAFAe14aDED9279afdA58C4A3Ac42FE7195E57F"), common.HexToAddress("0x9ED8b706C99E6ebd80824130eD935F9b5d78f4E3"), common.HexToAddress("0x1dBf7a573e5fF8E40E477510a7c43F633B0BEE79")}} - // bittrex Exchange struct - exchange_bittrex = Exchange{code: "bittrex", name: "Bittrex", symbol: "", logo: "https://s1.coincarp.com/logo/2/bittrex.png?style=36", addresses: []common.Address{common.HexToAddress("0x66f820a414680B5bcda5eECA5dea238543F42054"), common.HexToAddress("0xFbC9D695D419Cdf7eB46dF979353f5B394227976"), common.HexToAddress("0x429C8344C9b911e9a0A6e6cE257b28250Bd3a90a"), common.HexToAddress("0xFBb1b73C4f0BDa4f67dcA266ce6Ef42f520fBB98"), common.HexToAddress("0xE94b04a0FeD112f3664e45adb2B8915693dD5FF3")}} - // coinone Exchange struct - exchange_coinone = Exchange{code: "coinone", name: "Coinone", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinone.png?style=36", addresses: []common.Address{common.HexToAddress("0x1e2FCfd26d36183f1A5d90f0e6296915b02BCb40"), common.HexToAddress("0x167A9333BF582556f35Bd4d16A7E80E191aa6476")}} - // huobipro Exchange struct - exchange_huobipro = Exchange{code: "huobipro", name: "Huobi Global", symbol: "", logo: "https://s1.coincarp.com/logo/2/huobipro.png?style=36&v=1669107209", addresses: []common.Address{common.HexToAddress("0x18709E89BD403F470088aBDAcEbE86CC60dda12e"), common.HexToAddress("0xA929022c9107643515F5c777cE9a910F0D1e490C"), common.HexToAddress("0xeEe28d484628d41A82d01e21d12E2E78D69920da"), common.HexToAddress("0x6748F50f686bfbcA6Fe8ad62b22228b87F31ff2b"), common.HexToAddress("0x5C985E89DDe482eFE97ea9f1950aD149Eb73829B"), common.HexToAddress("0x1062a747393198f70F71ec65A582423Dba7E5Ab3"), common.HexToAddress("0xaB5C66752a9e8167967685F1450532fB96d5d24f"), common.HexToAddress("0xfdb16996831753d5331fF813c29a93c76834A0AD"), common.HexToAddress("0xFA4B5Be3f2f84f56703C42eB22142744E95a2c58"), common.HexToAddress("0x0A98fB70939162725aE66E626Fe4b52cFF62c2e5"), common.HexToAddress("0x46705dfff24256421A05D056c29E81Bdc09723B8"), common.HexToAddress("0x18916e1a2933Cb349145A280473A5DE8EB6630cb"), common.HexToAddress("0xFd54078bAdD5653571726C3370AfB127351a6f26"), common.HexToAddress("0xadB2B42F6bD96F5c65920b9ac88619DcE4166f94"), common.HexToAddress("0xc589b275e60dDa57aD7E117C6DD837Ab524a5666"), common.HexToAddress("0xf056F435Ba0CC4fCD2F1B17e3766549fFc404B94"), common.HexToAddress("0x5401dBf7da53e1C9Dbf484E3d69505815F2f5e6e"), common.HexToAddress("0x7EF35bb398E0416b81b019fEa395219B65c52164"), common.HexToAddress("0xEec606A66edB6f497662Ea31b5eb1610da87AB5f"), common.HexToAddress("0x794d28aC31bCB136294761a556b68D2634094153"), common.HexToAddress("0x4d77a1144dC74f26838B69391a6D3B1e403D0990"), common.HexToAddress("0x9A755332D874c893111207b0b220Ce2615cd036F"), common.HexToAddress("0xE4818f8fDe0C977A01DA4Fa467365B8bF22b071E"), common.HexToAddress("0x32598293906b5b17c27d657dB3AD2c9b3f3E4265"), common.HexToAddress("0xE93381fB4c4F14bDa253907b18faD305D799241a"), common.HexToAddress("0xf66852bC122fD40bFECc63CD48217E88bda12109"), common.HexToAddress("0x30741289523c2e4d2A62c7D6722686D14E723851"), common.HexToAddress("0x90E9dDD9d8D5ae4E3763d0CF856C97594DEA7325"), common.HexToAddress("0xB2a48f542dc56B89b24C04076cbE565b3Dc58e7b"), common.HexToAddress("0xCAc725beF4f114F728cbCfd744a731C2a463c3Fc"), common.HexToAddress("0x6F48a3E70F0251d1e83a989e62aAa2281A6d5380"), common.HexToAddress("0xEB6D43Fe241fb2320b5A3c9BE9CDfD4dd8226451"), common.HexToAddress("0x1B93129F05cc2E840135AAB154223C75097B69bf"), common.HexToAddress("0xd8a83b72377476D0a66683CDe20A8aAD0B628713"), common.HexToAddress("0x28FFE35688fFFfd0659AEE2E34778b0ae4E193aD"), common.HexToAddress("0xB4Cd0386d2Db86f30C1A11c2B8c4F4185c1Dade9"), common.HexToAddress("0x956e0DBEcC0e873d34a5e39B25f364b2CA036730"), common.HexToAddress("0x73f8FC2e74302eb2EfdA125A326655aCF0DC2D1B"), common.HexToAddress("0x229b5c097F9b35009CA1321Ad2034D4b3D5070F6"), common.HexToAddress("0xE3314bbF3334228b257779E28228CfB86fA4261B"), common.HexToAddress("0x1205E4f0D2f02262E667fd72f95a68913b4F7462"), common.HexToAddress("0x0511509A39377F1C6c78DB4330FBfcC16D8A602f"), common.HexToAddress("0x0577a79Cfc63Bbc0Df38833Ff4C4a3BF2095b404"), common.HexToAddress("0xB6bC437708a398cDA5627224BB8b88BCD1E88d8F"), common.HexToAddress("0xc837F51A0eFa33F8ECA03570e3D01a4B2CF97FfD"), common.HexToAddress("0x137ad9C4777E1d36e4b605e745e8F37B2b62E9c5"), common.HexToAddress("0x034f854B44D28E26386c1BC37ff9B20C6380b00d"), common.HexToAddress("0x0c6C34CDd915845376fb5407E0895196C9DD4eeC"), common.HexToAddress("0x926fC576b7facF6aE2d08eE2D4734C134a743988"), common.HexToAddress("0x5861b8446A2F6e19a067874c133f04c578928727"), common.HexToAddress("0xDc76CD25977E0a5Ae17155770273aD58648900D3"), common.HexToAddress("0x6f259637dcD74C767781E37Bc6133cd6A68aa161"), common.HexToAddress("0xa66Daa57432024023DB65477BA87D4E7F5f95213"), common.HexToAddress("0xa8660c8ffD6D578F657B72c0c811284aef0B735e")}} - // binance-us Exchange struct - exchange_binance_us = Exchange{code: "binance-us", name: "Binance.US", symbol: "", logo: "https://s1.coincarp.com/logo/2/binance-us.png?style=36", addresses: []common.Address{common.HexToAddress("0x34ea4138580435B5A521E460035edb19Df1938c1"), common.HexToAddress("0xf60c2Ea62EDBfE808163751DD0d8693DCb30019c"), common.HexToAddress("0x61189Da79177950A7272c88c6058b96d4bcD6BE2")}} - // bitflyer Exchange struct - exchange_bitflyer = Exchange{code: "bitflyer", name: "bitFlyer", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitflyer.png?style=36", addresses: []common.Address{common.HexToAddress("0x111cFf45948819988857BBF1966A0399e0D1141e")}} - // korbit Exchange struct - exchange_korbit = Exchange{code: "korbit", name: "Korbit", symbol: "", logo: "https://s1.coincarp.com/logo/2/korbit.png?style=36", addresses: []common.Address{common.HexToAddress("0xD03be958e6b8da2D28aC8231a2291d6E4f0a7ea7"), common.HexToAddress("0xf0bc8FdDB1F358cEf470D63F96aE65B1D7914953"), common.HexToAddress("0xd6e0F7dA4480b3AD7A2C8b31bc5a19325355CA15"), common.HexToAddress("0x8550E644D74536f1DF38B17D5F69aa1BFe28aE86"), common.HexToAddress("0x0c01089AEdc45Ab0F43467CCeCA6B4d3E4170bEa"), common.HexToAddress("0x2864DE013415B6c2C7A96333183B20f0F9cC7532"), common.HexToAddress("0x59fba2E8595841DD2627703f4bb535C3B40a12E0"), common.HexToAddress("0x49e14f2D6839768BcC39Ef0F60809f00eaBBAc69"), common.HexToAddress("0x51d9914cB7f0C7D03075280D8f57Eb0Be6Ee457E"), common.HexToAddress("0x58e2201D8e1668597A37f4D6e701fF642dC2fa6d"), common.HexToAddress("0xE6ae903Bf00691d5996fABa0C2Ee7E7422A48FfE"), common.HexToAddress("0x50CBe3772513706CEE11548A13a1890F0a2996A0"), common.HexToAddress("0x954818aE7D93DD682BEC7823EE3406e3B4133028"), common.HexToAddress("0xb7580490a51D3F48D451ba5f2DD79a835d266015"), common.HexToAddress("0x1167ed55a3a37f072d59217493117b07972aAD7F"), common.HexToAddress("0x1E4B147d4dA3Fdb73ACC8428dDEA638088451Cdc"), common.HexToAddress("0xe5d7CcC5fc3b3216C4DFF3a59442F1d83038468C"), common.HexToAddress("0x42992d123b02d213f58ddb72572Cf48607be6348")}} - // luno Exchange struct - exchange_luno = Exchange{code: "luno", name: "Luno", symbol: "", logo: "https://s1.coincarp.com/logo/2/luno.png?style=36", addresses: []common.Address{common.HexToAddress("0x416299AAde6443e6F6e8ab67126e65a7F606eeF5")}} - // coinbasepro Exchange struct - exchange_coinbasepro = Exchange{code: "coinbasepro", name: "Coinbase Pro", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinbasepro.png?style=36&v=1628048947", addresses: []common.Address{common.HexToAddress("0xA9D1e08C7793af67e9d92fe308d5697FB81d3E43"), common.HexToAddress("0x71660c4005BA85c37ccec55d0C4493E66Fe775d3"), common.HexToAddress("0xddfAbCdc4D8FfC6d5beaf154f18B778f892A0740"), common.HexToAddress("0x3cD751E6b0078Be393132286c442345e5DC49699"), common.HexToAddress("0x503828976D22510aad0201ac7EC88293211D23Da"), common.HexToAddress("0xb5d85CBf7cB3EE0D56b3bB207D5Fc4B82f43F511"), common.HexToAddress("0xeB2629a2734e272Bcc07BDA959863f316F4bD4Cf"), common.HexToAddress("0xA090e606E30bD747d4E6245a1517EbE430F0057e"), common.HexToAddress("0xD688AEA8f7d450909AdE10C47FaA95707b0682d9"), common.HexToAddress("0x02466E547BFDAb679fC49e96bBfc62B9747D997C"), common.HexToAddress("0x6b76F8B1e9E59913BfE758821887311bA1805cAB")}} - // idex Exchange struct - exchange_idex = Exchange{code: "idex", name: "IDEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/idex.png?style=36&v=1638840148", addresses: []common.Address{common.HexToAddress("0x2a0c0DBEcC7E4D658f48E01e3fA353F44050c208"), common.HexToAddress("0x19CD9ce7e9BD7F56f69Bcfb8ed63aEB46631A970")}} - // bitget Exchange struct - exchange_bitget = Exchange{code: "bitget", name: "Bitget", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitget.png?style=36&v=1676594834", addresses: []common.Address{common.HexToAddress("0xe80623a9d41f2f05780D9cD9cea0F797Fd53062A"), common.HexToAddress("0xe6a421f24d330967a3Af2F4cDB5c34067E7e4d75"), common.HexToAddress("0x97b9D2102A9a65A26E1EE82D59e42d1B73B68689"), common.HexToAddress("0x5bdf85216ec1e38D6458C870992A69e38e03F7Ef"), common.HexToAddress("0x0639556F03714A74a5fEEaF5736a4A64fF70D206"), common.HexToAddress("0xE2B406EC9227143A8830229eEb3Eb6E24b5c60Be"), common.HexToAddress("0x31A36512D4903635b7dd6828a934C3915A5809Be")}} - // mexc Exchange struct - exchange_mexc = Exchange{code: "mexc", name: "MEXC Global", symbol: "", logo: "https://s1.coincarp.com/logo/2/mexc.png?style=36&v=1668751999", addresses: []common.Address{common.HexToAddress("0x3CC936b795A188F0e246cBB2D74C5Bd190aeCF18"), common.HexToAddress("0x75e89d5979E4f6Fba9F97c104c2F0AFB3F1dcB88"), common.HexToAddress("0x0162Cd2BA40E23378Bf0FD41f919E1be075f025F"), common.HexToAddress("0x0211f3ceDbEf3143223D3ACF0e589747933e8527"), common.HexToAddress("0xe70CDE2c091569a09e7c1e335e20AF302Ab41339")}} - // curve Exchange struct - exchange_curve = Exchange{code: "curve", name: "Curve", symbol: "", logo: "https://s1.coincarp.com/logo/2/curve.png?style=36", addresses: []common.Address{common.HexToAddress("0xc5424B857f758E906013F3555Dad202e4bdB4567")}} - // bitmex Exchange struct - exchange_bitmex = Exchange{code: "bitmex", name: "BitMEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitmex.png?style=36", addresses: []common.Address{common.HexToAddress("0xEEA81C4416d71CeF071224611359F6F99A4c4294")}} - // poloniex Exchange struct - exchange_poloniex = Exchange{code: "poloniex", name: "Poloniex", symbol: "", logo: "https://s1.coincarp.com/logo/2/poloniex.png?style=36", addresses: []common.Address{common.HexToAddress("0xA910f92ACdAf488fa6eF02174fb86208Ad7722ba"), common.HexToAddress("0x32Be343B94f860124dC4fEe278FDCBD38C102D88"), common.HexToAddress("0x6F803466bCD17f44fa18975bf7c509ba64Bf3825"), common.HexToAddress("0x6B71834D65C5C4d8eD158D54B47E6Ea4Ff4E5437"), common.HexToAddress("0x8d451AE5ee8F557a9cE7A9D7Be8A8cb40002d5cB"), common.HexToAddress("0xc0e30823e5e628df8bc9bf2636a347E1512F0ecb"), common.HexToAddress("0xfbf2173154F7625713be22E0504404EBfE021eae"), common.HexToAddress("0xEaD6be34CE315940264519f250d8160f369fa5cd"), common.HexToAddress("0xb794F5eA0ba39494cE839613fffBA74279579268"), common.HexToAddress("0x48d466B7c0d32B61E8A82Cd2bCF060F7C3F966df"), common.HexToAddress("0x65F9B2e4d7aAEB40fFEA8C6F5844d5AD7Da257E0"), common.HexToAddress("0xaB11204cfEacCFfa63C2D23AeF2Ea9aCCDB0a0D5"), common.HexToAddress("0x0536806df512D6cDDE913Cf95c9886f65b1D3462"), common.HexToAddress("0x31a2Feb9b5D3b5f4e76C71D6C92FC46eBb3cb1c1"), common.HexToAddress("0x209c4784AB1E8183Cf58cA33cb740efbF3FC18EF"), common.HexToAddress("0x2fA2Bc2ce6A4f92952921A4CAA46B3727D24a1ec"), common.HexToAddress("0x36B01066b7fa4a0fdb2968eA0256C848e9135674"), common.HexToAddress("0x6795cf8EB25585EaDC356Ae32AC6641016c550f2"), common.HexToAddress("0xAa9fa73dFE17ecAa2C89b39f0bb2779613C5Fc3b"), common.HexToAddress("0xBd2Ec7c608a06fE975DBDCA729E84dEdb34eCC21")}} - // bit-z Exchange struct - exchange_bit_z = Exchange{code: "bit-z", name: "BitZ", symbol: "", logo: "https://s1.coincarp.com/logo/2/bit-z.png?style=36", addresses: []common.Address{common.HexToAddress("0xEe8D8ABABB63bCd41e70a30B187CbaAA4e5D7ec6"), common.HexToAddress("0xA24f25A8545eE2Ab81B2A5Cc8F047d3567fCDE0F"), common.HexToAddress("0x3D5851C33b581a49998850a78D1865a1936dAcb3"), common.HexToAddress("0x4B729cF402CfCfFd057E254924B32241AeDC1795")}} - // yobit Exchange struct - exchange_yobit = Exchange{code: "yobit", name: "YoBit", symbol: "", logo: "https://s1.coincarp.com/logo/2/yobit.png?style=36", addresses: []common.Address{common.HexToAddress("0xF5bEC430576fF1b82e44DDB5a1C93F6F9d0884f3"), common.HexToAddress("0xc4D300019f587145cFd9b42875073b3AD4Bb0296")}} - // coinswitch-kuber Exchange struct - exchange_coinswitch_kuber = Exchange{code: "coinswitch-kuber", name: "CoinSwitch", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinswitch-kuber.png?style=36&v=1672997092", addresses: []common.Address{common.HexToAddress("0x252D1375CA8F8A4CA59F1e7635F8Fd7C4A78031E"), common.HexToAddress("0xceAE7673553c90d0a3cd1A494dA35eDe63910cBF"), common.HexToAddress("0x3506A6ccc61d4D2046B79969020a5aF79010b4a6"), common.HexToAddress("0x294B9B133cA7Bc8ED2CdD03bA661a4C6d3a834D9"), common.HexToAddress("0x17a678C673FbB5B2f3294ef35e18c0Ef8cC3E64F"), common.HexToAddress("0x250b05e1E0dd20A876E369a16441E714e3d9f436"), common.HexToAddress("0x4346910075E50A442931D698D41ebE6965a584b1"), common.HexToAddress("0x4cD3aa96836c133c9B9f27daFa7baF744D57404d"), common.HexToAddress("0x758E2c2D1a362E2B3e613545e48285b03581EF43"), common.HexToAddress("0x7D3f7A3842f18873C769a42f92F51F091954211c"), common.HexToAddress("0xc0EB873cd81d47d290Ff7b6AD49280f6fD9cfB2B"), common.HexToAddress("0xE627b3e5591a713E3c23aF6fc4eBa2F313FdF489"), common.HexToAddress("0xE6b936B7640afa9242d1A714E50eE823e1Be140f")}} - // bitcoin-indonesia Exchange struct - exchange_bitcoin_indonesia = Exchange{code: "bitcoin-indonesia", name: "Indodax", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitcoin-indonesia.png?style=36", addresses: []common.Address{common.HexToAddress("0x91Dca37856240E5e1906222ec79278b16420Dc92"), common.HexToAddress("0x3C02290922a3618A4646E3BbCa65853eA45FE7C6"), common.HexToAddress("0x9CbADD5Ce7E14742F70414A6DcbD4e7bB8712719")}} - // phemex Exchange struct - exchange_phemex = Exchange{code: "phemex", name: "Phemex", symbol: "", logo: "https://s1.coincarp.com/logo/2/phemex.png?style=36", addresses: []common.Address{common.HexToAddress("0xf7D13C7dBec85ff86Ee815f6dCbb3DEDAc78ca49")}} - // bigone Exchange struct - exchange_bigone = Exchange{code: "bigone", name: "BigONE", symbol: "", logo: "https://s1.coincarp.com/logo/2/bigone.png?style=36", addresses: []common.Address{common.HexToAddress("0xD4Dcd2459BB78d7a645Aa7E196857D421b10D93F"), common.HexToAddress("0xa30D8157911ef23c46C0eB71889eFe6a648a41F7"), common.HexToAddress("0x88e343F4599292C2CfFe683C1bb93cD3480BdbAb"), common.HexToAddress("0x17Bc58b788808DaB201a9A90817fF3C168BF3d61")}} - // Bitmax Exchange struct - exchange_bitmax = Exchange{code: "Bitmax", name: "AscendEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitmax.png?style=36", addresses: []common.Address{common.HexToAddress("0x983873529f95132BD1812A3B52c98Fb271d2f679"), common.HexToAddress("0xfB8131c260749c7835a08ccBdb64728De432858E"), common.HexToAddress("0x4B1a99467a284Cc690e3237bC69105956816f762"), common.HexToAddress("0x03BDf69B1322D623836aFBD27679A1C0AfA067E9"), common.HexToAddress("0x986a2fCa9eDa0e06fBf7839B89BfC006eE2a23Dd")}} - // hitbtc Exchange struct - exchange_hitbtc = Exchange{code: "hitbtc", name: "HitBTC", symbol: "", logo: "https://s1.coincarp.com/logo/2/hitbtc.png?style=36", addresses: []common.Address{common.HexToAddress("0xEf58321032cF693Fa7e39F31e45CBc32f2092cb3"), common.HexToAddress("0x1C11BA15939E1C16eC7ca1678dF6160Ea2063Bc5"), common.HexToAddress("0xEd0245c53F69eBccDaB3e39cF0013161a67BF296"), common.HexToAddress("0xA12431D0B9dB640034b0CDFcEEF9CCe161e62be4"), common.HexToAddress("0x9C67e141C0472115AA1b98BD0088418Be68fD249"), common.HexToAddress("0x59a5208B32e627891C389EbafC644145224006E8"), common.HexToAddress("0xb77bd9fc4830A801D42BCD3Ffdf2f8C079ecBe28"), common.HexToAddress("0x2d969D1a10833f207fdC74381979bAa249146DF3")}} - // latoken Exchange struct - exchange_latoken = Exchange{code: "latoken", name: "LATOKEN", symbol: "", logo: "https://s1.coincarp.com/logo/2/latoken.png?style=36", addresses: []common.Address{common.HexToAddress("0x7891b20C690605F4E370d6944C8A5DBfAc5a451c"), common.HexToAddress("0x0861Fca546225fbF8806986D211C8398f7457734")}} - // bitstamp Exchange struct - exchange_bitstamp = Exchange{code: "bitstamp", name: "Bitstamp", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitstamp.png?style=36", addresses: []common.Address{common.HexToAddress("0x4c766dEf136F59f6494f0969B1355882080CF8E0"), common.HexToAddress("0x00BDb5699745f5b860228c8f939ABF1b9Ae374eD"), common.HexToAddress("0x1522900B6daFac587d499a862861C0869Be6E428"), common.HexToAddress("0xc5b611f502a0DCF6C3188Fd494061aE29B2baa4f"), common.HexToAddress("0x059799F2261d37b829c2850cEe67b5b975432271"), common.HexToAddress("0x9A9BED3Eb03E386D66f8a29DC67dC29Bbb1ccB72")}} - // coinlistpro Exchange struct - exchange_coinlistpro = Exchange{code: "coinlistpro", name: "Coinlist Pro", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinlistpro.png?style=36&v=1624265836", addresses: []common.Address{common.HexToAddress("0xD1669Ac6044269b59Fa12c5822439F609Ca54F41"), common.HexToAddress("0x8D1f2eBFACCf1136dB76FDD1b86f1deDE2D23852")}} - // shuzibi Exchange struct - exchange_shuzibi = Exchange{code: "shuzibi", name: "DigiFinex", symbol: "", logo: "https://s1.coincarp.com/logo/2/shuzibi.png?style=36", addresses: []common.Address{common.HexToAddress("0xB37640f5F7ef7b0fDCce2c0C053DB4f976945647"), common.HexToAddress("0x6693C388255F519497f0Ca2854c31B72E605569b"), common.HexToAddress("0xe17ee7B3c676701c66B395A35f0DF4C2276a344E")}} - // exmo Exchange struct - exchange_exmo = Exchange{code: "exmo", name: "Exmo", symbol: "", logo: "https://s1.coincarp.com/logo/2/exmo.png?style=36", addresses: []common.Address{common.HexToAddress("0x0DB79Bbb99DEFC2356d82848A459A5a13869EB3F"), common.HexToAddress("0xd7B9A9b2F665849C4071Ad5af77d8c76aa30fb32"), common.HexToAddress("0x1Fd6267f0D86F62D88172B998390AfEE2a1F54B6")}} - // zb Exchange struct - exchange_zb = Exchange{code: "zb", name: "ZB", symbol: "", logo: "https://s1.coincarp.com/logo/2/zb.png?style=36", addresses: []common.Address{common.HexToAddress("0xFD6724B4b3e8eca764F0DD07ccd903aD348D70F8"), common.HexToAddress("0x6485fc77bE2186fc60feeA38d0ef4331D8404b60"), common.HexToAddress("0xF98e7AF638b015D15E1820852bF24900f074b38B"), common.HexToAddress("0x60d0cC2aE15859f69bF74DADb8AE3Bd58434976b")}} - // hotbit Exchange struct - exchange_hotbit = Exchange{code: "hotbit", name: "Hotbit", symbol: "", logo: "https://s1.coincarp.com/logo/2/hotbit.png?style=36", addresses: []common.Address{common.HexToAddress("0x562680a4dC50ed2f14d75BF31f494cfE0b8D10a1"), common.HexToAddress("0x274F3c32C90517975e29Dfc209a23f315c1e5Fc7"), common.HexToAddress("0x8533A0bd9310Eb63E7CC8E1116c18a3D67B1976A")}} - // kuna Exchange struct - exchange_kuna = Exchange{code: "kuna", name: "Kuna", symbol: "", logo: "https://s1.coincarp.com/logo/2/kuna.png?style=36", addresses: []common.Address{common.HexToAddress("0xb357C9B4c9aff115f12AF5dd6dAb652d8f2ad561"), common.HexToAddress("0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D")}} - // probit-exchange Exchange struct - exchange_probit_exchange = Exchange{code: "probit-exchange", name: "ProBit Global", symbol: "", logo: "https://s1.coincarp.com/logo/2/probit-exchange.png?style=36", addresses: []common.Address{common.HexToAddress("0xF71AfE21Cd32959113Fc47aE2EF886B43A9413d5"), common.HexToAddress("0x72E5263FF33D2494692D7F94A758aA9F82062F73")}} - // remitano Exchange struct - exchange_remitano = Exchange{code: "remitano", name: "Remitano", symbol: "", logo: "https://s1.coincarp.com/logo/2/remitano.png?style=36&v=1628736240", addresses: []common.Address{common.HexToAddress("0x2819c144D5946404C0516B6f817a960dB37D4929"), common.HexToAddress("0x0be1cef9d45f6621eB083f0a0e4b2261618938d8"), common.HexToAddress("0xd0b02a49B0768302F407cB28d813DaE1761BAEfa")}} - // whitebit Exchange struct - exchange_whitebit = Exchange{code: "whitebit", name: "WhiteBIT", symbol: "", logo: "https://s1.coincarp.com/logo/2/whitebit.png?style=36&v=1667871362", addresses: []common.Address{common.HexToAddress("0x39F6a6C85d39d5ABAd8A398310c52E7c374F2bA3")}} - // coinw Exchange struct - exchange_coinw = Exchange{code: "coinw", name: "Coinw", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinw.png?style=36", addresses: []common.Address{common.HexToAddress("0xeD4e1AD0F899EF3954D05bafc502F50C8e6A6baf"), common.HexToAddress("0xa20f10289248717374e9B7776dC368aa526cb6F2"), common.HexToAddress("0x94961bB15bafE2d73b899B9a3fC209B3FcF899D6"), common.HexToAddress("0xcb243bf48FB443082FAE7db47eC96Cb120Cd6801"), common.HexToAddress("0x429Bf8EC3330E02401D72bEadE86000d9a2E19EB"), common.HexToAddress("0x8705CcFd8A6dF3785217C307cbEbf9b793310B94"), common.HexToAddress("0x9f8646A35db0f466aC9322e2D194cc18f209Fc75"), common.HexToAddress("0x6f31D347457962c9811ff953742870EF5a755dE3"), common.HexToAddress("0xd115B7B6bEA4819BFD1fe5397f5e7e01fA19D83d")}} - // xt Exchange struct - exchange_xt = Exchange{code: "xt", name: "XT", symbol: "", logo: "https://s1.coincarp.com/logo/2/xt.png?style=36", addresses: []common.Address{common.HexToAddress("0x659BA341542Ed9c25eCA5FD7daE3659385956360"), common.HexToAddress("0xe74638bff8e7e332c08C239407FA68324acf8Dee")}} - // okcoin-intl Exchange struct - exchange_okcoin_intl = Exchange{code: "okcoin-intl", name: "Okcoin", symbol: "", logo: "https://s1.coincarp.com/logo/2/okcoin-intl.png?style=36&v=1623981085", addresses: []common.Address{common.HexToAddress("0xD30b438DF65f4f788563b2b3611Bd6059bFF4ad9")}} - // wazirx Exchange struct - exchange_wazirx = Exchange{code: "wazirx", name: "WazirX", symbol: "", logo: "https://s1.coincarp.com/logo/2/wazirx.png?style=36&v=1630464169", addresses: []common.Address{common.HexToAddress("0x618fFD1cDAbeE36CE5992a857Cc7463f21272bD7")}} - // wootrade Exchange struct - exchange_wootrade = Exchange{code: "wootrade", name: "WOO X", symbol: "", logo: "https://s1.coincarp.com/logo/2/wootrade.png?style=36&v=1678894355", addresses: []common.Address{common.HexToAddress("0x63DFE4e34A3bFC00eB0220786238a7C6cEF8Ffc4"), common.HexToAddress("0xeA319fd75766F5180018F8e760f51c3D3C457496"), common.HexToAddress("0x0d83F81bc9f1E8252F87A4109bBF0d90171c81DF")}} - // bitrue Exchange struct - exchange_bitrue = Exchange{code: "bitrue", name: "Bitrue", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitrue.png?style=36&v=1637802321", addresses: []common.Address{common.HexToAddress("0x6cc8dCbCA746a6E4Fdefb98E1d0DF903b107fd21"), common.HexToAddress("0x878d587BE19cd44C203EC5E90d9cA3724C4D2c3D")}} - // binance-jex Exchange struct - exchange_binance_jex = Exchange{code: "binance-jex", name: "Binance JEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/binance-jex.png?style=36&v=1624874753", addresses: []common.Address{common.HexToAddress("0xAB83D182f3485cf1D6ccdd34C7CFEf95b4C08da4")}} - // otcbtc Exchange struct - exchange_otcbtc = Exchange{code: "otcbtc", name: "OTCBTC", symbol: "", logo: "https://s1.coincarp.com/logo/2/otcbtc.png?style=36", addresses: []common.Address{common.HexToAddress("0xAeEc6f5aCA72F3A005af1B3420ab8c8c7009BaC8"), common.HexToAddress("0x8f7DEE5cDe6965481F0119BaC9d5b2b142bcc94F")}} - // dextrade Exchange struct - exchange_dextrade = Exchange{code: "dextrade", name: "Dex-Trade", symbol: "", logo: "https://s1.coincarp.com/logo/2/dextrade.png?style=36&v=1624268482", addresses: []common.Address{common.HexToAddress("0xd0a174B1Ff551D63eD0823AE743bBe9BC204B0f0")}} - // mercatox Exchange struct - exchange_mercatox = Exchange{code: "mercatox", name: "Mercatox", symbol: "", logo: "https://s1.coincarp.com/logo/2/mercatox.png?style=36", addresses: []common.Address{common.HexToAddress("0xe03c23519e18D64F144d2800E30E81B0065C48B5")}} - // upbit Exchange struct - exchange_upbit = Exchange{code: "upbit", name: "Upbit", symbol: "", logo: "https://s1.coincarp.com/logo/2/upbit.png?style=36", addresses: []common.Address{common.HexToAddress("0x390dE26d772D2e2005C6d1d24afC902bae37a4bB"), common.HexToAddress("0xBA826fEc90CEFdf6706858E5FbaFcb27A290Fbe0"), common.HexToAddress("0x5E032243d507C743b061eF021e2EC7fcc6d3ab89"), common.HexToAddress("0x03747F06215B44E498831dA019B27f53E483599F")}} - // cex-io Exchange struct - exchange_cex_io = Exchange{code: "cex-io", name: "CEX.IO", symbol: "", logo: "https://s1.coincarp.com/logo/2/cex-io.png?style=36", addresses: []common.Address{common.HexToAddress("0xc9f5296Eb3ac266c94568D790b6e91ebA7D76a11")}} - // bilaxy Exchange struct - exchange_bilaxy = Exchange{code: "bilaxy", name: "Bilaxy", symbol: "", logo: "https://s1.coincarp.com/logo/2/bilaxy.png?style=36&v=1626747663", addresses: []common.Address{common.HexToAddress("0x9BA3560231e3E0aD7dde23106F5B98C72E30b468"), common.HexToAddress("0xf7793d27A1b76CDF14Db7C83e82C772cF7C92910")}} - // Bit2C Exchange struct - exchange_bit2c = Exchange{code: "Bit2C", name: "Bit2C", symbol: "", logo: "https://s1.coincarp.com/logo/2/bit2c.png?style=36", addresses: []common.Address{common.HexToAddress("0x7c49e1c0e33F3efB57d64b7690Fa287C8D15B90A")}} - // bingx Exchange struct - exchange_bingx = Exchange{code: "bingx", name: "BingX", symbol: "", logo: "https://s1.coincarp.com/logo/2/bingx.png?style=36&v=1647943344", addresses: []common.Address{common.HexToAddress("0x474ac5cb62D7aCEDC9990d4DaAfA0c39D9478FBB")}} - // liquid Exchange struct - exchange_liquid = Exchange{code: "liquid", name: "Liquid", symbol: "", logo: "https://s1.coincarp.com/logo/2/liquid.png?style=36", addresses: []common.Address{common.HexToAddress("0xedBB72E6b3Cf66a792bFF7FaaC5Ea769fe810517")}} - // bitforex Exchange struct - exchange_bitforex = Exchange{code: "bitforex", name: "BitForex", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitforex.png?style=36&v=1660631865", addresses: []common.Address{common.HexToAddress("0xeeC0Ed9E41C209c1c53a35900a06BF5DcA927405")}} - // coinex Exchange struct - exchange_coinex = Exchange{code: "coinex", name: "CoinEx", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinex.png?style=36", addresses: []common.Address{common.HexToAddress("0xb9ee1e551f538A464E8F8C41E9904498505B49b0"), common.HexToAddress("0x53Eb3Ea47643E87e8f25dd997A37B3b5260e7336")}} - // jbexcom Exchange struct - exchange_jbexcom = Exchange{code: "jbexcom", name: "Jubi", symbol: "", logo: "https://s1.coincarp.com/logo/2/jbexcom.png?style=36", addresses: []common.Address{common.HexToAddress("0xAD840A2B569188d49245fcd7Bde71167D77df6c0")}} - // 8v-global Exchange struct - exchange_8v_global = Exchange{code: "8v-global", name: "8V Global Exchange", symbol: "", logo: "https://s1.coincarp.com/logo/2/8v-global.png?style=36&v=1651200248", addresses: []common.Address{common.HexToAddress("0x09b1806Df13062B5f653BeDA6998972cabCF7009")}} - // coinexchange Exchange struct - exchange_coinexchange = Exchange{code: "coinexchange", name: "CoinExchange", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinexchange.png?style=36", addresses: []common.Address{common.HexToAddress("0x4B01721F0244E7c5B5F63c20942850E447f5a5Ee"), common.HexToAddress("0x226CE8219207E773c0768A699bf7982DbEA754Ad")}} - // tokencan Exchange struct - exchange_tokencan = Exchange{code: "tokencan", name: "Tokencan", symbol: "", logo: "https://s1.coincarp.com/logo/2/tokencan.png?style=36", addresses: []common.Address{common.HexToAddress("0x475c4810C124873a58E1045428D1FA35634b6048")}} - // btse Exchange struct - exchange_btse = Exchange{code: "btse", name: "BTSE", symbol: "", logo: "https://s1.coincarp.com/logo/2/btse.png?style=36", addresses: []common.Address{common.HexToAddress("0x1619d743d7DC612E99d5D94Ebd6b9695D46f0BF3"), common.HexToAddress("0xde279a5cD86860Cd3D039AA1B74bc29E74cABB12")}} - // zgcom Exchange struct - exchange_zgcom = Exchange{code: "zgcom", name: "ZG.com", symbol: "", logo: "https://s1.coincarp.com/logo/2/zgcom.png?style=36", addresses: []common.Address{common.HexToAddress("0x8BaeD8FD7FC228781a95e7D6E57C3e430D2BE6F9")}} - // qbtc Exchange struct - exchange_qbtc = Exchange{code: "qbtc", name: "QBTC", symbol: "", logo: "https://s1.coincarp.com/logo/2/qbtc.png?style=36", addresses: []common.Address{common.HexToAddress("0xa5a3903FC3698c241B1385DF4F80A5C665f47404")}} - // paribu Exchange struct - exchange_paribu = Exchange{code: "paribu", name: "Paribu", symbol: "", logo: "https://s1.coincarp.com/logo/2/paribu.png?style=36", addresses: []common.Address{common.HexToAddress("0xBd8ef191Caa1571e8aD4619ae894e07A75De0C35"), common.HexToAddress("0x2bB97B6CF6FfE53576032c11711D59Bd056830eE")}} - // ftx Exchange struct - exchange_ftx = Exchange{code: "ftx", name: "FTX", symbol: "", logo: "https://s1.coincarp.com/logo/2/ftx.png?style=36", addresses: []common.Address{common.HexToAddress("0xC098B2a3Aa256D2140208C3de6543aAEf5cd3A94"), common.HexToAddress("0xdc51356928baE9fd7F43ddB4a1C8e1FbDD340eB5"), common.HexToAddress("0xFF3baBb82a8065318A0548E4aF19e0ED46dc28F9"), common.HexToAddress("0xA72CEb9964Bac623D67CF4d07B99645145ba16e1"), common.HexToAddress("0xd45C041dC87AA2495793BeC3964389C81A962DFA"), common.HexToAddress("0xb2ab43F76131fb299A8b04d3434eEA6e14069cfA"), common.HexToAddress("0x91FDe2e551560067A818bdA6f4B63C89ee83500d"), common.HexToAddress("0x2FAF487A4414Fe77e2327F0bf4AE2a264a776AD2")}} - // bibox Exchange struct - exchange_bibox = Exchange{code: "bibox", name: "Bibox", symbol: "", logo: "https://s1.coincarp.com/logo/2/bibox.png?style=36", addresses: []common.Address{common.HexToAddress("0xf73C3c65bde10BF26c2E1763104e609A41702EFE")}} - // bitmart Exchange struct - exchange_bitmart = Exchange{code: "bitmart", name: "BitMart", symbol: "", logo: "https://s1.coincarp.com/logo/2/bitmart.png?style=36&v=1675696548", addresses: []common.Address{common.HexToAddress("0xe79eeF9b9388A4fF70ed7ec5Bccd5B928ebB8Bd1"), common.HexToAddress("0x68b22215FF74E3606BD5E6c1DE8c2D68180c85F7")}} - // bkex Exchange struct - exchange_bkex = Exchange{code: "bkex", name: "BKEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/bkex.png?style=36&v=1648085868", addresses: []common.Address{common.HexToAddress("0xD9811e8b7c42418c71dABfE63b9CC17f8db1A6Eb")}} - // Cobinhood Exchange struct - exchange_cobinhood = Exchange{code: "Cobinhood", name: "COBINHOOD", symbol: "", logo: "https://s1.coincarp.com/logo/2/cobinhood.png?style=36", addresses: []common.Address{common.HexToAddress("0xB726dA4fbdc3E4dBda97bb20998cF899b0e727E0"), common.HexToAddress("0x8958618332dF62AF93053cb9c535e26462c959B0")}} - // jingui Exchange struct - exchange_jingui = Exchange{code: "jingui", name: "JinGui", symbol: "", logo: "https://s1.coincarp.com/logo/2/jingui.png?style=36", addresses: []common.Address{common.HexToAddress("0xf65c33c383a6996ffEC2d00AA93df3cE2Bdb7851")}} - // bgogo Exchange struct - exchange_bgogo = Exchange{code: "bgogo", name: "Bgogo", symbol: "", logo: "https://s1.coincarp.com/logo/2/bgogo.png?style=36", addresses: []common.Address{common.HexToAddress("0x7A10Ec7d68a048BdaE36A70E93532D31423170fA"), common.HexToAddress("0xCe1bF8E51F8b39e51c6184e059786D1c0eAF360F")}} - // citex Exchange struct - exchange_citex = Exchange{code: "citex", name: "CITEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/citex.png?style=36", addresses: []common.Address{common.HexToAddress("0xe51a4316607772132F89b3483DA698e4d682E191"), common.HexToAddress("0x9E2E3649563E60926A7B5968BC3537Fb58fAf78b"), common.HexToAddress("0x4d7291630651041358abE50532C1A20948559155"), common.HexToAddress("0x691c5e2751Ec615d2b49cb569fdF787720b0fD31"), common.HexToAddress("0x7B897Ab1e759028F14e1841Ffc5449f11273e330")}} - // crex24 Exchange struct - exchange_crex24 = Exchange{code: "crex24", name: "CREX24", symbol: "", logo: "https://s1.coincarp.com/logo/2/crex24.png?style=36", addresses: []common.Address{common.HexToAddress("0x521dB06bF657Ed1D6C98553A70319a8DdBAc75A3")}} - // idcm Exchange struct - exchange_idcm = Exchange{code: "idcm", name: "Klickl(IDCM)", symbol: "", logo: "https://s1.coincarp.com/logo/2/idcm.png?style=36&v=1652319488", addresses: []common.Address{common.HexToAddress("0x2a1dCbDF3fc17C7263529AA7fB1F90e3D4624eD2"), common.HexToAddress("0x2B2b0CF3d1BC4a776c512e7F374991FD9CA3Eb34"), common.HexToAddress("0xC5565200eb6a428451D53280b49c4488f74ac14D"), common.HexToAddress("0x8B2b3d18230661157d399226686d91B2fC340a30"), common.HexToAddress("0x0A8B4E06FA1A93211422D0F4f12747A832dBBD28"), common.HexToAddress("0xC86F08c4F6aeC029Ece7e56d1d302dFdcF2EC41d")}} - // tidex Exchange struct - exchange_tidex = Exchange{code: "tidex", name: "Tidex", symbol: "", logo: "https://s1.coincarp.com/logo/2/tidex.png?style=36&v=1651653452", addresses: []common.Address{common.HexToAddress("0x3613ef1125A078EF96Ffc898c4eC28D73C5b8C52"), common.HexToAddress("0x0a73573Cf2903d2D8305b1eCb9e9730186a312aE")}} - // ztcom Exchange struct - exchange_ztcom = Exchange{code: "ztcom", name: "ZT", symbol: "", logo: "https://s1.coincarp.com/logo/2/ztcom.png?style=36", addresses: []common.Address{common.HexToAddress("0x5004A7AA3c430BC3e133Ee29C28E391b16F8BF7d"), common.HexToAddress("0x444a5E0d2515f322E7278F6EE95CB34d8de98f09"), common.HexToAddress("0x7aA12EeF14Db55884Ab2Fe0D097E0064EF7A8ECA"), common.HexToAddress("0x0179D232beCF100Cd1f0Dd3e84a8AFA9ca31aFF3")}} - // coinegg Exchange struct - exchange_coinegg = Exchange{code: "coinegg", name: "CoinEgg", symbol: "", logo: "https://s1.coincarp.com/logo/2/coinegg.png?style=36", addresses: []common.Address{common.HexToAddress("0x93f36930F94FBB5aFc5fB506D3f7ABB9179a4e4e")}} - // bw Exchange struct - exchange_bw = Exchange{code: "bw", name: "BW", symbol: "", logo: "https://s1.coincarp.com/logo/2/bw.png?style=36", addresses: []common.Address{common.HexToAddress("0x73957709695E73Fd175582105c44743CF0fB6f2f")}} - // uex Exchange struct - exchange_uex = Exchange{code: "uex", name: "UEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/uex.png?style=36", addresses: []common.Address{common.HexToAddress("0x2f1233Ec3a4930Fd95874291DB7da9E90dfB2F03")}} - // ggbtc Exchange struct - exchange_ggbtc = Exchange{code: "ggbtc", name: "GGBTC", symbol: "", logo: "https://s1.coincarp.com/logo/2/ggbtc.png?style=36", addresses: []common.Address{common.HexToAddress("0x9fB01A2584Aac5aAE3faB1ed25F86c5269b32999")}} - // ulei Exchange struct - exchange_ulei = Exchange{code: "ulei", name: "ULEI", symbol: "", logo: "https://s1.coincarp.com/logo/2/ulei.png?style=36", addresses: []common.Address{common.HexToAddress("0xb27ac505bee7298b204b530b368B6191F4141C55"), common.HexToAddress("0x412D18072b7809aB25d8B4B0e0167128E122eC37")}} - // wrnet Exchange struct - exchange_wrnet = Exchange{code: "wrnet", name: "XinBi Global", symbol: "", logo: "https://s1.coincarp.com/logo/2/wrnet.png?style=36", addresses: []common.Address{common.HexToAddress("0x499bC6B4B9e7da1fD8A775106a389F4C1D1D4B98"), common.HexToAddress("0x373fE5F4D8936590b4463DF22bE4ce3f82ced806"), common.HexToAddress("0xf8bC6604190a6279080E0fE24e15dc1D2927E10B")}} - // dcoin Exchange struct - exchange_dcoin = Exchange{code: "dcoin", name: "Dcoin", symbol: "", logo: "https://s1.coincarp.com/logo/2/dcoin.png?style=36", addresses: []common.Address{common.HexToAddress("0x4003CAefF9d6eB5af6927b0842c90f43F31d25d1")}} - // ftx-us Exchange struct - exchange_ftx_us = Exchange{code: "ftx-us", name: "FTX US", symbol: "", logo: "https://s1.coincarp.com/logo/2/ftx-us.png?style=36", addresses: []common.Address{common.HexToAddress("0x7abE0cE388281d2aCF297Cb089caef3819b13448")}} - // abcc Exchange struct - exchange_abcc = Exchange{code: "abcc", name: "ABCC", symbol: "", logo: "https://s1.coincarp.com/logo/2/abcc.png?style=36", addresses: []common.Address{common.HexToAddress("0x05f51AAb068CAa6Ab7eeb672f88c180f67F17eC7")}} - // aex Exchange struct - exchange_aex = Exchange{code: "aex", name: "AEX", symbol: "", logo: "https://s1.coincarp.com/logo/2/aex.png?style=36", addresses: []common.Address{common.HexToAddress("0x4564BFe303900178578769b2D76B1a13533E5fd5"), common.HexToAddress("0x6814B1FE0dBb34d006dC204A6b2DED962dF1D684")}} - // bithumbpro Exchange struct - exchange_bithumbpro = Exchange{code: "bithumbpro", name: "BitGlobal", symbol: "", logo: "https://s1.coincarp.com/logo/2/bithumbpro.png?style=36&v=1637803956", addresses: []common.Address{common.HexToAddress("0xb4460b75254ce0563Bb68eC219208344C7EA838c")}} - // sushiswap Exchange struct - exchange_sushiswap = Exchange{code: "sushiswap", name: "SushiSwap", symbol: "", logo: "https://s1.coincarp.com/logo/2/sushiswap.png?style=36", addresses: []common.Address{common.HexToAddress("0x088ee5007C98a9677165D78dD2109AE4a3D04d0C")}} - // uniswap Exchange struct - exchange_uniswap = Exchange{code: "uniswap", name: "Uniswap (V2)", symbol: "", logo: "https://s1.coincarp.com/logo/2/uniswap.png?style=36", addresses: []common.Address{common.HexToAddress("0x2fDbAdf3C4D5A8666Bc06645B8358ab803996E28")}} -) - -var centralizedExchangesByCode = map[string]*Exchange{ - "binance": &exchange_binance, - "kraken": &exchange_kraken, - "okex": &exchange_okex, - "Bitfinex": &exchange_bitfinex, - "gemini": &exchange_gemini, - "crypto-com-exchange": &exchange_crypto_com_exchange, - "bithumb": &exchange_bithumb, - "kucoin": &exchange_kucoin, - "bybit": &exchange_bybit, - "gate-io": &exchange_gate_io, - "bittrex": &exchange_bittrex, - "coinone": &exchange_coinone, - "huobipro": &exchange_huobipro, - "binance-us": &exchange_binance_us, - "bitflyer": &exchange_bitflyer, - "korbit": &exchange_korbit, - "luno": &exchange_luno, - "coinbasepro": &exchange_coinbasepro, - "idex": &exchange_idex, - "bitget": &exchange_bitget, - "mexc": &exchange_mexc, - "curve": &exchange_curve, - "bitmex": &exchange_bitmex, - "poloniex": &exchange_poloniex, - "bit-z": &exchange_bit_z, - "yobit": &exchange_yobit, - "coinswitch-kuber": &exchange_coinswitch_kuber, - "bitcoin-indonesia": &exchange_bitcoin_indonesia, - "phemex": &exchange_phemex, - "bigone": &exchange_bigone, - "Bitmax": &exchange_bitmax, - "hitbtc": &exchange_hitbtc, - "latoken": &exchange_latoken, - "bitstamp": &exchange_bitstamp, - "coinlistpro": &exchange_coinlistpro, - "shuzibi": &exchange_shuzibi, - "exmo": &exchange_exmo, - "zb": &exchange_zb, - "hotbit": &exchange_hotbit, - "kuna": &exchange_kuna, - "probit-exchange": &exchange_probit_exchange, - "remitano": &exchange_remitano, - "whitebit": &exchange_whitebit, - "coinw": &exchange_coinw, - "xt": &exchange_xt, - "okcoin-intl": &exchange_okcoin_intl, - "wazirx": &exchange_wazirx, - "wootrade": &exchange_wootrade, - "bitrue": &exchange_bitrue, - "binance-jex": &exchange_binance_jex, - "otcbtc": &exchange_otcbtc, - "dextrade": &exchange_dextrade, - "mercatox": &exchange_mercatox, - "upbit": &exchange_upbit, - "cex-io": &exchange_cex_io, - "bilaxy": &exchange_bilaxy, - "Bit2C": &exchange_bit2c, - "bingx": &exchange_bingx, - "liquid": &exchange_liquid, - "bitforex": &exchange_bitforex, - "coinex": &exchange_coinex, - "jbexcom": &exchange_jbexcom, - "8v-global": &exchange_8v_global, - "coinexchange": &exchange_coinexchange, - "tokencan": &exchange_tokencan, - "btse": &exchange_btse, - "zgcom": &exchange_zgcom, - "qbtc": &exchange_qbtc, - "paribu": &exchange_paribu, - "ftx": &exchange_ftx, - "bibox": &exchange_bibox, - "bitmart": &exchange_bitmart, - "bkex": &exchange_bkex, - "Cobinhood": &exchange_cobinhood, - "jingui": &exchange_jingui, - "bgogo": &exchange_bgogo, - "citex": &exchange_citex, - "crex24": &exchange_crex24, - "idcm": &exchange_idcm, - "tidex": &exchange_tidex, - "ztcom": &exchange_ztcom, - "coinegg": &exchange_coinegg, - "bw": &exchange_bw, - "uex": &exchange_uex, - "ggbtc": &exchange_ggbtc, - "ulei": &exchange_ulei, - "wrnet": &exchange_wrnet, - "dcoin": &exchange_dcoin, - "ftx-us": &exchange_ftx_us, - "abcc": &exchange_abcc, - "aex": &exchange_aex, - "bithumbpro": &exchange_bithumbpro, - "sushiswap": &exchange_sushiswap, - "uniswap": &exchange_uniswap, -} - -var centralizedExchangesByAddress = map[string]*Exchange{ - - "0xBE0eB53F46cd790Cd13851d5EFf43D12404d33E8": &exchange_binance, - - "0xF977814e90dA44bFA03b6295A0616a897441aceC": &exchange_binance, - - "0x47ac0Fb4F2D84898e4D9E7b4DaB3C24507a6D503": &exchange_binance, - - "0x28C6c06298d514Db089934071355E5743bf21d60": &exchange_binance, - - "0x5a52E96BAcdaBb82fd05763E25335261B270Efcb": &exchange_binance, - - "0x9696f59E4d72E237BE84fFD425DCaD154Bf96976": &exchange_binance, - - "0x06a0048079ec6571Cd1b537418869CDE6191d42D": &exchange_binance, - - "0x21a31Ee1afC51d94C2eFcCAa2092aD1028285549": &exchange_binance, - - "0x56Eddb7aa87536c09CCc2793473599fD21A8b17F": &exchange_binance, - - "0xDFd5293D8e347dFe59E90eFd55b2956a1343963d": &exchange_binance, - - "0x4976A4A02f38326660D17bf34b431dC6e2eb2327": &exchange_binance, - - "0x8B99F3660622e21f2910ECCA7fBe51d654a1517D": &exchange_binance, - - "0x4D9fF50EF4dA947364BB9650892B2554e7BE5E2B": &exchange_binance, - - "0xB8c77482e45F1F44dE1745F52C74426C631bDD52": &exchange_binance, - - "0x564286362092D8e7936f0549571a803B203aAceD": &exchange_binance, - - "0x3666019b9e801FA9c6f73FdBC952052eBe35c059": &exchange_binance, - - "0x708396f17127c42383E3b9014072679b2F60B82f": &exchange_binance, - - "0x8894E0a0c962CB723c1976a4421c95949bE2D4E3": &exchange_binance, - - "0x3f5CE5FBFe3E9af3971dD833D26bA9b5C936f0bE": &exchange_binance, - - "0x001866Ae5B3de6cAa5a51543FD9fB64f524F5478": &exchange_binance, - - "0xa344c7aDA83113B3B56941F6e85bf2Eb425949f3": &exchange_binance, - - "0x4E9ce36E442e55EcD9025B9a6E0D88485d628A67": &exchange_binance, - - "0x8f12f14A09D80051dE4315808Df57af19D80caD4": &exchange_binance, - - "0xfE9e8709d3215310075d67E3ed32A380CCf451C8": &exchange_binance, - - "0xE0F0CfDe7Ee664943906f17F7f14342E76A5CeC7": &exchange_binance, - - "0x0681d8Db095565FE8A346fA0277bFfdE9C0eDBBF": &exchange_binance, - - "0x328366Da5A4C5F669172a716955E3adf93A26705": &exchange_binance, - - "0x6Aa8F871908F0A2A9AEFB4786b344707CB5D7e26": &exchange_binance, - - "0xc365c3315cF926351CcAf13fA7D19c8C4058C8E1": &exchange_binance, - - "0x8F22F2063D253846B53609231eD80FA571Bc0C8F": &exchange_binance, - - "0xD551234Ae421e3BCBA99A0Da6d736074f22192FF": &exchange_binance, - - "0x614B2aD34E7b3146314c352Ae02b4a9b19DeB685": &exchange_binance, - - "0xf88c022F7EbfF09A76bf895eb5782a1d92F25Fc7": &exchange_binance, - - "0x92D2A1D125C09b2b8192DDc111a5f61857037508": &exchange_binance, - - "0xC3C8E0A39769e2308869f7461364ca48155D1d9E": &exchange_binance, - - "0x410ed1cbceA3B3990A3f27362c06C3C5D1E75d08": &exchange_binance, - - "0xCff79eB669a69bDe08eFce9eE8E37e601dF02F32": &exchange_binance, - - "0x15aB2321d7E83d00C015048b567f4F6AadC1B022": &exchange_binance, - - "0x4Fabb145d64652a948d72533023f6E7A623C7C53": &exchange_binance, - - "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48": &exchange_binance, - - "0xdAC17F958D2ee523a2206206994597C13D831ec7": &exchange_binance, - - "0xDA9dfA130Df4dE4673b89022EE50ff26f6EA73Cf": &exchange_kraken, - - "0x267be1C1D684F78cb4F6a176C4911b741E4Ffdc0": &exchange_kraken, - - "0xe9f7eCAe3A53D2A67105292894676b00d1FaB785": &exchange_kraken, - - "0xc6bed363b30DF7F35b601a5547fE56cd31Ec63DA": &exchange_kraken, - - "0x29728D0efd284D85187362fAA2d4d76C2CfC2612": &exchange_kraken, - - "0x66c57bF505A85A74609D2C83E94Aabb26d691E1F": &exchange_kraken, - - "0x43984D578803891dfa9706bDEee6078D80cFC79E": &exchange_kraken, - - "0xAe2D4617c862309A3d75A0fFB358c7a5009c673F": &exchange_kraken, - - "0xE853c56864A2ebe4576a807D26Fdc4A0adA51919": &exchange_kraken, - - "0x2910543Af39abA0Cd09dBb2D50200b3E800A63D2": &exchange_kraken, - - "0x53d284357ec70cE289D6D64134DfAc8E511c8a3D": &exchange_kraken, - - "0x0A869d79a7052C7f1b55a8EbAbbEa3420F0D1E13": &exchange_kraken, - - "0x7f4eDDa6C8646580E68b93041B5476348eEf0406": &exchange_kraken, - - "0xFa52274DD61E1643d2205169732f29114BC240b3": &exchange_kraken, - - "0x98EC059Dc3aDFBdd63429454aEB0c990FBA4A128": &exchange_okex, - - "0x868daB0b8E21EC0a48b726A1ccf25826c78C6d7F": &exchange_okex, - - "0x539C92186f7C6CC4CbF443F26eF84C595baBBcA1": &exchange_okex, - - "0xbFbBFacCD1126A11b8F84C60b09859F80f3BD10F": &exchange_okex, - - "0xBf94F0AC752C739F623C463b5210a7fb2cbb420B": &exchange_okex, - - "0xf51cD688b8744b1bfD2FBa70D050dE85EC4fb9Fb": &exchange_okex, - - "0xe95f6604A591F6ba33aCCB43a8a885C9c272108c": &exchange_okex, - - "0xf7858Da8a6617f7C6d0fF2bcAFDb6D2eeDF64840": &exchange_okex, - - "0xc3AE71FE59f5133BA180cbBd76536a70Dec23d40": &exchange_okex, - - "0x4E7b110335511F662FDBB01bf958A7844118c0D4": &exchange_okex, - - "0xA7EFAe728D2936e78BDA97dc267687568dD593f3": &exchange_okex, - - "0x4b4e14a3773Ee558b6597070797fd51EB48606e5": &exchange_okex, - - "0xCbffCB2c38ecd19468d366D392AC0c1DC7F04Bb6": &exchange_okex, - - "0x2c8FBB630289363Ac80705A1a61273f76fD5a161": &exchange_okex, - - "0x6cC5F688a315f3dC28A7781717a9A798a59fDA7b": &exchange_okex, - - "0x7eb6c83AB7D8D9B8618c0Ed973cbEF71d1921EF2": &exchange_okex, - - "0x313Eb1C5e1970EB5CEEF6AEbad66b07c7338d369": &exchange_okex, - - "0xBDa23B750dD04F792ad365B5F2a6F1d8593796f2": &exchange_okex, - - "0x96FDC631F02207B72e5804428DeE274cF2aC0bCD": &exchange_okex, - - "0x9723b6d608D4841eB4Ab131687a5D4764eb30138": &exchange_okex, - - "0x5041ed759Dd4aFc3a72b8192C143F72f4724081A": &exchange_okex, - - "0x06d3a30cBb00660B85a30988D197B1c282c6dCB6": &exchange_okex, - - "0x276cdBa3a39aBF9cEdBa0F1948312c0681E6D5Fd": &exchange_okex, - - "0x68841a1806fF291314946EebD0cdA8b348E73d6D": &exchange_okex, - - "0x3D55CCb2a943d88D39dd2E62DAf767C69fD0179F": &exchange_okex, - - "0x07cff3c78Dc9bD2378b89b92f01254703861c2E4": &exchange_okex, - - "0x236F9F97e0E62388479bf9E5BA4889e46B0273C3": &exchange_okex, - - "0x59FAE149A8f8EC74d5bC038F8b76D25b136b9573": &exchange_okex, - - "0x75231F58b43240C9718Dd58B4967c5114342a86c": &exchange_okex, - - "0xC61b9BB3A7a0767E3179713f3A5c7a9aeDCE193C": &exchange_bitfinex, - - "0x36a85757645E8e8AeC062a1dEE289c7d615901Ca": &exchange_bitfinex, - - "0x1B8766d041567EeD306940c587e21C06aB968663": &exchange_bitfinex, - - "0x5a710a3cDF2AF218740384c52a10852D8870626A": &exchange_bitfinex, - - "0x4fdd5Eb2FB260149A3903859043e962Ab89D8ED4": &exchange_bitfinex, - - "0x28140CB1AC771d4Add91eE23788E50249C10263d": &exchange_bitfinex, - - "0xC56fEFd1028B0534bfaDCdB580d3519b5586246E": &exchange_bitfinex, - - "0x77134cbC06cB00b66F4c7e623D5fdBF6777635EC": &exchange_bitfinex, - - "0x0b73F67A49273fc4B9A65DBD25D7d0918E734E63": &exchange_bitfinex, - - "0x742d35Cc6634C0532925a3b844Bc454e4438f44e": &exchange_bitfinex, - - "0x53B36141490c419fa27ecabFEB8Be1ecAdc82431": &exchange_bitfinex, - - "0x0cD76cD43992C665FdC2d8aC91B935CA3165E782": &exchange_bitfinex, - - "0x1151314c646Ce4E0eFD76d1aF4760aE66a9Fe30F": &exchange_bitfinex, - - "0x876EabF441B2EE5B5b0554Fd502a8E0600950cFa": &exchange_bitfinex, - - "0x5754284f345afc66a98fbB0a0Afe71e0F007B949": &exchange_bitfinex, - - "0x87a32492dA96069115A12E27fF5e378f03A8eDF7": &exchange_bitfinex, - - "0xC6CDE7C39eB2f0F0095F41570af89eFC2C1Ea828": &exchange_bitfinex, - - "0xdcD0272462140D0A3cEd6C4bf970c7641f08CD2c": &exchange_bitfinex, - - "0x7727E5113D1d161373623e5f49FD568B4F543a9E": &exchange_bitfinex, - - "0x61EDCDf5bb737ADffE5043706e7C5bb1f1a56eEA": &exchange_gemini, - - "0xd24400ae8BfEBb18cA49Be86258a3C749cf46853": &exchange_gemini, - - "0x5f65f7b609678448494De4C87521CdF6cEf1e932": &exchange_gemini, - - "0x6Fc82a5fe25A5cDb58bc74600A40A69C065263f8": &exchange_gemini, - - "0xCFFAd3200574698b78f32232aa9D63eABD290703": &exchange_crypto_com_exchange, - - "0x6262998Ced04146fA42253a5C0AF90CA02dfd2A3": &exchange_crypto_com_exchange, - - "0x46340b20830761efd32832A74d7169B29FEB9758": &exchange_crypto_com_exchange, - - "0x72A53cDBBcc1b9efa39c834A540550e23463AAcB": &exchange_crypto_com_exchange, - - "0x7758E507850dA48cd47df1fB5F875c23E3340c50": &exchange_crypto_com_exchange, - - "0x55c005713BAb8824efd9f5B41C55F8bbC815abCd": &exchange_crypto_com_exchange, - - "0xA8e330039b67Be5573AfB388Dc35214481C5cf81": &exchange_crypto_com_exchange, - - "0x558553D54183a8542F7832742e7B4Ba9c33Aa1E6": &exchange_bithumb, - - "0x3fBE1f8Fc5dDb27d428aA60f661EAAaB0d2000ce": &exchange_bithumb, - - "0x3052cD6BF951449A984fe4B5a38B46AEF9455c8E": &exchange_bithumb, - - "0x8FA8aF91C675452200e49b4683a33Ca2E1A34e42": &exchange_bithumb, - - "0x2140eFD7Ba31169c69dfff6CDC66C542f0211825": &exchange_bithumb, - - "0x090bA5aF8284eBE16Fccfc6C0BE8FbEFcf23D365": &exchange_bithumb, - - "0x15878e87c685f866edFaF454BE6Dc06Fa517B35B": &exchange_bithumb, - - "0x186549a4aE594fc1F70bA4CFFDAc714b405bE3F9": &exchange_bithumb, - - "0x31D03f07178BcD74F9099AfeBD23B0AE30184ab5": &exchange_bithumb, - - "0x88D34944cF554e9CCCf4a24292D891f620e9c94F": &exchange_bithumb, - - "0xA0Ff1e0F30b5DDA2dc01e7e828290Bc72b71E57d": &exchange_bithumb, - - "0xc1dA8F69e4881efe341600620268934ef01a3E63": &exchange_bithumb, - - "0xd273Bd546b11Bd60214A2F9d71f22A088AAfe31B": &exchange_bithumb, - - "0xed48DC0628789c2956B1E41726d062a86ec45bFF": &exchange_bithumb, - - "0xD6216fC19DB775Df9774a6E33526131dA7D19a2c": &exchange_kucoin, - - "0xb8e6D31e7B212b2b7250EE9c26C56cEBBFBe6B23": &exchange_kucoin, - - "0x1692E170361cEFD1eb7240ec13D048Fd9aF6d667": &exchange_kucoin, - - "0xcaD621da75a66c7A8f4FF86D30A2bF981Bfc8FdD": &exchange_kucoin, - - "0xd89350284c7732163765b23338f2ff27449E0Bf5": &exchange_kucoin, - - "0x88Bd4D3e2997371BCEEFE8D9386c6B5B4dE60346": &exchange_kucoin, - - "0xeC30d02f10353f8EFC9601371f56e808751f396F": &exchange_kucoin, - - "0x738cF6903E6c4e699D1C2dd9AB8b67fcDb3121eA": &exchange_kucoin, - - "0xf16E9B0D03470827A95CDfd0Cb8a8A3b46969B91": &exchange_kucoin, - - "0xa1D8d972560C2f8144AF871Db508F0B0B10a3fBf": &exchange_kucoin, - - "0x2B5634C42055806a59e9107ED44D43c426E58258": &exchange_kucoin, - - "0x689C56AEf474Df92D44A1B70850f808488F9769C": &exchange_kucoin, - - "0xFf651EAD42b8EeA0B9cB88EDc92704ef6af372Ce": &exchange_kucoin, - - "0x899B5d52671830f567BF43A14684Eb14e1f945fe": &exchange_kucoin, - - "0x14EA40648fC8C1781D19363F5B9Cc9A877ac2469": &exchange_kucoin, - - "0x2a8c8b09bD77c13980495A959B26c1305166A57f": &exchange_kucoin, - - "0x5dB0E46744A321f7Fe7e2E4A9EE0df2F5dD0c3E3": &exchange_kucoin, - - "0xF43D7EbaaD1Efefb3e4df0c9d5766a112DcE7Dec": &exchange_kucoin, - - "0x1Db92e2EeBC8E0c075a02BeA49a2935BcD2dFCF4": &exchange_bybit, - - "0xee5B5B923fFcE93A870B3104b7CA09c3db80047A": &exchange_bybit, - - "0xf89d7b9c864f589bbF53a82105107622B35EaA40": &exchange_bybit, - - "0xA7A93fd0a276fc1C0197a5B5623eD117786eeD06": &exchange_bybit, - - "0xC882b111A75C0c657fC507C04FbFcD2cC984F071": &exchange_gate_io, - - "0x1C4b70a3968436B9A0a9cf5205c787eb81Bb558c": &exchange_gate_io, - - "0x0D0707963952f2fBA59dD06f2b425ace40b492Fe": &exchange_gate_io, - - "0xD793281182A0e3E023116004778F45c29fc14F19": &exchange_gate_io, - - "0x7793cD85c11a924478d358D49b05b37E91B5810F": &exchange_gate_io, - - "0x5d8f42503ea6E7807DaF04047aA749E43847bE09": &exchange_gate_io, - - "0x127481c5Ce4f9bB7cbDB6F8681eF27b21E953bd1": &exchange_gate_io, - - "0x249C4677896D969e2fec3AD2c405FB4be3baD4D2": &exchange_gate_io, - - "0x6DF6d4610e12Fd9033f8c8329F443f201BD36aE1": &exchange_gate_io, - - "0xeb1d60A831a9B689a67f314aFbF0D7f9E6ac911d": &exchange_gate_io, - - "0xE7872ffEDDAC12fB4B8579fBf390553415A99028": &exchange_gate_io, - - "0x7049e4343cE902240cAeDFd093559250Ff890Cef": &exchange_gate_io, - - "0xfF5566497750058C1b9A35229Ab7ca8f50811912": &exchange_gate_io, - - "0xe134A754345582b113962cFA51b0DC036a1B04C5": &exchange_gate_io, - - "0x4ADd38EE5bf1e232707c543C880F34c61c158EA9": &exchange_gate_io, - - "0xDb13fEA8aFd91f66Bb99595AA2801599da1aed3F": &exchange_gate_io, - - "0x020142aCd7f25281C0C5e0e90B6CCe6ddaEa3cD8": &exchange_gate_io, - - "0xE35973b0C5C831A7423342DBaEbF555946FDEd4c": &exchange_gate_io, - - "0xc9B8ded010dDb547e334410fC04BB82420EaFF06": &exchange_gate_io, - - "0xfeAFAe14aDED9279afdA58C4A3Ac42FE7195E57F": &exchange_gate_io, - - "0x9ED8b706C99E6ebd80824130eD935F9b5d78f4E3": &exchange_gate_io, - - "0x1dBf7a573e5fF8E40E477510a7c43F633B0BEE79": &exchange_gate_io, - - "0x66f820a414680B5bcda5eECA5dea238543F42054": &exchange_bittrex, - - "0xFbC9D695D419Cdf7eB46dF979353f5B394227976": &exchange_bittrex, - - "0x429C8344C9b911e9a0A6e6cE257b28250Bd3a90a": &exchange_bittrex, - - "0xFBb1b73C4f0BDa4f67dcA266ce6Ef42f520fBB98": &exchange_bittrex, - - "0xE94b04a0FeD112f3664e45adb2B8915693dD5FF3": &exchange_bittrex, - - "0x1e2FCfd26d36183f1A5d90f0e6296915b02BCb40": &exchange_coinone, - - "0x167A9333BF582556f35Bd4d16A7E80E191aa6476": &exchange_coinone, - - "0x18709E89BD403F470088aBDAcEbE86CC60dda12e": &exchange_huobipro, - - "0xA929022c9107643515F5c777cE9a910F0D1e490C": &exchange_huobipro, - - "0xeEe28d484628d41A82d01e21d12E2E78D69920da": &exchange_huobipro, - - "0x6748F50f686bfbcA6Fe8ad62b22228b87F31ff2b": &exchange_huobipro, - - "0x5C985E89DDe482eFE97ea9f1950aD149Eb73829B": &exchange_huobipro, - - "0x1062a747393198f70F71ec65A582423Dba7E5Ab3": &exchange_huobipro, - - "0xaB5C66752a9e8167967685F1450532fB96d5d24f": &exchange_huobipro, - - "0xfdb16996831753d5331fF813c29a93c76834A0AD": &exchange_huobipro, - - "0xFA4B5Be3f2f84f56703C42eB22142744E95a2c58": &exchange_huobipro, - - "0x0A98fB70939162725aE66E626Fe4b52cFF62c2e5": &exchange_huobipro, - - "0x46705dfff24256421A05D056c29E81Bdc09723B8": &exchange_huobipro, - - "0x18916e1a2933Cb349145A280473A5DE8EB6630cb": &exchange_huobipro, - - "0xFd54078bAdD5653571726C3370AfB127351a6f26": &exchange_huobipro, - - "0xadB2B42F6bD96F5c65920b9ac88619DcE4166f94": &exchange_huobipro, - - "0xc589b275e60dDa57aD7E117C6DD837Ab524a5666": &exchange_huobipro, - - "0xf056F435Ba0CC4fCD2F1B17e3766549fFc404B94": &exchange_huobipro, - - "0x5401dBf7da53e1C9Dbf484E3d69505815F2f5e6e": &exchange_huobipro, - - "0x7EF35bb398E0416b81b019fEa395219B65c52164": &exchange_huobipro, - - "0xEec606A66edB6f497662Ea31b5eb1610da87AB5f": &exchange_huobipro, - - "0x794d28aC31bCB136294761a556b68D2634094153": &exchange_huobipro, - - "0x4d77a1144dC74f26838B69391a6D3B1e403D0990": &exchange_huobipro, - - "0x9A755332D874c893111207b0b220Ce2615cd036F": &exchange_huobipro, - - "0xE4818f8fDe0C977A01DA4Fa467365B8bF22b071E": &exchange_huobipro, - - "0x32598293906b5b17c27d657dB3AD2c9b3f3E4265": &exchange_huobipro, - - "0xE93381fB4c4F14bDa253907b18faD305D799241a": &exchange_huobipro, - - "0xf66852bC122fD40bFECc63CD48217E88bda12109": &exchange_huobipro, - - "0x30741289523c2e4d2A62c7D6722686D14E723851": &exchange_huobipro, - - "0x90E9dDD9d8D5ae4E3763d0CF856C97594DEA7325": &exchange_huobipro, - - "0xB2a48f542dc56B89b24C04076cbE565b3Dc58e7b": &exchange_huobipro, - - "0xCAc725beF4f114F728cbCfd744a731C2a463c3Fc": &exchange_huobipro, - - "0x6F48a3E70F0251d1e83a989e62aAa2281A6d5380": &exchange_huobipro, - - "0xEB6D43Fe241fb2320b5A3c9BE9CDfD4dd8226451": &exchange_huobipro, - - "0x1B93129F05cc2E840135AAB154223C75097B69bf": &exchange_huobipro, - - "0xd8a83b72377476D0a66683CDe20A8aAD0B628713": &exchange_huobipro, - - "0x28FFE35688fFFfd0659AEE2E34778b0ae4E193aD": &exchange_huobipro, - - "0xB4Cd0386d2Db86f30C1A11c2B8c4F4185c1Dade9": &exchange_huobipro, - - "0x956e0DBEcC0e873d34a5e39B25f364b2CA036730": &exchange_huobipro, - - "0x73f8FC2e74302eb2EfdA125A326655aCF0DC2D1B": &exchange_huobipro, - - "0x229b5c097F9b35009CA1321Ad2034D4b3D5070F6": &exchange_huobipro, - - "0xE3314bbF3334228b257779E28228CfB86fA4261B": &exchange_huobipro, - - "0x1205E4f0D2f02262E667fd72f95a68913b4F7462": &exchange_huobipro, - - "0x0511509A39377F1C6c78DB4330FBfcC16D8A602f": &exchange_huobipro, - - "0x0577a79Cfc63Bbc0Df38833Ff4C4a3BF2095b404": &exchange_huobipro, - - "0xB6bC437708a398cDA5627224BB8b88BCD1E88d8F": &exchange_huobipro, - - "0xc837F51A0eFa33F8ECA03570e3D01a4B2CF97FfD": &exchange_huobipro, - - "0x137ad9C4777E1d36e4b605e745e8F37B2b62E9c5": &exchange_huobipro, - - "0x034f854B44D28E26386c1BC37ff9B20C6380b00d": &exchange_huobipro, - - "0x0c6C34CDd915845376fb5407E0895196C9DD4eeC": &exchange_huobipro, - - "0x926fC576b7facF6aE2d08eE2D4734C134a743988": &exchange_huobipro, - - "0x5861b8446A2F6e19a067874c133f04c578928727": &exchange_huobipro, - - "0xDc76CD25977E0a5Ae17155770273aD58648900D3": &exchange_huobipro, - - "0x6f259637dcD74C767781E37Bc6133cd6A68aa161": &exchange_huobipro, - - "0xa66Daa57432024023DB65477BA87D4E7F5f95213": &exchange_huobipro, - - "0xa8660c8ffD6D578F657B72c0c811284aef0B735e": &exchange_huobipro, - - "0x34ea4138580435B5A521E460035edb19Df1938c1": &exchange_binance_us, - - "0xf60c2Ea62EDBfE808163751DD0d8693DCb30019c": &exchange_binance_us, - - "0x61189Da79177950A7272c88c6058b96d4bcD6BE2": &exchange_binance_us, - - "0x111cFf45948819988857BBF1966A0399e0D1141e": &exchange_bitflyer, - - "0xD03be958e6b8da2D28aC8231a2291d6E4f0a7ea7": &exchange_korbit, - - "0xf0bc8FdDB1F358cEf470D63F96aE65B1D7914953": &exchange_korbit, - - "0xd6e0F7dA4480b3AD7A2C8b31bc5a19325355CA15": &exchange_korbit, - - "0x8550E644D74536f1DF38B17D5F69aa1BFe28aE86": &exchange_korbit, - - "0x0c01089AEdc45Ab0F43467CCeCA6B4d3E4170bEa": &exchange_korbit, - - "0x2864DE013415B6c2C7A96333183B20f0F9cC7532": &exchange_korbit, - - "0x59fba2E8595841DD2627703f4bb535C3B40a12E0": &exchange_korbit, - - "0x49e14f2D6839768BcC39Ef0F60809f00eaBBAc69": &exchange_korbit, - - "0x51d9914cB7f0C7D03075280D8f57Eb0Be6Ee457E": &exchange_korbit, - - "0x58e2201D8e1668597A37f4D6e701fF642dC2fa6d": &exchange_korbit, - - "0xE6ae903Bf00691d5996fABa0C2Ee7E7422A48FfE": &exchange_korbit, - - "0x50CBe3772513706CEE11548A13a1890F0a2996A0": &exchange_korbit, - - "0x954818aE7D93DD682BEC7823EE3406e3B4133028": &exchange_korbit, - - "0xb7580490a51D3F48D451ba5f2DD79a835d266015": &exchange_korbit, - - "0x1167ed55a3a37f072d59217493117b07972aAD7F": &exchange_korbit, - - "0x1E4B147d4dA3Fdb73ACC8428dDEA638088451Cdc": &exchange_korbit, - - "0xe5d7CcC5fc3b3216C4DFF3a59442F1d83038468C": &exchange_korbit, - - "0x42992d123b02d213f58ddb72572Cf48607be6348": &exchange_korbit, - - "0x416299AAde6443e6F6e8ab67126e65a7F606eeF5": &exchange_luno, - - "0xA9D1e08C7793af67e9d92fe308d5697FB81d3E43": &exchange_coinbasepro, - - "0x71660c4005BA85c37ccec55d0C4493E66Fe775d3": &exchange_coinbasepro, - - "0xddfAbCdc4D8FfC6d5beaf154f18B778f892A0740": &exchange_coinbasepro, - - "0x3cD751E6b0078Be393132286c442345e5DC49699": &exchange_coinbasepro, - - "0x503828976D22510aad0201ac7EC88293211D23Da": &exchange_coinbasepro, - - "0xb5d85CBf7cB3EE0D56b3bB207D5Fc4B82f43F511": &exchange_coinbasepro, - - "0xeB2629a2734e272Bcc07BDA959863f316F4bD4Cf": &exchange_coinbasepro, - - "0xA090e606E30bD747d4E6245a1517EbE430F0057e": &exchange_coinbasepro, - - "0xD688AEA8f7d450909AdE10C47FaA95707b0682d9": &exchange_coinbasepro, - - "0x02466E547BFDAb679fC49e96bBfc62B9747D997C": &exchange_coinbasepro, - - "0x6b76F8B1e9E59913BfE758821887311bA1805cAB": &exchange_coinbasepro, - - "0x2a0c0DBEcC7E4D658f48E01e3fA353F44050c208": &exchange_idex, - - "0x19CD9ce7e9BD7F56f69Bcfb8ed63aEB46631A970": &exchange_idex, - - "0xe80623a9d41f2f05780D9cD9cea0F797Fd53062A": &exchange_bitget, - - "0xe6a421f24d330967a3Af2F4cDB5c34067E7e4d75": &exchange_bitget, - - "0x97b9D2102A9a65A26E1EE82D59e42d1B73B68689": &exchange_bitget, - - "0x5bdf85216ec1e38D6458C870992A69e38e03F7Ef": &exchange_bitget, - - "0x0639556F03714A74a5fEEaF5736a4A64fF70D206": &exchange_bitget, - - "0xE2B406EC9227143A8830229eEb3Eb6E24b5c60Be": &exchange_bitget, - - "0x31A36512D4903635b7dd6828a934C3915A5809Be": &exchange_bitget, - - "0x3CC936b795A188F0e246cBB2D74C5Bd190aeCF18": &exchange_mexc, - - "0x75e89d5979E4f6Fba9F97c104c2F0AFB3F1dcB88": &exchange_mexc, - - "0x0162Cd2BA40E23378Bf0FD41f919E1be075f025F": &exchange_mexc, - - "0x0211f3ceDbEf3143223D3ACF0e589747933e8527": &exchange_mexc, - - "0xe70CDE2c091569a09e7c1e335e20AF302Ab41339": &exchange_mexc, - - "0xc5424B857f758E906013F3555Dad202e4bdB4567": &exchange_curve, - - "0xEEA81C4416d71CeF071224611359F6F99A4c4294": &exchange_bitmex, - - "0xA910f92ACdAf488fa6eF02174fb86208Ad7722ba": &exchange_poloniex, - - "0x32Be343B94f860124dC4fEe278FDCBD38C102D88": &exchange_poloniex, - - "0x6F803466bCD17f44fa18975bf7c509ba64Bf3825": &exchange_poloniex, - - "0x6B71834D65C5C4d8eD158D54B47E6Ea4Ff4E5437": &exchange_poloniex, - - "0x8d451AE5ee8F557a9cE7A9D7Be8A8cb40002d5cB": &exchange_poloniex, - - "0xc0e30823e5e628df8bc9bf2636a347E1512F0ecb": &exchange_poloniex, - - "0xfbf2173154F7625713be22E0504404EBfE021eae": &exchange_poloniex, - - "0xEaD6be34CE315940264519f250d8160f369fa5cd": &exchange_poloniex, - - "0xb794F5eA0ba39494cE839613fffBA74279579268": &exchange_poloniex, - - "0x48d466B7c0d32B61E8A82Cd2bCF060F7C3F966df": &exchange_poloniex, - - "0x65F9B2e4d7aAEB40fFEA8C6F5844d5AD7Da257E0": &exchange_poloniex, - - "0xaB11204cfEacCFfa63C2D23AeF2Ea9aCCDB0a0D5": &exchange_poloniex, - - "0x0536806df512D6cDDE913Cf95c9886f65b1D3462": &exchange_poloniex, - - "0x31a2Feb9b5D3b5f4e76C71D6C92FC46eBb3cb1c1": &exchange_poloniex, - - "0x209c4784AB1E8183Cf58cA33cb740efbF3FC18EF": &exchange_poloniex, - - "0x2fA2Bc2ce6A4f92952921A4CAA46B3727D24a1ec": &exchange_poloniex, - - "0x36B01066b7fa4a0fdb2968eA0256C848e9135674": &exchange_poloniex, - - "0x6795cf8EB25585EaDC356Ae32AC6641016c550f2": &exchange_poloniex, - - "0xAa9fa73dFE17ecAa2C89b39f0bb2779613C5Fc3b": &exchange_poloniex, - - "0xBd2Ec7c608a06fE975DBDCA729E84dEdb34eCC21": &exchange_poloniex, - - "0xEe8D8ABABB63bCd41e70a30B187CbaAA4e5D7ec6": &exchange_bit_z, - - "0xA24f25A8545eE2Ab81B2A5Cc8F047d3567fCDE0F": &exchange_bit_z, - - "0x3D5851C33b581a49998850a78D1865a1936dAcb3": &exchange_bit_z, - - "0x4B729cF402CfCfFd057E254924B32241AeDC1795": &exchange_bit_z, - - "0xF5bEC430576fF1b82e44DDB5a1C93F6F9d0884f3": &exchange_yobit, - - "0xc4D300019f587145cFd9b42875073b3AD4Bb0296": &exchange_yobit, - - "0x252D1375CA8F8A4CA59F1e7635F8Fd7C4A78031E": &exchange_coinswitch_kuber, - - "0xceAE7673553c90d0a3cd1A494dA35eDe63910cBF": &exchange_coinswitch_kuber, - - "0x3506A6ccc61d4D2046B79969020a5aF79010b4a6": &exchange_coinswitch_kuber, - - "0x294B9B133cA7Bc8ED2CdD03bA661a4C6d3a834D9": &exchange_coinswitch_kuber, - - "0x17a678C673FbB5B2f3294ef35e18c0Ef8cC3E64F": &exchange_coinswitch_kuber, - - "0x250b05e1E0dd20A876E369a16441E714e3d9f436": &exchange_coinswitch_kuber, - - "0x4346910075E50A442931D698D41ebE6965a584b1": &exchange_coinswitch_kuber, - - "0x4cD3aa96836c133c9B9f27daFa7baF744D57404d": &exchange_coinswitch_kuber, - - "0x758E2c2D1a362E2B3e613545e48285b03581EF43": &exchange_coinswitch_kuber, - - "0x7D3f7A3842f18873C769a42f92F51F091954211c": &exchange_coinswitch_kuber, - - "0xc0EB873cd81d47d290Ff7b6AD49280f6fD9cfB2B": &exchange_coinswitch_kuber, - - "0xE627b3e5591a713E3c23aF6fc4eBa2F313FdF489": &exchange_coinswitch_kuber, - - "0xE6b936B7640afa9242d1A714E50eE823e1Be140f": &exchange_coinswitch_kuber, - - "0x91Dca37856240E5e1906222ec79278b16420Dc92": &exchange_bitcoin_indonesia, - - "0x3C02290922a3618A4646E3BbCa65853eA45FE7C6": &exchange_bitcoin_indonesia, - - "0x9CbADD5Ce7E14742F70414A6DcbD4e7bB8712719": &exchange_bitcoin_indonesia, - - "0xf7D13C7dBec85ff86Ee815f6dCbb3DEDAc78ca49": &exchange_phemex, - - "0xD4Dcd2459BB78d7a645Aa7E196857D421b10D93F": &exchange_bigone, - - "0xa30D8157911ef23c46C0eB71889eFe6a648a41F7": &exchange_bigone, - - "0x88e343F4599292C2CfFe683C1bb93cD3480BdbAb": &exchange_bigone, - - "0x17Bc58b788808DaB201a9A90817fF3C168BF3d61": &exchange_bigone, - - "0x983873529f95132BD1812A3B52c98Fb271d2f679": &exchange_bitmax, - - "0xfB8131c260749c7835a08ccBdb64728De432858E": &exchange_bitmax, - - "0x4B1a99467a284Cc690e3237bC69105956816f762": &exchange_bitmax, - - "0x03BDf69B1322D623836aFBD27679A1C0AfA067E9": &exchange_bitmax, - - "0x986a2fCa9eDa0e06fBf7839B89BfC006eE2a23Dd": &exchange_bitmax, - - "0xEf58321032cF693Fa7e39F31e45CBc32f2092cb3": &exchange_hitbtc, - - "0x1C11BA15939E1C16eC7ca1678dF6160Ea2063Bc5": &exchange_hitbtc, - - "0xEd0245c53F69eBccDaB3e39cF0013161a67BF296": &exchange_hitbtc, - - "0xA12431D0B9dB640034b0CDFcEEF9CCe161e62be4": &exchange_hitbtc, - - "0x9C67e141C0472115AA1b98BD0088418Be68fD249": &exchange_hitbtc, - - "0x59a5208B32e627891C389EbafC644145224006E8": &exchange_hitbtc, - - "0xb77bd9fc4830A801D42BCD3Ffdf2f8C079ecBe28": &exchange_hitbtc, - - "0x2d969D1a10833f207fdC74381979bAa249146DF3": &exchange_hitbtc, - - "0x7891b20C690605F4E370d6944C8A5DBfAc5a451c": &exchange_latoken, - - "0x0861Fca546225fbF8806986D211C8398f7457734": &exchange_latoken, - - "0x4c766dEf136F59f6494f0969B1355882080CF8E0": &exchange_bitstamp, - - "0x00BDb5699745f5b860228c8f939ABF1b9Ae374eD": &exchange_bitstamp, - - "0x1522900B6daFac587d499a862861C0869Be6E428": &exchange_bitstamp, - - "0xc5b611f502a0DCF6C3188Fd494061aE29B2baa4f": &exchange_bitstamp, - - "0x059799F2261d37b829c2850cEe67b5b975432271": &exchange_bitstamp, - - "0x9A9BED3Eb03E386D66f8a29DC67dC29Bbb1ccB72": &exchange_bitstamp, - - "0xD1669Ac6044269b59Fa12c5822439F609Ca54F41": &exchange_coinlistpro, - - "0x8D1f2eBFACCf1136dB76FDD1b86f1deDE2D23852": &exchange_coinlistpro, - - "0xB37640f5F7ef7b0fDCce2c0C053DB4f976945647": &exchange_shuzibi, - - "0x6693C388255F519497f0Ca2854c31B72E605569b": &exchange_shuzibi, - - "0xe17ee7B3c676701c66B395A35f0DF4C2276a344E": &exchange_shuzibi, - - "0x0DB79Bbb99DEFC2356d82848A459A5a13869EB3F": &exchange_exmo, - - "0xd7B9A9b2F665849C4071Ad5af77d8c76aa30fb32": &exchange_exmo, - - "0x1Fd6267f0D86F62D88172B998390AfEE2a1F54B6": &exchange_exmo, - - "0xFD6724B4b3e8eca764F0DD07ccd903aD348D70F8": &exchange_zb, - - "0x6485fc77bE2186fc60feeA38d0ef4331D8404b60": &exchange_zb, - - "0xF98e7AF638b015D15E1820852bF24900f074b38B": &exchange_zb, - - "0x60d0cC2aE15859f69bF74DADb8AE3Bd58434976b": &exchange_zb, - - "0x562680a4dC50ed2f14d75BF31f494cfE0b8D10a1": &exchange_hotbit, - - "0x274F3c32C90517975e29Dfc209a23f315c1e5Fc7": &exchange_hotbit, - - "0x8533A0bd9310Eb63E7CC8E1116c18a3D67B1976A": &exchange_hotbit, - - "0xb357C9B4c9aff115f12AF5dd6dAb652d8f2ad561": &exchange_kuna, - - "0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D": &exchange_kuna, - - "0xF71AfE21Cd32959113Fc47aE2EF886B43A9413d5": &exchange_probit_exchange, - - "0x72E5263FF33D2494692D7F94A758aA9F82062F73": &exchange_probit_exchange, - - "0x2819c144D5946404C0516B6f817a960dB37D4929": &exchange_remitano, - - "0x0be1cef9d45f6621eB083f0a0e4b2261618938d8": &exchange_remitano, - - "0xd0b02a49B0768302F407cB28d813DaE1761BAEfa": &exchange_remitano, - - "0x39F6a6C85d39d5ABAd8A398310c52E7c374F2bA3": &exchange_whitebit, - - "0xeD4e1AD0F899EF3954D05bafc502F50C8e6A6baf": &exchange_coinw, - - "0xa20f10289248717374e9B7776dC368aa526cb6F2": &exchange_coinw, - - "0x94961bB15bafE2d73b899B9a3fC209B3FcF899D6": &exchange_coinw, - - "0xcb243bf48FB443082FAE7db47eC96Cb120Cd6801": &exchange_coinw, - - "0x429Bf8EC3330E02401D72bEadE86000d9a2E19EB": &exchange_coinw, - - "0x8705CcFd8A6dF3785217C307cbEbf9b793310B94": &exchange_coinw, - - "0x9f8646A35db0f466aC9322e2D194cc18f209Fc75": &exchange_coinw, - - "0x6f31D347457962c9811ff953742870EF5a755dE3": &exchange_coinw, - - "0xd115B7B6bEA4819BFD1fe5397f5e7e01fA19D83d": &exchange_coinw, - - "0x659BA341542Ed9c25eCA5FD7daE3659385956360": &exchange_xt, - - "0xe74638bff8e7e332c08C239407FA68324acf8Dee": &exchange_xt, - - "0xD30b438DF65f4f788563b2b3611Bd6059bFF4ad9": &exchange_okcoin_intl, - - "0x618fFD1cDAbeE36CE5992a857Cc7463f21272bD7": &exchange_wazirx, - - "0x63DFE4e34A3bFC00eB0220786238a7C6cEF8Ffc4": &exchange_wootrade, - - "0xeA319fd75766F5180018F8e760f51c3D3C457496": &exchange_wootrade, - - "0x0d83F81bc9f1E8252F87A4109bBF0d90171c81DF": &exchange_wootrade, - - "0x6cc8dCbCA746a6E4Fdefb98E1d0DF903b107fd21": &exchange_bitrue, - - "0x878d587BE19cd44C203EC5E90d9cA3724C4D2c3D": &exchange_bitrue, - - "0xAB83D182f3485cf1D6ccdd34C7CFEf95b4C08da4": &exchange_binance_jex, - - "0xAeEc6f5aCA72F3A005af1B3420ab8c8c7009BaC8": &exchange_otcbtc, - - "0x8f7DEE5cDe6965481F0119BaC9d5b2b142bcc94F": &exchange_otcbtc, - - "0xd0a174B1Ff551D63eD0823AE743bBe9BC204B0f0": &exchange_dextrade, - - "0xe03c23519e18D64F144d2800E30E81B0065C48B5": &exchange_mercatox, - - "0x390dE26d772D2e2005C6d1d24afC902bae37a4bB": &exchange_upbit, - - "0xBA826fEc90CEFdf6706858E5FbaFcb27A290Fbe0": &exchange_upbit, - - "0x5E032243d507C743b061eF021e2EC7fcc6d3ab89": &exchange_upbit, - - "0x03747F06215B44E498831dA019B27f53E483599F": &exchange_upbit, - - "0xc9f5296Eb3ac266c94568D790b6e91ebA7D76a11": &exchange_cex_io, - - "0x9BA3560231e3E0aD7dde23106F5B98C72E30b468": &exchange_bilaxy, - - "0xf7793d27A1b76CDF14Db7C83e82C772cF7C92910": &exchange_bilaxy, - - "0x7c49e1c0e33F3efB57d64b7690Fa287C8D15B90A": &exchange_bit2c, - - "0x474ac5cb62D7aCEDC9990d4DaAfA0c39D9478FBB": &exchange_bingx, - - "0xedBB72E6b3Cf66a792bFF7FaaC5Ea769fe810517": &exchange_liquid, - - "0xeeC0Ed9E41C209c1c53a35900a06BF5DcA927405": &exchange_bitforex, - - "0xb9ee1e551f538A464E8F8C41E9904498505B49b0": &exchange_coinex, - - "0x53Eb3Ea47643E87e8f25dd997A37B3b5260e7336": &exchange_coinex, - - "0xAD840A2B569188d49245fcd7Bde71167D77df6c0": &exchange_jbexcom, - - "0x09b1806Df13062B5f653BeDA6998972cabCF7009": &exchange_8v_global, - - "0x4B01721F0244E7c5B5F63c20942850E447f5a5Ee": &exchange_coinexchange, - - "0x226CE8219207E773c0768A699bf7982DbEA754Ad": &exchange_coinexchange, - - "0x475c4810C124873a58E1045428D1FA35634b6048": &exchange_tokencan, - - "0x1619d743d7DC612E99d5D94Ebd6b9695D46f0BF3": &exchange_btse, - - "0xde279a5cD86860Cd3D039AA1B74bc29E74cABB12": &exchange_btse, - - "0x8BaeD8FD7FC228781a95e7D6E57C3e430D2BE6F9": &exchange_zgcom, - - "0xa5a3903FC3698c241B1385DF4F80A5C665f47404": &exchange_qbtc, - - "0xBd8ef191Caa1571e8aD4619ae894e07A75De0C35": &exchange_paribu, - - "0x2bB97B6CF6FfE53576032c11711D59Bd056830eE": &exchange_paribu, - - "0xC098B2a3Aa256D2140208C3de6543aAEf5cd3A94": &exchange_ftx, - - "0xdc51356928baE9fd7F43ddB4a1C8e1FbDD340eB5": &exchange_ftx, - - "0xFF3baBb82a8065318A0548E4aF19e0ED46dc28F9": &exchange_ftx, - - "0xA72CEb9964Bac623D67CF4d07B99645145ba16e1": &exchange_ftx, - - "0xd45C041dC87AA2495793BeC3964389C81A962DFA": &exchange_ftx, - - "0xb2ab43F76131fb299A8b04d3434eEA6e14069cfA": &exchange_ftx, - - "0x91FDe2e551560067A818bdA6f4B63C89ee83500d": &exchange_ftx, - - "0x2FAF487A4414Fe77e2327F0bf4AE2a264a776AD2": &exchange_ftx, - - "0xf73C3c65bde10BF26c2E1763104e609A41702EFE": &exchange_bibox, - - "0xe79eeF9b9388A4fF70ed7ec5Bccd5B928ebB8Bd1": &exchange_bitmart, - - "0x68b22215FF74E3606BD5E6c1DE8c2D68180c85F7": &exchange_bitmart, - - "0xD9811e8b7c42418c71dABfE63b9CC17f8db1A6Eb": &exchange_bkex, - - "0xB726dA4fbdc3E4dBda97bb20998cF899b0e727E0": &exchange_cobinhood, - - "0x8958618332dF62AF93053cb9c535e26462c959B0": &exchange_cobinhood, - - "0xf65c33c383a6996ffEC2d00AA93df3cE2Bdb7851": &exchange_jingui, - - "0x7A10Ec7d68a048BdaE36A70E93532D31423170fA": &exchange_bgogo, - - "0xCe1bF8E51F8b39e51c6184e059786D1c0eAF360F": &exchange_bgogo, - - "0xe51a4316607772132F89b3483DA698e4d682E191": &exchange_citex, - - "0x9E2E3649563E60926A7B5968BC3537Fb58fAf78b": &exchange_citex, - - "0x4d7291630651041358abE50532C1A20948559155": &exchange_citex, - - "0x691c5e2751Ec615d2b49cb569fdF787720b0fD31": &exchange_citex, - - "0x7B897Ab1e759028F14e1841Ffc5449f11273e330": &exchange_citex, - - "0x521dB06bF657Ed1D6C98553A70319a8DdBAc75A3": &exchange_crex24, - - "0x2a1dCbDF3fc17C7263529AA7fB1F90e3D4624eD2": &exchange_idcm, - - "0x2B2b0CF3d1BC4a776c512e7F374991FD9CA3Eb34": &exchange_idcm, - - "0xC5565200eb6a428451D53280b49c4488f74ac14D": &exchange_idcm, - - "0x8B2b3d18230661157d399226686d91B2fC340a30": &exchange_idcm, - - "0x0A8B4E06FA1A93211422D0F4f12747A832dBBD28": &exchange_idcm, - - "0xC86F08c4F6aeC029Ece7e56d1d302dFdcF2EC41d": &exchange_idcm, - - "0x3613ef1125A078EF96Ffc898c4eC28D73C5b8C52": &exchange_tidex, - - "0x0a73573Cf2903d2D8305b1eCb9e9730186a312aE": &exchange_tidex, - - "0x5004A7AA3c430BC3e133Ee29C28E391b16F8BF7d": &exchange_ztcom, - - "0x444a5E0d2515f322E7278F6EE95CB34d8de98f09": &exchange_ztcom, - - "0x7aA12EeF14Db55884Ab2Fe0D097E0064EF7A8ECA": &exchange_ztcom, - - "0x0179D232beCF100Cd1f0Dd3e84a8AFA9ca31aFF3": &exchange_ztcom, - - "0x93f36930F94FBB5aFc5fB506D3f7ABB9179a4e4e": &exchange_coinegg, - - "0x73957709695E73Fd175582105c44743CF0fB6f2f": &exchange_bw, - - "0x2f1233Ec3a4930Fd95874291DB7da9E90dfB2F03": &exchange_uex, - - "0x9fB01A2584Aac5aAE3faB1ed25F86c5269b32999": &exchange_ggbtc, - - "0xb27ac505bee7298b204b530b368B6191F4141C55": &exchange_ulei, - - "0x412D18072b7809aB25d8B4B0e0167128E122eC37": &exchange_ulei, - - "0x499bC6B4B9e7da1fD8A775106a389F4C1D1D4B98": &exchange_wrnet, - - "0x373fE5F4D8936590b4463DF22bE4ce3f82ced806": &exchange_wrnet, - - "0xf8bC6604190a6279080E0fE24e15dc1D2927E10B": &exchange_wrnet, - - "0x4003CAefF9d6eB5af6927b0842c90f43F31d25d1": &exchange_dcoin, - - "0x7abE0cE388281d2aCF297Cb089caef3819b13448": &exchange_ftx_us, - - "0x05f51AAb068CAa6Ab7eeb672f88c180f67F17eC7": &exchange_abcc, - - "0x4564BFe303900178578769b2D76B1a13533E5fd5": &exchange_aex, - - "0x6814B1FE0dBb34d006dC204A6b2DED962dF1D684": &exchange_aex, - - "0xb4460b75254ce0563Bb68eC219208344C7EA838c": &exchange_bithumbpro, - - "0x088ee5007C98a9677165D78dD2109AE4a3D04d0C": &exchange_sushiswap, - - "0x2fDbAdf3C4D5A8666Bc06645B8358ab803996E28": &exchange_uniswap, -} - -var ValidCodes = []string{ - "binance", - "kraken", - "okex", - "Bitfinex", - "gemini", - "crypto-com-exchange", - "bithumb", - "kucoin", - "bybit", - "gate-io", - "bittrex", - "coinone", - "huobipro", - "binance-us", - "bitflyer", - "korbit", - "luno", - "coinbasepro", - "idex", - "bitget", - "mexc", - "curve", - "bitmex", - "poloniex", - "bit-z", - "yobit", - "coinswitch-kuber", - "bitcoin-indonesia", - "phemex", - "bigone", - "Bitmax", - "hitbtc", - "latoken", - "bitstamp", - "coinlistpro", - "shuzibi", - "exmo", - "zb", - "hotbit", - "kuna", - "probit-exchange", - "remitano", - "whitebit", - "coinw", - "xt", - "okcoin-intl", - "wazirx", - "wootrade", - "bitrue", - "binance-jex", - "otcbtc", - "dextrade", - "mercatox", - "upbit", - "cex-io", - "bilaxy", - "Bit2C", - "bingx", - "liquid", - "bitforex", - "coinex", - "jbexcom", - "8v-global", - "coinexchange", - "tokencan", - "btse", - "zgcom", - "qbtc", - "paribu", - "ftx", - "bibox", - "bitmart", - "bkex", - "Cobinhood", - "jingui", - "bgogo", - "citex", - "crex24", - "idcm", - "tidex", - "ztcom", - "coinegg", - "bw", - "uex", - "ggbtc", - "ulei", - "wrnet", - "dcoin", - "ftx-us", - "abcc", - "aex", - "bithumbpro", - "sushiswap", - "uniswap", -} diff --git a/exchanges/exchanges.json b/exchanges/exchanges.json deleted file mode 100644 index 1d4489eee..000000000 --- a/exchanges/exchanges.json +++ /dev/null @@ -1,1227 +0,0 @@ -[ - { - "code": "binance", - "name": "Binance", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/binance.png?style=36", - "addresses": [ - "0xbe0eb53f46cd790cd13851d5eff43d12404d33e8", - "0xf977814e90da44bfa03b6295a0616a897441acec", - "0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503", - "0x28c6c06298d514db089934071355e5743bf21d60", - "0x5a52e96bacdabb82fd05763e25335261b270efcb", - "0x9696f59e4d72e237be84ffd425dcad154bf96976", - "0x06a0048079ec6571cd1b537418869cde6191d42d", - "0x21a31ee1afc51d94c2efccaa2092ad1028285549", - "0x56eddb7aa87536c09ccc2793473599fd21a8b17f", - "0xdfd5293d8e347dfe59e90efd55b2956a1343963d", - "0x4976a4a02f38326660d17bf34b431dc6e2eb2327", - "0x8b99f3660622e21f2910ecca7fbe51d654a1517d", - "0x4d9ff50ef4da947364bb9650892b2554e7be5e2b", - "0xb8c77482e45f1f44de1745f52c74426c631bdd52", - "0x564286362092d8e7936f0549571a803b203aaced", - "0x3666019b9e801fa9c6f73fdbc952052ebe35c059", - "0x708396f17127c42383e3b9014072679b2f60b82f", - "0x8894e0a0c962cb723c1976a4421c95949be2d4e3", - "0x3f5ce5fbfe3e9af3971dd833d26ba9b5c936f0be", - "0x001866ae5b3de6caa5a51543fd9fb64f524f5478", - "0xa344c7ada83113b3b56941f6e85bf2eb425949f3", - "0x4e9ce36e442e55ecd9025b9a6e0d88485d628a67", - "0x8f12f14a09d80051de4315808df57af19d80cad4", - "0xfe9e8709d3215310075d67e3ed32a380ccf451c8", - "0xe0f0cfde7ee664943906f17f7f14342e76a5cec7", - "0x0681d8db095565fe8a346fa0277bffde9c0edbbf", - "0x328366da5a4c5f669172a716955e3adf93a26705", - "0x6aa8f871908f0a2a9aefb4786b344707cb5d7e26", - "0xc365c3315cf926351ccaf13fa7d19c8c4058c8e1", - "0x8f22f2063d253846b53609231ed80fa571bc0c8f", - "0xd551234ae421e3bcba99a0da6d736074f22192ff", - "0x614b2ad34e7b3146314c352ae02b4a9b19deb685", - "0xf88c022f7ebff09a76bf895eb5782a1d92f25fc7", - "0x92d2a1d125c09b2b8192ddc111a5f61857037508", - "0xc3c8e0a39769e2308869f7461364ca48155d1d9e", - "0x410ed1cbcea3b3990a3f27362c06c3c5d1e75d08", - "0xcff79eb669a69bde08efce9ee8e37e601df02f32", - "0x15ab2321d7e83d00c015048b567f4f6aadc1b022", - "0x4fabb145d64652a948d72533023f6e7a623c7c53", - "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "0xdac17f958d2ee523a2206206994597c13d831ec7" - ] - }, - { - "code": "kraken", - "name": "Kraken", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/kraken.png?style=36", - "addresses": [ - "0xda9dfa130df4de4673b89022ee50ff26f6ea73cf", - "0x267be1c1d684f78cb4f6a176c4911b741e4ffdc0", - "0xe9f7ecae3a53d2a67105292894676b00d1fab785", - "0xc6bed363b30df7f35b601a5547fe56cd31ec63da", - "0x29728d0efd284d85187362faa2d4d76c2cfc2612", - "0x66c57bf505a85a74609d2c83e94aabb26d691e1f", - "0x43984d578803891dfa9706bdeee6078d80cfc79e", - "0xae2d4617c862309a3d75a0ffb358c7a5009c673f", - "0xe853c56864a2ebe4576a807d26fdc4a0ada51919", - "0x2910543af39aba0cd09dbb2d50200b3e800a63d2", - "0x53d284357ec70ce289d6d64134dfac8e511c8a3d", - "0x0a869d79a7052c7f1b55a8ebabbea3420f0d1e13", - "0x7f4edda6c8646580e68b93041b5476348eef0406", - "0xfa52274dd61e1643d2205169732f29114bc240b3" - ] - }, - { - "code": "okex", - "name": "OKX(OKEx)", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/okex.png?style=36\u0026v=1642493710", - "addresses": [ - "0x98ec059dc3adfbdd63429454aeb0c990fba4a128", - "0x868dab0b8e21ec0a48b726a1ccf25826c78c6d7f", - "0x539c92186f7c6cc4cbf443f26ef84c595babbca1", - "0xbfbbfaccd1126a11b8f84c60b09859f80f3bd10f", - "0xbf94f0ac752c739f623c463b5210a7fb2cbb420b", - "0xf51cd688b8744b1bfd2fba70d050de85ec4fb9fb", - "0xe95f6604a591f6ba33accb43a8a885c9c272108c", - "0xf7858da8a6617f7c6d0ff2bcafdb6d2eedf64840", - "0xc3ae71fe59f5133ba180cbbd76536a70dec23d40", - "0x4e7b110335511f662fdbb01bf958a7844118c0d4", - "0xa7efae728d2936e78bda97dc267687568dd593f3", - "0x4b4e14a3773ee558b6597070797fd51eb48606e5", - "0xcbffcb2c38ecd19468d366d392ac0c1dc7f04bb6", - "0x2c8fbb630289363ac80705a1a61273f76fd5a161", - "0x6cc5f688a315f3dc28a7781717a9a798a59fda7b", - "0x7eb6c83ab7d8d9b8618c0ed973cbef71d1921ef2", - "0x313eb1c5e1970eb5ceef6aebad66b07c7338d369", - "0xbda23b750dd04f792ad365b5f2a6f1d8593796f2", - "0x96fdc631f02207b72e5804428dee274cf2ac0bcd", - "0x9723b6d608d4841eb4ab131687a5d4764eb30138", - "0x5041ed759dd4afc3a72b8192c143f72f4724081a", - "0x06d3a30cbb00660b85a30988d197b1c282c6dcb6", - "0x276cdba3a39abf9cedba0f1948312c0681e6d5fd", - "0x68841a1806ff291314946eebd0cda8b348e73d6d", - "0x3d55ccb2a943d88d39dd2e62daf767c69fd0179f", - "0x07cff3c78dc9bd2378b89b92f01254703861c2e4", - "0x236f9f97e0e62388479bf9e5ba4889e46b0273c3", - "0x59fae149a8f8ec74d5bc038f8b76d25b136b9573", - "0x75231f58b43240c9718dd58b4967c5114342a86c" - ] - }, - { - "code": "Bitfinex", - "name": "Bitfinex", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitfinex.png?style=36\u0026v=1642558568", - "addresses": [ - "0xc61b9bb3a7a0767e3179713f3a5c7a9aedce193c", - "0x36a85757645e8e8aec062a1dee289c7d615901ca", - "0x1b8766d041567eed306940c587e21c06ab968663", - "0x5a710a3cdf2af218740384c52a10852d8870626a", - "0x4fdd5eb2fb260149a3903859043e962ab89d8ed4", - "0x28140cb1ac771d4add91ee23788e50249c10263d", - "0xc56fefd1028b0534bfadcdb580d3519b5586246e", - "0x77134cbc06cb00b66f4c7e623d5fdbf6777635ec", - "0x0b73f67a49273fc4b9a65dbd25d7d0918e734e63", - "0x742d35cc6634c0532925a3b844bc454e4438f44e", - "0x53b36141490c419fa27ecabfeb8be1ecadc82431", - "0x0cd76cd43992c665fdc2d8ac91b935ca3165e782", - "0x1151314c646ce4e0efd76d1af4760ae66a9fe30f", - "0x876eabf441b2ee5b5b0554fd502a8e0600950cfa", - "0x5754284f345afc66a98fbb0a0afe71e0f007b949", - "0x87a32492da96069115a12e27ff5e378f03a8edf7", - "0xc6cde7c39eb2f0f0095f41570af89efc2c1ea828", - "0xdcd0272462140d0a3ced6c4bf970c7641f08cd2c", - "0x7727e5113d1d161373623e5f49fd568b4f543a9e" - ] - }, - { - "code": "gemini", - "name": "Gemini", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/gemini.png?style=36", - "addresses": [ - "0x61edcdf5bb737adffe5043706e7c5bb1f1a56eea", - "0xd24400ae8bfebb18ca49be86258a3c749cf46853", - "0x5f65f7b609678448494de4c87521cdf6cef1e932", - "0x6fc82a5fe25a5cdb58bc74600a40a69c065263f8" - ] - }, - { - "code": "crypto-com-exchange", - "name": "Crypto.com Exchange", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/crypto-com-exchange.png?style=36", - "addresses": [ - "0xcffad3200574698b78f32232aa9d63eabd290703", - "0x6262998ced04146fa42253a5c0af90ca02dfd2a3", - "0x46340b20830761efd32832a74d7169b29feb9758", - "0x72a53cdbbcc1b9efa39c834a540550e23463aacb", - "0x7758e507850da48cd47df1fb5f875c23e3340c50", - "0x55c005713bab8824efd9f5b41c55f8bbc815abcd", - "0xa8e330039b67be5573afb388dc35214481c5cf81" - ] - }, - { - "code": "bithumb", - "name": "Bithumb", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bithumb.png?style=36", - "addresses": [ - "0x558553d54183a8542f7832742e7b4ba9c33aa1e6", - "0x3fbe1f8fc5ddb27d428aa60f661eaaab0d2000ce", - "0x3052cd6bf951449a984fe4b5a38b46aef9455c8e", - "0x8fa8af91c675452200e49b4683a33ca2e1a34e42", - "0x2140efd7ba31169c69dfff6cdc66c542f0211825", - "0x090ba5af8284ebe16fccfc6c0be8fbefcf23d365", - "0x15878e87c685f866edfaf454be6dc06fa517b35b", - "0x186549a4ae594fc1f70ba4cffdac714b405be3f9", - "0x31d03f07178bcd74f9099afebd23b0ae30184ab5", - "0x88d34944cf554e9cccf4a24292d891f620e9c94f", - "0xa0ff1e0f30b5dda2dc01e7e828290bc72b71e57d", - "0xc1da8f69e4881efe341600620268934ef01a3e63", - "0xd273bd546b11bd60214a2f9d71f22a088aafe31b", - "0xed48dc0628789c2956b1e41726d062a86ec45bff" - ] - }, - { - "code": "kucoin", - "name": "KuCoin", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/kucoin.png?style=36", - "addresses": [ - "0xd6216fc19db775df9774a6e33526131da7d19a2c", - "0xb8e6d31e7b212b2b7250ee9c26c56cebbfbe6b23", - "0x1692e170361cefd1eb7240ec13d048fd9af6d667", - "0xcad621da75a66c7a8f4ff86d30a2bf981bfc8fdd", - "0xd89350284c7732163765b23338f2ff27449e0bf5", - "0x88bd4d3e2997371bceefe8d9386c6b5b4de60346", - "0xec30d02f10353f8efc9601371f56e808751f396f", - "0x738cf6903e6c4e699d1c2dd9ab8b67fcdb3121ea", - "0xf16e9b0d03470827a95cdfd0cb8a8a3b46969b91", - "0xa1d8d972560c2f8144af871db508f0b0b10a3fbf", - "0x2b5634c42055806a59e9107ed44d43c426e58258", - "0x689c56aef474df92d44a1b70850f808488f9769c", - "0xff651ead42b8eea0b9cb88edc92704ef6af372ce", - "0x899b5d52671830f567bf43a14684eb14e1f945fe", - "0x14ea40648fc8c1781d19363f5b9cc9a877ac2469", - "0x2a8c8b09bd77c13980495a959b26c1305166a57f", - "0x5db0e46744a321f7fe7e2e4a9ee0df2f5dd0c3e3", - "0xf43d7ebaad1efefb3e4df0c9d5766a112dce7dec" - ] - }, - { - "code": "bybit", - "name": "Bybit", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bybit.png?style=36\u0026v=1642060058", - "addresses": [ - "0x1db92e2eebc8e0c075a02bea49a2935bcd2dfcf4", - "0xee5b5b923ffce93a870b3104b7ca09c3db80047a", - "0xf89d7b9c864f589bbf53a82105107622b35eaa40", - "0xa7a93fd0a276fc1c0197a5b5623ed117786eed06" - ] - }, - { - "code": "gate-io", - "name": "gate.io", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/gate-io.png?style=36\u0026v=1654130549", - "addresses": [ - "0xc882b111a75c0c657fc507c04fbfcd2cc984f071", - "0x1c4b70a3968436b9a0a9cf5205c787eb81bb558c", - "0x0d0707963952f2fba59dd06f2b425ace40b492fe", - "0xd793281182a0e3e023116004778f45c29fc14f19", - "0x7793cd85c11a924478d358d49b05b37e91b5810f", - "0x5d8f42503ea6e7807daf04047aa749e43847be09", - "0x127481c5ce4f9bb7cbdb6f8681ef27b21e953bd1", - "0x249c4677896d969e2fec3ad2c405fb4be3bad4d2", - "0x6df6d4610e12fd9033f8c8329f443f201bd36ae1", - "0xeb1d60a831a9b689a67f314afbf0d7f9e6ac911d", - "0xe7872ffeddac12fb4b8579fbf390553415a99028", - "0x7049e4343ce902240caedfd093559250ff890cef", - "0xff5566497750058c1b9a35229ab7ca8f50811912", - "0xe134a754345582b113962cfa51b0dc036a1b04c5", - "0x4add38ee5bf1e232707c543c880f34c61c158ea9", - "0xdb13fea8afd91f66bb99595aa2801599da1aed3f", - "0x020142acd7f25281c0c5e0e90b6cce6ddaea3cd8", - "0xe35973b0c5c831a7423342dbaebf555946fded4c", - "0xc9b8ded010ddb547e334410fc04bb82420eaff06", - "0xfeafae14aded9279afda58c4a3ac42fe7195e57f", - "0x9ed8b706c99e6ebd80824130ed935f9b5d78f4e3", - "0x1dbf7a573e5ff8e40e477510a7c43f633b0bee79" - ] - }, - { - "code": "bittrex", - "name": "Bittrex", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bittrex.png?style=36", - "addresses": [ - "0x66f820a414680b5bcda5eeca5dea238543f42054", - "0xfbc9d695d419cdf7eb46df979353f5b394227976", - "0x429c8344c9b911e9a0a6e6ce257b28250bd3a90a", - "0xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb98", - "0xe94b04a0fed112f3664e45adb2b8915693dd5ff3" - ] - }, - { - "code": "coinone", - "name": "Coinone", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinone.png?style=36", - "addresses": [ - "0x1e2fcfd26d36183f1a5d90f0e6296915b02bcb40", - "0x167a9333bf582556f35bd4d16a7e80e191aa6476" - ] - }, - { - "code": "huobipro", - "name": "Huobi Global", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/huobipro.png?style=36\u0026v=1669107209", - "addresses": [ - "0x18709e89bd403f470088abdacebe86cc60dda12e", - "0xa929022c9107643515f5c777ce9a910f0d1e490c", - "0xeee28d484628d41a82d01e21d12e2e78d69920da", - "0x6748f50f686bfbca6fe8ad62b22228b87f31ff2b", - "0x5c985e89dde482efe97ea9f1950ad149eb73829b", - "0x1062a747393198f70f71ec65a582423dba7e5ab3", - "0xab5c66752a9e8167967685f1450532fb96d5d24f", - "0xfdb16996831753d5331ff813c29a93c76834a0ad", - "0xfa4b5be3f2f84f56703c42eb22142744e95a2c58", - "0x0a98fb70939162725ae66e626fe4b52cff62c2e5", - "0x46705dfff24256421a05d056c29e81bdc09723b8", - "0x18916e1a2933cb349145a280473a5de8eb6630cb", - "0xfd54078badd5653571726c3370afb127351a6f26", - "0xadb2b42f6bd96f5c65920b9ac88619dce4166f94", - "0xc589b275e60dda57ad7e117c6dd837ab524a5666", - "0xf056f435ba0cc4fcd2f1b17e3766549ffc404b94", - "0x5401dbf7da53e1c9dbf484e3d69505815f2f5e6e", - "0x7ef35bb398e0416b81b019fea395219b65c52164", - "0xeec606a66edb6f497662ea31b5eb1610da87ab5f", - "0x794d28ac31bcb136294761a556b68d2634094153", - "0x4d77a1144dc74f26838b69391a6d3b1e403d0990", - "0x9a755332d874c893111207b0b220ce2615cd036f", - "0xe4818f8fde0c977a01da4fa467365b8bf22b071e", - "0x32598293906b5b17c27d657db3ad2c9b3f3e4265", - "0xe93381fb4c4f14bda253907b18fad305d799241a", - "0xf66852bc122fd40bfecc63cd48217e88bda12109", - "0x30741289523c2e4d2a62c7d6722686d14e723851", - "0x90e9ddd9d8d5ae4e3763d0cf856c97594dea7325", - "0xb2a48f542dc56b89b24c04076cbe565b3dc58e7b", - "0xcac725bef4f114f728cbcfd744a731c2a463c3fc", - "0x6f48a3e70f0251d1e83a989e62aaa2281a6d5380", - "0xeb6d43fe241fb2320b5a3c9be9cdfd4dd8226451", - "0x1b93129f05cc2e840135aab154223c75097b69bf", - "0xd8a83b72377476d0a66683cde20a8aad0b628713", - "0x28ffe35688ffffd0659aee2e34778b0ae4e193ad", - "0xb4cd0386d2db86f30c1a11c2b8c4f4185c1dade9", - "0x956e0dbecc0e873d34a5e39b25f364b2ca036730", - "0x73f8fc2e74302eb2efda125a326655acf0dc2d1b", - "0x229b5c097f9b35009ca1321ad2034d4b3d5070f6", - "0xe3314bbf3334228b257779e28228cfb86fa4261b", - "0x1205e4f0d2f02262e667fd72f95a68913b4f7462", - "0x0511509a39377f1c6c78db4330fbfcc16d8a602f", - "0x0577a79cfc63bbc0df38833ff4c4a3bf2095b404", - "0xb6bc437708a398cda5627224bb8b88bcd1e88d8f", - "0xc837f51a0efa33f8eca03570e3d01a4b2cf97ffd", - "0x137ad9c4777e1d36e4b605e745e8f37b2b62e9c5", - "0x034f854b44d28e26386c1bc37ff9b20c6380b00d", - "0x0c6c34cdd915845376fb5407e0895196c9dd4eec", - "0x926fc576b7facf6ae2d08ee2d4734c134a743988", - "0x5861b8446a2f6e19a067874c133f04c578928727", - "0xdc76cd25977e0a5ae17155770273ad58648900d3", - "0x6f259637dcd74c767781e37bc6133cd6a68aa161", - "0xa66daa57432024023db65477ba87d4e7f5f95213", - "0xa8660c8ffd6d578f657b72c0c811284aef0b735e" - ] - }, - { - "code": "binance-us", - "name": "Binance.US", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/binance-us.png?style=36", - "addresses": [ - "0x34ea4138580435b5a521e460035edb19df1938c1", - "0xf60c2ea62edbfe808163751dd0d8693dcb30019c", - "0x61189da79177950a7272c88c6058b96d4bcd6be2" - ] - }, - { - "code": "bitflyer", - "name": "bitFlyer", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitflyer.png?style=36", - "addresses": [ - "0x111cff45948819988857bbf1966a0399e0d1141e" - ] - }, - { - "code": "korbit", - "name": "Korbit", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/korbit.png?style=36", - "addresses": [ - "0xd03be958e6b8da2d28ac8231a2291d6e4f0a7ea7", - "0xf0bc8fddb1f358cef470d63f96ae65b1d7914953", - "0xd6e0f7da4480b3ad7a2c8b31bc5a19325355ca15", - "0x8550e644d74536f1df38b17d5f69aa1bfe28ae86", - "0x0c01089aedc45ab0f43467cceca6b4d3e4170bea", - "0x2864de013415b6c2c7a96333183b20f0f9cc7532", - "0x59fba2e8595841dd2627703f4bb535c3b40a12e0", - "0x49e14f2d6839768bcc39ef0f60809f00eabbac69", - "0x51d9914cb7f0c7d03075280d8f57eb0be6ee457e", - "0x58e2201d8e1668597a37f4d6e701ff642dc2fa6d", - "0xe6ae903bf00691d5996faba0c2ee7e7422a48ffe", - "0x50cbe3772513706cee11548a13a1890f0a2996a0", - "0x954818ae7d93dd682bec7823ee3406e3b4133028", - "0xb7580490a51d3f48d451ba5f2dd79a835d266015", - "0x1167ed55a3a37f072d59217493117b07972aad7f", - "0x1e4b147d4da3fdb73acc8428ddea638088451cdc", - "0xe5d7ccc5fc3b3216c4dff3a59442f1d83038468c", - "0x42992d123b02d213f58ddb72572cf48607be6348" - ] - }, - { - "code": "luno", - "name": "Luno", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/luno.png?style=36", - "addresses": [ - "0x416299aade6443e6f6e8ab67126e65a7f606eef5" - ] - }, - { - "code": "coinbasepro", - "name": "Coinbase Pro", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinbasepro.png?style=36\u0026v=1628048947", - "addresses": [ - "0xa9d1e08c7793af67e9d92fe308d5697fb81d3e43", - "0x71660c4005ba85c37ccec55d0c4493e66fe775d3", - "0xddfabcdc4d8ffc6d5beaf154f18b778f892a0740", - "0x3cd751e6b0078be393132286c442345e5dc49699", - "0x503828976d22510aad0201ac7ec88293211d23da", - "0xb5d85cbf7cb3ee0d56b3bb207d5fc4b82f43f511", - "0xeb2629a2734e272bcc07bda959863f316f4bd4cf", - "0xa090e606e30bd747d4e6245a1517ebe430f0057e", - "0xd688aea8f7d450909ade10c47faa95707b0682d9", - "0x02466e547bfdab679fc49e96bbfc62b9747d997c", - "0x6b76f8b1e9e59913bfe758821887311ba1805cab" - ] - }, - { - "code": "idex", - "name": "IDEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/idex.png?style=36\u0026v=1638840148", - "addresses": [ - "0x2a0c0dbecc7e4d658f48e01e3fa353f44050c208", - "0x19cd9ce7e9bd7f56f69bcfb8ed63aeb46631a970" - ] - }, - { - "code": "bitget", - "name": "Bitget", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitget.png?style=36\u0026v=1676594834", - "addresses": [ - "0xe80623a9d41f2f05780d9cd9cea0f797fd53062a", - "0xe6a421f24d330967a3af2f4cdb5c34067e7e4d75", - "0x97b9d2102a9a65a26e1ee82d59e42d1b73b68689", - "0x5bdf85216ec1e38d6458c870992a69e38e03f7ef", - "0x0639556f03714a74a5feeaf5736a4a64ff70d206", - "0xe2b406ec9227143a8830229eeb3eb6e24b5c60be", - "0x31a36512d4903635b7dd6828a934c3915a5809be" - ] - }, - { - "code": "mexc", - "name": "MEXC Global", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/mexc.png?style=36\u0026v=1668751999", - "addresses": [ - "0x3cc936b795a188f0e246cbb2d74c5bd190aecf18", - "0x75e89d5979e4f6fba9f97c104c2f0afb3f1dcb88", - "0x0162cd2ba40e23378bf0fd41f919e1be075f025f", - "0x0211f3cedbef3143223d3acf0e589747933e8527", - "0xe70cde2c091569a09e7c1e335e20af302ab41339" - ] - }, - { - "code": "curve", - "name": "Curve", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/curve.png?style=36", - "addresses": [ - "0xc5424b857f758e906013f3555dad202e4bdb4567" - ] - }, - { - "code": "bitmex", - "name": "BitMEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitmex.png?style=36", - "addresses": [ - "0xeea81c4416d71cef071224611359f6f99a4c4294" - ] - }, - { - "code": "poloniex", - "name": "Poloniex", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/poloniex.png?style=36", - "addresses": [ - "0xa910f92acdaf488fa6ef02174fb86208ad7722ba", - "0x32be343b94f860124dc4fee278fdcbd38c102d88", - "0x6f803466bcd17f44fa18975bf7c509ba64bf3825", - "0x6b71834d65c5c4d8ed158d54b47e6ea4ff4e5437", - "0x8d451ae5ee8f557a9ce7a9d7be8a8cb40002d5cb", - "0xc0e30823e5e628df8bc9bf2636a347e1512f0ecb", - "0xfbf2173154f7625713be22e0504404ebfe021eae", - "0xead6be34ce315940264519f250d8160f369fa5cd", - "0xb794f5ea0ba39494ce839613fffba74279579268", - "0x48d466b7c0d32b61e8a82cd2bcf060f7c3f966df", - "0x65f9b2e4d7aaeb40ffea8c6f5844d5ad7da257e0", - "0xab11204cfeaccffa63c2d23aef2ea9accdb0a0d5", - "0x0536806df512d6cdde913cf95c9886f65b1d3462", - "0x31a2feb9b5d3b5f4e76c71d6c92fc46ebb3cb1c1", - "0x209c4784ab1e8183cf58ca33cb740efbf3fc18ef", - "0x2fa2bc2ce6a4f92952921a4caa46b3727d24a1ec", - "0x36b01066b7fa4a0fdb2968ea0256c848e9135674", - "0x6795cf8eb25585eadc356ae32ac6641016c550f2", - "0xaa9fa73dfe17ecaa2c89b39f0bb2779613c5fc3b", - "0xbd2ec7c608a06fe975dbdca729e84dedb34ecc21" - ] - }, - { - "code": "bit-z", - "name": "BitZ", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bit-z.png?style=36", - "addresses": [ - "0xee8d8ababb63bcd41e70a30b187cbaaa4e5d7ec6", - "0xa24f25a8545ee2ab81b2a5cc8f047d3567fcde0f", - "0x3d5851c33b581a49998850a78d1865a1936dacb3", - "0x4b729cf402cfcffd057e254924b32241aedc1795" - ] - }, - { - "code": "yobit", - "name": "YoBit", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/yobit.png?style=36", - "addresses": [ - "0xf5bec430576ff1b82e44ddb5a1c93f6f9d0884f3", - "0xc4d300019f587145cfd9b42875073b3ad4bb0296" - ] - }, - { - "code": "coinswitch-kuber", - "name": "CoinSwitch", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinswitch-kuber.png?style=36\u0026v=1672997092", - "addresses": [ - "0x252d1375ca8f8a4ca59f1e7635f8fd7c4a78031e", - "0xceae7673553c90d0a3cd1a494da35ede63910cbf", - "0x3506a6ccc61d4d2046b79969020a5af79010b4a6", - "0x294b9b133ca7bc8ed2cdd03ba661a4c6d3a834d9", - "0x17a678c673fbb5b2f3294ef35e18c0ef8cc3e64f", - "0x250b05e1e0dd20a876e369a16441e714e3d9f436", - "0x4346910075e50a442931d698d41ebe6965a584b1", - "0x4cd3aa96836c133c9b9f27dafa7baf744d57404d", - "0x758e2c2d1a362e2b3e613545e48285b03581ef43", - "0x7d3f7a3842f18873c769a42f92f51f091954211c", - "0xc0eb873cd81d47d290ff7b6ad49280f6fd9cfb2b", - "0xe627b3e5591a713e3c23af6fc4eba2f313fdf489", - "0xe6b936b7640afa9242d1a714e50ee823e1be140f" - ] - }, - { - "code": "bitcoin-indonesia", - "name": "Indodax", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitcoin-indonesia.png?style=36", - "addresses": [ - "0x91dca37856240e5e1906222ec79278b16420dc92", - "0x3c02290922a3618a4646e3bbca65853ea45fe7c6", - "0x9cbadd5ce7e14742f70414a6dcbd4e7bb8712719" - ] - }, - { - "code": "phemex", - "name": "Phemex", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/phemex.png?style=36", - "addresses": [ - "0xf7d13c7dbec85ff86ee815f6dcbb3dedac78ca49" - ] - }, - { - "code": "bigone", - "name": "BigONE", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bigone.png?style=36", - "addresses": [ - "0xd4dcd2459bb78d7a645aa7e196857d421b10d93f", - "0xa30d8157911ef23c46c0eb71889efe6a648a41f7", - "0x88e343f4599292c2cffe683c1bb93cd3480bdbab", - "0x17bc58b788808dab201a9a90817ff3c168bf3d61" - ] - }, - { - "code": "Bitmax", - "name": "AscendEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitmax.png?style=36", - "addresses": [ - "0x983873529f95132bd1812a3b52c98fb271d2f679", - "0xfb8131c260749c7835a08ccbdb64728de432858e", - "0x4b1a99467a284cc690e3237bc69105956816f762", - "0x03bdf69b1322d623836afbd27679a1c0afa067e9", - "0x986a2fca9eda0e06fbf7839b89bfc006ee2a23dd" - ] - }, - { - "code": "hitbtc", - "name": "HitBTC", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/hitbtc.png?style=36", - "addresses": [ - "0xef58321032cf693fa7e39f31e45cbc32f2092cb3", - "0x1c11ba15939e1c16ec7ca1678df6160ea2063bc5", - "0xed0245c53f69ebccdab3e39cf0013161a67bf296", - "0xa12431d0b9db640034b0cdfceef9cce161e62be4", - "0x9c67e141c0472115aa1b98bd0088418be68fd249", - "0x59a5208b32e627891c389ebafc644145224006e8", - "0xb77bd9fc4830a801d42bcd3ffdf2f8c079ecbe28", - "0x2d969d1a10833f207fdc74381979baa249146df3" - ] - }, - { - "code": "latoken", - "name": "LATOKEN", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/latoken.png?style=36", - "addresses": [ - "0x7891b20c690605f4e370d6944c8a5dbfac5a451c", - "0x0861fca546225fbf8806986d211c8398f7457734" - ] - }, - { - "code": "bitstamp", - "name": "Bitstamp", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitstamp.png?style=36", - "addresses": [ - "0x4c766def136f59f6494f0969b1355882080cf8e0", - "0x00bdb5699745f5b860228c8f939abf1b9ae374ed", - "0x1522900b6dafac587d499a862861c0869be6e428", - "0xc5b611f502a0dcf6c3188fd494061ae29b2baa4f", - "0x059799f2261d37b829c2850cee67b5b975432271", - "0x9a9bed3eb03e386d66f8a29dc67dc29bbb1ccb72" - ] - }, - { - "code": "coinlistpro", - "name": "Coinlist Pro", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinlistpro.png?style=36\u0026v=1624265836", - "addresses": [ - "0xd1669ac6044269b59fa12c5822439f609ca54f41", - "0x8d1f2ebfaccf1136db76fdd1b86f1dede2d23852" - ] - }, - { - "code": "shuzibi", - "name": "DigiFinex", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/shuzibi.png?style=36", - "addresses": [ - "0xb37640f5f7ef7b0fdcce2c0c053db4f976945647", - "0x6693c388255f519497f0ca2854c31b72e605569b", - "0xe17ee7b3c676701c66b395a35f0df4c2276a344e" - ] - }, - { - "code": "exmo", - "name": "Exmo", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/exmo.png?style=36", - "addresses": [ - "0x0db79bbb99defc2356d82848a459a5a13869eb3f", - "0xd7b9a9b2f665849c4071ad5af77d8c76aa30fb32", - "0x1fd6267f0d86f62d88172b998390afee2a1f54b6" - ] - }, - { - "code": "zb", - "name": "ZB", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/zb.png?style=36", - "addresses": [ - "0xfd6724b4b3e8eca764f0dd07ccd903ad348d70f8", - "0x6485fc77be2186fc60feea38d0ef4331d8404b60", - "0xf98e7af638b015d15e1820852bf24900f074b38b", - "0x60d0cc2ae15859f69bf74dadb8ae3bd58434976b" - ] - }, - { - "code": "hotbit", - "name": "Hotbit", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/hotbit.png?style=36", - "addresses": [ - "0x562680a4dc50ed2f14d75bf31f494cfe0b8d10a1", - "0x274f3c32c90517975e29dfc209a23f315c1e5fc7", - "0x8533a0bd9310eb63e7cc8e1116c18a3d67b1976a" - ] - }, - { - "code": "kuna", - "name": "Kuna", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/kuna.png?style=36", - "addresses": [ - "0xb357c9b4c9aff115f12af5dd6dab652d8f2ad561", - "0x77ab999d1e9f152156b4411e1f3e2a42dab8cd6d" - ] - }, - { - "code": "probit-exchange", - "name": "ProBit Global", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/probit-exchange.png?style=36", - "addresses": [ - "0xf71afe21cd32959113fc47ae2ef886b43a9413d5", - "0x72e5263ff33d2494692d7f94a758aa9f82062f73" - ] - }, - { - "code": "remitano", - "name": "Remitano", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/remitano.png?style=36\u0026v=1628736240", - "addresses": [ - "0x2819c144d5946404c0516b6f817a960db37d4929", - "0x0be1cef9d45f6621eb083f0a0e4b2261618938d8", - "0xd0b02a49b0768302f407cb28d813dae1761baefa" - ] - }, - { - "code": "whitebit", - "name": "WhiteBIT", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/whitebit.png?style=36\u0026v=1667871362", - "addresses": [ - "0x39f6a6c85d39d5abad8a398310c52e7c374f2ba3" - ] - }, - { - "code": "coinw", - "name": "Coinw", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinw.png?style=36", - "addresses": [ - "0xed4e1ad0f899ef3954d05bafc502f50c8e6a6baf", - "0xa20f10289248717374e9b7776dc368aa526cb6f2", - "0x94961bb15bafe2d73b899b9a3fc209b3fcf899d6", - "0xcb243bf48fb443082fae7db47ec96cb120cd6801", - "0x429bf8ec3330e02401d72beade86000d9a2e19eb", - "0x8705ccfd8a6df3785217c307cbebf9b793310b94", - "0x9f8646a35db0f466ac9322e2d194cc18f209fc75", - "0x6f31d347457962c9811ff953742870ef5a755de3", - "0xd115b7b6bea4819bfd1fe5397f5e7e01fa19d83d" - ] - }, - { - "code": "xt", - "name": "XT", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/xt.png?style=36", - "addresses": [ - "0x659ba341542ed9c25eca5fd7dae3659385956360", - "0xe74638bff8e7e332c08c239407fa68324acf8dee" - ] - }, - { - "code": "okcoin-intl", - "name": "Okcoin", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/okcoin-intl.png?style=36\u0026v=1623981085", - "addresses": [ - "0xd30b438df65f4f788563b2b3611bd6059bff4ad9" - ] - }, - { - "code": "wazirx", - "name": "WazirX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/wazirx.png?style=36\u0026v=1630464169", - "addresses": [ - "0x618ffd1cdabee36ce5992a857cc7463f21272bd7" - ] - }, - { - "code": "wootrade", - "name": "WOO X", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/wootrade.png?style=36\u0026v=1678894355", - "addresses": [ - "0x63dfe4e34a3bfc00eb0220786238a7c6cef8ffc4", - "0xea319fd75766f5180018f8e760f51c3d3c457496", - "0x0d83f81bc9f1e8252f87a4109bbf0d90171c81df" - ] - }, - { - "code": "bitrue", - "name": "Bitrue", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitrue.png?style=36\u0026v=1637802321", - "addresses": [ - "0x6cc8dcbca746a6e4fdefb98e1d0df903b107fd21", - "0x878d587be19cd44c203ec5e90d9ca3724c4d2c3d" - ] - }, - { - "code": "binance-jex", - "name": "Binance JEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/binance-jex.png?style=36\u0026v=1624874753", - "addresses": [ - "0xab83d182f3485cf1d6ccdd34c7cfef95b4c08da4" - ] - }, - { - "code": "otcbtc", - "name": "OTCBTC", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/otcbtc.png?style=36", - "addresses": [ - "0xaeec6f5aca72f3a005af1b3420ab8c8c7009bac8", - "0x8f7dee5cde6965481f0119bac9d5b2b142bcc94f" - ] - }, - { - "code": "dextrade", - "name": "Dex-Trade", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/dextrade.png?style=36\u0026v=1624268482", - "addresses": [ - "0xd0a174b1ff551d63ed0823ae743bbe9bc204b0f0" - ] - }, - { - "code": "mercatox", - "name": "Mercatox", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/mercatox.png?style=36", - "addresses": [ - "0xe03c23519e18d64f144d2800e30e81b0065c48b5" - ] - }, - { - "code": "upbit", - "name": "Upbit", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/upbit.png?style=36", - "addresses": [ - "0x390de26d772d2e2005c6d1d24afc902bae37a4bb", - "0xba826fec90cefdf6706858e5fbafcb27a290fbe0", - "0x5e032243d507c743b061ef021e2ec7fcc6d3ab89", - "0x03747f06215b44e498831da019b27f53e483599f" - ] - }, - { - "code": "cex-io", - "name": "CEX.IO", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/cex-io.png?style=36", - "addresses": [ - "0xc9f5296eb3ac266c94568d790b6e91eba7d76a11" - ] - }, - { - "code": "bilaxy", - "name": "Bilaxy", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bilaxy.png?style=36\u0026v=1626747663", - "addresses": [ - "0x9ba3560231e3e0ad7dde23106f5b98c72e30b468", - "0xf7793d27a1b76cdf14db7c83e82c772cf7c92910" - ] - }, - { - "code": "Bit2C", - "name": "Bit2C", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bit2c.png?style=36", - "addresses": [ - "0x7c49e1c0e33f3efb57d64b7690fa287c8d15b90a" - ] - }, - { - "code": "bingx", - "name": "BingX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bingx.png?style=36\u0026v=1647943344", - "addresses": [ - "0x474ac5cb62d7acedc9990d4daafa0c39d9478fbb" - ] - }, - { - "code": "liquid", - "name": "Liquid", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/liquid.png?style=36", - "addresses": [ - "0xedbb72e6b3cf66a792bff7faac5ea769fe810517" - ] - }, - { - "code": "bitforex", - "name": "BitForex", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitforex.png?style=36\u0026v=1660631865", - "addresses": [ - "0xeec0ed9e41c209c1c53a35900a06bf5dca927405" - ] - }, - { - "code": "coinex", - "name": "CoinEx", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinex.png?style=36", - "addresses": [ - "0xb9ee1e551f538a464e8f8c41e9904498505b49b0", - "0x53eb3ea47643e87e8f25dd997a37b3b5260e7336" - ] - }, - { - "code": "jbexcom", - "name": "Jubi", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/jbexcom.png?style=36", - "addresses": [ - "0xad840a2b569188d49245fcd7bde71167d77df6c0" - ] - }, - { - "code": "8v-global", - "name": "8V Global Exchange", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/8v-global.png?style=36\u0026v=1651200248", - "addresses": [ - "0x09b1806df13062b5f653beda6998972cabcf7009" - ] - }, - { - "code": "coinexchange", - "name": "CoinExchange", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinexchange.png?style=36", - "addresses": [ - "0x4b01721f0244e7c5b5f63c20942850e447f5a5ee", - "0x226ce8219207e773c0768a699bf7982dbea754ad" - ] - }, - { - "code": "tokencan", - "name": "Tokencan", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/tokencan.png?style=36", - "addresses": [ - "0x475c4810c124873a58e1045428d1fa35634b6048" - ] - }, - { - "code": "btse", - "name": "BTSE", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/btse.png?style=36", - "addresses": [ - "0x1619d743d7dc612e99d5d94ebd6b9695d46f0bf3", - "0xde279a5cd86860cd3d039aa1b74bc29e74cabb12" - ] - }, - { - "code": "zgcom", - "name": "ZG.com", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/zgcom.png?style=36", - "addresses": [ - "0x8baed8fd7fc228781a95e7d6e57c3e430d2be6f9" - ] - }, - { - "code": "qbtc", - "name": "QBTC", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/qbtc.png?style=36", - "addresses": [ - "0xa5a3903fc3698c241b1385df4f80a5c665f47404" - ] - }, - { - "code": "paribu", - "name": "Paribu", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/paribu.png?style=36", - "addresses": [ - "0xbd8ef191caa1571e8ad4619ae894e07a75de0c35", - "0x2bb97b6cf6ffe53576032c11711d59bd056830ee" - ] - }, - { - "code": "ftx", - "name": "FTX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/ftx.png?style=36", - "addresses": [ - "0xc098b2a3aa256d2140208c3de6543aaef5cd3a94", - "0xdc51356928bae9fd7f43ddb4a1c8e1fbdd340eb5", - "0xff3babb82a8065318a0548e4af19e0ed46dc28f9", - "0xa72ceb9964bac623d67cf4d07b99645145ba16e1", - "0xd45c041dc87aa2495793bec3964389c81a962dfa", - "0xb2ab43f76131fb299a8b04d3434eea6e14069cfa", - "0x91fde2e551560067a818bda6f4b63c89ee83500d", - "0x2faf487a4414fe77e2327f0bf4ae2a264a776ad2" - ] - }, - { - "code": "bibox", - "name": "Bibox", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bibox.png?style=36", - "addresses": [ - "0xf73c3c65bde10bf26c2e1763104e609a41702efe" - ] - }, - { - "code": "bitmart", - "name": "BitMart", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bitmart.png?style=36\u0026v=1675696548", - "addresses": [ - "0xe79eef9b9388a4ff70ed7ec5bccd5b928ebb8bd1", - "0x68b22215ff74e3606bd5e6c1de8c2d68180c85f7" - ] - }, - { - "code": "bkex", - "name": "BKEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bkex.png?style=36\u0026v=1648085868", - "addresses": [ - "0xd9811e8b7c42418c71dabfe63b9cc17f8db1a6eb" - ] - }, - { - "code": "Cobinhood", - "name": "COBINHOOD", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/cobinhood.png?style=36", - "addresses": [ - "0xb726da4fbdc3e4dbda97bb20998cf899b0e727e0", - "0x8958618332df62af93053cb9c535e26462c959b0" - ] - }, - { - "code": "jingui", - "name": "JinGui", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/jingui.png?style=36", - "addresses": [ - "0xf65c33c383a6996ffec2d00aa93df3ce2bdb7851" - ] - }, - { - "code": "bgogo", - "name": "Bgogo", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bgogo.png?style=36", - "addresses": [ - "0x7a10ec7d68a048bdae36a70e93532d31423170fa", - "0xce1bf8e51f8b39e51c6184e059786d1c0eaf360f" - ] - }, - { - "code": "citex", - "name": "CITEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/citex.png?style=36", - "addresses": [ - "0xe51a4316607772132f89b3483da698e4d682e191", - "0x9e2e3649563e60926a7b5968bc3537fb58faf78b", - "0x4d7291630651041358abe50532c1a20948559155", - "0x691c5e2751ec615d2b49cb569fdf787720b0fd31", - "0x7b897ab1e759028f14e1841ffc5449f11273e330" - ] - }, - { - "code": "crex24", - "name": "CREX24", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/crex24.png?style=36", - "addresses": [ - "0x521db06bf657ed1d6c98553a70319a8ddbac75a3" - ] - }, - { - "code": "idcm", - "name": "Klickl(IDCM)", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/idcm.png?style=36\u0026v=1652319488", - "addresses": [ - "0x2a1dcbdf3fc17c7263529aa7fb1f90e3d4624ed2", - "0x2b2b0cf3d1bc4a776c512e7f374991fd9ca3eb34", - "0xc5565200eb6a428451d53280b49c4488f74ac14d", - "0x8b2b3d18230661157d399226686d91b2fc340a30", - "0x0a8b4e06fa1a93211422d0f4f12747a832dbbd28", - "0xc86f08c4f6aec029ece7e56d1d302dfdcf2ec41d" - ] - }, - { - "code": "tidex", - "name": "Tidex", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/tidex.png?style=36\u0026v=1651653452", - "addresses": [ - "0x3613ef1125a078ef96ffc898c4ec28d73c5b8c52", - "0x0a73573cf2903d2d8305b1ecb9e9730186a312ae" - ] - }, - { - "code": "ztcom", - "name": "ZT", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/ztcom.png?style=36", - "addresses": [ - "0x5004a7aa3c430bc3e133ee29c28e391b16f8bf7d", - "0x444a5e0d2515f322e7278f6ee95cb34d8de98f09", - "0x7aa12eef14db55884ab2fe0d097e0064ef7a8eca", - "0x0179d232becf100cd1f0dd3e84a8afa9ca31aff3" - ] - }, - { - "code": "coinegg", - "name": "CoinEgg", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/coinegg.png?style=36", - "addresses": [ - "0x93f36930f94fbb5afc5fb506d3f7abb9179a4e4e" - ] - }, - { - "code": "bw", - "name": "BW", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bw.png?style=36", - "addresses": [ - "0x73957709695e73fd175582105c44743cf0fb6f2f" - ] - }, - { - "code": "uex", - "name": "UEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/uex.png?style=36", - "addresses": [ - "0x2f1233ec3a4930fd95874291db7da9e90dfb2f03" - ] - }, - { - "code": "ggbtc", - "name": "GGBTC", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/ggbtc.png?style=36", - "addresses": [ - "0x9fb01a2584aac5aae3fab1ed25f86c5269b32999" - ] - }, - { - "code": "ulei", - "name": "ULEI", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/ulei.png?style=36", - "addresses": [ - "0xb27ac505bee7298b204b530b368b6191f4141c55", - "0x412d18072b7809ab25d8b4b0e0167128e122ec37" - ] - }, - { - "code": "wrnet", - "name": "XinBi Global", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/wrnet.png?style=36", - "addresses": [ - "0x499bc6b4b9e7da1fd8a775106a389f4c1d1d4b98", - "0x373fe5f4d8936590b4463df22be4ce3f82ced806", - "0xf8bc6604190a6279080e0fe24e15dc1d2927e10b" - ] - }, - { - "code": "dcoin", - "name": "Dcoin", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/dcoin.png?style=36", - "addresses": [ - "0x4003caeff9d6eb5af6927b0842c90f43f31d25d1" - ] - }, - { - "code": "ftx-us", - "name": "FTX US", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/ftx-us.png?style=36", - "addresses": [ - "0x7abe0ce388281d2acf297cb089caef3819b13448" - ] - }, - { - "code": "abcc", - "name": "ABCC", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/abcc.png?style=36", - "addresses": [ - "0x05f51aab068caa6ab7eeb672f88c180f67f17ec7" - ] - }, - { - "code": "aex", - "name": "AEX", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/aex.png?style=36", - "addresses": [ - "0x4564bfe303900178578769b2d76b1a13533e5fd5", - "0x6814b1fe0dbb34d006dc204a6b2ded962df1d684" - ] - }, - { - "code": "bithumbpro", - "name": "BitGlobal", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/bithumbpro.png?style=36\u0026v=1637803956", - "addresses": [ - "0xb4460b75254ce0563bb68ec219208344c7ea838c" - ] - }, - { - "code": "sushiswap", - "name": "SushiSwap", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/sushiswap.png?style=36", - "addresses": [ - "0x088ee5007c98a9677165d78dd2109ae4a3d04d0c" - ] - }, - { - "code": "uniswap", - "name": "Uniswap (V2)", - "symbol": "", - "logo": "https://s1.coincarp.com/logo/2/uniswap.png?style=36", - "addresses": [ - "0x2fdbadf3c4d5a8666bc06645b8358ab803996e28" - ] - } -] \ No newline at end of file diff --git a/exchanges/exchanges_test.go b/exchanges/exchanges_test.go deleted file mode 100644 index 269364065..000000000 --- a/exchanges/exchanges_test.go +++ /dev/null @@ -1,44 +0,0 @@ -package exchanges - -import ( - "testing" - - "github.com/stretchr/testify/require" - - "github.com/ethereum/go-ethereum/common" -) - -func TestNullAddress(t *testing.T) { - address := common.HexToAddress("0x0") - exchange := GetCentralizedExchangeWithAddress(address) - - require.Empty(t, exchange) -} - -func TestBinanceWithCode(t *testing.T) { - exchange, err := GetCentralizedExchangeWithCode("binance") - - require.NoError(t, err) - require.NotEmpty(t, exchange) - require.Equal(t, exchange.Name(), "Binance") -} - -func TestBinanceWithAddress(t *testing.T) { - // Address "Binance 3" - // https://etherscan.io/address/0x564286362092d8e7936f0549571a803b203aaced - address := common.HexToAddress("0x564286362092D8e7936f0549571a803B203aAceD") - exchange := GetCentralizedExchangeWithAddress(address) - - require.NotEmpty(t, exchange) - require.Equal(t, exchange.Name(), "Binance") -} - -func TestKrakenWithAddress(t *testing.T) { - // Address "Kraken 4" - // https://etherscan.io/address/0x267be1c1d684f78cb4f6a176c4911b741e4ffdc0 - address := common.HexToAddress("0x267be1C1D684F78cb4F6a176C4911b741E4Ffdc0") - exchange := GetCentralizedExchangeWithAddress(address) - - require.NotEmpty(t, exchange) - require.Equal(t, exchange.Name(), "Kraken") -} diff --git a/exchanges/go.mod b/exchanges/go.mod deleted file mode 100644 index 521513dc8..000000000 --- a/exchanges/go.mod +++ /dev/null @@ -1,16 +0,0 @@ -module github.com/status-im/status-go/exchanges - -go 1.20 - -require ( - github.com/ethereum/go-ethereum v1.10.26 - github.com/stretchr/testify v1.8.0 -) - -require ( - github.com/davecgh/go-spew v1.1.1 // indirect - github.com/pmezard/go-difflib v1.0.0 // indirect - golang.org/x/crypto v0.1.0 // indirect - golang.org/x/sys v0.6.0 // indirect - gopkg.in/yaml.v3 v3.0.1 // indirect -) diff --git a/exchanges/go.sum b/exchanges/go.sum deleted file mode 100644 index f733dcbf7..000000000 --- a/exchanges/go.sum +++ /dev/null @@ -1,21 +0,0 @@ -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/ethereum/go-ethereum v1.10.26 h1:i/7d9RBBwiXCEuyduBQzJw/mKmnvzsN14jqBmytw72s= -github.com/ethereum/go-ethereum v1.10.26/go.mod h1:EYFyF19u3ezGLD4RqOkLq+ZCXzYbLoNDdZlMt7kyKFg= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -golang.org/x/crypto v0.1.0 h1:MDRAIl0xIo9Io2xV565hzXHw3zVseKrJKodhohM5CjU= -golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= -golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= -golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= -gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=