b.smali

.class public final Lcom/cmcm/safewallet/data/coinprovider/erc20/b;
.super Ljava/lang/Object;
.source "SmartContractSupportHelper.java"


# instance fields
.field private To:Lorg/web3j/protocol/Web3j;

.field public final Tw:Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/String;",
            "Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
            ">;"
        }
    .end annotation
.end field


# direct methods
.method public constructor <init>()V
    .registers 2

    .prologue
    .line 59
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 63
    new-instance v0, Ljava/util/HashMap;

    invoke-direct {v0}, Ljava/util/HashMap;-><init>()V

    iput-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    return-void
.end method

.method static synthetic a(Lcom/cmcm/safewallet/data/coinprovider/erc20/b;)V
    .registers 6

    .prologue
    .line 59
    .line 6605
    iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    monitor-enter v1

    .line 6606
    :try_start_3
    const-string v0, "SmartContractSupportHelper"

    const-string v2, "initTokenFileToCache()"

    .line 7052
    invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 6607
    new-instance v0, Ljava/io/File;

    sget-object v2, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;

    invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V

    .line 6608
    invoke-virtual {v0}, Ljava/io/File;->exists()Z

    move-result v2

    if-eqz v2, :cond_74

    invoke-virtual {v0}, Ljava/io/File;->canRead()Z

    move-result v2

    if-eqz v2, :cond_74

    .line 6609
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;

    invoke-virtual {v0}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    .line 6610
    new-instance v2, Ljava/util/HashMap;

    invoke-direct {v2}, Ljava/util/HashMap;-><init>()V
    :try_end_2d
    .catchall {:try_start_3 .. :try_end_2d} :catchall_71

    .line 6612
    :try_start_2d
    invoke-static {v0, v2}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V

    .line 6613
    invoke-virtual {v2}, Ljava/util/HashMap;->isEmpty()Z

    move-result v0

    if-nez v0, :cond_4c

    .line 6614
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v0}, Ljava/util/HashMap;->clear()V

    .line 6615
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v0, v2}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V

    .line 6616
    invoke-virtual {v2}, Ljava/util/HashMap;->clear()V

    .line 6617
    const-string v0, "SmartContractSupportHelper"

    const-string v2, "initTokenFileToCache(), success"

    .line 8052
    invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_4a
    .catch Lorg/json/JSONException; {:try_start_2d .. :try_end_4a} :catch_54
    .catchall {:try_start_2d .. :try_end_4a} :catchall_71

    .line 6629
    :goto_4a
    :try_start_4a
    monitor-exit v1
    :try_end_4b
    .catchall {:try_start_4a .. :try_end_4b} :catchall_71

    return-void

    .line 6619
    :cond_4c
    :try_start_4c
    const-string v0, "SmartContractSupportHelper"

    const-string v2, "initTokenFileToCache(), failed, empty map"

    .line 9052
    invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_53
    .catch Lorg/json/JSONException; {:try_start_4c .. :try_end_53} :catch_54
    .catchall {:try_start_4c .. :try_end_53} :catchall_71

    goto :goto_4a

    .line 6621
    :catch_54
    move-exception v0

    .line 6622
    :try_start_55
    invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V

    .line 6623
    const-string v2, "SmartContractSupportHelper"

    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, "initTokenFileToCache(), failed, exception: "

    invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v0}, Lorg/json/JSONException;->getLocalizedMessage()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    .line 10052
    invoke-static {v2, v0}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_4a

    .line 6629
    :catchall_71
    move-exception v0

    monitor-exit v1
    :try_end_73
    .catchall {:try_start_55 .. :try_end_73} :catchall_71

    throw v0

    .line 6626
    :cond_74
    :try_start_74
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v0}, Ljava/util/HashMap;->clear()V

    .line 6627
    const-string v0, "SmartContractSupportHelper"

    const-string v2, "initTokenFileToCache(), failed, currTokenFile not exist"

    .line 11052
    invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_80
    .catchall {:try_start_74 .. :try_end_80} :catchall_71

    goto :goto_4a
.end method

