public class sun.jvm.hotspot.utilities.RBTree
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.jvm.hotspot.utilities.RBTree
  super_class: java.lang.Object
{
  private sun.jvm.hotspot.utilities.RBNode root;
    descriptor: Lsun/jvm/hotspot/utilities/RBNode;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Comparator<java.lang.Object> comparator;
    descriptor: Ljava/util/Comparator;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Comparator<Ljava/lang/Object;>;

  protected static final boolean DEBUGGING;
    descriptor: Z
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  protected static final boolean VERBOSE;
    descriptor: Z
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  protected static final boolean REALLY_VERBOSE;
    descriptor: Z
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public void <init>(java.util.Comparator<java.lang.Object>);
    descriptor: (Ljava/util/Comparator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // java.util.Comparator comparator
         0: .line 65
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 66
            aload 0 /* this */
            aload 1 /* comparator */
            putfield sun.jvm.hotspot.utilities.RBTree.comparator:Ljava/util/Comparator;
         2: .line 67
            return
        end local 1 // java.util.Comparator comparator
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lsun/jvm/hotspot/utilities/RBTree;
            0    3     1  comparator  Ljava/util/Comparator<Ljava/lang/Object;>;
    Signature: (Ljava/util/Comparator<Ljava/lang/Object;>;)V
    MethodParameters:
            Name  Flags
      comparator  

  public sun.jvm.hotspot.utilities.RBNode getRoot();
    descriptor: ()Lsun/jvm/hotspot/utilities/RBNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
         0: .line 70
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            areturn
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/RBTree;

  public void insertNode(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode x
         0: .line 74
            aload 0 /* this */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.treeInsert:(Lsun/jvm/hotspot/utilities/RBNode;)V
         1: .line 76
            aload 1 /* x */
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
         2: .line 77
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            istore 2 /* shouldPropagate */
        start local 2 // boolean shouldPropagate
         3: .line 83
            aload 1 /* x */
            astore 3 /* propagateStart */
        start local 3 // sun.jvm.hotspot.utilities.RBNode propagateStart
         4: .line 86
            goto 41
         5: .line 87
      StackMap locals: int sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 24
         6: .line 88
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 4 /* y */
        start local 4 // sun.jvm.hotspot.utilities.RBNode y
         7: .line 89
            aload 4 /* y */
            ifnull 16
            aload 4 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 16
         8: .line 94
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
         9: .line 95
            aload 4 /* y */
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        10: .line 96
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        11: .line 97
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            pop
        12: .line 98
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 1 /* x */
        13: .line 99
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            istore 2 /* shouldPropagate */
        14: .line 100
            aload 1 /* x */
            astore 3 /* propagateStart */
        15: .line 101
            goto 41
        16: .line 102
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 1 /* x */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 19
        17: .line 107
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 1 /* x */
        18: .line 108
            aload 0 /* this */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.leftRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
        19: .line 114
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        20: .line 115
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        21: .line 116
            aload 0 /* this */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.rightRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            istore 2 /* shouldPropagate */
        22: .line 117
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* propagateStart */
        end local 4 // sun.jvm.hotspot.utilities.RBNode y
        23: .line 119
            goto 41
        24: .line 121
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 4 /* y */
        start local 4 // sun.jvm.hotspot.utilities.RBNode y
        25: .line 122
            aload 4 /* y */
            ifnull 34
            aload 4 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 34
        26: .line 127
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        27: .line 128
            aload 4 /* y */
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        28: .line 129
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        29: .line 130
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            pop
        30: .line 131
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 1 /* x */
        31: .line 132
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            istore 2 /* shouldPropagate */
        32: .line 133
            aload 1 /* x */
            astore 3 /* propagateStart */
        33: .line 134
            goto 41
        34: .line 135
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 1 /* x */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 37
        35: .line 140
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 1 /* x */
        36: .line 141
            aload 0 /* this */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.rightRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
        37: .line 147
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        38: .line 148
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        39: .line 149
            aload 0 /* this */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.leftRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            istore 2 /* shouldPropagate */
        40: .line 150
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* propagateStart */
        end local 4 // sun.jvm.hotspot.utilities.RBNode y
        41: .line 86
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpeq 45
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpeq 5
        42: .line 155
            goto 45
        43: .line 159
      StackMap locals:
      StackMap stack:
            aload 3 /* propagateStart */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* propagateStart */
        44: .line 160
            aload 3 /* propagateStart */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            istore 2 /* shouldPropagate */
        45: .line 155
      StackMap locals:
      StackMap stack:
            iload 2 /* shouldPropagate */
            ifeq 46
            aload 3 /* propagateStart */
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 43
        46: .line 163
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        47: .line 166
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.verify:()V
        48: .line 168
            return
        end local 3 // sun.jvm.hotspot.utilities.RBNode propagateStart
        end local 2 // boolean shouldPropagate
        end local 1 // sun.jvm.hotspot.utilities.RBNode x
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   49     0             this  Lsun/jvm/hotspot/utilities/RBTree;
            0   49     1                x  Lsun/jvm/hotspot/utilities/RBNode;
            3   49     2  shouldPropagate  Z
            4   49     3   propagateStart  Lsun/jvm/hotspot/utilities/RBNode;
            7   23     4                y  Lsun/jvm/hotspot/utilities/RBNode;
           25   41     4                y  Lsun/jvm/hotspot/utilities/RBNode;
    MethodParameters:
      Name  Flags
      x     

  public void deleteNode(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode z
         0: .line 180
            aload 1 /* z */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 1
            aload 1 /* z */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnonnull 3
         1: .line 181
      StackMap locals:
      StackMap stack:
            aload 1 /* z */
            astore 2 /* y */
        start local 2 // sun.jvm.hotspot.utilities.RBNode y
         2: .line 182
            goto 4
        end local 2 // sun.jvm.hotspot.utilities.RBNode y
         3: .line 183
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* z */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.treeSuccessor:(Lsun/jvm/hotspot/utilities/RBNode;)Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* y */
        start local 2 // sun.jvm.hotspot.utilities.RBNode y
         4: .line 187
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 7
         5: .line 188
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* x */
        start local 3 // sun.jvm.hotspot.utilities.RBNode x
         6: .line 189
            goto 8
        end local 3 // sun.jvm.hotspot.utilities.RBNode x
         7: .line 190
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* x */
        start local 3 // sun.jvm.hotspot.utilities.RBNode x
         8: .line 195
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 3 /* x */
            ifnull 12
         9: .line 196
            aload 3 /* x */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
        10: .line 197
            aload 3 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 4 /* xParent */
        start local 4 // sun.jvm.hotspot.utilities.RBNode xParent
        11: .line 198
            goto 13
        end local 4 // sun.jvm.hotspot.utilities.RBNode xParent
        12: .line 199
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 4 /* xParent */
        start local 4 // sun.jvm.hotspot.utilities.RBNode xParent
        13: .line 201
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnonnull 16
        14: .line 202
            aload 0 /* this */
            aload 3 /* x */
            putfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
        15: .line 203
            goto 20
        16: .line 204
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 19
        17: .line 205
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 3 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setLeft:(Lsun/jvm/hotspot/utilities/RBNode;)V
        18: .line 206
            goto 20
        19: .line 207
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 3 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setRight:(Lsun/jvm/hotspot/utilities/RBNode;)V
        20: .line 210
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            aload 1 /* z */
            if_acmpeq 22
        21: .line 211
            aload 1 /* z */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.copyFrom:(Lsun/jvm/hotspot/utilities/RBNode;)V
        22: .line 213
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 24
        23: .line 214
            aload 0 /* this */
            aload 3 /* x */
            aload 4 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.deleteFixup:(Lsun/jvm/hotspot/utilities/RBNode;Lsun/jvm/hotspot/utilities/RBNode;)V
        24: .line 218
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.verify:()V
        25: .line 220
            return
        end local 4 // sun.jvm.hotspot.utilities.RBNode xParent
        end local 3 // sun.jvm.hotspot.utilities.RBNode x
        end local 2 // sun.jvm.hotspot.utilities.RBNode y
        end local 1 // sun.jvm.hotspot.utilities.RBNode z
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   26     0     this  Lsun/jvm/hotspot/utilities/RBTree;
            0   26     1        z  Lsun/jvm/hotspot/utilities/RBNode;
            2    3     2        y  Lsun/jvm/hotspot/utilities/RBNode;
            4   26     2        y  Lsun/jvm/hotspot/utilities/RBNode;
            6    7     3        x  Lsun/jvm/hotspot/utilities/RBNode;
            8   26     3        x  Lsun/jvm/hotspot/utilities/RBNode;
           11   12     4  xParent  Lsun/jvm/hotspot/utilities/RBNode;
           13   26     4  xParent  Lsun/jvm/hotspot/utilities/RBNode;
    MethodParameters:
      Name  Flags
      z     

  public void print();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
         0: .line 223
            aload 0 /* this */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printOn:(Ljava/io/PrintStream;)V
         1: .line 224
            return
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/RBTree;

  public void printOn(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // java.io.PrintStream tty
         0: .line 227
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            aload 1 /* tty */
            iconst_0
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printFromNode:(Lsun/jvm/hotspot/utilities/RBNode;Ljava/io/PrintStream;I)V
         1: .line 228
            return
        end local 1 // java.io.PrintStream tty
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0    2     1   tty  Ljava/io/PrintStream;
    MethodParameters:
      Name  Flags
      tty   

  protected java.lang.Object getNodeValue(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode node
         0: .line 235
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getData:()Ljava/lang/Object;
            areturn
        end local 1 // sun.jvm.hotspot.utilities.RBNode node
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0    1     1  node  Lsun/jvm/hotspot/utilities/RBNode;
    MethodParameters:
      Name  Flags
      node  

  protected void verify();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
         0: .line 240
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.verifyFromNode:(Lsun/jvm/hotspot/utilities/RBNode;)I
            pop
         1: .line 241
            return
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/utilities/RBTree;

  private void treeInsert(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode z
         0: .line 252
            aconst_null
            astore 2 /* y */
        start local 2 // sun.jvm.hotspot.utilities.RBNode y
         1: .line 253
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* x */
        start local 3 // sun.jvm.hotspot.utilities.RBNode x
         2: .line 255
            goto 8
         3: .line 256
      StackMap locals: sun.jvm.hotspot.utilities.RBNode sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 3 /* x */
            astore 2 /* y */
         4: .line 257
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.comparator:Ljava/util/Comparator;
            aload 0 /* this */
            aload 1 /* z */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.getNodeValue:(Lsun/jvm/hotspot/utilities/RBNode;)Ljava/lang/Object;
            aload 0 /* this */
            aload 3 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.getNodeValue:(Lsun/jvm/hotspot/utilities/RBNode;)Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifge 7
         5: .line 258
            aload 3 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* x */
         6: .line 259
            goto 8
         7: .line 260
      StackMap locals:
      StackMap stack:
            aload 3 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* x */
         8: .line 255
      StackMap locals:
      StackMap stack:
            aload 3 /* x */
            ifnonnull 3
         9: .line 263
            aload 1 /* z */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
        10: .line 264
            aload 2 /* y */
            ifnonnull 13
        11: .line 265
            aload 0 /* this */
            aload 1 /* z */
            putfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
        12: .line 266
            goto 17
        13: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.comparator:Ljava/util/Comparator;
            aload 0 /* this */
            aload 1 /* z */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.getNodeValue:(Lsun/jvm/hotspot/utilities/RBNode;)Ljava/lang/Object;
            aload 0 /* this */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.getNodeValue:(Lsun/jvm/hotspot/utilities/RBNode;)Ljava/lang/Object;
            invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
            ifge 16
        14: .line 268
            aload 2 /* y */
            aload 1 /* z */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setLeft:(Lsun/jvm/hotspot/utilities/RBNode;)V
        15: .line 269
            goto 17
        16: .line 270
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            aload 1 /* z */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setRight:(Lsun/jvm/hotspot/utilities/RBNode;)V
        17: .line 273
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.jvm.hotspot.utilities.RBNode x
        end local 2 // sun.jvm.hotspot.utilities.RBNode y
        end local 1 // sun.jvm.hotspot.utilities.RBNode z
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0   18     1     z  Lsun/jvm/hotspot/utilities/RBNode;
            1   18     2     y  Lsun/jvm/hotspot/utilities/RBNode;
            2   18     3     x  Lsun/jvm/hotspot/utilities/RBNode;
    MethodParameters:
      Name  Flags
      z     

  private sun.jvm.hotspot.utilities.RBNode treeSuccessor(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)Lsun/jvm/hotspot/utilities/RBNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode x
         0: .line 276
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 2
         1: .line 277
            aload 0 /* this */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.treeMinimum:(Lsun/jvm/hotspot/utilities/RBNode;)Lsun/jvm/hotspot/utilities/RBNode;
            areturn
         2: .line 279
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* y */
        start local 2 // sun.jvm.hotspot.utilities.RBNode y
         3: .line 280
            goto 6
         4: .line 281
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 2 /* y */
            astore 1 /* x */
         5: .line 282
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* y */
         6: .line 280
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            ifnull 7
            aload 1 /* x */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpeq 4
         7: .line 284
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            areturn
        end local 2 // sun.jvm.hotspot.utilities.RBNode y
        end local 1 // sun.jvm.hotspot.utilities.RBNode x
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0    8     1     x  Lsun/jvm/hotspot/utilities/RBNode;
            3    8     2     y  Lsun/jvm/hotspot/utilities/RBNode;
    MethodParameters:
      Name  Flags
      x     

  private sun.jvm.hotspot.utilities.RBNode treeMinimum(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)Lsun/jvm/hotspot/utilities/RBNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode x
         0: .line 288
            goto 2
         1: .line 289
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 1 /* x */
         2: .line 288
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnonnull 1
         3: .line 291
            aload 1 /* x */
            areturn
        end local 1 // sun.jvm.hotspot.utilities.RBNode x
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0    4     1     x  Lsun/jvm/hotspot/utilities/RBNode;
    MethodParameters:
      Name  Flags
      x     

  private boolean leftRotate(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode x
         0: .line 301
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* y */
        start local 2 // sun.jvm.hotspot.utilities.RBNode y
         1: .line 303
            aload 1 /* x */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setRight:(Lsun/jvm/hotspot/utilities/RBNode;)V
         2: .line 304
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 4
         3: .line 305
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
         4: .line 308
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 2 /* y */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
         5: .line 309
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnonnull 8
         6: .line 310
            aload 0 /* this */
            aload 2 /* y */
            putfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
         7: .line 311
            goto 12
         8: .line 312
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 11
         9: .line 313
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setLeft:(Lsun/jvm/hotspot/utilities/RBNode;)V
        10: .line 314
            goto 12
        11: .line 315
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setRight:(Lsun/jvm/hotspot/utilities/RBNode;)V
        12: .line 319
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setLeft:(Lsun/jvm/hotspot/utilities/RBNode;)V
        13: .line 320
            aload 1 /* x */
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
        14: .line 322
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            istore 3 /* res */
        start local 3 // boolean res
        15: .line 323
            aload 2 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            ifne 16
            iload 3 /* res */
            ifne 16
            iconst_0
            goto 17
      StackMap locals: int
      StackMap stack:
        16: iconst_1
      StackMap locals:
      StackMap stack: int
        17: istore 3 /* res */
        18: .line 324
            iload 3 /* res */
            ireturn
        end local 3 // boolean res
        end local 2 // sun.jvm.hotspot.utilities.RBNode y
        end local 1 // sun.jvm.hotspot.utilities.RBNode x
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0   19     1     x  Lsun/jvm/hotspot/utilities/RBNode;
            1   19     2     y  Lsun/jvm/hotspot/utilities/RBNode;
           15   19     3   res  Z
    MethodParameters:
      Name  Flags
      x     

  private boolean rightRotate(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode y
         0: .line 330
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* x */
        start local 2 // sun.jvm.hotspot.utilities.RBNode x
         1: .line 332
            aload 1 /* y */
            aload 2 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setLeft:(Lsun/jvm/hotspot/utilities/RBNode;)V
         2: .line 333
            aload 2 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 4
         3: .line 334
            aload 2 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
         4: .line 337
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 2 /* x */
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
         5: .line 338
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnonnull 8
         6: .line 339
            aload 0 /* this */
            aload 2 /* x */
            putfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
         7: .line 340
            goto 12
         8: .line 341
      StackMap locals:
      StackMap stack:
            aload 1 /* y */
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 11
         9: .line 342
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 2 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setLeft:(Lsun/jvm/hotspot/utilities/RBNode;)V
        10: .line 343
            goto 12
        11: .line 344
      StackMap locals:
      StackMap stack:
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 2 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setRight:(Lsun/jvm/hotspot/utilities/RBNode;)V
        12: .line 348
      StackMap locals:
      StackMap stack:
            aload 2 /* x */
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setRight:(Lsun/jvm/hotspot/utilities/RBNode;)V
        13: .line 349
            aload 1 /* y */
            aload 2 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setParent:(Lsun/jvm/hotspot/utilities/RBNode;)V
        14: .line 351
            aload 1 /* y */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            istore 3 /* res */
        start local 3 // boolean res
        15: .line 352
            aload 2 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.update:()Z
            ifne 16
            iload 3 /* res */
            ifne 16
            iconst_0
            goto 17
      StackMap locals: int
      StackMap stack:
        16: iconst_1
      StackMap locals:
      StackMap stack: int
        17: istore 3 /* res */
        18: .line 353
            iload 3 /* res */
            ireturn
        end local 3 // boolean res
        end local 2 // sun.jvm.hotspot.utilities.RBNode x
        end local 1 // sun.jvm.hotspot.utilities.RBNode y
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0   19     1     y  Lsun/jvm/hotspot/utilities/RBNode;
            1   19     2     x  Lsun/jvm/hotspot/utilities/RBNode;
           15   19     3   res  Z
    MethodParameters:
      Name  Flags
      y     

  private void deleteFixup(sun.jvm.hotspot.utilities.RBNode, sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;Lsun/jvm/hotspot/utilities/RBNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode x
        start local 2 // sun.jvm.hotspot.utilities.RBNode xParent
         0: .line 360
            goto 55
         1: .line 361
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpne 29
         2: .line 365
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* w */
        start local 3 // sun.jvm.hotspot.utilities.RBNode w
         3: .line 367
            aload 3 /* w */
            ifnonnull 5
         4: .line 368
            new java.lang.RuntimeException
            dup
            ldc "x's sibling should not be null"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 371
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 10
         6: .line 373
            aload 3 /* w */
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
         7: .line 374
            aload 2 /* xParent */
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
         8: .line 375
            aload 0 /* this */
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.leftRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
         9: .line 376
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* w */
        10: .line 378
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 11
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 16
        11: .line 379
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 12
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 16
        12: .line 381
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        13: .line 382
            aload 2 /* xParent */
            astore 1 /* x */
        14: .line 383
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* xParent */
        15: .line 384
            goto 55
        16: .line 385
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 17
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 21
        17: .line 387
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        18: .line 388
            aload 3 /* w */
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        19: .line 389
            aload 0 /* this */
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.rightRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
        20: .line 390
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* w */
        21: .line 393
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        22: .line 394
            aload 2 /* xParent */
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        23: .line 395
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 25
        24: .line 396
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        25: .line 398
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.leftRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
        26: .line 399
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            astore 1 /* x */
        27: .line 400
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* xParent */
        end local 3 // sun.jvm.hotspot.utilities.RBNode w
        28: .line 402
            goto 55
        29: .line 409
      StackMap locals:
      StackMap stack:
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* w */
        start local 3 // sun.jvm.hotspot.utilities.RBNode w
        30: .line 411
            aload 3 /* w */
            ifnonnull 32
        31: .line 412
            new java.lang.RuntimeException
            dup
            ldc "x's sibling should not be null"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        32: .line 415
      StackMap locals: sun.jvm.hotspot.utilities.RBNode
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 37
        33: .line 417
            aload 3 /* w */
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        34: .line 418
            aload 2 /* xParent */
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        35: .line 419
            aload 0 /* this */
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.rightRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
        36: .line 420
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* w */
        37: .line 422
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 38
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 43
        38: .line 423
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 39
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 43
        39: .line 425
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        40: .line 426
            aload 2 /* xParent */
            astore 1 /* x */
        41: .line 427
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* xParent */
        42: .line 428
            goto 55
        43: .line 429
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 44
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 48
        44: .line 431
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        45: .line 432
            aload 3 /* w */
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        46: .line 433
            aload 0 /* this */
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.leftRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
        47: .line 434
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 3 /* w */
        48: .line 437
      StackMap locals:
      StackMap stack:
            aload 3 /* w */
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        49: .line 438
            aload 2 /* xParent */
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        50: .line 439
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 52
        51: .line 440
            aload 3 /* w */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        52: .line 442
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.rightRotate:(Lsun/jvm/hotspot/utilities/RBNode;)Z
            pop
        53: .line 443
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            astore 1 /* x */
        54: .line 444
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 2 /* xParent */
        end local 3 // sun.jvm.hotspot.utilities.RBNode w
        55: .line 360
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            aload 0 /* this */
            getfield sun.jvm.hotspot.utilities.RBTree.root:Lsun/jvm/hotspot/utilities/RBNode;
            if_acmpeq 56
            aload 1 /* x */
            ifnull 1
            aload 1 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpeq 1
        56: .line 448
      StackMap locals:
      StackMap stack:
            aload 1 /* x */
            ifnull 58
        57: .line 449
            aload 1 /* x */
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.setColor:(Lsun/jvm/hotspot/utilities/RBColor;)V
        58: .line 451
      StackMap locals:
      StackMap stack:
            return
        end local 2 // sun.jvm.hotspot.utilities.RBNode xParent
        end local 1 // sun.jvm.hotspot.utilities.RBNode x
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   59     0     this  Lsun/jvm/hotspot/utilities/RBTree;
            0   59     1        x  Lsun/jvm/hotspot/utilities/RBNode;
            0   59     2  xParent  Lsun/jvm/hotspot/utilities/RBNode;
            3   28     3        w  Lsun/jvm/hotspot/utilities/RBNode;
           30   55     3        w  Lsun/jvm/hotspot/utilities/RBNode;
    MethodParameters:
         Name  Flags
      x        
      xParent  

  private int verifyFromNode(sun.jvm.hotspot.utilities.RBNode);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode node
         0: .line 457
            aload 1 /* node */
            ifnonnull 2
         1: .line 458
            iconst_1
            ireturn
         2: .line 462
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpeq 7
         3: .line 463
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpeq 7
         4: .line 465
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Verify failed:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         5: .line 466
            aload 0 /* this */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printOn:(Ljava/io/PrintStream;)V
         6: .line 468
            new java.lang.RuntimeException
            dup
            ldc "Verify failed (1)"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 473
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 18
         8: .line 475
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 13
         9: .line 476
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpeq 13
        10: .line 478
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Verify failed:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        11: .line 479
            aload 0 /* this */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printOn:(Ljava/io/PrintStream;)V
        12: .line 481
            new java.lang.RuntimeException
            dup
            ldc "Verify failed (2)"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 484
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            ifnull 18
        14: .line 485
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.BLACK:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpeq 18
        15: .line 487
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Verify failed:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        16: .line 488
            aload 0 /* this */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printOn:(Ljava/io/PrintStream;)V
        17: .line 490
            new java.lang.RuntimeException
            dup
            ldc "Verify failed (3)"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 497
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.verifyFromNode:(Lsun/jvm/hotspot/utilities/RBNode;)I
            istore 2 /* i */
        start local 2 // int i
        19: .line 498
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.verifyFromNode:(Lsun/jvm/hotspot/utilities/RBNode;)I
            istore 3 /* j */
        start local 3 // int j
        20: .line 499
            iload 2 /* i */
            iload 3 /* j */
            if_icmpeq 26
        21: .line 501
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Verify failed:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        22: .line 502
            aload 0 /* this */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printOn:(Ljava/io/PrintStream;)V
        23: .line 504
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Verify failed (4) (left black count = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        24: .line 505
            iload 2 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", right black count = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* j */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        25: .line 504
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        26: .line 508
      StackMap locals: int int
      StackMap stack:
            iload 2 /* i */
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 27
            iconst_0
            goto 28
      StackMap locals:
      StackMap stack: int
        27: iconst_1
      StackMap locals: sun.jvm.hotspot.utilities.RBTree sun.jvm.hotspot.utilities.RBNode int int
      StackMap stack: int int
        28: iadd
            ireturn
        end local 3 // int j
        end local 2 // int i
        end local 1 // sun.jvm.hotspot.utilities.RBNode node
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   29     0  this  Lsun/jvm/hotspot/utilities/RBTree;
            0   29     1  node  Lsun/jvm/hotspot/utilities/RBNode;
           19   29     2     i  I
           20   29     3     j  I
    MethodParameters:
      Name  Flags
      node  

  private void printFromNode(sun.jvm.hotspot.utilities.RBNode, java.io.PrintStream, int);
    descriptor: (Lsun/jvm/hotspot/utilities/RBNode;Ljava/io/PrintStream;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // sun.jvm.hotspot.utilities.RBTree this
        start local 1 // sun.jvm.hotspot.utilities.RBNode node
        start local 2 // java.io.PrintStream tty
        start local 3 // int indentDepth
         0: .line 513
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 4
         2: .line 514
      StackMap locals: int
      StackMap stack:
            aload 2 /* tty */
            ldc " "
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         3: .line 513
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 4 /* i */
            iload 3 /* indentDepth */
            if_icmplt 2
        end local 4 // int i
         5: .line 517
            aload 2 /* tty */
            ldc "-"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         6: .line 518
            aload 1 /* node */
            ifnonnull 9
         7: .line 519
            aload 2 /* tty */
            invokevirtual java.io.PrintStream.println:()V
         8: .line 520
            return
         9: .line 523
      StackMap locals:
      StackMap stack:
            aload 2 /* tty */
            new java.lang.StringBuilder
            dup
            ldc " "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.getNodeValue:(Lsun/jvm/hotspot/utilities/RBNode;)Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        10: .line 524
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getColor:()Lsun/jvm/hotspot/utilities/RBColor;
            getstatic sun.jvm.hotspot.utilities.RBColor.RED:Lsun/jvm/hotspot/utilities/RBColor;
            if_acmpne 11
            ldc " (red)"
            goto 12
      StackMap locals: sun.jvm.hotspot.utilities.RBTree sun.jvm.hotspot.utilities.RBNode java.io.PrintStream int
      StackMap stack: java.io.PrintStream java.lang.StringBuilder
        11: ldc " (black)"
      StackMap locals: sun.jvm.hotspot.utilities.RBTree sun.jvm.hotspot.utilities.RBNode java.io.PrintStream int
      StackMap stack: java.io.PrintStream java.lang.StringBuilder java.lang.String
        12: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 523
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        14: .line 525
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 2 /* tty */
            iload 3 /* indentDepth */
            iconst_2
            iadd
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printFromNode:(Lsun/jvm/hotspot/utilities/RBNode;Ljava/io/PrintStream;I)V
        15: .line 526
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            aload 2 /* tty */
            iload 3 /* indentDepth */
            iconst_2
            iadd
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printFromNode:(Lsun/jvm/hotspot/utilities/RBNode;Ljava/io/PrintStream;I)V
        16: .line 527
            return
        end local 3 // int indentDepth
        end local 2 // java.io.PrintStream tty
        end local 1 // sun.jvm.hotspot.utilities.RBNode node
        end local 0 // sun.jvm.hotspot.utilities.RBTree this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lsun/jvm/hotspot/utilities/RBTree;
            0   17     1         node  Lsun/jvm/hotspot/utilities/RBNode;
            0   17     2          tty  Ljava/io/PrintStream;
            0   17     3  indentDepth  I
            1    5     4            i  I
    MethodParameters:
             Name  Flags
      node         
      tty          
      indentDepth  

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=11, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 534
            sipush 10000
            istore 1 /* treeSize */
        start local 1 // int treeSize
         1: .line 535
            iload 1 /* treeSize */
            istore 2 /* maxVal */
        start local 2 // int maxVal
         2: .line 536
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Building tree..."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         3: .line 537
            new sun.jvm.hotspot.utilities.RBTree
            dup
            new sun.jvm.hotspot.utilities.RBTree$1
            dup
            invokespecial sun.jvm.hotspot.utilities.RBTree$1.<init>:()V
            invokespecial sun.jvm.hotspot.utilities.RBTree.<init>:(Ljava/util/Comparator;)V
            astore 3 /* tree */
        start local 3 // sun.jvm.hotspot.utilities.RBTree tree
         4: .line 549
            new java.util.Random
            dup
            invokestatic java.lang.System.currentTimeMillis:()J
            invokespecial java.util.Random.<init>:(J)V
            astore 4 /* rand */
        start local 4 // java.util.Random rand
         5: .line 550
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 19
         7: .line 551
      StackMap locals: java.lang.String[] int int sun.jvm.hotspot.utilities.RBTree java.util.Random int
      StackMap stack:
            aload 4 /* rand */
            iload 2 /* maxVal */
            invokevirtual java.util.Random.nextInt:(I)I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 6 /* val */
        start local 6 // java.lang.Integer val
         8: .line 553
            aload 3 /* tree */
            new sun.jvm.hotspot.utilities.RBNode
            dup
            aload 6 /* val */
            invokespecial sun.jvm.hotspot.utilities.RBNode.<init>:(Ljava/lang/Object;)V
            invokevirtual sun.jvm.hotspot.utilities.RBTree.insertNode:(Lsun/jvm/hotspot/utilities/RBNode;)V
         9: .line 554
            iload 5 /* i */
            ifle 18
            iload 5 /* i */
            bipush 100
            irem
            ifne 18
        10: .line 555
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            iload 5 /* i */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        11: .line 556
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.flush:()V
        12: .line 558
            goto 18
        13: .line 559
      StackMap locals: java.lang.String[] int int sun.jvm.hotspot.utilities.RBTree java.util.Random int java.lang.Integer
      StackMap stack: java.lang.Exception
            astore 7 /* e */
        start local 7 // java.lang.Exception e
        14: .line 560
            aload 7 /* e */
            invokevirtual java.lang.Exception.printStackTrace:()V
        15: .line 561
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "While inserting value "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* val */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        16: .line 562
            aload 3 /* tree */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printOn:(Ljava/io/PrintStream;)V
        17: .line 563
            iconst_1
            invokestatic java.lang.System.exit:(I)V
        end local 7 // java.lang.Exception e
        end local 6 // java.lang.Integer val
        18: .line 550
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 5 /* i */
            iload 1 /* treeSize */
            if_icmplt 7
        end local 5 // int i
        20: .line 567
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
        21: .line 568
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Churning tree..."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        22: .line 569
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        23: goto 49
        24: .line 571
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Iteration "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        25: .line 572
            aload 3 /* tree */
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual sun.jvm.hotspot.utilities.RBTree.printOn:(Ljava/io/PrintStream;)V
        26: .line 576
            aconst_null
            astore 6 /* xParent */
        start local 6 // sun.jvm.hotspot.utilities.RBNode xParent
        27: .line 577
            aload 3 /* tree */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.getRoot:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 7 /* x */
        start local 7 // sun.jvm.hotspot.utilities.RBNode x
        28: .line 578
            iconst_0
            istore 8 /* depth */
        start local 8 // int depth
        29: .line 579
            goto 36
        30: .line 581
      StackMap locals: sun.jvm.hotspot.utilities.RBNode sun.jvm.hotspot.utilities.RBNode int
      StackMap stack:
            aload 7 /* x */
            astore 6 /* xParent */
        31: .line 582
            aload 4 /* rand */
            invokevirtual java.util.Random.nextBoolean:()Z
            ifeq 34
        32: .line 583
            aload 7 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getLeft:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 7 /* x */
        33: .line 584
            goto 35
        34: .line 585
      StackMap locals:
      StackMap stack:
            aload 7 /* x */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getRight:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 7 /* x */
        35: .line 587
      StackMap locals:
      StackMap stack:
            iinc 8 /* depth */ 1
        36: .line 579
      StackMap locals:
      StackMap stack:
            aload 7 /* x */
            ifnonnull 30
        37: .line 590
            aload 4 /* rand */
            iload 8 /* depth */
            invokevirtual java.util.Random.nextInt:(I)I
            istore 9 /* height */
        start local 9 // int height
        38: .line 592
            iload 9 /* height */
            iload 8 /* depth */
            if_icmplt 42
        39: .line 593
            new java.lang.RuntimeException
            dup
            ldc "bug in java.util.Random"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        40: .line 598
      StackMap locals: int
      StackMap stack:
            aload 6 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBNode.getParent:()Lsun/jvm/hotspot/utilities/RBNode;
            astore 6 /* xParent */
        41: .line 599
            iinc 9 /* height */ -1
        42: .line 597
      StackMap locals:
      StackMap stack:
            iload 9 /* height */
            ifgt 40
        43: .line 603
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "(Removing value "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* tree */
            aload 6 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.getNodeValue:(Lsun/jvm/hotspot/utilities/RBNode;)Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        44: .line 605
            aload 3 /* tree */
            aload 6 /* xParent */
            invokevirtual sun.jvm.hotspot.utilities.RBTree.deleteNode:(Lsun/jvm/hotspot/utilities/RBNode;)V
        45: .line 608
            aload 4 /* rand */
            iload 2 /* maxVal */
            invokevirtual java.util.Random.nextInt:(I)I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 10 /* newVal */
        start local 10 // java.lang.Integer newVal
        46: .line 610
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "(Inserting value "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* newVal */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        47: .line 612
            aload 3 /* tree */
            new sun.jvm.hotspot.utilities.RBNode
            dup
            aload 10 /* newVal */
            invokespecial sun.jvm.hotspot.utilities.RBNode.<init>:(Ljava/lang/Object;)V
            invokevirtual sun.jvm.hotspot.utilities.RBTree.insertNode:(Lsun/jvm/hotspot/utilities/RBNode;)V
        end local 10 // java.lang.Integer newVal
        end local 9 // int height
        end local 8 // int depth
        end local 7 // sun.jvm.hotspot.utilities.RBNode x
        end local 6 // sun.jvm.hotspot.utilities.RBNode xParent
        48: .line 569
            iinc 5 /* i */ 1
      StackMap locals: java.lang.String[] int int sun.jvm.hotspot.utilities.RBTree java.util.Random int
      StackMap stack:
        49: iload 5 /* i */
            iload 1 /* treeSize */
            if_icmplt 24
        end local 5 // int i
        50: .line 614
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "All tests passed."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        51: .line 615
            return
        end local 4 // java.util.Random rand
        end local 3 // sun.jvm.hotspot.utilities.RBTree tree
        end local 2 // int maxVal
        end local 1 // int treeSize
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   52     0      args  [Ljava/lang/String;
            1   52     1  treeSize  I
            2   52     2    maxVal  I
            4   52     3      tree  Lsun/jvm/hotspot/utilities/RBTree;
            5   52     4      rand  Ljava/util/Random;
            6   20     5         i  I
            8   18     6       val  Ljava/lang/Integer;
           14   18     7         e  Ljava/lang/Exception;
           23   50     5         i  I
           27   48     6   xParent  Lsun/jvm/hotspot/utilities/RBNode;
           28   48     7         x  Lsun/jvm/hotspot/utilities/RBNode;
           29   48     8     depth  I
           38   48     9    height  I
           46   48    10    newVal  Ljava/lang/Integer;
      Exception table:
        from    to  target  type
           8    12      13  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      args  
}
SourceFile: "RBTree.java"
NestMembers:
  sun.jvm.hotspot.utilities.RBTree$1
InnerClasses:
  sun.jvm.hotspot.utilities.RBTree$1