public class com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset implements java.util.Comparator<com.oracle.objectfile.ObjectFile$Element>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset
  super_class: java.lang.Object
{
  java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap> decisionsByElement;
    descriptor: Ljava/util/Map;
    flags: (0x0000) 
    Signature: Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;

  public void <init>(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset this
        start local 1 // java.util.Map decisionsByElement
         0: .line 1712
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 1713
            aload 0 /* this */
            aload 1 /* decisionsByElement */
            putfield com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset.decisionsByElement:Ljava/util/Map;
         2: .line 1714
            return
        end local 1 // java.util.Map decisionsByElement
        end local 0 // com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0                this  Lcom/oracle/objectfile/ObjectFile$ElementComparatorByDecidedOffset;
            0    3     1  decisionsByElement  Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
    Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;)V
    MethodParameters:
                    Name  Flags
      decisionsByElement  

  public int compare(com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.ObjectFile$Element);
    descriptor: (Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/ObjectFile$Element;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=9, args_size=3
        start local 0 // com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset this
        start local 1 // com.oracle.objectfile.ObjectFile$Element e1
        start local 2 // com.oracle.objectfile.ObjectFile$Element e2
         0: .line 1720
            aload 0 /* this */
            getfield com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset.decisionsByElement:Ljava/util/Map;
            aload 1 /* e1 */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            astore 3 /* e1decisions */
        start local 3 // com.oracle.objectfile.LayoutDecisionMap e1decisions
         1: .line 1721
            aload 3 /* e1decisions */
            getstatic com.oracle.objectfile.LayoutDecision$Kind.OFFSET:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 4 /* e1OffsetDecision */
        start local 4 // com.oracle.objectfile.LayoutDecision e1OffsetDecision
         2: .line 1722
            aload 4 /* e1OffsetDecision */
            ifnull 3
            aload 4 /* e1OffsetDecision */
            invokevirtual com.oracle.objectfile.LayoutDecision.isTaken:()Z
            ifeq 3
            aload 4 /* e1OffsetDecision */
            invokevirtual com.oracle.objectfile.LayoutDecision.getValue:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            goto 4
      StackMap locals: com.oracle.objectfile.LayoutDecisionMap com.oracle.objectfile.LayoutDecision
      StackMap stack:
         3: ldc 2147483647
      StackMap locals:
      StackMap stack: int
         4: istore 5 /* e1offset */
        start local 5 // int e1offset
         5: .line 1723
            aload 0 /* this */
            getfield com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset.decisionsByElement:Ljava/util/Map;
            aload 2 /* e2 */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            astore 6 /* e2decisions */
        start local 6 // com.oracle.objectfile.LayoutDecisionMap e2decisions
         6: .line 1724
            aload 6 /* e2decisions */
            getstatic com.oracle.objectfile.LayoutDecision$Kind.OFFSET:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 7 /* e2OffsetDecision */
        start local 7 // com.oracle.objectfile.LayoutDecision e2OffsetDecision
         7: .line 1725
            aload 7 /* e2OffsetDecision */
            ifnull 8
            aload 7 /* e2OffsetDecision */
            invokevirtual com.oracle.objectfile.LayoutDecision.isTaken:()Z
            ifeq 8
            aload 7 /* e2OffsetDecision */
            invokevirtual com.oracle.objectfile.LayoutDecision.getValue:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            goto 9
      StackMap locals: int com.oracle.objectfile.LayoutDecisionMap com.oracle.objectfile.LayoutDecision
      StackMap stack:
         8: ldc 2147483647
      StackMap locals:
      StackMap stack: int
         9: istore 8 /* e2offset */
        start local 8 // int e2offset
        10: .line 1726
            iload 5 /* e1offset */
            iload 8 /* e2offset */
            if_icmpge 12
        11: .line 1727
            iconst_m1
            ireturn
        12: .line 1728
      StackMap locals: int
      StackMap stack:
            iload 5 /* e1offset */
            iload 8 /* e2offset */
            if_icmple 14
        13: .line 1729
            iconst_1
            ireturn
        14: .line 1731
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 8 // int e2offset
        end local 7 // com.oracle.objectfile.LayoutDecision e2OffsetDecision
        end local 6 // com.oracle.objectfile.LayoutDecisionMap e2decisions
        end local 5 // int e1offset
        end local 4 // com.oracle.objectfile.LayoutDecision e1OffsetDecision
        end local 3 // com.oracle.objectfile.LayoutDecisionMap e1decisions
        end local 2 // com.oracle.objectfile.ObjectFile$Element e2
        end local 1 // com.oracle.objectfile.ObjectFile$Element e1
        end local 0 // com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lcom/oracle/objectfile/ObjectFile$ElementComparatorByDecidedOffset;
            0   15     1                e1  Lcom/oracle/objectfile/ObjectFile$Element;
            0   15     2                e2  Lcom/oracle/objectfile/ObjectFile$Element;
            1   15     3       e1decisions  Lcom/oracle/objectfile/LayoutDecisionMap;
            2   15     4  e1OffsetDecision  Lcom/oracle/objectfile/LayoutDecision;
            5   15     5          e1offset  I
            6   15     6       e2decisions  Lcom/oracle/objectfile/LayoutDecisionMap;
            7   15     7  e2OffsetDecision  Lcom/oracle/objectfile/LayoutDecision;
           10   15     8          e2offset  I
    MethodParameters:
      Name  Flags
      e1    
      e2    

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast com.oracle.objectfile.ObjectFile$Element
            aload 2
            checkcast com.oracle.objectfile.ObjectFile$Element
            invokevirtual com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset.compare:(Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/ObjectFile$Element;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/util/Comparator<Lcom/oracle/objectfile/ObjectFile$Element;>;
SourceFile: "ObjectFile.java"
NestHost: com.oracle.objectfile.ObjectFile
InnerClasses:
  public final Kind = com.oracle.objectfile.LayoutDecision$Kind of com.oracle.objectfile.LayoutDecision
  public abstract Element = com.oracle.objectfile.ObjectFile$Element of com.oracle.objectfile.ObjectFile
  public ElementComparatorByDecidedOffset = com.oracle.objectfile.ObjectFile$ElementComparatorByDecidedOffset of com.oracle.objectfile.ObjectFile