.method private static a(Ljava/lang/String;Ljava/util/HashMap;)V
    .registers 10
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/String;",
            "Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
            ">;)V"
        }
    .end annotation

    .prologue
    const/4 v0, 0x0

    .line 633
    invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_8

    .line 673
    :cond_7
    return-void

    .line 636
    :cond_8
    new-instance v1, Lorg/json/JSONTokener;

    invoke-direct {v1, p0}, Lorg/json/JSONTokener;-><init>(Ljava/lang/String;)V

    invoke-virtual {v1}, Lorg/json/JSONTokener;->nextValue()Ljava/lang/Object;

    move-result-object v2

    .line 637
    const/4 v1, 0x0

    .line 638
    instance-of v3, v2, Lorg/json/JSONObject;

    if-eqz v3, :cond_8f

    .line 640
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1, p0}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V

    .line 641
    const-string v2, "tokens"

    invoke-virtual {v1, v2}, Lorg/json/JSONObject;->optJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;

    move-result-object v1

    move-object v2, v1

    .line 646
    :goto_22
    if-eqz v2, :cond_7

    .line 650
    :goto_24
    invoke-virtual {v2}, Lorg/json/JSONArray;->length()I

    move-result v1

    if-ge v0, v1, :cond_7

    .line 652
    :try_start_2a
    invoke-virtual {v2, v0}, Lorg/json/JSONArray;->optJSONObject(I)Lorg/json/JSONObject;

    move-result-object v1

    .line 653
    new-instance v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;

    invoke-direct {v3}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;-><init>()V

    .line 654
    const-string v4, "name"

    invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;

    .line 655
    const-string v4, "contract"

    invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;

    .line 656
    const-string v4, "decimals"

    invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    iput v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I

    .line 657
    const-string v4, "icon"

    invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tj:Ljava/lang/String;

    .line 658
    iget-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;

    iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->mCoinName:Ljava/lang/String;

    .line 659
    const-string v4, "fullname"

    invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tl:Ljava/lang/String;

    .line 661
    new-instance v4, Ljava/text/DecimalFormat;

    const-string v5, "0.#"

    invoke-direct {v4, v5}, Ljava/text/DecimalFormat;-><init>(Ljava/lang/String;)V

    .line 662
    const/4 v5, 0x0

    invoke-virtual {v4, v5}, Ljava/text/DecimalFormat;->setMaximumFractionDigits(I)V

    .line 663
    const-string v5, "limit"

    invoke-virtual {v1, v5}, Lorg/json/JSONObject;->optDouble(Ljava/lang/String;)D

    move-result-wide v6

    invoke-virtual {v4, v6, v7}, Ljava/text/DecimalFormat;->format(D)Ljava/lang/String;

    move-result-object v1

    .line 665
    new-instance v4, Ljava/math/BigInteger;

    invoke-direct {v4, v1}, Ljava/math/BigInteger;-><init>(Ljava/lang/String;)V

    iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;

    .line 666
    const-string v1, ""

    iput-object v1, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tk:Ljava/lang/String;

    .line 668
    iget-object v1, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;

    invoke-virtual {v1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p1, v1, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    :try_end_8c
    .catch Ljava/lang/Exception; {:try_start_2a .. :try_end_8c} :catch_9a

    .line 650
    :goto_8c
    add-int/lit8 v0, v0, 0x1

    goto :goto_24

    .line 642
    :cond_8f
    instance-of v2, v2, Lorg/json/JSONArray;

    if-eqz v2, :cond_9f

    .line 644
    new-instance v1, Lorg/json/JSONArray;

    invoke-direct {v1, p0}, Lorg/json/JSONArray;-><init>(Ljava/lang/String;)V

    move-object v2, v1

    goto :goto_22

    .line 670
    :catch_9a
    move-exception v1

    invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V

    goto :goto_8c

    :cond_9f
    move-object v2, v1

    goto :goto_22
.end method

.method static synthetic b(Landroid/content/Context;I)V
    .registers 11

    .prologue
    .line 11164
    sget-object v2, Lcom/cmcm/safewallet/data/ctrl/j;->UF:Ljava/lang/String;

    .line 11165
    sget-object v3, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;

    .line 11167
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;

    move-result-object v0

    const-string v1, "coin/tokens.json"

    invoke-virtual {v0, p0, v1, v2}, Lcom/cmcm/safewallet/data/ctrl/j;->d(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V

    .line 11169
    invoke-static {v2}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    .line 11170
    invoke-static {v3}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

    .line 11172
    new-instance v4, Ljava/util/HashMap;

    invoke-direct {v4}, Ljava/util/HashMap;-><init>()V

    .line 11174
    new-instance v5, Ljava/util/HashMap;

    invoke-direct {v5}, Ljava/util/HashMap;-><init>()V

    .line 11176
    new-instance v6, Ljava/util/HashMap;

    invoke-direct {v6}, Ljava/util/HashMap;-><init>()V

    .line 11179
    :try_start_24
    invoke-static {v0, v4}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V

    .line 11180
    invoke-static {v1, v5}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V
    :try_end_2a
    .catch Lorg/json/JSONException; {:try_start_24 .. :try_end_2a} :catch_57

    .line 11185
    :goto_2a
    invoke-virtual {v6, v4}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V

    .line 11188
    invoke-virtual {v5}, Ljava/util/HashMap;->entrySet()Ljava/util/Set;

    move-result-object v0

    .line 11189
    invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v5

    .line 11190
    :cond_35
    :goto_35
    invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_5c

    .line 11191
    invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/Map$Entry;

    .line 11192
    invoke-interface {v0}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/lang/String;

    .line 11193
    invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;

    .line 11194
    invoke-virtual {v4, v1}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z

    move-result v7

    if-nez v7, :cond_35

    .line 11196
    invoke-virtual {v6, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_35

    .line 11182
    :catch_57
    move-exception v0

    invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V

    goto :goto_2a

    .line 11199
    :cond_5c
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V

    .line 11201
    new-instance v4, Lorg/json/JSONArray;

    invoke-direct {v4}, Lorg/json/JSONArray;-><init>()V

    .line 11203
    :try_start_66
    invoke-virtual {v6}, Ljava/util/HashMap;->entrySet()Ljava/util/Set;

    move-result-object v0

    .line 11204
    invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v5

    .line 11205
    :goto_6e
    invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_c6

    .line 11206
    invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/Map$Entry;

    .line 11207
    invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;

    .line 11208
    new-instance v6, Lorg/json/JSONObject;

    invoke-direct {v6}, Lorg/json/JSONObject;-><init>()V

    .line 11209
    const-string v7, "name"

    iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;

    invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 11210
    const-string v7, "fullname"

    iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tl:Ljava/lang/String;

    invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 11211
    const-string v7, "contract"

    iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;

    invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 11212
    const-string v7, "decimals"

    iget v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I

    invoke-static {v8}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v8

    invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 11213
    const-string v7, "icon"

    iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tj:Ljava/lang/String;

    invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 11214
    const-string v7, "limit"

    iget-object v0, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;

    invoke-virtual {v0}, Ljava/math/BigInteger;->intValue()I

    move-result v0

    invoke-virtual {v6, v7, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;

    .line 11215
    const-string v0, "saler"

    const-string v7, ""

    invoke-virtual {v6, v0, v7}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 11216
    invoke-virtual {v4, v6}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
    :try_end_c1
    .catch Lorg/json/JSONException; {:try_start_66 .. :try_end_c1} :catch_c2

    goto :goto_6e

    .line 11219
    :catch_c2
    move-exception v0

    invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V

    .line 11223
    :cond_c6
    :try_start_c6
    const-string v0, "version"

    invoke-virtual {v1, v0, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;

    .line 11224
    const-string v0, "tokens"

    invoke-virtual {v1, v0, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_d0
    .catch Lorg/json/JSONException; {:try_start_c6 .. :try_end_d0} :catch_e9

    .line 11229
    :goto_d0
    invoke-virtual {v1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v3, v0}, Lcom/cmcm/safewallet/data/ctrl/j;->M(Ljava/lang/String;Ljava/lang/String;)Z

    .line 11230
    new-instance v0, Ljava/lang/StringBuilder;

    const-string v3, " mergeTokenResource >> "

    invoke-direct {v0, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 11231
    invoke-static {v2}, Lcom/cmcm/safewallet/data/ctrl/j;->deleteFile(Ljava/lang/String;)Z

    .line 59
    return-void

    .line 11226
    :catch_e9
    move-exception v0

    invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V

    goto :goto_d0
.end method

.method public static final iK()Lcom/cmcm/safewallet/data/coinprovider/erc20/b;
    .registers 1

    .prologue
    .line 72
    invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/erc20/c;->iN()Lcom/cmcm/safewallet/data/coinprovider/erc20/b;

    move-result-object v0

    return-object v0
.end method

.method static synthetic iM()Z
    .registers 5

    .prologue
    const/4 v0, 0x0

    .line 3574
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jl()Z

    move-result v1

    if-nez v1, :cond_8

    .line 3595
    :goto_7
    return v0

    .line 3577
    :cond_8
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->ji()Ljava/lang/String;

    move-result-object v1

    .line 3578
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jj()Ljava/lang/String;

    move-result-object v2

    .line 3580
    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    sget-object v4, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v3

    const-string v4, ".tmp"

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v3

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    .line 3581
    new-instance v4, Ljava/io/File;

    invoke-direct {v4, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V

    .line 3582
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;

    invoke-static {v1, v3}, Lcom/cmcm/safewallet/data/ctrl/j;->N(Ljava/lang/String;Ljava/lang/String;)Z

    .line 3584
    invoke-virtual {v4}, Ljava/io/File;->exists()Z

    move-result v1

    if-eqz v1, :cond_61

    invoke-virtual {v4}, Ljava/io/File;->canRead()Z

    move-result v1

    if-eqz v1, :cond_61

    .line 3585
    invoke-static {v4}, Lcom/cmcm/safewallet/utils/aa;->n(Ljava/io/File;)Ljava/lang/String;

    move-result-object v1

    .line 3586
    invoke-virtual {v2, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z

    move-result v1

    if-eqz v1, :cond_59

    .line 3588
    new-instance v0, Ljava/io/File;

    sget-object v1, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;

    invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V

    .line 3589
    invoke-virtual {v4, v0}, Ljava/io/File;->renameTo(Ljava/io/File;)Z

    .line 3590
    const-string v0, "SmartContractSupportHelper"

    const-string v1, "tryToDownloadTokenFile(), success"

    .line 4052
    invoke-static {v0, v1}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 3591
    const/4 v0, 0x1

    goto :goto_7

    .line 3594
    :cond_59
    const-string v1, "SmartContractSupportHelper"

    const-string v2, "tryToDownloadTokenFile(), success but md5 not match"

    .line 5052
    invoke-static {v1, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_7

    .line 3599
    :cond_61
    const-string v1, "SmartContractSupportHelper"

    const-string v2, "tryToDownloadTokenFile(), failed"

    .line 6052
    invoke-static {v1, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_7
.end method

.method private static k(Ljava/util/Map;)Ljava/util/Map;
    .registers 2
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Map",
            "<",
            "Ljava/lang/String;",
            "Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
            ">;)",
            "Ljava/util/Map",
            "<",
            "Ljava/lang/String;",
            "Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
            ">;"
        }
    .end annotation

    .prologue
    .line 546
    new-instance v0, Landroid/support/v4/f/a;

    invoke-direct {v0}, Landroid/support/v4/f/a;-><init>()V

    .line 547
    if-nez p0, :cond_8

    .line 551
    :goto_7
    return-object v0

    .line 550
    :cond_8
    invoke-interface {v0, p0}, Ljava/util/Map;->putAll(Ljava/util/Map;)V

    goto :goto_7
.end method


# virtual methods
.method final a(Ljava/lang/String;Lorg/web3j/abi/datatypes/Function;)Ljava/lang/String;
    .registers 6

    .prologue
    .line 454
    .line 1464
    :try_start_0
    invoke-static {p2}, Lorg/web3j/abi/FunctionEncoder;->encode(Lorg/web3j/abi/datatypes/Function;)Ljava/lang/String;

    move-result-object v0

    .line 1465
    iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->To:Lorg/web3j/protocol/Web3j;

    if-nez v1, :cond_19

    .line 1466
    new-instance v1, Lorg/web3j/protocol/http/HttpService;

    invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/eth/depends/c;->iQ()Lcom/cmcm/safewallet/data/coinprovider/eth/depends/e;

    move-result-object v2

    iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/eth/depends/e;->Ue:Ljava/lang/String;

    invoke-direct {v1, v2}, Lorg/web3j/protocol/http/HttpService;-><init>(Ljava/lang/String;)V

    invoke-static {v1}, Lorg/web3j/protocol/Web3jFactory;->build(Lorg/web3j/protocol/Web3jService;)Lorg/web3j/protocol/Web3j;

    move-result-object v1

    iput-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->To:Lorg/web3j/protocol/Web3j;

    .line 1468
    :cond_19
    iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->To:Lorg/web3j/protocol/Web3j;

    .line 1469
    invoke-static {p1, p1, v0}, Lorg/web3j/protocol/core/methods/request/Transaction;->createEthCallTransaction(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/web3j/protocol/core/methods/request/Transaction;

    move-result-object v0

    sget-object v2, Lorg/web3j/protocol/core/DefaultBlockParameterName;->LATEST:Lorg/web3j/protocol/core/DefaultBlockParameterName;

    .line 1468
    invoke-interface {v1, v0, v2}, Lorg/web3j/protocol/Web3j;->ethCall(Lorg/web3j/protocol/core/methods/request/Transaction;Lorg/web3j/protocol/core/DefaultBlockParameter;)Lorg/web3j/protocol/core/Request;

    move-result-object v0

    .line 1471
    invoke-virtual {v0}, Lorg/web3j/protocol/core/Request;->sendAsync()Ljava/util/concurrent/Future;

    move-result-object v0

    invoke-interface {v0}, Ljava/util/concurrent/Future;->get()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lorg/web3j/protocol/core/methods/response/EthCall;

    .line 1473
    invoke-virtual {v0}, Lorg/web3j/protocol/core/methods/response/EthCall;->getValue()Ljava/lang/String;

    move-result-object v0

    .line 455
    invoke-virtual {p2}, Lorg/web3j/abi/datatypes/Function;->getOutputParameters()Ljava/util/List;

    move-result-object v1

    invoke-static {v0, v1}, Lorg/web3j/abi/FunctionReturnDecoder;->decode(Ljava/lang/String;Ljava/util/List;)Ljava/util/List;

    move-result-object v0

    .line 456
    const/4 v1, 0x0

    invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lorg/web3j/abi/datatypes/Type;

    invoke-interface {v0}, Lorg/web3j/abi/datatypes/Type;->getValue()Ljava/lang/Object;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
    :try_end_49
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_49} :catch_4b

    move-result-object v0

    .line 460
    :goto_4a
    return-object v0

    .line 458
    :catch_4b
    move-exception v0

    invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V

    .line 460
    const/4 v0, 0x0

    goto :goto_4a
.end method

.method public final aM(Ljava/lang/String;)Ljava/util/List;
    .registers 18
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            ")",
            "Ljava/util/List",
            "<",
            "Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
            ">;"
        }
    .end annotation

    .prologue
    .line 239
    move-object/from16 v0, p0

    iget-object v11, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    monitor-enter v11

    .line 240
    :try_start_5
    new-instance v10, Ljava/util/ArrayList;

    invoke-direct {v10}, Ljava/util/ArrayList;-><init>()V

    .line 242
    new-instance v12, Ljava/util/concurrent/atomic/AtomicInteger;

    const/4 v2, 0x0

    invoke-direct {v12, v2}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>(I)V

    .line 243
    new-instance v13, Ljava/util/HashMap;

    invoke-direct {v13}, Ljava/util/HashMap;-><init>()V

    .line 244
    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v13, v2}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V

    .line 245
    invoke-static {}, Lcom/cmcm/safewallet/data/remote/b;->ll()Lcom/cmcm/safewallet/data/remote/b;

    move-result-object v2

    invoke-virtual {v2}, Lcom/cmcm/safewallet/data/remote/b;->lm()Lcom/cmcm/safewallet/data/remote/api/EtherScanRequest;

    move-result-object v2

    const-string v3, "account"

    const-string v4, "tokentx"

    const-string v6, "0"

    const-string v7, "999999999"

    const-string v8, "desc"

    invoke-static {}, Lcom/cmcm/safewallet/data/remote/b;->lk()Ljava/lang/String;

    move-result-object v9

    move-object/from16 v5, p1

    invoke-interface/range {v2 .. v9}, Lcom/cmcm/safewallet/data/remote/api/EtherScanRequest;->getTokenTxTransacations(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lretrofit2/Call;

    move-result-object v2

    .line 246
    invoke-interface {v2}, Lretrofit2/Call;->execute()Lretrofit2/Response;

    move-result-object v2

    .line 247
    invoke-virtual {v2}, Lretrofit2/Response;->isSuccessful()Z

    move-result v3

    if-eqz v3, :cond_15d

    .line 248
    invoke-virtual {v2}, Lretrofit2/Response;->body()Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Lorg/json/JSONObject;

    .line 249
    if-eqz v2, :cond_15d

    .line 250
    const-string v3, "result"

    const/4 v4, 0x0

    invoke-virtual {v2, v3, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    .line 251
    if-nez v2, :cond_56

    .line 252
    monitor-exit v11
    :try_end_54
    .catchall {:try_start_5 .. :try_end_54} :catchall_cc

    move-object v2, v10

    .line 433
    :goto_55
    return-object v2

    .line 257
    :cond_56
    :try_start_56
    new-instance v3, Lorg/json/JSONTokener;

    invoke-direct {v3, v2}, Lorg/json/JSONTokener;-><init>(Ljava/lang/String;)V

    invoke-virtual {v3}, Lorg/json/JSONTokener;->nextValue()Ljava/lang/Object;

    move-result-object v3

    instance-of v3, v3, Lorg/json/JSONArray;
    :try_end_61
    .catch Lorg/json/JSONException; {:try_start_56 .. :try_end_61} :catch_66
    .catchall {:try_start_56 .. :try_end_61} :catchall_cc

    if-nez v3, :cond_7b

    .line 259
    :try_start_63
    monitor-exit v11

    move-object v2, v10

    goto :goto_55

    .line 261
    :catch_66
    move-exception v2

    .line 262
    invoke-virtual {v2}, Lorg/json/JSONException;->printStackTrace()V

    .line 263
    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, " \u5b58\u5728\u5f02\u5e38 >> "

    invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v2}, Lorg/json/JSONException;->getMessage()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 265
    monitor-exit v11

    move-object v2, v10

    goto :goto_55

    .line 267
    :cond_7b
    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v3

    if-nez v3, :cond_15d

    .line 268
    new-instance v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$2;

    invoke-direct {v3}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$2;-><init>()V

    .line 1101
    iget-object v3, v3, Lcom/google/gson/b/a;->type:Ljava/lang/reflect/Type;

    .line 270
    new-instance v4, Landroid/support/v4/f/b;

    invoke-direct {v4}, Landroid/support/v4/f/b;-><init>()V

    .line 271
    new-instance v5, Lcom/google/gson/d;

    invoke-direct {v5}, Lcom/google/gson/d;-><init>()V

    invoke-virtual {v5, v2, v3}, Lcom/google/gson/d;->a(Ljava/lang/String;Ljava/lang/reflect/Type;)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Ljava/util/List;

    .line 272
    new-instance v3, Ljava/util/ArrayList;

    invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V

    .line 273
    if-eqz v2, :cond_dc

    .line 274
    invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object v5

    :goto_a3
    invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z

    move-result v2

    if-eqz v2, :cond_dc

    invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;

    .line 275
    iget-object v6, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;

    invoke-interface {v4, v6}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z

    move-result v6

    if-nez v6, :cond_cf

    .line 276
    new-instance v6, Ljava/lang/StringBuilder;

    const-string v7, "\u5b58\u5728\u5408\u7ea6 "

    invoke-direct {v6, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    iget-object v7, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 277
    invoke-interface {v3, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 278
    iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;

    invoke-interface {v4, v2}, Ljava/util/Set;->add(Ljava/lang/Object;)Z

    goto :goto_a3

    .line 434
    :catchall_cc
    move-exception v2

    monitor-exit v11
    :try_end_ce
    .catchall {:try_start_63 .. :try_end_ce} :catchall_cc

    throw v2

    .line 280
    :cond_cf
    :try_start_cf
    new-instance v6, Ljava/lang/StringBuilder;

    const-string v7, "\u53bb\u91cd\u5408\u7ea6 "

    invoke-direct {v6, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;

    invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    goto :goto_a3

    .line 284
    :cond_dc
    new-instance v2, Ljava/lang/StringBuilder;

    const-string v4, "tokenTxTransacationList.size >> "

    invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-interface {v3}, Ljava/util/List;->size()I

    move-result v4

    invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    .line 285
    invoke-interface {v3}, Ljava/util/List;->size()I

    move-result v2

    if-lez v2, :cond_15d

    .line 287
    invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;

    move-result-object v2

    invoke-virtual {v2}, Ljava/lang/Runtime;->availableProcessors()I

    move-result v2

    shl-int/lit8 v2, v2, 0x1

    .line 289
    invoke-static {v2}, Ljava/util/concurrent/Executors;->newFixedThreadPool(I)Ljava/util/concurrent/ExecutorService;

    move-result-object v14

    .line 291
    new-instance v7, Ljava/lang/Object;

    invoke-direct {v7}, Ljava/lang/Object;-><init>()V

    .line 292
    new-instance v6, Ljava/util/concurrent/CountDownLatch;

    invoke-interface {v3}, Ljava/util/List;->size()I

    move-result v2

    invoke-direct {v6, v2}, Ljava/util/concurrent/CountDownLatch;-><init>(I)V

    .line 293
    new-instance v2, Ljava/lang/StringBuilder;

    const-string v4, " \u67e5\u8be2\u5f00\u59cb "

    invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v4

    invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    .line 294
    invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object v15

    :goto_11e
    invoke-interface {v15}, Ljava/util/Iterator;->hasNext()Z

    move-result v2

    if-eqz v2, :cond_138

    invoke-interface {v15}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v5

    check-cast v5, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;

    .line 295
    new-instance v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$3;

    move-object/from16 v3, p0

    move-object v4, v13

    move-object v8, v10

    move-object v9, v12

    invoke-direct/range {v2 .. v9}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$3;-><init>(Lcom/cmcm/safewallet/data/coinprovider/erc20/b;Ljava/util/HashMap;Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;Ljava/util/concurrent/CountDownLatch;Ljava/lang/Object;Ljava/util/List;Ljava/util/concurrent/atomic/AtomicInteger;)V

    invoke-interface {v14, v2}, Ljava/util/concurrent/ExecutorService;->execute(Ljava/lang/Runnable;)V

    goto :goto_11e

    .line 371
    :cond_138
    invoke-virtual {v6}, Ljava/util/concurrent/CountDownLatch;->await()V

    .line 372
    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, " \u67e5\u8be2\u5b8c\u6210 "

    invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v4

    invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v2

    const-string v3, " \u589e\u52a0\u4e86 "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I

    move-result v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    const-string v3, " \u4e2a\u5408\u7ea6"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 378
    :cond_15d
    invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I

    move-result v2

    if-lez v2, :cond_20c

    .line 380
    const/4 v2, 0x0

    .line 381
    const/4 v4, 0x0

    .line 382
    sget-object v3, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;

    invoke-static {v3}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;
    :try_end_16a
    .catchall {:try_start_cf .. :try_end_16a} :catchall_cc

    move-result-object v3

    .line 384
    :try_start_16b
    new-instance v5, Lorg/json/JSONTokener;

    invoke-direct {v5, v3}, Lorg/json/JSONTokener;-><init>(Ljava/lang/String;)V

    invoke-virtual {v5}, Lorg/json/JSONTokener;->nextValue()Ljava/lang/Object;

    move-result-object v4

    .line 385
    instance-of v3, v4, Lorg/json/JSONObject;
    :try_end_176
    .catch Lorg/json/JSONException; {:try_start_16b .. :try_end_176} :catch_227
    .catchall {:try_start_16b .. :try_end_176} :catchall_cc

    if-eqz v3, :cond_21e

    .line 387
    const/4 v2, 0x0

    move-object v3, v4

    move v5, v2

    .line 396
    :goto_17b
    :try_start_17b
    new-instance v4, Lorg/json/JSONArray;

    invoke-direct {v4}, Lorg/json/JSONArray;-><init>()V
    :try_end_180
    .catchall {:try_start_17b .. :try_end_180} :catchall_cc

    .line 398
    :try_start_180
    invoke-virtual {v13}, Ljava/util/HashMap;->entrySet()Ljava/util/Set;

    move-result-object v2

    .line 399
    invoke-interface {v2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v6

    .line 400
    :goto_188
    invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z

    move-result v2

    if-eqz v2, :cond_1e0

    .line 401
    invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Ljava/util/Map$Entry;

    .line 402
    invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;

    .line 403
    new-instance v7, Lorg/json/JSONObject;

    invoke-direct {v7}, Lorg/json/JSONObject;-><init>()V

    .line 404
    const-string v8, "name"

    iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;

    invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 405
    const-string v8, "fullname"

    iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tl:Ljava/lang/String;

    invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 406
    const-string v8, "contract"

    iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;

    invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 407
    const-string v8, "decimals"

    iget v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I

    invoke-static {v9}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v9

    invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 408
    const-string v8, "icon"

    iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tj:Ljava/lang/String;

    invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 409
    const-string v8, "limit"

    iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;

    invoke-virtual {v2}, Ljava/math/BigInteger;->intValue()I

    move-result v2

    invoke-virtual {v7, v8, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;

    .line 410
    const-string v2, "saler"

    const-string v8, ""

    invoke-virtual {v7, v2, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 411
    invoke-virtual {v4, v7}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
    :try_end_1db
    .catch Lorg/json/JSONException; {:try_start_180 .. :try_end_1db} :catch_1dc
    .catchall {:try_start_180 .. :try_end_1db} :catchall_cc

    goto :goto_188

    .line 414
    :catch_1dc
    move-exception v2

    :try_start_1dd
    invoke-virtual {v2}, Lorg/json/JSONException;->printStackTrace()V
    :try_end_1e0
    .catchall {:try_start_1dd .. :try_end_1e0} :catchall_cc

    .line 417
    :cond_1e0
    if-nez v5, :cond_234

    .line 419
    :try_start_1e2
    move-object v0, v3

    check-cast v0, Lorg/json/JSONObject;

    move-object v2, v0

    const-string v5, "tokens"

    invoke-virtual {v2, v5, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_1eb
    .catch Lorg/json/JSONException; {:try_start_1e2 .. :try_end_1eb} :catch_22f
    .catchall {:try_start_1e2 .. :try_end_1eb} :catchall_cc

    .line 427
    :goto_1eb
    :try_start_1eb
    sget-object v2, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;

    invoke-virtual {v3}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v4

    invoke-static {v2, v4}, Lcom/cmcm/safewallet/data/ctrl/j;->M(Ljava/lang/String;Ljava/lang/String;)Z

    .line 428
    new-instance v2, Ljava/lang/StringBuilder;

    const-string v4, " ChgNum >> "

    invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {v2, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    move-result-object v2

    const-string v4, " autoInsertSmartContracts >> "

    invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v3}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 431
    :cond_20c
    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v2}, Ljava/util/HashMap;->clear()V

    .line 432
    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v2, v13}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V

    .line 433
    monitor-exit v11
    :try_end_21b
    .catchall {:try_start_1eb .. :try_end_21b} :catchall_cc

    move-object v2, v10

    goto/16 :goto_55

    .line 388
    :cond_21e
    :try_start_21e
    instance-of v3, v4, Lorg/json/JSONArray;
    :try_end_220
    .catch Lorg/json/JSONException; {:try_start_21e .. :try_end_220} :catch_227
    .catchall {:try_start_21e .. :try_end_220} :catchall_cc

    if-eqz v3, :cond_223

    .line 390
    const/4 v2, 0x1

    :cond_223
    move-object v3, v4

    move v5, v2

    .line 394
    goto/16 :goto_17b

    .line 393
    :catch_227
    move-exception v3

    :try_start_228
    invoke-virtual {v3}, Lorg/json/JSONException;->printStackTrace()V

    move-object v3, v4

    move v5, v2

    goto/16 :goto_17b

    .line 421
    :catch_22f
    move-exception v2

    invoke-virtual {v2}, Lorg/json/JSONException;->printStackTrace()V
    :try_end_233
    .catchall {:try_start_228 .. :try_end_233} :catchall_cc

    goto :goto_1eb

    :cond_234
    move-object v3, v4

    .line 424
    goto :goto_1eb
.end method

.method public final aN(Ljava/lang/String;)I
    .registers 4

    .prologue
    .line 558
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_f

    .line 559
    const-string v0, "SmartContractSupportHelper"

    const-string v1, "getDecimalsByContractAddress fail because contractAddress is empty."

    .line 3052
    invoke-static {v0, v1}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 560
    const/4 v0, 0x0

    .line 562
    :goto_e
    return v0

    :cond_f
    invoke-virtual {p0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->iL()Ljava/util/Map;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;

    move-result-object v1

    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;

    iget v0, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I

    goto :goto_e
.end method

.method public final aO(Ljava/lang/String;)Ljava/math/BigInteger;
    .registers 4

    .prologue
    .line 569
    invoke-virtual {p0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->iL()Ljava/util/Map;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;

    move-result-object v1

    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;

    .line 570
    iget-object v0, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;

    return-object v0
.end method

.method public final iL()Ljava/util/Map;
    .registers 7
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/Map",
            "<",
            "Ljava/lang/String;",
            "Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
            ">;"
        }
    .end annotation

    .prologue
    .line 513
    iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    monitor-enter v1

    .line 514
    :try_start_3
    invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/n;->fU()Lcom/cmcm/safewallet/data/coinprovider/n;

    .line 520
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v0}, Ljava/util/HashMap;->isEmpty()Z

    move-result v0

    if-nez v0, :cond_16

    .line 521
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-static {v0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->k(Ljava/util/Map;)Ljava/util/Map;

    move-result-object v0

    monitor-exit v1

    .line 540
    :goto_15
    return-object v0

    .line 523
    :cond_16
    iget-object v2, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    monitor-enter v2
    :try_end_19
    .catchall {:try_start_3 .. :try_end_19} :catchall_2a

    .line 524
    :try_start_19
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-virtual {v0}, Ljava/util/HashMap;->isEmpty()Z

    move-result v0

    if-nez v0, :cond_2d

    .line 525
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-static {v0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->k(Ljava/util/Map;)Ljava/util/Map;

    move-result-object v0

    monitor-exit v2
    :try_end_28
    .catchall {:try_start_19 .. :try_end_28} :catchall_60

    :try_start_28
    monitor-exit v1

    goto :goto_15

    .line 542
    :catchall_2a
    move-exception v0

    monitor-exit v1
    :try_end_2c
    .catchall {:try_start_28 .. :try_end_2c} :catchall_2a

    throw v0

    .line 528
    :cond_2d
    :try_start_2d
    invoke-static {}, Lcom/cmcm/safewallet/entry/WalletApp;->lO()Landroid/content/Context;
    :try_end_30
    .catchall {:try_start_2d .. :try_end_30} :catchall_60

    move-result-object v0

    .line 530
    :try_start_31
    sget-object v3, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;

    .line 531
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;

    move-result-object v4

    invoke-virtual {v4, v3}, Lcom/cmcm/safewallet/data/ctrl/j;->ba(Ljava/lang/String;)Z

    move-result v4

    .line 532
    if-nez v4, :cond_46

    .line 533
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;

    move-result-object v4

    const-string v5, "coin/tokens.json"

    invoke-virtual {v4, v0, v5, v3}, Lcom/cmcm/safewallet/data/ctrl/j;->d(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V

    .line 535
    :cond_46
    invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;

    invoke-static {v3}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    .line 536
    iget-object v3, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-static {v0, v3}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V
    :try_end_52
    .catch Ljava/lang/Exception; {:try_start_31 .. :try_end_52} :catch_5b
    .catchall {:try_start_31 .. :try_end_52} :catchall_60

    .line 540
    :goto_52
    :try_start_52
    iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;

    invoke-static {v0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->k(Ljava/util/Map;)Ljava/util/Map;

    move-result-object v0

    monitor-exit v2
    :try_end_59
    .catchall {:try_start_52 .. :try_end_59} :catchall_60

    :try_start_59
    monitor-exit v1
    :try_end_5a
    .catchall {:try_start_59 .. :try_end_5a} :catchall_2a

    goto :goto_15

    .line 538
    :catch_5b
    move-exception v0

    :try_start_5c
    invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V

    goto :goto_52

    .line 541
    :catchall_60
    move-exception v0

    monitor-exit v2
    :try_end_62
    .catchall {:try_start_5c .. :try_end_62} :catchall_60

    :try_start_62
    throw v0
    :try_end_63
    .catchall {:try_start_62 .. :try_end_63} :catchall_2a
.end method