public class org.eclipse.jdt.internal.core.nd.db.BTree
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.nd.db.BTree
  super_class: java.lang.Object
{
  private static final int DEFAULT_DEGREE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  private static final int DELMODE_NORMAL;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int DELMODE_DELETE_MINIMUM;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int DELMODE_DELETE_MAXIMUM;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int RECORD_SIZE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  private final org.eclipse.jdt.internal.core.nd.Nd nd;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/Nd;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final org.eclipse.jdt.internal.core.nd.db.Database db;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/db/Database;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final long rootPointer;
    descriptor: J
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int degree;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int maxRecords;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int maxChildren;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int minRecords;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int offsetChildren;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int medianRecord;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  public void <init>(org.eclipse.jdt.internal.core.nd.Nd, long, org.eclipse.jdt.internal.core.nd.db.IBTreeComparator);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/Nd;JLorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.Nd nd
        start local 2 // long rootPointer
        start local 4 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
         0: .line 53
            aload 0 /* this */
            aload 1 /* nd */
            lload 2 /* rootPointer */
            bipush 8
            aload 4 /* cmp */
            invokespecial org.eclipse.jdt.internal.core.nd.db.BTree.<init>:(Lorg/eclipse/jdt/internal/core/nd/Nd;JILorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)V
         1: .line 54
            return
        end local 4 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
        end local 2 // long rootPointer
        end local 1 // org.eclipse.jdt.internal.core.nd.Nd nd
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    2     1           nd  Lorg/eclipse/jdt/internal/core/nd/Nd;
            0    2     2  rootPointer  J
            0    2     4          cmp  Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
    MethodParameters:
             Name  Flags
      nd           
      rootPointer  
      cmp          

  public void <init>(org.eclipse.jdt.internal.core.nd.Nd, long, int, org.eclipse.jdt.internal.core.nd.db.IBTreeComparator);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/Nd;JILorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.Nd nd
        start local 2 // long rootPointer
        start local 4 // int degree
        start local 5 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
         0: .line 62
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            aload 1 /* nd */
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.nd:Lorg/eclipse/jdt/internal/core/nd/Nd;
         2: .line 64
            iload 4 /* degree */
            iconst_2
            if_icmpge 4
         3: .line 65
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Illegal degree "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* degree */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " in tree"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 67
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree org.eclipse.jdt.internal.core.nd.Nd long int org.eclipse.jdt.internal.core.nd.db.IBTreeComparator
      StackMap stack:
            aload 0 /* this */
            aload 1 /* nd */
            invokevirtual org.eclipse.jdt.internal.core.nd.Nd.getDB:()Lorg/eclipse/jdt/internal/core/nd/db/Database;
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
         5: .line 68
            aload 0 /* this */
            lload 2 /* rootPointer */
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.rootPointer:J
         6: .line 69
            aload 0 /* this */
            aload 5 /* cmp */
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.cmp:Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
         7: .line 71
            aload 0 /* this */
            iload 4 /* degree */
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.degree:I
         8: .line 72
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.degree:I
            iconst_1
            isub
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.minRecords:I
         9: .line 73
            aload 0 /* this */
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.degree:I
            imul
            iconst_1
            isub
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
        10: .line 74
            aload 0 /* this */
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.degree:I
            imul
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.maxChildren:I
        11: .line 75
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            iconst_4
            imul
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.offsetChildren:I
        12: .line 76
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.degree:I
            iconst_1
            isub
            putfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
        13: .line 77
            return
        end local 5 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
        end local 4 // int degree
        end local 2 // long rootPointer
        end local 1 // org.eclipse.jdt.internal.core.nd.Nd nd
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   14     1           nd  Lorg/eclipse/jdt/internal/core/nd/Nd;
            0   14     2  rootPointer  J
            0   14     4       degree  I
            0   14     5          cmp  Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
    MethodParameters:
             Name  Flags
      nd           
      rootPointer  
      degree       
      cmp          

  public static org.eclipse.jdt.internal.core.nd.ITypeFactory<org.eclipse.jdt.internal.core.nd.db.BTree> getFactory(org.eclipse.jdt.internal.core.nd.db.IBTreeComparator);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)Lorg/eclipse/jdt/internal/core/nd/ITypeFactory;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
         0: .line 80
            bipush 8
            aload 0 /* cmp */
            invokestatic org.eclipse.jdt.internal.core.nd.db.BTree.getFactory:(ILorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)Lorg/eclipse/jdt/internal/core/nd/ITypeFactory;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   cmp  Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
    Signature: (Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)Lorg/eclipse/jdt/internal/core/nd/ITypeFactory<Lorg/eclipse/jdt/internal/core/nd/db/BTree;>;
    MethodParameters:
      Name  Flags
      cmp   final

  public static org.eclipse.jdt.internal.core.nd.ITypeFactory<org.eclipse.jdt.internal.core.nd.db.BTree> getFactory(int, org.eclipse.jdt.internal.core.nd.db.IBTreeComparator);
    descriptor: (ILorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)Lorg/eclipse/jdt/internal/core/nd/ITypeFactory;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // int degree
        start local 1 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
         0: .line 84
            new org.eclipse.jdt.internal.core.nd.db.BTree$1
            dup
            iload 0 /* degree */
            aload 1 /* cmp */
            invokespecial org.eclipse.jdt.internal.core.nd.db.BTree$1.<init>:(ILorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)V
            areturn
        end local 1 // org.eclipse.jdt.internal.core.nd.db.IBTreeComparator cmp
        end local 0 // int degree
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  degree  I
            0    1     1     cmp  Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
    Signature: (ILorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;)Lorg/eclipse/jdt/internal/core/nd/ITypeFactory<Lorg/eclipse/jdt/internal/core/nd/db/BTree;>;
    MethodParameters:
        Name  Flags
      degree  final
      cmp     final

  protected long getRoot();
    descriptor: ()J
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
         0: .line 113
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.rootPointer:J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getRecPtr:(J)J
            lreturn
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException

  protected final void putRecord(org.eclipse.jdt.internal.core.nd.db.Chunk, long, int, long);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        start local 2 // long node
        start local 4 // int index
        start local 5 // long record
         0: .line 117
            aload 1 /* chunk */
            lload 2 /* node */
            iload 4 /* index */
            iconst_4
            imul
            i2l
            ladd
            lload 5 /* record */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Chunk.putRecPtr:(JJ)V
         1: .line 118
            return
        end local 5 // long record
        end local 4 // int index
        end local 2 // long node
        end local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    2     1   chunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            0    2     2    node  J
            0    2     4   index  I
            0    2     5  record  J
    MethodParameters:
        Name  Flags
      chunk   
      node    
      index   
      record  

  protected final long getRecord(org.eclipse.jdt.internal.core.nd.db.Chunk, long, int);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        start local 2 // long node
        start local 4 // int index
         0: .line 121
            aload 1 /* chunk */
            lload 2 /* node */
            iload 4 /* index */
            iconst_4
            imul
            i2l
            ladd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Chunk.getRecPtr:(J)J
            lreturn
        end local 4 // int index
        end local 2 // long node
        end local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    1     1  chunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            0    1     2   node  J
            0    1     4  index  I
    MethodParameters:
       Name  Flags
      chunk  
      node   
      index  

  protected final void putChild(org.eclipse.jdt.internal.core.nd.db.Chunk, long, int, long);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        start local 2 // long node
        start local 4 // int index
        start local 5 // long child
         0: .line 125
            aload 1 /* chunk */
            lload 2 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.offsetChildren:I
            i2l
            ladd
            iload 4 /* index */
            iconst_4
            imul
            i2l
            ladd
            lload 5 /* child */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Chunk.putRecPtr:(JJ)V
         1: .line 126
            return
        end local 5 // long child
        end local 4 // int index
        end local 2 // long node
        end local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    2     1  chunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            0    2     2   node  J
            0    2     4  index  I
            0    2     5  child  J
    MethodParameters:
       Name  Flags
      chunk  
      node   
      index  
      child  

  protected final long getChild(org.eclipse.jdt.internal.core.nd.db.Chunk, long, int);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        start local 2 // long node
        start local 4 // int index
         0: .line 129
            aload 1 /* chunk */
            lload 2 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.offsetChildren:I
            i2l
            ladd
            iload 4 /* index */
            iconst_4
            imul
            i2l
            ladd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Chunk.getRecPtr:(J)J
            lreturn
        end local 4 // int index
        end local 2 // long node
        end local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    1     1  chunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            0    1     2   node  J
            0    1     4  index  I
    MethodParameters:
       Name  Flags
      chunk  
      node   
      index  

  public void destruct();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
         0: .line 133
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRoot:()J
            lstore 1 /* root */
        start local 1 // long root
         1: .line 135
            lload 1 /* root */
            lconst_0
            lcmp
            ifne 3
         2: .line 136
            return
         3: .line 139
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            lload 1 /* root */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deallocateChildren:(J)V
         4: .line 140
            return
        end local 1 // long root
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            1    5     1  root  J

  private void deallocateChildren(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // long record
         0: .line 143
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 1 /* record */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getChunk:(J)Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 3 /* chunk */
        start local 3 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
         1: .line 147
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            iconst_1
            iadd
            newarray 11
            astore 4 /* children */
        start local 4 // long[] children
         2: .line 149
            iconst_0
            istore 5 /* idx */
        start local 5 // int idx
         3: goto 6
         4: .line 150
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.Chunk long[] int
      StackMap stack:
            aload 4 /* children */
            iload 5 /* idx */
            aload 0 /* this */
            aload 3 /* chunk */
            lload 1 /* record */
            iload 5 /* idx */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lastore
         5: .line 149
            iinc 5 /* idx */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* idx */
            aload 4 /* children */
            arraylength
            if_icmplt 4
        end local 5 // int idx
         7: .line 153
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 1 /* record */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.free:(JS)V
         8: .line 155
            aconst_null
            astore 3 /* chunk */
         9: .line 157
            aload 4 /* children */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 14
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree long org.eclipse.jdt.internal.core.nd.db.Chunk long[] top top int int long[]
      StackMap stack:
        10: aload 9
            iload 7
            laload
            lstore 5 /* nextChild */
        start local 5 // long nextChild
        11: .line 158
            lload 5 /* nextChild */
            lconst_0
            lcmp
            ifeq 13
        12: .line 159
            aload 0 /* this */
            lload 5 /* nextChild */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deallocateChildren:(J)V
        end local 5 // long nextChild
        13: .line 157
      StackMap locals:
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        14: iload 7
            iload 8
            if_icmplt 10
        15: .line 162
            return
        end local 4 // long[] children
        end local 3 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        end local 1 // long record
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   16     1     record  J
            1   16     3      chunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            2   16     4   children  [J
            3    7     5        idx  I
           11   13     5  nextChild  J
    MethodParameters:
        Name  Flags
      record  

  public long insert(long);
    descriptor: (J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=5, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // long record
         0: .line 172
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRoot:()J
            lstore 3 /* root */
        start local 3 // long root
         1: .line 175
            lload 3 /* root */
            lconst_0
            lcmp
            ifne 4
         2: .line 176
            aload 0 /* this */
            lload 1 /* record */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.firstInsert:(J)V
         3: .line 177
            lload 1 /* record */
            lreturn
         4: .line 180
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            aconst_null
            lconst_0
            iconst_0
            lload 3 /* root */
            lload 1 /* record */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.insert:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJJ)J
            lreturn
        end local 3 // long root
        end local 1 // long record
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    5     1  record  J
            1    5     3    root  J
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
    MethodParameters:
        Name  Flags
      record  

  private long insert(org.eclipse.jdt.internal.core.nd.db.Chunk, long, int, long, long);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJJ)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=18, args_size=6
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk pChunk
        start local 2 // long parent
        start local 4 // int iParent
        start local 5 // long node
        start local 7 // long record
         0: .line 184
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 5 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getChunk:(J)Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 9 /* chunk */
        start local 9 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
         1: .line 187
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lconst_0
            lcmp
            ifeq 40
         2: .line 188
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 10 /* median */
        start local 10 // long median
         3: .line 189
            lload 10 /* median */
            lload 7 /* record */
            lcmp
            ifne 5
         4: .line 191
            lload 10 /* median */
            lreturn
         5: .line 193
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.Chunk long
      StackMap stack:
            aload 9 /* chunk */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Chunk.makeDirty:()V
         6: .line 196
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.allocateNode:()J
            lstore 12 /* newnode */
        start local 12 // long newnode
         7: .line 197
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 12 /* newnode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getChunk:(J)Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 14 /* newchunk */
        start local 14 // org.eclipse.jdt.internal.core.nd.db.Chunk newchunk
         8: .line 198
            iconst_0
            istore 15 /* i */
        start local 15 // int i
         9: goto 15
        10: .line 199
      StackMap locals: long org.eclipse.jdt.internal.core.nd.db.Chunk int
      StackMap stack:
            aload 0 /* this */
            aload 14 /* newchunk */
            lload 12 /* newnode */
            iload 15 /* i */
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            iconst_1
            iadd
            iload 15 /* i */
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        11: .line 200
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            iconst_1
            iadd
            iload 15 /* i */
            iadd
            lconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        12: .line 201
            aload 0 /* this */
            aload 14 /* newchunk */
            lload 12 /* newnode */
            iload 15 /* i */
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            iconst_1
            iadd
            iload 15 /* i */
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        13: .line 202
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            iconst_1
            iadd
            iload 15 /* i */
            iadd
            lconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        14: .line 198
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 15 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            if_icmplt 10
        end local 15 // int i
        16: .line 204
            aload 0 /* this */
            aload 14 /* newchunk */
            lload 12 /* newnode */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        17: .line 205
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            lconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        18: .line 207
            lload 2 /* parent */
            lconst_0
            lcmp
            ifne 24
        19: .line 209
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.allocateNode:()J
            lstore 2 /* parent */
        20: .line 210
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 2 /* parent */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getChunk:(J)Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 1 /* pChunk */
        21: .line 211
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.rootPointer:J
            lload 2 /* parent */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.putRecPtr:(JJ)V
        22: .line 212
            aload 0 /* this */
            aload 1 /* pChunk */
            lload 2 /* parent */
            iconst_0
            lload 5 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        23: .line 213
            goto 33
        24: .line 215
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            iconst_2
            isub
            istore 15 /* i */
        start local 15 // int i
        25: goto 32
        26: .line 216
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pChunk */
            lload 2 /* parent */
            iload 15 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 16 /* r */
        start local 16 // long r
        27: .line 217
            lload 16 /* r */
            lconst_0
            lcmp
            ifeq 31
        28: .line 220
            aload 1 /* pChunk */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Chunk.getWritableChunk:()Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 1 /* pChunk */
        29: .line 221
            aload 0 /* this */
            aload 1 /* pChunk */
            lload 2 /* parent */
            iload 15 /* i */
            iconst_1
            iadd
            lload 16 /* r */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        30: .line 222
            aload 0 /* this */
            aload 1 /* pChunk */
            lload 2 /* parent */
            iload 15 /* i */
            iconst_2
            iadd
            aload 0 /* this */
            aload 1 /* pChunk */
            lload 2 /* parent */
            iload 15 /* i */
            iconst_1
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        end local 16 // long r
        31: .line 215
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ -1
      StackMap locals:
      StackMap stack:
        32: iload 15 /* i */
            iload 4 /* iParent */
            if_icmpge 26
        end local 15 // int i
        33: .line 226
      StackMap locals:
      StackMap stack:
            aload 1 /* pChunk */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Chunk.getWritableChunk:()Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 1 /* pChunk */
        34: .line 227
            aload 0 /* this */
            aload 1 /* pChunk */
            lload 2 /* parent */
            iload 4 /* iParent */
            lload 10 /* median */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        35: .line 228
            aload 0 /* this */
            aload 1 /* pChunk */
            lload 2 /* parent */
            iload 4 /* iParent */
            iconst_1
            iadd
            lload 12 /* newnode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        36: .line 230
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.medianRecord:I
            lconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        37: .line 233
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.cmp:Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.nd:Lorg/eclipse/jdt/internal/core/nd/Nd;
            lload 7 /* record */
            lload 10 /* median */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.IBTreeComparator.compare:(Lorg/eclipse/jdt/internal/core/nd/Nd;JJ)I
            ifle 40
        38: .line 234
            lload 12 /* newnode */
            lstore 5 /* node */
        39: .line 235
            aload 14 /* newchunk */
            astore 9 /* chunk */
        end local 14 // org.eclipse.jdt.internal.core.nd.db.Chunk newchunk
        end local 12 // long newnode
        end local 10 // long median
        40: .line 241
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 10 /* lower */
        start local 10 // int lower
        41: .line 242
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            iconst_1
            isub
            istore 11 /* upper */
        start local 11 // int upper
        42: .line 243
            goto 44
        43: .line 244
      StackMap locals: int int
      StackMap stack:
            iinc 11 /* upper */ -1
        44: .line 243
      StackMap locals:
      StackMap stack:
            iload 10 /* lower */
            iload 11 /* upper */
            if_icmpge 59
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            iload 11 /* upper */
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lconst_0
            lcmp
            ifeq 43
        45: .line 247
            goto 59
        46: .line 248
      StackMap locals:
      StackMap stack:
            iload 10 /* lower */
            iload 11 /* upper */
            iadd
            iconst_2
            idiv
            istore 12 /* middle */
        start local 12 // int middle
        47: .line 249
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            iload 12 /* middle */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 13 /* checkRec */
        start local 13 // long checkRec
        48: .line 250
            lload 13 /* checkRec */
            lconst_0
            lcmp
            ifne 51
        49: .line 251
            iload 12 /* middle */
            istore 11 /* upper */
        50: .line 252
            goto 59
        51: .line 253
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.cmp:Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.nd:Lorg/eclipse/jdt/internal/core/nd/Nd;
            lload 13 /* checkRec */
            lload 7 /* record */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.IBTreeComparator.compare:(Lorg/eclipse/jdt/internal/core/nd/Nd;JJ)I
            istore 15 /* compare */
        start local 15 // int compare
        52: .line 254
            iload 15 /* compare */
            ifle 55
        53: .line 255
            iload 12 /* middle */
            istore 11 /* upper */
        54: .line 256
            goto 59
      StackMap locals: int
      StackMap stack:
        55: iload 15 /* compare */
            ifge 58
        56: .line 257
            iload 12 /* middle */
            iconst_1
            iadd
            istore 10 /* lower */
        57: .line 258
            goto 59
        58: .line 260
      StackMap locals:
      StackMap stack:
            lload 13 /* checkRec */
            lreturn
        end local 15 // int compare
        end local 13 // long checkRec
        end local 12 // int middle
        59: .line 247
      StackMap locals:
      StackMap stack:
            iload 10 /* lower */
            iload 11 /* upper */
            if_icmplt 46
        60: .line 266
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 5 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getChunk:(J)Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 9 /* chunk */
        61: .line 267
            iload 10 /* lower */
            istore 12 /* i */
        start local 12 // int i
        62: .line 268
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            iload 12 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 13 /* child */
        start local 13 // long child
        63: .line 269
            lload 13 /* child */
            lconst_0
            lcmp
            ifeq 65
        64: .line 271
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            iload 12 /* i */
            lload 13 /* child */
            lload 7 /* record */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.insert:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJJ)J
            lreturn
        65: .line 275
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            iconst_2
            isub
            istore 15 /* j */
        start local 15 // int j
        66: goto 71
        67: .line 276
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            iload 15 /* j */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 16 /* r */
        start local 16 // long r
        68: .line 277
            lload 16 /* r */
            lconst_0
            lcmp
            ifeq 70
        69: .line 278
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            iload 15 /* j */
            iconst_1
            iadd
            lload 16 /* r */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        end local 16 // long r
        70: .line 275
      StackMap locals:
      StackMap stack:
            iinc 15 /* j */ -1
      StackMap locals:
      StackMap stack:
        71: iload 15 /* j */
            iload 12 /* i */
            if_icmpge 67
        end local 15 // int j
        72: .line 280
            aload 0 /* this */
            aload 9 /* chunk */
            lload 5 /* node */
            iload 12 /* i */
            lload 7 /* record */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        73: .line 281
            lload 7 /* record */
            lreturn
        end local 13 // long child
        end local 12 // int i
        end local 11 // int upper
        end local 10 // int lower
        end local 9 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        end local 7 // long record
        end local 5 // long node
        end local 4 // int iParent
        end local 2 // long parent
        end local 1 // org.eclipse.jdt.internal.core.nd.db.Chunk pChunk
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   74     0      this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   74     1    pChunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            0   74     2    parent  J
            0   74     4   iParent  I
            0   74     5      node  J
            0   74     7    record  J
            1   74     9     chunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            3   40    10    median  J
            7   40    12   newnode  J
            8   40    14  newchunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            9   16    15         i  I
           25   33    15         i  I
           27   31    16         r  J
           41   74    10     lower  I
           42   74    11     upper  I
           47   59    12    middle  I
           48   59    13  checkRec  J
           52   59    15   compare  I
           62   74    12         i  I
           63   74    13     child  J
           66   72    15         j  I
           68   70    16         r  J
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
    MethodParameters:
         Name  Flags
      pChunk   
      parent   
      iParent  
      node     
      record   

  private void firstInsert(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // long record
         0: .line 287
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.allocateNode:()J
            lstore 3 /* root */
        start local 3 // long root
         1: .line 288
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.rootPointer:J
            lload 3 /* root */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.putRecPtr:(JJ)V
         2: .line 290
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 3 /* root */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getChunk:(J)Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            lload 3 /* root */
            iconst_0
            lload 1 /* record */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         3: .line 291
            return
        end local 3 // long root
        end local 1 // long record
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    4     1  record  J
            1    4     3    root  J
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
    MethodParameters:
        Name  Flags
      record  

  private long allocateNode();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
         0: .line 294
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            imul
            iconst_1
            iadd
            iconst_4
            imul
            i2l
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.malloc:(JS)J
            lreturn
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException

  public void delete(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // long record
         0: .line 313
            aload 0 /* this */
            lload 1 /* record */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRoot:()J
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            pop2
         1: .line 314
            goto 3
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException
         2: pop
         3: .line 317
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long record
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    4     1  record  J
      Exception table:
        from    to  target  type
           0     1       2  Class org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
    MethodParameters:
        Name  Flags
      record  

  private long deleteImp(long, long, int);
    descriptor: (JJI)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=16, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // long key
        start local 3 // long nodeRecord
        start local 5 // int mode
         0: .line 375
            new org.eclipse.jdt.internal.core.nd.db.BTree$BTNode
            dup
            aload 0 /* this */
            lload 3 /* nodeRecord */
            invokespecial org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.<init>:(Lorg/eclipse/jdt/internal/core/nd/db/BTree;J)V
            astore 6 /* node */
        start local 6 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
         1: .line 378
            iconst_m1
            istore 7 /* keyIndexInNode */
        start local 7 // int keyIndexInNode
         2: .line 379
            iload 5 /* mode */
            ifne 10
         3: .line 380
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         4: goto 9
         5: .line 381
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree$BTNode int int
      StackMap stack:
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 8 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lload 1 /* key */
            lcmp
            ifne 8
         6: .line 382
            iload 8 /* i */
            istore 7 /* keyIndexInNode */
         7: .line 383
            goto 10
         8: .line 380
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 8 /* i */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            if_icmplt 5
        end local 8 // int i
        10: .line 386
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lconst_0
            lcmp
            ifne 23
        11: .line 388
            iload 7 /* keyIndexInNode */
            iconst_m1
            if_icmpeq 14
        12: .line 389
            aload 0 /* this */
            aload 6 /* node */
            iload 7 /* keyIndexInNode */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.nodeContentDelete:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
        13: .line 390
            lload 1 /* key */
            lreturn
        14: .line 392
      StackMap locals:
      StackMap stack:
            iload 5 /* mode */
            iconst_1
            if_icmpne 18
        15: .line 393
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 8 /* subst */
        start local 8 // long subst
        16: .line 394
            aload 0 /* this */
            aload 6 /* node */
            iconst_0
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.nodeContentDelete:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
        17: .line 395
            lload 8 /* subst */
            lreturn
        end local 8 // long subst
        18: .line 396
      StackMap locals:
      StackMap stack:
            iload 5 /* mode */
            iconst_2
            if_icmpne 22
        19: .line 397
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 8 /* subst */
        start local 8 // long subst
        20: .line 398
            aload 0 /* this */
            aload 6 /* node */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            isub
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.nodeContentDelete:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
        21: .line 399
            lload 8 /* subst */
            lreturn
        end local 8 // long subst
        22: .line 401
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException
            dup
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Deletion on absent key "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            lload 1 /* key */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc ", mode = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 5 /* mode */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException.<init>:(Lorg/eclipse/jdt/internal/core/nd/db/BTree;Ljava/lang/String;)V
            athrow
        23: .line 404
      StackMap locals:
      StackMap stack:
            iload 7 /* keyIndexInNode */
            iconst_m1
            if_icmpeq 43
        24: .line 407
            aload 6 /* node */
            iload 7 /* keyIndexInNode */
            iconst_1
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.getChild:(I)Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            astore 8 /* succ */
        start local 8 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode succ
        25: .line 408
            aload 8 /* succ */
            ifnull 30
            aload 8 /* succ */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.minRecords:I
            if_icmple 30
        26: .line 409
            aload 6 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        27: .line 411
            aload 0 /* this */
            ldc -1
            aload 8 /* succ */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lstore 9 /* subst */
        start local 9 // long subst
        28: .line 412
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 7 /* keyIndexInNode */
            lload 9 /* subst */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        29: .line 413
            lload 1 /* key */
            lreturn
        end local 9 // long subst
        30: .line 416
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree$BTNode
      StackMap stack:
            aload 6 /* node */
            iload 7 /* keyIndexInNode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.getChild:(I)Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            astore 9 /* pred */
        start local 9 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode pred
        31: .line 417
            aload 9 /* pred */
            ifnull 36
            aload 9 /* pred */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.minRecords:I
            if_icmple 36
        32: .line 418
            aload 6 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        33: .line 420
            aload 0 /* this */
            ldc -1
            aload 9 /* pred */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_2
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lstore 10 /* subst */
        start local 10 // long subst
        34: .line 421
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 7 /* keyIndexInNode */
            lload 10 /* subst */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        35: .line 422
            lload 1 /* key */
            lreturn
        end local 10 // long subst
        36: .line 427
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree$BTNode
      StackMap stack:
            aload 9 /* pred */
            ifnull 42
        37: .line 428
            aload 8 /* succ */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        38: .line 429
            aload 6 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        39: .line 430
            aload 9 /* pred */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        40: .line 431
            aload 0 /* this */
            aload 8 /* succ */
            aload 6 /* node */
            iload 7 /* keyIndexInNode */
            aload 9 /* pred */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.mergeNodes:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;ILorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;)V
        41: .line 432
            aload 0 /* this */
            lload 1 /* key */
            aload 9 /* pred */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 5 /* mode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lreturn
        42: .line 434
      StackMap locals:
      StackMap stack:
            lload 1 /* key */
            lreturn
        end local 9 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode pred
        end local 8 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode succ
        43: .line 440
      StackMap locals:
      StackMap stack:
            iload 5 /* mode */
            tableswitch { // 0 - 2
                    0: 44
                    1: 53
                    2: 55
              default: 57
          }
        44: .line 442
      StackMap locals:
      StackMap stack:
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            istore 8 /* subtreeIndex */
        start local 8 // int subtreeIndex
        45: .line 443
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        46: goto 51
        47: .line 444
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.cmp:Lorg/eclipse/jdt/internal/core/nd/db/IBTreeComparator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.nd:Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 9 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lload 1 /* key */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.IBTreeComparator.compare:(Lorg/eclipse/jdt/internal/core/nd/Nd;JJ)I
            ifle 50
        48: .line 445
            iload 9 /* i */
            istore 8 /* subtreeIndex */
        49: .line 446
            goto 58
        50: .line 443
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        51: iload 9 /* i */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            if_icmplt 47
        end local 9 // int i
        52: .line 448
            goto 58
        end local 8 // int subtreeIndex
        53: .line 449
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* subtreeIndex */
        start local 8 // int subtreeIndex
        54: goto 58
        end local 8 // int subtreeIndex
        55: .line 450
      StackMap locals:
      StackMap stack:
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            istore 8 /* subtreeIndex */
        start local 8 // int subtreeIndex
        56: goto 58
        end local 8 // int subtreeIndex
        57: .line 451
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.nd.db.IndexException
            dup
            new org.eclipse.core.runtime.Status
            dup
            iconst_4
            ldc "org.eclipse.jdt.core"
            iconst_0
            new java.lang.StringBuilder
            dup
            ldc "Unknown delete mode "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* mode */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aconst_null
            invokespecial org.eclipse.core.runtime.Status.<init>:(ILjava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V
            invokespecial org.eclipse.jdt.internal.core.nd.db.IndexException.<init>:(Lorg/eclipse/core/runtime/IStatus;)V
            athrow
        start local 8 // int subtreeIndex
        58: .line 454
      StackMap locals: int
      StackMap stack:
            aload 6 /* node */
            iload 8 /* subtreeIndex */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.getChild:(I)Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            astore 9 /* child */
        start local 9 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode child
        59: .line 455
            aload 9 /* child */
            ifnonnull 63
        60: .line 456
            new org.eclipse.jdt.internal.core.nd.db.IndexException
            dup
            new org.eclipse.core.runtime.Status
            dup
            iconst_4
            ldc "org.eclipse.jdt.core"
            iconst_0
        61: .line 457
            ldc "BTree integrity error (null child found)"
            aconst_null
            invokespecial org.eclipse.core.runtime.Status.<init>:(ILjava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V
        62: .line 456
            invokespecial org.eclipse.jdt.internal.core.nd.db.IndexException.<init>:(Lorg/eclipse/core/runtime/IStatus;)V
            athrow
        63: .line 460
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree$BTNode
      StackMap stack:
            aload 9 /* child */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.minRecords:I
            if_icmple 65
        64: .line 461
            aload 0 /* this */
            lload 1 /* key */
            aload 9 /* child */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 5 /* mode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lreturn
        65: .line 463
      StackMap locals:
      StackMap stack:
            aload 9 /* child */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        66: .line 464
            aload 6 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        67: .line 465
            aload 6 /* node */
            iload 8 /* subtreeIndex */
            iconst_1
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.getChild:(I)Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            astore 10 /* sibR */
        start local 10 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode sibR
        68: .line 466
            aload 10 /* sibR */
            ifnull 76
            aload 10 /* sibR */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.minRecords:I
            if_icmple 76
        69: .line 467
            aload 10 /* sibR */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        70: .line 469
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 8 /* subtreeIndex */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 11 /* rightKey */
        start local 11 // long rightKey
        71: .line 470
            aload 0 /* this */
            aload 10 /* sibR */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 10 /* sibR */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 13 /* leftmostRightSiblingKey */
        start local 13 // long leftmostRightSiblingKey
        72: .line 471
            aload 0 /* this */
            aload 9 /* child */
            lload 11 /* rightKey */
            aload 0 /* this */
            aload 10 /* sibR */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 10 /* sibR */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.append:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;JJ)V
        73: .line 472
            aload 0 /* this */
            aload 10 /* sibR */
            iconst_0
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.nodeContentDelete:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
        74: .line 473
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 8 /* subtreeIndex */
            lload 13 /* leftmostRightSiblingKey */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        75: .line 474
            aload 0 /* this */
            lload 1 /* key */
            aload 9 /* child */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 5 /* mode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lreturn
        end local 13 // long leftmostRightSiblingKey
        end local 11 // long rightKey
        76: .line 477
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree$BTNode
      StackMap stack:
            aload 6 /* node */
            iload 8 /* subtreeIndex */
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.getChild:(I)Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            astore 11 /* sibL */
        start local 11 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode sibL
        77: .line 478
            aload 11 /* sibL */
            ifnull 86
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.minRecords:I
            if_icmple 86
        78: .line 479
            aload 11 /* sibL */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.makeWritable:()V
        79: .line 481
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 8 /* subtreeIndex */
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 12 /* leftKey */
        start local 12 // long leftKey
        80: .line 482
            aload 0 /* this */
            aload 9 /* child */
            lload 12 /* leftKey */
            aload 0 /* this */
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.prepend:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;JJ)V
        81: .line 483
            aload 0 /* this */
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 14 /* rightmostLeftSiblingKey */
        start local 14 // long rightmostLeftSiblingKey
        82: .line 484
            aload 0 /* this */
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            isub
            lconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        83: .line 485
            aload 0 /* this */
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            lconst_0
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        84: .line 486
            aload 0 /* this */
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 6 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 8 /* subtreeIndex */
            iconst_1
            isub
            lload 14 /* rightmostLeftSiblingKey */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        85: .line 487
            aload 0 /* this */
            lload 1 /* key */
            aload 9 /* child */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 5 /* mode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lreturn
        end local 14 // long rightmostLeftSiblingKey
        end local 12 // long leftKey
        86: .line 492
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree$BTNode
      StackMap stack:
            aload 11 /* sibL */
            ifnull 89
        87: .line 493
            aload 0 /* this */
            aload 9 /* child */
            aload 6 /* node */
            iload 8 /* subtreeIndex */
            iconst_1
            isub
            aload 11 /* sibL */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.mergeNodes:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;ILorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;)V
        88: .line 494
            aload 0 /* this */
            lload 1 /* key */
            aload 11 /* sibL */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 5 /* mode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lreturn
        89: .line 497
      StackMap locals:
      StackMap stack:
            aload 10 /* sibR */
            ifnull 92
        90: .line 498
            aload 0 /* this */
            aload 10 /* sibR */
            aload 6 /* node */
            iload 8 /* subtreeIndex */
            aload 9 /* child */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.mergeNodes:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;ILorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;)V
        91: .line 499
            aload 0 /* this */
            lload 1 /* key */
            aload 9 /* child */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 5 /* mode */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.deleteImp:(JJI)J
            lreturn
        92: .line 502
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException
            dup
            aload 0 /* this */
        93: .line 503
            ldc "Deletion of key not in btree: {0} mode={1}"
        94: .line 504
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            new java.lang.Long
            dup
            lload 1 /* key */
            invokespecial java.lang.Long.<init>:(J)V
            aastore
            dup
            iconst_1
            new java.lang.Integer
            dup
            iload 5 /* mode */
            invokespecial java.lang.Integer.<init>:(I)V
            aastore
        95: .line 503
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        96: .line 502
            invokespecial org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException.<init>:(Lorg/eclipse/jdt/internal/core/nd/db/BTree;Ljava/lang/String;)V
            athrow
        end local 11 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode sibL
        end local 10 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode sibR
        end local 9 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode child
        end local 8 // int subtreeIndex
        end local 7 // int keyIndexInNode
        end local 6 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
        end local 5 // int mode
        end local 3 // long nodeRecord
        end local 1 // long key
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   97     0                     this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   97     1                      key  J
            0   97     3               nodeRecord  J
            0   97     5                     mode  I
            1   97     6                     node  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            2   97     7           keyIndexInNode  I
            4   10     8                        i  I
           16   18     8                    subst  J
           20   22     8                    subst  J
           25   43     8                     succ  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
           28   30     9                    subst  J
           31   43     9                     pred  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
           34   36    10                    subst  J
           45   53     8             subtreeIndex  I
           54   55     8             subtreeIndex  I
           56   57     8             subtreeIndex  I
           58   97     8             subtreeIndex  I
           46   52     9                        i  I
           59   97     9                    child  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
           68   97    10                     sibR  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
           71   76    11                 rightKey  J
           72   76    13  leftmostRightSiblingKey  J
           77   97    11                     sibL  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
           80   86    12                  leftKey  J
           82   86    14  rightmostLeftSiblingKey  J
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException, org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException
    MethodParameters:
            Name  Flags
      key         
      nodeRecord  
      mode        

  public void mergeNodes(org.eclipse.jdt.internal.core.nd.db.BTree$BTNode, org.eclipse.jdt.internal.core.nd.db.BTree$BTNode, int, org.eclipse.jdt.internal.core.nd.db.BTree$BTNode);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;ILorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=11, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode src
        start local 2 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode keyProvider
        start local 3 // int kIndex
        start local 4 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode dst
         0: .line 521
            aload 0 /* this */
            aload 1 /* src */
            iconst_0
            aload 4 /* dst */
            aload 4 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            iadd
            aload 1 /* src */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.nodeContentCopy:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;ILorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
         1: .line 522
            aload 0 /* this */
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 3 /* kIndex */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 5 /* midKey */
        start local 5 // long midKey
         2: .line 523
            aload 0 /* this */
            aload 4 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 4 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 4 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            lload 5 /* midKey */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         3: .line 524
            iload 3 /* kIndex */
            iconst_1
            iadd
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            if_icmpne 4
            lconst_0
            goto 5
      StackMap locals: long
      StackMap stack:
         4: aload 0 /* this */
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 3 /* kIndex */
            iconst_1
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
      StackMap locals:
      StackMap stack: long
         5: lstore 7 /* keySucc */
        start local 7 // long keySucc
         6: .line 525
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            aload 0 /* this */
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 3 /* kIndex */
            iconst_1
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.free:(JS)V
         7: .line 526
            aload 0 /* this */
            aload 2 /* keyProvider */
            iload 3 /* kIndex */
            iconst_1
            iadd
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.nodeContentDelete:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
         8: .line 527
            aload 0 /* this */
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 3 /* kIndex */
            lload 7 /* keySucc */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         9: .line 528
            iload 3 /* kIndex */
            ifne 14
            lload 7 /* keySucc */
            lconst_0
            lcmp
            ifne 14
        10: .line 534
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRoot:()J
            lstore 9 /* rootNode */
        start local 9 // long rootNode
        11: .line 535
            lload 9 /* rootNode */
            aload 2 /* keyProvider */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            lcmp
            ifne 14
        12: .line 536
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.rootPointer:J
            aload 4 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.putRecPtr:(JJ)V
        13: .line 537
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 9 /* rootNode */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.free:(JS)V
        end local 9 // long rootNode
        14: .line 540
      StackMap locals: long
      StackMap stack:
            return
        end local 7 // long keySucc
        end local 5 // long midKey
        end local 4 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode dst
        end local 3 // int kIndex
        end local 2 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode keyProvider
        end local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode src
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   15     1          src  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            0   15     2  keyProvider  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            0   15     3       kIndex  I
            0   15     4          dst  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            2   15     5       midKey  J
            6   15     7      keySucc  J
           11   14     9     rootNode  J
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
    MethodParameters:
             Name  Flags
      src          
      keyProvider  
      kIndex       
      dst          

  private void prepend(org.eclipse.jdt.internal.core.nd.db.BTree$BTNode, long, long);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
        start local 2 // long key
        start local 4 // long child
         0: .line 550
            aload 0 /* this */
            aload 1 /* node */
            iconst_0
            aload 1 /* node */
            iconst_1
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.nodeContentCopy:(Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;ILorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
         1: .line 551
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_0
            lload 2 /* key */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         2: .line 552
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iconst_0
            lload 4 /* child */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         3: .line 553
            return
        end local 4 // long child
        end local 2 // long key
        end local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    4     1   node  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            0    4     2    key  J
            0    4     4  child  J
    MethodParameters:
       Name  Flags
      node   
      key    
      child  

  private void append(org.eclipse.jdt.internal.core.nd.db.BTree$BTNode, long, long);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
        start local 2 // long key
        start local 4 // long child
         0: .line 563
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            lload 2 /* key */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         1: .line 564
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            iadd
            lload 4 /* child */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         2: .line 565
            return
        end local 4 // long child
        end local 2 // long key
        end local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    3     1   node  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            0    3     2    key  J
            0    3     4  child  J
    MethodParameters:
       Name  Flags
      node   
      key    
      child  

  private void nodeContentCopy(org.eclipse.jdt.internal.core.nd.db.BTree$BTNode, int, org.eclipse.jdt.internal.core.nd.db.BTree$BTNode, int, int);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;ILorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=13, args_size=6
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode src
        start local 2 // int srcPos
        start local 3 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode dst
        start local 4 // int dstPos
        start local 5 // int length
         0: .line 580
            iload 5 /* length */
            iconst_1
            isub
            istore 6 /* i */
        start local 6 // int i
         1: goto 11
         2: .line 581
      StackMap locals: int
      StackMap stack:
            iload 2 /* srcPos */
            iload 6 /* i */
            iadd
            istore 7 /* srcIndex */
        start local 7 // int srcIndex
         3: .line 582
            iload 4 /* dstPos */
            iload 6 /* i */
            iadd
            istore 8 /* dstIndex */
        start local 8 // int dstIndex
         4: .line 584
            iload 7 /* srcIndex */
            aload 1 /* src */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            iadd
            if_icmpge 10
         5: .line 585
            aload 0 /* this */
            aload 1 /* src */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* src */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 7 /* srcIndex */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 9 /* srcChild */
        start local 9 // long srcChild
         6: .line 586
            aload 0 /* this */
            aload 3 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 3 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 8 /* dstIndex */
            lload 9 /* srcChild */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
         7: .line 588
            iload 7 /* srcIndex */
            aload 1 /* src */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            if_icmpge 10
         8: .line 589
            aload 0 /* this */
            aload 1 /* src */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* src */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 7 /* srcIndex */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 11 /* srcKey */
        start local 11 // long srcKey
         9: .line 590
            aload 0 /* this */
            aload 3 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 3 /* dst */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 8 /* dstIndex */
            lload 11 /* srcKey */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        end local 11 // long srcKey
        end local 9 // long srcChild
        end local 8 // int dstIndex
        end local 7 // int srcIndex
        10: .line 580
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ -1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            ifge 2
        end local 6 // int i
        12: .line 594
            return
        end local 5 // int length
        end local 4 // int dstPos
        end local 3 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode dst
        end local 2 // int srcPos
        end local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode src
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   13     1       src  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            0   13     2    srcPos  I
            0   13     3       dst  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            0   13     4    dstPos  I
            0   13     5    length  I
            1   12     6         i  I
            3   10     7  srcIndex  I
            4   10     8  dstIndex  I
            6   10     9  srcChild  J
            9   10    11    srcKey  J
    MethodParameters:
        Name  Flags
      src     
      srcPos  
      dst     
      dstPos  
      length  

  private void nodeContentDelete(org.eclipse.jdt.internal.core.nd.db.BTree$BTNode, int, int);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
        start local 2 // int i
        start local 3 // int length
         0: .line 606
            iload 2 /* i */
            istore 4 /* index */
        start local 4 // int index
         1: goto 13
         2: .line 607
      StackMap locals: int
      StackMap stack:
            iload 4 /* index */
            iload 3 /* length */
            iadd
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            if_icmpge 3
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 4 /* index */
            iload 3 /* length */
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            goto 4
      StackMap locals:
      StackMap stack:
         3: lconst_0
      StackMap locals:
      StackMap stack: long
         4: lstore 5 /* newKey */
        start local 5 // long newKey
         5: .line 608
            iload 4 /* index */
            iload 3 /* length */
            iadd
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.keyCount:I
            iconst_1
            iadd
            if_icmpge 6
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 4 /* index */
            iload 3 /* length */
            iadd
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            goto 7
      StackMap locals: long
      StackMap stack:
         6: lconst_0
      StackMap locals:
      StackMap stack: long
         7: lstore 7 /* newChild */
        start local 7 // long newChild
         8: .line 609
            iload 4 /* index */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            if_icmpge 10
         9: .line 610
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 4 /* index */
            lload 5 /* newKey */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        10: .line 612
      StackMap locals: long
      StackMap stack:
            iload 4 /* index */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxChildren:I
            if_icmpge 12
        11: .line 613
            aload 0 /* this */
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.chunk:Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            aload 1 /* node */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree$BTNode.node:J
            iload 4 /* index */
            lload 7 /* newChild */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.putChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JIJ)V
        end local 7 // long newChild
        end local 5 // long newKey
        12: .line 606
      StackMap locals:
      StackMap stack:
            iinc 4 /* index */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* index */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            if_icmple 2
        end local 4 // int index
        14: .line 616
            return
        end local 3 // int length
        end local 2 // int i
        end local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$BTNode node
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   15     1      node  Lorg/eclipse/jdt/internal/core/nd/db/BTree$BTNode;
            0   15     2         i  I
            0   15     3    length  I
            1   14     4     index  I
            5   12     5    newKey  J
            8   12     7  newChild  J
    MethodParameters:
        Name  Flags
      node    
      i       
      length  

  public boolean accept(org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor visitor
         0: .line 625
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.rootPointer:J
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getRecPtr:(J)J
            aload 1 /* visitor */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.accept:(JLorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;)Z
            ireturn
        end local 1 // org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor visitor
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0    1     1  visitor  Lorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
    MethodParameters:
         Name  Flags
      visitor  

  private boolean accept(long, org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor);
    descriptor: (JLorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
        start local 1 // long node
        start local 3 // org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor visitor
         0: .line 633
            lload 1 /* node */
            lconst_0
            lcmp
            ifne 2
         1: .line 634
            iconst_1
            ireturn
         2: .line 636
      StackMap locals:
      StackMap stack:
            aload 3 /* visitor */
            instanceof org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            ifeq 4
         3: .line 637
            aload 3 /* visitor */
            checkcast org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            lload 1 /* node */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2.preNode:(J)V
         4: .line 641
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.db:Lorg/eclipse/jdt/internal/core/nd/db/Database;
            lload 1 /* node */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.Database.getChunk:(J)Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            astore 4 /* chunk */
        start local 4 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
         5: .line 644
            iconst_0
            istore 5 /* lower */
        start local 5 // int lower
         6: .line 645
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            iconst_1
            isub
            istore 6 /* upper */
        start local 6 // int upper
         7: .line 646
            goto 9
         8: .line 647
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.Chunk int int
      StackMap stack:
            iinc 6 /* upper */ -1
         9: .line 646
      StackMap locals:
      StackMap stack:
            iload 5 /* lower */
            iload 6 /* upper */
            if_icmpge 21
            aload 0 /* this */
            aload 4 /* chunk */
            lload 1 /* node */
            iload 6 /* upper */
            iconst_1
            isub
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lconst_0
            lcmp
            ifeq 8
        10: .line 649
            goto 21
        11: .line 650
      StackMap locals:
      StackMap stack:
            iload 5 /* lower */
            iload 6 /* upper */
            iadd
            iconst_2
            idiv
            istore 7 /* middle */
        start local 7 // int middle
        12: .line 651
            aload 0 /* this */
            aload 4 /* chunk */
            lload 1 /* node */
            iload 7 /* middle */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 8 /* checkRec */
        start local 8 // long checkRec
        13: .line 652
            lload 8 /* checkRec */
            lconst_0
            lcmp
            ifne 16
        14: .line 653
            iload 7 /* middle */
            istore 6 /* upper */
        15: .line 654
            goto 21
        16: .line 655
      StackMap locals: int long
      StackMap stack:
            aload 3 /* visitor */
            lload 8 /* checkRec */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor.compare:(J)I
            istore 10 /* compare */
        start local 10 // int compare
        17: .line 656
            iload 10 /* compare */
            iflt 20
        18: .line 657
            iload 7 /* middle */
            istore 6 /* upper */
        19: .line 658
            goto 21
        20: .line 659
      StackMap locals: int
      StackMap stack:
            iload 7 /* middle */
            iconst_1
            iadd
            istore 5 /* lower */
        end local 10 // int compare
        end local 8 // long checkRec
        end local 7 // int middle
        21: .line 649
      StackMap locals:
      StackMap stack:
            iload 5 /* lower */
            iload 6 /* upper */
            if_icmplt 11
        22: .line 665
            iload 5 /* lower */
            istore 7 /* i */
        start local 7 // int i
        23: .line 666
            goto 43
        24: .line 667
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* chunk */
            lload 1 /* node */
            iload 7 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getRecord:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            lstore 8 /* record */
        start local 8 // long record
        25: .line 668
            lload 8 /* record */
            lconst_0
            lcmp
            ifne 27
        26: .line 669
            goto 44
        27: .line 671
      StackMap locals: long
      StackMap stack:
            aload 3 /* visitor */
            lload 8 /* record */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor.compare:(J)I
            istore 10 /* compare */
        start local 10 // int compare
        28: .line 672
            iload 10 /* compare */
            ifle 33
        29: .line 674
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* chunk */
            lload 1 /* node */
            iload 7 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            aload 3 /* visitor */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.accept:(JLorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;)Z
            istore 12
        30: .line 684
            aload 3 /* visitor */
            instanceof org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            ifeq 32
        31: .line 685
            aload 3 /* visitor */
            checkcast org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            lload 1 /* node */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2.postNode:(J)V
        32: .line 674
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree long org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor org.eclipse.jdt.internal.core.nd.db.Chunk int int int long int top int
      StackMap stack:
            iload 12
            ireturn
        33: .line 675
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree long org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor org.eclipse.jdt.internal.core.nd.db.Chunk int int int long int
      StackMap stack:
            iload 10 /* compare */
            ifne 42
        34: .line 676
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* chunk */
            lload 1 /* node */
            iload 7 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            aload 3 /* visitor */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.accept:(JLorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;)Z
            ifne 38
        35: .line 684
            aload 3 /* visitor */
            instanceof org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            ifeq 37
        36: .line 685
            aload 3 /* visitor */
            checkcast org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            lload 1 /* node */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2.postNode:(J)V
        37: .line 677
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        38: .line 678
      StackMap locals:
      StackMap stack:
            aload 3 /* visitor */
            lload 8 /* record */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor.visit:(J)Z
            ifne 42
        39: .line 684
            aload 3 /* visitor */
            instanceof org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            ifeq 41
        40: .line 685
            aload 3 /* visitor */
            checkcast org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            lload 1 /* node */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2.postNode:(J)V
        41: .line 679
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 10 // int compare
        end local 8 // long record
        42: .line 666
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        43: iload 7 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.db.BTree.maxRecords:I
            if_icmplt 24
        44: .line 682
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* chunk */
            lload 1 /* node */
            iload 7 /* i */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.getChild:(Lorg/eclipse/jdt/internal/core/nd/db/Chunk;JI)J
            aload 3 /* visitor */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.accept:(JLorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;)Z
            istore 12
        45: .line 684
            aload 3 /* visitor */
            instanceof org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            ifeq 47
        46: .line 685
            aload 3 /* visitor */
            checkcast org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            lload 1 /* node */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2.postNode:(J)V
        47: .line 682
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree long org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor org.eclipse.jdt.internal.core.nd.db.Chunk int int int top top top top int
      StackMap stack:
            iload 12
            ireturn
        end local 7 // int i
        end local 6 // int upper
        end local 5 // int lower
        end local 4 // org.eclipse.jdt.internal.core.nd.db.Chunk chunk
        48: .line 683
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree long org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor
      StackMap stack: java.lang.Throwable
            astore 11
        49: .line 684
            aload 3 /* visitor */
            instanceof org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            ifeq 51
        50: .line 685
            aload 3 /* visitor */
            checkcast org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2
            lload 1 /* node */
            invokeinterface org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2.postNode:(J)V
        51: .line 687
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree long org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 11
            athrow
        end local 3 // org.eclipse.jdt.internal.core.nd.db.IBTreeVisitor visitor
        end local 1 // long node
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   52     0      this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            0   52     1      node  J
            0   52     3   visitor  Lorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;
            5   48     4     chunk  Lorg/eclipse/jdt/internal/core/nd/db/Chunk;
            6   48     5     lower  I
            7   48     6     upper  I
           12   21     7    middle  I
           13   21     8  checkRec  J
           17   21    10   compare  I
           23   48     7         i  I
           25   42     8    record  J
           28   42    10   compare  I
      Exception table:
        from    to  target  type
           4    30      48  any
          33    35      48  any
          38    39      48  any
          42    45      48  any
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
    MethodParameters:
         Name  Flags
      node     
      visitor  

  public java.lang.String getInvariantsErrorReport();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
         0: .line 706
            new org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker
            dup
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker.<init>:(Lorg/eclipse/jdt/internal/core/nd/db/BTree;)V
            astore 1 /* checker */
        start local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker checker
         1: .line 707
            aload 0 /* this */
            aload 1 /* checker */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree.accept:(Lorg/eclipse/jdt/internal/core/nd/db/IBTreeVisitor;)Z
            pop
         2: .line 708
            aload 1 /* checker */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker.isValid:()Z
            ifeq 3
            ldc ""
            goto 4
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker
      StackMap stack:
         3: aload 1 /* checker */
            invokevirtual org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker.getMsg:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         4: areturn
        end local 1 // org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker checker
        end local 0 // org.eclipse.jdt.internal.core.nd.db.BTree this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/eclipse/jdt/internal/core/nd/db/BTree;
            1    5     1  checker  Lorg/eclipse/jdt/internal/core/nd/db/BTree$InvariantsChecker;
    Exceptions:
      throws org.eclipse.jdt.internal.core.nd.db.IndexException
}
SourceFile: "BTree.java"
NestMembers:
  org.eclipse.jdt.internal.core.nd.db.BTree$1  org.eclipse.jdt.internal.core.nd.db.BTree$BTNode  org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException  org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2  org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker
InnerClasses:
  org.eclipse.jdt.internal.core.nd.db.BTree$1
  private BTNode = org.eclipse.jdt.internal.core.nd.db.BTree$BTNode of org.eclipse.jdt.internal.core.nd.db.BTree
  private BTreeKeyNotFoundException = org.eclipse.jdt.internal.core.nd.db.BTree$BTreeKeyNotFoundException of org.eclipse.jdt.internal.core.nd.db.BTree
  private abstract IBTreeVisitor2 = org.eclipse.jdt.internal.core.nd.db.BTree$IBTreeVisitor2 of org.eclipse.jdt.internal.core.nd.db.BTree
  private InvariantsChecker = org.eclipse.jdt.internal.core.nd.db.BTree$InvariantsChecker of org.eclipse.jdt.internal.core.nd.db.BTree