public class org.bson.BsonArray extends org.bson.BsonValue implements java.util.List<org.bson.BsonValue>, java.lang.Cloneable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bson.BsonArray
  super_class: org.bson.BsonValue
{
  private final java.util.List<org.bson.BsonValue> values;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/bson/BsonValue;>;

  private static volatile int[] $SWITCH_TABLE$org$bson$BsonType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>(java.util.List<? extends org.bson.BsonValue>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.util.List values
         0: .line 45
            aload 0 /* this */
            aload 1 /* values */
            iconst_1
            invokespecial org.bson.BsonArray.<init>:(Ljava/util/List;Z)V
         1: .line 46
            return
        end local 1 // java.util.List values
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/bson/BsonArray;
            0    2     1  values  Ljava/util/List<+Lorg/bson/BsonValue;>;
    Signature: (Ljava/util/List<+Lorg/bson/BsonValue;>;)V
    MethodParameters:
        Name  Flags
      values  final

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 52
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            iconst_0
            invokespecial org.bson.BsonArray.<init>:(Ljava/util/List;Z)V
         1: .line 53
            return
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/bson/BsonArray;

  void <init>(java.util.List<? extends org.bson.BsonValue>, );
    descriptor: (Ljava/util/List;Z)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.bson.BsonArray this
        start local 1 // java.util.List values
        start local 2 // boolean copy
         0: .line 56
            aload 0 /* this */
            invokespecial org.bson.BsonValue.<init>:()V
         1: .line 57
            iload 2 /* copy */
            ifeq 4
         2: .line 58
            aload 0 /* this */
            new java.util.ArrayList
            dup
            aload 1 /* values */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            putfield org.bson.BsonArray.values:Ljava/util/List;
         3: .line 59
            goto 5
         4: .line 60
      StackMap locals: org.bson.BsonArray java.util.List int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* values */
            putfield org.bson.BsonArray.values:Ljava/util/List;
         5: .line 62
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean copy
        end local 1 // java.util.List values
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/bson/BsonArray;
            0    6     1  values  Ljava/util/List<+Lorg/bson/BsonValue;>;
            0    6     2    copy  Z
    Signature: (Ljava/util/List<+Lorg/bson/BsonValue;>;Z)V
    MethodParameters:
        Name  Flags
      values  final
      copy    final

  public static org.bson.BsonArray parse(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/bson/BsonArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String json
         0: .line 75
            new org.bson.codecs.BsonArrayCodec
            dup
            invokespecial org.bson.codecs.BsonArrayCodec.<init>:()V
            new org.bson.json.JsonReader
            dup
            aload 0 /* json */
            invokespecial org.bson.json.JsonReader.<init>:(Ljava/lang/String;)V
            invokestatic org.bson.codecs.DecoderContext.builder:()Lorg/bson/codecs/DecoderContext$Builder;
            invokevirtual org.bson.codecs.DecoderContext$Builder.build:()Lorg/bson/codecs/DecoderContext;
            invokevirtual org.bson.codecs.BsonArrayCodec.decode:(Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Lorg/bson/BsonArray;
            areturn
        end local 0 // java.lang.String json
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  json  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      json  final

  public java.util.List<org.bson.BsonValue> getValues();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 84
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
    Signature: ()Ljava/util/List<Lorg/bson/BsonValue;>;

  public org.bson.BsonType getBsonType();
    descriptor: ()Lorg/bson/BsonType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 89
            getstatic org.bson.BsonType.ARRAY:Lorg/bson/BsonType;
            areturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 94
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ireturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 99
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ireturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;

  public boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.lang.Object o
         0: .line 104
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* o */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     final

  public java.util.Iterator<org.bson.BsonValue> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 109
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
    Signature: ()Ljava/util/Iterator<Lorg/bson/BsonValue;>;

  public java.lang.Object[] toArray();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 114
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
            areturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;

  public <T> T[] toArray();
    descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.lang.Object[] a
         0: .line 119
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* a */
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object[] a
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     a  [Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>([TT;)[TT;
    MethodParameters:
      Name  Flags
      a     final

  public boolean add(org.bson.BsonValue);
    descriptor: (Lorg/bson/BsonValue;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // org.bson.BsonValue bsonValue
         0: .line 124
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* bsonValue */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.bson.BsonValue bsonValue
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/bson/BsonArray;
            0    1     1  bsonValue  Lorg/bson/BsonValue;
    MethodParameters:
           Name  Flags
      bsonValue  final

  public boolean remove(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.lang.Object o
         0: .line 129
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* o */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     final

  public boolean containsAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.util.Collection c
         0: .line 134
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* c */
            invokeinterface java.util.List.containsAll:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.Collection c
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     c  Ljava/util/Collection<*>;
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      c     final

  public boolean addAll(java.util.Collection<? extends org.bson.BsonValue>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.util.Collection c
         0: .line 139
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* c */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.Collection c
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     c  Ljava/util/Collection<+Lorg/bson/BsonValue;>;
    Signature: (Ljava/util/Collection<+Lorg/bson/BsonValue;>;)Z
    MethodParameters:
      Name  Flags
      c     final

  public boolean addAll(int, java.util.Collection<? extends org.bson.BsonValue>);
    descriptor: (ILjava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.bson.BsonArray this
        start local 1 // int index
        start local 2 // java.util.Collection c
         0: .line 144
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            iload 1 /* index */
            aload 2 /* c */
            invokeinterface java.util.List.addAll:(ILjava/util/Collection;)Z
            ireturn
        end local 2 // java.util.Collection c
        end local 1 // int index
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/bson/BsonArray;
            0    1     1  index  I
            0    1     2      c  Ljava/util/Collection<+Lorg/bson/BsonValue;>;
    Signature: (ILjava/util/Collection<+Lorg/bson/BsonValue;>;)Z
    MethodParameters:
       Name  Flags
      index  final
      c      final

  public boolean removeAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.util.Collection c
         0: .line 149
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* c */
            invokeinterface java.util.List.removeAll:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.Collection c
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     c  Ljava/util/Collection<*>;
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      c     final

  public boolean retainAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.util.Collection c
         0: .line 154
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* c */
            invokeinterface java.util.List.retainAll:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.Collection c
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     c  Ljava/util/Collection<*>;
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      c     final

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 159
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         1: .line 160
            return
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/bson/BsonArray;

  public org.bson.BsonValue get(int);
    descriptor: (I)Lorg/bson/BsonValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // int index
         0: .line 164
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            iload 1 /* index */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.bson.BsonValue
            areturn
        end local 1 // int index
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/bson/BsonArray;
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      index  final

  public org.bson.BsonValue set(int, org.bson.BsonValue);
    descriptor: (ILorg/bson/BsonValue;)Lorg/bson/BsonValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.bson.BsonArray this
        start local 1 // int index
        start local 2 // org.bson.BsonValue element
         0: .line 169
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            iload 1 /* index */
            aload 2 /* element */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            checkcast org.bson.BsonValue
            areturn
        end local 2 // org.bson.BsonValue element
        end local 1 // int index
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/bson/BsonArray;
            0    1     1    index  I
            0    1     2  element  Lorg/bson/BsonValue;
    MethodParameters:
         Name  Flags
      index    final
      element  final

  public void add(int, org.bson.BsonValue);
    descriptor: (ILorg/bson/BsonValue;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.bson.BsonArray this
        start local 1 // int index
        start local 2 // org.bson.BsonValue element
         0: .line 174
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            iload 1 /* index */
            aload 2 /* element */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         1: .line 175
            return
        end local 2 // org.bson.BsonValue element
        end local 1 // int index
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/bson/BsonArray;
            0    2     1    index  I
            0    2     2  element  Lorg/bson/BsonValue;
    MethodParameters:
         Name  Flags
      index    final
      element  final

  public org.bson.BsonValue remove(int);
    descriptor: (I)Lorg/bson/BsonValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // int index
         0: .line 179
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            iload 1 /* index */
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast org.bson.BsonValue
            areturn
        end local 1 // int index
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/bson/BsonArray;
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      index  final

  public int indexOf(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.lang.Object o
         0: .line 184
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* o */
            invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     final

  public int lastIndexOf(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.lang.Object o
         0: .line 189
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            aload 1 /* o */
            invokeinterface java.util.List.lastIndexOf:(Ljava/lang/Object;)I
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
            0    1     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     final

  public java.util.ListIterator<org.bson.BsonValue> listIterator();
    descriptor: ()Ljava/util/ListIterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 194
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            areturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;
    Signature: ()Ljava/util/ListIterator<Lorg/bson/BsonValue;>;

  public java.util.ListIterator<org.bson.BsonValue> listIterator(int);
    descriptor: (I)Ljava/util/ListIterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // int index
         0: .line 199
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            iload 1 /* index */
            invokeinterface java.util.List.listIterator:(I)Ljava/util/ListIterator;
            areturn
        end local 1 // int index
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/bson/BsonArray;
            0    1     1  index  I
    Signature: (I)Ljava/util/ListIterator<Lorg/bson/BsonValue;>;
    MethodParameters:
       Name  Flags
      index  final

  public java.util.List<org.bson.BsonValue> subList(int, int);
    descriptor: (II)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.bson.BsonArray this
        start local 1 // int fromIndex
        start local 2 // int toIndex
         0: .line 204
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            iload 1 /* fromIndex */
            iload 2 /* toIndex */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            areturn
        end local 2 // int toIndex
        end local 1 // int fromIndex
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/bson/BsonArray;
            0    1     1  fromIndex  I
            0    1     2    toIndex  I
    Signature: (II)Ljava/util/List<Lorg/bson/BsonValue;>;
    MethodParameters:
           Name  Flags
      fromIndex  final
      toIndex    final

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.bson.BsonArray this
        start local 1 // java.lang.Object o
         0: .line 209
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 210
            iconst_1
            ireturn
         2: .line 212
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof org.bson.BsonArray
            ifne 4
         3: .line 213
            iconst_0
            ireturn
         4: .line 216
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast org.bson.BsonArray
            astore 2 /* that */
        start local 2 // org.bson.BsonArray that
         5: .line 217
            aload 0 /* this */
            invokevirtual org.bson.BsonArray.getValues:()Ljava/util/List;
            aload 2 /* that */
            invokevirtual org.bson.BsonArray.getValues:()Ljava/util/List;
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.bson.BsonArray that
        end local 1 // java.lang.Object o
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/bson/BsonArray;
            0    6     1     o  Ljava/lang/Object;
            5    6     2  that  Lorg/bson/BsonArray;
    MethodParameters:
      Name  Flags
      o     final

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 222
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokeinterface java.util.List.hashCode:()I
            ireturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/BsonArray;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 227
            new java.lang.StringBuilder
            dup
            ldc "BsonArray{values="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 228
            aload 0 /* this */
            getfield org.bson.BsonArray.values:Ljava/util/List;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         2: .line 229
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         3: .line 227
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/bson/BsonArray;

  public org.bson.BsonArray clone();
    descriptor: ()Lorg/bson/BsonArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.bson.BsonArray this
         0: .line 234
            new org.bson.BsonArray
            dup
            invokespecial org.bson.BsonArray.<init>:()V
            astore 1 /* to */
        start local 1 // org.bson.BsonArray to
         1: .line 235
            aload 0 /* this */
            invokevirtual org.bson.BsonArray.iterator:()Ljava/util/Iterator;
            astore 3
            goto 13
      StackMap locals: org.bson.BsonArray org.bson.BsonArray top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.bson.BsonValue
            astore 2 /* cur */
        start local 2 // org.bson.BsonValue cur
         3: .line 236
            invokestatic org.bson.BsonArray.$SWITCH_TABLE$org$bson$BsonType:()[I
            aload 2 /* cur */
            invokevirtual org.bson.BsonValue.getBsonType:()Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            iaload
            lookupswitch { // 4
                    4: 4
                    5: 6
                    6: 8
                   16: 10
              default: 12
          }
         4: .line 238
      StackMap locals: org.bson.BsonArray org.bson.BsonArray org.bson.BsonValue java.util.Iterator
      StackMap stack:
            aload 1 /* to */
            aload 2 /* cur */
            invokevirtual org.bson.BsonValue.asDocument:()Lorg/bson/BsonDocument;
            invokevirtual org.bson.BsonDocument.clone:()Lorg/bson/BsonDocument;
            invokevirtual org.bson.BsonArray.add:(Lorg/bson/BsonValue;)Z
            pop
         5: .line 239
            goto 13
         6: .line 241
      StackMap locals:
      StackMap stack:
            aload 1 /* to */
            aload 2 /* cur */
            invokevirtual org.bson.BsonValue.asArray:()Lorg/bson/BsonArray;
            invokevirtual org.bson.BsonArray.clone:()Lorg/bson/BsonArray;
            invokevirtual org.bson.BsonArray.add:(Lorg/bson/BsonValue;)Z
            pop
         7: .line 242
            goto 13
         8: .line 244
      StackMap locals:
      StackMap stack:
            aload 1 /* to */
            aload 2 /* cur */
            invokevirtual org.bson.BsonValue.asBinary:()Lorg/bson/BsonBinary;
            invokestatic org.bson.BsonBinary.clone:(Lorg/bson/BsonBinary;)Lorg/bson/BsonBinary;
            invokevirtual org.bson.BsonArray.add:(Lorg/bson/BsonValue;)Z
            pop
         9: .line 245
            goto 13
        10: .line 247
      StackMap locals:
      StackMap stack:
            aload 1 /* to */
            aload 2 /* cur */
            invokevirtual org.bson.BsonValue.asJavaScriptWithScope:()Lorg/bson/BsonJavaScriptWithScope;
            invokestatic org.bson.BsonJavaScriptWithScope.clone:(Lorg/bson/BsonJavaScriptWithScope;)Lorg/bson/BsonJavaScriptWithScope;
            invokevirtual org.bson.BsonArray.add:(Lorg/bson/BsonValue;)Z
            pop
        11: .line 248
            goto 13
        12: .line 250
      StackMap locals:
      StackMap stack:
            aload 1 /* to */
            aload 2 /* cur */
            invokevirtual org.bson.BsonArray.add:(Lorg/bson/BsonValue;)Z
            pop
        end local 2 // org.bson.BsonValue cur
        13: .line 235
      StackMap locals: org.bson.BsonArray org.bson.BsonArray top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        14: .line 253
            aload 1 /* to */
            areturn
        end local 1 // org.bson.BsonArray to
        end local 0 // org.bson.BsonArray this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/bson/BsonArray;
            1   15     1    to  Lorg/bson/BsonArray;
            3   13     2   cur  Lorg/bson/BsonValue;

  public java.lang.Object set(int, java.lang.Object);
    descriptor: (ILjava/lang/Object;)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            iload 1
            aload 2
            checkcast org.bson.BsonValue
            invokevirtual org.bson.BsonArray.set:(ILorg/bson/BsonValue;)Lorg/bson/BsonValue;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void add(int, java.lang.Object);
    descriptor: (ILjava/lang/Object;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            iload 1
            aload 2
            checkcast org.bson.BsonValue
            invokevirtual org.bson.BsonArray.add:(ILorg/bson/BsonValue;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean add(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast org.bson.BsonValue
            invokevirtual org.bson.BsonArray.add:(Lorg/bson/BsonValue;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.bson.BsonArray.clone:()Lorg/bson/BsonArray;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.lang.CloneNotSupportedException

  public java.lang.Object get(int);
    descriptor: (I)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual org.bson.BsonArray.get:(I)Lorg/bson/BsonValue;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Object remove(int);
    descriptor: (I)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual org.bson.BsonArray.remove:(I)Lorg/bson/BsonValue;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$org$bson$BsonType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 35
            getstatic org.bson.BsonArray.$SWITCH_TABLE$org$bson$BsonType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.bson.BsonType.values:()[Lorg/bson/BsonType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.bson.BsonType.ARRAY:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            iconst_5
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.bson.BsonType.BINARY:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 6
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.bson.BsonType.BOOLEAN:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 9
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.bson.BsonType.DATE_TIME:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 10
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.bson.BsonType.DB_POINTER:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 13
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.bson.BsonType.DECIMAL128:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 20
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.bson.BsonType.DOCUMENT:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            iconst_4
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.bson.BsonType.DOUBLE:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            iconst_2
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.bson.BsonType.END_OF_DOCUMENT:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            iconst_1
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.bson.BsonType.INT32:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 17
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.bson.BsonType.INT64:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 19
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic org.bson.BsonType.JAVASCRIPT:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 14
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic org.bson.BsonType.JAVASCRIPT_WITH_SCOPE:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 16
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic org.bson.BsonType.MAX_KEY:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 22
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic org.bson.BsonType.MIN_KEY:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 21
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic org.bson.BsonType.NULL:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 11
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic org.bson.BsonType.OBJECT_ID:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 8
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic org.bson.BsonType.REGULAR_EXPRESSION:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 12
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic org.bson.BsonType.STRING:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            iconst_3
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic org.bson.BsonType.SYMBOL:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 15
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic org.bson.BsonType.TIMESTAMP:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 18
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic org.bson.BsonType.UNDEFINED:Lorg/bson/BsonType;
            invokevirtual org.bson.BsonType.ordinal:()I
            bipush 7
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            dup
            putstatic org.bson.BsonArray.$SWITCH_TABLE$org$bson$BsonType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
}
Signature: Lorg/bson/BsonValue;Ljava/util/List<Lorg/bson/BsonValue;>;Ljava/lang/Cloneable;
SourceFile: "BsonArray.java"
InnerClasses:
  public final Builder = org.bson.codecs.DecoderContext$Builder of org.bson.codecs.DecoderContext