class java.util.Collections$SynchronizedSortedSet<E> extends java.util.Collections$SynchronizedSet<E> implements java.util.SortedSet<E>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.util.Collections$SynchronizedSortedSet
  super_class: java.util.Collections$SynchronizedSet
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8695801310862127406

  private final java.util.SortedSet<E> ss;
    descriptor: Ljava/util/SortedSet;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/SortedSet<TE;>;

  void <init>(java.util.SortedSet<E>);
    descriptor: (Ljava/util/SortedSet;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Collections$SynchronizedSortedSet this
        start local 1 // java.util.SortedSet s
         0: .line 2205
            aload 0 /* this */
            aload 1 /* s */
            invokespecial java.util.Collections$SynchronizedSet.<init>:(Ljava/util/Set;)V
         1: .line 2206
            aload 0 /* this */
            aload 1 /* s */
            putfield java.util.Collections$SynchronizedSortedSet.ss:Ljava/util/SortedSet;
         2: .line 2207
            return
        end local 1 // java.util.SortedSet s
        end local 0 // java.util.Collections$SynchronizedSortedSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/Collections$SynchronizedSortedSet<TE;>;
            0    3     1     s  Ljava/util/SortedSet<TE;>;
    Signature: (Ljava/util/SortedSet<TE;>;)V
    MethodParameters:
      Name  Flags
      s     

  void <init>(java.util.SortedSet<E>, );
    descriptor: (Ljava/util/SortedSet;Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Collections$SynchronizedSortedSet this
        start local 1 // java.util.SortedSet s
        start local 2 // java.lang.Object mutex
         0: .line 2209
            aload 0 /* this */
            aload 1 /* s */
            aload 2 /* mutex */
            invokespecial java.util.Collections$SynchronizedSet.<init>:(Ljava/util/Set;Ljava/lang/Object;)V
         1: .line 2210
            aload 0 /* this */
            aload 1 /* s */
            putfield java.util.Collections$SynchronizedSortedSet.ss:Ljava/util/SortedSet;
         2: .line 2211
            return
        end local 2 // java.lang.Object mutex
        end local 1 // java.util.SortedSet s
        end local 0 // java.util.Collections$SynchronizedSortedSet this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljava/util/Collections$SynchronizedSortedSet<TE;>;
            0    3     1      s  Ljava/util/SortedSet<TE;>;
            0    3     2  mutex  Ljava/lang/Object;
    Signature: (Ljava/util/SortedSet<TE;>;Ljava/lang/Object;)V
    MethodParameters:
       Name  Flags
      s      
      mutex  

  public java.util.Comparator<? super E> comparator();
    descriptor: ()Ljava/util/Comparator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Collections$SynchronizedSortedSet this
         0: .line 2214
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.ss:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.comparator:()Ljava/util/Comparator;
            aload 1
            monitorexit
         2: areturn
      StackMap locals: java.util.Collections$SynchronizedSortedSet java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.Collections$SynchronizedSortedSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedSortedSet<TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: ()Ljava/util/Comparator<-TE;>;

  public java.util.SortedSet<E> subSet(E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/SortedSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.util.Collections$SynchronizedSortedSet this
        start local 1 // java.lang.Object fromElement
        start local 2 // java.lang.Object toElement
         0: .line 2218
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         1: .line 2219
            new java.util.Collections$SynchronizedSortedSet
            dup
         2: .line 2220
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.ss:Ljava/util/SortedSet;
            aload 1 /* fromElement */
            aload 2 /* toElement */
            invokeinterface java.util.SortedSet.subSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/SortedSet;
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
         3: .line 2219
            invokespecial java.util.Collections$SynchronizedSortedSet.<init>:(Ljava/util/SortedSet;Ljava/lang/Object;)V
            aload 3
            monitorexit
         4: areturn
         5: .line 2218
      StackMap locals: java.util.Collections$SynchronizedSortedSet java.lang.Object java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
         6: athrow
        end local 2 // java.lang.Object toElement
        end local 1 // java.lang.Object fromElement
        end local 0 // java.util.Collections$SynchronizedSortedSet this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Ljava/util/Collections$SynchronizedSortedSet<TE;>;
            0    7     1  fromElement  TE;
            0    7     2    toElement  TE;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any
    Signature: (TE;TE;)Ljava/util/SortedSet<TE;>;
    MethodParameters:
             Name  Flags
      fromElement  
      toElement    

  public java.util.SortedSet<E> headSet(E);
    descriptor: (Ljava/lang/Object;)Ljava/util/SortedSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedSortedSet this
        start local 1 // java.lang.Object toElement
         0: .line 2224
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 2225
            new java.util.Collections$SynchronizedSortedSet
            dup
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.ss:Ljava/util/SortedSet;
            aload 1 /* toElement */
            invokeinterface java.util.SortedSet.headSet:(Ljava/lang/Object;)Ljava/util/SortedSet;
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
            invokespecial java.util.Collections$SynchronizedSortedSet.<init>:(Ljava/util/SortedSet;Ljava/lang/Object;)V
            aload 2
            monitorexit
         2: areturn
         3: .line 2224
      StackMap locals: java.util.Collections$SynchronizedSortedSet java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
         4: athrow
        end local 1 // java.lang.Object toElement
        end local 0 // java.util.Collections$SynchronizedSortedSet this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljava/util/Collections$SynchronizedSortedSet<TE;>;
            0    5     1  toElement  TE;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (TE;)Ljava/util/SortedSet<TE;>;
    MethodParameters:
           Name  Flags
      toElement  

  public java.util.SortedSet<E> tailSet(E);
    descriptor: (Ljava/lang/Object;)Ljava/util/SortedSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.Collections$SynchronizedSortedSet this
        start local 1 // java.lang.Object fromElement
         0: .line 2229
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 2230
            new java.util.Collections$SynchronizedSortedSet
            dup
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.ss:Ljava/util/SortedSet;
            aload 1 /* fromElement */
            invokeinterface java.util.SortedSet.tailSet:(Ljava/lang/Object;)Ljava/util/SortedSet;
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
            invokespecial java.util.Collections$SynchronizedSortedSet.<init>:(Ljava/util/SortedSet;Ljava/lang/Object;)V
            aload 2
            monitorexit
         2: areturn
         3: .line 2229
      StackMap locals: java.util.Collections$SynchronizedSortedSet java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
         4: athrow
        end local 1 // java.lang.Object fromElement
        end local 0 // java.util.Collections$SynchronizedSortedSet this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Ljava/util/Collections$SynchronizedSortedSet<TE;>;
            0    5     1  fromElement  TE;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: (TE;)Ljava/util/SortedSet<TE;>;
    MethodParameters:
             Name  Flags
      fromElement  

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

  public E last();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Collections$SynchronizedSortedSet this
         0: .line 2238
            aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.mutex:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: aload 0 /* this */
            getfield java.util.Collections$SynchronizedSortedSet.ss:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.last:()Ljava/lang/Object;
            aload 1
            monitorexit
         2: areturn
      StackMap locals: java.util.Collections$SynchronizedSortedSet java.lang.Object
      StackMap stack: java.lang.Throwable
         3: aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.Collections$SynchronizedSortedSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Collections$SynchronizedSortedSet<TE;>;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    Signature: ()TE;
}
Signature: <E:Ljava/lang/Object;>Ljava/util/Collections$SynchronizedSet<TE;>;Ljava/util/SortedSet<TE;>;
SourceFile: "Collections.java"
NestHost: java.util.Collections
InnerClasses:
  SynchronizedSet = java.util.Collections$SynchronizedSet of java.util.Collections
  SynchronizedSortedSet = java.util.Collections$SynchronizedSortedSet of java.util.Collections