a0.smali

.class public final Lcom/horcrux/svg/a0;
.super Lcom/horcrux/svg/n0;
.source "SourceFile"


# annotations
.annotation build Landroid/annotation/SuppressLint;
    value = {
        "ViewConstructor"
    }
.end annotation


# instance fields
.field public n:Landroid/graphics/Path;

.field public o:Ljava/lang/String;

.field public p:Lcom/horcrux/svg/b0;

.field public final q:Ljava/util/ArrayList;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/ArrayList<",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation
.end field

.field public final r:Ljava/util/ArrayList;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/ArrayList<",
            "Landroid/graphics/Matrix;",
            ">;"
        }
    .end annotation
.end field

.field public final s:Landroid/content/res/AssetManager;


# direct methods
.method public constructor <init>(Lcom/facebook/react/bridge/ReactContext;)V
    .registers 2

    .line 1
    invoke-direct {p0, p1}, Lcom/horcrux/svg/n0;-><init>(Lcom/facebook/react/bridge/ReactContext;)V

    .line 2
    new-instance p1, Ljava/util/ArrayList;

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

    iput-object p1, p0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;

    .line 3
    new-instance p1, Ljava/util/ArrayList;

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

    iput-object p1, p0, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;

    .line 4
    iget-object p1, p0, Lcom/horcrux/svg/VirtualView;->mContext:Lcom/facebook/react/bridge/ReactContext;

    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object p1

    invoke-virtual {p1}, Landroid/content/res/Resources;->getAssets()Landroid/content/res/AssetManager;

    move-result-object p1

    iput-object p1, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;

    return-void
.end method


# virtual methods
.method public final clearCache()V
    .registers 2

    const/4 v0, 0x0

    .line 1
    iput-object v0, p0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;

    .line 2
    invoke-super {p0}, Lcom/horcrux/svg/n0;->clearCache()V

    return-void
.end method

