Lcom/alibaba/fastjson/parser/DefaultJSONParser;.parseObject(Ljava/util/Map;Ljava/lang/Object;)Ljava/lang/Object;
java.lang.RuntimeException: can not merge I and Z
	at com.googlecode.dex2jar.ir.TypeClass.merge(TypeClass.java:100)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeRef.updateTypeClass(TypeTransformer.java:174)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeAnalyze.useAs(TypeTransformer.java:868)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeAnalyze.enexpr(TypeTransformer.java:668)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeAnalyze.exExpr(TypeTransformer.java:719)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeAnalyze.exExpr(TypeTransformer.java:703)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeAnalyze.s2stmt(TypeTransformer.java:820)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeAnalyze.sxStmt(TypeTransformer.java:843)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer$TypeAnalyze.analyze(TypeTransformer.java:206)
	at com.googlecode.dex2jar.ir.ts.TypeTransformer.transform(TypeTransformer.java:44)
	at com.googlecode.d2j.dex.Dex2jar$2.optimize(Dex2jar.java:162)
	at com.googlecode.d2j.dex.Dex2Asm.convertCode(Dex2Asm.java:414)
	at com.googlecode.d2j.dex.ExDex2Asm.convertCode(ExDex2Asm.java:42)
	at com.googlecode.d2j.dex.Dex2jar$2.convertCode(Dex2jar.java:128)
	at com.googlecode.d2j.dex.Dex2Asm.convertMethod(Dex2Asm.java:509)
	at com.googlecode.d2j.dex.Dex2Asm.convertClass(Dex2Asm.java:406)
	at com.googlecode.d2j.dex.Dex2Asm.convertDex(Dex2Asm.java:422)
	at com.googlecode.d2j.dex.Dex2jar.doTranslate(Dex2jar.java:172)
	at com.googlecode.d2j.dex.Dex2jar.to(Dex2jar.java:272)
	at com.googlecode.dex2jar.tools.Dex2jarCmd.doCommandLine(Dex2jarCmd.java:108)
	at com.googlecode.dex2jar.tools.BaseCmd.doMain(BaseCmd.java:288)
	at com.googlecode.dex2jar.tools.Dex2jarCmd.main(Dex2jarCmd.java:32)


