public class org.jruby.ext.set.RubySet extends org.jruby.RubyObject implements java.util.Set
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.ext.set.RubySet
  super_class: org.jruby.RubyObject
{
  private static final org.jruby.runtime.ObjectAllocator ALLOCATOR;
    descriptor: Lorg/jruby/runtime/ObjectAllocator;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  org.jruby.RubyHash hash;
    descriptor: Lorg/jruby/RubyHash;
    flags: (0x0000) 

  private static final byte[] RECURSIVE_BYTES;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 100
            new org.jruby.ext.set.RubySet$1
            dup
            invokespecial org.jruby.ext.set.RubySet$1.<init>:()V
            putstatic org.jruby.ext.set.RubySet.ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
         1: .line 1098
            iconst_3
            newarray 8
            dup
            iconst_0
            bipush 46
            bastore
            dup
            iconst_1
            bipush 46
            bastore
            dup
            iconst_2
            bipush 46
            bastore
            putstatic org.jruby.ext.set.RubySet.RECURSIVE_BYTES:[B
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static org.jruby.RubyClass createSetClass(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 61
            aload 0 /* runtime */
            ldc "Set"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            getstatic org.jruby.ext.set.RubySet.ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
            invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
            astore 1 /* Set */
        start local 1 // org.jruby.RubyClass Set
         1: .line 63
            aload 1 /* Set */
            ldc Lorg/jruby/ext/set/RubySet;
            invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
         2: .line 65
            aload 1 /* Set */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         3: .line 66
            aload 1 /* Set */
            ldc Lorg/jruby/ext/set/RubySet;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         4: .line 68
            aload 1 /* Set */
            new org.jruby.ext.set.RubySet$SetMarshal
            dup
            aload 1 /* Set */
            invokevirtual org.jruby.RubyClass.getMarshal:()Lorg/jruby/runtime/ObjectMarshal;
            invokespecial org.jruby.ext.set.RubySet$SetMarshal.<init>:(Lorg/jruby/runtime/ObjectMarshal;)V
            invokevirtual org.jruby.RubyClass.setMarshal:(Lorg/jruby/runtime/ObjectMarshal;)V
         5: .line 70
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getLoadService:()Lorg/jruby/runtime/load/LoadService;
            ldc "jruby/set.rb"
            invokevirtual org.jruby.runtime.load.LoadService.require:(Ljava/lang/String;)Z
            pop
         6: .line 72
            aload 1 /* Set */
            areturn
        end local 1 // org.jruby.RubyClass Set
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  runtime  Lorg/jruby/Ruby;
            1    7     1      Set  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  final

  void unmarshal();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 97
            aload 0 /* this */
            aload 0 /* this */
            ldc "@hash"
            invokevirtual org.jruby.ext.set.RubySet.getInstanceVariable:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            putfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
         1: .line 98
            return
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/set/RubySet;

  protected void <init>(org.jruby.Ruby, org.jruby.RubyClass);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass klass
         0: .line 109
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* klass */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 110
            return
        end local 2 // org.jruby.RubyClass klass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2    klass  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  
      klass    

  final void allocHash(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
         0: .line 122
            aload 0 /* this */
            new org.jruby.RubyHash
            dup
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
            invokevirtual org.jruby.ext.set.RubySet.setHash:(Lorg/jruby/RubyHash;)V
         1: .line 123
            return
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      runtime  final

  final void allocHash(org.jruby.Ruby, int);
    descriptor: (Lorg/jruby/Ruby;I)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // int size
         0: .line 126
            aload 0 /* this */
            new org.jruby.RubyHash
            dup
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
            iload 2 /* size */
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;I)V
            invokevirtual org.jruby.ext.set.RubySet.setHash:(Lorg/jruby/RubyHash;)V
         1: .line 127
            return
        end local 2 // int size
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2     size  I
    MethodParameters:
         Name  Flags
      runtime  final
      size     final

  final void setHash(org.jruby.RubyHash);
    descriptor: (Lorg/jruby/RubyHash;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.RubyHash hash
         0: .line 130
            aload 0 /* this */
            aload 1 /* hash */
            putfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
         1: .line 131
            aload 0 /* this */
            ldc "@hash"
            aload 1 /* hash */
            invokevirtual org.jruby.ext.set.RubySet.setInstanceVariable:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 132
            return
        end local 1 // org.jruby.RubyHash hash
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/ext/set/RubySet;
            0    3     1  hash  Lorg/jruby/RubyHash;
    MethodParameters:
      Name  Flags
      hash  final

  org.jruby.ext.set.RubySet newSet(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
         0: .line 135
            new org.jruby.ext.set.RubySet
            dup
            aload 1 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 2 /* set */
        start local 2 // org.jruby.ext.set.RubySet set
         1: .line 136
            aload 2 /* set */
            aload 1 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;)V
         2: .line 137
            aload 2 /* set */
            areturn
        end local 2 // org.jruby.ext.set.RubySet set
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  runtime  Lorg/jruby/Ruby;
            1    3     2      set  Lorg/jruby/ext/set/RubySet;
    MethodParameters:
         Name  Flags
      runtime  final

  private org.jruby.ext.set.RubySet newSet(org.jruby.runtime.ThreadContext, org.jruby.RubyClass, org.jruby.RubyArray);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyClass;Lorg/jruby/RubyArray;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyClass metaClass
        start local 3 // org.jruby.RubyArray elements
         0: .line 141
            new org.jruby.ext.set.RubySet
            dup
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* metaClass */
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 4 /* set */
        start local 4 // org.jruby.ext.set.RubySet set
         1: .line 142
            aload 4 /* set */
            aload 1 /* context */
            aload 3 /* elements */
            invokevirtual org.jruby.RubyArray.toJavaArrayMaybeUnsafe:()[Lorg/jruby/runtime/builtin/IRubyObject;
            iconst_0
            aload 3 /* elements */
            invokevirtual org.jruby.RubyArray.size:()I
            invokevirtual org.jruby.ext.set.RubySet.initSet:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;II)Lorg/jruby/ext/set/RubySet;
            areturn
        end local 4 // org.jruby.ext.set.RubySet set
        end local 3 // org.jruby.RubyArray elements
        end local 2 // org.jruby.RubyClass metaClass
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/ext/set/RubySet;
            0    2     1    context  Lorg/jruby/runtime/ThreadContext;
            0    2     2  metaClass  Lorg/jruby/RubyClass;
            0    2     3   elements  Lorg/jruby/RubyArray;
            1    2     4        set  Lorg/jruby/ext/set/RubySet;
    MethodParameters:
           Name  Flags
      context    final
      metaClass  final
      elements   final

  final org.jruby.ext.set.RubySet initSet(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;II)Lorg/jruby/ext/set/RubySet;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] elements
        start local 3 // int off
        start local 4 // int len
         0: .line 146
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iconst_4
            iload 4 /* len */
            invokestatic java.lang.Math.max:(II)I
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;I)V
         1: .line 147
            iload 3 /* off */
            istore 5 /* i */
        start local 5 // int i
         2: goto 5
         3: .line 148
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* elements */
            iload 5 /* i */
            aaload
            invokevirtual org.jruby.ext.set.RubySet.invokeAdd:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         4: .line 147
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 5 /* i */
            iload 4 /* len */
            if_icmplt 3
        end local 5 // int i
         6: .line 150
            aload 0 /* this */
            areturn
        end local 4 // int len
        end local 3 // int off
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] elements
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/jruby/ext/set/RubySet;
            0    7     1   context  Lorg/jruby/runtime/ThreadContext;
            0    7     2  elements  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     3       off  I
            0    7     4       len  I
            2    6     5         i  I
    MethodParameters:
          Name  Flags
      context   final
      elements  final
      off       final
      len       final

  public static org.jruby.ext.set.RubySet create(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] ary
         0: .line 158
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 160
            new org.jruby.ext.set.RubySet
            dup
            aload 3 /* runtime */
            aload 1 /* self */
            checkcast org.jruby.RubyClass
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 4 /* set */
        start local 4 // org.jruby.ext.set.RubySet set
         2: .line 161
            aload 4 /* set */
            aload 0 /* context */
            aload 2 /* ary */
            iconst_0
            aload 2 /* ary */
            arraylength
            invokevirtual org.jruby.ext.set.RubySet.initSet:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;II)Lorg/jruby/ext/set/RubySet;
            areturn
        end local 4 // org.jruby.ext.set.RubySet set
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] ary
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2      ary  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3  runtime  Lorg/jruby/Ruby;
            2    3     4      set  Lorg/jruby/ext/set/RubySet;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"[]"}, rest = true, meta = true)
    MethodParameters:
         Name  Flags
      context  final
      self     
      ary      

  public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 169
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 2
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.isVerbose:()Z
            ifeq 2
         1: .line 170
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.BLOCK_UNUSED:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "given block not used"
            invokevirtual org.jruby.common.RubyWarnings.warning:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         2: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;)V
         3: .line 173
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/set/RubySet;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
        start local 3 // org.jruby.runtime.Block block
         0: .line 181
            aload 2 /* enume */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* block */
            invokevirtual org.jruby.ext.set.RubySet.initialize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 183
      StackMap locals:
      StackMap stack:
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 3
         2: .line 184
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* enume */
            aload 3 /* block */
            invokevirtual org.jruby.ext.set.RubySet.initWithEnum:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;)V
         4: .line 188
            aload 0 /* this */
            aload 1 /* context */
            ldc "merge"
            aload 2 /* enume */
            invokevirtual org.jruby.ext.set.RubySet.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/set/RubySet;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(required = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
         Name  Flags
      context  
      enume    
      block    

  protected org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 192
            aload 2 /* args */
            arraylength
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 3
          }
         1: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* block */
            invokevirtual org.jruby.ext.set.RubySet.initialize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            aload 3 /* block */
            invokevirtual org.jruby.ext.set.RubySet.initialize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 195
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
         4: .line 196
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            arraylength
            iconst_1
            invokevirtual org.jruby.Ruby.newArgumentError:(II)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/set/RubySet;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  
      args     
      block    

  private org.jruby.runtime.builtin.IRubyObject initWithEnum(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
        start local 3 // org.jruby.runtime.Block block
         0: .line 200
            aload 2 /* enume */
            instanceof org.jruby.RubyArray
            ifeq 9
         1: .line 201
            aload 2 /* enume */
            checkcast org.jruby.RubyArray
            astore 4 /* ary */
        start local 4 // org.jruby.RubyArray ary
         2: .line 202
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;I)V
         3: .line 203
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 7
         5: .line 204
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* block */
            aload 1 /* context */
            aload 4 /* ary */
            iload 5 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.invokeAdd:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 203
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 5 /* i */
            aload 4 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            if_icmplt 5
        end local 5 // int i
         8: .line 206
            aload 4 /* ary */
            areturn
        end local 4 // org.jruby.RubyArray ary
         9: .line 209
      StackMap locals:
      StackMap stack:
            aload 2 /* enume */
            instanceof org.jruby.ext.set.RubySet
            ifeq 17
        10: .line 210
            aload 2 /* enume */
            checkcast org.jruby.ext.set.RubySet
            astore 4 /* set */
        start local 4 // org.jruby.ext.set.RubySet set
        11: .line 211
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* set */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;I)V
        12: .line 212
            aload 4 /* set */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 15
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Block org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
        13: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* elem */
        start local 5 // org.jruby.runtime.builtin.IRubyObject elem
        14: .line 213
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* block */
            aload 1 /* context */
            aload 5 /* elem */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.invokeAdd:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 5 // org.jruby.runtime.builtin.IRubyObject elem
        15: .line 212
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        16: .line 215
            aload 4 /* set */
            areturn
        end local 4 // org.jruby.ext.set.RubySet set
        17: .line 218
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Block
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
        18: .line 220
            aload 0 /* this */
            aload 4 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;)V
        19: .line 223
            aload 1 /* context */
            aload 2 /* enume */
            new org.jruby.ext.set.RubySet$2
            dup
            aload 0 /* this */
            aload 4 /* runtime */
            aload 3 /* block */
            invokespecial org.jruby.ext.set.RubySet$2.<init>:(Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;Lorg/jruby/runtime/Block;)V
            invokestatic org.jruby.ext.set.RubySet.doWithEnum:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/ext/set/RubySet$EachBody;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0     this  Lorg/jruby/ext/set/RubySet;
            0   20     1  context  Lorg/jruby/runtime/ThreadContext;
            0   20     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
            0   20     3    block  Lorg/jruby/runtime/Block;
            2    9     4      ary  Lorg/jruby/RubyArray;
            4    8     5        i  I
           11   17     4      set  Lorg/jruby/ext/set/RubySet;
           14   15     5     elem  Lorg/jruby/runtime/builtin/IRubyObject;
           18   20     4  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      context  final
      enume    final
      block    final

  private static org.jruby.runtime.builtin.IRubyObject doWithEnum(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.ext.set.RubySet$EachBody);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/ext/set/RubySet$EachBody;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject enume
        start local 2 // org.jruby.ext.set.RubySet$EachBody blockImpl
         0: .line 232
            aload 1 /* enume */
            ldc "each_entry"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 233
            aload 1 /* enume */
            aload 0 /* context */
            ldc "each_entry"
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            new org.jruby.runtime.Block
            dup
            aload 2 /* blockImpl */
            invokespecial org.jruby.runtime.Block.<init>:(Lorg/jruby/runtime/BlockBody;)V
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 235
      StackMap locals:
      StackMap stack:
            aload 1 /* enume */
            ldc "each"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 236
            aload 1 /* enume */
            aload 0 /* context */
            ldc "each"
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            new org.jruby.runtime.Block
            dup
            aload 2 /* blockImpl */
            invokespecial org.jruby.runtime.Block.<init>:(Lorg/jruby/runtime/BlockBody;)V
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         4: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "value must be enumerable"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.ext.set.RubySet$EachBody blockImpl
        end local 1 // org.jruby.runtime.builtin.IRubyObject enume
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0    context  Lorg/jruby/runtime/ThreadContext;
            0    5     1      enume  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2  blockImpl  Lorg/jruby/ext/set/RubySet$EachBody;
    MethodParameters:
           Name  Flags
      context    final
      enume      final
      blockImpl  final

  public org.jruby.runtime.builtin.IRubyObject instance_variable_set(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.builtin.IRubyObject name
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 246
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getRuntime:()Lorg/jruby/Ruby;
            ldc "@hash"
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 1 /* name */
            invokevirtual org.jruby.RubySymbol.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 247
            aload 2 /* value */
            instanceof org.jruby.RubyHash
            ifeq 3
         2: .line 248
            aload 0 /* this */
            aload 2 /* value */
            checkcast org.jruby.RubyHash
            invokevirtual org.jruby.ext.set.RubySet.setHash:(Lorg/jruby/RubyHash;)V
            aload 2 /* value */
            areturn
         3: .line 251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* value */
            invokespecial org.jruby.RubyObject.instance_variable_set:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject name
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jruby/ext/set/RubySet;
            0    4     1   name  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      name   
      value  

  org.jruby.runtime.builtin.IRubyObject invokeAdd(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject val
         0: .line 255
            aload 0 /* this */
            aload 1 /* context */
            ldc "add"
            aload 2 /* val */
            invokevirtual org.jruby.ext.set.RubySet.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject val
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      val  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  final
      val      final

  public org.jruby.runtime.builtin.IRubyObject initialize_dup(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject orig
         0: .line 285
            aload 0 /* this */
            aload 2 /* orig */
            invokespecial org.jruby.RubyObject.initialize_copy:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 286
            aload 0 /* this */
            aload 2 /* orig */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.dup:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            invokevirtual org.jruby.ext.set.RubySet.setHash:(Lorg/jruby/RubyHash;)V
         2: .line 287
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject orig
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2     orig  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      orig     

  public org.jruby.runtime.builtin.IRubyObject initialize_clone(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject orig
         0: .line 292
            aload 0 /* this */
            aload 2 /* orig */
            invokespecial org.jruby.RubyObject.initialize_copy:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 293
            aload 0 /* this */
            aload 2 /* orig */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.rbClone:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            invokevirtual org.jruby.ext.set.RubySet.setHash:(Lorg/jruby/RubyHash;)V
         2: .line 294
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject orig
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2     orig  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      orig     

  public org.jruby.runtime.builtin.IRubyObject freeze(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 300
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            astore 2 /* hash */
        start local 2 // org.jruby.RubyHash hash
         1: .line 301
            aload 2 /* hash */
            ifnull 2
            aload 2 /* hash */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 302
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            invokespecial org.jruby.RubyObject.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.RubyHash hash
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2     hash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject taint(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 308
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            astore 2 /* hash */
        start local 2 // org.jruby.RubyHash hash
         1: .line 309
            aload 2 /* hash */
            ifnull 2
            aload 2 /* hash */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.taint:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 310
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            invokespecial org.jruby.RubyObject.taint:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.RubyHash hash
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2     hash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject untaint(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 316
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            astore 2 /* hash */
        start local 2 // org.jruby.RubyHash hash
         1: .line 317
            aload 2 /* hash */
            ifnull 2
            aload 2 /* hash */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.untaint:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 318
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            invokespecial org.jruby.RubyObject.untaint:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.RubyHash hash
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2     hash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject length(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 323
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"size"}, alias = {"length"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject empty_p(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 328
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.isEmpty:()Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"empty?"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject rb_clear(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 333
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
         1: .line 335
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.clearImpl:()V
         2: .line 336
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"clear"})
    MethodParameters:
         Name  Flags
      context  

  protected void clearImpl();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 340
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.rb_clear:()Lorg/jruby/RubyHash;
            pop
         1: .line 341
            return
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/set/RubySet;

  public org.jruby.ext.set.RubySet replace(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
         0: .line 348
            aload 2 /* enume */
            instanceof org.jruby.ext.set.RubySet
            ifeq 5
         1: .line 349
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
         2: .line 350
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.clearImpl:()V
         3: .line 351
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* enume */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.addImplSet:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/set/RubySet;)V
         4: .line 352
            goto 11
         5: .line 354
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         6: .line 356
            aload 2 /* enume */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyClass.hasModuleInHierarchy:(Lorg/jruby/RubyModule;)Z
            ifne 9
         7: .line 358
            aload 2 /* enume */
            ldc "each_entry"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifne 9
         8: .line 359
            aload 3 /* runtime */
            ldc "value must be enumerable"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         9: .line 362
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.clearImpl:()V
        10: .line 363
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* enume */
            invokevirtual org.jruby.ext.set.RubySet.rb_merge:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
            pop
        end local 3 // org.jruby.Ruby runtime
        11: .line 366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/jruby/ext/set/RubySet;
            0   12     1  context  Lorg/jruby/runtime/ThreadContext;
            0   12     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
            6   11     3  runtime  Lorg/jruby/Ruby;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      enume    

  public org.jruby.RubyArray to_a(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 375
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.keys:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final

  public org.jruby.ext.set.RubySet to_set(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 381
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 4
         1: .line 382
            new org.jruby.ext.set.RubySet
            dup
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 3 /* set */
        start local 3 // org.jruby.ext.set.RubySet set
         2: .line 383
            aload 3 /* set */
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* block */
            invokevirtual org.jruby.ext.set.RubySet.initialize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         3: .line 384
            aload 3 /* set */
            areturn
        end local 3 // org.jruby.ext.set.RubySet set
         4: .line 386
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/set/RubySet;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2    block  Lorg/jruby/runtime/Block;
            2    4     3      set  Lorg/jruby/ext/set/RubySet;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.ext.set.RubySet to_set(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=4
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 392
            aload 2 /* args */
            arraylength
            ifne 1
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* block */
            invokevirtual org.jruby.ext.set.RubySet.to_set:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/ext/set/RubySet;
            areturn
         1: .line 394
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         2: .line 396
            aload 2 /* args */
            iconst_0
            aaload
            astore 5 /* klass */
        start local 5 // org.jruby.runtime.builtin.IRubyObject klass
         3: aload 4 /* runtime */
            ldc "Set"
            invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
            astore 6 /* Set */
        start local 6 // org.jruby.RubyClass Set
         4: .line 398
            aload 5 /* klass */
            aload 6 /* Set */
            if_acmpne 10
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 5
            iconst_1
            goto 6
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.RubyClass
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 7
            iconst_0
            goto 8
      StackMap locals:
      StackMap stack: int
         7: iconst_1
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.RubyClass
      StackMap stack: int int
         8: iand
            ifeq 10
         9: .line 399
            aload 0 /* this */
            areturn
        10: .line 403
      StackMap locals:
      StackMap stack:
            aload 5 /* klass */
            instanceof org.jruby.RubyClass
            ifeq 13
        11: .line 404
            aload 2 /* args */
            iconst_1
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            invokestatic org.jruby.util.ArraySupport.newCopy:([Lorg/jruby/runtime/builtin/IRubyObject;II)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* rest */
        start local 7 // org.jruby.runtime.builtin.IRubyObject[] rest
        12: .line 405
            goto 14
        end local 7 // org.jruby.runtime.builtin.IRubyObject[] rest
        13: .line 407
      StackMap locals:
      StackMap stack:
            aload 6 /* Set */
            astore 5 /* klass */
            aload 2 /* args */
            astore 7 /* rest */
        start local 7 // org.jruby.runtime.builtin.IRubyObject[] rest
        14: .line 410
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack:
            new org.jruby.ext.set.RubySet
            dup
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 5 /* klass */
            checkcast org.jruby.RubyClass
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 8 /* set */
        start local 8 // org.jruby.ext.set.RubySet set
        15: .line 411
            aload 8 /* set */
            aload 1 /* context */
            aload 7 /* rest */
            aload 3 /* block */
            invokevirtual org.jruby.ext.set.RubySet.initialize:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        16: .line 412
            aload 8 /* set */
            areturn
        end local 8 // org.jruby.ext.set.RubySet set
        end local 7 // org.jruby.runtime.builtin.IRubyObject[] rest
        end local 6 // org.jruby.RubyClass Set
        end local 5 // org.jruby.runtime.builtin.IRubyObject klass
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Lorg/jruby/ext/set/RubySet;
            0   17     1  context  Lorg/jruby/runtime/ThreadContext;
            0   17     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   17     3    block  Lorg/jruby/runtime/Block;
            2   17     4  runtime  Lorg/jruby/Ruby;
            3   17     5    klass  Lorg/jruby/runtime/builtin/IRubyObject;
            4   17     6      Set  Lorg/jruby/RubyClass;
           12   13     7     rest  [Lorg/jruby/runtime/builtin/IRubyObject;
           14   17     7     rest  [Lorg/jruby/runtime/builtin/IRubyObject;
           15   17     8      set  Lorg/jruby/ext/set/RubySet;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(rest = true)
    MethodParameters:
         Name  Flags
      context  final
      args     final
      block    final

  public org.jruby.runtime.builtin.IRubyObject compare_by_identity(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 417
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.compare_by_identity:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 418
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject compare_by_identity_p(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 423
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.compare_by_identity_p:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"compare_by_identity?"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.ext.set.RubySet flatten_merge(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
         0: .line 428
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* set */
            new java.util.IdentityHashMap
            dup
            invokespecial java.util.IdentityHashMap.<init>:()V
            invokevirtual org.jruby.ext.set.RubySet.flattenMerge:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/IdentityHashMap;)V
         1: .line 429
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(visibility = org.jruby.runtime.Visibility.PROTECTED:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
         Name  Flags
      context  final
      set      

  private void flattenMerge(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.util.IdentityHashMap);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/IdentityHashMap;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=6, args_size=4
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
        start local 3 // java.util.IdentityHashMap seen
         0: .line 433
            aload 2 /* set */
            instanceof org.jruby.ext.set.RubySet
            ifeq 6
         1: .line 434
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 4
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject java.util.IdentityHashMap top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 4 /* e */
        start local 4 // org.jruby.runtime.builtin.IRubyObject e
         3: .line 435
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* seen */
            aload 4 /* e */
            invokevirtual org.jruby.ext.set.RubySet.addFlattened:(Lorg/jruby/runtime/ThreadContext;Ljava/util/IdentityHashMap;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 4 // org.jruby.runtime.builtin.IRubyObject e
         4: .line 434
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 437
            goto 9
         6: .line 439
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject java.util.IdentityHashMap
      StackMap stack:
            aload 2 /* set */
            aload 1 /* context */
            ldc "each"
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            new org.jruby.runtime.Block
            dup
         7: .line 440
            new org.jruby.ext.set.RubySet$3
            dup
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* seen */
            invokespecial org.jruby.ext.set.RubySet$3.<init>:(Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;Ljava/util/IdentityHashMap;)V
            invokespecial org.jruby.runtime.Block.<init>:(Lorg/jruby/runtime/BlockBody;)V
         8: .line 439
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         9: .line 447
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.util.IdentityHashMap seen
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/jruby/ext/set/RubySet;
            0   10     1  context  Lorg/jruby/runtime/ThreadContext;
            0   10     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
            0   10     3     seen  Ljava/util/IdentityHashMap;
            3    4     4        e  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  final
      set      final
      seen     final

  private void addFlattened(org.jruby.runtime.ThreadContext, java.util.IdentityHashMap, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/util/IdentityHashMap;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // java.util.IdentityHashMap seen
        start local 3 // org.jruby.runtime.builtin.IRubyObject e
         0: .line 450
            aload 3 /* e */
            instanceof org.jruby.ext.set.RubySet
            ifeq 7
         1: .line 451
            aload 2 /* seen */
            aload 3 /* e */
            invokevirtual java.util.IdentityHashMap.containsKey:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 452
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "tried to flatten recursive Set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 454
      StackMap locals:
      StackMap stack:
            aload 2 /* seen */
            aload 3 /* e */
            aconst_null
            invokevirtual java.util.IdentityHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 455
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* e */
            aload 2 /* seen */
            invokevirtual org.jruby.ext.set.RubySet.flattenMerge:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/IdentityHashMap;)V
         5: .line 456
            aload 2 /* seen */
            aload 3 /* e */
            invokevirtual java.util.IdentityHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 457
            goto 8
         7: .line 459
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* e */
            invokevirtual org.jruby.ext.set.RubySet.add:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
            pop
         8: .line 461
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.runtime.builtin.IRubyObject e
        end local 2 // java.util.IdentityHashMap seen
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/ext/set/RubySet;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
            0    9     2     seen  Ljava/util/IdentityHashMap;
            0    9     3        e  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  final
      seen     final
      e        

  public org.jruby.ext.set.RubySet flatten(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 466
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ext.set.RubySet.newSet:(Lorg/jruby/Ruby;)Lorg/jruby/ext/set/RubySet;
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.flatten_merge:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final

  public org.jruby.runtime.builtin.IRubyObject flatten_bang(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 471
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 2 /* e */
        start local 2 // org.jruby.runtime.builtin.IRubyObject e
         2: .line 472
            aload 2 /* e */
            instanceof org.jruby.ext.set.RubySet
            ifeq 4
         3: .line 473
            aload 0 /* this */
            aload 1 /* context */
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.set.RubySet.flatten:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/ext/set/RubySet;
            invokevirtual org.jruby.ext.set.RubySet.replace:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject e
         4: .line 471
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 476
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/ext/set/RubySet;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            2    4     2        e  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"flatten!"})
    MethodParameters:
         Name  Flags
      context  final

  public org.jruby.RubyBoolean include_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 484
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 2 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"include?"}, alias = {"member?", "==="})
    MethodParameters:
         Name  Flags
      context  final
      obj      

  final boolean containsImpl(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 488
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* obj */
            invokevirtual org.jruby.RubyHash.fastARef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/set/RubySet;
            0    2     1   obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      obj   

  private boolean allElementsIncluded(org.jruby.ext.set.RubySet);
    descriptor: (Lorg/jruby/ext/set/RubySet;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.ext.set.RubySet set
         0: .line 492
            aload 1 /* set */
            invokevirtual org.jruby.ext.set.RubySet.elements:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 2 /* o */
        start local 2 // org.jruby.runtime.builtin.IRubyObject o
         2: .line 493
            aload 0 /* this */
            aload 2 /* o */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 3
            iconst_0
            ireturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject o
         3: .line 492
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 495
            iconst_1
            ireturn
        end local 1 // org.jruby.ext.set.RubySet set
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/ext/set/RubySet;
            0    5     1   set  Lorg/jruby/ext/set/RubySet;
            2    3     2     o  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      set   final

  public org.jruby.runtime.builtin.IRubyObject superset_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
         0: .line 501
            aload 2 /* set */
            instanceof org.jruby.ext.set.RubySet
            ifeq 7
         1: .line 502
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            aload 2 /* set */
            invokevirtual org.jruby.RubyClass.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         2: .line 503
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.op_ge:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 506
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
         4: .line 507
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmplt 5
            aload 0 /* this */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.allElementsIncluded:(Lorg/jruby/ext/set/RubySet;)Z
            ifeq 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         5: iconst_0
         6: .line 506
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
         7: .line 510
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "value must be a set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/set/RubySet;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"superset?"}, alias = {">="})
    MethodParameters:
         Name  Flags
      context  final
      set      

  public org.jruby.runtime.builtin.IRubyObject proper_superset_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
         0: .line 516
            aload 2 /* set */
            instanceof org.jruby.ext.set.RubySet
            ifeq 7
         1: .line 517
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            aload 2 /* set */
            invokevirtual org.jruby.RubyClass.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         2: .line 518
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.op_gt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 521
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
         4: .line 522
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmple 5
            aload 0 /* this */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.allElementsIncluded:(Lorg/jruby/ext/set/RubySet;)Z
            ifeq 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         5: iconst_0
         6: .line 521
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
         7: .line 525
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "value must be a set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/set/RubySet;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"proper_superset?"}, alias = {">"})
    MethodParameters:
         Name  Flags
      context  final
      set      

  public org.jruby.runtime.builtin.IRubyObject subset_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
         0: .line 530
            aload 2 /* set */
            instanceof org.jruby.ext.set.RubySet
            ifeq 7
         1: .line 531
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            aload 2 /* set */
            invokevirtual org.jruby.RubyClass.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         2: .line 532
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.op_le:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 535
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
         4: .line 536
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmpgt 5
            aload 0 /* this */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.allElementsIncluded:(Lorg/jruby/ext/set/RubySet;)Z
            ifeq 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         5: iconst_0
         6: .line 535
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
         7: .line 539
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "value must be a set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/set/RubySet;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"subset?"}, alias = {"<="})
    MethodParameters:
         Name  Flags
      context  final
      set      

  public org.jruby.runtime.builtin.IRubyObject proper_subset_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
         0: .line 544
            aload 2 /* set */
            instanceof org.jruby.ext.set.RubySet
            ifeq 7
         1: .line 545
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            aload 2 /* set */
            invokevirtual org.jruby.RubyClass.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         2: .line 546
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.op_lt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 549
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
         4: .line 550
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmpge 5
            aload 0 /* this */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.allElementsIncluded:(Lorg/jruby/ext/set/RubySet;)Z
            ifeq 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         5: iconst_0
         6: .line 549
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
         7: .line 553
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "value must be a set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/set/RubySet;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"proper_subset?"}, alias = {"<"})
    MethodParameters:
         Name  Flags
      context  final
      set      

  public org.jruby.runtime.builtin.IRubyObject intersect_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
         0: .line 561
            aload 2 /* set */
            instanceof org.jruby.ext.set.RubySet
            ifeq 2
         1: .line 562
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.intersect:(Lorg/jruby/ext/set/RubySet;)Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
         2: .line 564
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "value must be a set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"intersect?"})
    MethodParameters:
         Name  Flags
      context  final
      set      

  public boolean intersect(org.jruby.ext.set.RubySet);
    descriptor: (Lorg/jruby/ext/set/RubySet;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.ext.set.RubySet set
         0: .line 568
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            aload 1 /* set */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmpge 6
         1: .line 570
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 2 /* o */
        start local 2 // org.jruby.runtime.builtin.IRubyObject o
         3: .line 571
            aload 1 /* set */
            aload 2 /* o */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 4
            iconst_1
            ireturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject o
         4: .line 570
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 573
            goto 10
         6: .line 576
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.ext.set.RubySet
      StackMap stack:
            aload 1 /* set */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
         7: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 2 /* o */
        start local 2 // org.jruby.runtime.builtin.IRubyObject o
         8: .line 577
            aload 0 /* this */
            aload 2 /* o */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 9
            iconst_1
            ireturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject o
         9: .line 576
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 580
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.ext.set.RubySet
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.jruby.ext.set.RubySet set
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/jruby/ext/set/RubySet;
            0   11     1   set  Lorg/jruby/ext/set/RubySet;
            3    4     2     o  Lorg/jruby/runtime/builtin/IRubyObject;
            8    9     2     o  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      set   final

  public org.jruby.runtime.builtin.IRubyObject disjoint_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject set
         0: .line 589
            aload 2 /* set */
            instanceof org.jruby.ext.set.RubySet
            ifeq 4
         1: .line 590
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 2 /* set */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.intersect:(Lorg/jruby/ext/set/RubySet;)Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         2: iconst_1
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
         3: invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
         4: .line 592
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "value must be a set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/set/RubySet;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"disjoint?"})
    MethodParameters:
         Name  Flags
      context  final
      set      

  public org.jruby.runtime.builtin.IRubyObject each(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 597
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 598
            aload 1 /* context */
            aload 0 /* this */
            ldc "each"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 601
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 3 /* elem */
        start local 3 // org.jruby.runtime.builtin.IRubyObject elem
         4: aload 2 /* block */
            aload 1 /* context */
            aload 3 /* elem */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 3 // org.jruby.runtime.builtin.IRubyObject elem
      StackMap locals:
      StackMap stack:
         5: aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 602
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/jruby/ext/set/RubySet;
            0    7     1  context  Lorg/jruby/runtime/ThreadContext;
            0    7     2    block  Lorg/jruby/runtime/Block;
            4    5     3     elem  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    

  private org.jruby.RubyEnumerator$SizeFn enumSize();
    descriptor: ()Lorg/jruby/RubyEnumerator$SizeFn;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 606
            new org.jruby.ext.set.RubySet$4
            dup
            aload 0 /* this */
            invokespecial org.jruby.ext.set.RubySet$4.<init>:(Lorg/jruby/ext/set/RubySet;)V
            areturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;

  public org.jruby.ext.set.RubySet add(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 619
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
         1: .line 620
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 621
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"add"}, alias = {"<<"})
    MethodParameters:
         Name  Flags
      context  final
      obj      

  protected void addImpl(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 625
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* runtime */
            aload 2 /* obj */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getTrue:()Lorg/jruby/RubyBoolean;
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 626
            return
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  final
      obj      final

  protected void addImplSet(org.jruby.runtime.ThreadContext, org.jruby.ext.set.RubySet);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/set/RubySet;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.ext.set.RubySet set
         0: .line 630
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 2 /* set */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyHash.merge_bang:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            pop
         1: .line 631
            return
        end local 2 // org.jruby.ext.set.RubySet set
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      set  Lorg/jruby/ext/set/RubySet;
    MethodParameters:
         Name  Flags
      context  final
      set      final

  public org.jruby.runtime.builtin.IRubyObject add_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 639
            aload 0 /* this */
            aload 2 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 640
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.add:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"add?"})
    MethodParameters:
         Name  Flags
      context  final
      obj      

  public org.jruby.runtime.builtin.IRubyObject delete(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 645
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
         1: .line 646
            aload 0 /* this */
            aload 2 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.deleteImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            pop
         2: .line 647
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      obj      

  protected boolean deleteImpl(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 651
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 652
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* obj */
            invokevirtual org.jruby.RubyHash.fastDelete:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ireturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/set/RubySet;
            0    2     1   obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      obj   final

  protected void deleteImplIterator(org.jruby.runtime.builtin.IRubyObject, java.util.Iterator);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/Iterator;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
        start local 2 // java.util.Iterator it
         0: .line 656
            aload 2 /* it */
            invokeinterface java.util.Iterator.remove:()V
         1: .line 657
            return
        end local 2 // java.util.Iterator it
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/set/RubySet;
            0    2     1   obj  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2    it  Ljava/util/Iterator;
    MethodParameters:
      Name  Flags
      obj   final
      it    final

  public org.jruby.runtime.builtin.IRubyObject delete_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 665
            aload 0 /* this */
            aload 2 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 666
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.delete:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"delete?"})
    MethodParameters:
         Name  Flags
      context  final
      obj      

  public org.jruby.runtime.builtin.IRubyObject delete_if(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 671
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 672
            aload 1 /* context */
            aload 0 /* this */
            ldc "delete_if"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 675
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3 /* it */
        start local 3 // java.util.Iterator it
         3: .line 676
            goto 6
         4: .line 677
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 4 /* elem */
        start local 4 // org.jruby.runtime.builtin.IRubyObject elem
         5: .line 678
            aload 2 /* block */
            aload 1 /* context */
            aload 4 /* elem */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 6
            aload 0 /* this */
            aload 4 /* elem */
            aload 3 /* it */
            invokevirtual org.jruby.ext.set.RubySet.deleteImplIterator:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/Iterator;)V
        end local 4 // org.jruby.runtime.builtin.IRubyObject elem
         6: .line 676
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 680
            aload 0 /* this */
            areturn
        end local 3 // java.util.Iterator it
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/set/RubySet;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2    block  Lorg/jruby/runtime/Block;
            3    8     3       it  Ljava/util/Iterator<Lorg/jruby/runtime/builtin/IRubyObject;>;
            5    6     4     elem  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    

  public org.jruby.runtime.builtin.IRubyObject keep_if(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 685
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 686
            aload 1 /* context */
            aload 0 /* this */
            ldc "keep_if"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 689
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3 /* it */
        start local 3 // java.util.Iterator it
         3: .line 690
            goto 6
         4: .line 691
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 4 /* elem */
        start local 4 // org.jruby.runtime.builtin.IRubyObject elem
         5: .line 692
            aload 2 /* block */
            aload 1 /* context */
            aload 4 /* elem */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifne 6
            aload 0 /* this */
            aload 4 /* elem */
            aload 3 /* it */
            invokevirtual org.jruby.ext.set.RubySet.deleteImplIterator:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/Iterator;)V
        end local 4 // org.jruby.runtime.builtin.IRubyObject elem
         6: .line 690
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 694
            aload 0 /* this */
            areturn
        end local 3 // java.util.Iterator it
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/set/RubySet;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2    block  Lorg/jruby/runtime/Block;
            3    8     3       it  Ljava/util/Iterator<Lorg/jruby/runtime/builtin/IRubyObject;>;
            5    6     4     elem  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    

  public org.jruby.runtime.builtin.IRubyObject collect_bang(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 699
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 700
            aload 1 /* context */
            aload 0 /* this */
            ldc "collect!"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 703
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.set.RubySet.to_a:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            astore 3 /* elems */
        start local 3 // org.jruby.RubyArray elems
         3: aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.clearImpl:()V
         4: .line 704
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 8
         6: .line 705
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* block */
            aload 1 /* context */
            aload 3 /* elems */
            iload 4 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
         7: .line 704
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            aload 3 /* elems */
            invokevirtual org.jruby.RubyArray.size:()I
            if_icmplt 6
        end local 4 // int i
         9: .line 707
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.RubyArray elems
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/jruby/ext/set/RubySet;
            0   10     1  context  Lorg/jruby/runtime/ThreadContext;
            0   10     2    block  Lorg/jruby/runtime/Block;
            3   10     3    elems  Lorg/jruby/RubyArray;
            5    9     4        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"collect!"}, alias = {"map!"})
    MethodParameters:
         Name  Flags
      context  final
      block    

  public org.jruby.runtime.builtin.IRubyObject reject_bang(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 713
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 714
            aload 1 /* context */
            aload 0 /* this */
            ldc "reject!"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 717
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            istore 3 /* size */
        start local 3 // int size
         3: .line 718
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4 /* it */
        start local 4 // java.util.Iterator it
         4: .line 719
            goto 7
         5: .line 720
      StackMap locals: int java.util.Iterator
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* elem */
        start local 5 // org.jruby.runtime.builtin.IRubyObject elem
         6: .line 721
            aload 2 /* block */
            aload 1 /* context */
            aload 5 /* elem */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 7
            aload 0 /* this */
            aload 5 /* elem */
            aload 4 /* it */
            invokevirtual org.jruby.ext.set.RubySet.deleteImplIterator:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/Iterator;)V
        end local 5 // org.jruby.runtime.builtin.IRubyObject elem
         7: .line 719
      StackMap locals:
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 723
            iload 3 /* size */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmpne 9
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 0 /* this */
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
        10: areturn
        end local 4 // java.util.Iterator it
        end local 3 // int size
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/ext/set/RubySet;
            0   11     1  context  Lorg/jruby/runtime/ThreadContext;
            0   11     2    block  Lorg/jruby/runtime/Block;
            3   11     3     size  I
            4   11     4       it  Ljava/util/Iterator<Lorg/jruby/runtime/builtin/IRubyObject;>;
            6    7     5     elem  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"reject!"})
    MethodParameters:
         Name  Flags
      context  final
      block    

  public org.jruby.runtime.builtin.IRubyObject select_bang(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 729
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 730
            aload 1 /* context */
            aload 0 /* this */
            ldc "select!"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            istore 3 /* size */
        start local 3 // int size
         3: .line 734
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4 /* it */
        start local 4 // java.util.Iterator it
         4: .line 735
            goto 7
         5: .line 736
      StackMap locals: int java.util.Iterator
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* elem */
        start local 5 // org.jruby.runtime.builtin.IRubyObject elem
         6: .line 737
            aload 2 /* block */
            aload 1 /* context */
            aload 5 /* elem */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifne 7
            aload 0 /* this */
            aload 5 /* elem */
            aload 4 /* it */
            invokevirtual org.jruby.ext.set.RubySet.deleteImplIterator:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/Iterator;)V
        end local 5 // org.jruby.runtime.builtin.IRubyObject elem
         7: .line 735
      StackMap locals:
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 739
            iload 3 /* size */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmpne 9
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 0 /* this */
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
        10: areturn
        end local 4 // java.util.Iterator it
        end local 3 // int size
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/ext/set/RubySet;
            0   11     1  context  Lorg/jruby/runtime/ThreadContext;
            0   11     2    block  Lorg/jruby/runtime/Block;
            3   11     3     size  I
            4   11     4       it  Ljava/util/Iterator<Lorg/jruby/runtime/builtin/IRubyObject;>;
            6    7     5     elem  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"select!"})
    MethodParameters:
         Name  Flags
      context  final
      block    

  public org.jruby.ext.set.RubySet rb_merge(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
         0: .line 747
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 749
            aload 2 /* enume */
            instanceof org.jruby.ext.set.RubySet
            ifeq 5
         2: .line 750
            aload 0 /* this */
            aload 3 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
         3: .line 751
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* enume */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.addImplSet:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/set/RubySet;)V
         4: .line 752
            goto 15
         5: .line 753
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 2 /* enume */
            instanceof org.jruby.RubyArray
            ifeq 14
         6: .line 754
            aload 0 /* this */
            aload 3 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
         7: .line 755
            aload 2 /* enume */
            checkcast org.jruby.RubyArray
            astore 4 /* ary */
        start local 4 // org.jruby.RubyArray ary
         8: .line 756
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: goto 12
        10: .line 757
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* runtime */
            aload 4 /* ary */
            iload 5 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
        11: .line 756
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            aload 4 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            if_icmplt 10
        end local 5 // int i
        end local 4 // org.jruby.RubyArray ary
        13: .line 759
            goto 15
        14: .line 761
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 2 /* enume */
            new org.jruby.ext.set.RubySet$5
            dup
            aload 0 /* this */
            aload 3 /* runtime */
            invokespecial org.jruby.ext.set.RubySet$5.<init>:(Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;)V
            invokestatic org.jruby.ext.set.RubySet.doWithEnum:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/ext/set/RubySet$EachBody;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        15: .line 768
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lorg/jruby/ext/set/RubySet;
            0   16     1  context  Lorg/jruby/runtime/ThreadContext;
            0   16     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
            1   16     3  runtime  Lorg/jruby/Ruby;
            8   13     4      ary  Lorg/jruby/RubyArray;
            9   13     5        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"merge"})
    MethodParameters:
         Name  Flags
      context  final
      enume    

  public org.jruby.runtime.builtin.IRubyObject subtract(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
         0: .line 776
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 778
            aload 2 /* enume */
            instanceof org.jruby.ext.set.RubySet
            ifeq 8
         2: .line 779
            aload 0 /* this */
            aload 3 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
         3: .line 780
            aload 2 /* enume */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 4 /* elem */
        start local 4 // org.jruby.runtime.builtin.IRubyObject elem
         5: .line 781
            aload 0 /* this */
            aload 4 /* elem */
            invokevirtual org.jruby.ext.set.RubySet.deleteImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            pop
        end local 4 // org.jruby.runtime.builtin.IRubyObject elem
         6: .line 780
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 783
            goto 18
         8: .line 784
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby
      StackMap stack:
            aload 2 /* enume */
            instanceof org.jruby.RubyArray
            ifeq 17
         9: .line 785
            aload 0 /* this */
            aload 3 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.modifyCheck:(Lorg/jruby/Ruby;)V
        10: .line 786
            aload 2 /* enume */
            checkcast org.jruby.RubyArray
            astore 4 /* ary */
        start local 4 // org.jruby.RubyArray ary
        11: .line 787
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        12: goto 15
        13: .line 788
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* ary */
            iload 5 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.deleteImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            pop
        14: .line 787
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 5 /* i */
            aload 4 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            if_icmplt 13
        end local 5 // int i
        end local 4 // org.jruby.RubyArray ary
        16: .line 790
            goto 18
        17: .line 792
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 2 /* enume */
            new org.jruby.ext.set.RubySet$6
            dup
            aload 0 /* this */
            aload 3 /* runtime */
            invokespecial org.jruby.ext.set.RubySet$6.<init>:(Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;)V
            invokestatic org.jruby.ext.set.RubySet.doWithEnum:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/ext/set/RubySet$EachBody;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        18: .line 799
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/jruby/ext/set/RubySet;
            0   19     1  context  Lorg/jruby/runtime/ThreadContext;
            0   19     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
            1   19     3  runtime  Lorg/jruby/Ruby;
            5    6     4     elem  Lorg/jruby/runtime/builtin/IRubyObject;
           11   16     4      ary  Lorg/jruby/RubyArray;
           12   16     5        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"subtract"})
    MethodParameters:
         Name  Flags
      context  final
      enume    

  public org.jruby.runtime.builtin.IRubyObject op_or(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
         0: .line 807
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.ext.set.RubySet
            aload 1 /* context */
            aload 2 /* enume */
            invokevirtual org.jruby.ext.set.RubySet.rb_merge:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/set/RubySet;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"|"}, alias = {"+", "union"})
    MethodParameters:
         Name  Flags
      context  final
      enume    

  public org.jruby.runtime.builtin.IRubyObject op_diff(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
         0: .line 815
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.ext.set.RubySet
            aload 1 /* context */
            aload 2 /* enume */
            invokevirtual org.jruby.ext.set.RubySet.subtract:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"-"}, alias = {"difference"})
    MethodParameters:
         Name  Flags
      context  final
      enume    

  public org.jruby.runtime.builtin.IRubyObject op_and(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
         0: .line 823
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 825
            new org.jruby.ext.set.RubySet
            dup
            aload 3 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 4 /* newSet */
        start local 4 // org.jruby.ext.set.RubySet newSet
         2: .line 826
            aload 2 /* enume */
            instanceof org.jruby.ext.set.RubySet
            ifeq 9
         3: .line 827
            aload 4 /* newSet */
            aload 3 /* runtime */
            aload 2 /* enume */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;I)V
         4: .line 828
            aload 2 /* enume */
            checkcast org.jruby.ext.set.RubySet
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 7
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* obj */
        start local 5 // org.jruby.runtime.builtin.IRubyObject obj
         6: .line 829
            aload 0 /* this */
            aload 5 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 7
            aload 4 /* newSet */
            aload 3 /* runtime */
            aload 5 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 5 // org.jruby.runtime.builtin.IRubyObject obj
         7: .line 828
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 831
            goto 21
         9: .line 832
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.ext.set.RubySet
      StackMap stack:
            aload 2 /* enume */
            instanceof org.jruby.RubyArray
            ifeq 19
        10: .line 833
            aload 2 /* enume */
            checkcast org.jruby.RubyArray
            astore 5 /* ary */
        start local 5 // org.jruby.RubyArray ary
        11: .line 834
            aload 4 /* newSet */
            aload 3 /* runtime */
            aload 5 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;I)V
        12: .line 835
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        13: goto 17
        14: .line 836
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 5 /* ary */
            iload 6 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* obj */
        start local 7 // org.jruby.runtime.builtin.IRubyObject obj
        15: .line 837
            aload 0 /* this */
            aload 7 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 16
            aload 4 /* newSet */
            aload 3 /* runtime */
            aload 7 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 7 // org.jruby.runtime.builtin.IRubyObject obj
        16: .line 835
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 6 /* i */
            aload 5 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            if_icmplt 14
        end local 6 // int i
        end local 5 // org.jruby.RubyArray ary
        18: .line 839
            goto 21
        19: .line 841
      StackMap locals:
      StackMap stack:
            aload 4 /* newSet */
            aload 3 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;)V
        20: .line 843
            aload 1 /* context */
            aload 2 /* enume */
            new org.jruby.ext.set.RubySet$7
            dup
            aload 0 /* this */
            aload 3 /* runtime */
            aload 4 /* newSet */
            aload 3 /* runtime */
            invokespecial org.jruby.ext.set.RubySet$7.<init>:(Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;)V
            invokestatic org.jruby.ext.set.RubySet.doWithEnum:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/ext/set/RubySet$EachBody;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        21: .line 851
      StackMap locals:
      StackMap stack:
            aload 4 /* newSet */
            areturn
        end local 4 // org.jruby.ext.set.RubySet newSet
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   22     0     this  Lorg/jruby/ext/set/RubySet;
            0   22     1  context  Lorg/jruby/runtime/ThreadContext;
            0   22     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
            1   22     3  runtime  Lorg/jruby/Ruby;
            2   22     4   newSet  Lorg/jruby/ext/set/RubySet;
            6    7     5      obj  Lorg/jruby/runtime/builtin/IRubyObject;
           11   18     5      ary  Lorg/jruby/RubyArray;
           13   18     6        i  I
           15   16     7      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"&"}, alias = {"intersection"})
    MethodParameters:
         Name  Flags
      context  final
      enume    

  public org.jruby.runtime.builtin.IRubyObject op_xor(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject enume
         0: .line 860
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 862
            new org.jruby.ext.set.RubySet
            dup
            aload 3 /* runtime */
            aload 3 /* runtime */
            ldc "Set"
            invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 4 /* newSet */
        start local 4 // org.jruby.ext.set.RubySet newSet
         2: .line 863
            aload 4 /* newSet */
            aload 1 /* context */
            aload 2 /* enume */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.ext.set.RubySet.initialize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         3: .line 864
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 7
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* o */
        start local 5 // org.jruby.runtime.builtin.IRubyObject o
         5: .line 865
            aload 4 /* newSet */
            aload 5 /* o */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 6
            aload 4 /* newSet */
            aload 5 /* o */
            invokevirtual org.jruby.ext.set.RubySet.deleteImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            pop
            goto 7
         6: .line 866
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.ext.set.RubySet org.jruby.runtime.builtin.IRubyObject java.util.Iterator
      StackMap stack:
            aload 4 /* newSet */
            aload 3 /* runtime */
            aload 5 /* o */
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 5 // org.jruby.runtime.builtin.IRubyObject o
         7: .line 864
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 869
            aload 4 /* newSet */
            areturn
        end local 4 // org.jruby.ext.set.RubySet newSet
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject enume
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/ext/set/RubySet;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
            0    9     2    enume  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     3  runtime  Lorg/jruby/Ruby;
            2    9     4   newSet  Lorg/jruby/ext/set/RubySet;
            5    7     5        o  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"^"})
    MethodParameters:
         Name  Flags
      context  final
      enume    

  public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 875
            aload 0 /* this */
            aload 2 /* other */
            if_acmpne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
         1: .line 876
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            aload 2 /* other */
            invokevirtual org.jruby.RubyClass.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         2: .line 877
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 2 /* other */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.op_equal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 879
      StackMap locals:
      StackMap stack:
            aload 2 /* other */
            instanceof org.jruby.ext.set.RubySet
            ifeq 11
         4: .line 880
            aload 2 /* other */
            checkcast org.jruby.ext.set.RubySet
            astore 3 /* that */
        start local 3 // org.jruby.ext.set.RubySet that
         5: .line 881
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            aload 3 /* that */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmpne 11
         6: .line 882
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 9
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
         7: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 4 /* obj */
        start local 4 // org.jruby.runtime.builtin.IRubyObject obj
         8: .line 883
            aload 3 /* that */
            aload 4 /* obj */
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 9
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject obj
         9: .line 882
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 885
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // org.jruby.ext.set.RubySet that
        11: .line 888
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/jruby/ext/set/RubySet;
            0   12     1  context  Lorg/jruby/runtime/ThreadContext;
            0   12     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
            5   11     3     that  Lorg/jruby/ext/set/RubySet;
            8    9     4      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"=="})
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.runtime.builtin.IRubyObject reset(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 893
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.rehash:()Lorg/jruby/RubyHash;
            pop
         1: .line 894
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"reset"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject op_eql(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 899
            aload 2 /* other */
            instanceof org.jruby.ext.set.RubySet
            ifeq 2
         1: .line 900
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 2 /* other */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.op_eql:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 902
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"eql?"})
    MethodParameters:
         Name  Flags
      context  
      other    

  public boolean eql(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 907
            aload 1 /* other */
            instanceof org.jruby.ext.set.RubySet
            ifeq 4
         1: .line 908
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         2: .line 909
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* other */
            checkcast org.jruby.ext.set.RubySet
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.op_eql:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getTrue:()Lorg/jruby/RubyBoolean;
            if_acmpne 3
            iconst_1
            ireturn
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // org.jruby.Ruby runtime
         4: .line 911
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject other
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/set/RubySet;
            0    5     1    other  Lorg/jruby/runtime/builtin/IRubyObject;
            2    4     2  runtime  Lorg/jruby/Ruby;
    MethodParameters:
       Name  Flags
      other  

  public org.jruby.RubyFixnum hash();
    descriptor: ()Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 917
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.hash:()Lorg/jruby/RubyFixnum;
            areturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public org.jruby.runtime.builtin.IRubyObject classify(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 922
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 923
            aload 1 /* context */
            aload 0 /* this */
            ldc "classify"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 926
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         3: .line 928
            new org.jruby.RubyHash
            dup
            aload 3 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;I)V
            astore 4 /* h */
        start local 4 // org.jruby.RubyHash h
         4: .line 930
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 11
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyHash top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* i */
        start local 5 // org.jruby.runtime.builtin.IRubyObject i
         6: .line 931
            aload 2 /* block */
            aload 1 /* context */
            aload 5 /* i */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* key */
        start local 7 // org.jruby.runtime.builtin.IRubyObject key
         7: .line 933
            aload 4 /* h */
            aload 7 /* key */
            invokevirtual org.jruby.RubyHash.fastARef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            dup
            astore 8 /* set */
        start local 8 // org.jruby.runtime.builtin.IRubyObject set
         8: ifnonnull 10
         9: .line 934
            aload 4 /* h */
            aload 7 /* key */
            aload 0 /* this */
            aload 3 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.newSet:(Lorg/jruby/Ruby;)Lorg/jruby/ext/set/RubySet;
            dup
            astore 8 /* set */
            invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        10: .line 936
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyHash org.jruby.runtime.builtin.IRubyObject java.util.Iterator org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 8 /* set */
            checkcast org.jruby.ext.set.RubySet
            aload 1 /* context */
            aload 5 /* i */
            invokevirtual org.jruby.ext.set.RubySet.invokeAdd:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 8 // org.jruby.runtime.builtin.IRubyObject set
        end local 7 // org.jruby.runtime.builtin.IRubyObject key
        end local 5 // org.jruby.runtime.builtin.IRubyObject i
        11: .line 930
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyHash top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        12: .line 939
            aload 4 /* h */
            areturn
        end local 4 // org.jruby.RubyHash h
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/jruby/ext/set/RubySet;
            0   13     1  context  Lorg/jruby/runtime/ThreadContext;
            0   13     2    block  Lorg/jruby/runtime/Block;
            3   13     3  runtime  Lorg/jruby/Ruby;
            4   13     4        h  Lorg/jruby/RubyHash;
            6   11     5        i  Lorg/jruby/runtime/builtin/IRubyObject;
            7   11     7      key  Lorg/jruby/runtime/builtin/IRubyObject;
            8   11     8      set  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"classify"})
    MethodParameters:
         Name  Flags
      context  
      block    final

  public org.jruby.runtime.builtin.IRubyObject divide(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 962
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 963
            aload 1 /* context */
            aload 0 /* this */
            ldc "divide"
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.enumSize:()Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 966
      StackMap locals:
      StackMap stack:
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.getSignature:()Lorg/jruby/runtime/Signature;
            invokevirtual org.jruby.runtime.Signature.arityValue:()I
            iconst_2
            if_icmpne 4
         3: .line 967
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.ext.set.RubySet.divideTSort:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         4: .line 970
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         5: .line 972
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.ext.set.RubySet.classify:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            astore 4 /* vals */
        start local 4 // org.jruby.RubyHash vals
         6: .line 973
            new org.jruby.ext.set.RubySet
            dup
            aload 3 /* runtime */
            aload 3 /* runtime */
            ldc "Set"
            invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 5 /* set */
        start local 5 // org.jruby.ext.set.RubySet set
         7: .line 974
            aload 5 /* set */
            aload 3 /* runtime */
            aload 4 /* vals */
            invokevirtual org.jruby.RubyHash.size:()I
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;I)V
         8: .line 975
            aload 4 /* vals */
            invokevirtual org.jruby.RubyHash.directValues:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 11
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyHash org.jruby.ext.set.RubySet top java.util.Iterator
      StackMap stack:
         9: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 6 /* val */
        start local 6 // org.jruby.runtime.builtin.IRubyObject val
        10: .line 976
            aload 5 /* set */
            aload 1 /* context */
            aload 6 /* val */
            invokevirtual org.jruby.ext.set.RubySet.invokeAdd:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 6 // org.jruby.runtime.builtin.IRubyObject val
        11: .line 975
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        12: .line 978
            aload 5 /* set */
            areturn
        end local 5 // org.jruby.ext.set.RubySet set
        end local 4 // org.jruby.RubyHash vals
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/jruby/ext/set/RubySet;
            0   13     1  context  Lorg/jruby/runtime/ThreadContext;
            0   13     2    block  Lorg/jruby/runtime/Block;
            5   13     3  runtime  Lorg/jruby/Ruby;
            6   13     4     vals  Lorg/jruby/RubyHash;
            7   13     5      set  Lorg/jruby/ext/set/RubySet;
           10   11     6      val  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"divide"})
    MethodParameters:
         Name  Flags
      context  
      block    final

  private org.jruby.runtime.builtin.IRubyObject divideTSort(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=11, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 982
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 984
            aload 1 /* context */
            invokestatic org.jruby.ext.set.RubySet$DivideTSortHash.newInstance:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/ext/set/RubySet$DivideTSortHash;
            astore 4 /* dig */
        start local 4 // org.jruby.RubyHash dig
         2: .line 992
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 11
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyHash top java.util.Iterator
      StackMap stack:
         3: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* u */
        start local 5 // org.jruby.runtime.builtin.IRubyObject u
         4: .line 994
            aload 4 /* dig */
            aload 5 /* u */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.newArray:()Lorg/jruby/RubyArray;
            dup
            astore 7 /* a */
        start local 7 // org.jruby.RubyArray a
         5: invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         6: .line 995
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 9
            goto 10
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyHash org.jruby.runtime.builtin.IRubyObject java.util.Iterator org.jruby.RubyArray top java.util.Iterator
      StackMap stack:
         7: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 8 /* v */
        start local 8 // org.jruby.runtime.builtin.IRubyObject v
         8: .line 996
            aload 2 /* block */
            aload 1 /* context */
            aload 5 /* u */
            aload 8 /* v */
            invokevirtual org.jruby.runtime.Block.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 10 /* ret */
        start local 10 // org.jruby.runtime.builtin.IRubyObject ret
         9: .line 997
            aload 10 /* ret */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 10
            aload 7 /* a */
            aload 8 /* v */
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        end local 10 // org.jruby.runtime.builtin.IRubyObject ret
        end local 8 // org.jruby.runtime.builtin.IRubyObject v
        10: .line 995
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 7 // org.jruby.RubyArray a
        end local 5 // org.jruby.runtime.builtin.IRubyObject u
        11: .line 992
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyHash top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        12: .line 1008
            aload 3 /* runtime */
            ldc "Set"
            invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
            astore 5 /* Set */
        start local 5 // org.jruby.RubyClass Set
        13: .line 1009
            new org.jruby.ext.set.RubySet
            dup
            aload 3 /* runtime */
            aload 5 /* Set */
            invokespecial org.jruby.ext.set.RubySet.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 6 /* set */
        start local 6 // org.jruby.ext.set.RubySet set
        14: .line 1010
            aload 6 /* set */
            aload 3 /* runtime */
            aload 4 /* dig */
            invokevirtual org.jruby.RubyHash.size:()I
            invokevirtual org.jruby.ext.set.RubySet.allocHash:(Lorg/jruby/Ruby;I)V
        15: .line 1011
            aload 4 /* dig */
            aload 1 /* context */
            ldc "each_strongly_connected_component"
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            new org.jruby.runtime.Block
            dup
        16: .line 1012
            new org.jruby.ext.set.RubySet$8
            dup
            aload 0 /* this */
            aload 3 /* runtime */
            getstatic org.jruby.runtime.Signature.ONE_REQUIRED:Lorg/jruby/runtime/Signature;
            aload 6 /* set */
            aload 3 /* runtime */
            aload 5 /* Set */
            invokespecial org.jruby.ext.set.RubySet$8.<init>:(Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;Lorg/jruby/runtime/Signature;Lorg/jruby/ext/set/RubySet;Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            invokespecial org.jruby.runtime.Block.<init>:(Lorg/jruby/runtime/BlockBody;)V
        17: .line 1011
            invokevirtual org.jruby.RubyHash.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        18: .line 1027
            aload 6 /* set */
            areturn
        end local 6 // org.jruby.ext.set.RubySet set
        end local 5 // org.jruby.RubyClass Set
        end local 4 // org.jruby.RubyHash dig
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/jruby/ext/set/RubySet;
            0   19     1  context  Lorg/jruby/runtime/ThreadContext;
            0   19     2    block  Lorg/jruby/runtime/Block;
            1   19     3  runtime  Lorg/jruby/Ruby;
            2   19     4      dig  Lorg/jruby/RubyHash;
            4   11     5        u  Lorg/jruby/runtime/builtin/IRubyObject;
            5   11     7        a  Lorg/jruby/RubyArray;
            8   10     8        v  Lorg/jruby/runtime/builtin/IRubyObject;
            9   10    10      ret  Lorg/jruby/runtime/builtin/IRubyObject;
           13   19     5      Set  Lorg/jruby/RubyClass;
           14   19     6      set  Lorg/jruby/ext/set/RubySet;
    MethodParameters:
         Name  Flags
      context  
      block    final

  static org.jruby.RubyModule getTSort(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyModule;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 1087
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            ldc "TSort"
            invokevirtual org.jruby.RubyClass.hasConstant:(Ljava/lang/String;)Z
            ifne 2
         1: .line 1088
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getLoadService:()Lorg/jruby/runtime/load/LoadService;
            ldc "tsort"
            invokevirtual org.jruby.runtime.load.LoadService.require:(Ljava/lang/String;)Z
            pop
         2: .line 1090
      StackMap locals:
      StackMap stack:
            aload 0 /* runtime */
            ldc "TSort"
            invokevirtual org.jruby.Ruby.getModule:(Ljava/lang/String;)Lorg/jruby/RubyModule;
            areturn
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      runtime  final

  public final org.jruby.runtime.builtin.IRubyObject inspect();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1095
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.ext.set.RubySet.inspect:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
            areturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;

  public org.jruby.RubyString inspect(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1104
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1108
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            ifne 3
         2: .line 1109
            aload 0 /* this */
            aload 2 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.inspectEmpty:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            areturn
         3: .line 1112
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 2 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.isInspecting:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 1113
            aload 0 /* this */
            aload 2 /* runtime */
            invokevirtual org.jruby.ext.set.RubySet.inspectRecurse:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            areturn
         5: .line 1116
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            bipush 32
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            invokestatic org.jruby.RubyString.newStringLight:(Lorg/jruby/Ruby;ILorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            astore 3 /* str */
        start local 3 // org.jruby.RubyString str
         6: .line 1117
            aload 3 /* str */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            invokestatic org.jruby.ext.set.RubySet.inspectPrefix:(Lorg/jruby/RubyString;Lorg/jruby/RubyClass;)Lorg/jruby/RubyString;
            pop
         7: .line 1120
            aload 2 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.registerInspecting:(Ljava/lang/Object;)V
         8: .line 1121
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* str */
            invokevirtual org.jruby.ext.set.RubySet.inspectSet:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;)V
         9: .line 1122
            aload 3 /* str */
            bipush 62
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            astore 5
        10: .line 1125
            aload 2 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.unregisterInspecting:(Ljava/lang/Object;)V
        11: .line 1122
            aload 5
            areturn
        12: .line 1124
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.Ruby org.jruby.RubyString
      StackMap stack: java.lang.Throwable
            astore 4
        13: .line 1125
            aload 2 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.unregisterInspecting:(Ljava/lang/Object;)V
        14: .line 1126
            aload 4
            athrow
        end local 3 // org.jruby.RubyString str
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lorg/jruby/ext/set/RubySet;
            0   15     1  context  Lorg/jruby/runtime/ThreadContext;
            1   15     2  runtime  Lorg/jruby/Ruby;
            6   15     3      str  Lorg/jruby/RubyString;
      Exception table:
        from    to  target  type
           7    10      12  any
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"inspect"}, alias = {"to_s"})
    MethodParameters:
         Name  Flags
      context  

  private org.jruby.RubyString inspectEmpty(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
         0: .line 1130
            aload 1 /* runtime */
            bipush 16
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            invokestatic org.jruby.RubyString.newStringLight:(Lorg/jruby/Ruby;ILorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            astore 2 /* str */
        start local 2 // org.jruby.RubyString str
         1: .line 1131
            aload 2 /* str */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            invokestatic org.jruby.ext.set.RubySet.inspectPrefix:(Lorg/jruby/RubyString;Lorg/jruby/RubyClass;)Lorg/jruby/RubyString;
            pop
            aload 2 /* str */
            bipush 123
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            bipush 125
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            bipush 62
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            pop
         2: .line 1132
            aload 2 /* str */
            areturn
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/set/RubySet;
            0    3     1  runtime  Lorg/jruby/Ruby;
            1    3     2      str  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      runtime  final

  private org.jruby.RubyString inspectRecurse(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
         0: .line 1136
            aload 1 /* runtime */
            bipush 20
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            invokestatic org.jruby.RubyString.newStringLight:(Lorg/jruby/Ruby;ILorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            astore 2 /* str */
        start local 2 // org.jruby.RubyString str
         1: .line 1137
            aload 2 /* str */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getMetaClass:()Lorg/jruby/RubyClass;
            invokestatic org.jruby.ext.set.RubySet.inspectPrefix:(Lorg/jruby/RubyString;Lorg/jruby/RubyClass;)Lorg/jruby/RubyString;
            pop
         2: .line 1138
            aload 2 /* str */
            bipush 123
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            getstatic org.jruby.ext.set.RubySet.RECURSIVE_BYTES:[B
            invokevirtual org.jruby.RubyString.cat:([B)Lorg/jruby/RubyString;
            bipush 125
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            bipush 62
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            pop
         3: .line 1139
            aload 2 /* str */
            areturn
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/set/RubySet;
            0    4     1  runtime  Lorg/jruby/Ruby;
            1    4     2      str  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      runtime  final

  private static org.jruby.RubyString inspectPrefix(org.jruby.RubyString, org.jruby.RubyClass);
    descriptor: (Lorg/jruby/RubyString;Lorg/jruby/RubyClass;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyString str
        start local 1 // org.jruby.RubyClass metaClass
         0: .line 1143
            aload 0 /* str */
            bipush 35
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            bipush 60
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            aload 1 /* metaClass */
            invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            getstatic org.jruby.RubyEncoding.UTF8:Ljava/nio/charset/Charset;
            invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
            invokevirtual org.jruby.RubyString.cat:([B)Lorg/jruby/RubyString;
            pop
         1: .line 1144
            aload 0 /* str */
            bipush 58
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            bipush 32
            invokevirtual org.jruby.RubyString.cat:(I)Lorg/jruby/RubyString;
            pop
            aload 0 /* str */
            areturn
        end local 1 // org.jruby.RubyClass metaClass
        end local 0 // org.jruby.RubyString str
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0        str  Lorg/jruby/RubyString;
            0    2     1  metaClass  Lorg/jruby/RubyClass;
    MethodParameters:
           Name  Flags
      str        final
      metaClass  final

  private void inspectSet(org.jruby.runtime.ThreadContext, org.jruby.RubyString);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=8, args_size=3
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyString str
         0: .line 1149
            aload 2 /* str */
            bipush 123
            invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
            pop
         1: .line 1151
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.isTaint:()Z
            istore 3 /* tainted */
        start local 3 // boolean tainted
         2: iconst_0
            istore 4 /* notFirst */
        start local 4 // boolean notFirst
         3: .line 1153
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 11
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.RubyString int int top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* elem */
        start local 5 // org.jruby.runtime.builtin.IRubyObject elem
         5: .line 1154
            aload 1 /* context */
            aload 5 /* elem */
            invokestatic org.jruby.ext.set.RubySet.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 7 /* s */
        start local 7 // org.jruby.RubyString s
         6: .line 1155
            aload 7 /* s */
            invokevirtual org.jruby.RubyString.isTaint:()Z
            ifeq 7
            iconst_1
            istore 3 /* tainted */
         7: .line 1156
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.RubyString int int org.jruby.runtime.builtin.IRubyObject java.util.Iterator org.jruby.RubyString
      StackMap stack:
            iload 4 /* notFirst */
            ifeq 8
            aload 2 /* str */
            bipush 44
            invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
            bipush 32
            invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
            pop
            goto 9
         8: .line 1157
      StackMap locals:
      StackMap stack:
            aload 2 /* str */
            aload 7 /* s */
            invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
      StackMap locals:
      StackMap stack:
         9: iconst_1
            istore 4 /* notFirst */
        10: .line 1158
            aload 2 /* str */
            aload 7 /* s */
            invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            pop
        end local 7 // org.jruby.RubyString s
        end local 5 // org.jruby.runtime.builtin.IRubyObject elem
        11: .line 1153
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.RubyString int int top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        12: .line 1161
            aload 2 /* str */
            bipush 125
            invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
            pop
        13: .line 1163
            iload 3 /* tainted */
            ifeq 14
            aload 2 /* str */
            iconst_1
            invokevirtual org.jruby.RubyString.setTaint:(Z)V
        14: .line 1164
      StackMap locals: org.jruby.ext.set.RubySet org.jruby.runtime.ThreadContext org.jruby.RubyString int int
      StackMap stack:
            return
        end local 4 // boolean notFirst
        end local 3 // boolean tainted
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/jruby/ext/set/RubySet;
            0   15     1   context  Lorg/jruby/runtime/ThreadContext;
            0   15     2       str  Lorg/jruby/RubyString;
            2   15     3   tainted  Z
            3   15     4  notFirst  Z
            5   11     5      elem  Lorg/jruby/runtime/builtin/IRubyObject;
            6   11     7         s  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      context  final
      str      final

  protected final java.util.Set<org.jruby.runtime.builtin.IRubyObject> elements();
    descriptor: ()Ljava/util/Set;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1175
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.directKeySet:()Ljava/util/Set;
            areturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;
    Signature: ()Ljava/util/Set<Lorg/jruby/runtime/builtin/IRubyObject;>;

  protected java.util.Set<org.jruby.runtime.builtin.IRubyObject> elementsOrdered();
    descriptor: ()Ljava/util/Set;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1180
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elements:()Ljava/util/Set;
            areturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;
    Signature: ()Ljava/util/Set<Lorg/jruby/runtime/builtin/IRubyObject;>;

  protected final void modifyCheck(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // org.jruby.Ruby runtime
         0: .line 1184
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.flags:I
            getstatic org.jruby.ext.set.RubySet.FROZEN_F:I
            iand
            ifeq 1
            aload 1 /* runtime */
            ldc "Set"
            invokevirtual org.jruby.Ruby.newFrozenError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         1: .line 1185
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/set/RubySet;
            0    2     1  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      runtime  final

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1189
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.size:()I
            ireturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1191
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.isEmpty:()Z
            ireturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1193
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.clearImpl:()V
            return
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;

  public boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.lang.Object o
         0: .line 1196
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* o */
            invokevirtual org.jruby.ext.set.RubySet.toRuby:(Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.containsImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;
            0    1     1     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     

  public java.util.Iterator<org.jruby.runtime.builtin.IRubyObject> rawIterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1200
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;
    Signature: ()Ljava/util/Iterator<Lorg/jruby/runtime/builtin/IRubyObject;>;

  public java.util.Iterator<java.lang.Object> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1204
            aload 0 /* this */
            getfield org.jruby.ext.set.RubySet.hash:Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyHash.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;
    Signature: ()Ljava/util/Iterator<Ljava/lang/Object;>;

  public java.lang.Object[] toArray();
    descriptor: ()[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.jruby.ext.set.RubySet this
         0: .line 1208
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            anewarray java.lang.Object
            astore 1 /* array */
        start local 1 // java.lang.Object[] array
         1: iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: .line 1209
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: org.jruby.ext.set.RubySet java.lang.Object[] int top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 3 /* elem */
        start local 3 // org.jruby.runtime.builtin.IRubyObject elem
         4: .line 1210
            aload 1 /* array */
            iload 2 /* i */
            iinc 2 /* i */ 1
            aload 3 /* elem */
            ldc Ljava/lang/Object;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            aastore
        end local 3 // org.jruby.runtime.builtin.IRubyObject elem
         5: .line 1209
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1212
            aload 1 /* array */
            areturn
        end local 2 // int i
        end local 1 // java.lang.Object[] array
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/jruby/ext/set/RubySet;
            1    7     1  array  [Ljava/lang/Object;
            2    7     2      i  I
            4    5     3   elem  Lorg/jruby/runtime/builtin/IRubyObject;

  public java.lang.Object[] toArray(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.lang.Object[] ary
         0: .line 1216
            aload 1 /* ary */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            astore 2 /* type */
        start local 2 // java.lang.Class type
         1: .line 1217
            aload 1 /* ary */
            astore 3 /* array */
        start local 3 // java.lang.Object[] array
         2: .line 1218
            aload 3 /* array */
            arraylength
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            if_icmpge 4
         3: .line 1219
            aload 2 /* type */
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
            checkcast java.lang.Object[]
            astore 3 /* array */
         4: .line 1222
      StackMap locals: java.lang.Class java.lang.Object[]
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: .line 1223
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.elementsOrdered:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 8
      StackMap locals: org.jruby.ext.set.RubySet java.lang.Object[] java.lang.Class java.lang.Object[] int top java.util.Iterator
      StackMap stack:
         6: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* elem */
        start local 5 // org.jruby.runtime.builtin.IRubyObject elem
         7: .line 1224
            aload 3 /* array */
            iload 4 /* i */
            iinc 4 /* i */ 1
            aload 5 /* elem */
            aload 2 /* type */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            aastore
        end local 5 // org.jruby.runtime.builtin.IRubyObject elem
         8: .line 1223
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 1226
            aload 3 /* array */
            areturn
        end local 4 // int i
        end local 3 // java.lang.Object[] array
        end local 2 // java.lang.Class type
        end local 1 // java.lang.Object[] ary
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lorg/jruby/ext/set/RubySet;
            0   10     1    ary  [Ljava/lang/Object;
            1   10     2   type  Ljava/lang/Class;
            2   10     3  array  [Ljava/lang/Object;
            5   10     4      i  I
            7    8     5   elem  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      ary   final

  public boolean add(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.lang.Object element
         0: .line 1230
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1231
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            istore 3 /* size */
        start local 3 // int size
         2: .line 1232
            aload 0 /* this */
            aload 2 /* runtime */
            aload 2 /* runtime */
            aload 1 /* element */
            invokestatic org.jruby.ext.set.RubySet.toRuby:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
         3: .line 1233
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            iload 3 /* size */
            if_icmple 4
            iconst_1
            ireturn
      StackMap locals: org.jruby.Ruby int
      StackMap stack:
         4: iconst_0
            ireturn
        end local 3 // int size
        end local 2 // org.jruby.Ruby runtime
        end local 1 // java.lang.Object element
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/set/RubySet;
            0    5     1  element  Ljava/lang/Object;
            1    5     2  runtime  Lorg/jruby/Ruby;
            2    5     3     size  I
    MethodParameters:
         Name  Flags
      element  

  public boolean remove(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.lang.Object element
         0: .line 1237
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* element */
            invokevirtual org.jruby.ext.set.RubySet.toRuby:(Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.deleteImpl:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ireturn
        end local 1 // java.lang.Object element
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/set/RubySet;
            0    1     1  element  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      element  

  public boolean containsAll(java.util.Collection);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.util.Collection coll
         0: .line 1241
            aload 1 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: org.jruby.ext.set.RubySet java.util.Collection top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* elem */
        start local 2 // java.lang.Object elem
         2: .line 1242
            aload 0 /* this */
            aload 2 /* elem */
            invokevirtual org.jruby.ext.set.RubySet.contains:(Ljava/lang/Object;)Z
            ifne 3
            iconst_0
            ireturn
        end local 2 // java.lang.Object elem
         3: .line 1241
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1244
            iconst_1
            ireturn
        end local 1 // java.util.Collection coll
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/ext/set/RubySet;
            0    5     1  coll  Ljava/util/Collection;
            2    3     2  elem  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      coll  

  public boolean addAll(java.util.Collection);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.util.Collection coll
         0: .line 1248
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1249
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            istore 3 /* size */
        start local 3 // int size
         2: .line 1250
            aload 1 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 5
      StackMap locals: org.jruby.ext.set.RubySet java.util.Collection org.jruby.Ruby int top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 4 /* elem */
        start local 4 // java.lang.Object elem
         4: .line 1251
            aload 0 /* this */
            aload 2 /* runtime */
            aload 2 /* runtime */
            aload 4 /* elem */
            invokestatic org.jruby.ext.set.RubySet.toRuby:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.set.RubySet.addImpl:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 4 // java.lang.Object elem
         5: .line 1250
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1253
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            iload 3 /* size */
            if_icmple 7
            iconst_1
            ireturn
      StackMap locals: org.jruby.ext.set.RubySet java.util.Collection org.jruby.Ruby int
      StackMap stack:
         7: iconst_0
            ireturn
        end local 3 // int size
        end local 2 // org.jruby.Ruby runtime
        end local 1 // java.util.Collection coll
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/set/RubySet;
            0    8     1     coll  Ljava/util/Collection;
            1    8     2  runtime  Lorg/jruby/Ruby;
            2    8     3     size  I
            4    5     4     elem  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      coll  

  public boolean retainAll(java.util.Collection);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.util.Collection coll
         0: .line 1257
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 1258
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.rawIterator:()Ljava/util/Iterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         2: goto 6
         3: .line 1259
      StackMap locals: int java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 4 /* elem */
        start local 4 // org.jruby.runtime.builtin.IRubyObject elem
         4: .line 1260
            aload 1 /* coll */
            aload 4 /* elem */
            ldc Ljava/lang/Object;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            invokeinterface java.util.Collection.contains:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 1261
            aload 0 /* this */
            aload 4 /* elem */
            aload 3 /* iter */
            invokevirtual org.jruby.ext.set.RubySet.deleteImplIterator:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/util/Iterator;)V
        end local 4 // org.jruby.runtime.builtin.IRubyObject elem
         6: .line 1258
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 3 // java.util.Iterator iter
         7: .line 1264
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.size:()I
            iload 2 /* size */
            if_icmpge 8
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_0
            ireturn
        end local 2 // int size
        end local 1 // java.util.Collection coll
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/jruby/ext/set/RubySet;
            0    9     1  coll  Ljava/util/Collection;
            1    9     2  size  I
            2    7     3  iter  Ljava/util/Iterator<Lorg/jruby/runtime/builtin/IRubyObject;>;
            4    6     4  elem  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      coll  

  public boolean removeAll(java.util.Collection);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.util.Collection coll
         0: .line 1268
            iconst_0
            istore 2 /* removed */
        start local 2 // boolean removed
         1: .line 1269
            aload 1 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: org.jruby.ext.set.RubySet java.util.Collection int top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* elem */
        start local 3 // java.lang.Object elem
         3: .line 1270
            aload 0 /* this */
            aload 3 /* elem */
            invokevirtual org.jruby.ext.set.RubySet.remove:(Ljava/lang/Object;)Z
            iload 2 /* removed */
            ior
            istore 2 /* removed */
        end local 3 // java.lang.Object elem
         4: .line 1269
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 1272
            iload 2 /* removed */
            ireturn
        end local 2 // boolean removed
        end local 1 // java.util.Collection coll
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/ext/set/RubySet;
            0    6     1     coll  Ljava/util/Collection;
            1    6     2  removed  Z
            3    4     3     elem  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      coll  

  static org.jruby.runtime.builtin.IRubyObject toRuby(org.jruby.Ruby, java.lang.Object);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object obj
         0: .line 1276
            aload 0 /* runtime */
            aload 1 /* obj */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1      obj  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      runtime  
      obj      

  final org.jruby.runtime.builtin.IRubyObject toRuby(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.set.RubySet this
        start local 1 // java.lang.Object obj
         0: .line 1280
            aload 0 /* this */
            invokevirtual org.jruby.ext.set.RubySet.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* obj */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // org.jruby.ext.set.RubySet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/set/RubySet;
            0    1     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   
}
SourceFile: "RubySet.java"
NestMembers:
  org.jruby.ext.set.RubySet$1  org.jruby.ext.set.RubySet$2  org.jruby.ext.set.RubySet$3  org.jruby.ext.set.RubySet$4  org.jruby.ext.set.RubySet$5  org.jruby.ext.set.RubySet$6  org.jruby.ext.set.RubySet$7  org.jruby.ext.set.RubySet$8  org.jruby.ext.set.RubySet$DivideTSortHash  org.jruby.ext.set.RubySet$EachBody  org.jruby.ext.set.RubySet$SetMarshal
InnerClasses:
  public abstract SizeFn = org.jruby.RubyEnumerator$SizeFn of org.jruby.RubyEnumerator
  public final ID = org.jruby.common.IRubyWarnings$ID of org.jruby.common.IRubyWarnings
  org.jruby.ext.set.RubySet$1
  org.jruby.ext.set.RubySet$2
  org.jruby.ext.set.RubySet$3
  org.jruby.ext.set.RubySet$4
  org.jruby.ext.set.RubySet$5
  org.jruby.ext.set.RubySet$6
  org.jruby.ext.set.RubySet$7
  org.jruby.ext.set.RubySet$8
  public final DivideTSortHash = org.jruby.ext.set.RubySet$DivideTSortHash of org.jruby.ext.set.RubySet
  private abstract EachBody = org.jruby.ext.set.RubySet$EachBody of org.jruby.ext.set.RubySet
  private final SetMarshal = org.jruby.ext.set.RubySet$SetMarshal of org.jruby.ext.set.RubySet
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Set"}, include = {"Enumerable"})