Collision$EPCollider.smali

.class Lorg/jbox2d/collision/Collision$EPCollider;
.super Ljava/lang/Object;
.source "Collision.java"


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lorg/jbox2d/collision/Collision;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x8
    name = "EPCollider"
.end annotation

.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lorg/jbox2d/collision/Collision$EPCollider$VertexType;
    }
.end annotation


# instance fields
.field private final clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;

.field private final clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

.field private final edge0:Lorg/jbox2d/common/Vec2;

.field private final edge1:Lorg/jbox2d/common/Vec2;

.field private final edge2:Lorg/jbox2d/common/Vec2;

.field private final edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

.field private final ie:[Lorg/jbox2d/collision/Collision$ClipVertex;

.field final m_centroidB:Lorg/jbox2d/common/Vec2;

.field m_front:Z

.field final m_lowerLimit:Lorg/jbox2d/common/Vec2;

.field final m_normal:Lorg/jbox2d/common/Vec2;

.field final m_normal0:Lorg/jbox2d/common/Vec2;

.field final m_normal1:Lorg/jbox2d/common/Vec2;

.field final m_normal2:Lorg/jbox2d/common/Vec2;

.field final m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

.field m_radius:F

.field m_type1:Lorg/jbox2d/collision/Collision$EPCollider$VertexType;

.field m_type2:Lorg/jbox2d/collision/Collision$EPCollider$VertexType;

.field final m_upperLimit:Lorg/jbox2d/common/Vec2;

.field m_v0:Lorg/jbox2d/common/Vec2;

.field m_v1:Lorg/jbox2d/common/Vec2;

.field m_v2:Lorg/jbox2d/common/Vec2;

.field m_v3:Lorg/jbox2d/common/Vec2;

.field final m_xf:Lorg/jbox2d/common/Transform;

.field private final n:Lorg/jbox2d/common/Vec2;

.field private final perp:Lorg/jbox2d/common/Vec2;

.field private final polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

.field private final rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

.field private final temp:Lorg/jbox2d/common/Vec2;


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

    .prologue
    const/4 v3, 0x2

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

    .line 965
    new-instance v0, Lorg/jbox2d/collision/Collision$TempPolygon;

    invoke-direct {v0}, Lorg/jbox2d/collision/Collision$TempPolygon;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    .line 967
    new-instance v0, Lorg/jbox2d/common/Transform;

    invoke-direct {v0}, Lorg/jbox2d/common/Transform;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;

    .line 968
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;

    .line 969
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;

    .line 970
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    .line 971
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    .line 972
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v3:Lorg/jbox2d/common/Vec2;

    .line 973
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    .line 974
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    .line 975
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    .line 976
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    .line 980
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    .line 981
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    .line 993
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;

    .line 994
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;

    .line 995
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;

    .line 996
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;

    .line 997
    new-array v0, v3, [Lorg/jbox2d/collision/Collision$ClipVertex;

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;

    .line 998
    new-array v0, v3, [Lorg/jbox2d/collision/Collision$ClipVertex;

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;

    .line 999
    new-array v0, v3, [Lorg/jbox2d/collision/Collision$ClipVertex;

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    .line 1000
    new-instance v0, Lorg/jbox2d/collision/Collision$ReferenceFace;

    invoke-direct {v0}, Lorg/jbox2d/collision/Collision$ReferenceFace;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    .line 1001
    new-instance v0, Lorg/jbox2d/collision/Collision$EPAxis;

    invoke-direct {v0}, Lorg/jbox2d/collision/Collision$EPAxis;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    .line 1002
    new-instance v0, Lorg/jbox2d/collision/Collision$EPAxis;

    invoke-direct {v0}, Lorg/jbox2d/collision/Collision$EPAxis;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    .line 1390
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;

    .line 1391
    new-instance v0, Lorg/jbox2d/common/Vec2;

    invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    .line 986
    const/4 v0, 0x0

    :goto_ab
    if-ge v0, v3, :cond_cb

    .line 987
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;

    new-instance v2, Lorg/jbox2d/collision/Collision$ClipVertex;

    invoke-direct {v2}, Lorg/jbox2d/collision/Collision$ClipVertex;-><init>()V

    aput-object v2, v1, v0

    .line 988
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;

    new-instance v2, Lorg/jbox2d/collision/Collision$ClipVertex;

    invoke-direct {v2}, Lorg/jbox2d/collision/Collision$ClipVertex;-><init>()V

    aput-object v2, v1, v0

    .line 989
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    new-instance v2, Lorg/jbox2d/collision/Collision$ClipVertex;

    invoke-direct {v2}, Lorg/jbox2d/collision/Collision$ClipVertex;-><init>()V

    aput-object v2, v1, v0

    .line 986
    add-int/lit8 v0, v0, 0x1

    goto :goto_ab

    .line 991
    :cond_cb
    return-void
.end method


# virtual methods
.method public collide(Lorg/jbox2d/collision/Manifold;Lorg/jbox2d/collision/shapes/EdgeShape;Lorg/jbox2d/common/Transform;Lorg/jbox2d/collision/shapes/PolygonShape;Lorg/jbox2d/common/Transform;)V
    .registers 15

    .prologue
    .line 1007
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;

    invoke-static {p3, p5, v0}, Lorg/jbox2d/common/Transform;->mulTransToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Transform;)V

    .line 1008
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;

    iget-object v1, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_centroid:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;

    invoke-static {v0, v1, v2}, Lorg/jbox2d/common/Transform;->mulToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V

    .line 1010
    iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex0:Lorg/jbox2d/common/Vec2;

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;

    .line 1011
    iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex1:Lorg/jbox2d/common/Vec2;

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    .line 1012
    iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex2:Lorg/jbox2d/common/Vec2;

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    .line 1013
    iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex3:Lorg/jbox2d/common/Vec2;

    iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v3:Lorg/jbox2d/common/Vec2;

    .line 1015
    iget-boolean v5, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_hasVertex0:Z

    .line 1016
    iget-boolean v6, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_hasVertex3:Z

    .line 1018
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v0

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1019
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0}, Lorg/jbox2d/common/Vec2;->normalize()F

    .line 1020
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;

    iget v2, v2, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v2, v2

    invoke-virtual {v0, v1, v2}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;

    .line 1021
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v1

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v1

    invoke-static {v0, v1}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v7

    .line 1022
    const/4 v3, 0x0

    const/4 v2, 0x0

    .line 1023
    const/4 v0, 0x0

    const/4 v1, 0x0

    .line 1026
    if-eqz v5, :cond_8d3

    .line 1027
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v0

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0, v3}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1028
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0}, Lorg/jbox2d/common/Vec2;->normalize()F

    .line 1029
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;

    iget v3, v3, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v4, v4

    invoke-virtual {v0, v3, v4}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;

    .line 1030
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;

    invoke-static {v0, v3}, Lorg/jbox2d/common/Vec2;->cross(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v0

    const/4 v3, 0x0

    cmpl-float v0, v0, v3

    if-ltz v0, :cond_160

    const/4 v0, 0x1

    .line 1031
    :goto_8a
    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;

    iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v4, v8}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v4

    iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v4, v8}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v4

    invoke-static {v3, v4}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v3

    move v4, v3

    move v3, v0

    .line 1035
    :goto_a0
    if-eqz v6, :cond_8cf

    .line 1036
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v3:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v0

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1037
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v0}, Lorg/jbox2d/common/Vec2;->normalize()F

    .line 1038
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;

    iget v2, v2, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v2, v2

    invoke-virtual {v0, v1, v2}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;

    .line 1039
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;

    invoke-static {v0, v1}, Lorg/jbox2d/common/Vec2;->cross(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v0

    const/4 v1, 0x0

    cmpl-float v0, v0, v1

    if-lez v0, :cond_163

    const/4 v0, 0x1

    .line 1040
    :goto_d0
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;

    iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v2, v8}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v2

    iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v2, v8}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v2

    invoke-static {v1, v2}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v1

    .line 1044
    :goto_e4
    if-eqz v5, :cond_329

    if-eqz v6, :cond_329

    .line 1045
    if-eqz v3, :cond_19f

    if-eqz v0, :cond_19f

    .line 1046
    const/4 v0, 0x0

    cmpl-float v0, v4, v0

    if-gez v0, :cond_fb

    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-gez v0, :cond_fb

    const/4 v0, 0x0

    cmpl-float v0, v1, v0

    if-ltz v0, :cond_166

    :cond_fb
    const/4 v0, 0x1

    :goto_fc
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1047
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_168

    .line 1048
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1049
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1050
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1051
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1052
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1053
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1206
    :goto_132
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget v1, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_count:I

    iput v1, v0, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I

    .line 1207
    const/4 v0, 0x0

    :goto_139
    iget v1, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_count:I

    if-ge v0, v1, :cond_59d

    .line 1208
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;

    iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_vertices:[Lorg/jbox2d/common/Vec2;

    aget-object v2, v2, v0

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;

    aget-object v3, v3, v0

    invoke-static {v1, v2, v3}, Lorg/jbox2d/common/Transform;->mulToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V

    .line 1209
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;

    iget-object v1, v1, Lorg/jbox2d/common/Transform;->q:Lorg/jbox2d/common/Rot;

    iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_normals:[Lorg/jbox2d/common/Vec2;

    aget-object v2, v2, v0

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;

    aget-object v3, v3, v0

    invoke-static {v1, v2, v3}, Lorg/jbox2d/common/Rot;->mulToOutUnsafe(Lorg/jbox2d/common/Rot;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V

    .line 1207
    add-int/lit8 v0, v0, 0x1

    goto :goto_139

    .line 1030
    :cond_160
    const/4 v0, 0x0

    goto/16 :goto_8a

    .line 1039
    :cond_163
    const/4 v0, 0x0

    goto/16 :goto_d0

    .line 1046
    :cond_166
    const/4 v0, 0x0

    goto :goto_fc

    .line 1055
    :cond_168
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1056
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1057
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1058
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1059
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1060
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto :goto_132

    .line 1062
    :cond_19f
    if-eqz v3, :cond_223

    .line 1063
    const/4 v0, 0x0

    cmpl-float v0, v4, v0

    if-gez v0, :cond_1b0

    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-ltz v0, :cond_1e9

    const/4 v0, 0x0

    cmpl-float v0, v1, v0

    if-ltz v0, :cond_1e9

    :cond_1b0
    const/4 v0, 0x1

    :goto_1b1
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1064
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_1eb

    .line 1065
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1066
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1067
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1068
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1069
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1070
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1063
    :cond_1e9
    const/4 v0, 0x0

    goto :goto_1b1

    .line 1072
    :cond_1eb
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1073
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1074
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1075
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1076
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1077
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1079
    :cond_223
    if-eqz v0, :cond_2a7

    .line 1080
    const/4 v0, 0x0

    cmpl-float v0, v1, v0

    if-gez v0, :cond_234

    const/4 v0, 0x0

    cmpl-float v0, v4, v0

    if-ltz v0, :cond_26d

    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-ltz v0, :cond_26d

    :cond_234
    const/4 v0, 0x1

    :goto_235
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1081
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_26f

    .line 1082
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1083
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1084
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1085
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1086
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1087
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1080
    :cond_26d
    const/4 v0, 0x0

    goto :goto_235

    .line 1089
    :cond_26f
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1090
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1091
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1092
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1093
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1094
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1097
    :cond_2a7
    const/4 v0, 0x0

    cmpl-float v0, v4, v0

    if-ltz v0, :cond_2ef

    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-ltz v0, :cond_2ef

    const/4 v0, 0x0

    cmpl-float v0, v1, v0

    if-ltz v0, :cond_2ef

    const/4 v0, 0x1

    :goto_2b7
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1098
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_2f1

    .line 1099
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1100
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1101
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1102
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1103
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1104
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1097
    :cond_2ef
    const/4 v0, 0x0

    goto :goto_2b7

    .line 1106
    :cond_2f1
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1107
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1108
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1109
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1110
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1111
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1114
    :cond_329
    if-eqz v5, :cond_427

    .line 1115
    if-eqz v3, :cond_3aa

    .line 1116
    const/4 v0, 0x0

    cmpl-float v0, v4, v0

    if-gez v0, :cond_337

    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-ltz v0, :cond_372

    :cond_337
    const/4 v0, 0x1

    :goto_338
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1117
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_374

    .line 1118
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1119
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1120
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1121
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1122
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1123
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1116
    :cond_372
    const/4 v0, 0x0

    goto :goto_338

    .line 1125
    :cond_374
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1126
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1127
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1128
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1129
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1130
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1133
    :cond_3aa
    const/4 v0, 0x0

    cmpl-float v0, v4, v0

    if-ltz v0, :cond_3ef

    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-ltz v0, :cond_3ef

    const/4 v0, 0x1

    :goto_3b5
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1134
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_3f1

    .line 1135
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1136
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1137
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1138
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1139
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1140
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1133
    :cond_3ef
    const/4 v0, 0x0

    goto :goto_3b5

    .line 1142
    :cond_3f1
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1143
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1144
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1145
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1146
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1147
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1150
    :cond_427
    if-eqz v6, :cond_525

    .line 1151
    if-eqz v0, :cond_4a8

    .line 1152
    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-gez v0, :cond_435

    const/4 v0, 0x0

    cmpl-float v0, v1, v0

    if-ltz v0, :cond_470

    :cond_435
    const/4 v0, 0x1

    :goto_436
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1153
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_472

    .line 1154
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1155
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1156
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1157
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1158
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1159
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1152
    :cond_470
    const/4 v0, 0x0

    goto :goto_436

    .line 1161
    :cond_472
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1162
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1163
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1164
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1165
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1166
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1169
    :cond_4a8
    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-ltz v0, :cond_4ed

    const/4 v0, 0x0

    cmpl-float v0, v1, v0

    if-ltz v0, :cond_4ed

    const/4 v0, 0x1

    :goto_4b3
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1170
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_4ef

    .line 1171
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1172
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1173
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1174
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1175
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1176
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1169
    :cond_4ed
    const/4 v0, 0x0

    goto :goto_4b3

    .line 1178
    :cond_4ef
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1179
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1180
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1181
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1182
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1183
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1187
    :cond_525
    const/4 v0, 0x0

    cmpl-float v0, v7, v0

    if-ltz v0, :cond_567

    const/4 v0, 0x1

    :goto_52b
    iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    .line 1188
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_569

    .line 1189
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1190
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1191
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1192
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1193
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1194
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1187
    :cond_567
    const/4 v0, 0x0

    goto :goto_52b

    .line 1196
    :cond_569
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1197
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1198
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1199
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1200
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1201
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    goto/16 :goto_132

    .line 1212
    :cond_59d
    const/high16 v0, 0x40000000    # 2.0f

    sget v1, Lorg/jbox2d/common/Settings;->polygonRadius:F

    mul-float/2addr v0, v1

    iput v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F

    .line 1214
    const/4 v0, 0x0

    iput v0, p1, Lorg/jbox2d/collision/Manifold;->pointCount:I

    .line 1216
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    invoke-virtual {p0, v0}, Lorg/jbox2d/collision/Collision$EPCollider;->computeEdgeSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V

    .line 1219
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    iget-object v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    sget-object v1, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    if-ne v0, v1, :cond_5b5

    .line 1369
    :cond_5b4
    :goto_5b4
    return-void

    .line 1223
    :cond_5b5
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    iget v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    iget v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F

    cmpl-float v0, v0, v1

    if-gtz v0, :cond_5b4

    .line 1227
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    invoke-virtual {p0, v0}, Lorg/jbox2d/collision/Collision$EPCollider;->computePolygonSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V

    .line 1228
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    iget-object v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    sget-object v1, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    if-eq v0, v1, :cond_5d6

    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    iget v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    iget v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F

    cmpl-float v0, v0, v1

    if-gtz v0, :cond_5b4

    .line 1237
    :cond_5d6
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    iget-object v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    sget-object v1, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    if-ne v0, v1, :cond_61e

    .line 1238
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    .line 1245
    :goto_5e0
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;

    const/4 v2, 0x0

    aget-object v5, v1, v2

    .line 1246
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;

    const/4 v2, 0x1

    aget-object v6, v1, v2

    .line 1248
    iget-object v1, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    if-ne v1, v2, :cond_7c9

    .line 1249
    sget-object v1, Lorg/jbox2d/collision/Manifold$ManifoldType;->FACE_A:Lorg/jbox2d/collision/Manifold$ManifoldType;

    iput-object v1, p1, Lorg/jbox2d/collision/Manifold;->type:Lorg/jbox2d/collision/Manifold$ManifoldType;

    .line 1252
    const/4 v3, 0x0

    .line 1253
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;

    const/4 v4, 0x0

    aget-object v2, v2, v4

    invoke-static {v1, v2}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v2

    .line 1254
    const/4 v1, 0x1

    :goto_603
    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget v4, v4, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I

    if-ge v1, v4, :cond_638

    .line 1255
    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget-object v7, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v7, v7, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;

    aget-object v7, v7, v1

    invoke-static {v4, v7}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v4

    .line 1256
    cmpg-float v7, v4, v2

    if-gez v7, :cond_61b

    move v2, v4

    move v3, v1

    .line 1254
    :cond_61b
    add-int/lit8 v1, v1, 0x1

    goto :goto_603

    .line 1239
    :cond_61e
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    iget v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    const v1, 0x3f7ae148    # 0.98f

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    iget v2, v2, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    mul-float/2addr v1, v2

    const v2, 0x3a83126f    # 0.001f

    add-float/2addr v1, v2

    cmpl-float v0, v0, v1

    if-lez v0, :cond_635

    .line 1240
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    goto :goto_5e0

    .line 1242
    :cond_635
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;

    goto :goto_5e0

    .line 1263
    :cond_638
    add-int/lit8 v1, v3, 0x1

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I

    if-ge v1, v2, :cond_79b

    add-int/lit8 v1, v3, 0x1

    .line 1265
    :goto_642
    iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v4, v4, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;

    aget-object v4, v4, v3

    invoke-virtual {v2, v4}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1266
    iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    const/4 v4, 0x0

    iput-byte v4, v2, Lorg/jbox2d/collision/ContactID;->indexA:B

    .line 1267
    iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    int-to-byte v3, v3

    iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->indexB:B

    .line 1268
    iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v3, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v3}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v3

    int-to-byte v3, v3

    iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->typeA:B

    .line 1269
    iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v3, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v3}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v3

    int-to-byte v3, v3

    iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->typeB:B

    .line 1271
    iget-object v2, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;

    aget-object v3, v3, v1

    invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1272
    iget-object v2, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    const/4 v3, 0x0

    iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->indexA:B

    .line 1273
    iget-object v2, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    int-to-byte v1, v1

    iput-byte v1, v2, Lorg/jbox2d/collision/ContactID;->indexB:B

    .line 1274
    iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v2

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeA:B

    .line 1275
    iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v2

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeB:B

    .line 1277
    iget-boolean v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v1, :cond_79e

    .line 1278
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    const/4 v2, 0x0

    iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    .line 1279
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    const/4 v2, 0x1

    iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I

    .line 1280
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1281
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1282
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1312
    :goto_6c1
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;

    iget v2, v2, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;

    iget v3, v3, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v3, v3

    invoke-virtual {v1, v2, v3}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;

    .line 1313
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal2:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v1

    invoke-virtual {v1}, Lorg/jbox2d/common/Vec2;->negateLocal()Lorg/jbox2d/common/Vec2;

    .line 1314
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;

    invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v2

    iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset1:F

    .line 1315
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal2:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;

    invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v2

    iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset2:F

    .line 1321
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v4, v4, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset1:F

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v5, v5, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    invoke-static {v1, v2, v3, v4, v5}, Lorg/jbox2d/collision/Collision;->clipSegmentToLine([Lorg/jbox2d/collision/Collision$ClipVertex;[Lorg/jbox2d/collision/Collision$ClipVertex;Lorg/jbox2d/common/Vec2;FI)I

    move-result v1

    .line 1323
    sget v2, Lorg/jbox2d/common/Settings;->maxManifoldPoints:I

    if-lt v1, v2, :cond_5b4

    .line 1328
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal2:Lorg/jbox2d/common/Vec2;

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v4, v4, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset2:F

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v5, v5, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I

    invoke-static {v1, v2, v3, v4, v5}, Lorg/jbox2d/collision/Collision;->clipSegmentToLine([Lorg/jbox2d/collision/Collision$ClipVertex;[Lorg/jbox2d/collision/Collision$ClipVertex;Lorg/jbox2d/common/Vec2;FI)I

    move-result v1

    .line 1330
    sget v2, Lorg/jbox2d/common/Settings;->maxManifoldPoints:I

    if-lt v1, v2, :cond_5b4

    .line 1335
    iget-object v1, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    if-ne v1, v2, :cond_872

    .line 1336
    iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localNormal:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1337
    iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localPoint:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1343
    :goto_74c
    const/4 v2, 0x0

    .line 1344
    const/4 v1, 0x0

    :goto_74e
    sget v3, Lorg/jbox2d/common/Settings;->maxManifoldPoints:I

    if-ge v1, v3, :cond_8cb

    .line 1347
    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v5, v5, v1

    iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v4, v5}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v4

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v5, v5, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v4, v5}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v4

    invoke-static {v3, v4}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v3

    .line 1349
    iget v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F

    cmpg-float v3, v3, v4

    if-gtz v3, :cond_798

    .line 1350
    iget-object v3, p1, Lorg/jbox2d/collision/Manifold;->points:[Lorg/jbox2d/collision/ManifoldPoint;

    aget-object v3, v3, v2

    .line 1352
    iget-object v4, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    sget-object v5, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    if-ne v4, v5, :cond_88e

    .line 1354
    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v5, v5, v1

    iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;

    iget-object v6, v3, Lorg/jbox2d/collision/ManifoldPoint;->localPoint:Lorg/jbox2d/common/Vec2;

    invoke-static {v4, v5, v6}, Lorg/jbox2d/common/Transform;->mulTransToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V

    .line 1355
    iget-object v3, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v4, v4, v1

    iget-object v4, v4, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    invoke-virtual {v3, v4}, Lorg/jbox2d/collision/ContactID;->set(Lorg/jbox2d/collision/ContactID;)V

    .line 1364
    :goto_796
    add-int/lit8 v2, v2, 0x1

    .line 1344
    :cond_798
    add-int/lit8 v1, v1, 0x1

    goto :goto_74e

    .line 1263
    :cond_79b
    const/4 v1, 0x0

    goto/16 :goto_642

    .line 1284
    :cond_79e
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    const/4 v2, 0x1

    iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    .line 1285
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    const/4 v2, 0x0

    iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I

    .line 1286
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1287
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1288
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v1

    invoke-virtual {v1}, Lorg/jbox2d/common/Vec2;->negateLocal()Lorg/jbox2d/common/Vec2;

    goto/16 :goto_6c1

    .line 1291
    :cond_7c9
    sget-object v1, Lorg/jbox2d/collision/Manifold$ManifoldType;->FACE_B:Lorg/jbox2d/collision/Manifold$ManifoldType;

    iput-object v1, p1, Lorg/jbox2d/collision/Manifold;->type:Lorg/jbox2d/collision/Manifold$ManifoldType;

    .line 1293
    iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1294
    iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    const/4 v2, 0x0

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexA:B

    .line 1295
    iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    iget v2, v0, Lorg/jbox2d/collision/Collision$EPAxis;->index:I

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexB:B

    .line 1296
    iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v2

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeA:B

    .line 1297
    iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v2

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeB:B

    .line 1299
    iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1300
    iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    const/4 v2, 0x0

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexA:B

    .line 1301
    iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    iget v2, v0, Lorg/jbox2d/collision/Collision$EPAxis;->index:I

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexB:B

    .line 1302
    iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v2

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeA:B

    .line 1303
    iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;

    invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I

    move-result v2

    int-to-byte v2, v2

    iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeB:B

    .line 1305
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v2, v0, Lorg/jbox2d/collision/Collision$EPAxis;->index:I

    iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    .line 1306
    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    add-int/lit8 v1, v1, 0x1

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I

    if-ge v1, v3, :cond_870

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    add-int/lit8 v1, v1, 0x1

    :goto_839
    iput v1, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I

    .line 1307
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    aget-object v2, v2, v3

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1308
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I

    aget-object v2, v2, v3

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1309
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;

    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    aget-object v2, v2, v3

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    goto/16 :goto_6c1

    .line 1306
    :cond_870
    const/4 v1, 0x0

    goto :goto_839

    .line 1339
    :cond_872
    iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localNormal:Lorg/jbox2d/common/Vec2;

    iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_normals:[Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    aget-object v2, v2, v3

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1340
    iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localPoint:Lorg/jbox2d/common/Vec2;

    iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_vertices:[Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;

    iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I

    aget-object v2, v2, v3

    invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    goto/16 :goto_74c

    .line 1357
    :cond_88e
    iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->localPoint:Lorg/jbox2d/common/Vec2;

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v5, v5, v1

    iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v4, v5}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    .line 1358
    iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v5, v5, v1

    iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    iget-byte v5, v5, Lorg/jbox2d/collision/ContactID;->typeB:B

    iput-byte v5, v4, Lorg/jbox2d/collision/ContactID;->typeA:B

    .line 1359
    iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v5, v5, v1

    iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    iget-byte v5, v5, Lorg/jbox2d/collision/ContactID;->typeA:B

    iput-byte v5, v4, Lorg/jbox2d/collision/ContactID;->typeB:B

    .line 1360
    iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v5, v5, v1

    iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    iget-byte v5, v5, Lorg/jbox2d/collision/ContactID;->indexB:B

    iput-byte v5, v4, Lorg/jbox2d/collision/ContactID;->indexA:B

    .line 1361
    iget-object v3, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;

    aget-object v4, v4, v1

    iget-object v4, v4, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;

    iget-byte v4, v4, Lorg/jbox2d/collision/ContactID;->indexA:B

    iput-byte v4, v3, Lorg/jbox2d/collision/ContactID;->indexB:B

    goto/16 :goto_796

    .line 1368
    :cond_8cb
    iput v2, p1, Lorg/jbox2d/collision/Manifold;->pointCount:I

    goto/16 :goto_5b4

    :cond_8cf
    move v0, v1

    move v1, v2

    goto/16 :goto_e4

    :cond_8d3
    move v4, v3

    move v3, v0

    goto/16 :goto_a0
.end method

.method public computeEdgeSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V
    .registers 8

    .prologue
    const/4 v1, 0x0

    .line 1373
    sget-object v0, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    iput-object v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    .line 1374
    iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z

    if-eqz v0, :cond_41

    move v0, v1

    :goto_a
    iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I

    .line 1375
    const v0, 0x7f7fffff    # Float.MAX_VALUE

    iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    .line 1376
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget v0, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1377
    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget v2, v2, Lorg/jbox2d/common/Vec2;->y:F

    .line 1379
    :goto_19
    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I

    if-ge v1, v3, :cond_43

    .line 1380
    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;

    aget-object v3, v3, v1

    .line 1381
    iget v4, v3, Lorg/jbox2d/common/Vec2;->x:F

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    iget v5, v5, Lorg/jbox2d/common/Vec2;->x:F

    sub-float/2addr v4, v5

    .line 1382
    iget v3, v3, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    iget v5, v5, Lorg/jbox2d/common/Vec2;->y:F

    sub-float/2addr v3, v5

    .line 1383
    mul-float/2addr v4, v0

    mul-float/2addr v3, v2

    add-float/2addr v3, v4

    .line 1384
    iget v4, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    cmpg-float v4, v3, v4

    if-gez v4, :cond_3e

    .line 1385
    iput v3, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    .line 1379
    :cond_3e
    add-int/lit8 v1, v1, 0x1

    goto :goto_19

    .line 1374
    :cond_41
    const/4 v0, 0x1

    goto :goto_a

    .line 1388
    :cond_43
    return-void
.end method

.method public computePolygonSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V
    .registers 7

    .prologue
    .line 1394
    sget-object v0, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    iput-object v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    .line 1395
    const/4 v0, -0x1

    iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I

    .line 1396
    const v0, -0x800001

    iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    .line 1398
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F

    .line 1399
    iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;

    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F

    iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F

    .line 1401
    const/4 v0, 0x0

    :goto_1e
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget v1, v1, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I

    if-ge v0, v1, :cond_82

    .line 1402
    iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v1, v1, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;

    aget-object v1, v1, v0

    .line 1403
    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;

    iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;

    aget-object v2, v2, v0

    .line 1404
    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v4, v1, Lorg/jbox2d/common/Vec2;->x:F

    neg-float v4, v4

    iput v4, v3, Lorg/jbox2d/common/Vec2;->x:F

    .line 1405
    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F

    neg-float v1, v1

    iput v1, v3, Lorg/jbox2d/common/Vec2;->y:F

    .line 1409
    iget v1, v2, Lorg/jbox2d/common/Vec2;->x:F

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    iget v3, v3, Lorg/jbox2d/common/Vec2;->x:F

    sub-float/2addr v1, v3

    .line 1410
    iget v3, v2, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F

    sub-float/2addr v3, v4

    .line 1411
    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F

    mul-float/2addr v1, v4

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F

    mul-float/2addr v3, v4

    add-float/2addr v1, v3

    .line 1412
    iget v3, v2, Lorg/jbox2d/common/Vec2;->x:F

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F

    sub-float/2addr v3, v4

    .line 1413
    iget v2, v2, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F

    sub-float/2addr v2, v4

    .line 1414
    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F

    mul-float/2addr v3, v4

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F

    mul-float/2addr v2, v4

    add-float/2addr v2, v3

    .line 1415
    invoke-static {v1, v2}, Lorg/jbox2d/common/MathUtils;->min(FF)F

    move-result v1

    .line 1417
    iget v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F

    cmpl-float v2, v1, v2

    if-lez v2, :cond_83

    .line 1419
    sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_B:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    iput-object v2, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    .line 1420
    iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I

    .line 1421
    iput v1, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    .line 1442
    :cond_82
    return-void

    .line 1426
    :cond_83
    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v2, v2, Lorg/jbox2d/common/Vec2;->x:F

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;

    iget v3, v3, Lorg/jbox2d/common/Vec2;->x:F

    mul-float/2addr v2, v3

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    iget v3, v3, Lorg/jbox2d/common/Vec2;->y:F

    iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;

    iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F

    mul-float/2addr v3, v4

    add-float/2addr v2, v3

    const/4 v3, 0x0

    cmpl-float v2, v2, v3

    if-ltz v2, :cond_ba

    .line 1427
    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v2

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v2

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v2

    sget v3, Lorg/jbox2d/common/Settings;->angularSlop:F

    neg-float v3, v3

    cmpg-float v2, v2, v3

    if-gez v2, :cond_d5

    .line 1401
    :cond_b6
    :goto_b6
    add-int/lit8 v0, v0, 0x1

    goto/16 :goto_1e

    .line 1431
    :cond_ba
    iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v2

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;

    invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;

    move-result-object v2

    iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;

    invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F

    move-result v2

    sget v3, Lorg/jbox2d/common/Settings;->angularSlop:F

    neg-float v3, v3

    cmpg-float v2, v2, v3

    if-ltz v2, :cond_b6

    .line 1436
    :cond_d5
    iget v2, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    cmpl-float v2, v1, v2

    if-lez v2, :cond_b6

    .line 1437
    sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_B:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    iput-object v2, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;

    .line 1438
    iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I

    .line 1439
    iput v1, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F

    goto :goto_b6
.end method