Direct.smali
.class public Landroidx/constraintlayout/solver/widgets/analyzer/Direct;
.super Ljava/lang/Object;
.source "Direct.java"
# static fields
.field private static final APPLY_MATCH_PARENT:Z
.field private static final DEBUG:Z
.field private static measure:Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 45
new-instance v0, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct {v0}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
sput-object v0, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->measure:Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 41
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
.registers 12
.param p0, "layout" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 647
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v0
.line 648
.local v0, "horizontalBehaviour":Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v1
.line 649
.local v1, "verticalBehaviour":Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getParent()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v2
if-eqz v2, :cond_15
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getParent()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
goto :goto_16
:cond_15
const/4 v2, 0x0
.line 650
.local v2, "parent":Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
:goto_16
const/4 v3, 0x0
const/4 v4, 0x1
if-eqz v2, :cond_24
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getHorizontalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v5
sget-object v6, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->FIXED:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v5, v6, :cond_24
const/4 v5, 0x1
goto :goto_25
:cond_24
const/4 v5, 0x0
.line 651
.local v5, "isParentHorizontalFixed":Z
:goto_25
if-eqz v2, :cond_31
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v6
sget-object v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->FIXED:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v6, v7, :cond_31
const/4 v6, 0x1
goto :goto_32
:cond_31
const/4 v6, 0x0
.line 652
.local v6, "isParentVerticalFixed":Z
:goto_32
sget-object v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->FIXED:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
const/4 v8, 0x0
if-eq v0, v7, :cond_58
sget-object v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->WRAP_CONTENT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-eq v0, v7, :cond_58
sget-object v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v0, v7, :cond_4f
iget v7, p0, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultWidth:I
if-nez v7, :cond_4f
iget v7, p0, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mDimensionRatio:F
cmpl-float v7, v7, v8
if-nez v7, :cond_4f
.line 658
invoke-virtual {p0, v3}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->hasDanglingDimension(I)Z
move-result v7
if-nez v7, :cond_58
.line 659
:cond_4f
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isResolvedHorizontally()Z
move-result v7
if-eqz v7, :cond_56
goto :goto_58
:cond_56
const/4 v7, 0x0
goto :goto_59
:cond_58
:goto_58
const/4 v7, 0x1
.line 660
.local v7, "isHorizontalFixed":Z
:goto_59
sget-object v9, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->FIXED:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-eq v1, v9, :cond_7e
sget-object v9, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->WRAP_CONTENT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-eq v1, v9, :cond_7e
sget-object v9, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v1, v9, :cond_75
iget v9, p0, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultHeight:I
if-nez v9, :cond_75
iget v9, p0, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mDimensionRatio:F
cmpl-float v9, v9, v8
if-nez v9, :cond_75
.line 666
invoke-virtual {p0, v4}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->hasDanglingDimension(I)Z
move-result v9
if-nez v9, :cond_7e
.line 667
:cond_75
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isResolvedVertically()Z
move-result v9
if-eqz v9, :cond_7c
goto :goto_7e
:cond_7c
const/4 v9, 0x0
goto :goto_7f
:cond_7e
:goto_7e
const/4 v9, 0x1
.line 668
.local v9, "isVerticalFixed":Z
:goto_7f
iget v10, p0, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mDimensionRatio:F
cmpl-float v8, v10, v8
if-lez v8, :cond_8a
if-nez v7, :cond_89
if-eqz v9, :cond_8a
.line 669
:cond_89
return v4
.line 676
:cond_8a
if-eqz v7, :cond_8f
if-eqz v9, :cond_8f
const/4 v3, 0x1
:cond_8f
return v3
.end method
.method private static horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.registers 22
.param p0, "layout" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.param p1, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.param p2, "isRtl" # Z
.line 232
move-object/from16 v0, p0
move-object/from16 v1, p1
move/from16 v2, p2
instance-of v3, v0, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
if-nez v3, :cond_20
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v3
if-eqz v3, :cond_20
invoke-static/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v3
if-eqz v3, :cond_20
.line 233
new-instance v3, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct {v3}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
.line 234
.local v3, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v4, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
invoke-static {v0, v1, v3, v4}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 237
.end local v3 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_20
sget-object v3, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;->LEFT:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;
invoke-virtual {v0, v3}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getAnchor(Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;)Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
move-result-object v3
.line 238
.local v3, "left":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
sget-object v4, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;->RIGHT:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;
invoke-virtual {v0, v4}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getAnchor(Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;)Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
move-result-object v4
.line 239
.local v4, "right":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v5
.line 240
.local v5, "l":I
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v6
.line 242
.local v6, "r":I
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v7
const/4 v8, 0x0
const/16 v9, 0x8
if-eqz v7, :cond_148
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v7
if-eqz v7, :cond_148
.line 243
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v7
invoke-virtual {v7}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
move-result-object v7
:goto_4b
invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z
move-result v12
if-eqz v12, :cond_148
invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v12
check-cast v12, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 244
.local v12, "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v13, v12, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 245
.local v13, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
const/4 v14, 0x0
.line 246
.local v14, "x1":I
const/4 v15, 0x0
.line 247
.local v15, "x2":I
invoke-static {v13}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v16
.line 248
.local v16, "canMeasure":Z
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v17
if-eqz v17, :cond_75
if-eqz v16, :cond_75
.line 249
new-instance v17, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct/range {v17 .. v17}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
move-object/from16 v18, v17
.line 250
.local v18, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v10, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
move-object/from16 v11, v18
.end local v18 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.local v11, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-static {v13, v1, v11, v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 253
.end local v11 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_75
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v10
sget-object v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v10, v11, :cond_e5
if-eqz v16, :cond_80
goto :goto_e5
.line 279
:cond_80
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v10
sget-object v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v10, v11, :cond_146
iget v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxWidth:I
if-ltz v10, :cond_146
iget v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMinWidth:I
if-ltz v10, :cond_146
.line 281
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v10
if-eq v10, v9, :cond_a2
iget v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultWidth:I
if-nez v10, :cond_146
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getDimensionRatio()F
move-result v10
cmpl-float v10, v10, v8
if-nez v10, :cond_146
.line 282
:cond_a2
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInHorizontalChain()Z
move-result v10
if-nez v10, :cond_146
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVirtualLayout()Z
move-result v10
if-nez v10, :cond_146
.line 283
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v12, v10, :cond_c2
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v10, :cond_c2
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v10
if-nez v10, :cond_d6
:cond_c2
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v12, v10, :cond_d8
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v10, :cond_d8
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 284
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v10
if-eqz v10, :cond_d8
:cond_d6
const/4 v10, 0x1
goto :goto_d9
:cond_d8
const/4 v10, 0x0
.line 285
.local v10, "bothConnected":Z
:goto_d9
if-eqz v10, :cond_146
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInHorizontalChain()Z
move-result v11
if-nez v11, :cond_146
.line 286
invoke-static {v0, v1, v13, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveHorizontalMatchConstraint(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Z)V
goto :goto_146
.line 255
.end local v10 # "bothConnected":Z
:cond_e5
:goto_e5
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v10
if-eqz v10, :cond_ed
.line 260
goto/16 :goto_4b
.line 262
:cond_ed
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v12, v10, :cond_10a
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v10, :cond_10a
.line 263
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v10
add-int/2addr v10, v5
.line 264
.end local v14 # "x1":I
.local v10, "x1":I
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v11
add-int/2addr v11, v10
.line 265
.end local v15 # "x2":I
.local v11, "x2":I
invoke-virtual {v13, v10, v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 266
invoke-static {v13, v1, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
goto :goto_146
.line 267
.end local v10 # "x1":I
.end local v11 # "x2":I
.restart local v14 # "x1":I
.restart local v15 # "x2":I
:cond_10a
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v12, v10, :cond_129
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v10, :cond_129
.line 268
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v10
sub-int v10, v5, v10
.line 269
.end local v15 # "x2":I
.local v10, "x2":I
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v11
sub-int v11, v10, v11
.line 270
.end local v14 # "x1":I
.local v11, "x1":I
invoke-virtual {v13, v11, v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 271
invoke-static {v13, v1, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
goto :goto_146
.line 272
.end local v10 # "x2":I
.end local v11 # "x1":I
.restart local v14 # "x1":I
.restart local v15 # "x2":I
:cond_129
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v12, v10, :cond_146
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v10, :cond_146
iget-object v10, v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 273
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v10
if-eqz v10, :cond_146
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInHorizontalChain()Z
move-result v10
if-nez v10, :cond_146
.line 274
invoke-static {v1, v13, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveHorizontalCenterConstraints(Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Z)V
.line 289
.end local v12 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v13 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v14 # "x1":I
.end local v15 # "x2":I
.end local v16 # "canMeasure":Z
:cond_146
:goto_146
goto/16 :goto_4b
.line 291
:cond_148
instance-of v7, v0, Landroidx/constraintlayout/solver/widgets/Guideline;
if-eqz v7, :cond_14d
.line 292
return-void
.line 294
:cond_14d
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v7
if-eqz v7, :cond_262
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v7
if-eqz v7, :cond_262
.line 295
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v7
invoke-virtual {v7}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
move-result-object v7
:goto_161
invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z
move-result v10
if-eqz v10, :cond_262
invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 296
.local v10, "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v11, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 297
.local v11, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-static {v11}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v12
.line 298
.local v12, "canMeasure":Z
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v13
if-eqz v13, :cond_185
if-eqz v12, :cond_185
.line 299
new-instance v13, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct {v13}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
.line 300
.local v13, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v14, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
invoke-static {v11, v1, v13, v14}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 303
.end local v13 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_185
const/4 v13, 0x0
.line 304
.local v13, "x1":I
const/4 v14, 0x0
.line 305
.local v14, "x2":I
iget-object v15, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v10, v15, :cond_19b
iget-object v15, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v15, v15, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v15, :cond_19b
iget-object v15, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v15, v15, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v15
if-nez v15, :cond_1af
:cond_19b
iget-object v15, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v10, v15, :cond_1b1
iget-object v15, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v15, v15, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v15, :cond_1b1
iget-object v15, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v15, v15, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 306
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v15
if-eqz v15, :cond_1b1
:cond_1af
const/4 v15, 0x1
goto :goto_1b2
:cond_1b1
const/4 v15, 0x0
.line 307
.local v15, "bothConnected":Z
:goto_1b2
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v8
sget-object v9, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v8, v9, :cond_20b
if-eqz v12, :cond_1c1
const/16 v9, 0x8
const/16 v16, 0x0
goto :goto_20f
.line 329
:cond_1c1
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v8
sget-object v9, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v8, v9, :cond_206
iget v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxWidth:I
if-ltz v8, :cond_206
iget v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMinWidth:I
if-ltz v8, :cond_206
.line 331
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v8
const/16 v9, 0x8
if-eq v8, v9, :cond_1ec
iget v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultWidth:I
if-nez v8, :cond_1e8
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getDimensionRatio()F
move-result v8
const/16 v16, 0x0
cmpl-float v8, v8, v16
if-nez v8, :cond_25f
goto :goto_1ee
:cond_1e8
const/16 v16, 0x0
goto/16 :goto_25f
:cond_1ec
const/16 v16, 0x0
.line 332
:goto_1ee
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInHorizontalChain()Z
move-result v8
if-nez v8, :cond_25f
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVirtualLayout()Z
move-result v8
if-nez v8, :cond_25f
.line 333
if-eqz v15, :cond_25f
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInHorizontalChain()Z
move-result v8
if-nez v8, :cond_25f
.line 334
invoke-static {v0, v1, v11, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveHorizontalMatchConstraint(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Z)V
goto :goto_25f
.line 329
:cond_206
const/16 v9, 0x8
const/16 v16, 0x0
goto :goto_25f
.line 307
:cond_20b
const/16 v9, 0x8
const/16 v16, 0x0
.line 309
:goto_20f
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v8
if-eqz v8, :cond_218
.line 314
const/4 v8, 0x0
goto/16 :goto_161
.line 316
:cond_218
iget-object v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v10, v8, :cond_235
iget-object v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v8, v8, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v8, :cond_235
.line 317
iget-object v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v8
add-int/2addr v8, v6
.line 318
.end local v13 # "x1":I
.local v8, "x1":I
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v13
add-int/2addr v13, v8
.line 319
.end local v14 # "x2":I
.local v13, "x2":I
invoke-virtual {v11, v8, v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 320
invoke-static {v11, v1, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
goto :goto_25f
.line 321
.end local v8 # "x1":I
.local v13, "x1":I
.restart local v14 # "x2":I
:cond_235
iget-object v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v10, v8, :cond_254
iget-object v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v8, v8, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v8, :cond_254
.line 322
iget-object v8, v11, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v8
sub-int v8, v6, v8
.line 323
.end local v14 # "x2":I
.local v8, "x2":I
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v14
sub-int v13, v8, v14
.line 324
invoke-virtual {v11, v13, v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 325
invoke-static {v11, v1, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
goto :goto_25f
.line 326
.end local v8 # "x2":I
.restart local v14 # "x2":I
:cond_254
if-eqz v15, :cond_25f
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInHorizontalChain()Z
move-result v8
if-nez v8, :cond_25f
.line 327
invoke-static {v1, v11, v2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveHorizontalCenterConstraints(Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Z)V
.line 337
.end local v10 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v11 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v12 # "canMeasure":Z
.end local v13 # "x1":I
.end local v14 # "x2":I
.end local v15 # "bothConnected":Z
:cond_25f
:goto_25f
const/4 v8, 0x0
goto/16 :goto_161
.line 339
:cond_262
return-void
.end method
.method private static solveBarrier(Landroidx/constraintlayout/solver/widgets/Barrier;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;IZ)V
.registers 5
.param p0, "barrier" # Landroidx/constraintlayout/solver/widgets/Barrier;
.param p1, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.param p2, "orientation" # I
.param p3, "isRtl" # Z
.line 211
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/Barrier;->allSolved()Z
move-result v0
if-eqz v0, :cond_f
.line 212
if-nez p2, :cond_c
.line 213
invoke-static {p0, p1, p3}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
goto :goto_f
.line 215
:cond_c
invoke-static {p0, p1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 218
:cond_f
:goto_f
return-void
.end method
.method public static solveChain(Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/solver/LinearSystem;IILandroidx/constraintlayout/solver/widgets/ChainHead;ZZZ)Z
.registers 36
.param p0, "container" # Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
.param p1, "system" # Landroidx/constraintlayout/solver/LinearSystem;
.param p2, "orientation" # I
.param p3, "offset" # I
.param p4, "chainHead" # Landroidx/constraintlayout/solver/widgets/ChainHead;
.param p5, "isChainSpread" # Z
.param p6, "isChainSpreadInside" # Z
.param p7, "isChainPacked" # Z
.line 699
const/4 v0, 0x0
if-eqz p7, :cond_4
.line 700
return v0
.line 702
:cond_4
if-nez p2, :cond_d
.line 703
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isResolvedHorizontally()Z
move-result v1
if-nez v1, :cond_14
.line 704
return v0
.line 707
:cond_d
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isResolvedVertically()Z
move-result v1
if-nez v1, :cond_14
.line 708
return v0
.line 712
:cond_14
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isRtl()Z
move-result v1
.line 714
.local v1, "isRtl":Z
invoke-virtual/range {p4 .. p4}, Landroidx/constraintlayout/solver/widgets/ChainHead;->getFirst()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v2
.line 715
.local v2, "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-virtual/range {p4 .. p4}, Landroidx/constraintlayout/solver/widgets/ChainHead;->getLast()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v3
.line 716
.local v3, "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-virtual/range {p4 .. p4}, Landroidx/constraintlayout/solver/widgets/ChainHead;->getFirstVisibleWidget()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v4
.line 717
.local v4, "firstVisibleWidget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-virtual/range {p4 .. p4}, Landroidx/constraintlayout/solver/widgets/ChainHead;->getLastVisibleWidget()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v5
.line 718
.local v5, "lastVisibleWidget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-virtual/range {p4 .. p4}, Landroidx/constraintlayout/solver/widgets/ChainHead;->getHead()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v6
.line 720
.local v6, "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-object v7, v2
.line 721
.local v7, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
const/4 v8, 0x0
.line 722
.local v8, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
const/4 v9, 0x0
.line 724
.local v9, "done":Z
iget-object v10, v2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v10, v10, p3
.line 725
.local v10, "begin":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v11, v3, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
add-int/lit8 v12, p3, 0x1
aget-object v11, v11, v12
.line 726
.local v11, "end":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v12, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v12, :cond_2ea
iget-object v12, v11, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v12, :cond_4b
move-object/from16 v26, v2
move-object/from16 v22, v3
move-object/from16 v17, v6
move-object/from16 v6, p1
goto/16 :goto_2f2
.line 729
:cond_4b
iget-object v12, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v12
if-eqz v12, :cond_2e1
iget-object v12, v11, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v12
if-nez v12, :cond_65
move-object/from16 v26, v2
move-object/from16 v22, v3
move-object/from16 v17, v6
move-object/from16 v6, p1
goto/16 :goto_2e9
.line 733
:cond_65
if-eqz v4, :cond_2d8
if-nez v5, :cond_73
move-object/from16 v26, v2
move-object/from16 v22, v3
move-object/from16 v17, v6
move-object/from16 v6, p1
goto/16 :goto_2e0
.line 737
:cond_73
iget-object v12, v10, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v12
iget-object v13, v4, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v13, v13, p3
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v13
add-int/2addr v12, v13
.line 738
.local v12, "startPoint":I
iget-object v13, v11, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v13}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v13
iget-object v14, v5, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
add-int/lit8 v15, p3, 0x1
aget-object v14, v14, v15
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v14
sub-int/2addr v13, v14
.line 740
.local v13, "endPoint":I
sub-int v14, v13, v12
.line 741
.local v14, "distance":I
if-gtz v14, :cond_98
.line 742
return v0
.line 744
:cond_98
const/4 v15, 0x0
.line 745
.local v15, "totalSize":I
new-instance v16, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct/range {v16 .. v16}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
move-object/from16 v17, v16
.line 747
.local v17, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
const/16 v16, 0x0
.line 748
.local v16, "numWidgets":I
const/16 v18, 0x0
move/from16 v19, v16
move/from16 v20, v18
.line 750
.end local v16 # "numWidgets":I
.local v19, "numWidgets":I
.local v20, "numVisibleWidgets":I
:goto_a8
if-nez v9, :cond_149
.line 751
iget-object v0, v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v10, v0, p3
.line 752
invoke-static {v7}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v0
.line 753
.local v0, "canMeasure":Z
if-nez v0, :cond_b7
.line 754
const/16 v16, 0x0
return v16
.line 756
:cond_b7
const/16 v16, 0x0
move/from16 v21, v0
.end local v0 # "canMeasure":Z
.local v21, "canMeasure":Z
iget-object v0, v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListDimensionBehaviors:[Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
aget-object v0, v0, p2
move-object/from16 v22, v3
.end local v3 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v22, "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
sget-object v3, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v0, v3, :cond_c6
.line 757
return v16
.line 760
:cond_c6
invoke-virtual {v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v0
if-eqz v0, :cond_da
.line 761
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v0
sget v3, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
move-object/from16 v23, v8
move-object/from16 v8, v17
.end local v17 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.local v8, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.local v23, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-static {v7, v0, v8, v3}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
goto :goto_de
.line 760
.end local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v8, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v17 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_da
move-object/from16 v23, v8
move-object/from16 v8, v17
.line 764
.end local v17 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.local v8, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.restart local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:goto_de
iget-object v0, v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v0, v0, p3
invoke-virtual {v0}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v0
add-int/2addr v15, v0
.line 765
if-nez p2, :cond_ef
.line 766
invoke-virtual {v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v0
add-int/2addr v15, v0
goto :goto_f4
.line 768
:cond_ef
invoke-virtual {v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v0
add-int/2addr v15, v0
.line 770
:goto_f4
iget-object v0, v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
add-int/lit8 v3, p3, 0x1
aget-object v0, v0, v3
invoke-virtual {v0}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v0
add-int/2addr v15, v0
.line 772
move/from16 v0, v19
.end local v19 # "numWidgets":I
.local v0, "numWidgets":I
add-int/lit8 v19, v0, 0x1
.line 773
.end local v0 # "numWidgets":I
.restart local v19 # "numWidgets":I
invoke-virtual {v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v0
const/16 v3, 0x8
if-eq v0, v3, :cond_110
.line 774
move/from16 v3, v20
.end local v20 # "numVisibleWidgets":I
.local v3, "numVisibleWidgets":I
add-int/lit8 v20, v3, 0x1
.end local v3 # "numVisibleWidgets":I
.restart local v20 # "numVisibleWidgets":I
goto :goto_112
.line 773
:cond_110
move/from16 v3, v20
.line 779
:goto_112
iget-object v0, v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
add-int/lit8 v3, p3, 0x1
aget-object v0, v0, v3
iget-object v0, v0, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 780
.local v0, "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v0, :cond_137
.line 781
iget-object v3, v0, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 782
.end local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v3, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-object/from16 v17, v0
.end local v0 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.local v17, "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v0, v3, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v0, v0, p3
iget-object v0, v0, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v0, :cond_135
iget-object v0, v3, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v0, v0, p3
iget-object v0, v0, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v0, v0, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
if-eq v0, v7, :cond_133
goto :goto_135
:cond_133
move-object v0, v3
goto :goto_13a
.line 784
:cond_135
:goto_135
const/4 v0, 0x0
.end local v3 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v0, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
goto :goto_13a
.line 787
.end local v17 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.local v0, "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.restart local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_137
move-object/from16 v17, v0
.end local v0 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.restart local v17 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
const/4 v0, 0x0
.line 789
.end local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v0, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:goto_13a
if-eqz v0, :cond_13f
.line 790
move-object v3, v0
move-object v7, v3
.end local v7 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v3, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
goto :goto_141
.line 792
.end local v3 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v7 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_13f
const/4 v3, 0x1
move v9, v3
.line 794
.end local v17 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v21 # "canMeasure":Z
:goto_141
move-object/from16 v17, v8
move-object/from16 v3, v22
move-object v8, v0
const/4 v0, 0x0
goto/16 :goto_a8
.line 796
.end local v0 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v3, "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v8, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v17, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_149
move-object/from16 v22, v3
move-object/from16 v23, v8
move-object/from16 v8, v17
move/from16 v0, v19
move/from16 v3, v20
.end local v17 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.end local v19 # "numWidgets":I
.end local v20 # "numVisibleWidgets":I
.local v0, "numWidgets":I
.local v3, "numVisibleWidgets":I
.local v8, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.restart local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
if-nez v3, :cond_158
.line 797
const/16 v16, 0x0
return v16
.line 800
:cond_158
const/16 v16, 0x0
if-eq v3, v0, :cond_15d
.line 801
return v16
.line 804
:cond_15d
if-ge v14, v15, :cond_160
.line 805
return v16
.line 808
:cond_160
sub-int v17, v14, v15
.line 809
.local v17, "gap":I
move/from16 v19, v0
.end local v0 # "numWidgets":I
.restart local v19 # "numWidgets":I
if-eqz p5, :cond_170
.line 810
add-int/lit8 v21, v3, 0x1
div-int v17, v17, v21
move-object/from16 v24, v7
move/from16 v0, v17
const/4 v7, 0x1
goto :goto_188
.line 811
:cond_170
if-eqz p6, :cond_183
.line 812
const/4 v0, 0x2
if-le v3, v0, :cond_17f
.line 813
div-int v0, v17, v3
move-object/from16 v24, v7
const/4 v7, 0x1
.end local v7 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v24, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
add-int/lit8 v17, v0, -0x1
move/from16 v0, v17
goto :goto_188
.line 812
.end local v24 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v7 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_17f
move-object/from16 v24, v7
const/4 v7, 0x1
.end local v7 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v24 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
goto :goto_186
.line 811
.end local v24 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v7 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_183
move-object/from16 v24, v7
const/4 v7, 0x1
.line 817
.end local v7 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v24 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:goto_186
move/from16 v0, v17
.end local v17 # "gap":I
.local v0, "gap":I
:goto_188
if-ne v3, v7, :cond_1c1
.line 818
const/high16 v7, 0x3f000000 # 0.5f
.line 819
.local v7, "bias":F
if-nez p2, :cond_193
.line 820
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalBiasPercent()F
move-result v7
goto :goto_197
.line 822
:cond_193
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalBiasPercent()F
move-result v7
.line 824
:goto_197
const/high16 v16, 0x3f000000 # 0.5f
move-object/from16 v17, v6
.end local v6 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v17, "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
int-to-float v6, v12
add-float v6, v6, v16
move-object/from16 v25, v8
.end local v8 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.local v25, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
int-to-float v8, v0
mul-float v8, v8, v7
add-float/2addr v6, v8
float-to-int v6, v6
.line 825
.local v6, "p1":I
if-nez p2, :cond_1b0
.line 826
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v8
add-int/2addr v8, v6
invoke-virtual {v4, v6, v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
goto :goto_1b8
.line 828
:cond_1b0
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v8
add-int/2addr v8, v6
invoke-virtual {v4, v6, v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 830
:goto_1b8
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v8
invoke-static {v4, v8, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 831
const/4 v8, 0x1
return v8
.line 834
.end local v7 # "bias":F
.end local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v25 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.local v6, "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v8 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_1c1
move-object/from16 v17, v6
move-object/from16 v25, v8
.end local v6 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v8 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.restart local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v25 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
if-eqz p5, :cond_282
.line 835
const/4 v6, 0x0
.line 837
.end local v9 # "done":Z
.local v6, "done":Z
add-int v7, v12, v0
.line 838
.local v7, "current":I
move-object v8, v2
move v9, v6
.line 839
.end local v6 # "done":Z
.end local v24 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v8, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v9 # "done":Z
:goto_1cc
if-nez v9, :cond_277
.line 840
iget-object v6, v8, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v10, v6, p3
.line 841
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v6
move-object/from16 v26, v2
const/16 v2, 0x8
.end local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v26, "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
if-ne v6, v2, :cond_1f4
.line 842
if-nez p2, :cond_1e9
.line 843
invoke-virtual {v8, v7, v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 844
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v6
invoke-static {v8, v6, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
goto :goto_234
.line 846
:cond_1e9
invoke-virtual {v8, v7, v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 847
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v6
invoke-static {v8, v6}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
goto :goto_234
.line 850
:cond_1f4
iget-object v6, v8, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v6, v6, p3
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v6
add-int/2addr v7, v6
.line 851
if-nez p2, :cond_214
.line 852
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v6
add-int/2addr v6, v7
invoke-virtual {v8, v7, v6}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 853
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v6
invoke-static {v8, v6, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 854
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v6
add-int/2addr v7, v6
goto :goto_228
.line 856
:cond_214
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v6
add-int/2addr v6, v7
invoke-virtual {v8, v7, v6}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 857
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v6
invoke-static {v8, v6}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 858
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v6
add-int/2addr v7, v6
.line 860
:goto_228
iget-object v6, v8, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
add-int/lit8 v18, p3, 0x1
aget-object v6, v6, v18
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v6
add-int/2addr v7, v6
.line 861
add-int/2addr v7, v0
.line 864
:goto_234
move-object/from16 v6, p1
const/4 v2, 0x0
invoke-virtual {v8, v6, v2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->addToSolver(Landroidx/constraintlayout/solver/LinearSystem;Z)V
.line 867
iget-object v2, v8, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
add-int/lit8 v20, p3, 0x1
aget-object v2, v2, v20
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 868
.local v2, "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v2, :cond_264
.line 869
move/from16 v27, v0
.end local v0 # "gap":I
.local v27, "gap":I
iget-object v0, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 870
.end local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v0, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-object/from16 v20, v2
.end local v2 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.local v20, "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v2, v0, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v2, v2, p3
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v2, :cond_260
iget-object v2, v0, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mListAnchors:[Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
aget-object v2, v2, p3
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
if-eq v2, v8, :cond_25d
goto :goto_260
:cond_25d
move-object/from16 v23, v0
goto :goto_26b
.line 872
:cond_260
:goto_260
const/4 v0, 0x0
move-object/from16 v23, v0
goto :goto_26b
.line 875
.end local v20 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v27 # "gap":I
.local v0, "gap":I
.restart local v2 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.restart local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_264
move/from16 v27, v0
move-object/from16 v20, v2
.end local v0 # "gap":I
.end local v2 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.restart local v20 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.restart local v27 # "gap":I
const/4 v0, 0x0
move-object/from16 v23, v0
.line 877
:goto_26b
if-eqz v23, :cond_270
.line 878
move-object/from16 v8, v23
goto :goto_271
.line 880
:cond_270
const/4 v9, 0x1
.line 882
.end local v20 # "nextAnchor":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
:goto_271
move-object/from16 v2, v26
move/from16 v0, v27
goto/16 :goto_1cc
.line 839
.end local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v27 # "gap":I
.restart local v0 # "gap":I
.local v2, "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_277
move-object/from16 v6, p1
move/from16 v27, v0
move-object/from16 v26, v2
.line 883
.end local v0 # "gap":I
.end local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v7 # "current":I
.restart local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v27 # "gap":I
move-object v7, v8
move-object/from16 v8, v23
const/4 v0, 0x1
goto :goto_2d7
.end local v8 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v27 # "gap":I
.restart local v0 # "gap":I
.restart local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v24 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_282
move-object/from16 v6, p1
move/from16 v27, v0
move-object/from16 v26, v2
.end local v0 # "gap":I
.end local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v27 # "gap":I
if-eqz p6, :cond_2d2
.line 884
const/4 v0, 0x2
if-ne v3, v0, :cond_2d0
.line 885
if-nez p2, :cond_2af
.line 886
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v0
add-int/2addr v0, v12
invoke-virtual {v4, v12, v0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 887
invoke-virtual {v5}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v0
sub-int v0, v13, v0
invoke-virtual {v5, v0, v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 888
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v0
invoke-static {v4, v0, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 889
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v0
invoke-static {v5, v0, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
goto :goto_2ce
.line 891
:cond_2af
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v0
add-int/2addr v0, v12
invoke-virtual {v4, v12, v0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 892
invoke-virtual {v5}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v0
sub-int v0, v13, v0
invoke-virtual {v5, v0, v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 893
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v0
invoke-static {v4, v0}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 894
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getMeasurer()Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
move-result-object v0
invoke-static {v5, v0}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 896
:goto_2ce
const/4 v0, 0x1
return v0
.line 898
:cond_2d0
const/4 v0, 0x0
return v0
.line 883
:cond_2d2
const/4 v0, 0x1
move-object/from16 v8, v23
move-object/from16 v7, v24
.line 900
.end local v23 # "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v24 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v7, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v8, "next":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:goto_2d7
return v0
.line 733
.end local v12 # "startPoint":I
.end local v13 # "endPoint":I
.end local v14 # "distance":I
.end local v15 # "totalSize":I
.end local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v19 # "numWidgets":I
.end local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v25 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.end local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v27 # "gap":I
.restart local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v3, "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.local v6, "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_2d8
move-object/from16 v26, v2
move-object/from16 v22, v3
move-object/from16 v17, v6
move-object/from16 v6, p1
.line 734
.end local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v3 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v6 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:goto_2e0
return v0
.line 729
.end local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v3 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v6 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_2e1
move-object/from16 v26, v2
move-object/from16 v22, v3
move-object/from16 v17, v6
move-object/from16 v6, p1
.line 730
.end local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v3 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v6 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:goto_2e9
return v0
.line 726
.end local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v3 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v6 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_2ea
move-object/from16 v26, v2
move-object/from16 v22, v3
move-object/from16 v17, v6
move-object/from16 v6, p1
.line 727
.end local v2 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v3 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v6 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v17 # "head":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v22 # "last":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.restart local v26 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:goto_2f2
return v0
.end method
.method private static solveHorizontalCenterConstraints(Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Z)V
.registers 13
.param p0, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.param p1, "widget" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.param p2, "isRtl" # Z
.line 499
invoke-virtual {p1}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalBiasPercent()F
move-result v0
.line 500
.local v0, "bias":F
iget-object v1, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v1, v1, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v1}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v1
.line 501
.local v1, "start":I
iget-object v2, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v2
.line 502
.local v2, "end":I
iget-object v3, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v3
add-int/2addr v3, v1
.line 503
.local v3, "s1":I
iget-object v4, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v4
sub-int v4, v2, v4
.line 504
.local v4, "s2":I
if-ne v1, v2, :cond_29
.line 505
const/high16 v0, 0x3f000000 # 0.5f
.line 506
move v3, v1
.line 507
move v4, v2
.line 509
:cond_29
invoke-virtual {p1}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v5
.line 510
.local v5, "width":I
sub-int v6, v4, v3
sub-int/2addr v6, v5
.line 511
.local v6, "distance":I
if-le v3, v4, :cond_36
.line 512
sub-int v7, v3, v4
sub-int v6, v7, v5
.line 514
:cond_36
const/high16 v7, 0x3f000000 # 0.5f
int-to-float v8, v6
mul-float v8, v8, v0
add-float/2addr v8, v7
float-to-int v7, v8
.line 515
.local v7, "d1":I
add-int v8, v3, v7
.line 516
.local v8, "x1":I
add-int v9, v8, v5
.line 517
.local v9, "x2":I
if-le v3, v4, :cond_47
.line 518
add-int v8, v3, v7
.line 519
sub-int v9, v8, v5
.line 521
:cond_47
invoke-virtual {p1, v8, v9}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 522
invoke-static {p1, p0, p2}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 523
return-void
.end method
.method private static solveHorizontalMatchConstraint(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Z)V
.registers 12
.param p0, "layout" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.param p1, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.param p2, "widget" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.param p3, "isRtl" # Z
.line 569
invoke-virtual {p2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalBiasPercent()F
move-result v0
.line 570
.local v0, "bias":F
iget-object v1, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v1, v1, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v1}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v1
iget-object v2, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mLeft:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v2
add-int/2addr v1, v2
.line 571
.local v1, "s1":I
iget-object v2, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v2
iget-object v3, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mRight:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v3
sub-int/2addr v2, v3
.line 572
.local v2, "s2":I
if-lt v2, v1, :cond_7e
.line 573
invoke-virtual {p2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v3
.line 574
.local v3, "width":I
invoke-virtual {p2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v4
const/16 v5, 0x8
const/high16 v6, 0x3f000000 # 0.5f
if-eq v4, v5, :cond_6c
.line 575
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultWidth:I
const/4 v5, 0x2
if-ne v4, v5, :cond_54
.line 576
const/4 v4, 0x0
.line 577
.local v4, "parentWidth":I
instance-of v5, p0, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
if-eqz v5, :cond_41
.line 578
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v4
goto :goto_49
.line 580
:cond_41
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getParent()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v5
invoke-virtual {v5}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I
move-result v4
.line 582
:goto_49
invoke-virtual {p2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHorizontalBiasPercent()F
move-result v5
mul-float v5, v5, v6
int-to-float v7, v4
mul-float v5, v5, v7
float-to-int v3, v5
.end local v4 # "parentWidth":I
goto :goto_5b
.line 583
:cond_54
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultWidth:I
if-nez v4, :cond_5b
.line 584
sub-int v3, v2, v1
goto :goto_5c
.line 583
:cond_5b
:goto_5b
nop
.line 586
:goto_5c
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMinWidth:I
invoke-static {v4, v3}, Ljava/lang/Math;->max(II)I
move-result v3
.line 587
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxWidth:I
if-lez v4, :cond_6c
.line 588
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxWidth:I
invoke-static {v4, v3}, Ljava/lang/Math;->min(II)I
move-result v3
.line 591
:cond_6c
sub-int v4, v2, v1
sub-int/2addr v4, v3
.line 592
.local v4, "distance":I
int-to-float v5, v4
mul-float v5, v5, v0
add-float/2addr v5, v6
float-to-int v5, v5
.line 593
.local v5, "d1":I
add-int v6, v1, v5
.line 594
.local v6, "x1":I
add-int v7, v6, v3
.line 595
.local v7, "x2":I
invoke-virtual {p2, v6, v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalHorizontal(II)V
.line 596
invoke-static {p2, p1, p3}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 598
.end local v3 # "width":I
.end local v4 # "distance":I
.end local v5 # "d1":I
.end local v6 # "x1":I
.end local v7 # "x2":I
:cond_7e
return-void
.end method
.method private static solveVerticalCenterConstraints(Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)V
.registers 12
.param p0, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.param p1, "widget" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 534
invoke-virtual {p1}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalBiasPercent()F
move-result v0
.line 535
.local v0, "bias":F
iget-object v1, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v1, v1, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v1}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v1
.line 536
.local v1, "start":I
iget-object v2, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v2
.line 537
.local v2, "end":I
iget-object v3, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v3
add-int/2addr v3, v1
.line 538
.local v3, "s1":I
iget-object v4, p1, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v4}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v4
sub-int v4, v2, v4
.line 539
.local v4, "s2":I
if-ne v1, v2, :cond_29
.line 540
const/high16 v0, 0x3f000000 # 0.5f
.line 541
move v3, v1
.line 542
move v4, v2
.line 544
:cond_29
invoke-virtual {p1}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v5
.line 545
.local v5, "height":I
sub-int v6, v4, v3
sub-int/2addr v6, v5
.line 546
.local v6, "distance":I
if-le v3, v4, :cond_36
.line 547
sub-int v7, v3, v4
sub-int v6, v7, v5
.line 549
:cond_36
const/high16 v7, 0x3f000000 # 0.5f
int-to-float v8, v6
mul-float v8, v8, v0
add-float/2addr v8, v7
float-to-int v7, v8
.line 550
.local v7, "d1":I
add-int v8, v3, v7
.line 551
.local v8, "y1":I
add-int v9, v8, v5
.line 552
.local v9, "y2":I
if-le v3, v4, :cond_47
.line 553
sub-int v8, v3, v7
.line 554
sub-int v9, v8, v5
.line 556
:cond_47
invoke-virtual {p1, v8, v9}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 557
invoke-static {p1, p0}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 558
return-void
.end method
.method private static solveVerticalMatchConstraint(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)V
.registers 11
.param p0, "layout" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.param p1, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.param p2, "widget" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 609
invoke-virtual {p2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalBiasPercent()F
move-result v0
.line 610
.local v0, "bias":F
iget-object v1, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v1, v1, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v1}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v1
iget-object v2, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v2
add-int/2addr v1, v2
.line 611
.local v1, "s1":I
iget-object v2, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v2, v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v2
iget-object v3, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v3
sub-int/2addr v2, v3
.line 612
.local v2, "s2":I
if-lt v2, v1, :cond_7a
.line 613
invoke-virtual {p2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v3
.line 614
.local v3, "height":I
invoke-virtual {p2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v4
const/16 v5, 0x8
const/high16 v6, 0x3f000000 # 0.5f
if-eq v4, v5, :cond_68
.line 615
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultHeight:I
const/4 v5, 0x2
if-ne v4, v5, :cond_50
.line 616
const/4 v4, 0x0
.line 617
.local v4, "parentHeight":I
instance-of v5, p0, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
if-eqz v5, :cond_41
.line 618
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v4
goto :goto_49
.line 620
:cond_41
invoke-virtual {p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getParent()Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
move-result-object v5
invoke-virtual {v5}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v4
.line 622
:goto_49
mul-float v5, v0, v6
int-to-float v7, v4
mul-float v5, v5, v7
float-to-int v3, v5
.end local v4 # "parentHeight":I
goto :goto_57
.line 623
:cond_50
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultHeight:I
if-nez v4, :cond_57
.line 624
sub-int v3, v2, v1
goto :goto_58
.line 623
:cond_57
:goto_57
nop
.line 626
:goto_58
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMinHeight:I
invoke-static {v4, v3}, Ljava/lang/Math;->max(II)I
move-result v3
.line 627
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxHeight:I
if-lez v4, :cond_68
.line 628
iget v4, p2, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxHeight:I
invoke-static {v4, v3}, Ljava/lang/Math;->min(II)I
move-result v3
.line 631
:cond_68
sub-int v4, v2, v1
sub-int/2addr v4, v3
.line 632
.local v4, "distance":I
int-to-float v5, v4
mul-float v5, v5, v0
add-float/2addr v5, v6
float-to-int v5, v5
.line 633
.local v5, "d1":I
add-int v6, v1, v5
.line 634
.local v6, "y1":I
add-int v7, v6, v3
.line 635
.local v7, "y2":I
invoke-virtual {p2, v6, v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 636
invoke-static {p2, p1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 638
.end local v3 # "height":I
.end local v4 # "distance":I
.end local v5 # "d1":I
.end local v6 # "y1":I
.end local v7 # "y2":I
:cond_7a
return-void
.end method
.method public static solvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.registers 19
.param p0, "layout" # Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
.param p1, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.line 54
move-object/from16 v0, p0
move-object/from16 v1, p1
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getHorizontalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v2
.line 55
.local v2, "horizontal":Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v3
.line 59
.local v3, "vertical":Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->resetFinalResolution()V
.line 60
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getChildren()Ljava/util/ArrayList;
move-result-object v4
.line 61
.local v4, "children":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroidx/constraintlayout/solver/widgets/ConstraintWidget;>;"
invoke-virtual {v4}, Ljava/util/ArrayList;->size()I
move-result v5
.line 62
.local v5, "count":I
const/4 v6, 0x0
.local v6, "i":I
:goto_18
if-ge v6, v5, :cond_26
.line 63
invoke-virtual {v4, v6}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 64
.local v7, "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-virtual {v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->resetFinalResolution()V
.line 62
.end local v7 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
add-int/lit8 v6, v6, 0x1
goto :goto_18
.line 67
.end local v6 # "i":I
:cond_26
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isRtl()Z
move-result v6
.line 74
.local v6, "isRtl":Z
sget-object v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->FIXED:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
const/4 v8, 0x0
if-ne v2, v7, :cond_37
.line 75
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getWidth()I
move-result v7
invoke-virtual {v0, v8, v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->setFinalHorizontal(II)V
goto :goto_3a
.line 77
:cond_37
invoke-virtual {v0, v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->setFinalLeft(I)V
.line 81
:goto_3a
const/4 v7, 0x0
.line 82
.local v7, "hasGuideline":Z
const/4 v9, 0x0
.line 83
.local v9, "hasBarrier":Z
const/4 v10, 0x0
.local v10, "i":I
:goto_3d
const/high16 v11, 0x3f000000 # 0.5f
const/4 v12, -0x1
const/4 v13, 0x1
if-ge v10, v5, :cond_a7
.line 84
invoke-virtual {v4, v10}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v14
check-cast v14, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 85
.local v14, "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
instance-of v15, v14, Landroidx/constraintlayout/solver/widgets/Guideline;
if-eqz v15, :cond_95
.line 86
move-object v15, v14
check-cast v15, Landroidx/constraintlayout/solver/widgets/Guideline;
.line 87
.local v15, "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->getOrientation()I
move-result v8
if-ne v8, v13, :cond_94
.line 88
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeBegin()I
move-result v8
if-eq v8, v12, :cond_64
.line 89
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeBegin()I
move-result v8
invoke-virtual {v15, v8}, Landroidx/constraintlayout/solver/widgets/Guideline;->setFinalValue(I)V
goto :goto_93
.line 90
:cond_64
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeEnd()I
move-result v8
if-eq v8, v12, :cond_7d
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isResolvedHorizontally()Z
move-result v8
if-eqz v8, :cond_7d
.line 91
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getWidth()I
move-result v8
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeEnd()I
move-result v11
sub-int/2addr v8, v11
invoke-virtual {v15, v8}, Landroidx/constraintlayout/solver/widgets/Guideline;->setFinalValue(I)V
goto :goto_93
.line 92
:cond_7d
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isResolvedHorizontally()Z
move-result v8
if-eqz v8, :cond_93
.line 93
invoke-virtual {v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativePercent()F
move-result v8
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getWidth()I
move-result v12
int-to-float v12, v12
mul-float v8, v8, v12
add-float/2addr v8, v11
float-to-int v8, v8
.line 94
.local v8, "position":I
invoke-virtual {v15, v8}, Landroidx/constraintlayout/solver/widgets/Guideline;->setFinalValue(I)V
.line 96
.end local v8 # "position":I
:cond_93
:goto_93
const/4 v7, 0x1
.line 98
.end local v15 # "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
:cond_94
goto :goto_a3
:cond_95
instance-of v8, v14, Landroidx/constraintlayout/solver/widgets/Barrier;
if-eqz v8, :cond_94
.line 99
move-object v8, v14
check-cast v8, Landroidx/constraintlayout/solver/widgets/Barrier;
.line 100
.local v8, "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
invoke-virtual {v8}, Landroidx/constraintlayout/solver/widgets/Barrier;->getOrientation()I
move-result v11
if-nez v11, :cond_a3
.line 101
const/4 v9, 0x1
.line 83
.end local v8 # "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
.end local v14 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_a3
:goto_a3
add-int/lit8 v10, v10, 0x1
const/4 v8, 0x0
goto :goto_3d
.line 105
.end local v10 # "i":I
:cond_a7
if-eqz v7, :cond_c5
.line 106
const/4 v8, 0x0
.local v8, "i":I
:goto_aa
if-ge v8, v5, :cond_c5
.line 107
invoke-virtual {v4, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 108
.local v10, "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
instance-of v14, v10, Landroidx/constraintlayout/solver/widgets/Guideline;
if-eqz v14, :cond_c2
.line 109
move-object v14, v10
check-cast v14, Landroidx/constraintlayout/solver/widgets/Guideline;
.line 110
.local v14, "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Guideline;->getOrientation()I
move-result v15
if-ne v15, v13, :cond_c2
.line 111
invoke-static {v14, v1, v6}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 106
.end local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v14 # "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
:cond_c2
add-int/lit8 v8, v8, 0x1
goto :goto_aa
.line 118
.end local v8 # "i":I
:cond_c5
invoke-static {v0, v1, v6}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 121
if-eqz v9, :cond_e7
.line 122
const/4 v8, 0x0
.restart local v8 # "i":I
:goto_cb
if-ge v8, v5, :cond_e7
.line 123
invoke-virtual {v4, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 124
.restart local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
instance-of v14, v10, Landroidx/constraintlayout/solver/widgets/Barrier;
if-eqz v14, :cond_e4
.line 125
move-object v14, v10
check-cast v14, Landroidx/constraintlayout/solver/widgets/Barrier;
.line 126
.local v14, "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Barrier;->getOrientation()I
move-result v15
if-nez v15, :cond_e4
.line 127
const/4 v15, 0x0
invoke-static {v14, v1, v15, v6}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveBarrier(Landroidx/constraintlayout/solver/widgets/Barrier;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;IZ)V
.line 122
.end local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v14 # "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
:cond_e4
add-int/lit8 v8, v8, 0x1
goto :goto_cb
.line 134
.end local v8 # "i":I
:cond_e7
sget-object v8, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->FIXED:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v3, v8, :cond_f4
.line 135
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getHeight()I
move-result v8
const/4 v10, 0x0
invoke-virtual {v0, v10, v8}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->setFinalVertical(II)V
goto :goto_f8
.line 137
:cond_f4
const/4 v10, 0x0
invoke-virtual {v0, v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->setFinalTop(I)V
.line 141
:goto_f8
const/4 v7, 0x0
.line 142
const/4 v8, 0x0
.line 143
.end local v9 # "hasBarrier":Z
.local v8, "hasBarrier":Z
const/4 v9, 0x0
.local v9, "i":I
:goto_fb
if-ge v9, v5, :cond_162
.line 144
invoke-virtual {v4, v9}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 145
.restart local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
instance-of v14, v10, Landroidx/constraintlayout/solver/widgets/Guideline;
if-eqz v14, :cond_150
.line 146
move-object v14, v10
check-cast v14, Landroidx/constraintlayout/solver/widgets/Guideline;
.line 147
.local v14, "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Guideline;->getOrientation()I
move-result v15
if-nez v15, :cond_14f
.line 148
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeBegin()I
move-result v15
if-eq v15, v12, :cond_11e
.line 149
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeBegin()I
move-result v15
invoke-virtual {v14, v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->setFinalValue(I)V
goto :goto_14e
.line 150
:cond_11e
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeEnd()I
move-result v15
if-eq v15, v12, :cond_138
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isResolvedVertically()Z
move-result v15
if-eqz v15, :cond_138
.line 151
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getHeight()I
move-result v15
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativeEnd()I
move-result v16
sub-int v15, v15, v16
invoke-virtual {v14, v15}, Landroidx/constraintlayout/solver/widgets/Guideline;->setFinalValue(I)V
goto :goto_14e
.line 152
:cond_138
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->isResolvedVertically()Z
move-result v15
if-eqz v15, :cond_14e
.line 153
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/Guideline;->getRelativePercent()F
move-result v15
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->getHeight()I
move-result v12
int-to-float v12, v12
mul-float v15, v15, v12
add-float/2addr v15, v11
float-to-int v12, v15
.line 154
.local v12, "position":I
invoke-virtual {v14, v12}, Landroidx/constraintlayout/solver/widgets/Guideline;->setFinalValue(I)V
.line 156
.end local v12 # "position":I
:cond_14e
:goto_14e
const/4 v7, 0x1
.line 158
.end local v14 # "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
:cond_14f
goto :goto_15e
:cond_150
instance-of v12, v10, Landroidx/constraintlayout/solver/widgets/Barrier;
if-eqz v12, :cond_14f
.line 159
move-object v12, v10
check-cast v12, Landroidx/constraintlayout/solver/widgets/Barrier;
.line 160
.local v12, "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/Barrier;->getOrientation()I
move-result v14
if-ne v14, v13, :cond_15e
.line 161
const/4 v8, 0x1
.line 143
.end local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v12 # "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
:cond_15e
:goto_15e
add-int/lit8 v9, v9, 0x1
const/4 v12, -0x1
goto :goto_fb
.line 165
.end local v9 # "i":I
:cond_162
if-eqz v7, :cond_180
.line 166
const/4 v9, 0x0
.restart local v9 # "i":I
:goto_165
if-ge v9, v5, :cond_180
.line 167
invoke-virtual {v4, v9}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 168
.restart local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
instance-of v11, v10, Landroidx/constraintlayout/solver/widgets/Guideline;
if-eqz v11, :cond_17d
.line 169
move-object v11, v10
check-cast v11, Landroidx/constraintlayout/solver/widgets/Guideline;
.line 170
.local v11, "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/Guideline;->getOrientation()I
move-result v12
if-nez v12, :cond_17d
.line 171
invoke-static {v11, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 166
.end local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v11 # "guideline":Landroidx/constraintlayout/solver/widgets/Guideline;
:cond_17d
add-int/lit8 v9, v9, 0x1
goto :goto_165
.line 178
.end local v9 # "i":I
:cond_180
invoke-static/range {p0 .. p1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 181
if-eqz v8, :cond_1a1
.line 182
const/4 v9, 0x0
.restart local v9 # "i":I
:goto_186
if-ge v9, v5, :cond_1a1
.line 183
invoke-virtual {v4, v9}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 184
.restart local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
instance-of v11, v10, Landroidx/constraintlayout/solver/widgets/Barrier;
if-eqz v11, :cond_19e
.line 185
move-object v11, v10
check-cast v11, Landroidx/constraintlayout/solver/widgets/Barrier;
.line 186
.local v11, "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
invoke-virtual {v11}, Landroidx/constraintlayout/solver/widgets/Barrier;->getOrientation()I
move-result v12
if-ne v12, v13, :cond_19e
.line 187
invoke-static {v11, v1, v13, v6}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveBarrier(Landroidx/constraintlayout/solver/widgets/Barrier;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;IZ)V
.line 182
.end local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v11 # "barrier":Landroidx/constraintlayout/solver/widgets/Barrier;
:cond_19e
add-int/lit8 v9, v9, 0x1
goto :goto_186
.line 194
.end local v9 # "i":I
:cond_1a1
const/4 v9, 0x0
.restart local v9 # "i":I
:goto_1a2
if-ge v9, v5, :cond_1c6
.line 195
invoke-virtual {v4, v9}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 196
.restart local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v11
if-eqz v11, :cond_1c3
invoke-static {v10}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v11
if-eqz v11, :cond_1c3
.line 197
sget-object v11, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->measure:Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v12, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
invoke-static {v10, v1, v11, v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 198
invoke-static {v10, v1, v6}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->horizontalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Z)V
.line 199
invoke-static {v10, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.line 194
.end local v10 # "child":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
:cond_1c3
add-int/lit8 v9, v9, 0x1
goto :goto_1a2
.line 202
.end local v9 # "i":I
:cond_1c6
return-void
.end method
.method private static verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
.registers 20
.param p0, "layout" # Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.param p1, "measurer" # Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
.line 353
move-object/from16 v0, p0
move-object/from16 v1, p1
instance-of v2, v0, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;
if-nez v2, :cond_1e
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v2
if-eqz v2, :cond_1e
invoke-static/range {p0 .. p0}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v2
if-eqz v2, :cond_1e
.line 354
new-instance v2, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct {v2}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
.line 355
.local v2, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v3, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
invoke-static {v0, v1, v2, v3}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 358
.end local v2 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_1e
sget-object v2, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;->TOP:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;
invoke-virtual {v0, v2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getAnchor(Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;)Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
move-result-object v2
.line 359
.local v2, "top":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
sget-object v3, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;->BOTTOM:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;
invoke-virtual {v0, v3}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getAnchor(Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;)Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
move-result-object v3
.line 360
.local v3, "bottom":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v4
.line 361
.local v4, "t":I
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v5
.line 363
.local v5, "b":I
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v6
const/4 v7, 0x0
const/16 v8, 0x8
if-eqz v6, :cond_140
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v6
if-eqz v6, :cond_140
.line 364
invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v6
invoke-virtual {v6}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
move-result-object v6
:goto_49
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v11
if-eqz v11, :cond_140
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v11
check-cast v11, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 365
.local v11, "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v12, v11, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 366
.local v12, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
const/4 v13, 0x0
.line 367
.local v13, "y1":I
const/4 v14, 0x0
.line 368
.local v14, "y2":I
invoke-static {v12}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v15
.line 369
.local v15, "canMeasure":Z
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v16
if-eqz v16, :cond_73
if-eqz v15, :cond_73
.line 370
new-instance v16, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct/range {v16 .. v16}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
move-object/from16 v17, v16
.line 371
.local v17, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v9, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
move-object/from16 v10, v17
.end local v17 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
.local v10, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-static {v12, v1, v10, v9}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 374
.end local v10 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_73
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v9
sget-object v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v9, v10, :cond_e3
if-eqz v15, :cond_7e
goto :goto_e3
.line 400
:cond_7e
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v9
sget-object v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v9, v10, :cond_13e
iget v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxHeight:I
if-ltz v9, :cond_13e
iget v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMinHeight:I
if-ltz v9, :cond_13e
.line 402
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v9
if-eq v9, v8, :cond_a0
iget v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultHeight:I
if-nez v9, :cond_13e
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getDimensionRatio()F
move-result v9
cmpl-float v9, v9, v7
if-nez v9, :cond_13e
.line 403
:cond_a0
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVerticalChain()Z
move-result v9
if-nez v9, :cond_13e
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVirtualLayout()Z
move-result v9
if-nez v9, :cond_13e
.line 404
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v11, v9, :cond_c0
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v9, :cond_c0
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v9}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v9
if-nez v9, :cond_d4
:cond_c0
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v11, v9, :cond_d6
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v9, :cond_d6
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 405
invoke-virtual {v9}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v9
if-eqz v9, :cond_d6
:cond_d4
const/4 v9, 0x1
goto :goto_d7
:cond_d6
const/4 v9, 0x0
.line 406
.local v9, "bothConnected":Z
:goto_d7
if-eqz v9, :cond_13e
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVerticalChain()Z
move-result v10
if-nez v10, :cond_13e
.line 407
invoke-static {v0, v1, v12}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveVerticalMatchConstraint(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)V
goto :goto_13e
.line 376
.end local v9 # "bothConnected":Z
:cond_e3
:goto_e3
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v9
if-eqz v9, :cond_eb
.line 381
goto/16 :goto_49
.line 383
:cond_eb
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v11, v9, :cond_108
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v9, :cond_108
.line 384
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v9}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v9
add-int/2addr v9, v4
.line 385
.end local v13 # "y1":I
.local v9, "y1":I
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v10
add-int/2addr v10, v9
.line 386
.end local v14 # "y2":I
.local v10, "y2":I
invoke-virtual {v12, v9, v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 387
invoke-static {v12, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
goto :goto_13e
.line 388
.end local v9 # "y1":I
.end local v10 # "y2":I
.restart local v13 # "y1":I
.restart local v14 # "y2":I
:cond_108
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v11, v9, :cond_127
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v9, :cond_127
.line 389
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v9}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v9
sub-int v9, v4, v9
.line 390
.end local v14 # "y2":I
.local v9, "y2":I
invoke-virtual {v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v10
sub-int v10, v9, v10
.line 391
.end local v13 # "y1":I
.local v10, "y1":I
invoke-virtual {v12, v10, v9}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 392
invoke-static {v12, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
goto :goto_13e
.line 393
.end local v9 # "y2":I
.end local v10 # "y1":I
.restart local v13 # "y1":I
.restart local v14 # "y2":I
:cond_127
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v11, v9, :cond_13e
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v9, :cond_13e
iget-object v9, v12, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v9, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 394
invoke-virtual {v9}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v9
if-eqz v9, :cond_13e
.line 395
invoke-static {v1, v12}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveVerticalCenterConstraints(Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)V
.line 410
.end local v11 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v12 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v13 # "y1":I
.end local v14 # "y2":I
.end local v15 # "canMeasure":Z
:cond_13e
:goto_13e
goto/16 :goto_49
.line 412
:cond_140
instance-of v6, v0, Landroidx/constraintlayout/solver/widgets/Guideline;
if-eqz v6, :cond_145
.line 413
return-void
.line 415
:cond_145
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v6
if-eqz v6, :cond_24c
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v6
if-eqz v6, :cond_24c
.line 416
invoke-virtual {v3}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v6
invoke-virtual {v6}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
move-result-object v6
:goto_159
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v9
if-eqz v9, :cond_24c
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v9
check-cast v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 417
.local v9, "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 418
.local v10, "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-static {v10}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v11
.line 419
.local v11, "canMeasure":Z
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v12
if-eqz v12, :cond_17d
if-eqz v11, :cond_17d
.line 420
new-instance v12, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct {v12}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
.line 421
.local v12, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v13, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
invoke-static {v10, v1, v12, v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 424
.end local v12 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_17d
const/4 v12, 0x0
.line 425
.local v12, "y1":I
const/4 v13, 0x0
.line 426
.local v13, "y2":I
iget-object v14, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v9, v14, :cond_193
iget-object v14, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v14, v14, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v14, :cond_193
iget-object v14, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v14, v14, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v14
if-nez v14, :cond_1a7
:cond_193
iget-object v14, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v9, v14, :cond_1a9
iget-object v14, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v14, v14, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-eqz v14, :cond_1a9
iget-object v14, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v14, v14, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 427
invoke-virtual {v14}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v14
if-eqz v14, :cond_1a9
:cond_1a7
const/4 v14, 0x1
goto :goto_1aa
:cond_1a9
const/4 v14, 0x0
.line 428
.local v14, "bothConnected":Z
:goto_1aa
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v15
sget-object v7, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v15, v7, :cond_1f8
if-eqz v11, :cond_1b6
const/4 v15, 0x0
goto :goto_1f9
.line 450
:cond_1b6
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v7
sget-object v15, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v7, v15, :cond_1f6
iget v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMaxHeight:I
if-ltz v7, :cond_1f6
iget v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintMinHeight:I
if-ltz v7, :cond_1f6
.line 452
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVisibility()I
move-result v7
if-eq v7, v8, :cond_1dd
iget v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mMatchConstraintDefaultHeight:I
if-nez v7, :cond_1da
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getDimensionRatio()F
move-result v7
const/4 v15, 0x0
cmpl-float v7, v7, v15
if-nez v7, :cond_249
goto :goto_1de
:cond_1da
const/4 v15, 0x0
goto/16 :goto_249
:cond_1dd
const/4 v15, 0x0
.line 453
:goto_1de
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVerticalChain()Z
move-result v7
if-nez v7, :cond_249
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVirtualLayout()Z
move-result v7
if-nez v7, :cond_249
.line 454
if-eqz v14, :cond_249
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVerticalChain()Z
move-result v7
if-nez v7, :cond_249
.line 455
invoke-static {v0, v1, v10}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveVerticalMatchConstraint(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)V
goto :goto_249
.line 450
:cond_1f6
const/4 v15, 0x0
goto :goto_249
.line 428
:cond_1f8
const/4 v15, 0x0
.line 430
:goto_1f9
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v7
if-eqz v7, :cond_202
.line 435
const/4 v7, 0x0
goto/16 :goto_159
.line 437
:cond_202
iget-object v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v9, v7, :cond_21f
iget-object v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v7, v7, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v7, :cond_21f
.line 438
iget-object v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v7}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v7
add-int/2addr v7, v5
.line 439
.end local v12 # "y1":I
.local v7, "y1":I
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v12
add-int/2addr v12, v7
.line 440
.end local v13 # "y2":I
.local v12, "y2":I
invoke-virtual {v10, v7, v12}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 441
invoke-static {v10, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
goto :goto_249
.line 442
.end local v7 # "y1":I
.local v12, "y1":I
.restart local v13 # "y2":I
:cond_21f
iget-object v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v9, v7, :cond_23e
iget-object v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mTop:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v7, v7, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mTarget:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-nez v7, :cond_23e
.line 443
iget-object v7, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBottom:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v7}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getMargin()I
move-result v7
sub-int v7, v5, v7
.line 444
.end local v13 # "y2":I
.local v7, "y2":I
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I
move-result v13
sub-int v12, v7, v13
.line 445
invoke-virtual {v10, v12, v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalVertical(II)V
.line 446
invoke-static {v10, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
goto :goto_249
.line 447
.end local v7 # "y2":I
.restart local v13 # "y2":I
:cond_23e
if-eqz v14, :cond_249
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isInVerticalChain()Z
move-result v7
if-nez v7, :cond_249
.line 448
invoke-static {v1, v10}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->solveVerticalCenterConstraints(Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)V
.line 458
.end local v9 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v10 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v11 # "canMeasure":Z
.end local v12 # "y1":I
.end local v13 # "y2":I
.end local v14 # "bothConnected":Z
:cond_249
:goto_249
const/4 v7, 0x0
goto/16 :goto_159
.line 461
:cond_24c
sget-object v6, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;->BASELINE:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;
invoke-virtual {v0, v6}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getAnchor(Landroidx/constraintlayout/solver/widgets/ConstraintAnchor$Type;)Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
move-result-object v6
.line 462
.local v6, "baseline":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v7
if-eqz v7, :cond_2aa
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->hasFinalValue()Z
move-result v7
if-eqz v7, :cond_2aa
.line 463
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getFinalValue()I
move-result v7
.line 464
.local v7, "baselineValue":I
invoke-virtual {v6}, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->getDependents()Ljava/util/HashSet;
move-result-object v8
invoke-virtual {v8}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
move-result-object v8
:goto_26a
invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z
move-result v9
if-eqz v9, :cond_2aa
invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v9
check-cast v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.line 465
.restart local v9 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
iget-object v10, v9, Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;->mOwner:Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.line 466
.restart local v10 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
invoke-static {v10}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->canMeasure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;)Z
move-result v11
.line 467
.restart local v11 # "canMeasure":Z
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v12
if-eqz v12, :cond_28e
if-eqz v11, :cond_28e
.line 468
new-instance v12, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
invoke-direct {v12}, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;-><init>()V
.line 469
.local v12, "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
sget v13, Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;->SELF_DIMENSIONS:I
invoke-static {v10, v1, v12, v13}, Landroidx/constraintlayout/solver/widgets/ConstraintWidgetContainer;->measure(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;I)Z
.line 471
.end local v12 # "measure":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measure;
:cond_28e
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getVerticalDimensionBehaviour()Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
move-result-object v12
sget-object v13, Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;->MATCH_CONSTRAINT:Landroidx/constraintlayout/solver/widgets/ConstraintWidget$DimensionBehaviour;
if-ne v12, v13, :cond_298
if-eqz v11, :cond_2a9
.line 473
:cond_298
invoke-virtual {v10}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->isMeasureRequested()Z
move-result v12
if-eqz v12, :cond_29f
.line 478
goto :goto_26a
.line 480
:cond_29f
iget-object v12, v10, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->mBaseline:Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
if-ne v9, v12, :cond_2a9
.line 481
invoke-virtual {v10, v7}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setFinalBaseline(I)V
.line 482
:try_start_2a6
invoke-static {v10, v1}, Landroidx/constraintlayout/solver/widgets/analyzer/Direct;->verticalSolvingPass(Landroidx/constraintlayout/solver/widgets/ConstraintWidget;Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;)V
:try_end_2a9
.catchall {:try_start_2a6 .. :try_end_2a9} :catchall_2ab
.line 485
.end local v9 # "first":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v10 # "widget":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local v11 # "canMeasure":Z
:cond_2a9
goto :goto_26a
.line 488
.end local v7 # "baselineValue":I
:cond_2aa
return-void
.line 482
.end local v2 # "top":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v3 # "bottom":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local v4 # "t":I
.end local v5 # "b":I
.end local v6 # "baseline":Landroidx/constraintlayout/solver/widgets/ConstraintAnchor;
.end local p0 # "layout":Landroidx/constraintlayout/solver/widgets/ConstraintWidget;
.end local p1 # "measurer":Landroidx/constraintlayout/solver/widgets/analyzer/BasicMeasure$Measurer;
:catchall_2ab
move-exception v0
move-object v1, v0
goto :goto_2af
:goto_2ae
throw v1
:goto_2af
goto :goto_2ae
.end method