.method public final draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;F)V
    .registers 9

    .line 1
    iget-object v0, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;

    if-eqz v0, :cond_63

    .line 2
    iget-object v0, p0, Lcom/horcrux/svg/n0;->c:Lcom/horcrux/svg/SVGLength;

    if-eqz v0, :cond_2b

    iget-wide v0, v0, Lcom/horcrux/svg/SVGLength;->a:D

    const-wide/16 v2, 0x0

    cmpl-double v4, v0, v2

    if-eqz v4, :cond_2b

    .line 3
    iget v0, p0, Lcom/horcrux/svg/RenderableView;->fillOpacity:F

    mul-float v0, v0, p3

    invoke-virtual {p0, p2, v0}, Lcom/horcrux/svg/RenderableView;->setupFillPaint(Landroid/graphics/Paint;F)Z

    move-result v0

    if-eqz v0, :cond_1d

    .line 4
    invoke-virtual {p0, p1, p2}, Lcom/horcrux/svg/a0;->l(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V

    .line 5
    :cond_1d
    iget v0, p0, Lcom/horcrux/svg/RenderableView;->strokeOpacity:F

    mul-float p3, p3, v0

    invoke-virtual {p0, p2, p3}, Lcom/horcrux/svg/RenderableView;->setupStrokePaint(Landroid/graphics/Paint;F)Z

    move-result p3

    if-eqz p3, :cond_69

    .line 6
    invoke-virtual {p0, p1, p2}, Lcom/horcrux/svg/a0;->l(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V

    goto :goto_69

    .line 7
    :cond_2b
    iget-object v0, p0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;

    invoke-virtual {v0}, Ljava/util/ArrayList;->size()I

    move-result v0

    if-lez v0, :cond_5f

    .line 8
    invoke-virtual {p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;

    move-result-object v1

    .line 9
    iget-object v1, v1, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;

    .line 10
    invoke-virtual {p0, p2, v1}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V

    const/4 v1, 0x0

    :goto_3d
    if-ge v1, v0, :cond_5f

    .line 11
    iget-object v2, p0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;

    invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Ljava/lang/String;

    .line 12
    iget-object v3, p0, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;

    invoke-virtual {v3, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Landroid/graphics/Matrix;

    .line 13
    invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I

    .line 14
    invoke-virtual {p1, v3}, Landroid/graphics/Canvas;->concat(Landroid/graphics/Matrix;)V

    const/4 v3, 0x0

    .line 15
    invoke-virtual {p1, v2, v3, v3, p2}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V

    .line 16
    invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V

    add-int/lit8 v1, v1, 0x1

    goto :goto_3d

    .line 17
    :cond_5f
    invoke-virtual {p0, p1, p2, p3}, Lcom/horcrux/svg/j;->b(Landroid/graphics/Canvas;Landroid/graphics/Paint;F)V

    goto :goto_69

    .line 18
    :cond_63
    invoke-virtual {p0, p1, p2}, Lcom/horcrux/svg/VirtualView;->clip(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V

    .line 19
    invoke-virtual {p0, p1, p2, p3}, Lcom/horcrux/svg/j;->a(Landroid/graphics/Canvas;Landroid/graphics/Paint;F)V

    :cond_69
    :goto_69
    return-void
.end method

.method public final getPath(Landroid/graphics/Canvas;Landroid/graphics/Paint;)Landroid/graphics/Path;
    .registers 79

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move-object/from16 v9, p2

    .line 1
    iget-object v2, v0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;

    if-eqz v2, :cond_b

    return-object v2

    .line 2
    :cond_b
    iget-object v2, v0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;

    if-nez v2, :cond_16

    .line 3
    invoke-virtual/range {p0 .. p2}, Lcom/horcrux/svg/n0;->h(Landroid/graphics/Canvas;Landroid/graphics/Paint;)Landroid/graphics/Path;

    move-result-object v1

    iput-object v1, v0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;

    return-object v1

    .line 4
    :cond_16
    invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;

    move-result-object v2

    :goto_1a
    if-eqz v2, :cond_33

    .line 5
    invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v3

    const-class v4, Lcom/horcrux/svg/b0;

    if-ne v3, v4, :cond_29

    .line 6
    check-cast v2, Lcom/horcrux/svg/b0;

    iput-object v2, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;

    goto :goto_33

    .line 7
    :cond_29
    instance-of v3, v2, Lcom/horcrux/svg/n0;

    if-nez v3, :cond_2e

    goto :goto_33

    .line 8
    :cond_2e
    invoke-interface {v2}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;

    move-result-object v2

    goto :goto_1a

    .line 9
    :cond_33
    :goto_33
    invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/n0;->f()V

    .line 10
    iget-object v2, v0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;

    const/4 v3, 0x0

    if-eqz v2, :cond_9f

    .line 11
    invoke-virtual {v2}, Ljava/lang/String;->length()I

    move-result v4

    if-nez v4, :cond_42

    goto :goto_9f

    .line 12
    :cond_42
    new-instance v4, Ljava/text/Bidi;

    const/4 v5, -0x2

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

    .line 13
    invoke-virtual {v4}, Ljava/text/Bidi;->isLeftToRight()Z

    move-result v5

    if-eqz v5, :cond_4f

    goto :goto_9f

    .line 14
    :cond_4f
    invoke-virtual {v4}, Ljava/text/Bidi;->getRunCount()I

    move-result v5

    .line 15
    new-array v6, v5, [B

    .line 16
    new-array v7, v5, [Ljava/lang/Integer;

    const/4 v8, 0x0

    :goto_58
    if-ge v8, v5, :cond_6a

    .line 17
    invoke-virtual {v4, v8}, Ljava/text/Bidi;->getRunLevel(I)I

    move-result v10

    int-to-byte v10, v10

    aput-byte v10, v6, v8

    .line 18
    invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v10

    aput-object v10, v7, v8

    add-int/lit8 v8, v8, 0x1

    goto :goto_58

    .line 19
    :cond_6a
    invoke-static {v6, v3, v7, v3, v5}, Ljava/text/Bidi;->reorderVisually([BI[Ljava/lang/Object;II)V

    .line 20
    new-instance v8, Ljava/lang/StringBuilder;

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

    const/4 v10, 0x0

    :goto_73
    if-ge v10, v5, :cond_9b

    .line 21
    aget-object v11, v7, v10

    invoke-virtual {v11}, Ljava/lang/Integer;->intValue()I

    move-result v11

    .line 22
    invoke-virtual {v4, v11}, Ljava/text/Bidi;->getRunStart(I)I

    move-result v12

    .line 23
    invoke-virtual {v4, v11}, Ljava/text/Bidi;->getRunLimit(I)I

    move-result v13

    .line 24
    aget-byte v11, v6, v11

    and-int/lit8 v11, v11, 0x1

    if-eqz v11, :cond_95

    :goto_89
    add-int/lit8 v13, v13, -0x1

    if-lt v13, v12, :cond_98

    .line 25
    invoke-virtual {v2, v13}, Ljava/lang/String;->charAt(I)C

    move-result v11

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

    goto :goto_89

    .line 26
    :cond_95
    invoke-virtual {v8, v2, v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;

    :cond_98
    add-int/lit8 v10, v10, 0x1

    goto :goto_73

    .line 27
    :cond_9b
    invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    .line 28
    :cond_9f
    :goto_9f
    invoke-virtual {v2}, Ljava/lang/String;->length()I

    move-result v10

    .line 29
    new-instance v11, Landroid/graphics/Path;

    invoke-direct {v11}, Landroid/graphics/Path;-><init>()V

    .line 30
    iget-object v4, v0, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;

    invoke-virtual {v4}, Ljava/util/ArrayList;->clear()V

    .line 31
    iget-object v4, v0, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;

    invoke-virtual {v4}, Ljava/util/ArrayList;->clear()V

    if-nez v10, :cond_b5

    goto :goto_ec

    .line 32
    :cond_b5
    iget-object v4, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;

    if-eqz v4, :cond_bc

    const/4 v4, 0x1

    const/4 v12, 0x1

    goto :goto_be

    :cond_bc
    const/4 v4, 0x0

    const/4 v12, 0x0

    :goto_be
    const/4 v4, 0x0

    const-wide/16 v13, 0x0

    if-eqz v12, :cond_f4

    .line 33
    new-instance v5, Landroid/graphics/PathMeasure;

    iget-object v6, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;

    .line 34
    invoke-virtual {v6}, Lcom/horcrux/svg/VirtualView;->getSvgView()Lcom/horcrux/svg/SvgView;

    move-result-object v7

    .line 35
    iget-object v6, v6, Lcom/horcrux/svg/b0;->n:Ljava/lang/String;

    invoke-virtual {v7, v6}, Lcom/horcrux/svg/SvgView;->getDefinedTemplate(Ljava/lang/String;)Lcom/horcrux/svg/VirtualView;

    move-result-object v6

    .line 36
    instance-of v7, v6, Lcom/horcrux/svg/RenderableView;

    if-nez v7, :cond_d6

    goto :goto_dc

    .line 37
    :cond_d6
    check-cast v6, Lcom/horcrux/svg/RenderableView;

    .line 38
    invoke-virtual {v6, v1, v9}, Lcom/horcrux/svg/RenderableView;->getPath(Landroid/graphics/Canvas;Landroid/graphics/Paint;)Landroid/graphics/Path;

    move-result-object v4

    .line 39
    :goto_dc
    invoke-direct {v5, v4, v3}, Landroid/graphics/PathMeasure;-><init>(Landroid/graphics/Path;Z)V

    .line 40
    invoke-virtual {v5}, Landroid/graphics/PathMeasure;->getLength()F

    move-result v3

    float-to-double v3, v3

    .line 41
    invoke-virtual {v5}, Landroid/graphics/PathMeasure;->isClosed()Z

    move-result v6

    cmpl-double v7, v3, v13

    if-nez v7, :cond_f0

    :goto_ec
    move-object v3, v0

    move-object v5, v11

    goto/16 :goto_764

    :cond_f0
    move-wide v7, v3

    move v3, v6

    move-object v6, v5

    goto :goto_f8

    :cond_f4
    const/4 v6, 0x0

    move-object v6, v4

    move-wide v7, v13

    const/4 v3, 0x0

    .line 42
    :goto_f8
    invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;

    move-result-object v5

    .line 43
    iget-object v4, v5, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;

    .line 44
    invoke-virtual {v0, v9, v4}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V

    .line 45
    new-instance v15, Ljava/util/ArrayList;

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

    const/16 v13, 0x100

    new-array v13, v13, [[I

    .line 46
    new-instance v14, Landroid/graphics/Path;

    invoke-direct {v14}, Landroid/graphics/Path;-><init>()V

    invoke-virtual {v15, v14}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 47
    new-array v14, v10, [Z

    .line 48
    invoke-virtual {v2}, Ljava/lang/String;->toCharArray()[C

    move-result-object v24

    move-object/from16 v25, v13

    move-object/from16 v26, v14

    .line 49
    iget-wide v13, v4, Lcom/horcrux/svg/h;->l:D

    move-wide/from16 v27, v13

    .line 50
    iget-wide v13, v4, Lcom/horcrux/svg/h;->m:D

    move-wide/from16 v29, v13

    .line 51
    iget-wide v13, v4, Lcom/horcrux/svg/h;->n:D

    move-object/from16 v16, v15

    .line 52
    iget-boolean v15, v4, Lcom/horcrux/svg/h;->o:Z

    xor-int/lit8 v31, v15, 0x1

    const-wide/16 v17, 0x0

    cmpl-double v15, v13, v17

    if-nez v15, :cond_13c

    .line 53
    iget-object v15, v4, Lcom/horcrux/svg/h;->i:Lcom/horcrux/svg/e0;

    move-object/from16 v32, v11

    sget-object v11, Lcom/horcrux/svg/e0;->normal:Lcom/horcrux/svg/e0;

    if-ne v15, v11, :cond_13e

    const/4 v11, 0x1

    goto :goto_13f

    :cond_13c
    move-object/from16 v32, v11

    :cond_13e
    const/4 v11, 0x0

    .line 54
    :goto_13f
    sget v15, Landroid/os/Build$VERSION;->SDK_INT:I

    if-eqz v11, :cond_156

    const-string v11, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'hlig\', \'cala\', "

    .line 55
    invoke-static {v11}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v11

    .line 56
    iget-object v1, v4, Lcom/horcrux/svg/h;->g:Ljava/lang/String;

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

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

    move-result-object v1

    invoke-virtual {v9, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V

    goto :goto_168

    :cond_156
    const-string v1, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'liga\' 0, \'clig\' 0, \'dlig\' 0, \'hlig\' 0, \'cala\' 0, "

    .line 57
    invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    .line 58
    iget-object v11, v4, Lcom/horcrux/svg/h;->g:Ljava/lang/String;

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

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

    move-result-object v1

    invoke-virtual {v9, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V

    :goto_168
    const/16 v1, 0x1a

    if-lt v15, v1, :cond_183

    const-string v1, "\'wght\' "

    .line 59
    invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    .line 60
    iget v11, v4, Lcom/horcrux/svg/h;->f:I

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

    iget-object v11, v4, Lcom/horcrux/svg/h;->h:Ljava/lang/String;

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

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

    move-result-object v1

    invoke-virtual {v9, v1}, Landroid/graphics/Paint;->setFontVariationSettings(Ljava/lang/String;)Z

    .line 61
    :cond_183
    iget-object v1, v4, Lcom/horcrux/svg/h;->d:Lcom/facebook/react/bridge/ReadableMap;

    .line 62
    new-array v11, v10, [F

    .line 63
    invoke-virtual {v9, v2, v11}, Landroid/graphics/Paint;->getTextWidths(Ljava/lang/String;[F)I

    .line 64
    iget-object v2, v4, Lcom/horcrux/svg/h;->j:Lcom/horcrux/svg/g0;

    .line 65
    invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;

    move-result-object v4

    .line 66
    iget-object v4, v4, Lcom/horcrux/svg/i;->a:Ljava/util/ArrayList;

    .line 67
    invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;

    move-result-object v15

    .line 68
    invoke-virtual {v4}, Ljava/util/ArrayList;->size()I

    move-result v17

    add-int/lit8 v17, v17, -0x1

    move-object/from16 v33, v6

    move-object/from16 v34, v11

    move/from16 v6, v17

    move-object v11, v0

    :goto_1a3
    if-ltz v6, :cond_1cc

    move-object/from16 v35, v1

    .line 69
    instance-of v1, v15, Lcom/horcrux/svg/n0;

    if-eqz v1, :cond_1ce

    invoke-virtual {v4, v6}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcom/horcrux/svg/h;

    iget-object v1, v1, Lcom/horcrux/svg/h;->j:Lcom/horcrux/svg/g0;

    move-object/from16 v17, v4

    sget-object v4, Lcom/horcrux/svg/g0;->start:Lcom/horcrux/svg/g0;

    if-eq v1, v4, :cond_1ce

    iget-object v1, v11, Lcom/horcrux/svg/n0;->h:Ljava/util/ArrayList;

    if-eqz v1, :cond_1be

    goto :goto_1ce

    .line 70
    :cond_1be
    move-object v11, v15

    check-cast v11, Lcom/horcrux/svg/n0;

    .line 71
    invoke-virtual {v11}, Landroid/view/View;->getParent()Landroid/view/ViewParent;

    move-result-object v15

    add-int/lit8 v6, v6, -0x1

    move-object/from16 v4, v17

    move-object/from16 v1, v35

    goto :goto_1a3

    :cond_1cc
    move-object/from16 v35, v1

    :cond_1ce
    :goto_1ce
    move-wide/from16 v36, v13

    .line 72
    invoke-virtual {v11, v9}, Lcom/horcrux/svg/n0;->i(Landroid/graphics/Paint;)D

    move-result-wide v13

    .line 73
    sget-object v1, Lcom/horcrux/svg/a0$a;->a:[I

    invoke-virtual {v2}, Ljava/lang/Enum;->ordinal()I

    move-result v4

    aget v1, v1, v4

    const-wide/high16 v38, 0x4000000000000000L    # 2.0

    const/4 v4, 0x3

    const/4 v6, 0x2

    if-eq v1, v6, :cond_1ed

    if-eq v1, v4, :cond_1ea

    move v1, v10

    move-wide/from16 v47, v13

    const-wide/16 v9, 0x0

    goto :goto_1f3

    :cond_1ea
    move v1, v10

    neg-double v9, v13

    goto :goto_1f1

    :cond_1ed
    move v1, v10

    neg-double v9, v13

    div-double v9, v9, v38

    :goto_1f1
    move-wide/from16 v47, v13

    .line 74
    :goto_1f3
    iget-wide v13, v5, Lcom/horcrux/svg/i;->q:D

    if-eqz v12, :cond_241

    .line 75
    iget-object v4, v0, Lcom/horcrux/svg/a0;->p:Lcom/horcrux/svg/b0;

    .line 76
    iget-object v6, v4, Lcom/horcrux/svg/b0;->p:Lcom/horcrux/svg/k0;

    .line 77
    sget-object v11, Lcom/horcrux/svg/k0;->sharp:Lcom/horcrux/svg/k0;

    if-ne v6, v11, :cond_201

    const/4 v6, 0x1

    goto :goto_202

    :cond_201
    const/4 v6, 0x0

    .line 78
    :goto_202
    iget-object v11, v4, Lcom/horcrux/svg/b0;->o:Lcom/horcrux/svg/l0;

    .line 79
    sget-object v15, Lcom/horcrux/svg/l0;->right:Lcom/horcrux/svg/l0;

    if-ne v11, v15, :cond_20a

    const/4 v11, -0x1

    goto :goto_20b

    :cond_20a
    const/4 v11, 0x1

    .line 80
    :goto_20b
    iget-object v15, v4, Lcom/horcrux/svg/b0;->q:Lcom/horcrux/svg/SVGLength;

    .line 81
    iget v4, v0, Lcom/horcrux/svg/VirtualView;->mScale:F

    move/from16 v40, v11

    move/from16 v49, v12

    float-to-double v11, v4

    move-object/from16 v4, v16

    move-wide/from16 v16, v7

    move-wide/from16 v18, v11

    move-wide/from16 v20, v13

    invoke-static/range {v15 .. v21}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D

    move-result-wide v11

    add-double/2addr v9, v11

    if-eqz v3, :cond_233

    move-object/from16 v16, v4

    div-double v3, v7, v38

    .line 82
    sget-object v15, Lcom/horcrux/svg/g0;->middle:Lcom/horcrux/svg/g0;

    if-ne v2, v15, :cond_22d

    neg-double v2, v3

    goto :goto_22f

    :cond_22d
    const-wide/16 v2, 0x0

    :goto_22f
    add-double/2addr v2, v11

    add-double v11, v2, v7

    goto :goto_238

    :cond_233
    move-object/from16 v16, v4

    move-wide v11, v7

    const-wide/16 v2, 0x0

    :goto_238
    move-wide/from16 v19, v2

    move-wide/from16 v17, v11

    move/from16 v12, v40

    move-wide v10, v9

    move v9, v6

    goto :goto_24c

    :cond_241
    move/from16 v49, v12

    const/4 v11, 0x1

    const/4 v6, 0x0

    move-wide/from16 v17, v7

    move-wide v10, v9

    const/4 v9, 0x0

    const/4 v12, 0x1

    const-wide/16 v19, 0x0

    .line 83
    :goto_24c
    iget-object v2, v0, Lcom/horcrux/svg/n0;->d:Lcom/horcrux/svg/SVGLength;

    if-eqz v2, :cond_291

    .line 84
    invoke-virtual/range {p1 .. p1}, Landroid/graphics/Canvas;->getWidth()I

    move-result v6

    int-to-double v3, v6

    iget v6, v0, Lcom/horcrux/svg/VirtualView;->mScale:F

    move-wide/from16 v52, v7

    float-to-double v6, v6

    move-object/from16 v40, v2

    move-wide/from16 v41, v3

    move-wide/from16 v43, v6

    move-wide/from16 v45, v13

    invoke-static/range {v40 .. v46}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D

    move-result-wide v2

    const-wide/16 v6, 0x0

    cmpg-double v4, v2, v6

    if-ltz v4, :cond_289

    .line 85
    sget-object v4, Lcom/horcrux/svg/a0$a;->b:[I

    iget-object v6, v0, Lcom/horcrux/svg/n0;->f:Lcom/horcrux/svg/i0;

    invoke-virtual {v6}, Ljava/lang/Enum;->ordinal()I

    move-result v6

    aget v4, v4, v6

    const/4 v6, 0x2

    if-eq v4, v6, :cond_286

    sub-double v2, v2, v47

    add-int/lit8 v4, v1, -0x1

    int-to-double v6, v4

    div-double/2addr v2, v6

    add-double v2, v2, v36

    move-wide/from16 v36, v2

    const-wide/high16 v50, 0x3ff0000000000000L    # 1.0

    goto :goto_297

    :cond_286
    div-double v3, v2, v47

    goto :goto_295

    .line 86
    :cond_289
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "Negative textLength value"

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

    throw v1

    :cond_291
    move-wide/from16 v52, v7

    const-wide/high16 v3, 0x3ff0000000000000L    # 1.0

    :goto_295
    move-wide/from16 v50, v3

    :goto_297
    int-to-double v7, v12

    mul-double v3, v50, v7

    .line 87
    invoke-virtual/range {p2 .. p2}, Landroid/graphics/Paint;->getFontMetrics()Landroid/graphics/Paint$FontMetrics;

    move-result-object v2

    .line 88
    iget v6, v2, Landroid/graphics/Paint$FontMetrics;->descent:F

    move-wide/from16 v47, v3

    float-to-double v3, v6

    .line 89
    iget v6, v2, Landroid/graphics/Paint$FontMetrics;->leading:F

    move v15, v9

    move-wide/from16 v54, v10

    float-to-double v9, v6

    add-double/2addr v9, v3

    .line 90
    iget v11, v2, Landroid/graphics/Paint$FontMetrics;->ascent:F

    neg-float v11, v11

    add-float/2addr v11, v6

    move/from16 v21, v12

    float-to-double v11, v11

    .line 91
    iget v2, v2, Landroid/graphics/Paint$FontMetrics;->top:F

    neg-float v2, v2

    move-wide/from16 v56, v7

    float-to-double v6, v2

    add-double v40, v6, v9

    .line 92
    iget-object v2, v0, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;

    if-nez v2, :cond_2d7

    .line 93
    invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;

    move-result-object v2

    :goto_2c1
    if-eqz v2, :cond_2d7

    .line 94
    instance-of v8, v2, Lcom/horcrux/svg/n0;

    if-eqz v8, :cond_2d2

    .line 95
    move-object v8, v2

    check-cast v8, Lcom/horcrux/svg/n0;

    .line 96
    iget-object v8, v8, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;

    if-eqz v8, :cond_2d2

    .line 97
    iput-object v8, v0, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;

    move-object v2, v8

    goto :goto_2d9

    .line 98
    :cond_2d2
    invoke-interface {v2}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;

    move-result-object v2

    goto :goto_2c1

    .line 99
    :cond_2d7
    iget-object v2, v0, Lcom/horcrux/svg/n0;->e:Ljava/lang/String;

    .line 100
    :goto_2d9
    iget-object v8, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;

    if-nez v8, :cond_2fa

    .line 101
    invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;

    move-result-object v8

    :goto_2e1
    if-eqz v8, :cond_2fa

    move-wide/from16 v42, v6

    .line 102
    instance-of v6, v8, Lcom/horcrux/svg/n0;

    if-eqz v6, :cond_2f3

    .line 103
    move-object v6, v8

    check-cast v6, Lcom/horcrux/svg/n0;

    .line 104
    iget-object v6, v6, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;

    if-eqz v6, :cond_2f3

    .line 105
    iput-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;

    goto :goto_306

    .line 106
    :cond_2f3
    invoke-interface {v8}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;

    move-result-object v8

    move-wide/from16 v6, v42

    goto :goto_2e1

    :cond_2fa
    move-wide/from16 v42, v6

    .line 107
    iget-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;

    if-nez v6, :cond_304

    .line 108
    sget-object v6, Lcom/horcrux/svg/c0;->baseline:Lcom/horcrux/svg/c0;

    iput-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;

    .line 109
    :cond_304
    iget-object v6, v0, Lcom/horcrux/svg/n0;->g:Lcom/horcrux/svg/c0;

    :goto_306
    if-eqz v6, :cond_348

    .line 110
    sget-object v7, Lcom/horcrux/svg/a0$a;->c:[I

    invoke-virtual {v6}, Ljava/lang/Enum;->ordinal()I

    move-result v8

    aget v7, v7, v8

    packed-switch v7, :pswitch_data_76c

    :pswitch_313
    goto :goto_348

    :pswitch_314
    move-wide/from16 v9, v42

    goto :goto_32a

    :pswitch_317
    div-double v9, v40, v38

    goto :goto_32a

    :pswitch_31a
    move-wide v9, v11

    goto :goto_32a

    :pswitch_31c
    const-wide v3, 0x3fe999999999999aL    # 0.8

    goto :goto_324

    :pswitch_322
    const-wide/high16 v3, 0x3fe0000000000000L    # 0.5

    :goto_324
    mul-double v9, v3, v11

    goto :goto_32a

    :pswitch_327
    sub-double/2addr v11, v3

    div-double v9, v11, v38

    :goto_32a
    :pswitch_32a
    move-wide v3, v9

    move-object/from16 v9, p2

    goto :goto_34c

    .line 111
    :pswitch_32e
    new-instance v3, Landroid/graphics/Rect;

    invoke-direct {v3}, Landroid/graphics/Rect;-><init>()V

    const-string v4, "x"

    const/4 v7, 0x1

    const/4 v8, 0x0

    move-object/from16 v9, p2

    .line 112
    invoke-virtual {v9, v4, v8, v7, v3}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V

    .line 113
    invoke-virtual {v3}, Landroid/graphics/Rect;->height()I

    move-result v3

    int-to-double v3, v3

    div-double v3, v3, v38

    goto :goto_34c

    :pswitch_344
    move-object/from16 v9, p2

    neg-double v3, v3

    goto :goto_34c

    :cond_348
    :goto_348
    move-object/from16 v9, p2

    const-wide/16 v3, 0x0

    :goto_34c
    if-eqz v2, :cond_42a

    .line 114
    invoke-virtual {v2}, Ljava/lang/String;->isEmpty()Z

    move-result v7

    if-nez v7, :cond_42a

    .line 115
    sget-object v7, Lcom/horcrux/svg/a0$a;->c:[I

    invoke-virtual {v6}, Ljava/lang/Enum;->ordinal()I

    move-result v6

    aget v6, v7, v6

    const/16 v7, 0xe

    if-eq v6, v7, :cond_42a

    const/16 v7, 0x10

    if-eq v6, v7, :cond_42a

    .line 116
    invoke-virtual {v2}, Ljava/lang/String;->hashCode()I

    move-result v6

    const v7, -0x669119bb

    if-eq v6, v7, :cond_38e

    const v7, 0x1be40

    if-eq v6, v7, :cond_383

    const v7, 0x68b6f7b

    if-eq v6, v7, :cond_378

    goto :goto_396

    :cond_378
    const-string v6, "super"

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

    move-result v6

    if-nez v6, :cond_381

    goto :goto_396

    :cond_381
    const/4 v6, 0x2

    goto :goto_399

    :cond_383
    const-string v6, "sub"

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

    move-result v6

    if-nez v6, :cond_38c

    goto :goto_396

    :cond_38c
    const/4 v6, 0x1

    goto :goto_399

    :cond_38e
    const-string v6, "baseline"

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

    move-result v6

    if-nez v6, :cond_398

    :goto_396
    const/4 v6, -0x1

    goto :goto_399

    :cond_398
    const/4 v6, 0x0

    :goto_399
    const-string v7, "os2"

    const-string v8, "unitsPerEm"

    const-string v10, "tables"

    if-eqz v6, :cond_42a

    const/4 v11, 0x1

    if-eq v6, v11, :cond_3f2

    const/4 v11, 0x2

    if-eq v6, v11, :cond_3b9

    .line 117
    iget v6, v0, Lcom/horcrux/svg/VirtualView;->mScale:F

    float-to-double v6, v6

    mul-double v41, v6, v13

    move-object/from16 v40, v2

    move-wide/from16 v43, v6

    move-wide/from16 v45, v13

    invoke-static/range {v40 .. v46}, Lcom/horcrux/svg/u;->b(Ljava/lang/String;DDD)D

    move-result-wide v6

    sub-double/2addr v3, v6

    goto/16 :goto_42a

    :cond_3b9
    if-eqz v35, :cond_42a

    move-object/from16 v2, v35

    .line 118
    invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v6

    if-eqz v6, :cond_42a

    invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v6

    if-eqz v6, :cond_42a

    .line 119
    invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->getInt(Ljava/lang/String;)I

    move-result v6

    .line 120
    invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;

    move-result-object v2

    .line 121
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v8

    if-eqz v8, :cond_42a

    .line 122
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;

    move-result-object v2

    const-string v7, "ySuperscriptYOffset"

    .line 123
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v8

    if-eqz v8, :cond_42a

    .line 124
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getDouble(Ljava/lang/String;)D

    move-result-wide v7

    .line 125
    iget v2, v0, Lcom/horcrux/svg/VirtualView;->mScale:F

    float-to-double v10, v2

    mul-double v10, v10, v13

    mul-double v10, v10, v7

    int-to-double v6, v6

    div-double/2addr v10, v6

    sub-double/2addr v3, v10

    goto :goto_42a

    :cond_3f2
    move-object/from16 v2, v35

    if-eqz v2, :cond_42a

    .line 126
    invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v6

    if-eqz v6, :cond_42a

    invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v6

    if-eqz v6, :cond_42a

    .line 127
    invoke-interface {v2, v8}, Lcom/facebook/react/bridge/ReadableMap;->getInt(Ljava/lang/String;)I

    move-result v6

    .line 128
    invoke-interface {v2, v10}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;

    move-result-object v2

    .line 129
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v8

    if-eqz v8, :cond_42a

    .line 130
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getMap(Ljava/lang/String;)Lcom/facebook/react/bridge/ReadableMap;

    move-result-object v2

    const-string v7, "ySubscriptYOffset"

    .line 131
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->hasKey(Ljava/lang/String;)Z

    move-result v8

    if-eqz v8, :cond_42a

    .line 132
    invoke-interface {v2, v7}, Lcom/facebook/react/bridge/ReadableMap;->getDouble(Ljava/lang/String;)D

    move-result-wide v7

    .line 133
    iget v2, v0, Lcom/horcrux/svg/VirtualView;->mScale:F

    float-to-double v10, v2

    mul-double v10, v10, v13

    mul-double v10, v10, v7

    int-to-double v6, v6

    div-double/2addr v10, v6

    add-double/2addr v3, v10

    :cond_42a
    :goto_42a
    move-wide v10, v3

    .line 134
    new-instance v12, Landroid/graphics/Matrix;

    invoke-direct {v12}, Landroid/graphics/Matrix;-><init>()V

    .line 135
    new-instance v13, Landroid/graphics/Matrix;

    invoke-direct {v13}, Landroid/graphics/Matrix;-><init>()V

    .line 136
    new-instance v14, Landroid/graphics/Matrix;

    invoke-direct {v14}, Landroid/graphics/Matrix;-><init>()V

    const/16 v2, 0x9

    new-array v8, v2, [F

    new-array v7, v2, [F

    const/4 v2, 0x0

    const/4 v6, 0x0

    :goto_442
    if-ge v6, v1, :cond_761

    .line 137
    aget-char v4, v24, v6

    .line 138
    invoke-static {v4}, Ljava/lang/String;->valueOf(C)Ljava/lang/String;

    move-result-object v2

    .line 139
    aget-boolean v3, v26, v6

    if-eqz v3, :cond_456

    const-string v2, ""

    const/16 v35, 0x0

    :cond_452
    :goto_452
    move/from16 v40, v1

    move-object v0, v2

    goto :goto_482

    :cond_456
    const/16 v35, 0x0

    move/from16 v40, v6

    :goto_45a
    add-int/lit8 v0, v40, 0x1

    if-ge v0, v1, :cond_452

    .line 140
    aget v40, v34, v0

    const/16 v41, 0x0

    cmpl-float v40, v40, v41

    if-lez v40, :cond_467

    goto :goto_452

    .line 141
    :cond_467
    invoke-static {v2}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    move/from16 v40, v1

    .line 142
    aget-char v1, v24, v0

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

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

    move-result-object v2

    const/4 v1, 0x1

    .line 143
    aput-boolean v1, v26, v0

    const/16 v35, 0x1

    move/from16 v1, v40

    move/from16 v40, v0

    move-object/from16 v0, p0

    goto :goto_45a

    .line 144
    :goto_482
    invoke-virtual {v9, v0}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F

    move-result v1

    float-to-double v1, v1

    mul-double v1, v1, v50

    if-eqz v31, :cond_496

    .line 145
    aget v9, v34, v6

    move-wide/from16 v41, v10

    float-to-double v9, v9

    mul-double v9, v9, v50

    sub-double/2addr v9, v1

    move-wide/from16 v27, v9

    goto :goto_498

    :cond_496
    move-wide/from16 v41, v10

    :goto_498
    const/16 v9, 0x20

    if-ne v4, v9, :cond_49e

    const/4 v9, 0x1

    goto :goto_49f

    :cond_49e
    const/4 v9, 0x0

    :goto_49f
    if-eqz v9, :cond_4a4

    move-wide/from16 v10, v29

    goto :goto_4a6

    :cond_4a4
    const-wide/16 v10, 0x0

    :goto_4a6
    add-double v10, v10, v36

    add-double/2addr v10, v1

    if-eqz v3, :cond_4b2

    move/from16 v46, v6

    move-object/from16 v45, v7

    const-wide/16 v6, 0x0

    goto :goto_4ba

    :cond_4b2
    add-double v43, v27, v10

    move/from16 v46, v6

    move-object/from16 v45, v7

    move-wide/from16 v6, v43

    .line 146
    :goto_4ba
    invoke-virtual {v5, v6, v7}, Lcom/horcrux/svg/i;->c(D)D

    move-result-wide v6

    move-object/from16 v43, v12

    move-object/from16 v44, v13

    .line 147
    invoke-virtual {v5}, Lcom/horcrux/svg/i;->d()D

    move-result-wide v12

    move/from16 v58, v4

    .line 148
    iget-object v4, v5, Lcom/horcrux/svg/i;->i:Ljava/util/ArrayList;

    move-object/from16 v59, v0

    iget v0, v5, Lcom/horcrux/svg/i;->D:I

    invoke-static {v4, v0}, Lcom/horcrux/svg/i;->b(Ljava/util/ArrayList;I)V

    .line 149
    iget v0, v5, Lcom/horcrux/svg/i;->I:I

    add-int/lit8 v0, v0, 0x1

    .line 150
    iget-object v4, v5, Lcom/horcrux/svg/i;->y:[Lcom/horcrux/svg/SVGLength;

    move-wide/from16 v60, v12

    array-length v12, v4

    if-ge v0, v12, :cond_4fe

    .line 151
    iput v0, v5, Lcom/horcrux/svg/i;->I:I

    .line 152
    aget-object v62, v4, v0

    .line 153
    iget v0, v5, Lcom/horcrux/svg/i;->N:F

    float-to-double v12, v0

    iget v0, v5, Lcom/horcrux/svg/i;->M:F

    move-object/from16 v70, v14

    move/from16 v69, v15

    float-to-double v14, v0

    move-wide/from16 v71, v6

    iget-wide v6, v5, Lcom/horcrux/svg/i;->q:D

    move-wide/from16 v63, v12

    move-wide/from16 v65, v14

    move-wide/from16 v67, v6

    invoke-static/range {v62 .. v68}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D

    move-result-wide v6

    .line 154
    iget-wide v12, v5, Lcom/horcrux/svg/i;->u:D

    add-double/2addr v12, v6

    iput-wide v12, v5, Lcom/horcrux/svg/i;->u:D

    goto :goto_504

    :cond_4fe
    move-wide/from16 v71, v6

    move-object/from16 v70, v14

    move/from16 v69, v15

    .line 155
    :goto_504
    iget-wide v6, v5, Lcom/horcrux/svg/i;->u:D

    .line 156
    iget-object v0, v5, Lcom/horcrux/svg/i;->j:Ljava/util/ArrayList;

    iget v4, v5, Lcom/horcrux/svg/i;->E:I

    invoke-static {v0, v4}, Lcom/horcrux/svg/i;->b(Ljava/util/ArrayList;I)V

    .line 157
    iget v0, v5, Lcom/horcrux/svg/i;->J:I

    add-int/lit8 v0, v0, 0x1

    .line 158
    iget-object v4, v5, Lcom/horcrux/svg/i;->z:[Lcom/horcrux/svg/SVGLength;

    array-length v12, v4

    if-ge v0, v12, :cond_534

    .line 159
    iput v0, v5, Lcom/horcrux/svg/i;->J:I

    .line 160
    aget-object v62, v4, v0

    .line 161
    iget v0, v5, Lcom/horcrux/svg/i;->O:F

    float-to-double v12, v0

    iget v0, v5, Lcom/horcrux/svg/i;->M:F

    float-to-double v14, v0

    move-wide/from16 v73, v6

    iget-wide v6, v5, Lcom/horcrux/svg/i;->q:D

    move-wide/from16 v63, v12

    move-wide/from16 v65, v14

    move-wide/from16 v67, v6

    invoke-static/range {v62 .. v68}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D

    move-result-wide v6

    .line 162
    iget-wide v12, v5, Lcom/horcrux/svg/i;->v:D

    add-double/2addr v12, v6

    iput-wide v12, v5, Lcom/horcrux/svg/i;->v:D

    goto :goto_536

    :cond_534
    move-wide/from16 v73, v6

    .line 163
    :goto_536
    iget-wide v6, v5, Lcom/horcrux/svg/i;->v:D

    .line 164
    iget-object v0, v5, Lcom/horcrux/svg/i;->k:Ljava/util/ArrayList;

    iget v4, v5, Lcom/horcrux/svg/i;->F:I

    invoke-static {v0, v4}, Lcom/horcrux/svg/i;->b(Ljava/util/ArrayList;I)V

    .line 165
    iget v0, v5, Lcom/horcrux/svg/i;->K:I

    add-int/lit8 v0, v0, 0x1

    iget-object v4, v5, Lcom/horcrux/svg/i;->A:[D

    array-length v4, v4

    add-int/lit8 v4, v4, -0x1

    invoke-static {v0, v4}, Ljava/lang/Math;->min(II)I

    move-result v0

    iput v0, v5, Lcom/horcrux/svg/i;->K:I

    .line 166
    iget-object v4, v5, Lcom/horcrux/svg/i;->A:[D

    aget-wide v12, v4, v0

    if-nez v3, :cond_573

    if-eqz v9, :cond_557

    goto :goto_573

    :cond_557
    mul-double v10, v10, v56

    mul-double v1, v1, v56

    add-double v3, v71, v73

    mul-double v3, v3, v56

    add-double v3, v3, v54

    sub-double/2addr v3, v10

    if-eqz v49, :cond_645

    add-double v9, v3, v1

    div-double v1, v1, v38

    add-double v14, v3, v1

    cmpl-double v0, v14, v17

    if-lez v0, :cond_56f

    goto :goto_573

    :cond_56f
    cmpg-double v0, v14, v19

    if-gez v0, :cond_596

    :cond_573
    :goto_573
    move-object/from16 v3, p0

    move-object/from16 v2, p1

    move-object/from16 v4, p2

    move-object v13, v5

    move-object/from16 v35, v8

    move-object/from16 v12, v16

    move/from16 v11, v21

    move-object/from16 v5, v32

    move-object/from16 v16, v33

    move-object/from16 v0, v44

    move-object/from16 v33, v45

    move/from16 v21, v46

    move-wide/from16 v9, v47

    move-wide/from16 v14, v52

    move-wide/from16 v46, v56

    const-wide/16 v22, 0x0

    move-object/from16 v45, v43

    goto/16 :goto_73d

    :cond_596
    if-eqz v69, :cond_5b4

    double-to-float v0, v14

    const/4 v3, 0x3

    move-object/from16 v11, v33

    move-object/from16 v4, v44

    .line 167
    invoke-virtual {v11, v0, v4, v3}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z

    move-object v0, v4

    move-object/from16 v33, v5

    move-object/from16 v44, v8

    move-wide/from16 v62, v12

    move-wide/from16 v14, v52

    const-wide/16 v22, 0x0

    move-object/from16 v52, v45

    move-object/from16 v45, v43

    move-object/from16 v43, v11

    goto/16 :goto_62c

    :cond_5b4
    move-object/from16 v11, v33

    move-object/from16 v0, v44

    move-object/from16 v33, v5

    const/4 v5, 0x3

    const-wide/16 v22, 0x0

    cmpg-double v44, v3, v22

    if-gez v44, :cond_5ce

    move-wide/from16 v62, v12

    const/4 v12, 0x0

    move-object/from16 v13, v43

    .line 168
    invoke-virtual {v11, v12, v13, v5}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z

    double-to-float v3, v3

    .line 169
    invoke-virtual {v13, v3, v12}, Landroid/graphics/Matrix;->preTranslate(FF)Z

    goto :goto_5d7

    :cond_5ce
    move-wide/from16 v62, v12

    move-object/from16 v13, v43

    double-to-float v3, v3

    const/4 v4, 0x1

    .line 170
    invoke-virtual {v11, v3, v13, v4}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z

    :goto_5d7
    const/4 v3, 0x1

    double-to-float v4, v14

    .line 171
    invoke-virtual {v11, v4, v0, v3}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z

    cmpl-double v4, v9, v52

    if-lez v4, :cond_5f0

    move-wide/from16 v14, v52

    double-to-float v3, v14

    const/4 v4, 0x3

    move-object/from16 v12, v70

    .line 172
    invoke-virtual {v11, v3, v12, v4}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z

    sub-double/2addr v9, v14

    double-to-float v3, v9

    const/4 v4, 0x0

    .line 173
    invoke-virtual {v12, v3, v4}, Landroid/graphics/Matrix;->preTranslate(FF)Z

    goto :goto_5f8

    :cond_5f0
    move-wide/from16 v14, v52

    move-object/from16 v12, v70

    double-to-float v4, v9

    .line 174
    invoke-virtual {v11, v4, v12, v3}, Landroid/graphics/PathMeasure;->getMatrix(FLandroid/graphics/Matrix;I)Z

    .line 175
    :goto_5f8
    invoke-virtual {v13, v8}, Landroid/graphics/Matrix;->getValues([F)V

    move-object/from16 v9, v45

    .line 176
    invoke-virtual {v12, v9}, Landroid/graphics/Matrix;->getValues([F)V

    const/4 v3, 0x2

    aget v4, v8, v3

    float-to-double v4, v4

    const/4 v10, 0x5

    move-object/from16 v43, v11

    aget v11, v8, v10

    float-to-double v10, v11

    aget v3, v9, v3

    move-object/from16 v70, v12

    move-object/from16 v45, v13

    float-to-double v12, v3

    const/4 v3, 0x5

    aget v3, v9, v3

    move-object/from16 v44, v8

    move-object/from16 v52, v9

    float-to-double v8, v3

    sub-double/2addr v12, v4

    sub-double/2addr v8, v10

    .line 177
    invoke-static {v8, v9, v12, v13}, Ljava/lang/Math;->atan2(DD)D

    move-result-wide v3

    const-wide v8, 0x404ca5dc1a63c1f8L    # 57.29577951308232

    mul-double v3, v3, v8

    mul-double v3, v3, v56

    double-to-float v3, v3

    .line 178
    invoke-virtual {v0, v3}, Landroid/graphics/Matrix;->preRotate(F)Z

    :goto_62c
    neg-double v1, v1

    double-to-float v1, v1

    add-double v6, v6, v41

    double-to-float v2, v6

    .line 179
    invoke-virtual {v0, v1, v2}, Landroid/graphics/Matrix;->preTranslate(FF)Z

    move-wide/from16 v8, v47

    double-to-float v1, v8

    move/from16 v11, v21

    int-to-float v2, v11

    .line 180
    invoke-virtual {v0, v1, v2}, Landroid/graphics/Matrix;->preScale(FF)Z

    move-wide/from16 v1, v60

    double-to-float v1, v1

    const/4 v2, 0x0

    .line 181
    invoke-virtual {v0, v2, v1}, Landroid/graphics/Matrix;->postTranslate(FF)Z

    goto :goto_665

    :cond_645
    move-wide/from16 v62, v12

    move/from16 v11, v21

    move-object/from16 v0, v44

    move-wide/from16 v14, v52

    move-wide/from16 v1, v60

    const-wide/16 v22, 0x0

    move-object/from16 v44, v8

    move-object/from16 v52, v45

    move-wide/from16 v8, v47

    move-object/from16 v45, v43

    move-object/from16 v43, v33

    move-object/from16 v33, v5

    double-to-float v3, v3

    add-double/2addr v6, v1

    add-double v6, v6, v41

    double-to-float v1, v6

    .line 182
    invoke-virtual {v0, v3, v1}, Landroid/graphics/Matrix;->setTranslate(FF)V

    :goto_665
    move-wide/from16 v1, v62

    double-to-float v1, v1

    .line 183
    invoke-virtual {v0, v1}, Landroid/graphics/Matrix;->preRotate(F)Z

    if-eqz v35, :cond_692

    .line 184
    new-instance v1, Landroid/graphics/Path;

    invoke-direct {v1}, Landroid/graphics/Path;-><init>()V

    const/4 v4, 0x0

    .line 185
    invoke-virtual/range {v59 .. v59}, Ljava/lang/String;->length()I

    move-result v5

    const/4 v6, 0x0

    const/4 v7, 0x0

    move-object/from16 v2, p2

    move-wide v9, v8

    move-object/from16 v3, v59

    move-object/from16 v12, v16

    move-object/from16 v13, v33

    move-object/from16 v16, v43

    move/from16 v21, v46

    move-object/from16 v33, v52

    move-wide/from16 v46, v56

    move-object/from16 v35, v44

    move-object v8, v1

    invoke-virtual/range {v2 .. v8}, Landroid/graphics/Paint;->getTextPath(Ljava/lang/String;IIFFLandroid/graphics/Path;)V

    goto/16 :goto_6f6

    :cond_692
    move-wide v9, v8

    move-object/from16 v12, v16

    move-object/from16 v13, v33

    move-object/from16 v16, v43

    move-object/from16 v35, v44

    move/from16 v21, v46

    move-object/from16 v33, v52

    move-wide/from16 v46, v56

    shr-int/lit8 v1, v58, 0x8

    .line 186
    aget-object v2, v25, v1

    if-nez v2, :cond_6ab

    const/4 v2, 0x0

    move/from16 v4, v58

    goto :goto_6b1

    :cond_6ab
    move/from16 v4, v58

    and-int/lit16 v3, v4, 0xff

    .line 187
    aget v2, v2, v3

    :goto_6b1
    if-eqz v2, :cond_6ba

    .line 188
    invoke-virtual {v12, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Landroid/graphics/Path;

    goto :goto_6ed

    .line 189
    :cond_6ba
    new-instance v8, Landroid/graphics/Path;

    invoke-direct {v8}, Landroid/graphics/Path;-><init>()V

    const/4 v5, 0x0

    const/4 v6, 0x1

    const/4 v7, 0x0

    const/16 v43, 0x0

    move-object/from16 v2, p2

    move-object/from16 v3, v59

    move/from16 v75, v4

    move v4, v5

    move v5, v6

    move v6, v7

    move/from16 v7, v43

    move-object/from16 v43, v8

    .line 190
    invoke-virtual/range {v2 .. v8}, Landroid/graphics/Paint;->getTextPath(Ljava/lang/String;IIFFLandroid/graphics/Path;)V

    .line 191
    aget-object v2, v25, v1

    if-nez v2, :cond_6de

    const/16 v2, 0x100

    new-array v2, v2, [I

    .line 192
    aput-object v2, v25, v1

    :cond_6de
    move/from16 v1, v75

    and-int/lit16 v1, v1, 0xff

    .line 193
    invoke-virtual {v12}, Ljava/util/ArrayList;->size()I

    move-result v3

    aput v3, v2, v1

    move-object/from16 v1, v43

    .line 194
    invoke-virtual {v12, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 195
    :goto_6ed
    new-instance v2, Landroid/graphics/Path;

    invoke-direct {v2}, Landroid/graphics/Path;-><init>()V

    .line 196
    invoke-virtual {v2, v1}, Landroid/graphics/Path;->addPath(Landroid/graphics/Path;)V

    move-object v1, v2

    .line 197
    :goto_6f6
    new-instance v2, Landroid/graphics/RectF;

    invoke-direct {v2}, Landroid/graphics/RectF;-><init>()V

    const/4 v3, 0x1

    .line 198
    invoke-virtual {v1, v2, v3}, Landroid/graphics/Path;->computeBounds(Landroid/graphics/RectF;Z)V

    .line 199
    invoke-virtual {v2}, Landroid/graphics/RectF;->width()F

    move-result v2

    const/4 v3, 0x0

    cmpl-float v2, v2, v3

    if-nez v2, :cond_72f

    .line 200
    invoke-virtual/range {p1 .. p1}, Landroid/graphics/Canvas;->save()I

    move-object/from16 v2, p1

    .line 201
    invoke-virtual {v2, v0}, Landroid/graphics/Canvas;->concat(Landroid/graphics/Matrix;)V

    const/4 v1, 0x0

    move-object/from16 v3, p0

    .line 202
    iget-object v4, v3, Lcom/horcrux/svg/a0;->q:Ljava/util/ArrayList;

    move-object/from16 v5, v59

    invoke-virtual {v4, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 203
    iget-object v4, v3, Lcom/horcrux/svg/a0;->r:Ljava/util/ArrayList;

    new-instance v6, Landroid/graphics/Matrix;

    invoke-direct {v6, v0}, Landroid/graphics/Matrix;-><init>(Landroid/graphics/Matrix;)V

    invoke-virtual {v4, v6}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    move-object/from16 v4, p2

    .line 204
    invoke-virtual {v2, v5, v1, v1, v4}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V

    .line 205
    invoke-virtual/range {p1 .. p1}, Landroid/graphics/Canvas;->restore()V

    move-object/from16 v5, v32

    goto :goto_73d

    :cond_72f
    move-object/from16 v3, p0

    move-object/from16 v2, p1

    move-object/from16 v4, p2

    .line 206
    invoke-virtual {v1, v0}, Landroid/graphics/Path;->transform(Landroid/graphics/Matrix;)V

    move-object/from16 v5, v32

    .line 207
    invoke-virtual {v5, v1}, Landroid/graphics/Path;->addPath(Landroid/graphics/Path;)V

    :goto_73d
    add-int/lit8 v6, v21, 0x1

    move-object/from16 v32, v5

    move/from16 v21, v11

    move-object v5, v13

    move-wide/from16 v52, v14

    move-object/from16 v7, v33

    move-object/from16 v8, v35

    move/from16 v1, v40

    move-wide/from16 v56, v46

    move/from16 v15, v69

    move-object/from16 v14, v70

    move-object v13, v0

    move-object v0, v3

    move-wide/from16 v47, v9

    move-object/from16 v33, v16

    move-wide/from16 v10, v41

    move-object v9, v4

    move-object/from16 v16, v12

    move-object/from16 v12, v45

    goto/16 :goto_442

    :cond_761
    move-object v3, v0

    move-object/from16 v5, v32

    .line 208
    :goto_764
    iput-object v5, v3, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;

    .line 209
    invoke-virtual/range {p0 .. p0}, Lcom/horcrux/svg/j;->e()V

    .line 210
    iget-object v0, v3, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;

    return-object v0

    :pswitch_data_76c
    .packed-switch 0x2
        :pswitch_344
        :pswitch_344
        :pswitch_344
        :pswitch_313
        :pswitch_344
        :pswitch_32e
        :pswitch_327
        :pswitch_322
        :pswitch_31c
        :pswitch_31a
        :pswitch_31a
        :pswitch_31a
        :pswitch_32a
        :pswitch_317
        :pswitch_314
    .end packed-switch
.end method

.method public final hitTest([F)I
    .registers 5

    .line 1
    iget-object v0, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;

    if-nez v0, :cond_9

    .line 2
    invoke-super {p0, p1}, Lcom/horcrux/svg/j;->hitTest([F)I

    move-result p1

    return p1

    .line 3
    :cond_9
    iget-object v0, p0, Lcom/horcrux/svg/VirtualView;->mPath:Landroid/graphics/Path;

    const/4 v1, -0x1

    if-eqz v0, :cond_5e

    iget-boolean v0, p0, Lcom/horcrux/svg/VirtualView;->mInvertible:Z

    if-eqz v0, :cond_5e

    iget-boolean v0, p0, Lcom/horcrux/svg/VirtualView;->mTransformInvertible:Z

    if-nez v0, :cond_17

    goto :goto_5e

    :cond_17
    const/4 v0, 0x2

    new-array v0, v0, [F

    .line 4
    iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mInvMatrix:Landroid/graphics/Matrix;

    invoke-virtual {v2, v0, p1}, Landroid/graphics/Matrix;->mapPoints([F[F)V

    .line 5
    iget-object p1, p0, Lcom/horcrux/svg/VirtualView;->mInvTransform:Landroid/graphics/Matrix;

    invoke-virtual {p1, v0}, Landroid/graphics/Matrix;->mapPoints([F)V

    const/4 p1, 0x0

    aget p1, v0, p1

    .line 6
    invoke-static {p1}, Ljava/lang/Math;->round(F)I

    move-result p1

    const/4 v2, 0x1

    aget v0, v0, v2

    .line 7
    invoke-static {v0}, Ljava/lang/Math;->round(F)I

    move-result v0

    .line 8
    invoke-virtual {p0}, Lcom/horcrux/svg/RenderableView;->initBounds()V

    .line 9
    iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mRegion:Landroid/graphics/Region;

    if-eqz v2, :cond_3f

    .line 10
    invoke-virtual {v2, p1, v0}, Landroid/graphics/Region;->contains(II)Z

    move-result v2

    if-nez v2, :cond_4a

    :cond_3f
    iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mStrokeRegion:Landroid/graphics/Region;

    if-eqz v2, :cond_5e

    .line 11
    invoke-virtual {v2, p1, v0}, Landroid/graphics/Region;->contains(II)Z

    move-result v2

    if-nez v2, :cond_4a

    goto :goto_5e

    .line 12
    :cond_4a
    invoke-virtual {p0}, Lcom/horcrux/svg/VirtualView;->getClipPath()Landroid/graphics/Path;

    move-result-object v2

    if-eqz v2, :cond_59

    .line 13
    iget-object v2, p0, Lcom/horcrux/svg/VirtualView;->mClipRegion:Landroid/graphics/Region;

    invoke-virtual {v2, p1, v0}, Landroid/graphics/Region;->contains(II)Z

    move-result p1

    if-nez p1, :cond_59

    return v1

    .line 14
    :cond_59
    invoke-virtual {p0}, Landroid/view/View;->getId()I

    move-result p1

    return p1

    :cond_5e
    :goto_5e
    return v1
.end method

.method public final i(Landroid/graphics/Paint;)D
    .registers 7

    .line 1
    iget-wide v0, p0, Lcom/horcrux/svg/n0;->m:D

    invoke-static {v0, v1}, Ljava/lang/Double;->isNaN(D)Z

    move-result v0

    if-nez v0, :cond_b

    .line 2
    iget-wide v0, p0, Lcom/horcrux/svg/n0;->m:D

    return-wide v0

    .line 3
    :cond_b
    iget-object v0, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;

    const-wide/16 v1, 0x0

    if-nez v0, :cond_2e

    const/4 v0, 0x0

    .line 4
    :goto_12
    invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I

    move-result v3

    if-ge v0, v3, :cond_2b

    .line 5
    invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;

    move-result-object v3

    .line 6
    instance-of v4, v3, Lcom/horcrux/svg/n0;

    if-eqz v4, :cond_28

    .line 7
    check-cast v3, Lcom/horcrux/svg/n0;

    .line 8
    invoke-virtual {v3, p1}, Lcom/horcrux/svg/n0;->i(Landroid/graphics/Paint;)D

    move-result-wide v3

    add-double/2addr v3, v1

    move-wide v1, v3

    :cond_28
    add-int/lit8 v0, v0, 0x1

    goto :goto_12

    .line 9
    :cond_2b
    iput-wide v1, p0, Lcom/horcrux/svg/n0;->m:D

    return-wide v1

    .line 10
    :cond_2e
    invoke-virtual {v0}, Ljava/lang/String;->length()I

    move-result v3

    if-nez v3, :cond_37

    .line 11
    iput-wide v1, p0, Lcom/horcrux/svg/n0;->m:D

    return-wide v1

    .line 12
    :cond_37
    invoke-virtual {p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;

    move-result-object v1

    .line 13
    iget-object v1, v1, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;

    .line 14
    invoke-virtual {p0, p1, v1}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V

    .line 15
    invoke-virtual {p0, p1, v1}, Lcom/horcrux/svg/a0;->j(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V

    .line 16
    invoke-virtual {p1, v0}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F

    move-result p1

    float-to-double v0, p1

    iput-wide v0, p0, Lcom/horcrux/svg/n0;->m:D

    return-wide v0
.end method

.method public final invalidate()V
    .registers 2

    const/4 v0, 0x0

    .line 1
    iput-object v0, p0, Lcom/horcrux/svg/a0;->n:Landroid/graphics/Path;

    .line 2
    invoke-super {p0}, Lcom/horcrux/svg/n0;->invalidate()V

    return-void
.end method

.method public final j(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
    .registers 10

    .line 1
    sget v0, Landroid/os/Build$VERSION;->SDK_INT:I

    .line 2
    iget-wide v1, p2, Lcom/horcrux/svg/h;->n:D

    .line 3
    iget-wide v3, p2, Lcom/horcrux/svg/h;->a:D

    iget v5, p0, Lcom/horcrux/svg/VirtualView;->mScale:F

    float-to-double v5, v5

    mul-double v3, v3, v5

    div-double v3, v1, v3

    double-to-float v3, v3

    invoke-virtual {p1, v3}, Landroid/graphics/Paint;->setLetterSpacing(F)V

    const-wide/16 v3, 0x0

    cmpl-double v5, v1, v3

    if-nez v5, :cond_1f

    .line 4
    iget-object v1, p2, Lcom/horcrux/svg/h;->i:Lcom/horcrux/svg/e0;

    sget-object v2, Lcom/horcrux/svg/e0;->normal:Lcom/horcrux/svg/e0;

    if-ne v1, v2, :cond_1f

    const/4 v1, 0x1

    goto :goto_20

    :cond_1f
    const/4 v1, 0x0

    :goto_20
    if-eqz v1, :cond_35

    const-string v1, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'hlig\', \'cala\', "

    .line 5
    invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    .line 6
    iget-object v2, p2, Lcom/horcrux/svg/h;->g:Ljava/lang/String;

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

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

    move-result-object v1

    invoke-virtual {p1, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V

    goto :goto_47

    :cond_35
    const-string v1, "\'rlig\', \'liga\', \'clig\', \'calt\', \'locl\', \'ccmp\', \'mark\', \'mkmk\',\'kern\', \'liga\' 0, \'clig\' 0, \'dlig\' 0, \'hlig\' 0, \'cala\' 0, "

    .line 7
    invoke-static {v1}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    .line 8
    iget-object v2, p2, Lcom/horcrux/svg/h;->g:Ljava/lang/String;

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

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

    move-result-object v1

    invoke-virtual {p1, v1}, Landroid/graphics/Paint;->setFontFeatureSettings(Ljava/lang/String;)V

    :goto_47
    const/16 v1, 0x1a

    if-lt v0, v1, :cond_62

    const-string v0, "\'wght\' "

    .line 9
    invoke-static {v0}, Landroid/support/v4/media/c;->c(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    .line 10
    iget v1, p2, Lcom/horcrux/svg/h;->f:I

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

    iget-object p2, p2, Lcom/horcrux/svg/h;->h:Ljava/lang/String;

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

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

    move-result-object p2

    invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setFontVariationSettings(Ljava/lang/String;)Z

    :cond_62
    return-void
.end method

.method public final k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V
    .registers 13

    .line 1
    iget-object v0, p2, Lcom/horcrux/svg/h;->e:Lcom/horcrux/svg/f0;

    sget-object v1, Lcom/horcrux/svg/f0;->Bold:Lcom/horcrux/svg/f0;

    const/4 v2, 0x0

    const/4 v3, 0x1

    if-eq v0, v1, :cond_11

    iget v0, p2, Lcom/horcrux/svg/h;->f:I

    const/16 v1, 0x226

    if-lt v0, v1, :cond_f

    goto :goto_11

    :cond_f
    const/4 v0, 0x0

    goto :goto_12

    :cond_11
    :goto_11
    const/4 v0, 0x1

    .line 2
    :goto_12
    iget-object v1, p2, Lcom/horcrux/svg/h;->c:Lcom/horcrux/svg/d0;

    sget-object v4, Lcom/horcrux/svg/d0;->italic:Lcom/horcrux/svg/d0;

    if-ne v1, v4, :cond_1a

    const/4 v1, 0x1

    goto :goto_1b

    :cond_1a
    const/4 v1, 0x0

    :goto_1b
    if-eqz v0, :cond_21

    if-eqz v1, :cond_21

    const/4 v2, 0x3

    goto :goto_28

    :cond_21
    if-eqz v0, :cond_25

    const/4 v2, 0x1

    goto :goto_28

    :cond_25
    if-eqz v1, :cond_28

    const/4 v2, 0x2

    :cond_28
    :goto_28
    const/4 v0, 0x0

    .line 3
    iget v4, p2, Lcom/horcrux/svg/h;->f:I

    .line 4
    iget-object v5, p2, Lcom/horcrux/svg/h;->b:Ljava/lang/String;

    if-eqz v5, :cond_b5

    .line 5
    invoke-virtual {v5}, Ljava/lang/String;->length()I

    move-result v6

    if-lez v6, :cond_b5

    const-string v6, "fonts/"

    const-string v7, ".otf"

    .line 6
    invoke-static {v6, v5, v7}, Landroidx/biometric/i0;->c(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v7

    const-string v8, ".ttf"

    .line 7
    invoke-static {v6, v5, v8}, Landroidx/biometric/i0;->c(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v6

    .line 8
    sget v8, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v9, 0x1a

    if-lt v8, v9, :cond_9e

    .line 9
    new-instance v0, Landroid/graphics/Typeface$Builder;

    iget-object v8, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;

    invoke-direct {v0, v8, v7}, Landroid/graphics/Typeface$Builder;-><init>(Landroid/content/res/AssetManager;Ljava/lang/String;)V

    .line 10
    new-instance v7, Ljava/lang/StringBuilder;

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

    const-string v8, "\'wght\' "

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

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

    iget-object v9, p2, Lcom/horcrux/svg/h;->h:Ljava/lang/String;

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

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

    move-result-object v7

    invoke-virtual {v0, v7}, Landroid/graphics/Typeface$Builder;->setFontVariationSettings(Ljava/lang/String;)Landroid/graphics/Typeface$Builder;

    .line 11
    invoke-virtual {v0, v4}, Landroid/graphics/Typeface$Builder;->setWeight(I)Landroid/graphics/Typeface$Builder;

    .line 12
    invoke-virtual {v0, v1}, Landroid/graphics/Typeface$Builder;->setItalic(Z)Landroid/graphics/Typeface$Builder;

    .line 13
    invoke-virtual {v0}, Landroid/graphics/Typeface$Builder;->build()Landroid/graphics/Typeface;

    move-result-object v0

    if-nez v0, :cond_b5

    .line 14
    new-instance v0, Landroid/graphics/Typeface$Builder;

    iget-object v7, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;

    invoke-direct {v0, v7, v6}, Landroid/graphics/Typeface$Builder;-><init>(Landroid/content/res/AssetManager;Ljava/lang/String;)V

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

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

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

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

    iget-object v7, p2, Lcom/horcrux/svg/h;->h:Ljava/lang/String;

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

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

    move-result-object v6

    invoke-virtual {v0, v6}, Landroid/graphics/Typeface$Builder;->setFontVariationSettings(Ljava/lang/String;)Landroid/graphics/Typeface$Builder;

    .line 16
    invoke-virtual {v0, v4}, Landroid/graphics/Typeface$Builder;->setWeight(I)Landroid/graphics/Typeface$Builder;

    .line 17
    invoke-virtual {v0, v1}, Landroid/graphics/Typeface$Builder;->setItalic(Z)Landroid/graphics/Typeface$Builder;

    .line 18
    invoke-virtual {v0}, Landroid/graphics/Typeface$Builder;->build()Landroid/graphics/Typeface;

    move-result-object v0

    goto :goto_b5

    .line 19
    :cond_9e
    :try_start_9e
    iget-object v8, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;

    invoke-static {v8, v7}, Landroid/graphics/Typeface;->createFromAsset(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface;

    move-result-object v0

    .line 20
    invoke-static {v0, v2}, Landroid/graphics/Typeface;->create(Landroid/graphics/Typeface;I)Landroid/graphics/Typeface;

    move-result-object v0
    :try_end_a8
    .catch Ljava/lang/Exception; {:try_start_9e .. :try_end_a8} :catch_a9

    goto :goto_b5

    .line 21
    :catch_a9
    :try_start_a9
    iget-object v7, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;

    invoke-static {v7, v6}, Landroid/graphics/Typeface;->createFromAsset(Landroid/content/res/AssetManager;Ljava/lang/String;)Landroid/graphics/Typeface;

    move-result-object v0

    .line 22
    invoke-static {v0, v2}, Landroid/graphics/Typeface;->create(Landroid/graphics/Typeface;I)Landroid/graphics/Typeface;

    move-result-object v0
    :try_end_b3
    .catch Ljava/lang/Exception; {:try_start_a9 .. :try_end_b3} :catch_b4

    goto :goto_b5

    :catch_b4
    nop

    :cond_b5
    :goto_b5
    if-nez v0, :cond_c3

    .line 23
    :try_start_b7
    invoke-static {}, Lcom/facebook/react/views/text/ReactFontManager;->getInstance()Lcom/facebook/react/views/text/ReactFontManager;

    move-result-object v6

    iget-object v7, p0, Lcom/horcrux/svg/a0;->s:Landroid/content/res/AssetManager;

    invoke-virtual {v6, v5, v2, v7}, Lcom/facebook/react/views/text/ReactFontManager;->getTypeface(Ljava/lang/String;ILandroid/content/res/AssetManager;)Landroid/graphics/Typeface;

    move-result-object v0
    :try_end_c1
    .catch Ljava/lang/Exception; {:try_start_b7 .. :try_end_c1} :catch_c2

    goto :goto_c3

    :catch_c2
    nop

    .line 24
    :cond_c3
    :goto_c3
    sget v2, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v5, 0x1c

    if-lt v2, v5, :cond_cd

    .line 25
    invoke-static {v0, v4, v1}, Landroid/graphics/Typeface;->create(Landroid/graphics/Typeface;IZ)Landroid/graphics/Typeface;

    move-result-object v0

    .line 26
    :cond_cd
    invoke-virtual {p1, v3}, Landroid/graphics/Paint;->setLinearText(Z)V

    .line 27
    invoke-virtual {p1, v3}, Landroid/graphics/Paint;->setSubpixelText(Z)V

    .line 28
    invoke-virtual {p1, v0}, Landroid/graphics/Paint;->setTypeface(Landroid/graphics/Typeface;)Landroid/graphics/Typeface;

    .line 29
    iget-wide v0, p2, Lcom/horcrux/svg/h;->a:D

    iget p2, p0, Lcom/horcrux/svg/VirtualView;->mScale:F

    float-to-double v2, p2

    mul-double v0, v0, v2

    double-to-float p2, v0

    invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setTextSize(F)V

    const/4 p2, 0x0

    .line 30
    invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setLetterSpacing(F)V

    return-void
.end method

.method public final l(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
    .registers 15

    .line 1
    invoke-virtual {p0}, Lcom/horcrux/svg/j;->d()Lcom/horcrux/svg/i;

    move-result-object v0

    .line 2
    invoke-virtual {p0}, Lcom/horcrux/svg/n0;->f()V

    .line 3
    iget-object v1, v0, Lcom/horcrux/svg/i;->r:Lcom/horcrux/svg/h;

    .line 4
    new-instance v4, Landroid/text/TextPaint;

    invoke-direct {v4, p2}, Landroid/text/TextPaint;-><init>(Landroid/graphics/Paint;)V

    .line 5
    invoke-virtual {p0, v4, v1}, Lcom/horcrux/svg/a0;->k(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V

    .line 6
    invoke-virtual {p0, v4, v1}, Lcom/horcrux/svg/a0;->j(Landroid/graphics/Paint;Lcom/horcrux/svg/h;)V

    .line 7
    iget-wide v10, v0, Lcom/horcrux/svg/i;->q:D

    .line 8
    sget-object p2, Lcom/horcrux/svg/a0$a;->a:[I

    iget-object v1, v1, Lcom/horcrux/svg/h;->j:Lcom/horcrux/svg/g0;

    invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I

    move-result v1

    aget p2, p2, v1

    const/4 v1, 0x2

    if-eq p2, v1, :cond_2c

    const/4 v1, 0x3

    if-eq p2, v1, :cond_29

    .line 9
    sget-object p2, Landroid/text/Layout$Alignment;->ALIGN_NORMAL:Landroid/text/Layout$Alignment;

    goto :goto_2e

    .line 10
    :cond_29
    sget-object p2, Landroid/text/Layout$Alignment;->ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;

    goto :goto_2e

    .line 11
    :cond_2c
    sget-object p2, Landroid/text/Layout$Alignment;->ALIGN_CENTER:Landroid/text/Layout$Alignment;

    .line 12
    :goto_2e
    new-instance v3, Landroid/text/SpannableString;

    iget-object v1, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;

    invoke-direct {v3, v1}, Landroid/text/SpannableString;-><init>(Ljava/lang/CharSequence;)V

    .line 13
    iget-object v5, p0, Lcom/horcrux/svg/n0;->c:Lcom/horcrux/svg/SVGLength;

    invoke-virtual {p1}, Landroid/graphics/Canvas;->getWidth()I

    move-result v1

    int-to-double v6, v1

    iget v1, p0, Lcom/horcrux/svg/VirtualView;->mScale:F

    float-to-double v8, v1

    invoke-static/range {v5 .. v11}, Lcom/horcrux/svg/u;->a(Lcom/horcrux/svg/SVGLength;DDD)D

    move-result-wide v1

    double-to-int v5, v1

    .line 14
    sget v1, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v2, 0x17

    const/4 v10, 0x0

    if-ge v1, v2, :cond_57

    .line 15
    new-instance v1, Landroid/text/StaticLayout;

    const/high16 v7, 0x3f800000    # 1.0f

    const/4 v8, 0x0

    const/4 v9, 0x1

    move-object v2, v1

    move-object v6, p2

    invoke-direct/range {v2 .. v9}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZ)V

    goto :goto_7b

    .line 16
    :cond_57
    invoke-virtual {v3}, Landroid/text/SpannableString;->length()I

    move-result v1

    invoke-static {v3, v10, v1, v4, v5}, Landroid/text/StaticLayout$Builder;->obtain(Ljava/lang/CharSequence;IILandroid/text/TextPaint;I)Landroid/text/StaticLayout$Builder;

    move-result-object v1

    .line 17
    invoke-virtual {v1, p2}, Landroid/text/StaticLayout$Builder;->setAlignment(Landroid/text/Layout$Alignment;)Landroid/text/StaticLayout$Builder;

    move-result-object p2

    const/4 v1, 0x0

    const/high16 v2, 0x3f800000    # 1.0f

    .line 18
    invoke-virtual {p2, v1, v2}, Landroid/text/StaticLayout$Builder;->setLineSpacing(FF)Landroid/text/StaticLayout$Builder;

    move-result-object p2

    const/4 v1, 0x1

    .line 19
    invoke-virtual {p2, v1}, Landroid/text/StaticLayout$Builder;->setIncludePad(Z)Landroid/text/StaticLayout$Builder;

    move-result-object p2

    .line 20
    invoke-virtual {p2, v1}, Landroid/text/StaticLayout$Builder;->setBreakStrategy(I)Landroid/text/StaticLayout$Builder;

    move-result-object p2

    .line 21
    invoke-virtual {p2, v1}, Landroid/text/StaticLayout$Builder;->setHyphenationFrequency(I)Landroid/text/StaticLayout$Builder;

    move-result-object p2

    .line 22
    invoke-virtual {p2}, Landroid/text/StaticLayout$Builder;->build()Landroid/text/StaticLayout;

    move-result-object v1

    .line 23
    :goto_7b
    invoke-virtual {v1, v10}, Landroid/text/Layout;->getLineAscent(I)I

    move-result p2

    const-wide/16 v2, 0x0

    .line 24
    invoke-virtual {v0, v2, v3}, Lcom/horcrux/svg/i;->c(D)D

    move-result-wide v2

    double-to-float v2, v2

    .line 25
    invoke-virtual {v0}, Lcom/horcrux/svg/i;->d()D

    move-result-wide v3

    int-to-double v5, p2

    add-double/2addr v3, v5

    double-to-float p2, v3

    .line 26
    invoke-virtual {p0}, Lcom/horcrux/svg/j;->e()V

    .line 27
    invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I

    .line 28
    invoke-virtual {p1, v2, p2}, Landroid/graphics/Canvas;->translate(FF)V

    .line 29
    invoke-virtual {v1, p1}, Landroid/text/Layout;->draw(Landroid/graphics/Canvas;)V

    .line 30
    invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V

    return-void
.end method

.method public setContent(Ljava/lang/String;)V
    .registers 2
    .annotation runtime Lcom/facebook/react/uimanager/annotations/ReactProp;
        name = "content"
    .end annotation

    .line 1
    iput-object p1, p0, Lcom/horcrux/svg/a0;->o:Ljava/lang/String;

    .line 2
    invoke-virtual {p0}, Lcom/horcrux/svg/a0;->invalidate()V

    return-void
.end method