public interface java.util.Set<E> extends java.util.Collection<E>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: java.util.Set
  super_class: java.lang.Object
{
  public abstract int size();
    descriptor: ()I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean isEmpty();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      o     

  public abstract java.util.Iterator<E> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/Iterator<TE;>;

  public abstract java.lang.Object[] toArray();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract <T> T[] toArray();
    descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <T:Ljava/lang/Object;>([TT;)[TT;
    MethodParameters:
      Name  Flags
      a     

  public abstract boolean add();
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (TE;)Z
    MethodParameters:
      Name  Flags
      e     

  public abstract boolean remove(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      o     

  public abstract boolean containsAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      c     

  public abstract boolean addAll(java.util.Collection<? extends E>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+TE;>;)Z
    MethodParameters:
      Name  Flags
      c     

  public abstract boolean retainAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      c     

  public abstract boolean removeAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<*>;)Z
    MethodParameters:
      Name  Flags
      c     

  public abstract void clear();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      o     

  public abstract int hashCode();
    descriptor: ()I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.util.Spliterator<E> spliterator();
    descriptor: ()Ljava/util/Spliterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Set this
         0: .line 438
            aload 0 /* this */
            iconst_1
            invokestatic java.util.Spliterators.spliterator:(Ljava/util/Collection;I)Ljava/util/Spliterator;
            areturn
        end local 0 // java.util.Set this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/Set<TE;>;
    Signature: ()Ljava/util/Spliterator<TE;>;

  public static <E> java.util.Set<E> of();
    descriptor: ()Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 451
            invokestatic java.util.ImmutableCollections$Set0.instance:()Ljava/util/ImmutableCollections$Set0;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <E:Ljava/lang/Object;>()Ljava/util/Set<TE;>;

  public static <E> java.util.Set<E> of(E);
    descriptor: (Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object e1
         0: .line 466
            new java.util.ImmutableCollections$Set1
            dup
            aload 0 /* e1 */
            invokespecial java.util.ImmutableCollections$Set1.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    e1  TE;
    Signature: <E:Ljava/lang/Object;>(TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    

  public static <E> java.util.Set<E> of(E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
         0: .line 483
            new java.util.ImmutableCollections$Set2
            dup
            aload 0 /* e1 */
            aload 1 /* e2 */
            invokespecial java.util.ImmutableCollections$Set2.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    e1  TE;
            0    1     1    e2  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    

  public static <E> java.util.Set<E> of(E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
         0: .line 501
            new java.util.ImmutableCollections$SetN
            dup
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    e1  TE;
            0    1     1    e2  TE;
            0    1     2    e3  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    

  public static <E> java.util.Set<E> of(E, E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
        start local 3 // java.lang.Object e4
         0: .line 520
            new java.util.ImmutableCollections$SetN
            dup
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            dup
            iconst_3
            aload 3 /* e4 */
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 3 // java.lang.Object e4
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    e1  TE;
            0    1     1    e2  TE;
            0    1     2    e3  TE;
            0    1     3    e4  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    
      e4    

  public static <E> java.util.Set<E> of(E, E, E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
        start local 3 // java.lang.Object e4
        start local 4 // java.lang.Object e5
         0: .line 540
            new java.util.ImmutableCollections$SetN
            dup
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            dup
            iconst_3
            aload 3 /* e4 */
            aastore
            dup
            iconst_4
            aload 4 /* e5 */
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 4 // java.lang.Object e5
        end local 3 // java.lang.Object e4
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    e1  TE;
            0    1     1    e2  TE;
            0    1     2    e3  TE;
            0    1     3    e4  TE;
            0    1     4    e5  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    
      e4    
      e5    

  public static <E> java.util.Set<E> of(E, E, E, E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
        start local 3 // java.lang.Object e4
        start local 4 // java.lang.Object e5
        start local 5 // java.lang.Object e6
         0: .line 561
            new java.util.ImmutableCollections$SetN
            dup
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            dup
            iconst_3
            aload 3 /* e4 */
            aastore
            dup
            iconst_4
            aload 4 /* e5 */
            aastore
            dup
            iconst_5
         1: .line 562
            aload 5 /* e6 */
         2: .line 561
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 5 // java.lang.Object e6
        end local 4 // java.lang.Object e5
        end local 3 // java.lang.Object e4
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    e1  TE;
            0    3     1    e2  TE;
            0    3     2    e3  TE;
            0    3     3    e4  TE;
            0    3     4    e5  TE;
            0    3     5    e6  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    
      e4    
      e5    
      e6    

  public static <E> java.util.Set<E> of(E, E, E, E, E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=7
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
        start local 3 // java.lang.Object e4
        start local 4 // java.lang.Object e5
        start local 5 // java.lang.Object e6
        start local 6 // java.lang.Object e7
         0: .line 584
            new java.util.ImmutableCollections$SetN
            dup
            bipush 7
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            dup
            iconst_3
            aload 3 /* e4 */
            aastore
            dup
            iconst_4
            aload 4 /* e5 */
            aastore
            dup
            iconst_5
         1: .line 585
            aload 5 /* e6 */
            aastore
            dup
            bipush 6
            aload 6 /* e7 */
         2: .line 584
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 6 // java.lang.Object e7
        end local 5 // java.lang.Object e6
        end local 4 // java.lang.Object e5
        end local 3 // java.lang.Object e4
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    e1  TE;
            0    3     1    e2  TE;
            0    3     2    e3  TE;
            0    3     3    e4  TE;
            0    3     4    e5  TE;
            0    3     5    e6  TE;
            0    3     6    e7  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;TE;TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    
      e4    
      e5    
      e6    
      e7    

  public static <E> java.util.Set<E> of(E, E, E, E, E, E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=8
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
        start local 3 // java.lang.Object e4
        start local 4 // java.lang.Object e5
        start local 5 // java.lang.Object e6
        start local 6 // java.lang.Object e7
        start local 7 // java.lang.Object e8
         0: .line 608
            new java.util.ImmutableCollections$SetN
            dup
            bipush 8
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            dup
            iconst_3
            aload 3 /* e4 */
            aastore
            dup
            iconst_4
            aload 4 /* e5 */
            aastore
            dup
            iconst_5
         1: .line 609
            aload 5 /* e6 */
            aastore
            dup
            bipush 6
            aload 6 /* e7 */
            aastore
            dup
            bipush 7
            aload 7 /* e8 */
         2: .line 608
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 7 // java.lang.Object e8
        end local 6 // java.lang.Object e7
        end local 5 // java.lang.Object e6
        end local 4 // java.lang.Object e5
        end local 3 // java.lang.Object e4
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    e1  TE;
            0    3     1    e2  TE;
            0    3     2    e3  TE;
            0    3     3    e4  TE;
            0    3     4    e5  TE;
            0    3     5    e6  TE;
            0    3     6    e7  TE;
            0    3     7    e8  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;TE;TE;TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    
      e4    
      e5    
      e6    
      e7    
      e8    

  public static <E> java.util.Set<E> of(E, E, E, E, E, E, E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=9, args_size=9
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
        start local 3 // java.lang.Object e4
        start local 4 // java.lang.Object e5
        start local 5 // java.lang.Object e6
        start local 6 // java.lang.Object e7
        start local 7 // java.lang.Object e8
        start local 8 // java.lang.Object e9
         0: .line 633
            new java.util.ImmutableCollections$SetN
            dup
            bipush 9
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            dup
            iconst_3
            aload 3 /* e4 */
            aastore
            dup
            iconst_4
            aload 4 /* e5 */
            aastore
            dup
            iconst_5
         1: .line 634
            aload 5 /* e6 */
            aastore
            dup
            bipush 6
            aload 6 /* e7 */
            aastore
            dup
            bipush 7
            aload 7 /* e8 */
            aastore
            dup
            bipush 8
            aload 8 /* e9 */
         2: .line 633
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 8 // java.lang.Object e9
        end local 7 // java.lang.Object e8
        end local 6 // java.lang.Object e7
        end local 5 // java.lang.Object e6
        end local 4 // java.lang.Object e5
        end local 3 // java.lang.Object e4
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    e1  TE;
            0    3     1    e2  TE;
            0    3     2    e3  TE;
            0    3     3    e4  TE;
            0    3     4    e5  TE;
            0    3     5    e6  TE;
            0    3     6    e7  TE;
            0    3     7    e8  TE;
            0    3     8    e9  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;TE;TE;TE;TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    
      e4    
      e5    
      e6    
      e7    
      e8    
      e9    

  public static <E> java.util.Set<E> of(E, E, E, E, E, E, E, E, E, E);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=10
        start local 0 // java.lang.Object e1
        start local 1 // java.lang.Object e2
        start local 2 // java.lang.Object e3
        start local 3 // java.lang.Object e4
        start local 4 // java.lang.Object e5
        start local 5 // java.lang.Object e6
        start local 6 // java.lang.Object e7
        start local 7 // java.lang.Object e8
        start local 8 // java.lang.Object e9
        start local 9 // java.lang.Object e10
         0: .line 659
            new java.util.ImmutableCollections$SetN
            dup
            bipush 10
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* e1 */
            aastore
            dup
            iconst_1
            aload 1 /* e2 */
            aastore
            dup
            iconst_2
            aload 2 /* e3 */
            aastore
            dup
            iconst_3
            aload 3 /* e4 */
            aastore
            dup
            iconst_4
            aload 4 /* e5 */
            aastore
            dup
            iconst_5
         1: .line 660
            aload 5 /* e6 */
            aastore
            dup
            bipush 6
            aload 6 /* e7 */
            aastore
            dup
            bipush 7
            aload 7 /* e8 */
            aastore
            dup
            bipush 8
            aload 8 /* e9 */
            aastore
            dup
            bipush 9
            aload 9 /* e10 */
         2: .line 659
            aastore
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 9 // java.lang.Object e10
        end local 8 // java.lang.Object e9
        end local 7 // java.lang.Object e8
        end local 6 // java.lang.Object e7
        end local 5 // java.lang.Object e6
        end local 4 // java.lang.Object e5
        end local 3 // java.lang.Object e4
        end local 2 // java.lang.Object e3
        end local 1 // java.lang.Object e2
        end local 0 // java.lang.Object e1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    e1  TE;
            0    3     1    e2  TE;
            0    3     2    e3  TE;
            0    3     3    e4  TE;
            0    3     4    e5  TE;
            0    3     5    e6  TE;
            0    3     6    e7  TE;
            0    3     7    e8  TE;
            0    3     8    e9  TE;
            0    3     9   e10  TE;
    Signature: <E:Ljava/lang/Object;>(TE;TE;TE;TE;TE;TE;TE;TE;TE;TE;)Ljava/util/Set<TE;>;
    MethodParameters:
      Name  Flags
      e1    
      e2    
      e3    
      e4    
      e5    
      e6    
      e7    
      e8    
      e9    
      e10   

  public static <E> java.util.Set<E> of(E[]);
    descriptor: ([Ljava/lang/Object;)Ljava/util/Set;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.Object[] elements
         0: .line 692
            aload 0 /* elements */
            arraylength
            tableswitch { // 0 - 2
                    0: 1
                    1: 2
                    2: 3
              default: 4
          }
         1: .line 694
      StackMap locals:
      StackMap stack:
            invokestatic java.util.ImmutableCollections$Set0.instance:()Ljava/util/ImmutableCollections$Set0;
            areturn
         2: .line 696
      StackMap locals:
      StackMap stack:
            new java.util.ImmutableCollections$Set1
            dup
            aload 0 /* elements */
            iconst_0
            aaload
            invokespecial java.util.ImmutableCollections$Set1.<init>:(Ljava/lang/Object;)V
            areturn
         3: .line 698
      StackMap locals:
      StackMap stack:
            new java.util.ImmutableCollections$Set2
            dup
            aload 0 /* elements */
            iconst_0
            aaload
            aload 0 /* elements */
            iconst_1
            aaload
            invokespecial java.util.ImmutableCollections$Set2.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
         4: .line 700
      StackMap locals:
      StackMap stack:
            new java.util.ImmutableCollections$SetN
            dup
            aload 0 /* elements */
            invokespecial java.util.ImmutableCollections$SetN.<init>:([Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object[] elements
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0  elements  [Ljava/lang/Object;
    Signature: <E:Ljava/lang/Object;>([TE;)Ljava/util/Set<TE;>;
    RuntimeVisibleAnnotations: 
      java.lang.SafeVarargs()
    MethodParameters:
          Name  Flags
      elements  
}
Signature: <E:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/Collection<TE;>;
SourceFile: "Set.java"
InnerClasses:
  final Set0 = java.util.ImmutableCollections$Set0 of java.util.ImmutableCollections
  final Set1 = java.util.ImmutableCollections$Set1 of java.util.ImmutableCollections
  final Set2 = java.util.ImmutableCollections$Set2 of java.util.ImmutableCollections
  final SetN = java.util.ImmutableCollections$SetN of java.util.ImmutableCollections