ciw.smali

.class public Ldxoptimizer/ciw;
.super Ljava/lang/Object;
.source "PropertyValuesHolder.java"

# interfaces
.implements Ljava/lang/Cloneable;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Ldxoptimizer/ciw$a;,
        Ldxoptimizer/ciw$b;
    }
.end annotation


# static fields
.field private static final i:Ldxoptimizer/cix;

.field private static final j:Ldxoptimizer/cix;

.field private static k:[Ljava/lang/Class;

.field private static l:[Ljava/lang/Class;

.field private static m:[Ljava/lang/Class;

.field private static final n:Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/Class;",
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/String;",
            "Ljava/lang/reflect/Method;",
            ">;>;"
        }
    .end annotation
.end field

.field private static final o:Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/Class;",
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/String;",
            "Ljava/lang/reflect/Method;",
            ">;>;"
        }
    .end annotation
.end field


# instance fields
.field a:Ljava/lang/String;

.field protected b:Ldxoptimizer/cjb;

.field c:Ljava/lang/reflect/Method;

.field d:Ljava/lang/Class;

.field e:Ldxoptimizer/cit;

.field final f:Ljava/util/concurrent/locks/ReentrantReadWriteLock;

.field final g:[Ljava/lang/Object;

.field private h:Ljava/lang/reflect/Method;

.field private p:Ldxoptimizer/cix;

.field private q:Ljava/lang/Object;


# direct methods
.method static constructor <clinit>()V
    .registers 8

    .prologue
    const/4 v7, 0x4

    const/4 v6, 0x3

    const/4 v5, 0x2

    const/4 v4, 0x1

    const/4 v3, 0x0

    .line 80
    new-instance v0, Ldxoptimizer/ciq;

    invoke-direct {v0}, Ldxoptimizer/ciq;-><init>()V

    sput-object v0, Ldxoptimizer/ciw;->i:Ldxoptimizer/cix;

    .line 81
    new-instance v0, Ldxoptimizer/cio;

    invoke-direct {v0}, Ldxoptimizer/cio;-><init>()V

    sput-object v0, Ldxoptimizer/ciw;->j:Ldxoptimizer/cix;

    .line 90
    const/4 v0, 0x6

    new-array v0, v0, [Ljava/lang/Class;

    sget-object v1, Ljava/lang/Float;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v3

    const-class v1, Ljava/lang/Float;

    aput-object v1, v0, v4

    sget-object v1, Ljava/lang/Double;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v5

    sget-object v1, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v6

    .line 91
    const-class v1, Ljava/lang/Double;

    aput-object v1, v0, v7

    const/4 v1, 0x5

    const-class v2, Ljava/lang/Integer;

    aput-object v2, v0, v1

    .line 90
    sput-object v0, Ldxoptimizer/ciw;->k:[Ljava/lang/Class;

    .line 92
    const/4 v0, 0x6

    new-array v0, v0, [Ljava/lang/Class;

    sget-object v1, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v3

    const-class v1, Ljava/lang/Integer;

    aput-object v1, v0, v4

    sget-object v1, Ljava/lang/Float;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v5

    sget-object v1, Ljava/lang/Double;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v6

    .line 93
    const-class v1, Ljava/lang/Float;

    aput-object v1, v0, v7

    const/4 v1, 0x5

    const-class v2, Ljava/lang/Double;

    aput-object v2, v0, v1

    .line 92
    sput-object v0, Ldxoptimizer/ciw;->l:[Ljava/lang/Class;

    .line 94
    const/4 v0, 0x6

    new-array v0, v0, [Ljava/lang/Class;

    sget-object v1, Ljava/lang/Double;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v3

    const-class v1, Ljava/lang/Double;

    aput-object v1, v0, v4

    sget-object v1, Ljava/lang/Float;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v5

    sget-object v1, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    aput-object v1, v0, v6

    .line 95
    const-class v1, Ljava/lang/Float;

    aput-object v1, v0, v7

    const/4 v1, 0x5

    const-class v2, Ljava/lang/Integer;

    aput-object v2, v0, v1

    .line 94
    sput-object v0, Ldxoptimizer/ciw;->m:[Ljava/lang/Class;

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

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

    .line 100
    sput-object v0, Ldxoptimizer/ciw;->n:Ljava/util/HashMap;

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

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

    .line 102
    sput-object v0, Ldxoptimizer/ciw;->o:Ljava/util/HashMap;

    .line 36
    return-void
.end method

.method private constructor <init>(Ldxoptimizer/cjb;)V
    .registers 3

    .prologue
    const/4 v0, 0x0

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

    .line 56
    iput-object v0, p0, Ldxoptimizer/ciw;->c:Ljava/lang/reflect/Method;

    .line 65
    iput-object v0, p0, Ldxoptimizer/ciw;->h:Ljava/lang/reflect/Method;

    .line 76
    iput-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    .line 107
    new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock;

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

    iput-object v0, p0, Ldxoptimizer/ciw;->f:Ljava/util/concurrent/locks/ReentrantReadWriteLock;

    .line 110
    const/4 v0, 0x1

    new-array v0, v0, [Ljava/lang/Object;

    iput-object v0, p0, Ldxoptimizer/ciw;->g:[Ljava/lang/Object;

    .line 140
    iput-object p1, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    .line 141
    if-eqz p1, :cond_20

    .line 142
    invoke-virtual {p1}, Ldxoptimizer/cjb;->a()Ljava/lang/String;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    .line 144
    :cond_20
    return-void
.end method

.method synthetic constructor <init>(Ldxoptimizer/cjb;Ldxoptimizer/ciw;)V
    .registers 3

    .prologue
    .line 139
    invoke-direct {p0, p1}, Ldxoptimizer/ciw;-><init>(Ldxoptimizer/cjb;)V

    return-void
.end method

.method private constructor <init>(Ljava/lang/String;)V
    .registers 3

    .prologue
    const/4 v0, 0x0

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

    .line 56
    iput-object v0, p0, Ldxoptimizer/ciw;->c:Ljava/lang/reflect/Method;

    .line 65
    iput-object v0, p0, Ldxoptimizer/ciw;->h:Ljava/lang/reflect/Method;

    .line 76
    iput-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    .line 107
    new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock;

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

    iput-object v0, p0, Ldxoptimizer/ciw;->f:Ljava/util/concurrent/locks/ReentrantReadWriteLock;

    .line 110
    const/4 v0, 0x1

    new-array v0, v0, [Ljava/lang/Object;

    iput-object v0, p0, Ldxoptimizer/ciw;->g:[Ljava/lang/Object;

    .line 132
    iput-object p1, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    .line 133
    return-void
.end method

.method synthetic constructor <init>(Ljava/lang/String;Ldxoptimizer/ciw;)V
    .registers 3

    .prologue
    .line 131
    invoke-direct {p0, p1}, Ldxoptimizer/ciw;-><init>(Ljava/lang/String;)V

    return-void
.end method

.method public static varargs a(Ldxoptimizer/cjb;Ldxoptimizer/cix;[Ljava/lang/Object;)Ldxoptimizer/ciw;
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "<V:",
            "Ljava/lang/Object;",
            ">(",
            "Ldxoptimizer/cjb;",
            "Ldxoptimizer/cix",
            "<TV;>;[TV;)",
            "Ldxoptimizer/ciw;"
        }
    .end annotation

    .prologue
    .line 224
    new-instance v0, Ldxoptimizer/ciw;

    invoke-direct {v0, p0}, Ldxoptimizer/ciw;-><init>(Ldxoptimizer/cjb;)V

    .line 225
    invoke-virtual {v0, p2}, Ldxoptimizer/ciw;->a([Ljava/lang/Object;)V

    .line 226
    invoke-virtual {v0, p1}, Ldxoptimizer/ciw;->a(Ldxoptimizer/cix;)V

    .line 227
    return-object v0
.end method

.method public static varargs a(Ldxoptimizer/cjb;[F)Ldxoptimizer/ciw;
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ldxoptimizer/cjb",
            "<*",
            "Ljava/lang/Float;",
            ">;[F)",
            "Ldxoptimizer/ciw;"
        }
    .end annotation

    .prologue
    .line 187
    new-instance v0, Ldxoptimizer/ciw$a;

    invoke-direct {v0, p0, p1}, Ldxoptimizer/ciw$a;-><init>(Ldxoptimizer/cjb;[F)V

    return-object v0
.end method

.method public static varargs a(Ldxoptimizer/cjb;[I)Ldxoptimizer/ciw;
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ldxoptimizer/cjb",
            "<*",
            "Ljava/lang/Integer;",
            ">;[I)",
            "Ldxoptimizer/ciw;"
        }
    .end annotation

    .prologue
    .line 165
    new-instance v0, Ldxoptimizer/ciw$b;

    invoke-direct {v0, p0, p1}, Ldxoptimizer/ciw$b;-><init>(Ldxoptimizer/cjb;[I)V

    return-object v0
.end method

.method public static varargs a(Ljava/lang/String;Ldxoptimizer/cix;[Ljava/lang/Object;)Ldxoptimizer/ciw;
    .registers 4

    .prologue
    .line 204
    new-instance v0, Ldxoptimizer/ciw;

    invoke-direct {v0, p0}, Ldxoptimizer/ciw;-><init>(Ljava/lang/String;)V

    .line 205
    invoke-virtual {v0, p2}, Ldxoptimizer/ciw;->a([Ljava/lang/Object;)V

    .line 206
    invoke-virtual {v0, p1}, Ldxoptimizer/ciw;->a(Ldxoptimizer/cix;)V

    .line 207
    return-object v0
.end method

.method public static varargs a(Ljava/lang/String;[F)Ldxoptimizer/ciw;
    .registers 3

    .prologue
    .line 176
    new-instance v0, Ldxoptimizer/ciw$a;

    invoke-direct {v0, p0, p1}, Ldxoptimizer/ciw$a;-><init>(Ljava/lang/String;[F)V

    return-object v0
.end method

.method public static varargs a(Ljava/lang/String;[I)Ldxoptimizer/ciw;
    .registers 3

    .prologue
    .line 154
    new-instance v0, Ldxoptimizer/ciw$b;

    invoke-direct {v0, p0, p1}, Ldxoptimizer/ciw$b;-><init>(Ljava/lang/String;[I)V

    return-object v0
.end method

.method public static varargs a(Ljava/lang/String;[Ldxoptimizer/cis;)Ldxoptimizer/ciw;
    .registers 4

    .prologue
    .line 250
    invoke-static {p1}, Ldxoptimizer/cit;->a([Ldxoptimizer/cis;)Ldxoptimizer/cit;

    move-result-object v0

    .line 251
    instance-of v1, v0, Ldxoptimizer/cir;

    if-eqz v1, :cond_11

    .line 252
    new-instance v1, Ldxoptimizer/ciw$b;

    check-cast v0, Ldxoptimizer/cir;

    invoke-direct {v1, p0, v0}, Ldxoptimizer/ciw$b;-><init>(Ljava/lang/String;Ldxoptimizer/cir;)V

    move-object v0, v1

    .line 260
    :goto_10
    return-object v0

    .line 253
    :cond_11
    instance-of v1, v0, Ldxoptimizer/cip;

    if-eqz v1, :cond_1e

    .line 254
    new-instance v1, Ldxoptimizer/ciw$a;

    check-cast v0, Ldxoptimizer/cip;

    invoke-direct {v1, p0, v0}, Ldxoptimizer/ciw$a;-><init>(Ljava/lang/String;Ldxoptimizer/cip;)V

    move-object v0, v1

    goto :goto_10

    .line 257
    :cond_1e
    new-instance v1, Ldxoptimizer/ciw;

    invoke-direct {v1, p0}, Ldxoptimizer/ciw;-><init>(Ljava/lang/String;)V

    .line 258
    iput-object v0, v1, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    .line 259
    const/4 v0, 0x0

    aget-object v0, p1, v0

    invoke-virtual {v0}, Ldxoptimizer/cis;->e()Ljava/lang/Class;

    move-result-object v0

    iput-object v0, v1, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    move-object v0, v1

    .line 260
    goto :goto_10
.end method

.method static a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    .registers 6

    .prologue
    .line 744
    if-eqz p1, :cond_8

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

    move-result v0

    if-nez v0, :cond_9

    .line 750
    :cond_8
    :goto_8
    return-object p0

    .line 748
    :cond_9
    const/4 v0, 0x0

    invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C

    move-result v0

    invoke-static {v0}, Ljava/lang/Character;->toUpperCase(C)C

    move-result v0

    .line 749
    const/4 v1, 0x1

    invoke-virtual {p1, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;

    move-result-object v1

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

    invoke-static {p0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v3

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

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

    move-result-object v0

    invoke-virtual {v0, v1}, 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 p0

    goto :goto_8
.end method

.method private a(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
    .registers 13

    .prologue
    const/4 v1, 0x0

    const/4 v3, 0x0

    const/4 v6, 0x1

    .line 381
    .line 382
    iget-object v0, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    invoke-static {p2, v0}, Ldxoptimizer/ciw;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    move-object v0, v1

    .line 383
    check-cast v0, [Ljava/lang/Class;

    .line 384
    if-nez p3, :cond_3f

    .line 386
    :try_start_e
    invoke-virtual {p1, v4, v0}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
    :try_end_11
    .catch Ljava/lang/NoSuchMethodException; {:try_start_e .. :try_end_11} :catch_13

    move-result-object v0

    .line 440
    :goto_12
    return-object v0

    .line 387
    :catch_13
    move-exception v2

    .line 392
    :try_start_14
    invoke-virtual {p1, v4, v0}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
    :try_end_17
    .catch Ljava/lang/NoSuchMethodException; {:try_start_14 .. :try_end_17} :catch_b5

    move-result-object v0

    .line 393
    const/4 v1, 0x1

    :try_start_19
    invoke-virtual {v0, v1}, Ljava/lang/reflect/Method;->setAccessible(Z)V
    :try_end_1c
    .catch Ljava/lang/NoSuchMethodException; {:try_start_19 .. :try_end_1c} :catch_1d

    goto :goto_12

    .line 394
    :catch_1d
    move-exception v1

    .line 395
    :goto_1e
    const-string v1, "PropertyValuesHolder"

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

    const-string v4, "Couldn\'t find no-arg method for property "

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

    iget-object v4, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

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

    move-result-object v3

    const-string v4, ": "

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

    move-result-object v3

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

    move-result-object v2

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

    move-result-object v2

    .line 395
    invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_12

    .line 400
    :cond_3f
    new-array v5, v6, [Ljava/lang/Class;

    .line 402
    iget-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    const-class v2, Ljava/lang/Float;

    invoke-virtual {v0, v2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_75

    .line 403
    sget-object v0, Ldxoptimizer/ciw;->k:[Ljava/lang/Class;

    .line 412
    :goto_4d
    array-length v6, v0

    move v2, v3

    :goto_4f
    if-lt v2, v6, :cond_96

    .line 435
    const-string v0, "PropertyValuesHolder"

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

    const-string v3, "Couldn\'t find setter/getter for property "

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

    iget-object v3, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

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

    move-result-object v2

    .line 437
    const-string v3, " with value type "

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

    move-result-object v2

    iget-object v3, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

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

    move-result-object v2

    .line 436
    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    .line 435
    invoke-static {v0, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    move-object v0, v1

    goto :goto_12

    .line 404
    :cond_75
    iget-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    const-class v2, Ljava/lang/Integer;

    invoke-virtual {v0, v2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_82

    .line 405
    sget-object v0, Ldxoptimizer/ciw;->l:[Ljava/lang/Class;

    goto :goto_4d

    .line 406
    :cond_82
    iget-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    const-class v2, Ljava/lang/Double;

    invoke-virtual {v0, v2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_8f

    .line 407
    sget-object v0, Ldxoptimizer/ciw;->m:[Ljava/lang/Class;

    goto :goto_4d

    .line 409
    :cond_8f
    new-array v0, v6, [Ljava/lang/Class;

    .line 410
    iget-object v2, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    aput-object v2, v0, v3

    goto :goto_4d

    .line 412
    :cond_96
    aget-object v7, v0, v2

    .line 413
    aput-object v7, v5, v3

    .line 415
    :try_start_9a
    invoke-virtual {p1, v4, v5}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v1

    .line 417
    iput-object v7, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;
    :try_end_a0
    .catch Ljava/lang/NoSuchMethodException; {:try_start_9a .. :try_end_a0} :catch_a3

    move-object v0, v1

    .line 418
    goto/16 :goto_12

    .line 419
    :catch_a3
    move-exception v8

    .line 424
    :try_start_a4
    invoke-virtual {p1, v4, v5}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v1

    .line 425
    const/4 v8, 0x1

    invoke-virtual {v1, v8}, Ljava/lang/reflect/Method;->setAccessible(Z)V

    .line 427
    iput-object v7, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;
    :try_end_ae
    .catch Ljava/lang/NoSuchMethodException; {:try_start_a4 .. :try_end_ae} :catch_b1

    move-object v0, v1

    .line 428
    goto/16 :goto_12

    .line 429
    :catch_b1
    move-exception v7

    .line 412
    add-int/lit8 v2, v2, 0x1

    goto :goto_4f

    .line 394
    :catch_b5
    move-exception v0

    move-object v0, v1

    goto/16 :goto_1e
.end method

.method private a(Ljava/lang/Class;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;
    .registers 8
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/Class;",
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/Class;",
            "Ljava/util/HashMap",
            "<",
            "Ljava/lang/String;",
            "Ljava/lang/reflect/Method;",
            ">;>;",
            "Ljava/lang/String;",
            "Ljava/lang/Class;",
            ")",
            "Ljava/lang/reflect/Method;"
        }
    .end annotation

    .prologue
    .line 457
    const/4 v1, 0x0

    .line 462
    :try_start_1
    iget-object v0, p0, Ldxoptimizer/ciw;->f:Ljava/util/concurrent/locks/ReentrantReadWriteLock;

    invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;

    move-result-object v0

    invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->lock()V

    .line 463
    invoke-virtual {p2, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/HashMap;

    .line 464
    if-eqz v0, :cond_1a

    .line 465
    iget-object v1, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

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

    move-result-object v1

    check-cast v1, Ljava/lang/reflect/Method;

    .line 467
    :cond_1a
    if-nez v1, :cond_45

    .line 468
    invoke-direct {p0, p1, p3, p4}, Ldxoptimizer/ciw;->a(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v1

    .line 469
    if-nez v0, :cond_2a

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

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

    .line 471
    invoke-virtual {p2, p1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 473
    :cond_2a
    iget-object v2, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    invoke-virtual {v0, v2, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    :try_end_2f
    .catchall {:try_start_1 .. :try_end_2f} :catchall_3a

    move-object v0, v1

    .line 476
    :goto_30
    iget-object v1, p0, Ldxoptimizer/ciw;->f:Ljava/util/concurrent/locks/ReentrantReadWriteLock;

    invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;

    move-result-object v1

    invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V

    .line 478
    return-object v0

    .line 475
    :catchall_3a
    move-exception v0

    .line 476
    iget-object v1, p0, Ldxoptimizer/ciw;->f:Ljava/util/concurrent/locks/ReentrantReadWriteLock;

    invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;

    move-result-object v1

    invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V

    .line 477
    throw v0

    :cond_45
    move-object v0, v1

    goto :goto_30
.end method

.method private b(Ljava/lang/Class;)V
    .registers 5

    .prologue
    .line 493
    sget-object v0, Ldxoptimizer/ciw;->o:Ljava/util/HashMap;

    const-string v1, "get"

    const/4 v2, 0x0

    invoke-direct {p0, p1, v0, v1, v2}, Ldxoptimizer/ciw;->a(Ljava/lang/Class;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->h:Ljava/lang/reflect/Method;

    .line 494
    return-void
.end method


# virtual methods
.method public a()Ldxoptimizer/ciw;
    .registers 3

    .prologue
    .line 594
    :try_start_0
    invoke-super {p0}, Ljava/lang/Object;->clone()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ldxoptimizer/ciw;

    .line 595
    iget-object v1, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    iput-object v1, v0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    .line 596
    iget-object v1, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    iput-object v1, v0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    .line 597
    iget-object v1, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    invoke-virtual {v1}, Ldxoptimizer/cit;->b()Ldxoptimizer/cit;

    move-result-object v1

    iput-object v1, v0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    .line 598
    iget-object v1, p0, Ldxoptimizer/ciw;->p:Ldxoptimizer/cix;

    iput-object v1, v0, Ldxoptimizer/ciw;->p:Ldxoptimizer/cix;
    :try_end_1a
    .catch Ljava/lang/CloneNotSupportedException; {:try_start_0 .. :try_end_1a} :catch_1b

    .line 602
    :goto_1a
    return-object v0

    .line 600
    :catch_1b
    move-exception v0

    .line 602
    const/4 v0, 0x0

    goto :goto_1a
.end method

.method a(F)V
    .registers 3

    .prologue
    .line 670
    iget-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    invoke-virtual {v0, p1}, Ldxoptimizer/cit;->a(F)Ljava/lang/Object;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->q:Ljava/lang/Object;

    .line 671
    return-void
.end method

.method public a(Ldxoptimizer/cix;)V
    .registers 3

    .prologue
    .line 659
    iput-object p1, p0, Ldxoptimizer/ciw;->p:Ldxoptimizer/cix;

    .line 660
    iget-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    invoke-virtual {v0, p1}, Ldxoptimizer/cit;->a(Ldxoptimizer/cix;)V

    .line 661
    return-void
.end method

.method public a(Ldxoptimizer/cjb;)V
    .registers 2

    .prologue
    .line 701
    iput-object p1, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    .line 702
    return-void
.end method

.method a(Ljava/lang/Class;)V
    .registers 5

    .prologue
    .line 486
    sget-object v0, Ldxoptimizer/ciw;->n:Ljava/util/HashMap;

    const-string v1, "set"

    iget-object v2, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    invoke-direct {p0, p1, v0, v1, v2}, Ldxoptimizer/ciw;->a(Ljava/lang/Class;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->c:Ljava/lang/reflect/Method;

    .line 487
    return-void
.end method

.method a(Ljava/lang/Object;)V
    .registers 7

    .prologue
    .line 507
    iget-object v0, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    if-eqz v0, :cond_5c

    .line 510
    :try_start_4
    iget-object v0, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    invoke-virtual {v0, p1}, Ldxoptimizer/cjb;->a(Ljava/lang/Object;)Ljava/lang/Object;

    .line 511
    iget-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    iget-object v0, v0, Ldxoptimizer/cit;->e:Ljava/util/ArrayList;

    invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;

    move-result-object v1

    :cond_11
    :goto_11
    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-nez v0, :cond_18

    .line 541
    :cond_17
    return-void

    .line 511
    :cond_18
    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ldxoptimizer/cis;

    .line 512
    invoke-virtual {v0}, Ldxoptimizer/cis;->a()Z

    move-result v2

    if-nez v2, :cond_11

    .line 513
    iget-object v2, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    invoke-virtual {v2, p1}, Ldxoptimizer/cjb;->a(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v2

    invoke-virtual {v0, v2}, Ldxoptimizer/cis;->a(Ljava/lang/Object;)V
    :try_end_2d
    .catch Ljava/lang/ClassCastException; {:try_start_4 .. :try_end_2d} :catch_2e

    goto :goto_11

    .line 517
    :catch_2e
    move-exception v0

    .line 518
    const-string v0, "PropertyValuesHolder"

    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "No such property ("

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

    iget-object v2, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    invoke-virtual {v2}, Ldxoptimizer/cjb;->a()Ljava/lang/String;

    move-result-object v2

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

    move-result-object v1

    .line 519
    const-string v2, ") on target object "

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

    move-result-object v1

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

    move-result-object v1

    const-string v2, ". Trying reflection instead"

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

    move-result-object v1

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

    move-result-object v1

    .line 518
    invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 520
    const/4 v0, 0x0

    iput-object v0, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    .line 523
    :cond_5c
    invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1

    .line 524
    iget-object v0, p0, Ldxoptimizer/ciw;->c:Ljava/lang/reflect/Method;

    if-nez v0, :cond_67

    .line 525
    invoke-virtual {p0, v1}, Ldxoptimizer/ciw;->a(Ljava/lang/Class;)V

    .line 527
    :cond_67
    iget-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    iget-object v0, v0, Ldxoptimizer/cit;->e:Ljava/util/ArrayList;

    invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;

    move-result-object v2

    :cond_6f
    :goto_6f
    invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_17

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

    move-result-object v0

    check-cast v0, Ldxoptimizer/cis;

    .line 528
    invoke-virtual {v0}, Ldxoptimizer/cis;->a()Z

    move-result v3

    if-nez v3, :cond_6f

    .line 529
    iget-object v3, p0, Ldxoptimizer/ciw;->h:Ljava/lang/reflect/Method;

    if-nez v3, :cond_88

    .line 530
    invoke-direct {p0, v1}, Ldxoptimizer/ciw;->b(Ljava/lang/Class;)V

    .line 533
    :cond_88
    :try_start_88
    iget-object v3, p0, Ldxoptimizer/ciw;->h:Ljava/lang/reflect/Method;

    const/4 v4, 0x0

    new-array v4, v4, [Ljava/lang/Object;

    invoke-virtual {v3, p1, v4}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v3

    invoke-virtual {v0, v3}, Ldxoptimizer/cis;->a(Ljava/lang/Object;)V
    :try_end_94
    .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_88 .. :try_end_94} :catch_95
    .catch Ljava/lang/IllegalAccessException; {:try_start_88 .. :try_end_94} :catch_a0

    goto :goto_6f

    .line 534
    :catch_95
    move-exception v0

    .line 535
    const-string v3, "PropertyValuesHolder"

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

    move-result-object v0

    invoke-static {v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_6f

    .line 536
    :catch_a0
    move-exception v0

    .line 537
    const-string v3, "PropertyValuesHolder"

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

    move-result-object v0

    invoke-static {v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_6f
.end method

.method public a(Ljava/lang/String;)V
    .registers 2

    .prologue
    .line 689
    iput-object p1, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    .line 690
    return-void
.end method

.method public varargs a([F)V
    .registers 3

    .prologue
    .line 327
    sget-object v0, Ljava/lang/Float;->TYPE:Ljava/lang/Class;

    iput-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    .line 328
    invoke-static {p1}, Ldxoptimizer/cit;->a([F)Ldxoptimizer/cit;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    .line 329
    return-void
.end method

.method public varargs a([I)V
    .registers 3

    .prologue
    .line 309
    sget-object v0, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    iput-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    .line 310
    invoke-static {p1}, Ldxoptimizer/cit;->a([I)Ldxoptimizer/cit;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    .line 311
    return-void
.end method

.method public varargs a([Ljava/lang/Object;)V
    .registers 3

    .prologue
    .line 360
    const/4 v0, 0x0

    aget-object v0, p1, v0

    invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    .line 361
    invoke-static {p1}, Ldxoptimizer/cit;->a([Ljava/lang/Object;)Ldxoptimizer/cit;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    .line 362
    return-void
.end method

.method b()V
    .registers 3

    .prologue
    .line 634
    iget-object v0, p0, Ldxoptimizer/ciw;->p:Ldxoptimizer/cix;

    if-nez v0, :cond_e

    .line 637
    iget-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    const-class v1, Ljava/lang/Integer;

    if-ne v0, v1, :cond_1a

    sget-object v0, Ldxoptimizer/ciw;->i:Ldxoptimizer/cix;

    :goto_c
    iput-object v0, p0, Ldxoptimizer/ciw;->p:Ldxoptimizer/cix;

    .line 641
    :cond_e
    iget-object v0, p0, Ldxoptimizer/ciw;->p:Ldxoptimizer/cix;

    if-eqz v0, :cond_19

    .line 644
    iget-object v0, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    iget-object v1, p0, Ldxoptimizer/ciw;->p:Ldxoptimizer/cix;

    invoke-virtual {v0, v1}, Ldxoptimizer/cit;->a(Ldxoptimizer/cix;)V

    .line 646
    :cond_19
    return-void

    .line 638
    :cond_1a
    iget-object v0, p0, Ldxoptimizer/ciw;->d:Ljava/lang/Class;

    const-class v1, Ljava/lang/Float;

    if-ne v0, v1, :cond_23

    sget-object v0, Ldxoptimizer/ciw;->j:Ldxoptimizer/cix;

    goto :goto_c

    .line 639
    :cond_23
    const/4 v0, 0x0

    goto :goto_c
.end method

.method b(Ljava/lang/Object;)V
    .registers 5

    .prologue
    .line 614
    iget-object v0, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    if-eqz v0, :cond_d

    .line 615
    iget-object v0, p0, Ldxoptimizer/ciw;->b:Ldxoptimizer/cjb;

    invoke-virtual {p0}, Ldxoptimizer/ciw;->d()Ljava/lang/Object;

    move-result-object v1

    invoke-virtual {v0, p1, v1}, Ldxoptimizer/cjb;->a(Ljava/lang/Object;Ljava/lang/Object;)V

    .line 617
    :cond_d
    iget-object v0, p0, Ldxoptimizer/ciw;->c:Ljava/lang/reflect/Method;

    if-eqz v0, :cond_21

    .line 619
    :try_start_11
    iget-object v0, p0, Ldxoptimizer/ciw;->g:[Ljava/lang/Object;

    const/4 v1, 0x0

    invoke-virtual {p0}, Ldxoptimizer/ciw;->d()Ljava/lang/Object;

    move-result-object v2

    aput-object v2, v0, v1

    .line 620
    iget-object v0, p0, Ldxoptimizer/ciw;->c:Ljava/lang/reflect/Method;

    iget-object v1, p0, Ldxoptimizer/ciw;->g:[Ljava/lang/Object;

    invoke-virtual {v0, p1, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
    :try_end_21
    .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_11 .. :try_end_21} :catch_22
    .catch Ljava/lang/IllegalAccessException; {:try_start_11 .. :try_end_21} :catch_2d

    .line 627
    :cond_21
    :goto_21
    return-void

    .line 621
    :catch_22
    move-exception v0

    .line 622
    const-string v1, "PropertyValuesHolder"

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

    move-result-object v0

    invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_21

    .line 623
    :catch_2d
    move-exception v0

    .line 624
    const-string v1, "PropertyValuesHolder"

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

    move-result-object v0

    invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_21
.end method

.method public c()Ljava/lang/String;
    .registers 2

    .prologue
    .line 713
    iget-object v0, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    return-object v0
.end method

.method public synthetic clone()Ljava/lang/Object;
    .registers 2
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/lang/CloneNotSupportedException;
        }
    .end annotation

    .prologue
    .line 1
    invoke-virtual {p0}, Ldxoptimizer/ciw;->a()Ldxoptimizer/ciw;

    move-result-object v0

    return-object v0
.end method

.method d()Ljava/lang/Object;
    .registers 2

    .prologue
    .line 722
    iget-object v0, p0, Ldxoptimizer/ciw;->q:Ljava/lang/Object;

    return-object v0
.end method

.method public toString()Ljava/lang/String;
    .registers 3

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

    iget-object v1, p0, Ldxoptimizer/ciw;->a:Ljava/lang/String;

    invoke-static {v1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v1

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

    const-string v1, ": "

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

    move-result-object v0

    iget-object v1, p0, Ldxoptimizer/ciw;->e:Ldxoptimizer/cit;

    invoke-virtual {v1}, Ldxoptimizer/cit;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, 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

    return-object v0
.end method