public abstract class java.util.AbstractList<E> extends java.util.AbstractCollection<E> implements java.util.List<E>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: java.util.AbstractList
  super_class: java.util.AbstractCollection
{
  protected transient int modCount;
    descriptor: I
    flags: (0x0084) ACC_PROTECTED, ACC_TRANSIENT

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.AbstractList this
         0: .line 78
            aload 0 /* this */
            invokespecial java.util.AbstractCollection.<init>:()V
         1: .line 628
            aload 0 /* this */
            iconst_0
            putfield java.util.AbstractList.modCount:I
         2: .line 79
            return
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/AbstractList<TE;>;

  public boolean add();
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // java.lang.Object e
         0: .line 111
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.util.AbstractList.size:()I
            aload 1 /* e */
            invokevirtual java.util.AbstractList.add:(ILjava/lang/Object;)V
         1: .line 112
            iconst_1
            ireturn
        end local 1 // java.lang.Object e
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/AbstractList<TE;>;
            0    2     1     e  TE;
    Signature: (TE;)Z
    MethodParameters:
      Name  Flags
      e     

  public abstract E get();
    descriptor: (I)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (I)TE;
    MethodParameters:
       Name  Flags
      index  

  public E set(int, );
    descriptor: (ILjava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.util.AbstractList this
        start local 1 // int index
        start local 2 // java.lang.Object element
         0: .line 136
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 2 // java.lang.Object element
        end local 1 // int index
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Ljava/util/AbstractList<TE;>;
            0    1     1    index  I
            0    1     2  element  TE;
    Signature: (ITE;)TE;
    MethodParameters:
         Name  Flags
      index    
      element  

  public void add(int, );
    descriptor: (ILjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.util.AbstractList this
        start local 1 // int index
        start local 2 // java.lang.Object element
         0: .line 153
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 2 // java.lang.Object element
        end local 1 // int index
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Ljava/util/AbstractList<TE;>;
            0    1     1    index  I
            0    1     2  element  TE;
    Signature: (ITE;)V
    MethodParameters:
         Name  Flags
      index    
      element  

  public E remove();
    descriptor: (I)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // int index
         0: .line 167
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 1 // int index
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljava/util/AbstractList<TE;>;
            0    1     1  index  I
    Signature: (I)TE;
    MethodParameters:
       Name  Flags
      index  

  public int indexOf(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // java.lang.Object o
         0: .line 185
            aload 0 /* this */
            invokevirtual java.util.AbstractList.listIterator:()Ljava/util/ListIterator;
            astore 2 /* it */
        start local 2 // java.util.ListIterator it
         1: .line 186
            aload 1 /* o */
            ifnonnull 9
         2: .line 187
            goto 5
         3: .line 188
      StackMap locals: java.util.ListIterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            ifnonnull 5
         4: .line 189
            aload 2 /* it */
            invokeinterface java.util.ListIterator.previousIndex:()I
            ireturn
         5: .line 187
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifne 3
         6: .line 190
            goto 10
         7: .line 192
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            aload 2 /* it */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 9
         8: .line 193
            aload 2 /* it */
            invokeinterface java.util.ListIterator.previousIndex:()I
            ireturn
         9: .line 191
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifne 7
        10: .line 195
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 2 // java.util.ListIterator it
        end local 1 // java.lang.Object o
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/util/AbstractList<TE;>;
            0   11     1     o  Ljava/lang/Object;
            1   11     2    it  Ljava/util/ListIterator<TE;>;
    MethodParameters:
      Name  Flags
      o     

  public int lastIndexOf(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // java.lang.Object o
         0: .line 211
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.util.AbstractList.size:()I
            invokevirtual java.util.AbstractList.listIterator:(I)Ljava/util/ListIterator;
            astore 2 /* it */
        start local 2 // java.util.ListIterator it
         1: .line 212
            aload 1 /* o */
            ifnonnull 9
         2: .line 213
            goto 5
         3: .line 214
      StackMap locals: java.util.ListIterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            ifnonnull 5
         4: .line 215
            aload 2 /* it */
            invokeinterface java.util.ListIterator.nextIndex:()I
            ireturn
         5: .line 213
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 3
         6: .line 216
            goto 10
         7: .line 218
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            aload 2 /* it */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 9
         8: .line 219
            aload 2 /* it */
            invokeinterface java.util.ListIterator.nextIndex:()I
            ireturn
         9: .line 217
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 7
        10: .line 221
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 2 // java.util.ListIterator it
        end local 1 // java.lang.Object o
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/util/AbstractList<TE;>;
            0   11     1     o  Ljava/lang/Object;
            1   11     2    it  Ljava/util/ListIterator<TE;>;
    MethodParameters:
      Name  Flags
      o     

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.AbstractList this
         0: .line 243
            aload 0 /* this */
            iconst_0
            aload 0 /* this */
            invokevirtual java.util.AbstractList.size:()I
            invokevirtual java.util.AbstractList.removeRange:(II)V
         1: .line 244
            return
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/AbstractList<TE;>;

  public boolean addAll(int, java.util.Collection<? extends E>);
    descriptor: (ILjava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.util.AbstractList this
        start local 1 // int index
        start local 2 // java.util.Collection c
         0: .line 267
            aload 0 /* this */
            iload 1 /* index */
            invokevirtual java.util.AbstractList.rangeCheckForAdd:(I)V
         1: .line 268
            iconst_0
            istore 3 /* modified */
        start local 3 // boolean modified
         2: .line 269
            aload 2 /* c */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: java.util.AbstractList int java.util.Collection int top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 4 /* e */
        start local 4 // java.lang.Object e
         4: .line 270
            aload 0 /* this */
            iload 1 /* index */
            iinc 1 /* index */ 1
            aload 4 /* e */
            invokevirtual java.util.AbstractList.add:(ILjava/lang/Object;)V
         5: .line 271
            iconst_1
            istore 3 /* modified */
        end local 4 // java.lang.Object e
         6: .line 269
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 273
            iload 3 /* modified */
            ireturn
        end local 3 // boolean modified
        end local 2 // java.util.Collection c
        end local 1 // int index
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljava/util/AbstractList<TE;>;
            0    8     1     index  I
            0    8     2         c  Ljava/util/Collection<+TE;>;
            2    8     3  modified  Z
            4    6     4         e  TE;
    Signature: (ILjava/util/Collection<+TE;>;)Z
    MethodParameters:
       Name  Flags
      index  
      c      

  public java.util.Iterator<E> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.AbstractList this
         0: .line 299
            new java.util.AbstractList$Itr
            dup
            aload 0 /* this */
            invokespecial java.util.AbstractList$Itr.<init>:(Ljava/util/AbstractList;)V
            areturn
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/AbstractList<TE;>;
    Signature: ()Ljava/util/Iterator<TE;>;

  public java.util.ListIterator<E> listIterator();
    descriptor: ()Ljava/util/ListIterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.AbstractList this
         0: .line 311
            aload 0 /* this */
            iconst_0
            invokevirtual java.util.AbstractList.listIterator:(I)Ljava/util/ListIterator;
            areturn
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/AbstractList<TE;>;
    Signature: ()Ljava/util/ListIterator<TE;>;

  public java.util.ListIterator<E> listIterator(int);
    descriptor: (I)Ljava/util/ListIterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // int index
         0: .line 338
            aload 0 /* this */
            iload 1 /* index */
            invokevirtual java.util.AbstractList.rangeCheckForAdd:(I)V
         1: .line 340
            new java.util.AbstractList$ListItr
            dup
            aload 0 /* this */
            iload 1 /* index */
            invokespecial java.util.AbstractList$ListItr.<init>:(Ljava/util/AbstractList;I)V
            areturn
        end local 1 // int index
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/AbstractList<TE;>;
            0    2     1  index  I
    Signature: (I)Ljava/util/ListIterator<TE;>;
    MethodParameters:
       Name  Flags
      index  final

  public java.util.List<E> subList(int, int);
    descriptor: (II)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.util.AbstractList this
        start local 1 // int fromIndex
        start local 2 // int toIndex
         0: .line 497
            iload 1 /* fromIndex */
            iload 2 /* toIndex */
            aload 0 /* this */
            invokevirtual java.util.AbstractList.size:()I
            invokestatic java.util.AbstractList.subListRangeCheck:(III)V
         1: .line 498
            aload 0 /* this */
            instanceof java.util.RandomAccess
            ifeq 3
         2: .line 499
            new java.util.AbstractList$RandomAccessSubList
            dup
            aload 0 /* this */
            iload 1 /* fromIndex */
            iload 2 /* toIndex */
            invokespecial java.util.AbstractList$RandomAccessSubList.<init>:(Ljava/util/AbstractList;II)V
            goto 4
         3: .line 500
      StackMap locals:
      StackMap stack:
            new java.util.AbstractList$SubList
            dup
            aload 0 /* this */
            iload 1 /* fromIndex */
            iload 2 /* toIndex */
            invokespecial java.util.AbstractList$SubList.<init>:(Ljava/util/AbstractList;II)V
         4: .line 498
      StackMap locals:
      StackMap stack: java.util.AbstractList$SubList
            areturn
        end local 2 // int toIndex
        end local 1 // int fromIndex
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljava/util/AbstractList<TE;>;
            0    5     1  fromIndex  I
            0    5     2    toIndex  I
    Signature: (II)Ljava/util/List<TE;>;
    MethodParameters:
           Name  Flags
      fromIndex  
      toIndex    

  static void subListRangeCheck(int, int, int);
    descriptor: (III)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // int fromIndex
        start local 1 // int toIndex
        start local 2 // int size
         0: .line 504
            iload 0 /* fromIndex */
            ifge 2
         1: .line 505
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "fromIndex = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* fromIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 506
      StackMap locals:
      StackMap stack:
            iload 1 /* toIndex */
            iload 2 /* size */
            if_icmple 4
         3: .line 507
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "toIndex = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* toIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 508
      StackMap locals:
      StackMap stack:
            iload 0 /* fromIndex */
            iload 1 /* toIndex */
            if_icmple 8
         5: .line 509
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "fromIndex("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* fromIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         6: .line 510
            ldc ") > toIndex("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* toIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 509
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 511
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int size
        end local 1 // int toIndex
        end local 0 // int fromIndex
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0  fromIndex  I
            0    9     1    toIndex  I
            0    9     2       size  I
    MethodParameters:
           Name  Flags
      fromIndex  
      toIndex    
      size       

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // java.lang.Object o
         0: .line 538
            aload 1 /* o */
            aload 0 /* this */
            if_acmpne 2
         1: .line 539
            iconst_1
            ireturn
         2: .line 540
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof java.util.List
            ifne 4
         3: .line 541
            iconst_0
            ireturn
         4: .line 543
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.AbstractList.listIterator:()Ljava/util/ListIterator;
            astore 2 /* e1 */
        start local 2 // java.util.ListIterator e1
         5: .line 544
            aload 1 /* o */
            checkcast java.util.List
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 3 /* e2 */
        start local 3 // java.util.ListIterator e2
         6: .line 545
            goto 12
         7: .line 546
      StackMap locals: java.util.ListIterator java.util.ListIterator
      StackMap stack:
            aload 2 /* e1 */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            astore 4 /* o1 */
        start local 4 // java.lang.Object o1
         8: .line 547
            aload 3 /* e2 */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            astore 5 /* o2 */
        start local 5 // java.lang.Object o2
         9: .line 548
            aload 4 /* o1 */
            ifnonnull 10
            aload 5 /* o2 */
            ifnull 12
            goto 11
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
        10: aload 4 /* o1 */
            aload 5 /* o2 */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 549
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // java.lang.Object o2
        end local 4 // java.lang.Object o1
        12: .line 545
      StackMap locals:
      StackMap stack:
            aload 2 /* e1 */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifeq 13
            aload 3 /* e2 */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifne 7
        13: .line 551
      StackMap locals:
      StackMap stack:
            aload 2 /* e1 */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifne 14
            aload 3 /* e2 */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifeq 15
      StackMap locals:
      StackMap stack:
        14: iconst_0
            goto 16
      StackMap locals:
      StackMap stack:
        15: iconst_1
      StackMap locals:
      StackMap stack: int
        16: ireturn
        end local 3 // java.util.ListIterator e2
        end local 2 // java.util.ListIterator e1
        end local 1 // java.lang.Object o
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Ljava/util/AbstractList<TE;>;
            0   17     1     o  Ljava/lang/Object;
            5   17     2    e1  Ljava/util/ListIterator<TE;>;
            6   17     3    e2  Ljava/util/ListIterator<*>;
            8   12     4    o1  TE;
            9   12     5    o2  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.util.AbstractList this
         0: .line 565
            iconst_1
            istore 1 /* hashCode */
        start local 1 // int hashCode
         1: .line 566
            aload 0 /* this */
            invokevirtual java.util.AbstractList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: java.util.AbstractList int top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 2 /* e */
        start local 2 // java.lang.Object e
         3: .line 567
            bipush 31
            iload 1 /* hashCode */
            imul
            aload 2 /* e */
            ifnonnull 4
            iconst_0
            goto 5
      StackMap locals: java.util.AbstractList int java.lang.Object java.util.Iterator
      StackMap stack: int
         4: aload 2 /* e */
            invokevirtual java.lang.Object.hashCode:()I
      StackMap locals: java.util.AbstractList int java.lang.Object java.util.Iterator
      StackMap stack: int int
         5: iadd
            istore 1 /* hashCode */
        end local 2 // java.lang.Object e
         6: .line 566
      StackMap locals: java.util.AbstractList int top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 568
            iload 1 /* hashCode */
            ireturn
        end local 1 // int hashCode
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljava/util/AbstractList<TE;>;
            1    8     1  hashCode  I
            3    6     2         e  TE;

  protected void removeRange(int, int);
    descriptor: (II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // java.util.AbstractList this
        start local 1 // int fromIndex
        start local 2 // int toIndex
         0: .line 595
            aload 0 /* this */
            iload 1 /* fromIndex */
            invokevirtual java.util.AbstractList.listIterator:(I)Ljava/util/ListIterator;
            astore 3 /* it */
        start local 3 // java.util.ListIterator it
         1: .line 596
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: iload 2 /* toIndex */
            iload 1 /* fromIndex */
            isub
            istore 5 /* n */
        start local 5 // int n
         3: goto 7
         4: .line 597
      StackMap locals: java.util.ListIterator int int
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            pop
         5: .line 598
            aload 3 /* it */
            invokeinterface java.util.ListIterator.remove:()V
         6: .line 596
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 5 /* n */
            if_icmplt 4
        end local 5 // int n
        end local 4 // int i
         8: .line 600
            return
        end local 3 // java.util.ListIterator it
        end local 2 // int toIndex
        end local 1 // int fromIndex
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Ljava/util/AbstractList<TE;>;
            0    9     1  fromIndex  I
            0    9     2    toIndex  I
            1    9     3         it  Ljava/util/ListIterator<TE;>;
            2    8     4          i  I
            3    8     5          n  I
    MethodParameters:
           Name  Flags
      fromIndex  
      toIndex    

  private void rangeCheckForAdd(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // int index
         0: .line 631
            iload 1 /* index */
            iflt 1
            iload 1 /* index */
            aload 0 /* this */
            invokevirtual java.util.AbstractList.size:()I
            if_icmple 2
         1: .line 632
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            aload 0 /* this */
            iload 1 /* index */
            invokevirtual java.util.AbstractList.outOfBoundsMsg:(I)Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 633
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int index
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljava/util/AbstractList<TE;>;
            0    3     1  index  I
    MethodParameters:
       Name  Flags
      index  

  private java.lang.String outOfBoundsMsg(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.AbstractList this
        start local 1 // int index
         0: .line 636
            new java.lang.StringBuilder
            dup
            ldc "Index: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* index */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", Size: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.util.AbstractList.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // int index
        end local 0 // java.util.AbstractList this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljava/util/AbstractList<TE;>;
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      index  
}
Signature: <E:Ljava/lang/Object;>Ljava/util/AbstractCollection<TE;>;Ljava/util/List<TE;>;
SourceFile: "AbstractList.java"
NestMembers:
  java.util.AbstractList$Itr  java.util.AbstractList$ListItr  java.util.AbstractList$RandomAccessSpliterator  java.util.AbstractList$RandomAccessSubList  java.util.AbstractList$SubList  java.util.AbstractList$SubList$1
InnerClasses:
  private Itr = java.util.AbstractList$Itr of java.util.AbstractList
  private ListItr = java.util.AbstractList$ListItr of java.util.AbstractList
  final RandomAccessSpliterator = java.util.AbstractList$RandomAccessSpliterator of java.util.AbstractList
  private RandomAccessSubList = java.util.AbstractList$RandomAccessSubList of java.util.AbstractList
  private SubList = java.util.AbstractList$SubList of java.util.AbstractList