class java.util.Collections$SynchronizedCollection<E> implements java.util.Collection<E>, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.util.Collections$SynchronizedCollection
  super_class: java.lang.Object
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3053995032091335093

  final java.util.Collection<E> c;
    descriptor: Ljava/util/Collection;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Collection<TE;>;

  final java.lang.Object mutex;
    descriptor: Ljava/lang/Object;
    flags: (0x0010) ACC_FINAL

  void <init>(java.util.Collection<E>);
    descriptor: (Ljava/util/Collection;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.Collection c
         0: .line 2006
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 2007
            aload 0 /* this */
            aload 1 /* c */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            putfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
         2: .line 2008
            aload 0 /* this */
            aload 0 /* this */
            putfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
         3: .line 2009
            return
        end local 1 // java.util.Collection c
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    4     1     c  Ljava/util/Collection<TE;>;
    Signature: (Ljava/util/Collection<TE;>;)V
    MethodParameters:
      Name  Flags
      c     

  void <init>(java.util.Collection<E>, );
    descriptor: (Ljava/util/Collection;Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.Collection c
        start local 2 // java.lang.Object mutex
         0: .line 2011
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 2012
            aload 0 /* this */
            aload 1 /* c */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Collection
            putfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
         2: .line 2013
            aload 0 /* this */
            aload 2 /* mutex */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            putfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
         3: .line 2014
            return
        end local 2 // java.lang.Object mutex
        end local 1 // java.util.Collection c
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    4     1      c  Ljava/util/Collection<TE;>;
            0    4     2  mutex  Ljava/lang/Object;
    Signature: (Ljava/util/Collection<TE;>;Ljava/lang/Object;)V
    MethodParameters:
       Name  Flags
      c      
      mutex  

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2017
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.size:()I
            aload 1
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2020
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.isEmpty:()Z
            aload 1
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.lang.Object o
         0: .line 2023
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* o */
            invokeinterface java.util.Collection.contains:(Ljava/lang/Object;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.lang.Object o
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1     o  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    MethodParameters:
      Name  Flags
      o     

  public java.lang.Object[] toArray();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2026
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            aload 1
            monitorexit
         2: areturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public <T> T[] toArray();
    descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.lang.Object[] a
         0: .line 2029
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* a */
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            aload 2
            monitorexit
         2: areturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object[] java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.lang.Object[] a
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1     a  [Ljava/lang/Object;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: <T:Ljava/lang/Object;>([TT;)[TT;
    MethodParameters:
      Name  Flags
      a     

  public <T> T[] toArray(java.util.function.IntFunction<T[]>);
    descriptor: (Ljava/util/function/IntFunction;)[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.function.IntFunction f
         0: .line 2032
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* f */
            invokeinterface java.util.Collection.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            aload 2
            monitorexit
         2: areturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.util.function.IntFunction java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.util.function.IntFunction f
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1     f  Ljava/util/function/IntFunction<[TT;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: <T:Ljava/lang/Object;>(Ljava/util/function/IntFunction<[TT;>;)[TT;
    MethodParameters:
      Name  Flags
      f     

  public java.util.Iterator<E> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2036
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
    Signature: ()Ljava/util/Iterator<TE;>;

  public boolean add();
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.lang.Object e
         0: .line 2040
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* e */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.lang.Object e
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1     e  TE;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (TE;)Z
    MethodParameters:
      Name  Flags
      e     

  public boolean remove(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.lang.Object o
         0: .line 2043
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* o */
            invokeinterface java.util.Collection.remove:(Ljava/lang/Object;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.lang.Object o
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1     o  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    MethodParameters:
      Name  Flags
      o     

  public boolean containsAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.Collection coll
         0: .line 2047
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* coll */
            invokeinterface java.util.Collection.containsAll:(Ljava/util/Collection;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.util.Collection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.util.Collection coll
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1  coll  Ljava/util/Collection<*>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      coll  

  public boolean addAll(java.util.Collection<? extends E>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.Collection coll
         0: .line 2050
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* coll */
            invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.util.Collection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.util.Collection coll
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1  coll  Ljava/util/Collection<+TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (Ljava/util/Collection<+TE;>;)Z
    MethodParameters:
      Name  Flags
      coll  

  public boolean removeAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.Collection coll
         0: .line 2053
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* coll */
            invokeinterface java.util.Collection.removeAll:(Ljava/util/Collection;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.util.Collection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.util.Collection coll
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1  coll  Ljava/util/Collection<*>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      coll  

  public boolean retainAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.Collection coll
         0: .line 2056
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* coll */
            invokeinterface java.util.Collection.retainAll:(Ljava/util/Collection;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.util.Collection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.util.Collection coll
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1  coll  Ljava/util/Collection<*>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      coll  

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2059
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.clear:()V
            aload 1
            monitorexit
         2: goto 5
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 1
            monitorexit
         4: athrow
         5: .line 2060
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2062
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 1
            monitorexit
         2: areturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public void forEach(java.util.function.Consumer<? super E>);
    descriptor: (Ljava/util/function/Consumer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.function.Consumer consumer
         0: .line 2067
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* consumer */
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
            aload 2
            monitorexit
         2: goto 5
      StackMap locals: java.util.Collections$SynchronizedCollection java.util.function.Consumer java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
         5: .line 2068
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.function.Consumer consumer
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    6     1  consumer  Ljava/util/function/Consumer<-TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (Ljava/util/function/Consumer<-TE;>;)V
    MethodParameters:
          Name  Flags
      consumer  

  public boolean removeIf(java.util.function.Predicate<? super E>);
    descriptor: (Ljava/util/function/Predicate;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.util.function.Predicate filter
         0: .line 2071
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            aload 1 /* filter */
            invokeinterface java.util.Collection.removeIf:(Ljava/util/function/Predicate;)Z
            aload 2
            monitorexit
         2: ireturn
      StackMap locals: java.util.Collections$SynchronizedCollection java.util.function.Predicate java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
        end local 1 // java.util.function.Predicate filter
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    5     1  filter  Ljava/util/function/Predicate<-TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (Ljava/util/function/Predicate<-TE;>;)Z
    MethodParameters:
        Name  Flags
      filter  

  public java.util.Spliterator<E> spliterator();
    descriptor: ()Ljava/util/Spliterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2075
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.spliterator:()Ljava/util/Spliterator;
            areturn
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
    Signature: ()Ljava/util/Spliterator<TE;>;

  public java.util.stream.Stream<E> stream();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2079
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
            areturn
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
    Signature: ()Ljava/util/stream/Stream<TE;>;

  public java.util.stream.Stream<E> parallelStream();
    descriptor: ()Ljava/util/stream/Stream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Collections$SynchronizedCollection this
         0: .line 2083
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.c:Ljava/util/Collection;
            invokeinterface java.util.Collection.parallelStream:()Ljava/util/stream/Stream;
            areturn
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
    Signature: ()Ljava/util/stream/Stream<TE;>;

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedCollection this
        start local 1 // java.io.ObjectOutputStream s
         0: .line 2086
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedCollection.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
            aload 2
            monitorexit
         2: goto 5
      StackMap locals: java.util.Collections$SynchronizedCollection java.io.ObjectOutputStream java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 2
            monitorexit
         4: athrow
         5: .line 2087
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.ObjectOutputStream s
        end local 0 // java.util.Collections$SynchronizedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/util/Collections$SynchronizedCollection<TE;>;
            0    6     1     s  Ljava/io/ObjectOutputStream;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     
}
Signature: <E:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/Collection<TE;>;Ljava/io/Serializable;
SourceFile: "Collections.java"
NestHost: java.util.Collections
InnerClasses:
  SynchronizedCollection = java.util.Collections$SynchronizedCollection of java.util.Collections