.method public final parseObject(Ljava/util/Map;Ljava/lang/Object;)Ljava/lang/Object;
    .catchall { :L6 .. :L13 } :L147
    .catchall { :L16 .. :L24 } :L147
    .catch Ljava/lang/NumberFormatException; { :L24 .. :L27 } :L28
    .catchall { :L24 .. :L27 } :L147
    .catchall { :L27 .. :L44 } :L147
    .catch Ljava/lang/Exception; { :L44 .. :L49 } :L51
    .catchall { :L44 .. :L49 } :L147
    .catchall { :L52 .. :L55 } :L147
    .catchall { :L57 .. :L58 } :L147
    .catchall { :L60 .. :L72 } :L147
    .catchall { :L74 .. :L92 } :L147
    .catchall { :L95 .. :L113 } :L147
    .catchall { :L116 .. :L136 } :L147
    .catchall { :L138 .. :L141 } :L147
    .catchall { :L144 .. :L147 } :L147
    .registers 22
    move-object/from16 v1, p0
    move-object/from16 v2, p1
    move-object/from16 v3, p2
    iget-object v4, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->lexer:Lcom/alibaba/fastjson/parser/JSONLexer;
    iget v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    const/16 v6, 8
    const/4 v7, 0
    if-ne v5, v6, :L0
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken()V
    return-object v7
    :L0
    const/16 v8, 12
    const/16 v9, 16
    if-eq v5, v8, :L1
    if-eq v5, v9, :L1
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v6, "syntax error, expect {, actual "
    invoke-virtual { v3, v6 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-static { v5 }, Lcom/alibaba/fastjson/parser/JSONToken;->name(I)Ljava/lang/String;
    move-result-object v5
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    const-string v5, ", "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L1
    instance-of v5, v2, Lcom/alibaba/fastjson/JSONObject;
    const/4 v11, 1
    if-eqz v5, :L2
    move-object v5, v2
    check-cast v5, Lcom/alibaba/fastjson/JSONObject;
    invoke-virtual { v5 }, Lcom/alibaba/fastjson/JSONObject;->getInnerMap()Ljava/util/Map;
    move-result-object v5
    move v12, v11
    goto :L3
    :L2
    move-object v5, v7
    const/4 v12, 0
    :L3
    iget v13, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->features:I
    sget-object v14, Lcom/alibaba/fastjson/parser/Feature;->AllowISO8601DateFormat:Lcom/alibaba/fastjson/parser/Feature;
    iget v14, v14, Lcom/alibaba/fastjson/parser/Feature;->mask:I
    and-int/2addr v13, v14
    if-eqz v13, :L4
    move v13, v11
    goto :L5
    :L4
    const/4 v13, 0
    :L5
    iget-boolean v14, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->disableCircularReferenceDetect:Z
    iget-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    const/16 v16, 0
    :L6
    iget-char v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/16 v6, 125
    const/16 v8, 34
    if-eq v7, v8, :L7
    if-eq v7, v6, :L7
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->skipWhitespace()V
    iget-char v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    :L7
    const/16 v9, 44
    if-ne v7, v9, :L8
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->next()C
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->skipWhitespace()V
    iget-char v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    goto :L7
    :L8
    const/16 v9, 58
    const/16 v10, 26
    if-ne v7, v8, :L10
    iget-object v7, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->symbolTable:Lcom/alibaba/fastjson/parser/SymbolTable;
    invoke-virtual { v4, v7, v8 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanSymbol(Lcom/alibaba/fastjson/parser/SymbolTable;C)Ljava/lang/String;
    move-result-object v7
    iget-char v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    if-eq v8, v9, :L9
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->skipWhitespace()V
    iget-char v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    if-eq v8, v9, :L9
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "expect ':' at "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    iget v4, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->pos:I
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
    const-string v4, ", name "
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3, v7 }, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L9
    move-object v8, v7
    const/4 v7, 0
    goto/16 :L34
    :L10
    if-ne v7, v6, :L15
    iget v3, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    add-int/2addr v3, v11
    iput v3, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v3, v5, :L11
    goto :L12
    :L11
    iget-object v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v5, v3 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L12
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/4 v3, 0
    iput v3, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->sp:I
    const/16 v3, 16
    invoke-virtual { v4, v3 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    :L13
    if-nez v14, :L14
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L14
    return-object v2
    :L15
    const/16 v8, 39
    if-ne v7, v8, :L18
    :L16
    iget-object v7, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->symbolTable:Lcom/alibaba/fastjson/parser/SymbolTable;
    invoke-virtual { v4, v7, v8 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanSymbol(Lcom/alibaba/fastjson/parser/SymbolTable;C)Ljava/lang/String;
    move-result-object v7
    iget-char v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    if-eq v8, v9, :L17
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->skipWhitespace()V
    :L17
    iget-char v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    if-eq v8, v9, :L9
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "expect ':' at "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    iget v4, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->pos:I
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L18
    if-ne v7, v10, :L19
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "syntax error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L19
    const/16 v8, 44
    if-ne v7, v8, :L20
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "syntax error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L20
    const/16 v8, 48
    if-lt v7, v8, :L22
    const/16 v8, 57
    if-le v7, v8, :L21
    goto :L22
    :L21
    const/4 v7, 0
    goto :L23
    :L22
    const/16 v8, 45
    if-ne v7, v8, :L29
    goto :L21
    :L23
    iput v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->sp:I
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanNumber()V
    :L24
    iget v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    const/4 v8, 2
    if-ne v7, v8, :L25
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->integerValue()Ljava/lang/Number;
    move-result-object v7
    goto :L26
    :L25
    invoke-virtual { v4, v11 }, Lcom/alibaba/fastjson/parser/JSONLexer;->decimalValue(Z)Ljava/lang/Number;
    move-result-object v7
    :L26
    if-eqz v12, :L27
    invoke-virtual { v7 }, Ljava/lang/Object;->toString()Ljava/lang/String;
    move-result-object v7
    :L27
    iget-char v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    if-eq v8, v9, :L9
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "parse number key error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L28
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "parse number key error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L29
    const/16 v8, 123
    if-eq v7, v8, :L32
    const/16 v8, 91
    if-ne v7, v8, :L30
    goto :L32
    :L30
    iget-object v7, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->symbolTable:Lcom/alibaba/fastjson/parser/SymbolTable;
    invoke-virtual { v4, v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanSymbolUnQuoted(Lcom/alibaba/fastjson/parser/SymbolTable;)Ljava/lang/String;
    move-result-object v7
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->skipWhitespace()V
    iget-char v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    if-eq v8, v9, :L31
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "expect ':' at "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    iget v4, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
    const-string v4, ", actual "
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3, v8 }, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L31
    if-eqz v12, :L9
    invoke-virtual { v7 }, Ljava/lang/Object;->toString()Ljava/lang/String;
    move-result-object v7
    goto/16 :L9
    :L32
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken()V
    invoke-virtual/range { p0 .. p0 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parse()Ljava/lang/Object;
    move-result-object v7
    if-eqz v12, :L33
    invoke-virtual { v7 }, Ljava/lang/Object;->toString()Ljava/lang/String;
    move-result-object v7
    :L33
    move-object v8, v7
    move v7, v11
    :L34
    const/16 v9, 13
    if-nez v7, :L41
    iget v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    add-int/2addr v7, v11
    iput v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v7, v10, :L35
    const/16 v10, 26
    goto :L36
    :L35
    iget-object v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v10, v7 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L36
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    :L37
    const/16 v7, 32
    if-gt v10, v7, :L40
    const/16 v7, 32
    if-eq v10, v7, :L38
    const/16 v7, 10
    if-eq v10, v7, :L38
    if-eq v10, v9, :L38
    const/16 v7, 9
    if-eq v10, v7, :L38
    const/16 v7, 12
    if-eq v10, v7, :L38
    const/16 v7, 8
    if-ne v10, v7, :L42
    goto :L39
    :L38
    const/16 v7, 8
    :L39
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->next()C
    iget-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    goto :L37
    :L40
    const/16 v7, 8
    goto :L42
    :L41
    const/16 v7, 8
    iget-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    :L42
    const/4 v7, 0
    iput v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->sp:I
    const-string v7, "@type"
    if-ne v8, v7, :L60
    sget-object v7, Lcom/alibaba/fastjson/parser/Feature;->DisableSpecialKeyDetect:Lcom/alibaba/fastjson/parser/Feature;
    invoke-virtual { v4, v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->isEnabled(Lcom/alibaba/fastjson/parser/Feature;)Z
    move-result v7
    if-nez v7, :L60
    iget-object v6, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->symbolTable:Lcom/alibaba/fastjson/parser/SymbolTable;
    const/16 v7, 34
    invoke-virtual { v4, v6, v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanSymbol(Lcom/alibaba/fastjson/parser/SymbolTable;C)Ljava/lang/String;
    move-result-object v6
    iget-object v7, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->config:Lcom/alibaba/fastjson/parser/ParserConfig;
    iget-object v7, v7, Lcom/alibaba/fastjson/parser/ParserConfig;->defaultClassLoader:Ljava/lang/ClassLoader;
    invoke-static { v6, v7 }, Lcom/alibaba/fastjson/util/TypeUtils;->loadClass(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
    move-result-object v7
    if-nez v7, :L43
    const-string v7, "@type"
    invoke-interface { v2, v7, v6 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    const/16 v6, 8
    const/16 v8, 12
    const/16 v9, 16
    goto/16 :L6
    :L43
    const/16 v5, 16
    invoke-virtual { v4, v5 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    iget v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    if-ne v8, v9, :L53
    invoke-virtual { v4, v5 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    :L44
    iget-object v2, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->config:Lcom/alibaba/fastjson/parser/ParserConfig;
    invoke-virtual { v2, v7 }, Lcom/alibaba/fastjson/parser/ParserConfig;->getDeserializer(Ljava/lang/reflect/Type;)Lcom/alibaba/fastjson/parser/deserializer/ObjectDeserializer;
    move-result-object v2
    instance-of v3, v2, Lcom/alibaba/fastjson/parser/JavaBeanDeserializer;
    if-eqz v3, :L45
    check-cast v2, Lcom/alibaba/fastjson/parser/JavaBeanDeserializer;
    invoke-virtual { v2, v1, v7 }, Lcom/alibaba/fastjson/parser/JavaBeanDeserializer;->createInstance(Lcom/alibaba/fastjson/parser/DefaultJSONParser;Ljava/lang/reflect/Type;)Ljava/lang/Object;
    move-result-object v2
    move-object/from16 v17, v2
    goto :L46
    :L45
    const/16 v17, 0
    :L46
    if-nez v17, :L49
    const-class v2, Ljava/lang/Cloneable;
    if-ne v7, v2, :L47
    new-instance v2, Ljava/util/HashMap;
    invoke-direct { v2 }, Ljava/util/HashMap;-><init>()V
    move-object/from16 v17, v2
    goto :L49
    :L47
    const-string v2, "java.util.Collections$EmptyMap"
    invoke-virtual { v2, v6 }, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    move-result v2
    if-eqz v2, :L48
    invoke-static { }, Ljava/util/Collections;->emptyMap()Ljava/util/Map;
    move-result-object v17
    goto :L49
    :L48
    invoke-virtual { v7 }, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
    move-result-object v17
    :L49
    if-nez v14, :L50
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L50
    return-object v17
    :L51
    move-exception v0
    move-object v2, v0
    :L52
    new-instance v3, Lcom/alibaba/fastjson/JSONException;
    const-string v4, "create instance error"
    invoke-direct { v3, v4, v2 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
    throw v3
    :L53
    const/4 v4, 2
    iput v4, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->resolveStatus:I
    iget-object v4, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    if-eqz v4, :L54
    instance-of v4, v3, Ljava/lang/Integer;
    if-nez v4, :L54
    invoke-virtual/range { p0 .. p0 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->popContext()V
    :L54
    invoke-interface/range { p1 .. p1 }, Ljava/util/Map;->size()I
    move-result v4
    if-lez v4, :L57
    iget-object v3, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->config:Lcom/alibaba/fastjson/parser/ParserConfig;
    invoke-static { v2, v7, v3 }, Lcom/alibaba/fastjson/util/TypeUtils;->cast(Ljava/lang/Object;Ljava/lang/Class;Lcom/alibaba/fastjson/parser/ParserConfig;)Ljava/lang/Object;
    move-result-object v2
    invoke-virtual { v1, v2 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseObject(Ljava/lang/Object;)V
    :L55
    if-nez v14, :L56
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L56
    return-object v2
    :L57
    iget-object v2, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->config:Lcom/alibaba/fastjson/parser/ParserConfig;
    invoke-virtual { v2, v7 }, Lcom/alibaba/fastjson/parser/ParserConfig;->getDeserializer(Ljava/lang/reflect/Type;)Lcom/alibaba/fastjson/parser/deserializer/ObjectDeserializer;
    move-result-object v2
    invoke-interface { v2, v1, v7, v3 }, Lcom/alibaba/fastjson/parser/deserializer/ObjectDeserializer;->deserialze(Lcom/alibaba/fastjson/parser/DefaultJSONParser;Ljava/lang/reflect/Type;Ljava/lang/Object;)Ljava/lang/Object;
    move-result-object v2
    :L58
    if-nez v14, :L59
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L59
    return-object v2
    :L60
    const-string v7, "$ref"
    const/4 v6, 4
    if-ne v8, v7, :L75
    sget-object v7, Lcom/alibaba/fastjson/parser/Feature;->DisableSpecialKeyDetect:Lcom/alibaba/fastjson/parser/Feature;
    invoke-virtual { v4, v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->isEnabled(Lcom/alibaba/fastjson/parser/Feature;)Z
    move-result v7
    if-nez v7, :L75
    invoke-virtual { v4, v6 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    iget v2, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    if-ne v2, v6, :L74
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->stringVal()Ljava/lang/String;
    move-result-object v2
    invoke-virtual { v4, v9 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    const-string v3, "@"
    invoke-virtual { v3, v2 }, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    move-result v3
    if-eqz v3, :L62
    iget-object v2, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    if-eqz v2, :L69
    iget-object v2, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    iget-object v7, v2, Lcom/alibaba/fastjson/parser/ParseContext;->object:Ljava/lang/Object;
    instance-of v3, v7, [Ljava/lang/Object;
    if-nez v3, :L70
    instance-of v3, v7, Ljava/util/Collection;
    if-eqz v3, :L61
    goto :L70
    :L61
    iget-object v3, v2, Lcom/alibaba/fastjson/parser/ParseContext;->parent:Lcom/alibaba/fastjson/parser/ParseContext;
    if-eqz v3, :L69
    iget-object v2, v2, Lcom/alibaba/fastjson/parser/ParseContext;->parent:Lcom/alibaba/fastjson/parser/ParseContext;
    iget-object v7, v2, Lcom/alibaba/fastjson/parser/ParseContext;->object:Ljava/lang/Object;
    goto :L70
    :L62
    const-string v3, ".."
    invoke-virtual { v3, v2 }, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    move-result v3
    if-eqz v3, :L64
    iget-object v3, v15, Lcom/alibaba/fastjson/parser/ParseContext;->object:Ljava/lang/Object;
    if-eqz v3, :L63
    iget-object v7, v15, Lcom/alibaba/fastjson/parser/ParseContext;->object:Ljava/lang/Object;
    goto :L70
    :L63
    new-instance v3, Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;
    invoke-direct { v3, v15, v2 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;-><init>(Lcom/alibaba/fastjson/parser/ParseContext;Ljava/lang/String;)V
    invoke-virtual { v1, v3 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->addResolveTask(Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;)V
    iput v11, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->resolveStatus:I
    goto :L69
    :L64
    const-string v3, "$"
    invoke-virtual { v3, v2 }, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    move-result v3
    if-eqz v3, :L68
    move-object v3, v15
    :L65
    iget-object v5, v3, Lcom/alibaba/fastjson/parser/ParseContext;->parent:Lcom/alibaba/fastjson/parser/ParseContext;
    if-eqz v5, :L66
    iget-object v3, v3, Lcom/alibaba/fastjson/parser/ParseContext;->parent:Lcom/alibaba/fastjson/parser/ParseContext;
    goto :L65
    :L66
    iget-object v5, v3, Lcom/alibaba/fastjson/parser/ParseContext;->object:Ljava/lang/Object;
    if-eqz v5, :L67
    iget-object v2, v3, Lcom/alibaba/fastjson/parser/ParseContext;->object:Ljava/lang/Object;
    move-object v7, v2
    goto :L70
    :L67
    new-instance v5, Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;
    invoke-direct { v5, v3, v2 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;-><init>(Lcom/alibaba/fastjson/parser/ParseContext;Ljava/lang/String;)V
    invoke-virtual { v1, v5 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->addResolveTask(Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;)V
    iput v11, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->resolveStatus:I
    goto :L69
    :L68
    new-instance v3, Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;
    invoke-direct { v3, v15, v2 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;-><init>(Lcom/alibaba/fastjson/parser/ParseContext;Ljava/lang/String;)V
    invoke-virtual { v1, v3 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->addResolveTask(Lcom/alibaba/fastjson/parser/DefaultJSONParser$ResolveTask;)V
    iput v11, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->resolveStatus:I
    :L69
    const/4 v7, 0
    :L70
    iget v2, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    if-eq v2, v9, :L71
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "syntax error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L71
    const/16 v2, 16
    invoke-virtual { v4, v2 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    :L72
    if-nez v14, :L73
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L73
    return-object v7
    :L74
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "illegal ref, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    iget v4, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    invoke-static { v4 }, Lcom/alibaba/fastjson/parser/JSONToken;->name(I)Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L75
    if-nez v14, :L77
    if-nez v16, :L77
    iget-object v7, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    invoke-virtual { v1, v7, v2, v3 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->setContext(Lcom/alibaba/fastjson/parser/ParseContext;Ljava/lang/Object;Ljava/lang/Object;)Lcom/alibaba/fastjson/parser/ParseContext;
    move-result-object v7
    if-nez v15, :L76
    move-object v15, v7
    :L76
    move/from16 v16, v11
    :L77
    const/16 v7, 34
    if-ne v10, v7, :L81
    invoke-virtual { v4, v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanStringValue(C)Ljava/lang/String;
    move-result-object v6
    if-eqz v13, :L79
    new-instance v7, Lcom/alibaba/fastjson/parser/JSONLexer;
    invoke-direct { v7, v6 }, Lcom/alibaba/fastjson/parser/JSONLexer;-><init>(Ljava/lang/String;)V
    invoke-virtual { v7, v11 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanISO8601DateIfMatch(Z)Z
    move-result v10
    if-eqz v10, :L78
    iget-object v6, v7, Lcom/alibaba/fastjson/parser/JSONLexer;->calendar:Ljava/util/Calendar;
    invoke-virtual { v6 }, Ljava/util/Calendar;->getTime()Ljava/util/Date;
    move-result-object v6
    :L78
    invoke-virtual { v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->close()V
    :L79
    if-eqz v5, :L80
    invoke-interface { v5, v8, v6 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    goto/16 :L119
    :L80
    invoke-interface { v2, v8, v6 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    goto/16 :L119
    :L81
    const/16 v7, 48
    if-lt v10, v7, :L82
    const/16 v7, 57
    if-le v10, v7, :L83
    :L82
    const/16 v7, 45
    if-ne v10, v7, :L84
    :L83
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->scanNumberValue()Ljava/lang/Number;
    move-result-object v6
    invoke-interface { v2, v8, v6 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    goto/16 :L119
    :L84
    const/16 v7, 91
    if-ne v10, v7, :L96
    const/16 v6, 14
    iput v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    add-int/2addr v6, v11
    iput v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v6, v7, :L85
    const/16 v10, 26
    goto :L86
    :L85
    iget-object v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v7, v6 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L86
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    new-instance v6, Ljava/util/ArrayList;
    invoke-direct { v6 }, Ljava/util/ArrayList;-><init>()V
    if-eqz v3, :L87
    invoke-virtual/range { p2 .. p2 }, Ljava/lang/Object;->getClass()Ljava/lang/Class;
    move-result-object v7
    const-class v10, Ljava/lang/Integer;
    if-ne v7, v10, :L87
    move v7, v11
    goto :L88
    :L87
    const/4 v7, 0
    :L88
    if-nez v7, :L89
    invoke-virtual { v1, v15 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->setContext(Lcom/alibaba/fastjson/parser/ParseContext;)V
    :L89
    invoke-virtual { v1, v6, v8 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseArray(Ljava/util/Collection;Ljava/lang/Object;)V
    new-instance v7, Lcom/alibaba/fastjson/JSONArray;
    invoke-direct { v7, v6 }, Lcom/alibaba/fastjson/JSONArray;-><init>(Ljava/util/List;)V
    if-eqz v5, :L90
    invoke-interface { v5, v8, v7 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    goto :L91
    :L90
    invoke-interface { v2, v8, v7 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    :L91
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    if-ne v6, v9, :L94
    const/16 v7, 16
    invoke-virtual { v4, v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    :L92
    if-nez v14, :L93
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L93
    return-object v2
    :L94
    const/16 v7, 16
    if-ne v6, v7, :L95
    move v8, v7
    move v7, v11
    const/4 v6, 0
    goto/16 :L145
    :L95
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "syntax error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L96
    const/16 v7, 123
    if-ne v10, v7, :L117
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    add-int/2addr v6, v11
    iput v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v6, v7, :L97
    const/16 v10, 26
    goto :L98
    :L97
    iget-object v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v7, v6 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L98
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/16 v7, 12
    iput v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    instance-of v6, v3, Ljava/lang/Integer;
    iget v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->features:I
    sget-object v7, Lcom/alibaba/fastjson/parser/Feature;->OrderedField:Lcom/alibaba/fastjson/parser/Feature;
    iget v7, v7, Lcom/alibaba/fastjson/parser/Feature;->mask:I
    and-int/2addr v7, v10
    if-eqz v7, :L99
    new-instance v7, Lcom/alibaba/fastjson/JSONObject;
    new-instance v10, Ljava/util/LinkedHashMap;
    invoke-direct { v10 }, Ljava/util/LinkedHashMap;-><init>()V
    invoke-direct { v7, v10 }, Lcom/alibaba/fastjson/JSONObject;-><init>(Ljava/util/Map;)V
    goto :L100
    :L99
    new-instance v7, Lcom/alibaba/fastjson/JSONObject;
    invoke-direct { v7 }, Lcom/alibaba/fastjson/JSONObject;-><init>()V
    :L100
    if-nez v14, :L101
    if-nez v6, :L101
    invoke-virtual { v1, v15, v7, v8 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->setContext(Lcom/alibaba/fastjson/parser/ParseContext;Ljava/lang/Object;Ljava/lang/Object;)Lcom/alibaba/fastjson/parser/ParseContext;
    move-result-object v10
    goto :L102
    :L101
    const/4 v10, 0
    :L102
    iget-object v9, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->fieldTypeResolver:Lcom/alibaba/fastjson/parser/deserializer/FieldTypeResolver;
    if-eqz v9, :L105
    if-eqz v8, :L103
    invoke-virtual { v8 }, Ljava/lang/Object;->toString()Ljava/lang/String;
    move-result-object v9
    goto :L104
    :L103
    const/4 v9, 0
    :L104
    iget-object v11, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->fieldTypeResolver:Lcom/alibaba/fastjson/parser/deserializer/FieldTypeResolver;
    invoke-interface { v11, v2, v9 }, Lcom/alibaba/fastjson/parser/deserializer/FieldTypeResolver;->resolve(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/reflect/Type;
    move-result-object v9
    if-eqz v9, :L105
    iget-object v11, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->config:Lcom/alibaba/fastjson/parser/ParserConfig;
    invoke-virtual { v11, v9 }, Lcom/alibaba/fastjson/parser/ParserConfig;->getDeserializer(Ljava/lang/reflect/Type;)Lcom/alibaba/fastjson/parser/deserializer/ObjectDeserializer;
    move-result-object v11
    invoke-interface { v11, v1, v9, v8 }, Lcom/alibaba/fastjson/parser/deserializer/ObjectDeserializer;->deserialze(Lcom/alibaba/fastjson/parser/DefaultJSONParser;Ljava/lang/reflect/Type;Ljava/lang/Object;)Ljava/lang/Object;
    move-result-object v9
    move-object v11, v9
    const/4 v9, 1
    goto :L106
    :L105
    const/4 v9, 0
    const/4 v11, 0
    :L106
    if-nez v9, :L107
    invoke-virtual { v1, v7, v8 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseObject(Ljava/util/Map;Ljava/lang/Object;)Ljava/lang/Object;
    move-result-object v11
    :L107
    if-eqz v10, :L108
    if-eq v7, v11, :L108
    iput-object v2, v10, Lcom/alibaba/fastjson/parser/ParseContext;->object:Ljava/lang/Object;
    :L108
    iget v7, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->resolveStatus:I
    const/4 v9, 1
    if-ne v7, v9, :L109
    invoke-virtual { v8 }, Ljava/lang/Object;->toString()Ljava/lang/String;
    move-result-object v7
    invoke-virtual { v1, v2, v7 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->checkMapResolve(Ljava/util/Map;Ljava/lang/Object;)V
    :L109
    if-eqz v5, :L110
    invoke-interface { v5, v8, v11 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    goto :L111
    :L110
    invoke-interface { v2, v8, v11 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    :L111
    if-eqz v6, :L112
    invoke-virtual { v1, v15, v11, v8 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->setContext(Lcom/alibaba/fastjson/parser/ParseContext;Ljava/lang/Object;Ljava/lang/Object;)Lcom/alibaba/fastjson/parser/ParseContext;
    :L112
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    const/16 v7, 13
    if-ne v6, v7, :L115
    const/16 v7, 16
    invoke-virtual { v4, v7 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    if-nez v14, :L113
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L113
    if-nez v14, :L114
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L114
    return-object v2
    :L115
    const/16 v7, 16
    if-ne v6, v7, :L116
    move v8, v7
    const/4 v6, 0
    const/4 v7, 1
    goto/16 :L145
    :L116
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "syntax error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L117
    const/16 v7, 116
    if-ne v10, v7, :L118
    iget-object v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    const-string v7, "true"
    iget v9, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    invoke-virtual { v6, v7, v9 }, Ljava/lang/String;->startsWith(Ljava/lang/String;I)Z
    move-result v6
    if-eqz v6, :L119
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    add-int/lit8 v6, v6, 3
    iput v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->next()C
    sget-object v6, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean;
    invoke-interface { v2, v8, v6 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    goto :L119
    :L118
    const/16 v7, 102
    if-ne v10, v7, :L139
    iget-object v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    const-string v9, "false"
    iget v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    invoke-virtual { v7, v9, v10 }, Ljava/lang/String;->startsWith(Ljava/lang/String;I)Z
    move-result v7
    if-eqz v7, :L119
    iget v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    add-int/2addr v7, v6
    iput v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->next()C
    sget-object v6, Ljava/lang/Boolean;->FALSE:Ljava/lang/Boolean;
    invoke-interface { v2, v8, v6 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    :L119
    iget-char v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/16 v7, 44
    if-eq v6, v7, :L120
    const/16 v7, 125
    if-eq v6, v7, :L120
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->skipWhitespace()V
    iget-char v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    :L120
    const/16 v7, 44
    if-ne v6, v7, :L123
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    const/4 v7, 1
    add-int/2addr v6, v7
    iput v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v6, v7, :L121
    const/16 v10, 26
    goto :L122
    :L121
    iget-object v7, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v7, v6 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L122
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/4 v6, 0
    const/4 v7, 1
    const/16 v8, 16
    goto/16 :L145
    :L123
    const/16 v5, 125
    if-ne v6, v5, :L138
    iget v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    const/4 v6, 1
    add-int/2addr v5, v6
    iput v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v5, v6, :L124
    const/16 v10, 26
    goto :L125
    :L124
    iget-object v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v6, v5 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L125
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/4 v6, 0
    iput v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->sp:I
    const/16 v5, 44
    if-ne v10, v5, :L128
    iget v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    const/4 v6, 1
    add-int/2addr v5, v6
    iput v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v5, v6, :L126
    const/16 v10, 26
    goto :L127
    :L126
    iget-object v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v6, v5 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L127
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/16 v5, 16
    iput v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    goto :L135
    :L128
    const/16 v5, 125
    if-ne v10, v5, :L131
    iget v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    const/4 v6, 1
    add-int/2addr v5, v6
    iput v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v5, v6, :L129
    const/16 v10, 26
    goto :L130
    :L129
    iget-object v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v6, v5 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L130
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/16 v5, 13
    iput v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    goto :L135
    :L131
    const/16 v5, 93
    if-ne v10, v5, :L134
    iget v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    const/4 v7, 1
    add-int/2addr v5, v7
    iput v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->bp:I
    iget v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->len:I
    if-lt v5, v6, :L132
    const/16 v10, 26
    goto :L133
    :L132
    iget-object v6, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->text:Ljava/lang/String;
    invoke-virtual { v6, v5 }, Ljava/lang/String;->charAt(I)C
    move-result v10
    :L133
    iput-char v10, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->ch:C
    const/16 v5, 15
    iput v5, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    goto :L135
    :L134
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken()V
    :L135
    if-nez v14, :L136
    iget-object v4, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    invoke-virtual { v1, v4, v2, v3 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->setContext(Lcom/alibaba/fastjson/parser/ParseContext;Ljava/lang/Object;Ljava/lang/Object;)Lcom/alibaba/fastjson/parser/ParseContext;
    :L136
    if-nez v14, :L137
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L137
    return-object v2
    :L138
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "syntax error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L139
    const/4 v6, 0
    const/4 v7, 1
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken()V
    invoke-virtual/range { p0 .. p0 }, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parse()Ljava/lang/Object;
    move-result-object v9
    invoke-virtual/range { p1 .. p1 }, Ljava/lang/Object;->getClass()Ljava/lang/Class;
    move-result-object v10
    const-class v11, Lcom/alibaba/fastjson/JSONObject;
    if-ne v10, v11, :L140
    invoke-virtual { v8 }, Ljava/lang/Object;->toString()Ljava/lang/String;
    move-result-object v8
    :L140
    invoke-interface { v2, v8, v9 }, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    iget v8, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    const/16 v9, 13
    if-ne v8, v9, :L143
    const/16 v8, 16
    invoke-virtual { v4, v8 }, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken(I)V
    :L141
    if-nez v14, :L142
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L142
    return-object v2
    :L143
    const/16 v8, 16
    :L144
    iget v9, v4, Lcom/alibaba/fastjson/parser/JSONLexer;->token:I
    if-ne v9, v8, :L146
    :L145
    move v11, v7
    move v9, v8
    const/16 v6, 8
    const/16 v8, 12
    goto/16 :L6
    :L146
    new-instance v2, Lcom/alibaba/fastjson/JSONException;
    new-instance v3, Ljava/lang/StringBuilder;
    invoke-direct { v3 }, Ljava/lang/StringBuilder;-><init>()V
    const-string v5, "syntax error, "
    invoke-virtual { v3, v5 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v4 }, Lcom/alibaba/fastjson/parser/JSONLexer;->info()Ljava/lang/String;
    move-result-object v4
    invoke-virtual { v3, v4 }, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual { v3 }, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v3
    invoke-direct { v2, v3 }, Lcom/alibaba/fastjson/JSONException;-><init>(Ljava/lang/String;)V
    throw v2
    :L147
    move-exception v0
    move-object v2, v0
    if-nez v14, :L148
    iput-object v15, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->contex:Lcom/alibaba/fastjson/parser/ParseContext;
    :L148
    throw v2
.end method
